Browse Source

Merge branch 'master' of http://git.zthymaoyi.com/gdc/yiliangyiyun-app

ccj 2 năm trước cách đây
mục cha
commit
b43b38cc4e

+ 2 - 2
config/index.js

@@ -3,11 +3,11 @@ const dev = {
 	// baseUrl: 'http://localhost:8080/',
 	// baseUrl: 'http://localhost:8080/',
 	// baseUrlNew: 'http://192.168.110.67:9100/',
 	// baseUrlNew: 'http://192.168.110.67:9100/',
 	// baseUrlNew: 'http://192.168.1.118:8090/',
 	// baseUrlNew: 'http://192.168.1.118:8090/',
-	baseUrlNew: 'http://192.168.110.55:9888/',
+	baseUrlNew: 'http://192.168.110.9:9888/',
 	// baseUrlNew: 'http://192.168.110.138:8090/',
 	// baseUrlNew: 'http://192.168.110.138:8090/',
 	// baseUrlNew: 'http://192.168.110.82:8099/',
 	// baseUrlNew: 'http://192.168.110.82:8099/',
 	// baseUrlNew: 'http://192.168.110.202:8090/',
 	// baseUrlNew: 'http://192.168.110.202:8090/',
-	baseUrlNew: 'http://192.168.110.138:8090/',
+	// baseUrlNew: 'http://192.168.110.138:8090/',
 	// 上传图片的
 	// 上传图片的
 	// baseUrlNew: 'https://api2.eliangeyun.com/',
 	// baseUrlNew: 'https://api2.eliangeyun.com/',
 	h5Appid: 'wxb66b599f7f61b46f',
 	h5Appid: 'wxb66b599f7f61b46f',

+ 48 - 5
pages/reimbursement/request_funds.vue

@@ -75,6 +75,33 @@
 				</view>
 				</view>
 			</view>
 			</view>
 		</view>
 		</view>
+		<view v-if="reType == 2 || expensesType == '2'" class='wrap margin-bottom'>
+			<view class="xinxi"  style="font-size: 28rpx; ">收款账户信息</view>
+			<view class="c-row">
+				<view class="title">收款方</view>
+				<view class="con-list">
+					<input v-model='detailData.payee' placeholder="输入收款方"></input>
+				</view>
+			</view>
+			<view class="c-row">
+				<view class="title">账户</view>
+				<view class="con-list">
+					<input v-model='detailData.accountNumber' placeholder="输入账户"></input>
+				</view>
+			</view>
+			<view class="c-row">
+				<view class="title">开户行</view>
+				<view class="con-list">
+					<input v-model='detailData.bank' placeholder="输入开户行"></input>
+				</view>
+			</view>
+			<view class="c-row">
+				<view class="title">开户支行</view>
+				<view class="con-list">
+					<input v-model='detailData.bankBranch' placeholder="输入开户支行"></input>
+				</view>
+			</view>
+		</view>
 		<u-toast ref="uToast" />
 		<u-toast ref="uToast" />
 		<view class="bottom-btn">
 		<view class="bottom-btn">
 			<view @click="submit()" class="btn">提交</view>
 			<view @click="submit()" class="btn">提交</view>
@@ -131,6 +158,11 @@
 		onLoad(options) {
 		onLoad(options) {
 			this.reType = options.reType
 			this.reType = options.reType
 			this.expensesType = options.expensesType
 			this.expensesType = options.expensesType
+			if(this.reType==2||this.expensesType==2){
+				uni.setNavigationBarTitle({
+						title: '请款'
+					});
+			}
 			this.id = options.id
 			this.id = options.id
 			if (this.id) {
 			if (this.id) {
 				this.getRequest()
 				this.getRequest()
@@ -148,7 +180,16 @@
 			if (this.contractNoInfo && this.detailData.purpose == "合同费用") {
 			if (this.contractNoInfo && this.detailData.purpose == "合同费用") {
 				this.detailData.contractId = this.contractNoInfo.id
 				this.detailData.contractId = this.contractNoInfo.id
 				this.detailData.contractNo = this.contractNoInfo.contractNo
 				this.detailData.contractNo = this.contractNoInfo.contractNo
-				this.$forceUpdate()
+				this.$api.doRequest('get', 'customerInfo/getPayeeInfo', {
+					contractNo: this.detailData.contractNo
+				}).then(res => {
+					this.detailData.payee=res.customerType=="企业客户"?res.compName:res.customerName
+					this.detailData.accountNumber=res.bankCard
+					this.detailData.bank=res.bankDeposit
+					this.detailData.bankBranch=res.bankDepositBranch
+					this.$forceUpdate()
+				})
+				
 			}
 			}
 		},
 		},
 		watch: {
 		watch: {
@@ -192,7 +233,6 @@
 								vesselId: '',
 								vesselId: '',
 							},
 							},
 							success: (uploadFileRes) => {
 							success: (uploadFileRes) => {
-								console.log('uploadFileRes',uploadFileRes)
 								console.log(JSON.parse(uploadFileRes.data))
 								console.log(JSON.parse(uploadFileRes.data))
 								var data = JSON.parse(uploadFileRes.data).data
 								var data = JSON.parse(uploadFileRes.data).data
 								this.$api.doRequest('post', '/appendix/api/saveFiles', {
 								this.$api.doRequest('post', '/appendix/api/saveFiles', {
@@ -303,9 +343,9 @@
 									if (res.data.code == 200) {
 									if (res.data.code == 200) {
 										uni.hideLoading()
 										uni.hideLoading()
 										that.$api.msg('提交成功')
 										that.$api.msg('提交成功')
-										uni.navigateTo({
-											url: '/pages/reimbursement/the_reimbursement'
-										})
+										uni.navigateBack({
+											delta: 1
+										});
 									} else {
 									} else {
 										that.$api.msg('提交失败')
 										that.$api.msg('提交失败')
 									}
 									}
@@ -486,4 +526,7 @@
 		display: flex;
 		display: flex;
 		justify-content: center;
 		justify-content: center;
 	}
 	}
+	.margin-bottom{
+		margin-bottom:84px;
+	}
 </style>
 </style>

+ 2 - 22
pages/reimbursement/selectContract.vue

@@ -45,7 +45,6 @@
 			this.newSelectList =  uni.getStorageSync('reContractNoList');
 			this.newSelectList =  uni.getStorageSync('reContractNoList');
 		},
 		},
 		onLoad(options) {
 		onLoad(options) {
-			this.flag = options.flag
 			this.compId = helper.erpWarehouse.compId 
 			this.compId = helper.erpWarehouse.compId 
 			this.getContractNoList()
 			this.getContractNoList()
 		},
 		},
@@ -81,35 +80,16 @@
 				});
 				});
 			},
 			},
 			getContractNoList() {
 			getContractNoList() {
-				if(this.flag){
-					this.$api.doRequest('get', '/warehouseBaseInfo/selectContractNoList', {
-						compId: this.compId,
-						flag: 5,
-						
-					}).then(res => {
-						if (res.data.code == 200) {
-							this.moreList = res.data.data
-							this.newList = res.data.data
-						}
-					})
-				}else{
+
 					this.$api.doRequest('get', '/warehouseBaseInfo/selectContractNoList', {
 					this.$api.doRequest('get', '/warehouseBaseInfo/selectContractNoList', {
 						compId: this.compId,
 						compId: this.compId,
-						flag: 7,
+						flag: 11,
 					}).then(res => {
 					}).then(res => {
 						if (res.data.code == 200) {
 						if (res.data.code == 200) {
 							this.newList = res.data.data
 							this.newList = res.data.data
-						}
-					})
-					this.$api.doRequest('get', '/warehouseBaseInfo/selectContractNoList', {
-						compId: this.compId,
-						flag: 6,
-					}).then(res => {
-						if (res.data.code == 200) {
 							this.moreList = res.data.data
 							this.moreList = res.data.data
 						}
 						}
 					})
 					})
-				}
 			},
 			},
 		}
 		}
 	}
 	}

+ 7 - 4
pages/task/audit/acquisitioncontract.vue

@@ -30,10 +30,10 @@
 			<u-form-item label-width='260' label="收购方电话" :borderBottom="false">
 			<u-form-item label-width='260' label="收购方电话" :borderBottom="false">
 				<u-input v-model="list.buyerPhone" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.buyerPhone" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' label="合营方" :borderBottom="false">
+			<u-form-item label-width='260' label="合营方" :borderBottom="false" v-if="list.seller">
 				<u-input v-model="list.seller" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.seller" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' label="合营方电话" :borderBottom="false">
+			<u-form-item label-width='260' label="合营方电话" :borderBottom="false" v-if="list.sellerPhone">
 				<u-input v-model="list.sellerPhone" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.sellerPhone" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
 			<u-form-item label-width='260' label="交货日期(起 - 止)" :borderBottom="false">
 			<u-form-item label-width='260' label="交货日期(起 - 止)" :borderBottom="false">
@@ -1039,8 +1039,9 @@
 	}
 	}
 
 
 	.form_top {
 	.form_top {
-		border-bottom: 1px solid #C7CAD6;
+		border-bottom: 1px solid #F5F6FA;
 		padding-bottom: 10px;
 		padding-bottom: 10px;
+		margin-bottom: 18rpx;
 		font-size: 30rpx;
 		font-size: 30rpx;
 		font-weight: 600;
 		font-weight: 600;
 	}
 	}
@@ -1050,6 +1051,7 @@
 		border-radius: 20rpx;
 		border-radius: 20rpx;
 		background: #F9F9FA;
 		background: #F9F9FA;
 		padding: 30rpx 20rpx;
 		padding: 30rpx 20rpx;
+		margin-top: 30rpx;
 	}
 	}
 
 
 	.label_css {
 	.label_css {
@@ -1110,6 +1112,7 @@
 		.headInfo_middle{
 		.headInfo_middle{
 			width: 70%;
 			width: 70%;
 			padding-left: 10px;
 			padding-left: 10px;
+			margin-top: 10px;
 		}
 		}
 		.headInfo_right{
 		.headInfo_right{
 			width: 20%;
 			width: 20%;
@@ -1144,7 +1147,7 @@
 		.headInfo_No{
 		.headInfo_No{
 			color: #878C9C;
 			color: #878C9C;
 			font-size: 13px;
 			font-size: 13px;
-			margin-top: 10px;
+			margin-top: 6px;
 		}
 		}
 	}
 	}
 </style>
 </style>

+ 1 - 1
pages/task/audit/charge_against_revenue.vue

@@ -234,7 +234,7 @@
 					<view class="right-bottom">
 					<view class="right-bottom">
 						{{auditMind.length}}/100个字
 						{{auditMind.length}}/100个字
 					</view>
 					</view>
-					<u-input class="" v-model='auditMind' placeholder="请在此输入审核意见" type="textarea" height="414"
+					<u-input :clearable='false' class="" v-model='auditMind' placeholder="请在此输入审核意见" type="textarea" height="414"
 						maxlength="100" />
 						maxlength="100" />
 				</view>
 				</view>
 				<view @click='close()' class="cancel">取消</view>
 				<view @click='close()' class="cancel">取消</view>

+ 0 - 19
pages/task/audit/charge_against_revenue_detail.vue

@@ -211,25 +211,6 @@
 				<view class="row-line" v-if="index!= auditList.length - 1"></view>
 				<view class="row-line" v-if="index!= auditList.length - 1"></view>
 			</view>
 			</view>
 		</view>
 		</view>
-		<view v-if='show' class="shade">
-			<view class="wrap">
-				<view class="alert-top">
-					<view class="title">
-						{{title}}
-					</view>
-					<u-icon name="close" class="close" color="#8890B1" @click="close()"></u-icon>
-				</view>
-				<view class="u-textarea-style">
-					<view class="right-bottom">
-						{{auditMind.length}}/100个字
-					</view>
-					<u-input class="" v-model='auditMind' placeholder="请在此输入审核意见" type="textarea" height="414"
-						maxlength="100" />
-				</view>
-				<view @click='close()' class="cancel">取消</view>
-				<view @click='passSubmit()' class="confirm">确定</view>
-			</view>
-		</view>
 		<u-toast ref="uToast" />
 		<u-toast ref="uToast" />
 		<view style='padding:10px;' class='flex bottom-btn'>
 		<view style='padding:10px;' class='flex bottom-btn'>
 			<u-button @click='fanhui' type="success" class="btn2">返回</u-button>
 			<u-button @click='fanhui' type="success" class="btn2">返回</u-button>

+ 9 - 7
pages/task/audit/freight_setting_approval.vue

@@ -41,10 +41,12 @@
 					</view>
 					</view>
 
 
 				</u-form-item>
 				</u-form-item>
-				<u-form-item label="运费(元/吨)" prop="tranPrice" label-width="250">
-					<u-input v-if='list.billingMethod==1' v-model="list.tranPriceIng" input-align="right"
+				<u-form-item label="运费(元)" prop="tranPrice" label-width="250">
+					<u-input v-if='list.billingMethod==1&&list.tranType=="汽运"' v-model="list.tranPriceIng" input-align="right"
+						placeholder="请输入运费单价" />
+					<u-input v-else-if='list.billingMethod!=1&&list.tranType=="汽运"' v-model="list.tranPriceIngCar" input-align="right" placeholder="请输入运费单价" />
+					<u-input v-else v-model="list.tranPriceIng" input-align="right"
 						placeholder="请输入运费单价" />
 						placeholder="请输入运费单价" />
-					<u-input v-else v-model="list.tranPriceIngCar" input-align="right" placeholder="请输入运费单价" />
 				</u-form-item>
 				</u-form-item>
 			</u-form>
 			</u-form>
 		</view>
 		</view>
@@ -103,8 +105,8 @@
 			},
 			},
 			passSubmit() {
 			passSubmit() {
 				var that = this
 				var that = this
-				if (!this.list.tranPriceIng && this.list.billingMethod == 1 || !this.list.tranPriceIngCar && this.list
-					.billingMethod == 2) {
+				if (!this.list.tranPriceIng && this.list.billingMethod == 1&&this.list.tranType=="汽运" || !this.list.tranPriceIngCar && this.list
+					.billingMethod == 2&&this.list.tranType=="汽运"||!this.list.tranPriceIng &&this.list.tranType!="汽运") {
 					this.$api.msg('运费单价不能为空')
 					this.$api.msg('运费单价不能为空')
 					return
 					return
 				}
 				}
@@ -119,7 +121,7 @@
 				tranProcessInfo.billingMethod = that.list.billingMethod
 				tranProcessInfo.billingMethod = that.list.billingMethod
 				tranProcessInfo.reviewer = that.userInfo.userName
 				tranProcessInfo.reviewer = that.userInfo.userName
 				tranProcessInfo.tranTypeKey = that.list.tranTypeKey
 				tranProcessInfo.tranTypeKey = that.list.tranTypeKey
-				if (that.list.billingMethod == 1) {
+				if (that.list.billingMethod == 1&&that.list.tranType=="汽运"||that.list.tranType!="汽运") {
 					tranProcessInfo.tranPriceIng = that.list.tranPriceIng
 					tranProcessInfo.tranPriceIng = that.list.tranPriceIng
 					url = '/tranProcessInfo/api/setUpTranPrice'
 					url = '/tranProcessInfo/api/setUpTranPrice'
 				} else {
 				} else {
@@ -134,7 +136,7 @@
 								if (that.everyCheck) {
 								if (that.everyCheck) {
 									helper.setAudit(that.list)
 									helper.setAudit(that.list)
 								} else {
 								} else {
-									// uni.navigateBack()
+									uni.navigateBack()
 								}
 								}
 								uni.hideLoading()
 								uni.hideLoading()
 							}, 1000);
 							}, 1000);

+ 708 - 4
pages/task/audit/freight_settlement_approval.vue

@@ -66,8 +66,10 @@
 						<view class="textInfo">{{item.transportPrice}}元/吨</view>
 						<view class="textInfo">{{item.transportPrice}}元/吨</view>
 					</view>
 					</view>
 					<view class="car-type-item">
 					<view class="car-type-item">
-						<view class="center">扣</view>
-						<view class="textInfo">{{item.deductionAmount}}元</view>
+						<view v-if='item.deductionAmount>=0' class="center">扣</view>
+						<view v-if='item.deductionAmount<0' class="center">加</view>
+						<view v-if='item.deductionAmount<0' class="textInfo">{{-item.deductionAmount}}元</view>
+						<view v-if='item.deductionAmount>=0' class="textInfo">{{item.deductionAmount}}元</view>
 					</view>
 					</view>
 					<view class="car-type-item">
 					<view class="car-type-item">
 						<view class="right">付</view>
 						<view class="right">付</view>
@@ -77,6 +79,72 @@
 
 
 			</view>
 			</view>
 		</view>
 		</view>
+		<u-form ref="uForm">
+			<view class="form_top">流程</view>
+			<view class="content2">
+				<view v-for="(item,index) in auditList" :key='index' class="audit">
+					<view class="row">
+						<view class="row-left">
+							<view class="item1">
+								<view class="item-content">{{item.operatorTitle}}</view>
+								<view v-if="item.status=='success'" class='status success'>
+									<u-icon name="checkmark" color="#2979ff" size="24"></u-icon>
+								</view>
+								<view v-if="item.status=='error'" class='status error'>
+									<u-icon name="close" color="rgb(245, 108, 108)" size="24"></u-icon>
+								</view>
+								<view v-if="item.status=='question'" class='status question'>
+									<u-icon name="question" color="#f9ae3d" size="24"></u-icon>
+								</view>
+							</view>
+						</view>
+						<view class="row-right">
+							<view class="right-item">
+								<view class="item2">
+									<view class="name">{{item.desc}}
+									</view>
+									<!-- <view class='time'>{{item.updateDate}}</view> -->
+									<view v-if="item.status=='success'" class="status success">
+										{{item.commonStaffs1?item.staffscontent:item.operatorName}}<text
+											v-if='!item.commonStaffs1&&index!=0'>已审核</text></view>
+									<view v-if="item.status=='error'" class="status error">
+										{{item.commonStaffs1?item.staffscontent:item.operatorName}}<text
+											v-if='!item.commonStaffs1'>{{item.workflowHistoricTasks ? "已驳回":''}}</text>
+									</view>
+									<view v-if="item.status=='question'" class="status question">
+										{{item.commonStaffs1?item.staffscontent:''}}<text
+											v-if='!item.commonStaffs1'>未审核</text></view>
+									<!-- <view  class="status success">吕波(已审核)</view> -->
+								</view>
+								<view v-if='index==0||item.workflowHistoricTasks&&item.workflowHistoricTasks.length>0'
+									class='time'>
+									{{item.updateDate}}
+								</view>
+							</view>
+							<view v-if='item.auditMind' class="right-content">
+								{{item.auditMind}}
+							</view>
+						</view>
+						<view v-if='item.commonStaffs1' class="right">
+							<u-icon @click='showcontent(item)' :name="item.showflow?'arrow-up':'arrow-down'" size="28">
+							</u-icon>
+						</view>
+					</view>
+					<view v-if='item.showflow' style='padding:10px 0 0 50px;'>
+						<view class='row2'>
+							<view v-for='item1 in item.commonStaffs1' style='margin:5px;text-align:center;'>
+								<view class="item-content">
+									<u-icon v-if='item1.status' name="checkmark" color="#fff" size="14"></u-icon>
+									<u-icon v-if='!item1.status' name="question" color="#f9ae3d" size="14"></u-icon>
+								</view>
+								<view class="name">{{item1.staffName}}</view>
+							</view>
+						</view>
+					</view>
+					<view class="row-line" v-if="index!= auditList.length - 1"></view>
+				</view>
+			</view>
+		</u-form>
 		<view v-if='show' class="shade">
 		<view v-if='show' class="shade">
 			<view class="wrap">
 			<view class="wrap">
 				<view class="alert-top">
 				<view class="alert-top">
@@ -118,6 +186,7 @@
 				title: '',
 				title: '',
 				show: false,
 				show: false,
 				height: 200,
 				height: 200,
+				auditList:[],
 				auditMind: '',
 				auditMind: '',
 				autoHeight: true,
 				autoHeight: true,
 				border: false,
 				border: false,
@@ -149,6 +218,137 @@
 					if (res.data.code == 200) {
 					if (res.data.code == 200) {
 						this.list = res.data.data
 						this.list = res.data.data
 						// console.log(this.list, 124)
 						// console.log(this.list, 124)
+						// 查流程
+						this.$api.doRequest('get', '/workflow/query/workflowDefinitions', {
+							businessCode: 'TRANSPORTATION-SETTLEMENT-REPORT',
+							tmpCompId: uni.getStorageSync('pcUserInfo').compId
+						}).then(res1 => {
+							this.$api.doRequest('get', '/commonUser/getHis', {
+								workflowId: res1.data.data[0].id,
+								businessKey: this.id
+							}).then(response => {
+								uni.hideLoading()
+								for (let i = 0; i < response.data.data.length; i++) {
+									this.$set(response.data.data[i], 'status', 'question')
+									console.log(response.data.data[i].workflowHistoricTasks, i)
+									if (response.data.data[i].commonStaffs) {
+										response.data.data[i].showflow = false
+										response.data.data[i].operatorTitle = response.data.data[i]
+											.desc.substring(0, 2)
+										response.data.data[i].operatorName = response.data.data[i]
+											.desc
+										response.data.data[i].staffscontent = '共' + response.data
+											.data[i].commonStaffs.length + '人,当前审核' + response.data
+											.data[i].workflowHistoricTasks.length + '人'
+										if (response.data.data[i].workflowHistoricTasks && response
+											.data.data[i].workflowHistoricTasks.length > 0) {
+											if (response.data.data[i].workflowHistoricTasks
+												.length != response.data.data[i].commonStaffs
+												.length) {
+												// response.data.data[i].status='question'
+												this.$set(response.data.data[i], 'status',
+													'question')
+											} else {
+												this.$set(response.data.data[i], 'status',
+													'success')
+												// response.data.data[i].status='success'
+											}
+											response.data.data[i].workflowlen = response.data.data[
+												i].workflowHistoricTasks.length
+											var workflowdata = response.data.data[i]
+												.workflowHistoricTasks
+											var staffsdata = response.data.data[i].commonStaffs
+											for (let q = 0; q < staffsdata.length; q++) {
+												staffsdata[q].status = false
+												staffsdata[q].staffTitle = staffsdata[q].staffName
+												for (let k = 0; k < workflowdata.length; k++) {
+													if (staffsdata[q].staffId == workflowdata[k]
+														.operatorId) {
+														staffsdata[q].status = true
+													}
+												}
+											}
+										}
+										response.data.data[i].commonStaffs1 = response.data.data[i]
+											.commonStaffs
+									} else {
+										if (response.data.data[i].workflowHistoricTasks && response
+											.data.data[i].workflowHistoricTasks.length > 0) {
+											var len = response.data.data[i].workflowHistoricTasks
+												.length - 1
+											if (response.data.data[i].workflowHistoricTasks[len]
+												.approved) {
+												this.$set(response.data.data[i], 'status',
+													'success')
+											} else {
+												this.$set(response.data.data[i], 'status', 'error')
+											}
+											response.data.data[i].operatorTitle = response.data
+												.data[i].workflowHistoricTasks[len].operatorName
+												.substring(response.data.data[i]
+													.workflowHistoricTasks[0].operatorName.length -
+													2)
+											response.data.data[i].operatorName = response.data
+												.data[i].workflowHistoricTasks[len].operatorName
+											var time = new Date(response.data.data[i]
+												.workflowHistoricTasks[len].claimTime)
+											.getTime()
+											response.data.data[i].updateDate = this.$u.timeFormat(
+												time, 'mm.dd hh:MM')
+											response.data.data[i].auditMind = response.data.data[i]
+												.workflowHistoricTasks[len].auditMind
+										} else {
+											this.$set(response.data.data[i], 'status', 'question')
+											// response.data.data[i].status='question'
+											if (response.data.data[i].desc == '总经理助理审核') {
+												response.data.data[i].operatorTitle = '总助'
+											} else if (response.data.data[i].desc == '杜大光审核') {
+												response.data.data[i].operatorTitle = '大光'
+											} else {
+												response.data.data[i].operatorTitle = response.data
+													.data[i].desc.substring(0, 2)
+											}
+						
+											response.data.data[i].operatorName = response.data
+												.data[i].desc
+											var time1 = new Date(response.data.data[i].updateDate)
+												.getTime()
+											response.data.data[i].updateDate = this.$u.timeFormat(
+												time1, 'mm.dd hh:MM')
+											response.data.data[i].auditMind = ''
+										}
+									}
+						
+								}
+								console.log(response.data.data)
+								for(let i = 0 ;i<response.data.data.length;i++){
+									if(response.data.data[i].status == "error"){
+										this.auditCheck = "error"
+										break;
+									}else if(response.data.data[i].status == "question"){
+										this.auditCheck = "question"
+										break;
+									}else{ 
+										this.auditCheck = "success"
+									}
+								}
+								this.auditList = response.data.data
+								var time2 = new Date(this.list[0].requestDate).getTime()
+								var time3 = this.$u.timeFormat(time2, 'mm.dd hh:MM')
+								this.auditList.unshift({
+									operatorTitle: this.list[0].requester.substring(0, 2),
+									operatorName: this.list[0].requester,
+									updateDate: time3,
+									auditMind: '',
+									desc: '发起申请',
+									showflow: false,
+									commonStaffs1: null,
+									commonStaffs: null,
+									workflowHistoricTasks: [],
+									status: 'success'
+								})
+							})
+						})
 					}
 					}
 				})
 				})
 				// this.$api.doRequest('get', '/tranSettlementReport/getInfo', {
 				// this.$api.doRequest('get', '/tranSettlementReport/getInfo', {
@@ -174,6 +374,7 @@
 				// 		})
 				// 		})
 				// 	}
 				// 	}
 				// })
 				// })
+				
 			},
 			},
 			close() {
 			close() {
 				this.show = false
 				this.show = false
@@ -189,7 +390,7 @@
 			// 驳回
 			// 驳回
 			rejectSubmit() {
 			rejectSubmit() {
 				var that = this
 				var that = this
-				if (!this.rejectInfo) {
+				if (!this.auditMind) {
 					this.$api.msg('驳回原因不能为空!')
 					this.$api.msg('驳回原因不能为空!')
 				} else {
 				} else {
 					this.show = false
 					this.show = false
@@ -262,7 +463,19 @@
 		margin: 10rpx;
 		margin: 10rpx;
 		padding: 20rpx 20rpx 230rpx 20rpx;
 		padding: 20rpx 20rpx 230rpx 20rpx;
 	}
 	}
-
+	.u-form {
+		margin-bottom: 20rpx;
+		background: #fff;
+		border-radius: 10px;
+		padding: 30rpx 10px;
+	
+		.u-form-item {
+			line-height: 30px;
+			padding: 0px 0;
+			font-size: 26rpx;
+			color: #878C9C;
+		}
+	}
 	.content {
 	.content {
 		.top {
 		.top {
 			display: flex;
 			display: flex;
@@ -527,4 +740,495 @@
 		padding: 20rpx 30rpx;
 		padding: 20rpx 30rpx;
 		position: relative;
 		position: relative;
 	}
 	}
+	.container {
+		padding: 20rpx 20rpx 250rpx 20rpx;
+	}
+	
+	.u-form {
+		margin-bottom: 20rpx;
+		background: #fff;
+		border-radius: 10px;
+		padding: 30rpx 10px;
+	
+		.u-form-item {
+			line-height: 30px;
+			padding: 0px 0;
+			font-size: 26rpx;
+			color: #878C9C;
+		}
+	}
+	
+	.content {
+		margin-top: 30rpx;
+	
+		.top {
+			display: flex;
+			justify-content: space-between;
+		}
+	
+		.content-item {
+			border-radius: 20rpx;
+			background: white;
+			padding: 40rpx 20rpx;
+			margin-bottom: 30rpx;
+		}
+	
+		.title {
+			font-size: 32rpx;
+			font-weight: 600;
+			color: #333333;
+			text-align: left;
+			margin: 20rpx 0;
+		}
+	
+		.car-container {
+			border-bottom: 2rpx solid #EEEEEE;
+		}
+	
+		.car-type-item {
+			font-size: 28rpx;
+			margin: 20rpx 0;
+			color: #878C9C;
+		}
+	
+		.weightInfoCss {
+			font-size: 28rpx;
+			color: #333333;
+			font-weight: 500;
+		}
+	
+		.row {
+			display: flex;
+			justify-content: space-between;
+			// .right,
+			// input {
+			// 	font-size: 28rpx;
+			// 	// color: #333333;
+			// }
+		}
+	
+		.money {
+			font-size: 32rpx;
+			font-weight: 500;
+			margin-bottom: 30rpx;
+		}
+	
+		.moneyInfo {
+			color: #22C572;
+			font-size: 32rpx;
+		}
+	}
+	
+	.bottom-btn {
+		width: 100%;
+		position: fixed;
+		bottom: 0;
+		display: flex;
+		z-index: 2;
+		left: 0;
+		background-color: #f8f8f8;
+		flex-direction: column;
+	
+		.btn1,
+		.btn2 {
+			width: 100%;
+			margin-bottom: 26rpx;
+			border-radius: 90rpx;
+		}
+	
+		.btn1 {
+			background: white;
+			color: #00C265;
+		}
+	}
+	
+	.topInfo {
+		height: 210rpx;
+		background: linear-gradient(270deg, #22C572 0%, #34DE8A 100%);
+		padding: 30rpx;
+	
+		.topInfo-item {
+			height: 150rpx;
+			background-color: #FFFFFF;
+			border-radius: 20rpx;
+			padding: 40rpx;
+	
+			.logo {
+				width: 40rpx;
+				height: 40rpx;
+				margin-top: 8rpx;
+			}
+	
+			.infoText {
+				font-size: 36rpx;
+				font-weight: 600;
+				margin-left: 20rpx;
+			}
+	
+			.infoData {
+				color: #878C9C;
+				font-size: 26rpx;
+				margin-top: 10rpx;
+			}
+		}
+	}
+	
+	.shade {
+		position: fixed;
+		top: 0;
+		left: 0;
+		height: 100%;
+		width: 100%;
+		background: rgba(0, 0, 0, 0.4);
+		z-index: 3;
+	
+		.wrap {
+			position: absolute;
+			left: 0;
+			top: 0;
+			right: 0;
+			bottom: 0;
+			margin: auto;
+			background: #fff;
+			width: calc(100% - 198rpx);
+			height: 700rpx;
+			border-radius: 20rpx;
+	
+			.alert-top {
+				padding: 33rpx;
+				display: flex;
+				justify-content: center;
+				align-items: center;
+				position: relative;
+			}
+	
+			.title {
+				font-size: 32rpx;
+				font-weight: 600;
+				color: #333333;
+			}
+	
+			.close {
+				position: absolute;
+				right: 33rpx;
+			}
+		}
+	}
+	
+	.cancel,
+	.confirm {
+		position: absolute;
+		display: inline-block;
+		width: 50%;
+		text-align: center;
+		bottom: 0;
+		padding: 10px;
+		border-top: 1px solid #eee;
+		font-size: 34rpx;
+	}
+	
+	.cancel {
+		left: 0;
+		border-right: 1px solid #eee;
+		color: #AFB3BF;
+	}
+	
+	.confirm {
+		right: 0;
+		color: #22C572;
+	}
+	
+	.textarea {
+		margin: 18rpx auto;
+		width: 100%;
+		background: #F9F9FA;
+		border-radius: 10px;
+		border: 1px solid #EEEEEE;
+		font-size: 28rpx;
+		padding: 10px;
+	}
+	
+	.textCss {
+		display: flex;
+		justify-content: flex-end;
+		width: 100%;
+		text-align: right;
+		color: #333333;
+	}
+	
+	.u-textarea-style {
+		margin: 20rpx;
+		background: #F9F9FA;
+		border-radius: 10px;
+		border: 1px solid #EEEEEE;
+		padding: 10rpx 20rpx;
+		position: relative;
+	
+		height:240px;
+		/deep/.uni-textarea-textarea{
+			width: 80%;
+		}
+		.right-bottom {
+			position: absolute;
+			right: 20rpx;
+			bottom: 20rpx;
+			color: #AFB3BF;
+		}
+	}
+	
+	/deep/.u-input__textarea {
+		height: 300rpx !important;
+	}
+	
+	.content2 {
+		background: white;
+		margin: 20rpx 0;
+		border-radius: 20rpx;
+		padding: 20rpx;
+	
+		.row {
+			display: flex;
+	
+			.row-left {
+				display: flex;
+				align-items: center;
+	
+				.item1 {
+					position: relative;
+	
+					.item-content {
+						background: #617AE0;
+						width: 44px;
+						height: 44px;
+						border-radius: 22px;
+						line-height: 44px;
+						text-align: center;
+						font-size: 15px;
+						color: #fff;
+					}
+	
+					.status {
+						position: absolute;
+						border-radius: 50%;
+						padding: 0px 2px;
+						right: -3px;
+						bottom: -3px;
+						background: #fff;
+					}
+	
+					.status.success {
+						border: 1px solid rgb(60, 156, 255);
+					}
+	
+					.status.error {
+						border: 1px solid rgb(245, 108, 108);
+					}
+	
+					.status.question {
+						border: 1px solid #f9ae3d;
+					}
+				}
+	
+			}
+	
+			.row-right {
+				width: 80%;
+				// color: #B0B1B5;
+				margin-top: 10px;
+	
+				.right-content {
+					background: #F2F3F7;
+					margin-left: 10px;
+					margin-top: 10px;
+					padding: 10px;
+					border-radius: 5px;
+					color: #B0B1B5;
+				}
+	
+				.right-item {
+					display: flex;
+					justify-content: space-between;
+	
+					.time {
+						color: #999;
+					}
+	
+					.item2 {
+						margin-left: 20rpx;
+						margin-top: -7px;
+	
+						.name {
+							font-size: 28rpx;
+							font-weight: 800;
+							margin-bottom: 4px;
+						}
+	
+						.status.success {
+							color: #6CC48C;
+						}
+	
+						.status.error {
+							color: rgb(245, 108, 108);
+						}
+	
+						.status.question {
+							color: #f9ae3d;
+						}
+					}
+				}
+			}
+		}
+	
+		.row2 {
+			display: flex;
+	
+			.item-content {
+				background: #22C572;
+				width: 30px;
+				height: 30px;
+				border-radius: 50%;
+				line-height: 30px;
+				text-align: center;
+				font-size: 12px;
+				color: #fff;
+				padding: 0 2px;
+				margin: 0 auto;
+			}
+	
+			.status {
+				position: absolute;
+				top: 0;
+				right: 0;
+			}
+		}
+	
+		.row-line {
+			width: 1px;
+			height: 30px;
+			background: #F2F2F2;
+			margin: 10rpx 50rpx;
+	
+		}
+	
+		.audit {
+			margin-top: 20rpx;
+		}
+	}
+	
+	.form_top {
+		border-bottom: 1px solid #C7CAD6;
+		padding-bottom: 10px;
+		font-size: 30rpx;
+		font-weight: 600;
+	}
+	.form_view{
+		margin: 20rpx 0;
+		border-radius: 20rpx;
+		background: #F9F9FA;
+		padding: 30rpx 20rpx;
+	}
+	.label_css{
+		font-size: 26rpx;
+		color: #878C9C;
+	}
+	.input_css{
+		font-size: 20rpx;
+	}
+	/deep/.uni-textarea-wrapper{
+		height:200px;
+	}
+	
+	// .fujian_title{
+	// 	font-size: 34rpx;
+	// 	margin-top: 20px;
+	// 	font-weight: 600;
+	// 	// margin-left: 10px;
+	// }
+	.headInfo{
+		height: 100px;
+		background-color: #FFFFFF;
+		margin-bottom: 20rpx;
+		border-radius: 10px;
+		padding: 30rpx 10px;
+		display: flex;
+		.headInfo_left{
+			width: 10%;
+			line-height: 60px;
+			text-align: center;
+		}
+		.headInfo_middle{
+			width: 70%;
+			padding-left: 10px;
+		}
+		.headInfo_right{
+			width: 20%;
+			line-height: 60px;
+			.char_a{
+				color: #22C572;
+			}
+			.char_b{
+				 color: #FE6430;
+			}
+			.char_c{
+				color: #FB2323;
+			}
+			.char_a,.char_b,.char_c{
+				font-size: 16px;
+			}
+		}
+		.adopt{
+			position: absolute;
+			right: 30px;
+			top: 60px;
+			.adopt_img{
+				width: 90px;
+				height: 90px;
+			}
+		}
+		.headInfo_title{
+			font-size: 19px;
+			color: #333333;
+			font-weight: 600;
+		}
+		.headInfo_No{
+			color: #878C9C;
+			font-size: 13px;
+			margin-top: 10px;
+		}
+	}
+	
+	.img_item {
+		display: flex;
+		width: 100%;
+		margin: 10px 0;
+		padding: 0 10rpx;
+		.imgsign{
+			width: 25px;
+			height: 25px;
+			margin-top: 6px;
+		}
+		.char_css {
+			font-size: 28rpx;
+			font-weight: 600;
+			display: -webkit-box;
+			overflow: hidden;
+			/*! autoprefixer: off; */
+			-webkit-box-orient: vertical;
+			-webkit-line-clamp: 1;
+			-webkit-box-orient: vertical;
+			text-overflow: ellipsis;
+			word-break: break-all;
+		}
+		.img_size{
+			color: #B0B3BF;
+			font-size: 12px;
+			margin-top: 5px;
+		}
+	
+		.img_dowload {
+			width: 14%;
+			color: #22C572;
+			text-align: right;
+		}
+	}
 </style>
 </style>

+ 336 - 2
pages/task/audit/freight_settlement_details.vue

@@ -59,8 +59,10 @@
 						<view class="textInfo">{{item.transportPrice}}元/吨</view>
 						<view class="textInfo">{{item.transportPrice}}元/吨</view>
 					</view>
 					</view>
 					<view class="car-type-item">
 					<view class="car-type-item">
-						<view class="center">扣</view>
-						<view class="textInfo">{{item.deductionAmount}}元</view>
+						<view v-if='item.deductionAmount>=0' class="center">扣</view>
+						<view v-if='item.deductionAmount<0' class="center">加</view>
+						<view v-if='item.deductionAmount<0' class="textInfo">{{-item.deductionAmount}}元</view>
+						<view v-if='item.deductionAmount>=0' class="textInfo">{{item.deductionAmount}}元</view>
 					</view>
 					</view>
 					<view class="car-type-item">
 					<view class="car-type-item">
 						<view class="right">付</view>
 						<view class="right">付</view>
@@ -69,6 +71,72 @@
 				</view>
 				</view>
 			</view>
 			</view>
 		</view>
 		</view>
+		<u-form ref="uForm">
+			<view class="form_top">流程</view>
+			<view class="content2">
+				<view v-for="(item,index) in auditList" :key='index' class="audit">
+					<view class="row">
+						<view class="row-left">
+							<view class="item1">
+								<view class="item-content">{{item.operatorTitle}}</view>
+								<view v-if="item.status=='success'" class='status success'>
+									<u-icon name="checkmark" color="#2979ff" size="24"></u-icon>
+								</view>
+								<view v-if="item.status=='error'" class='status error'>
+									<u-icon name="close" color="rgb(245, 108, 108)" size="24"></u-icon>
+								</view>
+								<view v-if="item.status=='question'" class='status question'>
+									<u-icon name="question" color="#f9ae3d" size="24"></u-icon>
+								</view>
+							</view>
+						</view>
+						<view class="row-right">
+							<view class="right-item">
+								<view class="item2">
+									<view class="name">{{item.desc}}
+									</view>
+									<!-- <view class='time'>{{item.updateDate}}</view> -->
+									<view v-if="item.status=='success'" class="status success">
+										{{item.commonStaffs1?item.staffscontent:item.operatorName}}<text
+											v-if='!item.commonStaffs1&&index!=0'>已审核</text></view>
+									<view v-if="item.status=='error'" class="status error">
+										{{item.commonStaffs1?item.staffscontent:item.operatorName}}<text
+											v-if='!item.commonStaffs1'>{{item.workflowHistoricTasks ? "已驳回":''}}</text>
+									</view>
+									<view v-if="item.status=='question'" class="status question">
+										{{item.commonStaffs1?item.staffscontent:''}}<text
+											v-if='!item.commonStaffs1'>未审核</text></view>
+									<!-- <view  class="status success">吕波(已审核)</view> -->
+								</view>
+								<view v-if='index==0||item.workflowHistoricTasks&&item.workflowHistoricTasks.length>0'
+									class='time'>
+									{{item.updateDate}}
+								</view>
+							</view>
+							<view v-if='item.auditMind' class="right-content">
+								{{item.auditMind}}
+							</view>
+						</view>
+						<view v-if='item.commonStaffs1' class="right">
+							<u-icon @click='showcontent(item)' :name="item.showflow?'arrow-up':'arrow-down'" size="28">
+							</u-icon>
+						</view>
+					</view>
+					<view v-if='item.showflow' style='padding:10px 0 0 50px;'>
+						<view class='row2'>
+							<view v-for='item1 in item.commonStaffs1' style='margin:5px;text-align:center;'>
+								<view class="item-content">
+									<u-icon v-if='item1.status' name="checkmark" color="#fff" size="14"></u-icon>
+									<u-icon v-if='!item1.status' name="question" color="#f9ae3d" size="14"></u-icon>
+								</view>
+								<view class="name">{{item1.staffName}}</view>
+							</view>
+						</view>
+					</view>
+					<view class="row-line" v-if="index!= auditList.length - 1"></view>
+				</view>
+			</view>
+		</u-form>
 		<u-toast ref="uToast" />
 		<u-toast ref="uToast" />
 		<view style='padding:10px;' class='flex bottom-btn'>
 		<view style='padding:10px;' class='flex bottom-btn'>
 			<u-button @click="fanHui" type="success" class="btn1" hover-class='none'>返回</u-button>
 			<u-button @click="fanHui" type="success" class="btn1" hover-class='none'>返回</u-button>
@@ -85,6 +153,7 @@
 				list: {
 				list: {
 					approveStatus: "",
 					approveStatus: "",
 				},
 				},
+				auditList:[],
 				customerName: "", //客户
 				customerName: "", //客户
 				shippingAddress: "", //发货地址
 				shippingAddress: "", //发货地址
 				receivingAddress: "", //收货地址
 				receivingAddress: "", //收货地址
@@ -102,6 +171,137 @@
 					if (res.data.code == 200) {
 					if (res.data.code == 200) {
 						this.list = res.data.data
 						this.list = res.data.data
 						// console.log(this.list, 124)
 						// console.log(this.list, 124)
+						// 查流程
+						this.$api.doRequest('get', '/workflow/query/workflowDefinitions', {
+							businessCode: 'TRANSPORTATION-SETTLEMENT-REPORT',
+							tmpCompId: uni.getStorageSync('pcUserInfo').compId
+						}).then(res1 => {
+							this.$api.doRequest('get', '/commonUser/getHis', {
+								workflowId: res1.data.data[0].id,
+								businessKey: this.id
+							}).then(response => {
+								uni.hideLoading()
+								for (let i = 0; i < response.data.data.length; i++) {
+									this.$set(response.data.data[i], 'status', 'question')
+									console.log(response.data.data[i].workflowHistoricTasks, i)
+									if (response.data.data[i].commonStaffs) {
+										response.data.data[i].showflow = false
+										response.data.data[i].operatorTitle = response.data.data[i]
+											.desc.substring(0, 2)
+										response.data.data[i].operatorName = response.data.data[i]
+											.desc
+										response.data.data[i].staffscontent = '共' + response.data
+											.data[i].commonStaffs.length + '人,当前审核' + response.data
+											.data[i].workflowHistoricTasks.length + '人'
+										if (response.data.data[i].workflowHistoricTasks && response
+											.data.data[i].workflowHistoricTasks.length > 0) {
+											if (response.data.data[i].workflowHistoricTasks
+												.length != response.data.data[i].commonStaffs
+												.length) {
+												// response.data.data[i].status='question'
+												this.$set(response.data.data[i], 'status',
+													'question')
+											} else {
+												this.$set(response.data.data[i], 'status',
+													'success')
+												// response.data.data[i].status='success'
+											}
+											response.data.data[i].workflowlen = response.data.data[
+												i].workflowHistoricTasks.length
+											var workflowdata = response.data.data[i]
+												.workflowHistoricTasks
+											var staffsdata = response.data.data[i].commonStaffs
+											for (let q = 0; q < staffsdata.length; q++) {
+												staffsdata[q].status = false
+												staffsdata[q].staffTitle = staffsdata[q].staffName
+												for (let k = 0; k < workflowdata.length; k++) {
+													if (staffsdata[q].staffId == workflowdata[k]
+														.operatorId) {
+														staffsdata[q].status = true
+													}
+												}
+											}
+										}
+										response.data.data[i].commonStaffs1 = response.data.data[i]
+											.commonStaffs
+									} else {
+										if (response.data.data[i].workflowHistoricTasks && response
+											.data.data[i].workflowHistoricTasks.length > 0) {
+											var len = response.data.data[i].workflowHistoricTasks
+												.length - 1
+											if (response.data.data[i].workflowHistoricTasks[len]
+												.approved) {
+												this.$set(response.data.data[i], 'status',
+													'success')
+											} else {
+												this.$set(response.data.data[i], 'status', 'error')
+											}
+											response.data.data[i].operatorTitle = response.data
+												.data[i].workflowHistoricTasks[len].operatorName
+												.substring(response.data.data[i]
+													.workflowHistoricTasks[0].operatorName.length -
+													2)
+											response.data.data[i].operatorName = response.data
+												.data[i].workflowHistoricTasks[len].operatorName
+											var time = new Date(response.data.data[i]
+												.workflowHistoricTasks[len].claimTime)
+											.getTime()
+											response.data.data[i].updateDate = this.$u.timeFormat(
+												time, 'mm.dd hh:MM')
+											response.data.data[i].auditMind = response.data.data[i]
+												.workflowHistoricTasks[len].auditMind
+										} else {
+											this.$set(response.data.data[i], 'status', 'question')
+											// response.data.data[i].status='question'
+											if (response.data.data[i].desc == '总经理助理审核') {
+												response.data.data[i].operatorTitle = '总助'
+											} else if (response.data.data[i].desc == '杜大光审核') {
+												response.data.data[i].operatorTitle = '大光'
+											} else {
+												response.data.data[i].operatorTitle = response.data
+													.data[i].desc.substring(0, 2)
+											}
+						
+											response.data.data[i].operatorName = response.data
+												.data[i].desc
+											var time1 = new Date(response.data.data[i].updateDate)
+												.getTime()
+											response.data.data[i].updateDate = this.$u.timeFormat(
+												time1, 'mm.dd hh:MM')
+											response.data.data[i].auditMind = ''
+										}
+									}
+						
+								}
+								console.log(response.data.data)
+								for(let i = 0 ;i<response.data.data.length;i++){
+									if(response.data.data[i].status == "error"){
+										this.auditCheck = "error"
+										break;
+									}else if(response.data.data[i].status == "question"){
+										this.auditCheck = "question"
+										break;
+									}else{ 
+										this.auditCheck = "success"
+									}
+								}
+								this.auditList = response.data.data
+								var time2 = new Date(this.list[0].requestDate).getTime()
+								var time3 = this.$u.timeFormat(time2, 'mm.dd hh:MM')
+								this.auditList.unshift({
+									operatorTitle: this.list[0].requester.substring(0, 2),
+									operatorName: this.list[0].requester,
+									updateDate: time3,
+									auditMind: '',
+									desc: '发起申请',
+									showflow: false,
+									commonStaffs1: null,
+									commonStaffs: null,
+									workflowHistoricTasks: [],
+									status: 'success'
+								})
+							})
+						})
 					}
 					}
 				})
 				})
 				// this.$api.doRequest('get', '/tranSettlementReport/getInfo', {
 				// this.$api.doRequest('get', '/tranSettlementReport/getInfo', {
@@ -306,4 +506,138 @@
 	/deep/.u-input__textarea {
 	/deep/.u-input__textarea {
 		height: 300rpx !important;
 		height: 300rpx !important;
 	}
 	}
+	.content2 {
+		background: white;
+		margin: 20rpx 0;
+		border-radius: 20rpx;
+		padding: 20rpx;
+	
+		.row {
+			display: flex;
+	
+			.row-left {
+				display: flex;
+				align-items: center;
+	
+				.item1 {
+					position: relative;
+	
+					.item-content {
+						background: #617AE0;
+						width: 44px;
+						height: 44px;
+						border-radius: 22px;
+						line-height: 44px;
+						text-align: center;
+						font-size: 15px;
+						color: #fff;
+					}
+	
+					.status {
+						position: absolute;
+						border-radius: 50%;
+						padding: 0px 2px;
+						right: -3px;
+						bottom: -3px;
+						background: #fff;
+					}
+	
+					.status.success {
+						border: 1px solid rgb(60, 156, 255);
+					}
+	
+					.status.error {
+						border: 1px solid rgb(245, 108, 108);
+					}
+	
+					.status.question {
+						border: 1px solid #f9ae3d;
+					}
+				}
+	
+			}
+	
+			.row-right {
+				width: 80%;
+				// color: #B0B1B5;
+				margin-top: 10px;
+	
+				.right-content {
+					background: #F2F3F7;
+					margin-left: 10px;
+					margin-top: 10px;
+					padding: 10px;
+					border-radius: 5px;
+					color: #B0B1B5;
+				}
+	
+				.right-item {
+					display: flex;
+					justify-content: space-between;
+	
+					.time {
+						color: #999;
+					}
+	
+					.item2 {
+						margin-left: 20rpx;
+						margin-top: -7px;
+	
+						.name {
+							font-size: 28rpx;
+							font-weight: 800;
+							margin-bottom: 4px;
+						}
+	
+						.status.success {
+							color: #6CC48C;
+						}
+	
+						.status.error {
+							color: rgb(245, 108, 108);
+						}
+	
+						.status.question {
+							color: #f9ae3d;
+						}
+					}
+				}
+			}
+		}
+	
+		.row2 {
+			display: flex;
+	
+			.item-content {
+				background: #22C572;
+				width: 30px;
+				height: 30px;
+				border-radius: 50%;
+				line-height: 30px;
+				text-align: center;
+				font-size: 12px;
+				color: #fff;
+				padding: 0 2px;
+				margin: 0 auto;
+			}
+	
+			.status {
+				position: absolute;
+				top: 0;
+				right: 0;
+			}
+		}
+	
+		.row-line {
+			width: 1px;
+			height: 30px;
+			background: #F2F2F2;
+			margin: 10rpx 50rpx;
+	
+		}
+	
+		.audit {
+			margin-top: 20rpx;
+		}
+	}
 </style>
 </style>

+ 6 - 3
pages/task/audit/purchasecontract.vue

@@ -37,7 +37,7 @@
 			<u-form-item label-width='260' label="卖方电话" :borderBottom="false">
 			<u-form-item label-width='260' label="卖方电话" :borderBottom="false">
 				<u-input v-model="list.sellerPhone" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.sellerPhone" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' label="交易主体" :borderBottom="false">
+			<u-form-item label-width='260' label="交易主体" :borderBottom="false" v-if="list.transactionSubject">
 				<u-input v-model="list.transactionSubject" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.transactionSubject" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
 			<u-form-item label-width='260' label="交货日期(起)" :borderBottom="false">
 			<u-form-item label-width='260' label="交货日期(起)" :borderBottom="false">
@@ -1017,8 +1017,9 @@
 		}
 		}
 	}
 	}
 	.form_top {
 	.form_top {
-		border-bottom: 1px solid #C7CAD6;
+		border-bottom: 1px solid #F5F6FA;
 		padding-bottom: 10px;
 		padding-bottom: 10px;
+		margin-bottom: 18rpx;
 		font-size: 30rpx;
 		font-size: 30rpx;
 		font-weight: 600;
 		font-weight: 600;
 	}
 	}
@@ -1027,6 +1028,7 @@
 		border-radius: 20rpx;
 		border-radius: 20rpx;
 		background: #F9F9FA;
 		background: #F9F9FA;
 		padding: 30rpx 20rpx;
 		padding: 30rpx 20rpx;
+		margin-top: 30rpx;
 	}
 	}
 	.label_css{
 	.label_css{
 		font-size: 26rpx;
 		font-size: 26rpx;
@@ -1084,6 +1086,7 @@
 		.headInfo_middle{
 		.headInfo_middle{
 			width: 70%;
 			width: 70%;
 			padding-left: 10px;
 			padding-left: 10px;
+			margin-top: 10px;
 		}
 		}
 		.headInfo_right{
 		.headInfo_right{
 			width: 20%;
 			width: 20%;
@@ -1118,7 +1121,7 @@
 		.headInfo_No{
 		.headInfo_No{
 			color: #878C9C;
 			color: #878C9C;
 			font-size: 13px;
 			font-size: 13px;
-			margin-top: 10px;
+			margin-top: 6px;
 		}
 		}
 	}
 	}
 </style>
 </style>

+ 34 - 31
pages/task/audit/salecontract.vue

@@ -38,7 +38,7 @@
 			<u-form-item label-width='260' :borderBottom="false" label="卖方电话">
 			<u-form-item label-width='260' :borderBottom="false" label="卖方电话">
 				<u-input v-model="list.sellerPhone" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.sellerPhone" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' :borderBottom="false" label="中转公司">
+			<u-form-item label-width='260' :borderBottom="false" label="中转公司" v-if="list.transitCompany">
 				<u-input v-model="list.transitCompany" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.transitCompany" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
 			<u-form-item label-width='260' :borderBottom="false" label="交货日期(起 - 止)">
 			<u-form-item label-width='260' :borderBottom="false" label="交货日期(起 - 止)">
@@ -58,20 +58,20 @@
 			<u-form-item label-width='260' :borderBottom="false" label="合同单价(元/吨)">
 			<u-form-item label-width='260' :borderBottom="false" label="合同单价(元/吨)">
 				<u-input v-model="list.unitContractPrice" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.unitContractPrice" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' :borderBottom="false" label="货源所在地区">
+			<u-form-item label-width='260' :borderBottom="false" label="货源所在地区" v-if="list.sourceProvince">
 				<view class="textCss">
 				<view class="textCss">
 					{{list.sourceProvince}}{{list.sourceCity}}{{list.sourceArea}}
 					{{list.sourceProvince}}{{list.sourceCity}}{{list.sourceArea}}
 				</view>
 				</view>
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' :borderBottom="false" label="货源详细地址">
+			<u-form-item label-width='260' :borderBottom="false" label="货源详细地址" v-if="list.sourceGoods">
 				<u-input v-model="list.sourceGoods" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.sourceGoods" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' :borderBottom="false" label="交货地所在地区">
+			<u-form-item label-width='260' :borderBottom="false" label="交货地所在地区" v-if="list.deliveryProvince">
 				<view class="textCss">
 				<view class="textCss">
 					{{list.deliveryProvince}}{{list.deliveryCity}}{{list.deliveryArea}}
 					{{list.deliveryProvince}}{{list.deliveryCity}}{{list.deliveryArea}}
 				</view>
 				</view>
 			</u-form-item>
 			</u-form-item>
-			<u-form-item label-width='260' :borderBottom="false" label="交货地详细地址">
+			<u-form-item label-width='260' :borderBottom="false" label="交货地详细地址" v-if="list.placeDelivery">
 				<u-input v-model="list.placeDelivery" input-align="right" placeholder="--" disabled />
 				<u-input v-model="list.placeDelivery" input-align="right" placeholder="--" disabled />
 			</u-form-item>
 			</u-form-item>
 			<u-form-item label-width='300' :borderBottom="false" label="最终实际交易量(吨)">
 			<u-form-item label-width='300' :borderBottom="false" label="最终实际交易量(吨)">
@@ -954,17 +954,17 @@
 		margin: 20rpx 0;
 		margin: 20rpx 0;
 		border-radius: 20rpx;
 		border-radius: 20rpx;
 		padding: 20rpx;
 		padding: 20rpx;
-
+	
 		.row {
 		.row {
 			display: flex;
 			display: flex;
-
+	
 			.left {
 			.left {
 				display: flex;
 				display: flex;
 				align-items: center;
 				align-items: center;
-
+	
 				.item1 {
 				.item1 {
 					position: relative;
 					position: relative;
-
+	
 					.item-content {
 					.item-content {
 						background: #617AE0;
 						background: #617AE0;
 						width: 44px;
 						width: 44px;
@@ -975,7 +975,7 @@
 						font-size: 15px;
 						font-size: 15px;
 						color: #fff;
 						color: #fff;
 					}
 					}
-
+	
 					.status {
 					.status {
 						position: absolute;
 						position: absolute;
 						border-radius: 50%;
 						border-radius: 50%;
@@ -984,27 +984,27 @@
 						bottom: -3px;
 						bottom: -3px;
 						background: #fff;
 						background: #fff;
 					}
 					}
-
+	
 					.status.success {
 					.status.success {
 						border: 1px solid rgb(60, 156, 255);
 						border: 1px solid rgb(60, 156, 255);
 					}
 					}
-
+	
 					.status.error {
 					.status.error {
 						border: 1px solid rgb(245, 108, 108);
 						border: 1px solid rgb(245, 108, 108);
 					}
 					}
-
+	
 					.status.question {
 					.status.question {
 						border: 1px solid #f9ae3d;
 						border: 1px solid #f9ae3d;
 					}
 					}
 				}
 				}
-
+	
 			}
 			}
-
+	
 			.right {
 			.right {
 				width: 80%;
 				width: 80%;
 				// color: #B0B1B5;
 				// color: #B0B1B5;
 				margin-top: 10px;
 				margin-top: 10px;
-
+	
 				.right-content {
 				.right-content {
 					background: #F2F3F7;
 					background: #F2F3F7;
 					margin-left: 10px;
 					margin-left: 10px;
@@ -1013,33 +1013,33 @@
 					border-radius: 5px;
 					border-radius: 5px;
 					color: #B0B1B5;
 					color: #B0B1B5;
 				}
 				}
-
+	
 				.right-item {
 				.right-item {
 					display: flex;
 					display: flex;
 					justify-content: space-between;
 					justify-content: space-between;
-
+	
 					.time {
 					.time {
 						color: #999;
 						color: #999;
 					}
 					}
-
+	
 					.item2 {
 					.item2 {
 						margin-left: 20rpx;
 						margin-left: 20rpx;
 						margin-top: -7px;
 						margin-top: -7px;
-
+	
 						.name {
 						.name {
 							font-size: 28rpx;
 							font-size: 28rpx;
 							font-weight: 800;
 							font-weight: 800;
 							margin-bottom: 4px;
 							margin-bottom: 4px;
 						}
 						}
-
+	
 						.status.success {
 						.status.success {
 							color: #6CC48C;
 							color: #6CC48C;
 						}
 						}
-
+	
 						.status.error {
 						.status.error {
 							color: rgb(245, 108, 108);
 							color: rgb(245, 108, 108);
 						}
 						}
-
+	
 						.status.question {
 						.status.question {
 							color: #f9ae3d;
 							color: #f9ae3d;
 						}
 						}
@@ -1047,10 +1047,10 @@
 				}
 				}
 			}
 			}
 		}
 		}
-
+	
 		.row2 {
 		.row2 {
 			display: flex;
 			display: flex;
-
+	
 			.item-content {
 			.item-content {
 				background: #22C572;
 				background: #22C572;
 				width: 30px;
 				width: 30px;
@@ -1063,30 +1063,31 @@
 				padding: 0 2px;
 				padding: 0 2px;
 				margin: 0 auto;
 				margin: 0 auto;
 			}
 			}
-
+	
 			.status {
 			.status {
 				position: absolute;
 				position: absolute;
 				top: 0;
 				top: 0;
 				right: 0;
 				right: 0;
 			}
 			}
 		}
 		}
-
+	
 		.row-line {
 		.row-line {
 			width: 1px;
 			width: 1px;
 			height: 30px;
 			height: 30px;
 			background: #F2F2F2;
 			background: #F2F2F2;
 			margin: 10rpx 50rpx;
 			margin: 10rpx 50rpx;
-
+	
 		}
 		}
-
+	
 		.audit {
 		.audit {
 			margin-top: 20rpx;
 			margin-top: 20rpx;
 		}
 		}
 	}
 	}
 
 
 	.form_top {
 	.form_top {
-		border-bottom: 1px solid #C7CAD6;
+		border-bottom: 1px solid #F5F6FA;
 		padding-bottom: 10px;
 		padding-bottom: 10px;
+		margin-bottom: 18rpx;
 		font-size: 30rpx;
 		font-size: 30rpx;
 		font-weight: 600;
 		font-weight: 600;
 	}
 	}
@@ -1095,6 +1096,7 @@
 		border-radius: 20rpx;
 		border-radius: 20rpx;
 		background: #F9F9FA;
 		background: #F9F9FA;
 		padding: 30rpx 20rpx;
 		padding: 30rpx 20rpx;
+		margin-top: 30rpx;
 	}
 	}
 	.label_css{
 	.label_css{
 		font-size: 26rpx;
 		font-size: 26rpx;
@@ -1128,6 +1130,7 @@
 		.headInfo_middle{
 		.headInfo_middle{
 			width: 70%;
 			width: 70%;
 			padding-left: 10px;
 			padding-left: 10px;
+			margin-top: 10px;
 		}
 		}
 		.headInfo_right{
 		.headInfo_right{
 			width: 20%;
 			width: 20%;
@@ -1162,7 +1165,7 @@
 		.headInfo_No{
 		.headInfo_No{
 			color: #878C9C;
 			color: #878C9C;
 			font-size: 13px;
 			font-size: 13px;
-			margin-top: 10px;
+			margin-top: 6px;
 		}
 		}
 	}
 	}
 	
 	

+ 45 - 17
pages/task/audit/warehouse_approval.vue

@@ -26,23 +26,36 @@
 				<view class="left">货名</view>
 				<view class="left">货名</view>
 				<view class="right">{{list.goodsName}}</view>
 				<view class="right">{{list.goodsName}}</view>
 			</view>
 			</view>
-			<view class='row'>
-				<view class="left">基准水分(%)</view>
+			<view class='row' v-if="list.bulkDensityStandard !=1">
+				<view class="left" >基准水分(%)</view>
 				<view class="right">{{list.waterBase}}</view>
 				<view class="right">{{list.waterBase}}</view>
 			</view>
 			</view>
-			<view class='row'>
+			<view class='row' v-if="list.bulkDensityStandard !=1">
 				<view class="left">干粮水分(%)</view>
 				<view class="left">干粮水分(%)</view>
 				<view class="right">{{list.waterMin}}</view>
 				<view class="right">{{list.waterMin}}</view>
 			</view>
 			</view>
-			<view class='row'>
+			<view class='row' v-if="list.bulkDensityStandard !=1">
 				<view class="left">水分上限(%)</view>
 				<view class="left">水分上限(%)</view>
 				<view class="right">{{list.waterMax}}</view>
 				<view class="right">{{list.waterMax}}</view>
 			</view>
 			</view>
-			<view v-if="list.paramType == '2'" class='row'>
+			<view v-if="list.paramType == '2' && list.bulkDensityStandard !=1" class='row'>
 				<view class="left">扣重比</view>
 				<view class="left">扣重比</view>
 				<view class="right">{{list.deductWeight}}</view>
 				<view class="right">{{list.deductWeight}}</view>
 			</view>
 			</view>
-			<view class='row'>
+			<view class="form_view" style="background: #F9F9FA;" v-if="list.bulkDensityStandard ==1">
+				<table border="1" width="100%" style="border-collapse: collapse;" cellspacing="0" cellpadding="0" class="table_css">
+				<tr>
+					<td>容重(g/L)</td>
+					<td>价格(元/公斤)</td>
+				</tr>
+				<tr v-for="(item,index) in list.detailPrints">
+					<td>{{item.bulkDensityMax }} ~ {{ item.bulkDensityMin}}</td>
+					<td>{{item.bulkDensityPrice}}</td>
+				</tr>
+				</table>
+				
+			</view>
+			<view class='row' v-if="list.bulkDensityStandard !=1">
 				<view class="left">干粮收购价格(元/公斤)</view>
 				<view class="left">干粮收购价格(元/公斤)</view>
 				<view class="right">{{list.dryGrainPrice}}</view>
 				<view class="right">{{list.dryGrainPrice}}</view>
 			</view>
 			</view>
@@ -51,7 +64,7 @@
 				<view class="right">{{list.saleLimit}}</view>
 				<view class="right">{{list.saleLimit}}</view>
 			</view>
 			</view>
 		</view>
 		</view>
-		<view class="content2">
+		<view class="content2" v-if="list.bulkDensityStandard !=1">
 			<view class="title">粮价设置</view>
 			<view class="title">粮价设置</view>
 			<view v-for="(item,index) in list.details" :key="index">
 			<view v-for="(item,index) in list.details" :key="index">
 				<view class="row">
 				<view class="row">
@@ -203,7 +216,7 @@
 				auditList:[],
 				auditList:[],
 				pcUserInfo: uni.getStorageSync('pcUserInfo'),
 				pcUserInfo: uni.getStorageSync('pcUserInfo'),
 				switchVal: false,
 				switchVal: false,
-				contractNoList: []
+				contractNoList: [],
 			};
 			};
 		},
 		},
 		computed: {
 		computed: {
@@ -245,7 +258,7 @@
 				this.$api.doRequest('get', '/purchasePrice/purchasePriceLook', {
 				this.$api.doRequest('get', '/purchasePrice/purchasePriceLook', {
 					id: this.id
 					id: this.id
 				}).then(res => {
 				}).then(res => {
-					if (res.data.code == 200) {
+					if (res.data.code == 200) { 
 						this.list = res.data.data
 						this.list = res.data.data
 						this.$api.doRequest('get', '/workflow/query/workflowDefinitions', {
 						this.$api.doRequest('get', '/workflow/query/workflowDefinitions', {
 							businessCode: 'PROCUREMENT-PRICE-APPROVE',
 							businessCode: 'PROCUREMENT-PRICE-APPROVE',
@@ -650,14 +663,14 @@
 				.item1{
 				.item1{
 					position:relative;
 					position:relative;
 					.item-content{
 					.item-content{
-						background:#22C572;
-					    width: 50px;
-					    height: 50px;
-					    border-radius: 10px;
-					    line-height: 50px;
-					    text-align: center;
-					    font-size: 18px;
-					    color: #fff;
+						background: #617AE0;
+						width: 44px;
+						height: 44px;
+						border-radius: 22px;
+						line-height: 44px;
+						text-align: center;
+						font-size: 15px;
+						color: #fff;
 					}
 					}
 					.status{
 					.status{
 						position:absolute;
 						position:absolute;
@@ -700,6 +713,7 @@
 					}
 					}
 					.item2 {
 					.item2 {
 						margin-left: 20rpx;
 						margin-left: 20rpx;
+						margin-top: -7px;
 						
 						
 						.name {
 						.name {
 							font-size: 28rpx;
 							font-size: 28rpx;
@@ -749,4 +763,18 @@
 			margin-top: 20rpx;
 			margin-top: 20rpx;
 		}
 		}
 	}
 	}
+	.form_view{
+		margin: 20rpx 0;
+		border-radius: 20rpx;
+		background: #F9F9FA;
+		padding: 30rpx 20rpx;
+		.table_css td{
+			text-align: center;
+			border: 1rpx solid #DBD9CE;
+			padding: 14rpx 0;
+		}
+		.table_css{
+			border: 1rpx solid #DBD9CE;
+		}
+	}
 </style>
 </style>