linweizeng před 3 roky
rodič
revize
eb3a23342d

+ 7 - 0
common/router/modules/routes.js

@@ -223,6 +223,13 @@ const routes = [{
 		meta: {
 			title: '投诉列表',
 		},
+	},
+	{
+		path: "/pages/wallet/wallet",
+		name: 'wallet',
+		meta: {
+			title: '投诉列表',
+		},
 	}
 ]
 export default routes

+ 7 - 1
common/util/work.js

@@ -102,6 +102,12 @@ export const os = {
 			description: "新闻中心",
 			useCount: 10000,
 			page: 'editpassword'
+		}, {
+			title: "我的钱包",
+			icon: icon_prefix + "tongzhi.png",
+			description: "我的钱包",
+			useCount: 10000,
+			page: 'wallet'
 		},
 		{
 			title: "退出登录",
@@ -109,7 +115,7 @@ export const os = {
 			description: "任务中心",
 			useCount: 10000,
 			page: 'userexit'
-		},
+		}
 		/* {
 		      title:"文档中心",
 		      icon:icon_prefix+"wendang.png",

+ 177 - 0
components/lin-popup/index.vue

@@ -0,0 +1,177 @@
+<!--选择弹窗操作组件-->
+<template>
+	<view>
+		<!--START 选择弹窗-->
+		<view class="cu-modal bottom-modal" :class="isShow ? 'show' : ''" @touchmove.stop.prevent @click="clickMast">
+			<view class="cu-dialog items-popup" @click.stop="">
+				<view class="title bold" v-if="title">{{title}}</view>
+				<view class="items">
+					<view class="border-bottom" v-for="(v,i) in list" :key="i" @click="confirm(i,v)">{{v.name}}</view>
+					<view style="height: 100rpx;"></view>
+					<view class="cancel text-red" @click="cancel">取消</view>
+				</view>
+			</view>
+		</view>
+		<!--END 选择弹窗-->
+	</view>
+</template>
+
+<script>
+	/*
+	<hs-picker ref="picker" @onCancel="$refs['picker'].hide()" @onConfirm="confirm" />
+	this.$refs['picker'].show();
+	*/
+	export default {
+		name: "lin-picker",
+		props: {
+			//标题
+			title: {
+				type: String,
+				default: ''
+			},
+			// 选项数据
+			list: {
+				type: Array,
+				default: () => {
+					return [];
+				}
+			},
+			//是否点击遮罩层关闭
+			maskClosable: {
+				type: Boolean,
+				default: true
+			}
+		},
+		data() {
+			return {
+				isShow: false
+			};
+		},
+		methods: {
+			cancel() {
+				this.$emit('onCancel');
+				this.isShow = false;
+			},
+			confirm(index, item) {
+				this.$emit('onConfirm', index, item);
+				this.isShow = false;
+			},
+			show() {
+				this.isShow = true;
+			},
+			hide() {
+				this.isShow = false;
+			},
+			clickMast() {
+				if (!this.maskClosable) return false;
+				this.isShow = false;
+			}
+		}
+	}
+</script>
+
+<style lang="scss">
+	.cu-modal {
+		position: fixed;
+		top: 0;
+		right: 0;
+		bottom: 0;
+		left: 0;
+		z-index: 110;
+		opacity: 0;
+		outline: 0;
+		text-align: center;
+		-ms-transform: scale(1.185);
+		transform: scale(1.185);
+		backface-visibility: hidden;
+		perspective: 2000upx;
+		background: rgba(0, 0, 0, 0.6);
+		transition: all 0.3s ease-in-out 0s;
+		pointer-events: none;
+
+		&::before {
+			content: "\200B";
+			display: inline-block;
+			height: 100%;
+			vertical-align: middle;
+		}
+
+		&.show {
+			opacity: 1;
+			transition-duration: 0.3s;
+			-ms-transform: scale(1);
+			transform: scale(1);
+			overflow-x: hidden;
+			overflow-y: auto;
+			pointer-events: auto;
+		}
+
+		&.bottom-modal::before {
+			vertical-align: bottom;
+		}
+
+		&.bottom-modal .cu-dialog {
+			width: 100%;
+			border-radius: 0;
+		}
+
+		&.bottom-modal {
+			margin-bottom: -1000upx;
+		}
+
+		&.bottom-modal.show {
+			margin-bottom: 0;
+		}
+
+		.cu-dialog {
+			position: relative;
+			display: inline-block;
+			vertical-align: middle;
+			margin-left: auto;
+			margin-right: auto;
+			width: 80%;
+			box-sizing: border-box;
+			background-color: #fff;
+			border-radius: 12rpx;
+			overflow: hidden;
+		}
+	}
+
+	.items-popup {
+		padding: 30rpx 0;
+		border-radius: 30rpx 30rpx 0 0 !important;
+
+		.title {
+			font-size: 32rpx;
+			margin-bottom: 20rpx;
+		}
+
+		.items {
+			max-height: 600rpx;
+			overflow: auto;
+			line-height: 90rpx;
+			position: relative;
+
+			&::-webkit-scrollbar {
+				display: none;
+			}
+
+			view {
+				&:last-child {
+					border: none;
+				}
+
+				&.cancel {
+					width: 100%;
+					height: 90rpx;
+					background: #fff;
+					text-align: center;
+					position: fixed;
+					bottom: 20rpx;
+					left: 0;
+					border-top: 10rpx solid #F5F6FA;
+				}
+			}
+		}
+	}
+</style>

+ 3 - 0
main.js

@@ -81,6 +81,9 @@ Vue.component('autograph', autograph)
 
 import search from '@/components/search/nx-search.vue'
 Vue.component('search', search)
+
+import linPopup from '@/components/lin-popup/index.vue'
+Vue.component('linPopup', linPopup)
 // import VConsole from './js_sdk/vconsole.min'
 
 //   var vConsole = new VConsole();

+ 10 - 1
pages.json

@@ -255,7 +255,16 @@
 			}
 
 		}
-	],
+	    ,{
+            "path" : "pages/wallet/wallet",
+            "style" :                                                                                    
+            {
+                "navigationBarTitleText": "我的钱包",
+                "enablePullDownRefresh": false
+            }
+            
+        }
+    ],
 	"globalStyle": {
 		"mp-alipay": {
 			/* 支付宝小程序特有相关 */

+ 126 - 42
pages/communication/communication.vue

@@ -11,7 +11,9 @@
 			</view>
 			<view class="cu-form-group">
 				<view class="title">客户单位名称:</view>
-				<input placeholder="请输入客户单位名称" v-model="form.buMenName" name="input" :disabled="true"></input>
+				<input placeholder="请输入客户单位名称" v-model="form.keHuDanWeiMingChe" name="input"></input>
+				<u-icon class="uni-icon" name="close-circle-fill" color="rgb(192, 196, 204)" size="42"
+					v-if="form.keHuDanWeiMingChe != ''" @click="form.keHuDanWeiMingChe = ''"></u-icon>
 			</view>
 			<view class="cu-form-group">
 				<view class="title">客户联系人:</view>
@@ -21,7 +23,12 @@
 			</view>
 			<view class="cu-form-group">
 				<view class="title">委托单号:</view>
-				<input placeholder="请输入委托单号" v-model="form.weiTuoDanHao" name="input"></input>
+				<!-- 				<input placeholder="请输入委托单号" v-model="form.weiTuoDanHao" name="input"></input>
+				<u-icon class="uni-icon" name="close-circle-fill" color="rgb(192, 196, 204)" size="42"
+					v-if="form.weiTuoDanHao != ''" @click="form.weiTuoDanHao = ''"></u-icon> -->
+				<text style="width: 100%;" @click="getShow">{{getWeiTuo(form.weiTuoDanHao)}}</text>
+				<u-button type="success" size="mini" @click="getShow" v-if="form.weiTuoDanHao == ''">选择
+				</u-button>
 				<u-icon class="uni-icon" name="close-circle-fill" color="rgb(192, 196, 204)" size="42"
 					v-if="form.weiTuoDanHao != ''" @click="form.weiTuoDanHao = ''"></u-icon>
 			</view>
@@ -101,6 +108,8 @@
 				<autograph @save="save" @clear="clear" @close="close"></autograph>
 			</view>
 		</u-popup>
+
+		<lin-popup ref="picker" :title="'委托单选择'" :list="weiTuoList" @onConfirm="onConfirm"></lin-popup>
 	</view>
 </template>
 
@@ -120,6 +129,7 @@
 			return {
 				sheetShow: false,
 				form: {
+					xuanZeKeHu: '',
 					biaoDanBianHao: '',
 					buMenName: '',
 					keHuDanWeiMingChe: '',
@@ -151,7 +161,9 @@
 				}, {
 					text: '其它'
 				}],
-				kehuXinXinList: []
+				kehuXinXinList: [],
+
+				weiTuoList: []
 			}
 		},
 		created() {
@@ -275,49 +287,17 @@
 			getKehu() {
 				let info = uni.getStorageSync(USER_INFO);
 				if (info) {
-					this.mobile = info.employee.mobile
+					this.form.xuanZeKeHu = info.user.id
+					this.form.lianXiDianHua = info.user.mobile
+					this.form.keHuDanWeiMingChe = info.user.fullname
+					this.form.keHuLianXiRen = info.user.fullname
 				}
-				let sql =
-					`select tk.id_,tk.ke_hu_ming_cheng_,ty.lian_xi_ren_,ty.ke_hu_dian_hua_ from t_khxx tk,t_yxkh ty where tk.ke_hu_ming_cheng_ = ty.id_  and ty.ke_hu_dian_hua_='${this.mobile}' ORDER BY tk.create_time_ desc`
-
-				let requestData = this.$sig(sql)
-
-				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
-					if (res.data.state == 200) {
-						const data = res.data.variables.data
-						if (data.length > 0) {
-							data.forEach((item, index) => {
-								this.$set(item, 'value', item.ke_hu_ming_cheng_)
-								this.$set(item, 'text', item.lian_xi_ren_)
-							})
-							this.kehuXinXinList = data
-							this.form.keHuDanWeiMingChe = data[0].id_ || ''
-							this.form.buMenName = data[0].lian_xi_ren_
-							this.form.lianXiDianHua = data[0].ke_hu_dian_hua_ || ''
-							this.form.keHuLianXiRen = data[0].lian_xi_ren_ || ''
-						} else {
-							return uni.showToast({
-								title: '该账户暂时不能填写沟通记录,如果需要填写请联系本公司',
-								icon: 'none',
-								duration: 2000
-							})
-						}
-					}
-				})
+				this.getWeiTuoList()
 			},
 			onSubmit() {
 				let info = uni.getStorageSync(USER_INFO);
 				let useId = info.user.id
 				let detpId = info.org.id
-
-				if (this.form.buMenName == '') {
-					return uni.showToast({
-						title: '该账户暂时不能填写沟通记录,如果需要填写请联系本公司',
-						icon: 'none',
-						duration: 2000
-					})
-				}
-
 				var nowDate = new Date((new Date).getTime() + 8 * 60 * 60 * 1000)
 				var time = nowDate.toJSON().split('T').join(' ').substr(0, 10);
 				let para = {
@@ -352,11 +332,115 @@
 					let msg = ((err.response || {}).data || {}).message || err.data.message || "请求出现错误,请稍后再试"
 					this.$tip.error(msg);
 				});
+			},
+			//委托信息
+			getWeiTuoList() {
+				let info = uni.getStorageSync(USER_INFO);
+				let useId = info.user.id
+
+				let sql =
+					`select id_,wei_tuo_bian_hao_ from t_lhwtsqb where create_by_ = '${useId}' order by create_time_ desc`
+
+				let requestData = this.$sig(sql)
+				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
+					if (res.data.state == 200) {
+						const datas = res.data.variables.data
+						if (datas.length > 0) {
+							datas.forEach((item, index) => {
+								this.$set(item, 'name', item.wei_tuo_bian_hao_)
+							})
+							this.weiTuoList = datas
+						}
+
+					}
+				})
+			},
+			// 拉取样品列表数据
+			getData(id) {
+
+				let info = uni.getStorageSync(USER_INFO);
+				let useId = info.user.id
+
+				let sql =
+					`select id_,yang_pin_bian_hao,yang_pin_ming_che,yang_pin_lei_xing,yang_pin_lei_er_,yang_pin_lei_san_,yang_pin_lei_si_ from t_lhypb where parent_id_ = '${id}' order by create_time_ desc`
+
+				let requestData = this.$sig(sql)
+				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
+					if (res.data.state == 200) {
+						const datas = res.data.variables.data
+						if (datas.length > 0) {
+							let list = []
+							let list1 = []
+							let list3 = []
+							datas.forEach(item => {
+								if (item.yang_pin_lei_xing) {
+									list.push(item.yang_pin_lei_xing)
+								}
+								if (item.yang_pin_lei_er_) {
+									list.push(item.yang_pin_lei_er_)
+								}
+								if (item.yang_pin_lei_san_) {
+									list.push(item.yang_pin_lei_san_)
+								}
+								if (item.yang_pin_lei_si_) {
+									list.push(item.yang_pin_lei_si_)
+								}
+								list1.push(item.yang_pin_bian_hao)
+								list3.push(item.yang_pin_ming_che)
+							})
+							var list2 = [...new Set(list)]
+							this.form.yangPinLeiXing = list2.join(",")
+							this.form.yangPinBianHao = list1.join(",")
+							this.form.yangPinMingCheng = list3.join(",")
+						}
+
+					}
+				})
+			},
+			getBaoGaoList(id) {
+				let info = uni.getStorageSync(USER_INFO);
+				let useId = info.user.id
+
+				let sql =
+					`select id_,bao_gao_bian_hao_ from t_lhjcbgb where wei_tuo_id_ = '${id}'`
+
+				let requestData = this.$sig(sql)
+				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
+					if (res.data.state == 200) {
+						const datas = res.data.variables.data
+						if (datas.length > 0) {
+							let list = []
+							datas.forEach((item, index) => {
+								list.push(item.bao_gao_bian_hao_)
+							})
+							this.form.baoGaoBianHao = list.join(",")
+						}
+
+					}
+				})
+			},
+			getShow() {
+				this.$refs['picker'].show();
+			},
+			onConfirm(index, item) {
+				this.form.weiTuoDanHao = item.id_
+				this.getData(item.id_)
+				this.getBaoGaoList(item.id_)
+			},
+			getWeiTuo(id) {
+				if (id) {
+					let itemData = this.weiTuoList.find(item => item.id_ == id)
+					return itemData.wei_tuo_bian_hao_
+				} else {
+					return ''
+				}
 			}
 		}
 	}
 </script>
 
-<style>
-
+<style lang="scss" scoped>
+	.cu-form-group .title {
+		min-width: 180rpx;
+	}
 </style>

+ 44 - 6
pages/jiance/list/specimen.vue

@@ -45,13 +45,13 @@
 						</view>
 					</view>
 					<view style="width: 100%;">
-						<view v-for="(it, x) in jianCeList" :key="x">
+						<view v-for="(it, x) in jianCeList" :key="x" @click="getJianXiangData(it)">
 							<view class="jiancexiangm">
 								<view>
 									{{it.lei_bie_ || ''}}-{{it.jian_ce_xiang_mu_ || ''}}[{{it.xiang_mu_dan_jia_ || '0'}}元]
 								</view>
 								<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
-								<view>报告周期(工作日):{{it.bao_gao_zhou_qi_g || '0'}}天</view>
+								<!-- <view>报告周期(工作日):{{it.bao_gao_zhou_qi_g || '0'}}天</view> -->
 							</view>
 						</view>
 					</view>
@@ -68,11 +68,11 @@
 					</view>
 					<view>
 						<view>
-							<view v-for="(it, x) in taoCanXiangMuList" :key="x">
+							<view v-for="(it, x) in taoCanXiangMuList" :key="x" @click="getJianXiangData(it)">
 								<view class="jiancexiangm">
 									<view>
 										{{it.jian_ce_lei_bie_ || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
-										<text style="color: red;">[{{it.zhe_hou_jia_ge_ || ''}}元]</text>
+										<text style="color: red;">[{{it.zhe_hou_jia_ge_ || '0'}}元]</text>
 									</view>
 									<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
 								</view>
@@ -197,6 +197,14 @@
 		<u-calendar v-model="dateShow" :mode="mode" max-date="2050-01-01" @change="dateChange"></u-calendar>
 		<u-action-sheet :list="list" v-model="sheetShow" @click="actionSheetCallback"></u-action-sheet>
 
+
+		<u-modal v-model="meassageShow" :show-cancel-button="true" :show-confirm-button="false" title="检测项目"
+			@cancel="cancel">
+			<view class="u-update-content">
+				<rich-text :nodes="content"></rich-text>
+			</view>
+		</u-modal>
+
 	</view>
 </template>
 
@@ -274,7 +282,9 @@
 				taoCanList: [],
 				taoCanShow: false,
 				taoCanXiangMuList: [],
-				jianCeListShow: false
+				jianCeListShow: false,
+				content: ``,
+				meassageShow: false
 			}
 		},
 		onLoad(option) {
@@ -532,6 +542,23 @@
 					this.form.yangBenChuLi = this.list[e].text
 				}
 			},
+			//检测详情弹出框
+			getJianXiangData(item) {
+				let content = `
+					1. 检测项目编号:${item.xiang_mu_bian_hao}<br>
+					2. 检测项目名称:${item.jian_ce_xiang_mu_}<br>
+					3. 检测类别:${item.jian_ce_lei_bie_}<br>
+					4. 操作规程:${item.yi_ju_de_biao_zhu}<br>
+					5. 送样要求:${item.yang_pin_tiao_jia}<br>
+					6. 报告周期(工作日):${item.bao_gao_zhou_qi_g}<br>
+					7. 价格:${item.zhe_hou_jia_ge_ || 0}元<br>
+				`
+				this.content = content
+				this.meassageShow = true
+			},
+			cancel() {
+				this.meassageShow = false
+			}
 		}
 	}
 </script>
@@ -561,7 +588,8 @@
 		margin-bottom: 20rpx;
 		background-color: #f1f1f1;
 		border-radius: 8rpx;
-		color: #606266;
+		color: $u-content-color;
+		line-height: 1.7;
 
 		view {
 			line-height: 30rpx;
@@ -575,6 +603,16 @@
 		.btnSin {
 			margin: 10rpx 5rpx;
 		}
+	}
+
+	.u-full-content {
+		background-color: #00C777;
+	}
 
+	.u-update-content {
+		font-size: 26rpx;
+		color: $u-content-color;
+		line-height: 1.7;
+		padding: 30rpx;
 	}
 </style>

+ 12 - 31
pages/jiance/manyi.vue

@@ -6,7 +6,9 @@
 		</cu-custom>
 		<view class="cu-form-group">
 			<view class="title">客户单位:</view>
-			<input placeholder="请输入客户单位" v-model="buMenName" name="input" :disabled="true"></input>
+			<input placeholder="请输入客户单位" v-model="buMenName" name="input"></input>
+			<u-icon class="uni-icon" name="close-circle-fill" color="rgb(192, 196, 204)" size="42"
+				v-if="buMenName != ''" @click="buMenName = ''"></u-icon>
 		</view>
 		<view class="cu-form-group">
 			<view class="title">客户联系方式:</view>
@@ -105,7 +107,8 @@
 					name: "检验检测"
 				}, {
 					name: "科研服务"
-				}]
+				}],
+				keHuBianHao: '',
 			}
 		},
 		onLoad() {
@@ -115,35 +118,12 @@
 			getKehu() {
 				let info = uni.getStorageSync(USER_INFO);
 				if (info) {
-					this.mobile = info.employee.mobile
+					this.keHuBianHao = info.user.id || ''
+					this.buMenName = info.user.name || ''
+					this.lianxidianhua = info.user.mobile || ''
+					this.keHuLianXiRen = info.user.name || ''
+					this.keHuLianXiYouXian = info.user.email || ''
 				}
-				let sql =
-					`select tk.id_,tk.ke_hu_ming_cheng_,ty.lian_xi_ren_,ty.ke_hu_dian_hua_ from t_khxx tk,t_yxkh ty where tk.ke_hu_ming_cheng_ = ty.id_  and ty.ke_hu_dian_hua_='${this.mobile}' ORDER BY tk.create_time_ desc`
-
-				let requestData = this.$sig(sql)
-
-				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
-					if (res.data.state == 200) {
-						const data = res.data.variables.data
-						if (data.length > 0) {
-							data.forEach((item, index) => {
-								this.$set(item, 'value', item.ke_hu_ming_cheng_)
-								this.$set(item, 'text', item.lian_xi_ren_)
-							})
-							this.kehuXinXinList = data
-							this.buMenId = data[0].id_ || ''
-							this.buMenName = data[0].lian_xi_ren_
-							this.lianxidianhua = data[0].ke_hu_dian_hua_ || ''
-							this.keHuLianXiRen = data[0].lian_xi_ren_ || ''
-						} else {
-							uni.showToast({
-								title: '该账户暂时不能填写满意度调查,如果需要填写请联系本公司',
-								icon: 'none',
-								duration: 2000
-							})
-						}
-					}
-				})
 			},
 
 			onSubmit() {
@@ -178,7 +158,8 @@
 				}
 				let paraValue = {
 					nianFen: time.substring(0, 4),
-					keHu: this.buMenId,
+					guanLianKeHu: this.keHuBianHao,
+					keHu: this.buMenName,
 					lianXiDianHua: this.lianxidianhua,
 					keHuLianXiRen: this.keHuLianXiRen,
 					keHuLianXiYouXian: this.keHuLianXiYouXian,

+ 136 - 26
pages/jiance/order.vue

@@ -77,17 +77,16 @@
 						</view>
 					</view>
 					<u-form-item label="检测项目" prop="name" label-position="top">
-						<view v-for="(it, x) in item.jianCeList" :key="x" v-if="it.checked">
-							<view class="uni-list-cell uni-list-cell-pd">
-								<view
-									style="margin-left: 10rpx;font-size: 28rpx;line-height: 40rpx;background: #eee;padding: 10rpx;">
-									<view>
-										{{it.xiang_mu_bian_hao || ''}}-{{it.jian_ce_xiang_mu_ || ''}}[{{it.zhe_hou_jia_ge_ || ''}}元]
-									</view>
-									<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
-									<view>报告周期(工作日):{{it.bao_gao_zhou_qi_g || '当'}}天</view>
-									<view>送样要求:{{it.yang_pin_tiao_jia || ''}}</view>
+						<view v-for="(it, x) in item.jianCeList" :key="x" v-if="it.checked"
+							@click="getJianXiangData(it)">
+							<view class="jiancexiangm">
+								<view>
+									{{it.xiang_mu_bian_hao || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
+									<text style="color: red;">[{{it.zhe_hou_jia_ge_ || '当'}}元]</text>
 								</view>
+								<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
+								<!-- 								<view>报告周期(工作日):{{it.bao_gao_zhou_qi_g || '当'}}天</view>
+								<view v-if="it.yang_pin_tiao_jia">送样要求:{{it.yang_pin_tiao_jia || ''}}</view> -->
 							</view>
 						</view>
 					</u-form-item>
@@ -105,15 +104,13 @@
 						</view>
 					</u-form-item>
 					<view>
-						<view>
-							<view v-for="(it, x) in item.taoCanXiangMuList" :key="x">
-								<view class="jiancexiangm">
-									<view>
-										{{it.xiang_mu_bian_hao || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
-										<text style="color: red;">[{{it.zhe_hou_jia_ge_ || '当'}}元]</text>
-									</view>
-									<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
+						<view v-for="(it, x) in item.taoCanXiangMuList" :key="x" @click="getJianXiangData(it)">
+							<view class="jiancexiangm">
+								<view>
+									{{it.xiang_mu_bian_hao || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
+									<text style="color: red;">[{{it.zhe_hou_jia_ge_ || '当'}}元]</text>
 								</view>
+								<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
 							</view>
 						</view>
 					</view>
@@ -215,7 +212,7 @@
 						<text>{{item.yangPinGuiGeSi}}</text>
 					</u-form-item>
 				</block>
-				<u-form-item label="项目名称" prop="xiangMuMingCheng" v-if="form.weiTuoHeTong == '技术服务协议'">
+				<u-form-item label="项目名称" prop="xiangMuMingCheng" v-if="item.mingChengShow">
 					<text>{{item.xiangMuMingCheng}}</text>
 				</u-form-item>
 				<u-form-item label="样品总价" prop="yangPinZongJia">
@@ -230,6 +227,15 @@
 				</u-button>
 			</uni-group>
 
+			<u-button type="success" class="btn" @click="getSing()" v-if="type != 'detail' && form.lhypb.length > 0">
+				添加样品
+			</u-button>
+
+			<view class="tagBox" v-if="form.lhypb.length > 0">
+				<uni-tag class="tagSin" :text="'样品:'+(index+1)" :type="lhypbIndex == index ? 'primary':'warning'"
+					:circle="true" v-for="(item,index) in form.lhypb" :key="index" @click="lhypbIndex = index" />
+			</view>
+
 			<uni-group mode="card">
 				<u-form-item label="付款方式">
 					<u-input placeholder="请输入付款方式" v-model="form.fuKuanFangShi" disabled />
@@ -328,10 +334,25 @@
 		<u-popup v-model="lhypbShow" mode="bottom" height="80%" border-radius="20">
 			<view>
 				<lhypb-message ref="lhypbMessage" :jianCeTypeList="jianCeTypeList" :taoCanShow="taoCanShow"
-					:heTongId="form.heTongId" @deletClick="deletClick" @sumbitSingClick="sumbitSingClick">
+					:heTongId="form.heTongId" @deletClick="deletClick" @sumbitSingClick="sumbitSingClick"
+					@getParentContent="getJianXiangData">
 				</lhypb-message>
 			</view>
 		</u-popup>
+
+		<!-- <u-popup v-model="meassageShow" mode="bottom" height="50%" border-radius="20">
+			<view>
+				<message ref="message"></message>
+			</view>
+		</u-popup> -->
+
+
+		<u-modal v-model="meassageShow" :show-cancel-button="true" :show-confirm-button="false" title="检测项目"
+			@cancel="cancel">
+			<view class="u-update-content">
+				<rich-text :nodes="content"></rich-text>
+			</view>
+		</u-modal>
 	</view>
 </template>
 
@@ -342,6 +363,7 @@
 	import popup from '@/components/popup/popup.vue'
 	import order from './order/test.json'
 	import lhypbMessage from '@/pages/jiance/order/lhypbMessage.vue'
+	import message from '@/pages/jiance/order/message.vue'
 
 	import {
 		ACCESS_TOKEN,
@@ -351,7 +373,8 @@
 	import service from './order/meth.js'
 	export default {
 		components: {
-			lhypbMessage
+			lhypbMessage,
+			message
 		},
 		data() {
 			return {
@@ -489,7 +512,10 @@
 
 				taoCanList: [],
 				taoCanShow: true,
-				taoCanXiangmMuList: []
+				taoCanXiangmMuList: [],
+
+				meassageShow: false,
+				content: ``,
 			}
 		},
 		onLoad(options) {
@@ -753,7 +779,7 @@
 			//根据合同id选择检测项目
 			getJiance(id, type, weiTouId) {
 				let sql =
-					`select tw.*,tb.zhe_hou_jia_ge_,tb.xiang_mu_dan_jia_ from t_htjcxmjmb tb left join t_mjjcnlfw tw on tb.jian_ce_xiang_mu_ = tw.id_  where parent_id_ = '${id}'`
+					`select tw.*,tb.zhe_hou_jia_ge_,tb.xiang_mu_dan_jia_ from t_htjcxmjmb tb left join t_mjjcnlfw tw on tb.jian_ce_xiang_mu_ = tw.id_  where parent_id_ = '${id}' order by tw.nodekey1_ asc`
 				let requestData = this.$sig(sql)
 				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
 					if (res.data.state == 200) {
@@ -1009,17 +1035,47 @@
 					let list3 = []
 					let list4 = []
 					let list5 = []
+					let list6 = []
+					let list7 = []
+					let list8 = []
+					let list9 = []
 					item.jianCeXiangMu2 = []
 					item.weiTuoDanHao = this.form.weiTuoBianHao
 					item.weiTuoDanWei = this.form.weiTuoDanWei
 					item.lianXiRen = this.form.weiTuoFangLianXiR
 					item.lianXiDianHua = this.form.weiTuoFangLianXiD
+
+					item.heTongBianHao = this.form.heTongId
+					item.jiaoFeiFangShi = this.form.fuKuanFangShi
+					item.fuKuanZhuangTai = '未结清'
+					item.heTongLeiXing = this.form.weiTuoHeTong
+					item.weiTuoRiQi = this.form.weiTuoRiQi
+					item.songJianDanWei = this.form.songJianDanWei
+					item.bianZhiRen = this.userid
+
+					item.chuBaoGaoYaoQiu = this.form.chuJuBaoGaoYaoQiu
+
 					item.jianCeList.forEach((it, x) => {
 						if (it.checked) {
 							item.jianCeXiangMu2.push(it.id_)
+							list6.push(it.zhe_hou_jia_ge_)
+							list7.push(it.jian_ce_xiang_mu_)
+
+							let listTe = 0
+							if (this.form.chuJuBaoGaoYaoQiu == '常规') {
+								listTe = parseFloat(it.zhe_hou_jia_ge_)
+							} else if (this.form.chuJuBaoGaoYaoQiu == '加急') {
+								listTe = parseFloat(it.zhe_hou_jia_ge_) * 1.2
+							} else if (this.form.chuJuBaoGaoYaoQiu == '特急') {
+								listTe = parseFloat(it.zhe_hou_jia_ge_) * 1.5
+							}
+							list9.push(listTe)
 						}
 					})
 					item.jianCeXiangMu = item.jianCeXiangMu2.join(",")
+					item.changGuiJiaGe = list6.join(",")
+					item.changGuiXiangMuMi = list7.join(",")
+					item.changGuiZheHouJia = list9.join(",")
 
 					item.yangPinZongShu = parseInt(item.shuLiangSi) + parseInt(item.shuLiangSan) + parseInt(item
 							.shuLiangEr) +
@@ -1035,6 +1091,15 @@
 					if (item.taoCanXiangMuList.length > 0) {
 						item.taoCanXiangMuList.forEach(it => {
 							list2.push(it.id_)
+							let listTo = 0
+							if (this.form.chuJuBaoGaoYaoQiu == '常规') {
+								listTo = parseFloat(it.zhe_hou_jia_ge_)
+							} else if (this.form.chuJuBaoGaoYaoQiu == '加急') {
+								listTo = parseFloat(it.zhe_hou_jia_ge_) * 1.2
+							} else if (this.form.chuJuBaoGaoYaoQiu == '特急') {
+								listTo = parseFloat(it.zhe_hou_jia_ge_) * 1.5
+							}
+							list8.push(listTo)
 							list3.push(it.zhe_hou_jia_ge_)
 							list4.push(it.jian_ce_xiang_mu_)
 							list5.push(it.tczbId)
@@ -1043,6 +1108,7 @@
 						item.taoCanMingCheng = list4.join(',')
 						item.taoCanJiaGe = list3.join(',')
 						item.taoCanXiangMu = list2.join(',')
+						item.taoCanZheHouJiaGe = list8.join(",")
 					}
 				})
 
@@ -1061,7 +1127,9 @@
 					}
 
 
-					let showIndex = this.form.lhypb.findIndex(item => item.jianCeXiangMu == '')
+					let showIndex = this.form.lhypb.findIndex(item => item.jianCeXiangMu == '' && item.taoCanXiangMuList
+						.length ==
+						0)
 					if (showIndex >= 0) {
 						uni.showToast({
 							title: `请在样品信息${showIndex+1}选择委托单需要检测项目`,
@@ -1294,7 +1362,19 @@
 						taoCanMingCheng: '',
 						taoCanJiaGe: '',
 						taoCanXiangMu: '',
-						xuanZeTaoCan: ''
+						xuanZeTaoCan: '',
+
+						heTongBianHao: '',
+						jiaoFeiFangShi: '',
+						fuKuanZhuangTai: '',
+						heTongLeiXing: '',
+						weiTuoRiQi: '',
+						songJianDanWei: '',
+						changGuiXiangMuMi: '',
+
+						taoCanZheHouJiaGe: '',
+						changGuiZheHouJia: '',
+						chuBaoGaoYaoQiu: ''
 					}
 					this.lhypbShow = true
 					this.lhypbIndexData = 'add'
@@ -1391,7 +1471,25 @@
 					this.form.lhypb[this.lhypbIndex] = item
 				}
 				this.getTotal()
+			},
+			//检测详情弹出框
+			getJianXiangData(item) {
+				let content = `
+					1. 检测项目编号:${item.xiang_mu_bian_hao}<br>
+					2. 检测项目名称:${item.jian_ce_xiang_mu_}<br>
+					3. 检测类别:${item.jian_ce_lei_bie_}<br>
+					4. 操作规程:${item.yi_ju_de_biao_zhu}<br>
+					5. 送样要求:${item.yang_pin_tiao_jia}<br>
+					6. 报告周期(工作日):${item.bao_gao_zhou_qi_g}<br>
+					7. 价格:${item.zhe_hou_jia_ge_}元<br>
+				`
+				this.content = content
+				this.meassageShow = true
+			},
+			cancel() {
+				this.meassageShow = false
 			}
+
 		}
 	}
 </script>
@@ -1430,7 +1528,9 @@
 		margin-bottom: 20rpx;
 		background-color: #f1f1f1;
 		border-radius: 8rpx;
-		color: #606266;
+		font-size: 26rpx;
+		color: $u-content-color;
+		line-height: 1.7;
 
 		view {
 			line-height: 30rpx;
@@ -1444,7 +1544,17 @@
 		.btnSin {
 			margin: 10rpx 5rpx;
 		}
+	}
+
+	.u-full-content {
+		background-color: #00C777;
+	}
 
+	.u-update-content {
+		font-size: 26rpx;
+		color: $u-content-color;
+		line-height: 1.7;
+		padding: 30rpx;
 	}
 
 

+ 57 - 21
pages/jiance/order/lhypbMessage.vue

@@ -48,24 +48,43 @@
 				</u-form-item>
 
 				<u-form-item label="检测项目" prop="name" label-position="top">
-					<checkbox-group v-for="(it, x) in form.jianCeList" :key="x" @click="changeIndex(it,x)">
-						<label class=" uni-list-cell uni-list-cell-pd"
-							v-show="(it.jian_ce_lei_bie_==form.jianCeType) || it.checked"
-							style="display: flex;margin: 15rpx 10rpx;font-size: 20rpx;line-height: 40rpx;">
-							<view>
-								<checkbox :checked="it.checked" :value="it.id_" />
-							</view>
-							<view style="margin-left: 10rpx;font-size: 28rpx;">
+					<view>
+						<checkbox-group v-for="(it, x) in form.jianCeList" :key="x">
+							<label class=" uni-list-cell uni-list-cell-pd" v-show="it.checked"
+								style="display: flex;margin: 15rpx 10rpx;font-size: 20rpx;line-height: 40rpx;">
 								<view>
-									{{it.xiang_mu_bian_hao || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
-									<text style="color: red;">[{{it.zhe_hou_jia_ge_ || '当'}}元]</text>
+									<checkbox :checked="it.checked" :value="it.id_" @click="changeIndex(it,x)" />
 								</view>
-								<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
-								<view>报告周期(工作日):{{it.bao_gao_zhou_qi_g || '当'}}天</view>
-								<view>送样要求:{{it.yang_pin_tiao_jia || ''}}</view>
-							</view>
-						</label>
-					</checkbox-group>
+								<view style="margin-left: 10rpx;font-size: 26rpx;" @click.stop="getSty(it)">
+									<view>
+										{{it.xiang_mu_bian_hao || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
+										<text style="color: red;">[{{it.zhe_hou_jia_ge_ || '0'}}元]</text>
+									</view>
+									<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
+									<view>报告周期(工作日):{{it.bao_gao_zhou_qi_g || '当'}}天</view>
+								</view>
+							</label>
+						</checkbox-group>
+					</view>
+					<view>
+						<checkbox-group v-for="(it, x) in form.jianCeList" :key="x">
+							<label class=" uni-list-cell uni-list-cell-pd"
+								v-show="(it.jian_ce_lei_bie_==form.jianCeType) && !it.checked"
+								style="display: flex;margin: 15rpx 10rpx;font-size: 20rpx;line-height: 40rpx;">
+								<view>
+									<checkbox :checked="it.checked" :value="it.id_" @click="changeIndex(it,x)" />
+								</view>
+								<view style="margin-left: 10rpx;font-size: 26rpx;" @click.stop="getSty(it)">
+									<view>
+										{{it.xiang_mu_bian_hao || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
+										<text style="color: red;">[{{it.zhe_hou_jia_ge_ || '0'}}元]</text>
+									</view>
+									<view>{{it.yi_ju_de_biao_zhu || ''}}</view>
+									<view>报告周期(工作日):{{it.bao_gao_zhou_qi_g || '当'}}天</view>
+								</view>
+							</label>
+						</checkbox-group>
+					</view>
 				</u-form-item>
 
 				<view class="qingshe" style="background-color: #99cc66;" v-if="taoCanShow">
@@ -84,7 +103,7 @@
 				</u-form-item>
 				<view v-if="form.taoCanXiangMuList.length > 0">
 					<view style="padding: 0 20rpx;">
-						<view v-for="(it, x) in form.taoCanXiangMuList" :key="x">
+						<view v-for="(it, x) in form.taoCanXiangMuList" :key="x" @click.stop="getSty(it)">
 							<view class="jiancexiangm">
 								<view>
 									{{it.jian_ce_lei_bie_ || ''}}-{{it.jian_ce_xiang_mu_ || ''}}
@@ -207,7 +226,7 @@
 						</u-button>
 					</u-form-item>
 				</block>
-				<u-form-item label="项目名称" prop="xiangMuMingCheng" v-if="form.weiTuoHeTong == '技术服务协议'">
+				<u-form-item label="项目名称" prop="xiangMuMingCheng" v-if="form.mingChengShow">
 					<u-input placeholder="请输入项目名称" v-model="form.xiangMuMingCheng" />
 				</u-form-item>
 				<u-form-item label="样品总价" prop="yangPinZongJia">
@@ -308,11 +327,15 @@
 				let itemData = this.form
 				this.form.jianCeList[x].checked = !this.form.jianCeList[x].checked
 
-				let show = itemData.jianCeList.some(item => item.id_ == '1039826037036285952' || item.id_ ==
-					'1040205909151711232')
+				let show = itemData.jianCeList.some(item => (item.id_ == '1039826037036285952' || item.id_ ==
+					'1040205909151711232') && item.checked)
+				console.log(show)
 
 				if (show) {
 					itemData.mingChengShow = true
+				} else {
+					itemData.xiangMuMingCheng = ''
+					itemData.mingChengShow = false
 				}
 				this.getTotal()
 			},
@@ -511,6 +534,9 @@
 					}
 				});
 
+			},
+			getSty(item) {
+				this.$emit('getParentContent', item)
 			}
 		}
 	}
@@ -551,7 +577,9 @@
 		margin-bottom: 20rpx;
 		background-color: #f1f1f1;
 		border-radius: 8rpx;
-		color: #606266;
+		font-size: 26rpx;
+		color: $u-content-color;
+		line-height: 1.7;
 
 		view {
 			line-height: 30rpx;
@@ -566,4 +594,12 @@
 			margin: 10rpx 5rpx;
 		}
 	}
+
+	// .ellipsis {
+	// 	width: 100%;
+	// 	display: inline-block;
+	// 	white-space: nowrap;
+	// 	overflow: hidden;
+	// 	text-overflow: ellipsis;
+	// }
 </style>

+ 76 - 0
pages/jiance/order/message.vue

@@ -0,0 +1,76 @@
+<template>
+	<view>
+		<u-row gutter="16">
+			<u-col span="4">
+				<view class="left">
+					<view class="bat"></view>
+					检测项目编号:
+				</view>
+			</u-col>
+			<u-col span="8">
+				<view class="right">
+
+				</view>
+			</u-col>
+		</u-row>
+		<u-row gutter="16">
+			<u-col span="4">
+				<view class="left">
+					检测项目名称:
+				</view>
+			</u-col>
+			<u-col span="8">
+				<view class="right">
+
+				</view>
+			</u-col>
+		</u-row>
+		<u-row gutter="16">
+			<u-col span="4">
+				<view class="left">
+					操作规程:
+				</view>
+			</u-col>
+			<u-col span="8">
+				<view class="right">
+
+				</view>
+			</u-col>
+		</u-row>
+	</view>
+</template>
+
+<script>
+	export default {
+		data() {
+			return {
+
+			}
+		}
+	}
+</script>
+
+<style scoped lang="scss">
+	.left {
+		display: flex;
+		align-items: center;
+		// color: #8799a3;
+		font-size: 30rpx;
+		text-align: right;
+		justify-content: flex-end;
+	}
+
+	.right {
+		// color: #8799a3;
+		font-size: 30rpx;
+	}
+
+	.bat {
+		// position: absolute;
+		width: 8px;
+		height: 8px;
+		border-radius: 100%;
+		background: #67c23a;
+		box-shadow: 0 2px 4px 0 rgba(0, 0, 0, .2);
+	}
+</style>

+ 14 - 1
pages/jiance/order/meth.js

@@ -93,7 +93,20 @@ export default {
 				taoCanMingCheng: item.tao_can_ming_chen,
 				taoCanJiaGe: item.tao_can_jia_ge_,
 				taoCanXiangMu: item.tao_can_xiang_mu_,
-				xuanZeTaoCan: item.xuan_ze_tao_can_
+				xuanZeTaoCan: item.xuan_ze_tao_can_,
+
+				heTongBianHao: item.he_tong_bian_hao_ || '',
+				jiaoFeiFangShi: item.jiao_fei_fang_shi || '',
+				fuKuanZhuangTai: item.fu_kuan_zhuang_ta || '',
+				heTongLeiXing: item.he_tong_lei_xing_ || '',
+				weiTuoRiQi: item.wei_tuo_ri_qi_ || '',
+				songJianDanWei: item.song_jian_dan_wei || '',
+				changGuiJiaGe: item.chang_gui_jia_ge_ || '',
+				xiangMuMingCheng: item.chang_gui_xiang_m || '',
+
+				taoCanZheHouJiaGe: item.tao_can_zhe_hou_j || '',
+				chuBaoGaoYaoQiu: item.chu_bao_gao_yao_q || '',
+				changGuiZheHouJia: item.chang_gui_zhe_hou || ''
 			}
 			if (obj.yangPinLeiXing != '') {
 				obj.showBoolean1 = true

+ 114 - 19
pages/jiance/tousu.vue

@@ -7,7 +7,7 @@
 
 		<view class="cu-form-group" style="z-index: 999;">
 			<view class="title">投诉人</view>
-			<input v-model="form.ComplainantsName" name="input" placeholder="请输入投诉人" disabled>
+			<input v-model="form.Complainants" name="input" placeholder="请输入投诉人" :disabled="id != '' ? true : false">
 		</view>
 		<view class="cu-form-group" style="z-index: 999;">
 			<view class="title">电话</view>
@@ -22,12 +22,16 @@
 			<input v-model="form.touSuRiQi" name="input" placeholder="请输入投诉日期" disabled @click="showClick">
 		</view>
 		<view class="cu-form-group" style="z-index: 999;">
-			<view class="title">邮</view>
-			<input v-model="form.postcode" name="input" placeholder="请输入邮" :disabled="id != '' ? true : false">
+			<view class="title">邮</view>
+			<input v-model="form.postcode" name="input" placeholder="请输入邮" :disabled="id != '' ? true : false">
 		</view>
 		<view class="cu-form-group" style="z-index: 999;">
-			<view class="title">地址</view>
-			<input v-model="form.address" name="input" placeholder="请输入地址" :disabled="id != '' ? true : false">
+			<view class="title">关联样品</view>
+			<text style="width: 100%;" @click="getShow">{{getYangPin(form.guanLianYangPin)}}</text>
+			<u-button type="success" size="mini" @click="getShow" v-if="form.guanLianYangPin == '' && id == ''">选择
+			</u-button>
+			<u-icon class="uni-icon" name="close-circle-fill" color="rgb(192, 196, 204)" size="42"
+				v-if="form.guanLianYangPin != ''" @click="form.guanLianYangPin = '' && id == ''"></u-icon>
 		</view>
 		<view class="cu-form-group" style="z-index: 999;">
 			<view class="title">投诉方式</view>
@@ -50,12 +54,13 @@
 				</view>
 			</view>
 		</uni-section>
-		<uni-section title="客户确认" type="line">
-			<u-radio-group v-model="form.shiFouTongYi" v-if="id != ''" style="margin: 0 10rpx;">
+		<uni-section title="客户确认" type="line" v-if="id != ''">
+			<uni-data-checkbox selectedColor="red" v-model="form.shiFouTongYi" :localdata="sexList"></uni-data-checkbox>
+			<!-- 			<u-radio-group v-model="form.shiFouTongYi" v-if="id != ''" style="margin: 0 10rpx;">
 				<u-radio v-for="(it, index) in sexList" :key="index" :name="it.name">
 					{{it.name}}
 				</u-radio>
-			</u-radio-group>
+			</u-radio-group> -->
 		</uni-section>
 
 		<uni-section title="投诉内容" type="line" padding v-if="id != ''">
@@ -85,6 +90,7 @@
 
 		<u-calendar v-model="show" :mode="mode" @change="dateChange"></u-calendar>
 		<u-select v-model="selectShow" :list="list" title="投诉方式" @confirm="selecConfirm"></u-select>
+		<lin-popup ref="picker" :title="'样品选择'" :list="yangPinList" @onConfirm="onConfirm"></lin-popup>
 
 		<u-popup mode="center" v-model="popupShow">
 			<view style="padding: 30rpx;background: #FFFFFF;width: 100%;">
@@ -129,18 +135,20 @@
 
 				id: '',
 				form: {
-					ComplainantsName: "",
-					Complainants: "",
+					id: '',
+					guanLianKeHu: '',
+					company: "",
 					telephone: "",
 					postcode: "",
-					company: "",
+					Complainants: "",
 					touSuRiQi: "",
-					address: "",
+					guanLianYangPin: "",
 					complaintsWay: "",
 					content: "",
 					yeShu: "",
 					fuJianShangChuan: "",
 					youWuYouXiaoTouSu: "",
+					xuanZeRen: '',
 					officeSurvey: "",
 					chuLiCuoShi: "",
 					chuLiShiJian: "",
@@ -162,14 +170,22 @@
 					shouLiRen2: "",
 					shouLiRiQi2: "",
 					shouLiBuMen2: "",
-					qianMingRiQi: ""
+					qianMingRiQi: "",
+					shiFouGuoShen: '',
 				},
 				sexList: [{
-					name: "同意"
+					text: "同意",
+					value: "同意"
 				}, {
-					name: "不同意"
-				}]
+					text: "不同意",
+					value: "不同意"
+				}],
+
+				yangPinList: []
 			}
+		},
+		filters: {
+
 		},
 		onLoad(options) {
 			if (options.id) {
@@ -179,11 +195,18 @@
 			}
 		},
 		created() {
+			var nowDate = new Date((new Date).getTime() + 8 * 60 * 60 * 1000)
+			var time = nowDate.toJSON().split('T').join(' ').substr(0, 10);
 			let info = uni.getStorageSync(USER_INFO);
 			let useId = info.user.id
 			let name = info.user.name
-			this.form.Complainants = useId
-			this.form.ComplainantsName = name
+			this.form.Complainants = name
+			this.form.guanLianKeHu = useId
+			this.form.telephone = info.user.mobile
+			this.form.company = name
+			this.form.postcode = info.user.email
+			this.form.touSuRiQi = time
+			this.getData()
 		},
 		methods: {
 			//根据投诉id查询 taskId
@@ -216,7 +239,7 @@
 					if (res.data.state == 200) {
 						const data = res.data.variables.data[0]
 						this.form.id = data.id_
-						this.form.ComplainantsName = data.name_
+						// this.form.ComplainantsName = data.name_
 						this.form.Complainants = data.complainants_
 						this.form.telephone = data.telephone_
 						this.form.postcode = data.postcode_
@@ -248,6 +271,10 @@
 						this.form.shouLiRen2 = data.shou_li_ri_qi_2_
 						this.form.shouLiRiQi2 = data.shou_li_ren_2_
 						this.form.shouLiBuMen2 = data.shou_li_bu_men_2_
+						this.form.shiFouGuoShen = data.shi_fou_guo_shen_
+						this.form.xuanZeRen = data.xuan_ze_ren_
+						this.form.qianMing = data.qian_ming_
+						this.form.qianMingRiQi = data.qian_ming_ri_qi_
 						if (data.fu_jian_shang_chu && data.fu_jian_shang_chu != '') {
 							this.getFileList(data.fu_jian_shang_chu)
 						}
@@ -397,6 +424,7 @@
 				this.$http.post("/ibps/business/v3/bpm/task/agree", editData).then(res => {
 					if (res.data.state == 200) {
 						this.$tip.success('提交成功!')
+						this.getHouSumit(this.form)
 						uni.hideLoading();
 						this.$Router.replaceAll({
 							name: 'index'
@@ -409,6 +437,31 @@
 					}
 				});
 			},
+			getHouSumit(form) {
+				let params = {
+					qian_ming_ri_qi_: form.qianMingRiQi,
+					qian_ming_: form.qianMing,
+					shi_fou_guo_shen_: '1',
+					shi_fou_tong_yi_: form.shiFouTongYi
+				}
+				let pp = {
+					paramWhere: [{
+						id_: form.id
+					}],
+					tableName: "t_complaint",
+					paramCond: params
+				}
+				let data = this.$sig(pp)
+
+				this.$http.post("ibps/business/v3/sys/universal/updateDatasContextTable", data).then(res => {
+					if (res.data.state == 200) {
+
+
+					} else {
+
+					}
+				});
+			},
 			dateChange(e) {
 				this.form.touSuRiQi = e.result
 			},
@@ -451,6 +504,48 @@
 					this.form.qianMing = ''
 				}
 			},
+			getShow() {
+				this.$refs['picker'].show();
+			},
+			// 拉取样品列表数据
+			getData() {
+
+				let info = uni.getStorageSync(USER_INFO);
+				let useId = info.user.id
+
+				let sql =
+					`select a.id_,a.create_time_,a.yang_pin_ming_che,a.yang_pin_bian_hao,c.fu_kuan_zhuang_ta,c.wei_tuo_bian_hao_,c.wei_tuo_zhuang_ta,b.shou_yang_ri_qi_,b.bei_zhu_` +
+					` from t_lhypb a` +
+					` inner join t_lhwtsqb c on a.parent_id_ = c.id_ and a.create_by_= '${useId}' ` +
+					` left join t_lhypdjb b on a.yang_pin_bian_hao = b.yang_ben_bian_hao ORDER BY a.create_time_ desc`
+
+				let requestData = this.$sig(sql)
+				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
+					if (res.data.state == 200) {
+						const datas = res.data.variables.data
+						if (datas.length > 0) {
+							datas.forEach((item, index) => {
+								this.$set(item, 'name', item.yang_pin_bian_hao + '-' + item
+									.yang_pin_ming_che)
+							})
+							this.yangPinList = datas
+						}
+
+					}
+				})
+			},
+			onConfirm(index, item) {
+				this.form.guanLianYangPin = item.id_
+			},
+			getYangPin(id) {
+				if (id) {
+					let itemData = this.yangPinList.find(item => item.id_ == id)
+					return itemData.yang_pin_bian_hao + '-' + itemData
+						.yang_pin_ming_che
+				} else {
+					return ''
+				}
+			}
 		}
 	}
 </script>

+ 2 - 2
pages/jiance/tousu/tousuList.vue

@@ -7,7 +7,7 @@
 
 		<block v-if="list.length > 0">
 			<view v-for="(item,index) in list" :key="index" style="margin: 10rpx 20rpx;">
-				<uni-section :title="'投诉人:'+item.name_" type="line" padding>
+				<uni-section :title="'投诉人:'+item.company_" type="line" padding>
 					<view style="display: flex;align-items: center;">
 						<view>电话:</view>
 						<view>{{item.telephone_}} </view>
@@ -85,7 +85,7 @@
 				}
 
 				let sql =
-					`select a.*,b.name_ from t_complaint a left join ibps_party_employee b on a.complainants_ = b.id_ where a.complainants_ = '${useId}' ORDER BY a.id_ desc LIMIT ${page},10`
+					`select * from t_complaint where guan_lian_ke_hu_ = '${useId}' ORDER BY id_ desc LIMIT ${page},10`
 
 				let requestData = this.$sig(sql)
 				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {

+ 2 - 0
pages/tag/sampleTag.vue

@@ -99,6 +99,8 @@
 				let sql =
 					`select * from t_lhypb where id_ = '${id}' order by yang_pin_bian_hao asc`
 				let requestData = this.$sig(sql)
+
+
 				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
 					if (res.data.state == 200) {
 						const data = res.data.variables.data

+ 4 - 7
pages/user/people.vue

@@ -20,16 +20,13 @@
 			</view>
 			<!-- 列表list-->
 			<view class="cu-list menu card-menu margin-top-xl margin-bottom-xl shadow-lg radius">
-
-
-				<!-- 
-				<view class="cu-item arrow animation-slide-bottom" :style="[{animationDelay: '0.2s'}]">
+				<navigator class="cu-item arrow animation-slide-bottom" url="/pages/wallet/wallet"
+					:style="[{animationDelay: '0.6s'}]">
 					<view class="content">
 						<text class="cuIcon-redpacket_fill text-red"></text>
-						<text class="text-grey">包</text>
+						<text class="text-grey">我的钱包</text>
 					</view>
-				</view> -->
-
+				</navigator>
 				<!--
 			<view class="cu-item arrow animation-slide-bottom" :style="[{animationDelay: '0.3s'}]" @tap="scan">
 			  <view class="content">

+ 290 - 0
pages/wallet/wallet.vue

@@ -0,0 +1,290 @@
+<template>
+	<view>
+		<cu-custom bgColor="bg-luohu" :isBack="true">
+			<block slot="backText">返回</block>
+			<block slot="content">我的钱包</block>
+		</cu-custom>
+		<view>
+			<view class="card-wrap">
+				<view class="card">
+					<view class="card-title">
+						<view class="left">我的余额</view>
+						<view class="right">
+							<u-icon name="/static/icon/qrcode.png" size="40"></u-icon>
+						</view>
+					</view>
+					<view class="amount-wrap">
+						<view class="amount">
+							<u-count-to :start-val="0" :end-val="monkey" :decimals="2" color="#FFFFFF"></u-count-to>
+							<!-- {{monkey}} -->
+							<text class="unit">元</text>
+						</view>
+						<!-- <view class="fewAmount">=¥34,087.8452</view> -->
+					</view>
+					<view class="buttom">最近刷新时间:{{time}}</view>
+				</view>
+			</view>
+		</view>
+		<view>
+			<view class="list-wrap">
+				<view class="list-top">
+					<view class="topBox1" :class="showIndex == 0 ? 'show' : ''" @click="showClick(0)">充值</view>
+					<view class="topBox2" :class="showIndex == 1 ? 'show' : ''" @click="showClick(1)">扣除</view>
+				</view>
+				<scroll-view :scroll-y="true" class="scroll">
+					<view class="csrBox" v-for="(item,index) in monkeyList" :key="index">
+						<view class="img">
+							<image src="../../static/chong.png" v-if="showIndex == 0"></image>
+							<image src="../../static/kou.png" v-if="showIndex == 1"></image>
+						</view>
+						<view class="content">
+							<view class="left">
+								<view v-if="showIndex == 0">
+									<view>委托单:{{item.wei_tuo_dan_hao_}}</view>
+									<view class="time">充值时间:{{item.create_time_}}</view>
+								</view>
+								<view v-if="showIndex == 1">
+									<view>委托单:{{item.wei_tuo_dan_hao_}}</view>
+									<view class="time">扣除时间:{{item.create_time_}}</view>
+								</view>
+							</view>
+							<view class="right">
+								<view v-if="showIndex == 0">+{{item.chong_zhi_jin_e_}}</view>
+								<view v-if="showIndex == 1">-{{item.kou_fei_jin_e_}}</view>
+							</view>
+						</view>
+					</view>
+
+				</scroll-view>
+			</view>
+		</view>
+	</view>
+</template>
+
+<script>
+	import {
+		ACCESS_TOKEN,
+		USER_NAME,
+		USER_INFO
+	} from "@/common/util/constants" // 拉取登录token,userName,userInfo
+	import http from '@/common/service/http.js'
+	import md5 from "@/common/util/md5.js"
+	export default {
+		data() {
+			return {
+				showIndex: 0,
+				time: '',
+				monkey: '0.00',
+				monkeyList: []
+			}
+		},
+		created() {
+			this.getInit()
+			this.getYuE()
+			this.getChong()
+		},
+		methods: {
+			getInit() {
+				var nowDate = new Date((new Date).getTime() + 8 * 60 * 60 * 1000)
+				var time = nowDate.toJSON().split('T').join(' ').substr(0, 16);
+				this.time = time
+			},
+			//充值和扣除切换
+			showClick(index) {
+				this.showIndex = index
+				this.monkeyList = []
+				if (index == 0) {
+					this.getChong()
+				} else {
+					this.getKou()
+				}
+			},
+			getYuE() {
+				let info = uni.getStorageSync(USER_INFO);
+				let useId = info.user.id
+
+				let sql =
+					`select * from t_khqb where xuan_ze_ke_hu_ = '${useId}' order by create_time_ desc limit 1`
+				let requestData = this.$sig(sql)
+				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
+					if (res.data.state == 200) {
+						const datas = res.data.variables.data
+						if (datas.length > 0) {
+							this.monkey = (parseFloat(datas[0].zhang_hu_yu_e_ || 0)).toFixed(2) || '0.00'
+						} else {
+							this.monkey = '0.00'
+						}
+					}
+				})
+			},
+			getChong() {
+				let info = uni.getStorageSync(USER_INFO);
+				let useId = info.user.id
+
+				let sql =
+					`select tc.* from t_czjl tc left join  t_khqb tk on tc.parent_id_ = tk.id_ and tk.xuan_ze_ke_hu_ = '${useId}' order by tc.create_time_ desc`
+				let requestData = this.$sig(sql)
+				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
+					if (res.data.state == 200) {
+						const datas = res.data.variables.data
+						if (datas.length > 0) {
+							this.monkeyList = datas
+						}
+					}
+				})
+			},
+			getKou() {
+				let info = uni.getStorageSync(USER_INFO);
+				let useId = info.user.id
+
+				let sql =
+					`select tc.* from t_kfjl tc left join  t_khqb tk on tc.parent_id_ = tk.id_ and tk.xuan_ze_ke_hu_ = '${useId}' order by tc.create_time_ desc`
+				let requestData = this.$sig(sql)
+				this.$http.post("/ibps/business/v3/sys/universal/inputSqlSelectData", requestData).then(res => {
+					if (res.data.state == 200) {
+						const datas = res.data.variables.data
+						if (datas.length > 0) {
+							this.monkeyList = datas
+						}
+					}
+				})
+			}
+		}
+	}
+</script>
+
+<style lang="scss" scoped>
+	.card-wrap {
+		display: flex;
+		justify-content: center;
+
+		.card {
+			// width: 650rpx;
+			width: 100%;
+			height: 350rpx;
+			margin: 20rpx;
+			background: linear-gradient(to right, #4c9fff, #2f72ff);
+			// background-color: $uni-bg-assist;
+			border-radius: 18rpx;
+			// box-shadow: 0 2px 12px 0 rgba(56, 130, 255, 0.6);
+			color: #ffffff;
+			padding: 40rpx;
+
+			.card-title {
+				display: flex;
+				justify-content: space-between;
+			}
+
+			.amount-wrap {
+				margin-top: 20rpx;
+
+				.amount {
+					font-size: 52rpx;
+					display: flex;
+
+					.unit {
+						font-size: 28rpx;
+						margin-top: 10rpx;
+						margin-left: 20rpx;
+					}
+				}
+
+				.fewAmount {
+					margin-top: 20rpx;
+					font-size: 28rpx;
+				}
+			}
+
+			.buttom {
+				margin-top: 100rpx;
+				font-size: 28rpx;
+				color: #ffffff;
+			}
+		}
+	}
+
+	.list-wrap {
+		width: calc(100% - 40rpx);
+		background: #ffffff;
+		border-radius: 18rpx 18rpx 0 0;
+		position: fixed;
+		bottom: 0rpx;
+		top: 480rpx;
+		left: 20rpx;
+		right: 20rpx;
+
+		.list-top {
+			border-radius: 18rpx 18rpx 0 0;
+			display: flex;
+			align-items: center;
+			justify-content: space-between;
+
+			.topBox1 {
+				text-align: center;
+				width: 100%;
+				background-color: #4c9fff;
+				border-radius: 18rpx 0 0 0;
+				padding: 20rpx 0;
+				color: #ffffff;
+			}
+
+			.topBox2 {
+				text-align: center;
+				width: 100%;
+				background-color: #4c9fff;
+				border-radius: 0 18rpx 0 0;
+				padding: 20rpx 0;
+				color: #ffffff;
+			}
+		}
+
+		.scroll {
+			height: calc(100% - 80rpx);
+
+			.csrBox {
+				display: flex;
+				align-items: center;
+				padding: 15rpx 0 15rpx 15rpx;
+
+				.img {
+					margin-right: 15rpx;
+
+					image {
+						width: 40rpx;
+						height: 40rpx;
+					}
+				}
+
+				.content {
+					width: 100%;
+					display: flex;
+					align-items: center;
+					justify-content: space-between;
+					border-bottom: 1rpx #F5F5F5 solid;
+
+					.left {
+						font-weight: 500;
+						font-size: 28rpx;
+						line-height: 40rpx;
+
+						.time {
+							line-height: 45rpx;
+							font-size: 24rpx;
+							color: #C0C0C0;
+						}
+					}
+
+					.right {
+						font-weight: 500;
+						margin-right: 15rpx;
+					}
+				}
+			}
+		}
+	}
+
+	.show {
+		background-color: #ffffff !important;
+		color: #2f72ff !important;
+	}
+</style>

binární
static/chong.png


binární
static/icon/qrcode.png


binární
static/kou.png