Эх сурвалжийг харах

完善通讯录展示和签字上传

LuChongMei 1 жил өмнө
parent
commit
275b715d6d

+ 5 - 3
jp-mobile/components/ly-tree/ly-tree-node.vue

@@ -5,7 +5,6 @@
 	 role="treeitem" name="LyTreeNode" ref="node">
 		<view class="ly-tree-node__content" :class="{'is-current': node.isCurrent && highlightCurrent}" :style="{ 'padding-left': (node.level - 1) * indent + 'px' }">
 			<text @tap.stop="handleExpandIconClick" :class="[{ 'is-leaf': node.isLeaf, expanded: !node.isLeaf && node.expanded }, 'ly-tree-node__expand-icon', iconClass ? iconClass : 'ly-iconfont ly-icon-caret-right']"></text>
-			
 			<ly-checkbox v-if="checkboxVisible || radioVisible"
 				:type="checkboxVisible ? 'checkbox' : 'radio'" 
 				:checked="node.checked" 
@@ -224,8 +223,11 @@
 			}
 			
 			this.node = this.tree.store.nodesMap[this.nodeId];
+			console.log("item",this.node);
 			this.highlightCurrent = this.tree.highlightCurrent;
-			
+			if(this.node.data.icon ) {
+				this.node.icon = "../../static/img/flat-avatar.png"
+			}
 			if (this.node.expanded) {
 				this.expanded = true;
 				this.childNodeRendered = true;
@@ -261,7 +263,7 @@
 	.ly-tree-node__content {
 		display: flex;
 		align-items: center;
-		height: 70rpx;
+		height: 80rpx;
 	}
 	
 	.ly-tree-node__content.is-current {

+ 1 - 1
jp-mobile/components/ly-tree/ly-tree.vue

@@ -514,7 +514,7 @@
 		background: #FFF;
 		color: #606266;
 		padding: 30rpx;
-		max-height: 90vh;
+		max-height: 85vh;
 		overflow-y: scroll;
 	}
 	

+ 6 - 1
jp-mobile/pages/addressbook/addressbook.vue

@@ -130,10 +130,15 @@
 					if (list[i].children) {
 						this.forItem(list[i].children)
 					} else {
-						console.log("aaaaa",a);
+						console.log(a);
 						let a = this.userList.filter(item => item.officeDTO.id == list[i].id)
 						if (a.length > 0) {
+							
+							a.forEach(item =>{
+								this.$set(item, "icon", "/static/img/flat-avatar.png");
+							})
 							this.$set(list[i], "children", a);
+							
 						}
 					}
 				}

+ 0 - 4
jp-mobile/pages/fileTransmit/addFileTransmit.vue

@@ -240,11 +240,9 @@
 					})
 				})
 				for (let i = 0; i < lists.length; i++) {
-					console.log("lists", lists[i]);
 					let result =""
 					if (isImageFormat(lists[i].name) && lists[i].size > (200 * 1024)) {
 						result = await this.compressH5(lists[i]);
-						console.log("2222222", result);
 					}else {
 						result = await this.uploadFilePromise(lists[i])
 					}
@@ -285,9 +283,7 @@
 						},
 						formData: param,
 						success: (res) => {
-							console.log("param", res);
 							setTimeout(() => {
-								console.log("param", res.data);
 								resolve(res.data)
 							}, 1000)
 						}

+ 76 - 18
jp-mobile/pages/user/setting/signature/signature.vue

@@ -1,16 +1,20 @@
 <template>
 	<view>
-		<u--form :model="inputForm" labelWidth="100px" class="u-form" labelPosition="left" 
-			ref="inputForm">
+		<u--form :model="inputForm" labelWidth="100px" class="u-form" labelPosition="left" ref="inputForm">
 			<u-form-item label="旧签名" borderBottom prop="signPic">
-				<u--image :showLoading="true" :src="BASE_URL + inputForm.signPic " width="100px" height="40px"></u--image>
+				<u--image :showLoading="true" :src="BASE_URL + inputForm.signPic " width="100px"
+					height="40px"></u--image>
 			</u-form-item>
-
+			<u-form-item label="上传签字图片" borderBottom prop="signPic">
+				<u-upload :fileList="fileList" @afterRead="afterRead" @delete="deletePic" :maxCount="1"></u-upload>
+			</u-form-item>
+			<u--text size="10" type="warning" text="有签名图片,请上传,无,请点击下面签字生成"></u--text>
 			<u-form-item label="签字" borderBottom prop="signPic">
 				<signInput ref="sign" canvasId="twoDrowCanvas" canvasIds="twoRotateCanvas" :header="header"
 					:action="action" @signToUrl="signToUrl">
 				</signInput>
 			</u-form-item>
+
 			<view class="padding-xl">
 				<u-button type="primary" @click="formSubmit" text="提交"></u-button>
 			</view>
@@ -25,15 +29,18 @@
 	import signInput from "@/components/am-sign-input/am-sign-input.vue"
 	export default {
 
-		components:{
+		components: {
 			signInput
 		},
 		data() {
 			return {
 				action: this.BASE_URL + '/gwfile/upload?uploadPath=sign', //上传服务器的地址
-				header: {"token": $auth.getUserToken()}, //图片上传携带头部信息
+				header: {
+					"token": $auth.getUserToken()
+				}, //图片上传携带头部信息
 				loading: false,
-				inputForm: this.$auth.getUserInfo()
+				inputForm: this.$auth.getUserInfo(),
+				fileList: [],
 			}
 		},
 
@@ -43,7 +50,6 @@
 			 * 签名完成回调
 			 */
 			signToUrl(e) {
-				console.log("签字=====", e);
 				this.inputForm.signPic = e.data
 				if (e.error_code && e.error_code === '201') {
 					uni.showToast({
@@ -53,19 +59,71 @@
 					return
 				}
 			},
+			// 删除图片
+			deletePic(event) {
+				this.fileList.splice(event.index, 1)
+			},
+			// 新增图片
+			async afterRead(event) {
+				// 当设置 multiple 为 true 时, file 为数组格式,否则为对象格式
+				let lists = [].concat(event.file)
+				let fileListLen = this.fileList.length
+				lists.map((item) => {
+					this.fileList.push({
+						...item,
+						status: 'uploading',
+						message: '上传中'
+					})
+				})
+				for (let i = 0; i < lists.length; i++) {
+					const result = await this.uploadFilePromise(lists[i])
+					let item = this.fileList[fileListLen]
+					this.fileList.splice(fileListLen, 1, Object.assign(item, {
+						status: 'success',
+						message: '',
+						url: result
+					}))
+					fileListLen++
+				}
+			},
+			uploadFilePromise(url) {
+				return new Promise((resolve, reject) => {
+					let a = uni.uploadFile({
+						url: this.BASE_URL + '/gwfile/upload?uploadPath=signature',
+						filePath: url.url,
+						name: 'file',
+						header: {
+							"token": $auth.getUserToken()
+						},
+						formData: url,
+						success: (res) => {
+							setTimeout(() => {
+								resolve(res.data.data)
+							}, 1000)
+						}
+					});
+				})
+			},
 			formSubmit: function(e) {
 				//定义表单规则
 				// this.$refs.inputForm.validate().then(res => {
-					uni.showLoading()
-					userService.saveInfo(this.inputForm).then((data) => {
-						uni.showToast({
-							title: data,
-							icon: "success"
-						});
-						uni.clearStorage();
-						uni.reLaunch({
-							url: '/pages/login/login'
-						})
+				uni.showLoading()
+				let files = []
+				if (this.fileList.length > 0) {
+					this.fileLists.forEach(item => {
+						files.push(item.url)
+					})
+					this.inputForm.signPic = files.join(",");
+				}
+				userService.saveInfo(this.inputForm).then((data) => {
+					uni.showToast({
+						title: data,
+						icon: "success"
+					});
+					uni.clearStorage();
+					uni.reLaunch({
+						url: '/pages/login/login'
+					})
 					// }).catch((e) => {
 					// 	console.log(e)
 					// })