liujq 3 лет назад
Родитель
Сommit
35995323e9
90 измененных файлов с 1542 добавлено и 17 удалено
  1. 15 0
      api/cust.js
  2. 14 0
      pages.json
  3. 1 1
      pages/agent/recommend/create.vue
  4. 293 0
      pages/cust/my.vue
  5. 282 0
      pages/cust/mycreate.vue
  6. 4 1
      pages/index/index.vue
  7. BIN
      static/index/i_e_7.png
  8. 0 0
      unpackage/dist/build/mp-weixin/pages/agent/recommend/create.js
  9. 0 0
      unpackage/dist/build/mp-weixin/pages/index/index.js
  10. 0 0
      unpackage/dist/build/mp-weixin/pages/index/index.wxml
  11. 0 0
      unpackage/dist/build/mp-weixin/pages/index/index.wxss
  12. 2 2
      unpackage/dist/build/mp-weixin/uni_modules/vk-uview-ui/components/u-form-item/u-form-item.json
  13. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map
  14. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map
  15. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/back-top/back-top.js.map
  16. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/components/wm-watermark/wm-watermark.js.map
  17. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/check.js.map
  18. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/create.js.map
  19. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/detail.js.map
  20. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/detail2.js.map
  21. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/detailGovern.js.map
  22. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/estate.js.map
  23. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/list.js.map
  24. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/visitimg.js.map
  25. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/report/buycheck.js.map
  26. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/report/deal.js.map
  27. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/create.js.map
  28. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/list.js.map
  29. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/my.js.map
  30. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/mycreate.js.map
  31. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/estate/dtl.js.map
  32. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map
  33. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/web.js.map
  34. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/saler/check.js.map
  35. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/saler/deal.js.map
  36. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/saler/list.js.map
  37. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/login/login.js.map
  38. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/login/register.js.map
  39. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/setting/bank.js.map
  40. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/setting/profile.js.map
  41. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/setting/setting.js.map
  42. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/HM-filterDropdown/components/HM-filterDropdown/HM-filterDropdown.js.map
  43. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/okingtz-cropper/components/okingtz-cropper/okingtz-cropper.js.map
  44. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-alert-tips/u-alert-tips.js.map
  45. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-avatar/u-avatar.js.map
  46. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-button/u-button.js.map
  47. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-divider/u-divider.js.map
  48. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-empty/u-empty.js.map
  49. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-form-item/u-form-item.js.map
  50. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-form/u-form.js.map
  51. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-gap/u-gap.js.map
  52. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-icon/u-icon.js.map
  53. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-image/u-image.js.map
  54. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-input/u-input.js.map
  55. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-line/u-line.js.map
  56. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-loading/u-loading.js.map
  57. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-loadmore/u-loadmore.js.map
  58. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-mask/u-mask.js.map
  59. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-modal/u-modal.js.map
  60. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-navbar/u-navbar.js.map
  61. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-parse/libs/trees.js.map
  62. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-parse/u-parse.js.map
  63. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-popup/u-popup.js.map
  64. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-radio-group/u-radio-group.js.map
  65. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-radio/u-radio.js.map
  66. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-select/u-select.js.map
  67. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-skeleton/u-skeleton.js.map
  68. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-steps/u-steps.js.map
  69. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-tag/u-tag.js.map
  70. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-time-line-item/u-time-line-item.js.map
  71. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-time-line/u-time-line.js.map
  72. 0 0
      unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-toast/u-toast.js.map
  73. 2 0
      unpackage/dist/dev/mp-weixin/app.json
  74. 15 0
      unpackage/dist/dev/mp-weixin/common/vendor.js
  75. 1 1
      unpackage/dist/dev/mp-weixin/pages/agent/recommend/create.js
  76. 187 0
      unpackage/dist/dev/mp-weixin/pages/cust/my.js
  77. 14 0
      unpackage/dist/dev/mp-weixin/pages/cust/my.json
  78. 0 0
      unpackage/dist/dev/mp-weixin/pages/cust/my.wxml
  79. 144 0
      unpackage/dist/dev/mp-weixin/pages/cust/my.wxss
  80. 424 0
      unpackage/dist/dev/mp-weixin/pages/cust/mycreate.js
  81. 16 0
      unpackage/dist/dev/mp-weixin/pages/cust/mycreate.json
  82. 0 0
      unpackage/dist/dev/mp-weixin/pages/cust/mycreate.wxml
  83. 117 0
      unpackage/dist/dev/mp-weixin/pages/cust/mycreate.wxss
  84. 6 0
      unpackage/dist/dev/mp-weixin/pages/index/index.js
  85. 0 0
      unpackage/dist/dev/mp-weixin/pages/index/index.wxml
  86. 1 8
      unpackage/dist/dev/mp-weixin/project.private.config.json
  87. BIN
      unpackage/dist/dev/mp-weixin/static/index/77ea74b3deca4d54d756606b7cb6e7e.png
  88. BIN
      unpackage/dist/dev/mp-weixin/static/index/i_e_7.png
  89. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/vk-uview-ui/components/u-image/u-image.json
  90. 2 2
      unpackage/dist/dev/mp-weixin/uni_modules/vk-uview-ui/components/u-line/u-line.json

+ 15 - 0
api/cust.js

@@ -30,4 +30,19 @@ export default {
 	apideptuserlist: (params) => { // 我的门店下级人员
 	  return request('api/dept/user/list', params, 'loading')
 	},
+	apiprivatecustomerlist: (params) => { // 内部客户  列表
+	  return request('api/private/customer/list', params)
+	},
+	apiprivatecustomeradd: (params) => { // 内部客户  添加
+	  return request('api/private/customer/add', params, 'loading')
+	},
+	apiprivatecustomeredit: (params) => { // 内部客户  编辑
+	  return request('api/private/customer/edit', params, 'loading')
+	},
+	apiprivatecustomerdel: (params) => { // 内部客户  删除
+	  return request('api/private/customer/del', params, 'loading')
+	},
+	apiprivatecustomerdetail: (params) => { // 内部客户  详情
+	  return request('api/private/customer/detail', params, 'loading')
+	},
 }

+ 14 - 0
pages.json

@@ -98,6 +98,20 @@
 				"enablePullDownRefresh": true
 			}
 		},
+		{
+			"path": "pages/cust/mycreate",
+			"style": {
+				"navigationBarTitleText": "添加我的客户",
+				"enablePullDownRefresh": false
+			}
+		},
+		{
+			"path": "pages/cust/my",
+			"style": {
+				"navigationBarTitleText": "我的客户列表",
+				"enablePullDownRefresh": true
+			}
+		},
 		{
 			"path": "pages/user/setting/setting",
 			"style": {

+ 1 - 1
pages/agent/recommend/create.vue

@@ -107,7 +107,7 @@ export default {
 		}
 	},
 	created () {
-		uni.api.estate.apiestatelist({page_size: 100}).then(res => {
+		uni.api.estate.apiestatelist({page_size: 100, report_open: 1}).then(res => {
 			let list = res.list || []
 			let propertySelectList = []
 			list.forEach(item => {

+ 293 - 0
pages/cust/my.vue

@@ -0,0 +1,293 @@
+<template>
+	<view>
+		<!-- <u-navbar
+			:customBack="customBack"
+			back-icon-color="#fff"
+			title="客户列表"
+			:background="{ backgroundColor: '#2080f0' }"
+			title-color="#fff"
+			:border-bottom="false"
+		></u-navbar> -->
+
+		<!-- 顶部筛选栏 -->
+<!-- 		<HM-filterDropdown :menuTop="menuTop" :filterData="filterData" :defaultSelected="filterDropdownValue" @confirm="confirmFilter"></HM-filterDropdown> -->
+
+		<view class="customer-list-wrap">
+			<view v-if="customerList.length == 0" class="empty-wrap"><u-empty mode="list" text="暂无相关客户"></u-empty></view>
+			<view v-for="(item, index) in customerList" class="customer-item" :key="index">
+				<view class="info">
+					<view class="customer">
+						<view class="relname">
+							{{ item.name }}
+							<u-icon
+								class="u-m-l-5"
+								:name="item.sex == 'male' ? 'man' : 'woman'"
+								size="22"
+								:color="item.sex == 'male' ? '#2080f0' : '#f85f69'"
+							></u-icon>
+							
+							<u-icon
+								name="attach"
+								size="32"
+								label="快速报备"
+								label-size="24"
+								class="u-m-l-20"
+								color="#f00"
+								label-color="#f00"
+								@click="pageTo('/pages/agent/recommend/create', { info: item })"
+							></u-icon>
+						</view>
+
+						<view class="item">
+							<u-icon class="u-m-r-5" name="phone" size="22"></u-icon>
+							{{ item.phone }}
+						</view>
+						<view class="item" v-if="item.remark">
+							{{ item.remark }}
+						</view>
+					</view>
+					
+					<view class="data-wrap">
+						<u-tag
+							icon="edit-pen"
+							:text="'编辑'"
+							:type="'primary'"
+							class="u-m-r-10"
+							@click="pageTo('/pages/cust/mycreate', { info: item })"
+						>
+						</u-tag>
+						<view class="u-m-t-20">							
+							<u-tag
+								@click="delHandle(item)"
+								plain 
+								:text="'删除'"
+								:type="'error'"
+								class="u-m-r-10"
+							>
+							</u-tag>
+						</view>
+					</view>
+					
+				</view>
+			</view>
+		</view>
+
+		<view class="float-search2" @click="pageTo('/pages/cust/mycreate')"><u-icon name="plus" size="42" color="#fff"></u-icon></view>
+		<view class="float-search" @click="searchPopupShow = true"><u-icon name="search" size="42" color="#fff"></u-icon></view>
+
+		<u-popup v-model="searchPopupShow" mode="center" width="80%" height="440rpx" border-radius="20">
+			<view class="bwin-popup">
+				<view class="popup-header">客户搜索</view>
+				<view class="popup-body">
+					<u-input v-model="searchFormData.name" border placeholder="请输入客户姓名(支持模糊搜索)"></u-input>
+					<u-divider marginTop="10" marginBottom="10">或</u-divider>
+					<u-input v-model="searchFormData.phone" border placeholder="请输入客户手机号(可仅输入一部分)"></u-input>
+				</view>
+				<view class="popup-footer" style="position: absolute;">
+					<u-button size="medium" @click="searchPopupShow = false">取消</u-button>
+					<u-button size="medium" type="primary" @click="searchHandle()">搜索</u-button>
+				</view>
+			</view>
+		</u-popup>
+		
+		
+		
+
+		<u-loadmore
+			v-if="customerList.length > 0"
+			marginTop="32"
+			:line="true"
+			:status="loadmore.status"
+			:loading-text="loadmore.loadingText"
+			:loadmore-text="loadmore.defaultText"
+			:nomore-text="loadmore.nomoreText"
+		/>
+	</view>
+</template>
+<script>
+var that;
+export default {
+	data() {
+		return {
+			searchKeyword: null,
+			searchPopupShow: false,
+			searchFormData: {
+				name: '',
+				phone: ''
+			}, // 搜索栏数据
+			customerList: [],
+			loadmore: {
+				status: 'loadmore',
+				loadingText: '努力加载中',
+				defaultText: '轻轻上拉 查看更多',
+				nomoreText: '实在没有了',
+				currnetPage: 1
+			}
+		};
+	},
+	onLoad(params) {
+		that = this;
+
+		// 默认筛选项
+		if (params.filterStepStatus !== undefined) {
+			that.filterStepStatus = parseInt(params.filterStepStatus);
+			this.filterDropdownValue = [[],[],[],[that.filterStepStatus],[]]
+		}
+
+		this.getDataList()
+	},
+	onReachBottom() {
+		if (that.loadmore.status == 'nomore') return;
+		that.loadmore.currnetPage++
+		this.getDataList()
+	},
+	onPullDownRefresh() {
+		// 防止频繁刷新
+	},
+	methods: {
+		delHandle (item) {
+			uni.$msgConfirm('确定删除吗?', () => {				
+				uni.api.cust.apiprivatecustomerdel({
+					id: item.id
+				}).then(res => {
+					uni.$msg('删除成功~')
+					this.loadmore.currnetPage = 1
+					this.getDataList()
+				})
+			})
+		},
+		getDataList (bc) {
+			const that = this
+			let params = {
+				...this.searchFormData
+			}
+			uni.api.cust.apiprivatecustomerlist({
+				page: that.loadmore.currnetPage,
+				...params,
+			}).then(res => {
+				const list = res.list || []
+				if (list.length < 10) {
+					that.loadmore.status = 'nomore';
+				}
+				if (res.page = 1) {
+					if (list.length == 0) {
+						uni.$msg('无搜索结果', 'none');
+					}
+					that.customerList = [...list]
+				} else {
+					that.customerList = that.customerList.concat(list)
+				}
+				if (bc) bc()
+			})
+		},
+		customBack() {
+			uni.navigateBack();
+		},
+		// 带监听器跳转
+		pageTo(url, data) {
+			/// xxxxx
+			uni.navigateTo({
+				url: url,
+				events: {
+					// 为指定事件添加一个监听器,获取被打开页面传送到当前页面的数据
+					update: function(data) {
+						// 当B页面运行 eventChannel.emit('update', { a:1 }); 时,会运行这里的代码逻辑。
+					}
+				},
+				success: function(res) {
+					// 通过eventChannel向被打开页面传送数据
+					res.eventChannel.emit('data', data);
+				}
+			});
+		},
+		searchHandle() {
+			that.loadmore.currnetPage = 1
+			this.getDataList(() => {
+				this.searchPopupShow = false
+			})
+		},
+	}
+};
+</script>
+<style lang="scss">
+.search-wrap {
+	padding: 20rpx;
+}
+
+.filter-wrap {
+	position: relative;
+}
+
+// 列表
+.customer-list-wrap {
+	width: 100%;
+
+	.customer-item {
+		display: flex;
+		flex-direction: column;
+		align-items: flex-start;
+		font-size: $u-p2;
+		color: $u-content-color;
+		border-bottom: 1rpx solid $u-border-color;
+		padding: 24rpx 32rpx;
+
+		.info {
+			display: flex;
+			align-items: flex-start;
+			justify-content: space-between;
+			width: 100%;
+			margin-bottom: 10rpx;
+
+			.customer {
+				display: flex;
+				flex-direction: column;
+				align-items: flex-start;
+
+				.relname {
+					color: $u-main-color;
+					font-size: $u-p;
+					font-weight: bold;
+					margin-bottom: 10rpx;
+				}
+
+				.item {
+					margin-bottom: 10rpx;
+				}
+			}
+
+			.data-wrap {
+				text-align: right;
+				.date {
+					font-size: $u-sub;
+				}
+			}
+		}
+
+		.tool-wrap {
+			display: flex;
+			align-items: center;
+			justify-content: space-between;
+			width: 100%;
+		}
+	}
+}
+
+.float-search {
+	opacity: 0.9;
+	position: fixed;
+	right: 20rpx;
+	bottom: 40rpx;
+	padding: 20rpx;
+	border-radius: 50%;
+	background-color: $u-theme-color;
+}
+.float-search2 {
+	opacity: 0.9;
+	position: fixed;
+	right: 20rpx;
+	bottom: 150rpx;
+	padding: 20rpx;
+	border-radius: 50%;
+	background-color: $u-theme-color;
+}
+</style>

+ 282 - 0
pages/cust/mycreate.vue

@@ -0,0 +1,282 @@
+<template>
+	<view class="page">
+		<view class="form">
+			<u-form :model="form" ref="uForm">
+				<u-form-item label-width="150" label="姓名" prop="name" required>
+					<u-input placeholder="请输入客户姓名" v-model="form.name" type="text"></u-input>
+				</u-form-item>
+				<u-form-item label-width="150" label="性别" prop="sex" required>
+					<u-radio-group v-model="form.sex" active-color="#2979ff">
+						<u-radio name="male">先生</u-radio>
+						<u-radio name="female">女士</u-radio>
+					</u-radio-group>
+				</u-form-item>
+				<u-form-item label-width="150" label="手机号" prop="phone" required>
+					<u-input placeholder="请输入手机号" v-model="form.phone" type="number"></u-input>
+				</u-form-item>
+				<u-form-item label-width="150" label="备注信息" prop="remark" required label-position="top">
+					<u-input placeholder="客户描述说明,如客户意向户型或面积等信息" v-model="form.remark" type="textarea"></u-input>
+				</u-form-item>
+			</u-form>
+			<u-gap height="60"></u-gap>
+			<u-button type="primary" :diabled="submitButtonDisabled" @click="submitHandle">提交</u-button>
+		</view>
+		<!-- 列表选择 -->
+		<u-select mode="single-column" :list="propertySelectList" v-model="propertySelectShow" @confirm="propertySelectConfirm"></u-select>
+		<u-select mode="single-column" :list="salerSelectList" v-model="salerSelectShow" @confirm="salerSelectConfirm"></u-select>
+		<!-- modal -->
+		<u-modal v-model="submitModalShow" content="请务必仔细确认各项信息是否正确" :show-cancel-button="true" @confirm="submit()"></u-modal>
+		<u-modal v-model="modalShow" :content="modalContent" :show-cancel-button="true" @cancel="modalCancel()" @confirm="modalConfirm()"></u-modal>
+		<!-- utoast -->
+		<u-toast ref="uToast" />
+	</view>
+</template>
+<script>
+export default {
+	data() {
+		return {
+			isEdit: false,
+			form: {
+				name: null,
+				phone: null,
+				sex: 'male',
+				remark: null,
+				estate_id: null,
+				estate_name: null,
+				saler_id: null,
+				saler_name: null
+			},
+			customer_id: null,
+			submitButtonDisabled: true,
+			rules: {
+				name: [
+					{
+						required: true,
+						message: '姓名不得为空',
+						trigger: ['change', 'blur']
+					},
+				],
+				phone: [
+					{
+						required: true,
+						message: '手机号不得为空',
+						trigger: ['change', 'blur']
+					},
+					// 11个字符判断
+					{
+						len: 11,
+						message: '手机号格式不正确',
+						trigger: ['change', 'blur']
+					},
+				],
+				remark: [
+					{
+						required: true,
+						message: '备注不能为空',
+						trigger: ['change']
+					},
+				]
+			},
+
+			propertySelectShow: false,
+			propertySelectList: [],
+
+			salerSelectShow: false,
+			salerSelectList: [],
+			submitModalShow: false,
+			modalShow: false,
+			modalContent: ''
+		};
+	},
+	onLoad(data) {
+		const that = this
+		const eventChannel = that.getOpenerEventChannel(); // that 需指向 this
+		// 监听data事件,获取上一页面通过eventChannel.emit传送到当前页面的数据
+		if (eventChannel.on) {
+			eventChannel.on('data', data => {
+				if (data) {
+					that.form.name = data.info.name;
+					that.form.phone = data.info.phone;
+					that.form.sex = data.info.sex;
+					that.form.remark = data.info.remark;
+					that.form.id = data.info.id;
+					that.isEdit = true
+					wx.setNavigationBarTitle({
+						title: '编辑客户-' + data.info.name
+					})
+				}
+			})
+		}
+	},
+	created () {
+	},
+	// 必须要在onReady生命周期,因为onLoad生命周期组件可能尚未创建完毕
+	onReady() {
+		this.$refs.uForm.setRules(this.rules);
+	},
+	methods: {
+		// 选择所属项目回调
+		propertySelectConfirm(e) {
+			e.map((val, index) => {
+				this.form.estate_id = val.value;
+				this.form.estate_name = val.label;
+			});
+		},
+		submitHandle() {
+			const that = this
+			this.$refs.uForm.validate(valid => {
+				if (valid) {
+					// 验证成功
+					let apiStr = 'apiprivatecustomeradd'
+					let params = {
+						// phone_type: 1,
+						name: that.form.name,
+						phone: that.form.phone,
+						sex: that.form.sex,
+						remark: that.form.remark,
+					}
+					if(that.isEdit) {
+						apiStr = 'apiprivatecustomeredit'
+						params.id = that.form.id
+					}
+					uni.api.cust[apiStr](params).then(res => {
+						if (that.isEdit) {
+							uni.$msgConfirm('编辑成功', () => {
+								uni.reLaunch({
+									url: '/pages/cust/my'
+								})
+							}, () => {
+								uni.reLaunch({
+									url: '/pages/cust/my'
+								})
+							})
+						} else {
+							uni.$msgConfirm('添加成功,是否前往客户列表?', () => {
+								uni.reLaunch({
+									url: '/pages/cust/my'
+								})
+							}, () => {
+								this.form = {
+									name: null,
+									phone: null,
+									sex: 'male',
+									remark: null,
+									estate_id: null,
+									estate_name: null,
+								}
+							})
+						}
+					})
+				} else {
+					console.log('验证失败');
+				}
+			});
+		},
+
+		// 获取手机号
+		getPhoneNumber: function(e) {
+			// 点击获取手机号码按钮
+			let _that = this;
+			if (e.detail.errMsg == 'getPhoneNumber:fail user deny') {
+				_that.$refs.uToast.show({
+					title: '您可以在个人设置中再次绑定',
+					type: 'warning'
+				});
+				setTimeout(() => {
+					_that.reLunchUser();
+				}, 1500);
+				return; // 即用户拒绝授权
+			}
+			console.log(e.detail.errMsg);
+			console.log(e.detail.iv);
+			console.log(e.detail.encryptedData);
+			let iv = e.detail.iv;
+			let encryptedData = e.detail.encryptedData;
+			// 不是登陆完第一时间授权
+			wx.login({
+				success(res) {
+					if (res.code) {
+						// 设置用户手机号
+						_that.setUserPhoneNumber(encryptedData, iv, res.code);
+					} else {
+						this.$refs.uToast.show({
+							title: res.errMsg,
+							type: 'warning'
+						});
+						console.log('登录失败!' + res.errMsg);
+					}
+				}
+			});
+		},
+		// 以下是工具函数
+		// 关闭键盘
+		hideKeyboard() {
+			uni.hideKeyboard();
+		},
+		// 格式化日期的月份或天数的显示(小于10,在前面增加0)
+		getFormatDate(value) {
+			if (value == undefined || value == '') {
+				return '';
+			}
+			var str = value;
+			if (parseInt(value) < 10) {
+				str = '0' + value;
+			}
+			return str;
+		}
+	}
+};
+</script>
+<style lang="scss">
+.page {
+	padding: 20rpx;
+	background-color: #ffffff;
+}
+
+.form {
+	border-radius: 10rpx;
+	padding: 0 40rpx;
+}
+
+.popup-body {
+	.tips-title {
+		font-size: $u-p;
+		margin-bottom: 20rpx;
+	}
+
+	.tips-content {
+		font-size: $u-p2;
+		color: $u-tips-color;
+		margin-bottom: 60rpx;
+	}
+}
+
+.id_card {
+	color: #606266;
+	width: 100%;
+	height: 350rpx;
+	display: flex;
+	flex-direction: column;
+	align-items: center;
+	justify-content: center;
+	background-color: #f4f5f6;
+	font-size: $u-p2;
+}
+
+.footer {
+	position: absolute;
+	text-align: center;
+	bottom: 40rpx;
+	font-size: $u-p2;
+
+	.agreement {
+		color: $u-type-error;
+	}
+}
+
+.slot-content {
+	font-size: 28rpx;
+	color: $u-content-color;
+	padding: 20rpx;
+}
+</style>

+ 4 - 1
pages/index/index.vue

@@ -91,6 +91,9 @@
 			<view v-if="GT == 1" class="op" @click="pageTo('/pages/saler/list')">
 				<u-image src="/static/index/i_e_4s.png" mode="heightFix" height="146rpx" class="icon"></u-image>
 			</view>
+			<view v-if="curRoles == 1 || curRoles == 5 || curRoles == 7" class="op" @click="pageTo('/pages/cust/my')">
+				<u-image src="/static/index/i_e_7.png" mode="heightFix" height="146rpx" class="icon"></u-image>
+			</view>
 			<!-- <view v-if="curRoles == 1 || curRoles == 5 || curRoles == 7" class="op" @click="pageTo('/pages/agent/report/buycheck')">
 				<u-image src="/static/index/i_e_6.png" mode="heightFix" height="146rpx" class="icon"></u-image>
 			</view> -->
@@ -166,7 +169,7 @@
 							<image class="u-skeleton-rect" :src="item.pri_image" mode="aspectFill"></image>
 						</view>
 						<view class="property-info-wrap">
-							<view class="title u-skeleton-rect">{{ item.estate_name }}
+							<view class="title u-skeleton-rect">{{ item.estate_name }}({{item.report_open == 2 ? '[上架中]' : ''}}
 								<text class="s">{{areaTypeObj[item.area_type]}}</text>
 							</view>
 							<view class="commission u-skeleton-rect" v-if="userInfo.auth_state == 1">预计奖励:{{ item.brokerage }}</view>

BIN
static/index/i_e_7.png


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/agent/recommend/create.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/index.js


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/index.wxml


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/build/mp-weixin/pages/index/index.wxss


+ 2 - 2
unpackage/dist/build/mp-weixin/uni_modules/vk-uview-ui/components/u-form-item/u-form-item.json

@@ -1,6 +1,6 @@
 {
+  "component": true,
   "usingComponents": {
     "u-icon": "/uni_modules/vk-uview-ui/components/u-icon/u-icon"
-  },
-  "component": true
+  }
 }

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/main.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/common/vendor.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/back-top/back-top.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/components/wm-watermark/wm-watermark.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/check.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/create.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/detail.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/detail2.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/detailGovern.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/estate.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/list.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/recommend/visitimg.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/report/buycheck.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/agent/report/deal.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/create.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/list.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/my.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/cust/mycreate.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/estate/dtl.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/index.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/index/web.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/saler/check.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/saler/deal.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/saler/list.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/login/login.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/login/register.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/setting/bank.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/setting/profile.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/pages/user/setting/setting.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/HM-filterDropdown/components/HM-filterDropdown/HM-filterDropdown.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/okingtz-cropper/components/okingtz-cropper/okingtz-cropper.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-alert-tips/u-alert-tips.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-avatar/u-avatar.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-button/u-button.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-divider/u-divider.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-empty/u-empty.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-form-item/u-form-item.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-form/u-form.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-gap/u-gap.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-icon/u-icon.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-image/u-image.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-input/u-input.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-line/u-line.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-loading/u-loading.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-loadmore/u-loadmore.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-mask/u-mask.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-modal/u-modal.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-navbar/u-navbar.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-parse/libs/trees.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-parse/u-parse.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-popup/u-popup.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-radio-group/u-radio-group.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-radio/u-radio.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-select/u-select.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-skeleton/u-skeleton.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-steps/u-steps.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-tag/u-tag.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-time-line-item/u-time-line-item.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-time-line/u-time-line.js.map


Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/.sourcemap/mp-weixin/uni_modules/vk-uview-ui/components/u-toast/u-toast.js.map


+ 2 - 0
unpackage/dist/dev/mp-weixin/app.json

@@ -14,6 +14,8 @@
     "pages/agent/recommend/detail2",
     "pages/cust/create",
     "pages/cust/list",
+    "pages/cust/mycreate",
+    "pages/cust/my",
     "pages/user/setting/setting",
     "pages/user/setting/profile",
     "pages/user/setting/bank",

+ 15 - 0
unpackage/dist/dev/mp-weixin/common/vendor.js

@@ -15901,6 +15901,21 @@ Object.defineProperty(exports, "__esModule", { value: true });exports.default =
   },
   apideptuserlist: function apideptuserlist(params) {// 我的门店下级人员
     return (0, _http.request)('api/dept/user/list', params, 'loading');
+  },
+  apiprivatecustomerlist: function apiprivatecustomerlist(params) {// 内部客户  列表
+    return (0, _http.request)('api/private/customer/list', params);
+  },
+  apiprivatecustomeradd: function apiprivatecustomeradd(params) {// 内部客户  添加
+    return (0, _http.request)('api/private/customer/add', params, 'loading');
+  },
+  apiprivatecustomeredit: function apiprivatecustomeredit(params) {// 内部客户  编辑
+    return (0, _http.request)('api/private/customer/edit', params, 'loading');
+  },
+  apiprivatecustomerdel: function apiprivatecustomerdel(params) {// 内部客户  删除
+    return (0, _http.request)('api/private/customer/del', params, 'loading');
+  },
+  apiprivatecustomerdetail: function apiprivatecustomerdetail(params) {// 内部客户  详情
+    return (0, _http.request)('api/private/customer/detail', params, 'loading');
   } };exports.default = _default;
 
 /***/ }),

+ 1 - 1
unpackage/dist/dev/mp-weixin/pages/agent/recommend/create.js

@@ -296,7 +296,7 @@ var _default =
     }
   },
   created: function created() {var _this = this;
-    uni.api.estate.apiestatelist({ page_size: 100 }).then(function (res) {
+    uni.api.estate.apiestatelist({ page_size: 100, report_open: 1 }).then(function (res) {
       var list = res.list || [];
       var propertySelectList = [];
       list.forEach(function (item) {

Разница между файлами не показана из-за своего большого размера
+ 187 - 0
unpackage/dist/dev/mp-weixin/pages/cust/my.js


+ 14 - 0
unpackage/dist/dev/mp-weixin/pages/cust/my.json

@@ -0,0 +1,14 @@
+{
+  "navigationBarTitleText": "我的客户列表",
+  "enablePullDownRefresh": true,
+  "usingComponents": {
+    "u-empty": "/uni_modules/vk-uview-ui/components/u-empty/u-empty",
+    "u-icon": "/uni_modules/vk-uview-ui/components/u-icon/u-icon",
+    "u-tag": "/uni_modules/vk-uview-ui/components/u-tag/u-tag",
+    "u-popup": "/uni_modules/vk-uview-ui/components/u-popup/u-popup",
+    "u-input": "/uni_modules/vk-uview-ui/components/u-input/u-input",
+    "u-divider": "/uni_modules/vk-uview-ui/components/u-divider/u-divider",
+    "u-button": "/uni_modules/vk-uview-ui/components/u-button/u-button",
+    "u-loadmore": "/uni_modules/vk-uview-ui/components/u-loadmore/u-loadmore"
+  }
+}

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/cust/my.wxml


+ 144 - 0
unpackage/dist/dev/mp-weixin/pages/cust/my.wxss

@@ -0,0 +1,144 @@
+@charset "UTF-8";
+/* 这里是你自己写的全局css样式 */
+.page {
+  background-color: #f3f4f6;
+  padding: 20rpx;
+}
+.empty-wrap {
+  margin-top: 200rpx;
+  width: 100%;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}
+.content-page {
+  min-height: 100vh;
+  background-color: #fff;
+}
+.footer {
+  display: flex;
+  align-items: center;
+  color: #909399;
+  width: 100%;
+  padding: 20rpx 0;
+  justify-content: center;
+}
+.box-shadow {
+  box-shadow: 0rpx 2rpx 4rpx 0 rgba(0, 0, 0, 0.2);
+}
+.flex-empty {
+  visibility: hidden;
+  width: 120rpx;
+  height: 0rpx;
+}
+.bwin-btn-100 {
+  width: 100%;
+}
+.bwin-popup {
+  display: flex;
+  flex-direction: column;
+  width: 100%;
+  position: relative;
+  min-height: 100%;
+  overflow: hidden;
+}
+.bwin-popup .popup-header {
+  z-index: 2;
+  width: 80%;
+  position: fixed;
+  padding: 20rpx 0;
+  text-align: center;
+  font-size: 32rpx;
+  color: #fff;
+  font-weight: bold;
+  background-color: #2080f0;
+  border-top-left-radius: 20rpx;
+  border-top-right-radius: 20rpx;
+}
+.bwin-popup .popup-body {
+  z-index: 1;
+  position: relative;
+  top: 90rpx;
+  margin-bottom: 90rpx;
+  padding: 20rpx;
+  font-size: 32rpx;
+  overflow-y: scroll;
+}
+.bwin-popup .popup-footer {
+  position: relative;
+  left: 0;
+  bottom: 20rpx;
+  width: 100%;
+  display: flex;
+  justify-content: space-around;
+}
+.search-wrap {
+  padding: 20rpx;
+}
+.filter-wrap {
+  position: relative;
+}
+.customer-list-wrap {
+  width: 100%;
+}
+.customer-list-wrap .customer-item {
+  display: flex;
+  flex-direction: column;
+  align-items: flex-start;
+  font-size: 24rpx;
+  color: #606266;
+  border-bottom: 1rpx solid #e4e7ed;
+  padding: 24rpx 32rpx;
+}
+.customer-list-wrap .customer-item .info {
+  display: flex;
+  align-items: flex-start;
+  justify-content: space-between;
+  width: 100%;
+  margin-bottom: 10rpx;
+}
+.customer-list-wrap .customer-item .info .customer {
+  display: flex;
+  flex-direction: column;
+  align-items: flex-start;
+}
+.customer-list-wrap .customer-item .info .customer .relname {
+  color: #303133;
+  font-size: 32rpx;
+  font-weight: bold;
+  margin-bottom: 10rpx;
+}
+.customer-list-wrap .customer-item .info .customer .item {
+  margin-bottom: 10rpx;
+}
+.customer-list-wrap .customer-item .info .data-wrap {
+  text-align: right;
+}
+.customer-list-wrap .customer-item .info .data-wrap .date {
+  font-size: 20rpx;
+}
+.customer-list-wrap .customer-item .tool-wrap {
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  width: 100%;
+}
+.float-search {
+  opacity: 0.9;
+  position: fixed;
+  right: 20rpx;
+  bottom: 40rpx;
+  padding: 20rpx;
+  border-radius: 50%;
+  background-color: #2080f0;
+}
+.float-search2 {
+  opacity: 0.9;
+  position: fixed;
+  right: 20rpx;
+  bottom: 150rpx;
+  padding: 20rpx;
+  border-radius: 50%;
+  background-color: #2080f0;
+}
+

Разница между файлами не показана из-за своего большого размера
+ 424 - 0
unpackage/dist/dev/mp-weixin/pages/cust/mycreate.js


+ 16 - 0
unpackage/dist/dev/mp-weixin/pages/cust/mycreate.json

@@ -0,0 +1,16 @@
+{
+  "navigationBarTitleText": "添加我的客户",
+  "enablePullDownRefresh": false,
+  "usingComponents": {
+    "u-form": "/uni_modules/vk-uview-ui/components/u-form/u-form",
+    "u-form-item": "/uni_modules/vk-uview-ui/components/u-form-item/u-form-item",
+    "u-input": "/uni_modules/vk-uview-ui/components/u-input/u-input",
+    "u-radio-group": "/uni_modules/vk-uview-ui/components/u-radio-group/u-radio-group",
+    "u-radio": "/uni_modules/vk-uview-ui/components/u-radio/u-radio",
+    "u-gap": "/uni_modules/vk-uview-ui/components/u-gap/u-gap",
+    "u-button": "/uni_modules/vk-uview-ui/components/u-button/u-button",
+    "u-select": "/uni_modules/vk-uview-ui/components/u-select/u-select",
+    "u-modal": "/uni_modules/vk-uview-ui/components/u-modal/u-modal",
+    "u-toast": "/uni_modules/vk-uview-ui/components/u-toast/u-toast"
+  }
+}

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/cust/mycreate.wxml


+ 117 - 0
unpackage/dist/dev/mp-weixin/pages/cust/mycreate.wxss

@@ -0,0 +1,117 @@
+@charset "UTF-8";
+/* 这里是你自己写的全局css样式 */
+.page {
+  background-color: #f3f4f6;
+  padding: 20rpx;
+}
+.empty-wrap {
+  margin-top: 200rpx;
+  width: 100%;
+  display: flex;
+  justify-content: center;
+  align-items: center;
+}
+.content-page {
+  min-height: 100vh;
+  background-color: #fff;
+}
+.footer {
+  display: flex;
+  align-items: center;
+  color: #909399;
+  width: 100%;
+  padding: 20rpx 0;
+  justify-content: center;
+}
+.box-shadow {
+  box-shadow: 0rpx 2rpx 4rpx 0 rgba(0, 0, 0, 0.2);
+}
+.flex-empty {
+  visibility: hidden;
+  width: 120rpx;
+  height: 0rpx;
+}
+.bwin-btn-100 {
+  width: 100%;
+}
+.bwin-popup {
+  display: flex;
+  flex-direction: column;
+  width: 100%;
+  position: relative;
+  min-height: 100%;
+  overflow: hidden;
+}
+.bwin-popup .popup-header {
+  z-index: 2;
+  width: 80%;
+  position: fixed;
+  padding: 20rpx 0;
+  text-align: center;
+  font-size: 32rpx;
+  color: #fff;
+  font-weight: bold;
+  background-color: #2080f0;
+  border-top-left-radius: 20rpx;
+  border-top-right-radius: 20rpx;
+}
+.bwin-popup .popup-body {
+  z-index: 1;
+  position: relative;
+  top: 90rpx;
+  margin-bottom: 90rpx;
+  padding: 20rpx;
+  font-size: 32rpx;
+  overflow-y: scroll;
+}
+.bwin-popup .popup-footer {
+  position: relative;
+  left: 0;
+  bottom: 20rpx;
+  width: 100%;
+  display: flex;
+  justify-content: space-around;
+}
+.page {
+  padding: 20rpx;
+  background-color: #ffffff;
+}
+.form {
+  border-radius: 10rpx;
+  padding: 0 40rpx;
+}
+.popup-body .tips-title {
+  font-size: 32rpx;
+  margin-bottom: 20rpx;
+}
+.popup-body .tips-content {
+  font-size: 24rpx;
+  color: #909399;
+  margin-bottom: 60rpx;
+}
+.id_card {
+  color: #606266;
+  width: 100%;
+  height: 350rpx;
+  display: flex;
+  flex-direction: column;
+  align-items: center;
+  justify-content: center;
+  background-color: #f4f5f6;
+  font-size: 24rpx;
+}
+.footer {
+  position: absolute;
+  text-align: center;
+  bottom: 40rpx;
+  font-size: 24rpx;
+}
+.footer .agreement {
+  color: #fa3534;
+}
+.slot-content {
+  font-size: 28rpx;
+  color: #606266;
+  padding: 20rpx;
+}
+

+ 6 - 0
unpackage/dist/dev/mp-weixin/pages/index/index.js

@@ -445,6 +445,9 @@ __webpack_require__.r(__webpack_exports__);
 
 
 
+
+
+
 
 
 
@@ -691,6 +694,9 @@ var _utils = __webpack_require__(/*! @/utils */ 44);function _toConsumableArray(
 //
 //
 //
+//
+//
+//
 var that;var backTop = function backTop() {__webpack_require__.e(/*! require.ensure | components/back-top/back-top */ "components/back-top/back-top").then((function () {return resolve(__webpack_require__(/*! @/components/back-top/back-top.vue */ 334));}).bind(null, __webpack_require__)).catch(__webpack_require__.oe);};var wmWatermark = function wmWatermark() {__webpack_require__.e(/*! require.ensure | components/wm-watermark/wm-watermark */ "components/wm-watermark/wm-watermark").then((function () {return resolve(__webpack_require__(/*! @/components/wm-watermark/wm-watermark.vue */ 254));}).bind(null, __webpack_require__)).catch(__webpack_require__.oe);};var _default = { components: { backTop: backTop, wmWatermark: wmWatermark }, filters: { filtersRichText: function filtersRichText(html) {//控制小程序中图片大小
       var newContent = html.replace(/<img[^>]*>/gi, function (match, capture) {match = match.replace(/style="[^"]+"/gi, '').replace(/style='[^']+'/gi, '');match = match.replace(/width="[^"]+"/gi, '').replace(/width='[^']+'/gi, '');match = match.replace(/height="[^"]+"/gi, '').replace(/height='[^']+'/gi, '');return match;});newContent = newContent.replace(/style="[^"]+"/gi, function (match, capture) {match = match.replace(/width:[^;]+;/gi, 'max-width:100%;').replace(/width:[^;]+;/gi, 'max-width:100%;');return match;});newContent = newContent.replace(/<br[^>]*\/>/gi, '');newContent = newContent.replace(/\<img/gi, '<img style="max-width:100%;height:auto;display:inline-block;margin:10rpx auto;"');return newContent;} }, data: function data() {// 页面数据变量
     return { curRoles: '', isOneRow: false, curHtml: '', backTop: { src: '../../static/back-top/top.png', scrollTop: 0 }, userInfo: {}, skeletonLoading: true, agentTypeList: ['', '自由经纪人', '渠道经纪人', '老业主'], propertyList: [{ estate_name: '在售项目1', pri_image: 'https://zdcdn.2bwin.cn/uploads/20220501/af6eb9c2a5d462be10a15c2302e5e6b5.jpg', sale_tag: '刚需好盘', rulesInfo: { des: '内容加载中1....', des_content: '内容加载中2....' } }], commonRulesShow: false, propertyPopupShow: false, currentPropertyIndex: 0, currentPropertyObj: {}, // init请求返回的数据

Разница между файлами не показана из-за своего большого размера
+ 0 - 0
unpackage/dist/dev/mp-weixin/pages/index/index.wxml


+ 1 - 8
unpackage/dist/dev/mp-weixin/project.private.config.json

@@ -9,17 +9,10 @@
       "list": [
         {
           "name": "",
-          "pathName": "pages/agent/report/buycheck",
+          "pathName": "pages/cust/my",
           "query": "",
           "launchMode": "default",
           "scene": null
-        },
-        {
-          "name": "",
-          "pathName": "pages/agent/recommend/check",
-          "query": "id=1449&name=%E6%B1%A4-15618947785&eid=3",
-          "launchMode": "default",
-          "scene": null
         }
       ]
     }

BIN
unpackage/dist/dev/mp-weixin/static/index/77ea74b3deca4d54d756606b7cb6e7e.png


BIN
unpackage/dist/dev/mp-weixin/static/index/i_e_7.png


+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/vk-uview-ui/components/u-image/u-image.json

@@ -1,6 +1,6 @@
 {
-  "component": true,
   "usingComponents": {
     "u-icon": "/uni_modules/vk-uview-ui/components/u-icon/u-icon"
-  }
+  },
+  "component": true
 }

+ 2 - 2
unpackage/dist/dev/mp-weixin/uni_modules/vk-uview-ui/components/u-line/u-line.json

@@ -1,4 +1,4 @@
 {
-  "component": true,
-  "usingComponents": {}
+  "usingComponents": {},
+  "component": true
 }

Некоторые файлы не были показаны из-за большого количества измененных файлов