linwenxin hace 1 año
padre
commit
07d6c56ca2
Se han modificado 1 ficheros con 47 adiciones y 30 borrados
  1. 47 30
      src/views/workOrder/completedToBeSettled/index.vue

+ 47 - 30
src/views/workOrder/completedToBeSettled/index.vue

@@ -217,7 +217,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 												<el-select
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.normListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													onChange={(val) => {
@@ -253,7 +253,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 												<el-select
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.normListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													onChange={(val) => {
@@ -287,7 +287,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 												<el-select
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.normListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													onChange={(val) => {
@@ -321,7 +321,7 @@ export default {
 													return this.panfuan(row) ? <div class="redbordererr">
 														<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 															<el-select
-																disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+																disabled={expandDataForm.normListBj || !row.bianji}
 																value={row[column.columnAttributes.prop]}
 																onInput={(val) => { row[column.columnAttributes.prop] = val }}
 																onChange={(val) => {
@@ -359,7 +359,7 @@ export default {
 														<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 															<el-input
 																type="number"
-																disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+																disabled={expandDataForm.normListBj || !row.bianji}
 																value={row[column.columnAttributes.prop]}
 																onInput={(val) => { row[column.columnAttributes.prop] = val }}
 																placeholder="请输入内容"
@@ -398,7 +398,7 @@ export default {
 													return this.panfuan(row) ? <div class="redbordererr">
 														<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 															<el-select
-																disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+																disabled={expandDataForm.normListBj || !row.bianji}
 																value={row[column.columnAttributes.prop]}
 																onInput={(val) => { row[column.columnAttributes.prop] = val }}
 																onChange={(val) => {
@@ -430,7 +430,7 @@ export default {
 													return this.panfuan(row) ? <div class="redbordererr">
 														<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 															<el-input
-																disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+																disabled={expandDataForm.normListBj || !row.bianji}
 																type="number"
 																value={row[column.columnAttributes.prop]}
 																onInput={(val) => { row[column.columnAttributes.prop] = val }}
@@ -463,7 +463,7 @@ export default {
 													return this.panfuan(row) ? <div class="redbordererr">
 														<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 															<el-input
-																disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+																disabled={expandDataForm.normListBj || !row.bianji}
 																type="number"
 																value={row[column.columnAttributes.prop]}
 																onInput={(val) => { row[column.columnAttributes.prop] = val }}
@@ -485,7 +485,7 @@ export default {
 														<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 															<el-input
 																type="number"
-																disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+																disabled={expandDataForm.normListBj || !row.bianji}
 																value={row[column.columnAttributes.prop]}
 																onInput={(val) => { row[column.columnAttributes.prop] = val }}
 																placeholder="请输入内容"
@@ -522,7 +522,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px">
 												<el-input
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.normListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													placeholder="请输入内容"
@@ -641,7 +641,7 @@ export default {
 											}>平分费用</el-button> : null}
 											{expandDataForm.normList[row.pfuqinid].bianji ? <el-button type="text" onClick={
 												() => {
-													this.itemOrderBaseSettleNormReset(rowZhu, () => {
+													this.itemOrderBaseSettleNormReset(rowZhu, "normList", () => {
 														expandDataForm.normList[row.pfuqinid].bianji = false
 													})
 												}
@@ -698,7 +698,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px" prop={`normList.${index}.${column.columnAttributes.prop}`} rules={required}>
 												<el-select
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.otherNormListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													onChange={(val) => {
@@ -730,7 +730,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px">
 												<el-select
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.otherNormListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													onChange={(val) => {
@@ -755,7 +755,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px">
 												<el-select
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.otherNormListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													onChange={(val) => {
@@ -794,7 +794,7 @@ export default {
 											<el-form-item label="" label-width="0px">
 												<el-input
 													type="number"
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.otherNormListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													placeholder="请输入内容"
@@ -827,7 +827,7 @@ export default {
 										return this.panfuan(row) ? <div class="redbordererr">
 											<el-form-item label="" label-width="0px">
 												<el-input
-													disabled={!row.bianji || expandDataForm.settleStatus != 'YWG'}
+													disabled={expandDataForm.otherNormListBj || !row.bianji}
 													value={row[column.columnAttributes.prop]}
 													onInput={(val) => { row[column.columnAttributes.prop] = val }}
 													placeholder="请输入内容"
@@ -946,7 +946,7 @@ export default {
 											}>平分费用</el-button> : null}
 											{expandDataForm.otherNormList[row.pfuqinid].bianji ? <el-button type="text" onClick={
 												() => {
-													this.itemOrderBaseSettleNormReset(rowZhu, () => {
+													this.itemOrderBaseSettleNormReset(rowZhu, "otherNormList", () => {
 														expandDataForm.otherNormList[row.pfuqinid].bianji = false
 													})
 												}
@@ -988,18 +988,18 @@ export default {
 			</div>) : null
 		},
 
-		itemOrderBaseSettleNormReset(data, cb) {
+		itemOrderBaseSettleNormReset(data, type, cb) {
 			console.log(data, cb)
 			try {
 				data.expandData.normList.filter(item => !!item.id).map(item => {
-					if ([0, 0, 0, ...item.workerList.map(val => Number(val.settleAmount))].reduce(function (prev, curr, idx, arr) {
+					if ([0, 0, 0, ...item.workerList?.map(val => Number(val.settleAmount))].reduce(function (prev, curr, idx, arr) {
 						return prev + curr;
 					}) !== Number(item.settleAmount)) {
 						throw new Error(`费用信息-${item.channelText}-${item.parentCategoryName}-${item.categoryName}-${item.label}:合计结算总金额与总金额不等`);
 					}
 				})
 				data.expandData.otherNormList.filter(item => !!item.id).map(item => {
-					if ([0, 0, 0, ...item.workerList.map(val => Number(val.settleAmount))].reduce(function (prev, curr, idx, arr) {
+					if ([0, 0, 0, ...item.workerList?.map(val => Number(val.settleAmount))].reduce(function (prev, curr, idx, arr) {
 						return prev + curr;
 					}) !== Number(item.settleAmount)) {
 						throw new Error(`其他费用信息-${item.channelText}-${item.type}-${item.label}:合计结算总金额与总金额不等`);
@@ -1013,8 +1013,26 @@ export default {
 
 			([orderBaseSettleNormConfirm, orderBaseSettleNormReset])[pam.settleStatus == 'YWG' ? 0 : 1]({
 				...pam,
-				normList: pam.normList.filter(item => !!item.id),
-				otherNormList: pam.otherNormList.filter(item => !!item.id),
+				...(() => {
+					if (type == "normList") {
+						return {
+							normList: pam.normList.filter(item => !!item.id),
+						}
+					}
+					return {
+						normList: [],
+					}
+				})(),
+				...(() => {
+					if (type == "otherNormList") {
+						return {
+							otherNormList: pam.otherNormList.filter(item => !!item.id),
+						}
+					}
+					return {
+						otherNormList: [],
+					}
+				})(),
 			}).then(res => {
 				orderBaseSettleNormDetail2({
 					id: data.id,
@@ -1037,11 +1055,14 @@ export default {
 				var orderChannelId
 				var normList = []
 				var pfuqinid = 0
+				data.normListBj = false
+				data.otherNormListBj = false
 				data.normList.map((item, index) => {
 					if (!orderChannelId) { orderChannelId = item.orderChannelId }
 					item.settleNum = item.settleNum || ""
 					normList.push({ ...item, pfuqinid: pfuqinid, zijideid: 0, bianji: data.settleStatus == 'YJS' ? false : true })
-					item.workerList.map((resdata, ind_) => {
+					item.workerList?.map((resdata, ind_) => {
+						if (resdata.settleOrderId) { data.normListBj = true }
 						if (ind_ !== 0) { normList.push({ pfuqinid: pfuqinid, zijideid: ind_ }) }
 						if (ind_ == item.workerList.length - 1) { pfuqinid += (ind_ + 1) }
 					})
@@ -1051,7 +1072,8 @@ export default {
 				data.otherNormList.map((item, index) => {
 					item.settleNum = item.settleNum || ""
 					otherNormList.push({ ...item, pfuqinid: qtpfuqinid, zijideid: 0, bianji: data.settleStatus == 'YJS' ? false : true })
-					item.workerList.map((resdata, ind_) => {
+					item.workerList?.map((resdata, ind_) => {
+						if (resdata.settleOrderId) { data.otherNormListBj = true }
 						if (ind_ !== 0) { otherNormList.push({ pfuqinid: qtpfuqinid, zijideid: ind_ }) }
 						if (ind_ == item.workerList.length - 1) { qtpfuqinid += (ind_ + 1) }
 					})
@@ -1143,9 +1165,4 @@ export default {
 }
 </script>
 
-<style lang="scss" scoped>
-.aaa {
-	box-sizing: border-box;
-	padding: 10px 10px 10px 50px;
-}
-</style>
+<style lang="scss" scoped></style>