Sfoglia il codice sorgente

联系人添加微信字段

xiaohaizhao 3 anni fa
parent
commit
36686f756c

+ 132 - 126
packageA/contacts/details.js

@@ -1,129 +1,135 @@
 const _Http = getApp().globalData.http;
 Page({
-	data: {
-		contacts: [],
-		form1: [],
-		form2: [],
-		show: false,
-		actions: [{
-			name: "呼叫"
-		}, {
-			name: "复制"
-		}]
-	},
-	onLoad(options) {
-		this.handleData(JSON.parse(options.item))
-	},
-	handleData(item) {
-		this.setData({
-			contacts: item,
-			form1: [{
-				label: "性别",
-				content: item.sex
-			}, {
-				label: "生日",
-				content: item.birthday
-			}, {
-				label: "家庭住址",
-				content: item.homeaddress
-			}, {
-				label: "邮箱",
-				content: item.email
-			}, {
-				label: "单位",
-				content: item.company
-			}, {
-				label: "部门",
-				content: item.depname
-			}, {
-				label: "职位",
-				content: item.position
-			}, {
-				label: "群组",
-				content: item.groupname
-			}, {
-				label: "备注",
-				content: item.remarks
-			}]
-		})
-	},
-	changeShow() {
-		this.setData({
-			show: !this.data.show
-		})
-	},
-	/* 处理选择 */
-	handleSelect(e) {
-		let phone = this.data.contacts.phonenumber;
-		if (e.detail.name == '复制') {
-			wx.setClipboardData({
-				data: phone
-			});
-		} else {
-			wx.makePhoneCall({
-				phoneNumber: phone,
-			})
-		};
-		this.changeShow()
-	},
-	/* 拷贝内容 */
-	copyContents(e) {
-		const {
-			data
-		} = e.currentTarget.dataset;
-		if (data) wx.setClipboardData({
-			data,
-		});
-	},
-	/* 去编辑 */
-	toEdit() {
-		let data = JSON.stringify(this.data.contacts);
-		wx.navigateTo({
-			url: '../contacts/edit?data=' + data,
-		})
-	},
-	/* 删除 */
-	deleteData() {
-		const that = this;
-		wx.showModal({
-			title: "提示",
-			content: `是否确认删除${this.data.contacts.name}`,
-			success({
-				confirm
-			}) {
-				if (confirm) _Http.basic({
-					"id": "20220831164703",
-					"version": 1,
-					"content": {
-						"sys_phonebookid": that.data.contacts.sys_phonebookid
-					}
-				}).then(res => {
-					if (res.msg != '成功') return wx.showToast({
-						title: res.data,
-						icon: "none"
-					})
-					getCurrentPages().forEach(v => {
-						if (v.route === 'packageA/contacts/index') {
-							v.getGroup();
-						} else if (v.route === 'packageA/contacts/list') {
-							let arr = v.data.phonebook.filter(v => v.sys_phonebookid != that.data.contacts.sys_phonebookid);
-							v.setData({
-								phonebook: arr
-							})
-						}
-					});
-					wx.showToast({
-						title: '删除成功',
-						icon: 'none'
-					})
-					setTimeout(() => {
-						wx.navigateBack({
-							delta: 0,
-						})
-					}, 500);
-				})
-			}
-		})
-	},
-	onShareAppMessage() {}
+    data: {
+        contacts: [],
+        form1: [],
+        form2: [],
+        show: false,
+        actions: [{
+            name: "呼叫"
+        }, {
+            name: "复制"
+        }]
+    },
+    onLoad(options) {
+        this.handleData(JSON.parse(options.item))
+    },
+    handleData(item) {
+        this.setData({
+            contacts: item,
+            form1: [{
+                label: "性别",
+                content: item.sex
+            }, {
+                label: "生日",
+                content: item.birthday
+            }, {
+                label: "家庭住址",
+                content: item.homeaddress
+            }, {
+                label: "微信",
+                content: item.wechatnum
+            }, {
+                label: "邮箱",
+                content: item.email
+            }, {
+                label: "传真",
+                content: item.fax
+            }, {
+                label: "单位",
+                content: item.company
+            }, {
+                label: "部门",
+                content: item.depname
+            }, {
+                label: "职位",
+                content: item.position
+            }, {
+                label: "群组",
+                content: item.groupname
+            }, {
+                label: "备注",
+                content: item.remarks
+            }]
+        })
+    },
+    changeShow() {
+        this.setData({
+            show: !this.data.show
+        })
+    },
+    /* 处理选择 */
+    handleSelect(e) {
+        let phone = this.data.contacts.phonenumber;
+        if (e.detail.name == '复制') {
+            wx.setClipboardData({
+                data: phone
+            });
+        } else {
+            wx.makePhoneCall({
+                phoneNumber: phone,
+            })
+        };
+        this.changeShow()
+    },
+    /* 拷贝内容 */
+    copyContents(e) {
+        const {
+            data
+        } = e.currentTarget.dataset;
+        if (data) wx.setClipboardData({
+            data,
+        });
+    },
+    /* 去编辑 */
+    toEdit() {
+        let data = JSON.stringify(this.data.contacts);
+        wx.navigateTo({
+            url: '../contacts/edit?data=' + data,
+        })
+    },
+    /* 删除 */
+    deleteData() {
+        const that = this;
+        wx.showModal({
+            title: "提示",
+            content: `是否确认删除${this.data.contacts.name}`,
+            success({
+                confirm
+            }) {
+                if (confirm) _Http.basic({
+                    "id": "20220831164703",
+                    "version": 1,
+                    "content": {
+                        "sys_phonebookid": that.data.contacts.sys_phonebookid
+                    }
+                }).then(res => {
+                    if (res.msg != '成功') return wx.showToast({
+                        title: res.data,
+                        icon: "none"
+                    })
+                    getCurrentPages().forEach(v => {
+                        if (v.route === 'packageA/contacts/index') {
+                            v.getGroup();
+                        } else if (v.route === 'packageA/contacts/list') {
+                            let arr = v.data.phonebook.filter(v => v.sys_phonebookid != that.data.contacts.sys_phonebookid);
+                            v.setData({
+                                phonebook: arr
+                            })
+                        }
+                    });
+                    wx.showToast({
+                        title: '删除成功',
+                        icon: 'none'
+                    })
+                    setTimeout(() => {
+                        wx.navigateBack({
+                            delta: 0,
+                        })
+                    }, 500);
+                })
+            }
+        })
+    },
+    onShareAppMessage() {}
 })

+ 420 - 411
packageA/contacts/edit.js

@@ -1,415 +1,424 @@
 const _Http = getApp().globalData.http,
-	deleteMark = require("../../utils/deleteMark");
+    deleteMark = require("../../utils/deleteMark");
 Page({
-	data: {
-		sys_phonebookid: 0,
-		form: [{
-			label: "姓名",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "请填写",
-			valueName: "name", //绑定的字段名称
-			required: true, //必填
-		}, {
-			label: "联系方式",
-			error: false,
-			errMsg: "",
-			hint: "",
-			type: "radio",
-			value: "0",
-			radioList: [{
-				id: '0',
-				name: '手机号'
-			}, {
-				id: '1',
-				name: '座机电话'
-			}],
-			valueName: "isTelephone", //绑定的字段名称
-			required: true, //必填
-			interrupt: true,
-			checking: `true`,
-			phonenumber: "",
-			telephone: ["", ""]
-		}, {
-			label: "手机号",
-			error: false,
-			errMsg: "",
-			type: "number",
-			value: "",
-			placeholder: "联系人手机号码",
-			valueName: "phonenumber",
-			required: true,
-			checking: "phone"
-		}, {
-			label: "邮箱",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "请填写",
-			valueName: "email",
-			required: false,
-			checking: "mail"
-		}, {
-			label: "传真",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "请填写",
-			valueName: "fax",
-			required: false, //必填
-		}, {
-			label: "单位",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "请填写",
-			valueName: "company",
-			required: false, //必填
-		}, {
-			label: "部门",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "请填写",
-			valueName: "depname",
-			required: false, //必填
-		}, {
-			label: "职位",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "请填写",
-			valueName: "position",
-			required: false, //必填
-		}, {
-			label: "性别",
-			error: false,
-			errMsg: "",
-			type: "sex",
-			value: "男",
-			placeholder: "联系人性别",
-			valueName: "sex",
-			required: false,
-			checking: "base"
-		}, {
-			label: "生日",
-			error: false,
-			errMsg: "",
-			type: "date",
-			value: "",
-			placeholder: "联系人生日",
-			valueName: "birthday",
-			required: false
-		}, {
-			label: "家庭住址",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "请填写",
-			valueName: "homeaddress",
-			required: false, //必填
-		}],
-		from3: [{
-			label: "标签",
-			error: false,
-			errMsg: "",
-			type: "slot",
-			value: "",
-			placeholder: "请填写",
-			valueName: "tag",
-			required: false, //必填
-		}, {
-			label: "群组",
-			error: false,
-			errMsg: "",
-			type: "custom",
-			value: "",
-			placeholder: "请填写",
-			valueName: "sys_phonebookgroupid",
-			required: false, //必填
-		}, {
-			label: "备注",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "请填写",
-			valueName: "remarks",
-			required: false, //必填
-		}],
-		disabled: true, //按钮禁用
-		groupList: [],
-		groupNameList: [],
-		groupName: null,
-		popupShow: false,
-		checked: false,
-		radio: '',
-		loading: false
-	},
-	onLoad(options) {
-		if (options.group) {
-			const group = JSON.parse(options.group);
-			this.setData({
-				groupName: group.groupname,
-				'from3[1].value': group.sys_phonebookgroupid
-			})
-		};
-		if (options.data) {
-			let item = JSON.parse(options.data),
-				disabled = false,
-				arr = item.phonenumber.split("-");
-			item.isTelephone = arr.length == 2 ? "1" : "0";
-			this.setData({
-				form: this.data.form.map(v => {
-					if (v.valueName == 'phonenumber') {
-						v = arr.length == 2 ? {
-							label: "电话",
-							error: false,
-							errMsg: "",
-							type: "telephone",
-							value: arr,
-							placeholder: "联系人手机号码",
-							valueName: "telephone",
-							required: true,
-							checking: "telephone"
-						} : {
-							label: "手机号",
-							error: false,
-							errMsg: "",
-							type: "number",
-							value: arr[0],
-							placeholder: "联系人手机号码",
-							valueName: "phonenumber",
-							required: true,
-							checking: "phone"
-						}
-					} else {
-						v.value = Object.hasOwn(item, v.valueName) ? item[v.valueName] : v.value;
-					}
-					return v
-				}),
-				disabled
-			});
-			this.data.content = item;
-			if (item.sys_phonebookid) this.setData({
-				sys_phonebookid: item.sys_phonebookid
-			})
+    data: {
+        sys_phonebookid: 0,
+        form: [{
+            label: "姓名",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "name", //绑定的字段名称
+            required: true, //必填
+        }, {
+            label: "联系方式",
+            error: false,
+            errMsg: "",
+            hint: "",
+            type: "radio",
+            value: "0",
+            radioList: [{
+                id: '0',
+                name: '手机号'
+            }, {
+                id: '1',
+                name: '座机电话'
+            }],
+            valueName: "isTelephone", //绑定的字段名称
+            required: true, //必填
+            interrupt: true,
+            checking: `true`,
+            phonenumber: "",
+            telephone: ["", ""]
+        }, {
+            label: "手机号",
+            error: false,
+            errMsg: "",
+            type: "number",
+            value: "",
+            placeholder: "联系人手机号码",
+            valueName: "phonenumber",
+            required: true,
+            checking: "phone"
+        }, {
+            label: "微信",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "wechatnum", //绑定的字段名称
+            required: false, //必填
+        }, {
+            label: "邮箱",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "请填写",
+            valueName: "email",
+            required: false,
+            checking: "mail"
+        }, {
+            label: "传真",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "fax",
+            required: false, //必填
+        }, {
+            label: "单位",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "company",
+            required: false, //必填
+        }, {
+            label: "部门",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "depname",
+            required: false, //必填
+        }, {
+            label: "职位",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "position",
+            required: false, //必填
+        }, {
+            label: "性别",
+            error: false,
+            errMsg: "",
+            type: "sex",
+            value: "男",
+            placeholder: "联系人性别",
+            valueName: "sex",
+            required: false,
+            checking: "base"
+        }, {
+            label: "生日",
+            error: false,
+            errMsg: "",
+            type: "date",
+            value: "",
+            placeholder: "联系人生日",
+            valueName: "birthday",
+            required: false
+        }, {
+            label: "家庭住址",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "homeaddress",
+            required: false, //必填
+        }],
+        from3: [{
+            label: "标签",
+            error: false,
+            errMsg: "",
+            type: "slot",
+            value: "",
+            placeholder: "请填写",
+            valueName: "tag",
+            required: false, //必填
+        }, {
+            label: "群组",
+            error: false,
+            errMsg: "",
+            type: "custom",
+            value: "",
+            placeholder: "请填写",
+            valueName: "sys_phonebookgroupid",
+            required: false, //必填
+        }, {
+            label: "备注",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "请填写",
+            valueName: "remarks",
+            required: false, //必填
+        }],
+        disabled: true, //按钮禁用
+        groupList: [],
+        groupNameList: [],
+        groupName: null,
+        popupShow: false,
+        checked: false,
+        radio: '',
+        loading: false
+    },
+    onLoad(options) {
+        if (options.group) {
+            const group = JSON.parse(options.group);
+            this.setData({
+                groupName: group.groupname,
+                'from3[1].value': group.sys_phonebookgroupid
+            })
+        };
+        if (options.data) {
+            let item = JSON.parse(options.data),
+                disabled = false,
+                arr = item.phonenumber.split("-");
+            item.isTelephone = arr.length == 2 ? "1" : "0";
+            this.setData({
+                form: this.data.form.map(v => {
+                    if (v.valueName == 'phonenumber') {
+                        v = arr.length == 2 ? {
+                            label: "电话",
+                            error: false,
+                            errMsg: "",
+                            type: "telephone",
+                            value: arr,
+                            placeholder: "联系人手机号码",
+                            valueName: "telephone",
+                            required: true,
+                            checking: "telephone"
+                        } : {
+                            label: "手机号",
+                            error: false,
+                            errMsg: "",
+                            type: "number",
+                            value: arr[0],
+                            placeholder: "联系人手机号码",
+                            valueName: "phonenumber",
+                            required: true,
+                            checking: "phone"
+                        }
+                    } else {
+                        v.value = Object.hasOwn(item, v.valueName) ? item[v.valueName] : v.value;
+                    }
+                    return v
+                }),
+                disabled
+            });
+            this.data.content = item;
+            if (item.sys_phonebookid) this.setData({
+                sys_phonebookid: item.sys_phonebookid
+            })
 
-			this.setData({
-				'from3[0].value': item.tag1,
-				'from3[1].value': item.sys_phonebookgroupid,
-				'from3[2].value': item.remarks,
-				groupName: item.groupname,
-				sys_phonebookid: item.sys_phonebookid,
-				disabled: false
-			});
-			if (item.tag1.length) {
-				let checked = false,
-					radio = '';
-				item.tag1.forEach(v => {
-					if (v == '关键决策人') {
-						checked = true;
-					} else {
-						radio = v;
-					}
-				})
-				this.setData({
-					checked,
-					radio
-				})
-			}
-		};
-		this.getGroup();
-		wx.setNavigationBarTitle({
-			title: this.data.sys_phonebookid == 0 ? '添加联系人' : '修改联系人',
-		})
-	},
-	/* 提交表单 */
-	submit() {
-		let from = Object.assign(this.selectComponent("#from3").getData().returnData, this.selectComponent("#Form").submit())
-		if (this.data.loading) return;
-		if (from.telephone) {
-			from.phonenumber = from.telephone.join("-");
-			delete(from.telephone)
-		}
-		if (from.sys_phonebookgroupid == '') from.sys_phonebookgroupid = 0;
-		if (from.tag == '') from.tag = [];
-		this.setData({
-			loading: true
-		})
-		_Http.basic({
-			"id": "20220831164503",
-			"version": 1,
-			"content": {
-				"sys_phonebookid": this.data.sys_phonebookid, //sys_phonebookid<=0时 为新增
-				...from
-			}
-		}).then(res => {
-			console.log("新建联系人", res)
-			this.setData({
-				loading: false
-			})
-			if (res.msg != '成功') return wx.showToast({
-				title: res.data,
-				icon: "none"
-			})
-			res.data.tag1 = res.data.tag.length ? JSON.parse(res.data.tag) : ""
-			getCurrentPages().forEach(v => {
-				if (v.route === 'packageA/contacts/index') {
-					v.getGroup();
-				} else if (v.route === 'packageA/contacts/list') {
-					let arr = v.data.phonebook,
-						index = arr.findIndex(value => value.sys_phonebookid == res.data.sys_phonebookid);
-					(index === -1) ? arr.push(res.data): arr[index] = res.data;
-					v.setData({
-						phonebook: arr
-					})
-				} else if (v.route === 'packageA/contacts/details') {
-					v.handleData(res.data);
-				}
-			});
-			wx.showToast({
-				title: this.data.sys_phonebookid == 0 ? '添加成功' : '保存成功'
-			})
-			this.setData({
-				disabled: true,
-			})
-			setTimeout(() => {
-				wx.navigateBack({
-					delta: 0
-				})
-			}, 700);
-		})
-	},
-	/* 打断 */
-	interrupt({
-		detail
-	}) {
-		let {
-			data,
-			form
-		} = detail;
-		if (data.label == '联系方式') {
-			if (data.value == 0) {
-				data.telephone = form[2].value;
-				form[2] = {
-					label: "手机号",
-					error: false,
-					errMsg: "",
-					type: "number",
-					value: data.phonenumber,
-					placeholder: "联系人手机号码",
-					valueName: "phonenumber",
-					required: true,
-					checking: "phone"
-				}
-			} else {
-				data.phonenumber = form[2].value;
-				form[2] = {
-					label: "电话",
-					error: false,
-					errMsg: "",
-					type: "telephone",
-					value: data.telephone,
-					placeholder: "联系人手机号码",
-					valueName: "telephone",
-					required: true,
-					checking: "telephone"
-				}
-			};
-			this.setData({
-				form
-			})
-		}
-	},
-	/* 监听表单必填项 */
-	onConfirm({
-		detail
-	}) {
-		if (detail !== this.data.disabled) this.setData({
-			disabled: detail
-		})
-	},
-	/* 获取分组 */
-	getGroup() {
-		_Http.basic({
-			"id": "20220831164603",
-			"version": 1,
-			"content": {
-				"nocache": true,
-				"where": {
-					"condition": ""
-				}
-			}
-		}).then(res => {
-			if (res.msg != '成功') return wx.showToast({
-				title: res.msg,
-				icon: "none"
-			})
-			const data = res.data.filter(v => v.groupname != '客户联系人' && v.groupname != '项目联系人');
-			this.setData({
-				groupList: data,
-				groupNameList: data.map(v => v.groupname)
-			})
-		});
-	},
-	/* 选择群组 */
-	bindPickerChange(e) {
-		const {
-			returnData
-		} = this.selectComponent("#from3").getData()
-		this.setData({
-			'from3[1].value': this.data.groupList[e.detail.value - 0].sys_phonebookgroupid,
-			groupName: this.data.groupNameList[e.detail.value - 0],
-			'from3[0].value': returnData.tag,
-			'from3[2].value': returnData.remarks
-		});
-	},
-	/* 打开弹出层 */
-	openPopup() {
-		this.setData({
-			popupShow: true
-		})
-	},
-	/* 关闭弹出层 */
-	closePopup() {
-		this.setData({
-			popupShow: false
-		})
-	},
-	/* 确定标签 */
-	handleTag() {
-		let tagArr = [];
-		if (this.data.checked) tagArr.push("关键决策人");
-		if (this.data.radio) tagArr.push(this.data.radio);
-		const {
-			returnData
-		} = this.selectComponent("#from3").getData()
-		this.setData({
-			'from3[0].value': tagArr,
-			'from3[1].value': returnData.sys_phonebookgroupid,
-			'from3[2].value': returnData.remarks
-		});
-		this.closePopup()
-	},
-	/* 是否关键决策人 */
-	changeChecked() {
-		this.setData({
-			checked: !this.data.checked
-		})
-	},
-	/* 单选 */
-	onChange(e) {
-		this.setData({
-			radio: e.currentTarget.dataset.name
-		})
-	}
+            this.setData({
+                'from3[0].value': item.tag1,
+                'from3[1].value': item.sys_phonebookgroupid,
+                'from3[2].value': item.remarks,
+                groupName: item.groupname,
+                sys_phonebookid: item.sys_phonebookid,
+                disabled: false
+            });
+            if (item.tag1.length) {
+                let checked = false,
+                    radio = '';
+                item.tag1.forEach(v => {
+                    if (v == '关键决策人') {
+                        checked = true;
+                    } else {
+                        radio = v;
+                    }
+                })
+                this.setData({
+                    checked,
+                    radio
+                })
+            }
+        };
+        this.getGroup();
+        wx.setNavigationBarTitle({
+            title: this.data.sys_phonebookid == 0 ? '添加联系人' : '修改联系人',
+        })
+    },
+    /* 提交表单 */
+    submit() {
+        let from = Object.assign(this.selectComponent("#from3").getData().returnData, this.selectComponent("#Form").submit())
+        if (this.data.loading) return;
+        if (from.telephone) {
+            from.phonenumber = from.telephone.join("-");
+            delete(from.telephone)
+        }
+        if (from.sys_phonebookgroupid == '') from.sys_phonebookgroupid = 0;
+        if (from.tag == '') from.tag = [];
+        this.setData({
+            loading: true
+        })
+        _Http.basic({
+            "id": "20220831164503",
+            "version": 1,
+            "content": {
+                "sys_phonebookid": this.data.sys_phonebookid, //sys_phonebookid<=0时 为新增
+                ...from
+            }
+        }).then(res => {
+            console.log("新建联系人", res)
+            this.setData({
+                loading: false
+            })
+            if (res.msg != '成功') return wx.showToast({
+                title: res.data,
+                icon: "none"
+            })
+            res.data.tag1 = res.data.tag.length ? JSON.parse(res.data.tag) : ""
+            getCurrentPages().forEach(v => {
+                if (v.route === 'packageA/contacts/index') {
+                    v.getGroup();
+                } else if (v.route === 'packageA/contacts/list') {
+                    let arr = v.data.phonebook,
+                        index = arr.findIndex(value => value.sys_phonebookid == res.data.sys_phonebookid);
+                    (index === -1) ? arr.push(res.data): arr[index] = res.data;
+                    v.setData({
+                        phonebook: arr
+                    })
+                } else if (v.route === 'packageA/contacts/details') {
+                    v.handleData(res.data);
+                }
+            });
+            wx.showToast({
+                title: this.data.sys_phonebookid == 0 ? '添加成功' : '保存成功'
+            })
+            this.setData({
+                disabled: true,
+            })
+            setTimeout(() => {
+                wx.navigateBack({
+                    delta: 0
+                })
+            }, 700);
+        })
+    },
+    /* 打断 */
+    interrupt({
+        detail
+    }) {
+        let {
+            data,
+            form
+        } = detail;
+        if (data.label == '联系方式') {
+            if (data.value == 0) {
+                data.telephone = form[2].value;
+                form[2] = {
+                    label: "手机号",
+                    error: false,
+                    errMsg: "",
+                    type: "number",
+                    value: data.phonenumber,
+                    placeholder: "联系人手机号码",
+                    valueName: "phonenumber",
+                    required: true,
+                    checking: "phone"
+                }
+            } else {
+                data.phonenumber = form[2].value;
+                form[2] = {
+                    label: "电话",
+                    error: false,
+                    errMsg: "",
+                    type: "telephone",
+                    value: data.telephone,
+                    placeholder: "联系人手机号码",
+                    valueName: "telephone",
+                    required: true,
+                    checking: "telephone"
+                }
+            };
+            this.setData({
+                form
+            })
+        }
+    },
+    /* 监听表单必填项 */
+    onConfirm({
+        detail
+    }) {
+        if (detail !== this.data.disabled) this.setData({
+            disabled: detail
+        })
+    },
+    /* 获取分组 */
+    getGroup() {
+        _Http.basic({
+            "id": "20220831164603",
+            "version": 1,
+            "content": {
+                "nocache": true,
+                "where": {
+                    "condition": ""
+                }
+            }
+        }).then(res => {
+            if (res.msg != '成功') return wx.showToast({
+                title: res.msg,
+                icon: "none"
+            })
+            const data = res.data.filter(v => v.groupname != '客户联系人' && v.groupname != '项目联系人');
+            this.setData({
+                groupList: data,
+                groupNameList: data.map(v => v.groupname)
+            })
+        });
+    },
+    /* 选择群组 */
+    bindPickerChange(e) {
+        const {
+            returnData
+        } = this.selectComponent("#from3").getData()
+        this.setData({
+            'from3[1].value': this.data.groupList[e.detail.value - 0].sys_phonebookgroupid,
+            groupName: this.data.groupNameList[e.detail.value - 0],
+            'from3[0].value': returnData.tag,
+            'from3[2].value': returnData.remarks
+        });
+    },
+    /* 打开弹出层 */
+    openPopup() {
+        this.setData({
+            popupShow: true
+        })
+    },
+    /* 关闭弹出层 */
+    closePopup() {
+        this.setData({
+            popupShow: false
+        })
+    },
+    /* 确定标签 */
+    handleTag() {
+        let tagArr = [];
+        if (this.data.checked) tagArr.push("关键决策人");
+        if (this.data.radio) tagArr.push(this.data.radio);
+        const {
+            returnData
+        } = this.selectComponent("#from3").getData()
+        this.setData({
+            'from3[0].value': tagArr,
+            'from3[1].value': returnData.sys_phonebookgroupid,
+            'from3[2].value': returnData.remarks
+        });
+        this.closePopup()
+    },
+    /* 是否关键决策人 */
+    changeChecked() {
+        this.setData({
+            checked: !this.data.checked
+        })
+    },
+    /* 单选 */
+    onChange(e) {
+        this.setData({
+            radio: e.currentTarget.dataset.name
+        })
+    }
 })

+ 338 - 329
packageA/project/modules/contacts/add/index.js

@@ -1,332 +1,341 @@
 const _Http = getApp().globalData.http;
 Page({
-	data: {
-		sys_phonebookid: null, //是否为快捷选择创建的账号
-		fromShowAll: false,
-		form: [{
-			label: "姓名",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "联系人名称",
-			valueName: "name",
-			required: true,
-			checking: "base"
-		}, {
-			label: "联系方式",
-			error: false,
-			errMsg: "",
-			hint: "",
-			type: "radio",
-			value: "0",
-			radioList: [{
-				id: '0',
-				name: '手机号'
-			}, {
-				id: '1',
-				name: '座机电话'
-			}],
-			valueName: "isTelephone", //绑定的字段名称
-			required: true, //必填
-			interrupt: true,
-			checking: `true`,
-			phonenumber: "",
-			telephone: ["", ""]
-		}, {
-			label: "手机号",
-			error: false,
-			errMsg: "",
-			type: "number",
-			value: "",
-			placeholder: "联系人手机号码",
-			valueName: "phonenumber",
-			required: true,
-			checking: "phone"
-		}, {
-			label: "邮箱",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "请填写",
-			valueName: "email",
-			required: false,
-			checking: "mail"
-		}, {
-			label: "传真",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "请填写",
-			valueName: "fax",
-			required: false,
-		}, {
-			label: "单位",
-			error: false,
-			errMsg: "",
-			type: "route",
-			url: "/packageA/project/modules/contacts/select/index",
-			value: "",
-			query: "&radio=true",
-			placeholder: "选择单位",
-			valueName: "sys_enterpriseid",
-			required: true,
-			checking: "base",
-		}, {
-			label: "部门",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "联系人所属部门",
-			valueName: "depname",
-			required: false,
-			checking: "base"
-		}, {
-			label: "职位",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "联系人职位",
-			valueName: "position",
-			required: false,
-			checking: "base"
-		}, {
-			label: "性别",
-			error: false,
-			errMsg: "",
-			type: "sex",
-			value: "男",
-			placeholder: "联系人性别",
-			valueName: "sex",
-			required: false,
-			checking: "base"
-		}, {
-			label: "生日",
-			error: false,
-			errMsg: "",
-			type: "date",
-			value: "",
-			placeholder: "联系人生日",
-			valueName: "birthday",
-			required: false
-		}, {
-			label: "家庭地址",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "家庭地址",
-			valueName: "address",
-			required: false,
-			checking: "base"
-		}, {
-			label: "备注",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "请填写",
-			valueName: "remarks",
-			required: false,
-			checking: "base"
-		}],
-		disabled: true,
-		"content": {
-			"contactsid": 0, //地址id
-			"sa_projectid": 0, //绑定数据
-			"isleader": 0, //默认0
-			"workaddress": 0,
-			"isdefault": 0, //是否默认地址
-			"isprimary": 0 //是否为主地址
-		}
-	},
-	onLoad(options) {
-		this.data.content.sa_projectid = options.sa_projectid;
-		if (options.data) {
-			let item = JSON.parse(options.data),
-				disabled = false,
-				arr = item.phonenumber.split("-");
-			console.log(item)
-			item.sys_enterpriseid = item.enterprisename ? [item.enterprisename, [item.sys_enterpriseid]] : "";
-			item.isTelephone = arr.length == 2 ? "1" : "0";
-			this.setData({
-				form: this.data.form.map(v => {
-					if (v.valueName == 'phonenumber') {
-						v = arr.length == 2 ? {
-							label: "电话",
-							error: false,
-							errMsg: "",
-							type: "telephone",
-							value: arr,
-							placeholder: "联系人手机号码",
-							valueName: "telephone",
-							required: true,
-							checking: "telephone"
-						} : {
-							label: "手机号",
-							error: false,
-							errMsg: "",
-							type: "number",
-							value: arr[0],
-							placeholder: "联系人手机号码",
-							valueName: "phonenumber",
-							required: true,
-							checking: "phone"
-						}
-					} else {
-						v.value = Object.hasOwn(item, v.valueName) ? item[v.valueName] : v.value;
-					}
-					return v
-				}),
-				disabled
-			});
-			this.data.content = item;
-			if (item.sys_phonebookid) this.setData({
-				sys_phonebookid: item.sys_phonebookid
-			})
-		};
-	},
-	/* 打断 */
-	interrupt({
-		detail
-	}) {
-		let {
-			data,
-			form
-		} = detail;
-		if (data.label == '联系方式') {
-			if (data.value == 0) {
-				data.telephone = form[2].value;
-				form[2] = {
-					label: "手机号",
-					error: false,
-					errMsg: "",
-					type: "number",
-					value: data.phonenumber,
-					placeholder: "联系人手机号码",
-					valueName: "phonenumber",
-					required: true,
-					checking: "phone"
-				}
-			} else {
-				data.phonenumber = form[2].value;
-				form[2] = {
-					label: "电话",
-					error: false,
-					errMsg: "",
-					type: "telephone",
-					value: data.telephone,
-					placeholder: "联系人手机号码",
-					valueName: "telephone",
-					required: true,
-					checking: "telephone"
-				}
-			};
-			this.setData({
-				form
-			})
-		}
-	},
-	/* 提交数据 */
-	submit() {
-		let data = this.selectComponent("#Form").submit();
-		if (!data || this.data.disabled) return;
-		data.sys_enterpriseid = data.sys_enterpriseid[1] ? data.sys_enterpriseid[1][0] : 0;
-		const content = {
-			...this.data.content,
-			...data,
-			sys_phonebookid: ""
-		};
-		if (content.telephone) {
-			content.phonenumber = content.telephone.join("-");
-			delete(content.telephone)
-		}
-		if (this.data.sys_phonebookid == null) {
-			this.handleSubmit(content);
-		} else {
-			let that = this;
-			wx.showModal({
-				title: '提示',
-				content: '是否删除原通讯录联系人信息',
-				complete({
-					confirm
-				}) {
-					content.sys_phonebookid = confirm ? that.data.sys_phonebookid : "";
-					that.handleSubmit(content);
-				}
-			})
-		}
-	},
-	handleSubmit(content) {
-		_Http.basic({
-			"id": "20221018141802",
-			content
-		}).then(res => {
-			console.log("编辑联系人", res)
-			if (res.msg != '成功') return wx.showToast({
-				title: res.data,
-				icon: "none"
-			});
-			let that = this;
-			let page = getCurrentPages()[getCurrentPages().length - 2];
-			if (that.data.content.sa_project_contactsid) {
-				wx.showToast({
-					title: '保存成功',
-					icon: "none",
-					mask: true
-				});
-				setTimeout(() => {
-					wx.navigateBack();
-					let model = page.selectComponent("#Contacts")
-					model.getList(model.data.sa_projectid, true)
-				}, 300)
-			} else {
-				_Http.basic({
-					"id": 20221111131104,
-					"content": {
-						"sa_project_contactsid": 0,
-						contactsids: [res.data.contactsid],
-						"sa_projectid": page.data.sa_projectid,
-						"remarks": ""
-					}
-				}).then(res => {
-					console.log("项目添加联系人", res)
-					if (res.msg != '成功') return wx.showToast({
-						title: res.data,
-						icon: "none"
-					});
-					wx.showToast({
-						title: '添加成功',
-						icon: "none",
-						mask: true
-					});
-					setTimeout(() => {
-						wx.navigateBack();
-						let model = page.selectComponent("#Contacts")
-						model.getList(model.data.sa_projectid, true)
-					}, 300)
-				})
-			}
-		});
-	},
-	/* 表单是否填写完成 */
-	onConfirm({
-		detail
-	}) {
-		this.setData({
-			disabled: detail
-		})
-	},
-	/* 是否显示全部 */
-	changefromShowAll({
-		detail
-	}) {
-		this.setData({
-			fromShowAll: detail
-		})
-	},
+    data: {
+        sys_phonebookid: null, //是否为快捷选择创建的账号
+        fromShowAll: false,
+        form: [{
+            label: "姓名",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人名称",
+            valueName: "name",
+            required: true,
+            checking: "base"
+        }, {
+            label: "联系方式",
+            error: false,
+            errMsg: "",
+            hint: "",
+            type: "radio",
+            value: "0",
+            radioList: [{
+                id: '0',
+                name: '手机号'
+            }, {
+                id: '1',
+                name: '座机电话'
+            }],
+            valueName: "isTelephone", //绑定的字段名称
+            required: true, //必填
+            interrupt: true,
+            checking: `true`,
+            phonenumber: "",
+            telephone: ["", ""]
+        }, {
+            label: "手机号",
+            error: false,
+            errMsg: "",
+            type: "number",
+            value: "",
+            placeholder: "联系人手机号码",
+            valueName: "phonenumber",
+            required: true,
+            checking: "phone"
+        }, {
+            label: "微信",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人微信",
+            valueName: "wechatnum",
+            required: false
+        }, {
+            label: "邮箱",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "请填写",
+            valueName: "email",
+            required: false,
+            checking: "mail"
+        }, {
+            label: "传真",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "请填写",
+            valueName: "fax",
+            required: false,
+        }, {
+            label: "单位",
+            error: false,
+            errMsg: "",
+            type: "route",
+            url: "/packageA/project/modules/contacts/select/index",
+            value: "",
+            query: "&radio=true",
+            placeholder: "选择单位",
+            valueName: "sys_enterpriseid",
+            required: true,
+            checking: "base",
+        }, {
+            label: "部门",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人所属部门",
+            valueName: "depname",
+            required: false,
+            checking: "base"
+        }, {
+            label: "职位",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人职位",
+            valueName: "position",
+            required: false,
+            checking: "base"
+        }, {
+            label: "性别",
+            error: false,
+            errMsg: "",
+            type: "sex",
+            value: "男",
+            placeholder: "联系人性别",
+            valueName: "sex",
+            required: false,
+            checking: "base"
+        }, {
+            label: "生日",
+            error: false,
+            errMsg: "",
+            type: "date",
+            value: "",
+            placeholder: "联系人生日",
+            valueName: "birthday",
+            required: false
+        }, {
+            label: "家庭地址",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "家庭地址",
+            valueName: "address",
+            required: false,
+            checking: "base"
+        }, {
+            label: "备注",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "请填写",
+            valueName: "remarks",
+            required: false,
+            checking: "base"
+        }],
+        disabled: true,
+        "content": {
+            "contactsid": 0, //地址id
+            "sa_projectid": 0, //绑定数据
+            "isleader": 0, //默认0
+            "workaddress": 0,
+            "isdefault": 0, //是否默认地址
+            "isprimary": 0 //是否为主地址
+        }
+    },
+    onLoad(options) {
+        this.data.content.sa_projectid = options.sa_projectid;
+        if (options.data) {
+            let item = JSON.parse(options.data),
+                disabled = false,
+                arr = item.phonenumber.split("-");
+            console.log(item)
+            item.sys_enterpriseid = item.enterprisename ? [item.enterprisename, [item.sys_enterpriseid]] : "";
+            item.isTelephone = arr.length == 2 ? "1" : "0";
+            this.setData({
+                form: this.data.form.map(v => {
+                    if (v.valueName == 'phonenumber') {
+                        v = arr.length == 2 ? {
+                            label: "电话",
+                            error: false,
+                            errMsg: "",
+                            type: "telephone",
+                            value: arr,
+                            placeholder: "联系人手机号码",
+                            valueName: "telephone",
+                            required: true,
+                            checking: "telephone"
+                        } : {
+                            label: "手机号",
+                            error: false,
+                            errMsg: "",
+                            type: "number",
+                            value: arr[0],
+                            placeholder: "联系人手机号码",
+                            valueName: "phonenumber",
+                            required: true,
+                            checking: "phone"
+                        }
+                    } else {
+                        v.value = Object.hasOwn(item, v.valueName) ? item[v.valueName] : v.value;
+                    }
+                    return v
+                }),
+                disabled
+            });
+            this.data.content = item;
+            if (item.sys_phonebookid) this.setData({
+                sys_phonebookid: item.sys_phonebookid
+            })
+        };
+    },
+    /* 打断 */
+    interrupt({
+        detail
+    }) {
+        let {
+            data,
+            form
+        } = detail;
+        if (data.label == '联系方式') {
+            if (data.value == 0) {
+                data.telephone = form[2].value;
+                form[2] = {
+                    label: "手机号",
+                    error: false,
+                    errMsg: "",
+                    type: "number",
+                    value: data.phonenumber,
+                    placeholder: "联系人手机号码",
+                    valueName: "phonenumber",
+                    required: true,
+                    checking: "phone"
+                }
+            } else {
+                data.phonenumber = form[2].value;
+                form[2] = {
+                    label: "电话",
+                    error: false,
+                    errMsg: "",
+                    type: "telephone",
+                    value: data.telephone,
+                    placeholder: "联系人手机号码",
+                    valueName: "telephone",
+                    required: true,
+                    checking: "telephone"
+                }
+            };
+            this.setData({
+                form
+            })
+        }
+    },
+    /* 提交数据 */
+    submit() {
+        let data = this.selectComponent("#Form").submit();
+        if (!data || this.data.disabled) return;
+        data.sys_enterpriseid = data.sys_enterpriseid[1] ? data.sys_enterpriseid[1][0] : 0;
+        const content = {
+            ...this.data.content,
+            ...data,
+            sys_phonebookid: ""
+        };
+        if (content.telephone) {
+            content.phonenumber = content.telephone.join("-");
+            delete(content.telephone)
+        }
+        if (this.data.sys_phonebookid == null) {
+            this.handleSubmit(content);
+        } else {
+            let that = this;
+            wx.showModal({
+                title: '提示',
+                content: '是否删除原通讯录联系人信息',
+                complete({
+                    confirm
+                }) {
+                    content.sys_phonebookid = confirm ? that.data.sys_phonebookid : "";
+                    that.handleSubmit(content);
+                }
+            })
+        }
+    },
+    handleSubmit(content) {
+        _Http.basic({
+            "id": "20221018141802",
+            content
+        }).then(res => {
+            console.log("编辑联系人", res)
+            if (res.msg != '成功') return wx.showToast({
+                title: res.data,
+                icon: "none"
+            });
+            let that = this;
+            let page = getCurrentPages()[getCurrentPages().length - 2];
+            if (that.data.content.sa_project_contactsid) {
+                wx.showToast({
+                    title: '保存成功',
+                    icon: "none",
+                    mask: true
+                });
+                setTimeout(() => {
+                    wx.navigateBack();
+                    let model = page.selectComponent("#Contacts")
+                    model.getList(model.data.sa_projectid, true)
+                }, 300)
+            } else {
+                _Http.basic({
+                    "id": 20221111131104,
+                    "content": {
+                        "sa_project_contactsid": 0,
+                        contactsids: [res.data.contactsid],
+                        "sa_projectid": page.data.sa_projectid,
+                        "remarks": ""
+                    }
+                }).then(res => {
+                    console.log("项目添加联系人", res)
+                    if (res.msg != '成功') return wx.showToast({
+                        title: res.data,
+                        icon: "none"
+                    });
+                    wx.showToast({
+                        title: '添加成功',
+                        icon: "none",
+                        mask: true
+                    });
+                    setTimeout(() => {
+                        wx.navigateBack();
+                        let model = page.selectComponent("#Contacts")
+                        model.getList(model.data.sa_projectid, true)
+                    }, 300)
+                })
+            }
+        });
+    },
+    /* 表单是否填写完成 */
+    onConfirm({
+        detail
+    }) {
+        this.setData({
+            disabled: detail
+        })
+    },
+    /* 是否显示全部 */
+    changefromShowAll({
+        detail
+    }) {
+        this.setData({
+            fromShowAll: detail
+        })
+    },
 })

+ 320 - 311
packageA/setclient/modules/contacts/add/index.js

@@ -1,315 +1,324 @@
 const _Http = getApp().globalData.http;
 Page({
-	data: {
-		sys_phonebookid: null, //是否为快捷选择创建的账号
-		fromShowAll: false,
-		form: [{
-			label: "姓名",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "联系人名称",
-			valueName: "name",
-			required: true,
-			checking: "base"
-		}, {
-			label: "联系方式",
-			error: false,
-			errMsg: "",
-			hint: "",
-			type: "radio",
-			value: "0",
-			radioList: [{
-				id: '0',
-				name: '手机号'
-			}, {
-				id: '1',
-				name: '座机电话'
-			}],
-			valueName: "isTelephone", //绑定的字段名称
-			required: true, //必填
-			interrupt: true,
-			checking: `true`,
-			phonenumber: "",
-			telephone: ["", ""]
-		}, {
-			label: "手机号",
-			error: false,
-			errMsg: "",
-			type: "number",
-			value: "",
-			placeholder: "联系人手机号码",
-			valueName: "phonenumber",
-			required: true,
-			checking: "phone"
-		}, {
-			label: "邮箱",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "请填写",
-			valueName: "email",
-			required: false,
-			checking: "mail"
-		}, {
-			label: "传真",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "请填写",
-			valueName: "fax",
-			required: false,
-		}, {
-			label: "单位",
-			error: false,
-			errMsg: "",
-			type: "route",
-			url: "/packageA/project/modules/contacts/select/index",
-			value: "",
-			query: "&radio=true",
-			placeholder: "选择单位",
-			valueName: "sys_enterpriseid",
-			required: true,
-			checking: "base",
-			disabled: true
-		}, {
-			label: "部门",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "联系人所属部门",
-			valueName: "depname",
-			required: false,
-			checking: "base"
-		}, {
-			label: "职位",
-			error: false,
-			errMsg: "",
-			type: "text",
-			value: "",
-			placeholder: "联系人职位",
-			valueName: "position",
-			required: false,
-			checking: "base"
-		}, {
-			label: "性别",
-			error: false,
-			errMsg: "",
-			type: "sex",
-			value: "男",
-			placeholder: "联系人性别",
-			valueName: "sex",
-			required: false,
-			checking: "base"
-		}, {
-			label: "生日",
-			error: false,
-			errMsg: "",
-			type: "date",
-			value: "",
-			placeholder: "联系人生日",
-			valueName: "birthday",
-			required: false
-		}, {
-			label: "家庭地址",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "家庭地址",
-			valueName: "address",
-			required: false,
-			checking: "base"
-		}, {
-			label: "备注",
-			error: false,
-			errMsg: "",
-			type: "textarea",
-			value: "",
-			placeholder: "请填写",
-			valueName: "remarks",
-			required: false,
-			checking: "base"
-		}],
-		disabled: true,
-		"content": {
-			"contactsid": 0, //地址id
-			"sys_enterpriseid": 0, //绑定数据
-			"isleader": 0, //默认0
-			"workaddress": 0,
-			"isdefault": 0, //是否默认地址
-			"isprimary": 0 //是否为主地址
-		}
-	},
-	onLoad(options) {
-		this.data.content.sys_enterpriseid = options.sys_enterpriseid;
-		if (options.data) {
-			let item = JSON.parse(options.data),
-				arr = item.phonenumber.split("-");
-			item.isTelephone = arr.length == 2 ? "1" : "0";
-			item.sys_enterpriseid = [options.enterprisename, [options.sys_enterpriseid]];
-			this.setData({
-				form: this.data.form.map(v => {
-					if (v.valueName == 'phonenumber') {
-						v = arr.length == 2 ? {
-							label: "电话",
-							error: false,
-							errMsg: "",
-							type: "telephone",
-							value: arr,
-							placeholder: "联系人手机号码",
-							valueName: "telephone",
-							required: true,
-							checking: "telephone"
-						} : {
-							label: "手机号",
-							error: false,
-							errMsg: "",
-							type: "number",
-							value: arr[0],
-							placeholder: "联系人手机号码",
-							valueName: "phonenumber",
-							required: true,
-							checking: "phone"
-						}
-					} else {
-						v.value = Object.hasOwn(item, v.valueName) ? item[v.valueName] : v.value;
-					}
-					return v
-				}),
-				"disabled": false,
-				"content.contactsid": options.contactsid || 0
-			});
-			if (item.sys_phonebookid) this.setData({
-				sys_phonebookid: item.sys_phonebookid
-			})
-		} else {
-			this.data.form.find(v => v.label == '单位').value = [options.enterprisename, [options.sys_enterpriseid]];
-			this.setData({
-				form: this.data.form
-			})
-		}
-	},
-	/* 打断 */
-	interrupt({
-		detail
-	}) {
-		let {
-			data,
-			form
-		} = detail;
-		if (data.label == '联系方式') {
-			if (data.value == 0) {
-				data.telephone = form[2].value;
-				form[2] = {
-					label: "手机号",
-					error: false,
-					errMsg: "",
-					type: "number",
-					value: data.phonenumber,
-					placeholder: "联系人手机号码",
-					valueName: "phonenumber",
-					required: true,
-					checking: "phone"
-				}
-			} else {
-				data.phonenumber = form[2].value;
-				form[2] = {
-					label: "电话",
-					error: false,
-					errMsg: "",
-					type: "telephone",
-					value: data.telephone,
-					placeholder: "联系人手机号码",
-					valueName: "telephone",
-					required: true,
-					checking: "telephone"
-				}
-			};
-			this.setData({
-				form
-			})
-		}
-	},
-	/* 提交数据 */
-	submit() {
-		let data = this.selectComponent("#Form").submit();
-		if (!data || this.data.disabled) return;
-		const content = {
-			...this.data.content,
-			...data,
-			sys_phonebookid: ""
-		};
-		if (content.telephone) {
-			content.phonenumber = content.telephone.join("-");
-			delete(content.telephone)
-		}
-		content.sys_enterpriseid = this.data.content.sys_enterpriseid;
-		if (this.data.sys_phonebookid == null) {
-			this.handleSubmit(content);
-		} else {
-			let that = this;
-			wx.showModal({
-				title: '提示',
-				content: '是否删除原通讯录联系人信息',
-				complete({
-					confirm
-				}) {
-					content.sys_phonebookid = confirm ? that.data.sys_phonebookid : "";
-					that.handleSubmit(content);
-				}
-			})
-		}
-	},
-	handleSubmit(content) {
-		console.log(content)
-		_Http.basic({
-			"id": "20221018141802",
-			content
-		}).then(res => {
-			console.log("编辑联系人", res)
-			wx.showToast({
-				title: res.msg != '成功' ? res.data : '保存成功',
-				icon: "none",
-				mask: true
-			});
-			if (res.msg == '成功') setTimeout(() => {
-				wx.navigateBack()
-				getCurrentPages().forEach(v => {
-					if (v.__route__ == 'packageA/setclient/modules/contacts/detail/index') {
-						v.getDetail();
-					} else if (v.selectComponent("#Contacts")) {
-						let page = v.selectComponent("#Contacts");
-						page.getList(page.data.content.sys_enterpriseid, true)
-					} else if (v.__route__ == 'packageA/project/modules/contacts/search/index') {
-						let index = v.data.list.findIndex(value => value.contactsid == res.data.contactsid);
-						if (index != -1) v.setData({
-							[`list[${index}]`]: res.data
-						})
-					}
-				});
-			}, 500)
+    data: {
+        sys_phonebookid: null, //是否为快捷选择创建的账号
+        fromShowAll: false,
+        form: [{
+            label: "姓名",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人名称",
+            valueName: "name",
+            required: true,
+            checking: "base"
+        }, {
+            label: "联系方式",
+            error: false,
+            errMsg: "",
+            hint: "",
+            type: "radio",
+            value: "0",
+            radioList: [{
+                id: '0',
+                name: '手机号'
+            }, {
+                id: '1',
+                name: '座机电话'
+            }],
+            valueName: "isTelephone", //绑定的字段名称
+            required: true, //必填
+            interrupt: true,
+            checking: `true`,
+            phonenumber: "",
+            telephone: ["", ""]
+        }, {
+            label: "手机号",
+            error: false,
+            errMsg: "",
+            type: "number",
+            value: "",
+            placeholder: "联系人手机号码",
+            valueName: "phonenumber",
+            required: true,
+            checking: "phone"
+        }, {
+            label: "微信",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人微信",
+            valueName: "wechatnum",
+            required: false
+        }, {
+            label: "邮箱",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "请填写",
+            valueName: "email",
+            required: false,
+            checking: "mail"
+        }, {
+            label: "传真",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "请填写",
+            valueName: "fax",
+            required: false,
+        }, {
+            label: "单位",
+            error: false,
+            errMsg: "",
+            type: "route",
+            url: "/packageA/project/modules/contacts/select/index",
+            value: "",
+            query: "&radio=true",
+            placeholder: "选择单位",
+            valueName: "sys_enterpriseid",
+            required: true,
+            checking: "base",
+            disabled: true
+        }, {
+            label: "部门",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人所属部门",
+            valueName: "depname",
+            required: false,
+            checking: "base"
+        }, {
+            label: "职位",
+            error: false,
+            errMsg: "",
+            type: "text",
+            value: "",
+            placeholder: "联系人职位",
+            valueName: "position",
+            required: false,
+            checking: "base"
+        }, {
+            label: "性别",
+            error: false,
+            errMsg: "",
+            type: "sex",
+            value: "男",
+            placeholder: "联系人性别",
+            valueName: "sex",
+            required: false,
+            checking: "base"
+        }, {
+            label: "生日",
+            error: false,
+            errMsg: "",
+            type: "date",
+            value: "",
+            placeholder: "联系人生日",
+            valueName: "birthday",
+            required: false
+        }, {
+            label: "家庭地址",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "家庭地址",
+            valueName: "address",
+            required: false,
+            checking: "base"
+        }, {
+            label: "备注",
+            error: false,
+            errMsg: "",
+            type: "textarea",
+            value: "",
+            placeholder: "请填写",
+            valueName: "remarks",
+            required: false,
+            checking: "base"
+        }],
+        disabled: true,
+        "content": {
+            "contactsid": 0, //地址id
+            "sys_enterpriseid": 0, //绑定数据
+            "isleader": 0, //默认0
+            "workaddress": 0,
+            "isdefault": 0, //是否默认地址
+            "isprimary": 0 //是否为主地址
+        }
+    },
+    onLoad(options) {
+        this.data.content.sys_enterpriseid = options.sys_enterpriseid;
+        if (options.data) {
+            let item = JSON.parse(options.data),
+                arr = item.phonenumber.split("-");
+            item.isTelephone = arr.length == 2 ? "1" : "0";
+            item.sys_enterpriseid = [options.enterprisename, [options.sys_enterpriseid]];
+            this.setData({
+                form: this.data.form.map(v => {
+                    if (v.valueName == 'phonenumber') {
+                        v = arr.length == 2 ? {
+                            label: "电话",
+                            error: false,
+                            errMsg: "",
+                            type: "telephone",
+                            value: arr,
+                            placeholder: "联系人手机号码",
+                            valueName: "telephone",
+                            required: true,
+                            checking: "telephone"
+                        } : {
+                            label: "手机号",
+                            error: false,
+                            errMsg: "",
+                            type: "number",
+                            value: arr[0],
+                            placeholder: "联系人手机号码",
+                            valueName: "phonenumber",
+                            required: true,
+                            checking: "phone"
+                        }
+                    } else {
+                        v.value = Object.hasOwn(item, v.valueName) ? item[v.valueName] : v.value;
+                    }
+                    return v
+                }),
+                "disabled": false,
+                "content.contactsid": options.contactsid || 0
+            });
+            if (item.sys_phonebookid) this.setData({
+                sys_phonebookid: item.sys_phonebookid
+            })
+        } else {
+            this.data.form.find(v => v.label == '单位').value = [options.enterprisename, [options.sys_enterpriseid]];
+            this.setData({
+                form: this.data.form
+            })
+        }
+    },
+    /* 打断 */
+    interrupt({
+        detail
+    }) {
+        let {
+            data,
+            form
+        } = detail;
+        if (data.label == '联系方式') {
+            if (data.value == 0) {
+                data.telephone = form[2].value;
+                form[2] = {
+                    label: "手机号",
+                    error: false,
+                    errMsg: "",
+                    type: "number",
+                    value: data.phonenumber,
+                    placeholder: "联系人手机号码",
+                    valueName: "phonenumber",
+                    required: true,
+                    checking: "phone"
+                }
+            } else {
+                data.phonenumber = form[2].value;
+                form[2] = {
+                    label: "电话",
+                    error: false,
+                    errMsg: "",
+                    type: "telephone",
+                    value: data.telephone,
+                    placeholder: "联系人手机号码",
+                    valueName: "telephone",
+                    required: true,
+                    checking: "telephone"
+                }
+            };
+            this.setData({
+                form
+            })
+        }
+    },
+    /* 提交数据 */
+    submit() {
+        let data = this.selectComponent("#Form").submit();
+        if (!data || this.data.disabled) return;
+        const content = {
+            ...this.data.content,
+            ...data,
+            sys_phonebookid: ""
+        };
+        if (content.telephone) {
+            content.phonenumber = content.telephone.join("-");
+            delete(content.telephone)
+        }
+        content.sys_enterpriseid = this.data.content.sys_enterpriseid;
+        if (this.data.sys_phonebookid == null) {
+            this.handleSubmit(content);
+        } else {
+            let that = this;
+            wx.showModal({
+                title: '提示',
+                content: '是否删除原通讯录联系人信息',
+                complete({
+                    confirm
+                }) {
+                    content.sys_phonebookid = confirm ? that.data.sys_phonebookid : "";
+                    that.handleSubmit(content);
+                }
+            })
+        }
+    },
+    handleSubmit(content) {
+        console.log(content)
+        _Http.basic({
+            "id": "20221018141802",
+            content
+        }).then(res => {
+            console.log("编辑联系人", res)
+            wx.showToast({
+                title: res.msg != '成功' ? res.data : '保存成功',
+                icon: "none",
+                mask: true
+            });
+            if (res.msg == '成功') setTimeout(() => {
+                wx.navigateBack()
+                getCurrentPages().forEach(v => {
+                    if (v.__route__ == 'packageA/setclient/modules/contacts/detail/index') {
+                        v.getDetail();
+                    } else if (v.selectComponent("#Contacts")) {
+                        let page = v.selectComponent("#Contacts");
+                        page.getList(page.data.content.sys_enterpriseid, true)
+                    } else if (v.__route__ == 'packageA/project/modules/contacts/search/index') {
+                        let index = v.data.list.findIndex(value => value.contactsid == res.data.contactsid);
+                        if (index != -1) v.setData({
+                            [`list[${index}]`]: res.data
+                        })
+                    }
+                });
+            }, 500)
 
-		});
-	},
-	/* 表单是否填写完成 */
-	onConfirm({
-		detail
-	}) {
-		this.setData({
-			disabled: detail
-		})
-	},
-	/* 是否显示全部 */
-	changefromShowAll({
-		detail
-	}) {
-		this.setData({
-			fromShowAll: detail
-		})
-	},
+        });
+    },
+    /* 表单是否填写完成 */
+    onConfirm({
+        detail
+    }) {
+        this.setData({
+            disabled: detail
+        })
+    },
+    /* 是否显示全部 */
+    changefromShowAll({
+        detail
+    }) {
+        this.setData({
+            fromShowAll: detail
+        })
+    },
 })

+ 17 - 9
packageA/setclient/modules/contacts/detail/index.js

@@ -33,15 +33,17 @@ Page({
             this.setData({
                 detail: item,
                 briefs: [{
-                    label: "单位",
-                    value: item.enterprisename
-                }, {
-                    label: "联系方式",
-                    value: item.phonenumber
-                }/* , {
-                    label: "最近跟进时间",
-                    value: ""
-                } */],
+                        label: "单位",
+                        value: item.enterprisename
+                    }, {
+                        label: "联系方式",
+                        value: item.phonenumber
+                    }
+                    /* , {
+                                        label: "最近跟进时间",
+                                        value: ""
+                                    } */
+                ],
                 list1: [{
                     label: "联系方式",
                     value: item.phonenumber
@@ -51,10 +53,16 @@ Page({
                 }, {
                     label: "生日",
                     value: item.birthday
+                }, {
+                    label: "微信",
+                    value: item.wechatnum
                 }, {
                     label: "邮箱",
                     value: item.email
                 }, {
+                    label: "传真",
+                    value: item.fax
+                },  {
                     label: "部门",
                     value: item.depname
                 }, {

+ 1 - 1
packageA/setclient/modules/contacts/list/index.wxml

@@ -8,7 +8,7 @@
                 <view class="title">
                     {{item.name}}<text>{{item.position}}</text>
                 </view>
-                <view class="exp" style="margin-top: 10rpx;">手机号:{{item.phonenumber}}</view>
+                <view class="exp" style="margin-top: 10rpx;">联系方式:{{item.phonenumber}}</view>
             </view>
         </view>
     </navigator>