|
@@ -30,23 +30,23 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="单价:" prop="price">
|
|
|
- <el-input v-model="baseForm.price" @blur="handleBlur"/>
|
|
|
+ <el-input v-model="baseForm.price" @blur="handleBlur" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
- <el-form-item label="数量:" prop="meterAmount" >
|
|
|
- <el-input v-model="baseForm.meterAmount" @blur="handleBlur" ></el-input>
|
|
|
+ <el-form-item label="数量:" prop="meterAmount">
|
|
|
+ <el-input v-model="baseForm.meterAmount" @blur="handleBlur" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="计量金额:">
|
|
|
- <el-input v-model="baseForm.meterMoney" disabled type='number'/>
|
|
|
+ <el-input v-model="baseForm.meterMoney" disabled type="number" />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="合同规定预付款金额:">
|
|
|
- <el-input v-model="baseForm.contractStatedMoney" disabled/>
|
|
|
+ <el-input v-model="baseForm.contractStatedMoney" disabled />
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
|
|
@@ -236,15 +236,18 @@ const getTreeData = async ()=>{
|
|
|
}
|
|
|
}
|
|
|
const treeItem = ref({})
|
|
|
-const treeClick = ({ node, data, keys })=>{
|
|
|
- console.log(data.value?.materialName)
|
|
|
- console.log(!treeItem.value?.clPrepaymentRatio)
|
|
|
- if (data.value?.materialName && !treeItem.value?.clPrepaymentRatio) {
|
|
|
+const treeClick = ({ node, data })=>{
|
|
|
+ if (node.level <= 1) return
|
|
|
+ treeItem.value = data
|
|
|
+ const { materialName, clPrepaymentRatio } = getObjValue(data)
|
|
|
+ if (isNullES(materialName)) {
|
|
|
+ window.$message.warning('请联系管理员设置材料名称')
|
|
|
+ return
|
|
|
+ }
|
|
|
+ if (isNullES(clPrepaymentRatio)) {
|
|
|
window.$message.warning('请联系管理员设置材料预付款百分比!')
|
|
|
return
|
|
|
}
|
|
|
-
|
|
|
- treeItem.value = data
|
|
|
baseForm.value.contractMaterialName = data.materialName
|
|
|
handleBlur()
|
|
|
//由于业务需求改变,不需要回显示 单价
|
|
@@ -261,12 +264,12 @@ const baseFormRules = {
|
|
|
message: '请输入材料到场编号',
|
|
|
},
|
|
|
meterAmount:[
|
|
|
- { required:true , message:'请输入数量',trigger:'blur'},
|
|
|
- { pattern: /^[0-9.]*$/,message:'数量需为数字',trigger:'blur'}
|
|
|
+ { required:true, message:'请输入数量', trigger:'blur' },
|
|
|
+ { pattern: /^[0-9.]*$/, message:'数量需为数字', trigger:'blur' },
|
|
|
],
|
|
|
price:[
|
|
|
- { required:true , message:'请输入单价',trigger:'blur'},
|
|
|
- { pattern: /^[0-9.]*$/,message:'单价需为数字',trigger:'blur'}
|
|
|
+ { required:true, message:'请输入单价', trigger:'blur' },
|
|
|
+ { pattern: /^[0-9.]*$/, message:'单价需为数字', trigger:'blur' },
|
|
|
],
|
|
|
businessDate: {
|
|
|
required: true,
|
|
@@ -288,17 +291,19 @@ const baseFormRules = {
|
|
|
|
|
|
// 计算金额
|
|
|
const handleBlur = async () => {
|
|
|
- console.log(treeItem.value?.clPrepaymentRatio)
|
|
|
if ( baseForm.value?.price && baseForm.value?.meterAmount ) {
|
|
|
baseForm.value.meterMoney = Math.round(baseForm.value.price * baseForm.value.meterAmount)
|
|
|
-
|
|
|
- if ( treeItem.value?.clPrepaymentRatio ) {
|
|
|
- baseForm.value.contractStatedMoney = Math.round(baseForm.value.meterMoney * treeItem.value?.clPrepaymentRatio / 100)
|
|
|
- } else {
|
|
|
- baseForm.value.contractStatedMoney = 0
|
|
|
+ const { id, clPrepaymentRatio } = treeItem.value
|
|
|
+ if (isNullES(id)) {
|
|
|
window.$message.warning('请先选择左侧节点')
|
|
|
return
|
|
|
}
|
|
|
+ if (isNullES(clPrepaymentRatio)) {
|
|
|
+ baseForm.value.contractStatedMoney = 0
|
|
|
+ window.$message.warning('请联系管理员设置材料预付款百分比!')
|
|
|
+ } else {
|
|
|
+ baseForm.value.contractStatedMoney = Math.round(baseForm.value.meterMoney * clPrepaymentRatio / 100)
|
|
|
+ }
|
|
|
} else {
|
|
|
baseForm.value.meterMoney = 0
|
|
|
baseForm.value.contractStatedMoney = 0
|
|
@@ -307,54 +312,54 @@ const handleBlur = async () => {
|
|
|
|
|
|
const modalSaving = ref(false)
|
|
|
const modalSave = async () => {
|
|
|
- if (!treeItem.value?.id && ids.value.length < 1) {
|
|
|
+ const { id, clPrepaymentRatio } = treeItem.value
|
|
|
+ if (isNullES(id)) {
|
|
|
window.$message.warning('请先选择左侧节点')
|
|
|
return
|
|
|
}
|
|
|
+ if (isNullES(clPrepaymentRatio)) {
|
|
|
+ window.$message.warning('请联系管理员设置材料预付款百分比!')
|
|
|
+ return
|
|
|
+ }
|
|
|
const res = await formValidate(baseFormRef.value)
|
|
|
- if (res) {
|
|
|
- key1Data.value.forEach((ele)=>{
|
|
|
+ if (!res) return
|
|
|
+ key1Data.value.forEach((ele)=>{
|
|
|
if (ele.id === baseForm.value.meterPeriodId) {
|
|
|
- baseForm.value.periodName = ele.periodName
|
|
|
- baseForm.value.periodNumber = ele.periodNumber
|
|
|
- }
|
|
|
- })
|
|
|
- modalSaving.value = true
|
|
|
- if (ids.value.length < 1) {
|
|
|
- const { error, code, msg } = await orderApi.add({
|
|
|
+ baseForm.value.periodName = ele.periodName
|
|
|
+ baseForm.value.periodNumber = ele.periodNumber
|
|
|
+ }
|
|
|
+ })
|
|
|
+ modalSaving.value = true
|
|
|
+ if (ids.value.length < 1) {
|
|
|
+ const { error, code, msg } = await orderApi.add({
|
|
|
...baseForm.value,
|
|
|
contractId:contractId.value,
|
|
|
contractMaterialId:treeItem.value?.id,
|
|
|
projectId:projectId.value,
|
|
|
- })
|
|
|
- //判断状态
|
|
|
- modalSaving.value = false
|
|
|
- if (!error && code === 200) {
|
|
|
- window?.$message?.success(msg)
|
|
|
-
|
|
|
-
|
|
|
- } else {
|
|
|
- window.$message.error(msg ?? '操作失败')
|
|
|
- }
|
|
|
- } else if (ids.value.length > 0) {
|
|
|
- const { error, code, msg } = await orderApi.update({
|
|
|
+ })
|
|
|
+ //判断状态
|
|
|
+ modalSaving.value = false
|
|
|
+ if (!error && code === 200) {
|
|
|
+ window?.$message?.success(msg)
|
|
|
+ } else {
|
|
|
+ window.$message.error(msg ?? '操作失败')
|
|
|
+ }
|
|
|
+ } else if (ids.value.length > 0) {
|
|
|
+ const { error, code, msg } = await orderApi.update({
|
|
|
...baseForm.value,
|
|
|
contractId:contractId.value,
|
|
|
contractMaterialId:treeItem.value?.id,
|
|
|
projectId:projectId.value,
|
|
|
- })
|
|
|
- //判断状态
|
|
|
- modalSaving.value = false
|
|
|
- if (!error && code === 200) {
|
|
|
- window?.$message?.success(msg)
|
|
|
-
|
|
|
-
|
|
|
- } else {
|
|
|
- window.$message.error(msg ?? '操作失败')
|
|
|
- }
|
|
|
+ })
|
|
|
+ //判断状态
|
|
|
+ modalSaving.value = false
|
|
|
+ if (!error && code === 200) {
|
|
|
+ window?.$message?.success(msg)
|
|
|
+ } else {
|
|
|
+ window.$message.error(msg ?? '操作失败')
|
|
|
}
|
|
|
- modalClose()
|
|
|
}
|
|
|
+ modalClose()
|
|
|
}
|
|
|
|
|
|
// 文件全部上传完成
|