update code

dev_xds
haha 2024-04-19 00:21:14 +08:00
parent 11fac30ca2
commit 3d20c2d291
4 changed files with 98 additions and 68 deletions

View File

@ -36,8 +36,8 @@
</el-form-item>
</el-col>
<el-col :span="5">
<el-form-item label="挂账金额">
<el-input-number style="width: 130px;" :precision="4" v-model="it.money3" disabled placeholder="挂账金额">
<el-form-item label="挂账金额" :class="it.money3<0?'txt-error':'is-ok'">
<el-input-number style="width: 130px;" :precision="4" v-model="it.money3" disabled placeholder="挂账金额" >
</el-input-number>
<span class="sp-unit">万元</span>
</el-form-item>
@ -100,7 +100,22 @@ export default {
}
},
checkData(){
return this.dataList.filter(d=>d.isErr).length==0;
let flag1= this.dataList.filter(d=>d.isErr).length==0;
if(!flag1){
this.$message.error("请填写数据!");
return false;
}
flag1=this.dataList.filter(d=>d.money*1<0).length==0;
if(!flag1){
this.$message.error("金额不能为负数!");
return false;
}
flag1=this.dataList.filter(d=>d.money3*1<0).length==0;
if(!flag1){
this.$message.error("挂账金额不能为负数!");
return false;
}
return true;
}
},
};
@ -125,6 +140,7 @@ export default {
}
}
}
}
}

View File

@ -15,7 +15,7 @@
<el-tabs v-model="activeName" >
<el-tab-pane v-for="(it,idx) in monthInv" :label="''+it.year" :name="''+it.year" :key="idx">
<el-col v-for="(item,idxx) in it.value" :key="idxx" :span="12">
<el-form-item :label="names[item.month]" class="w200" >
<el-form-item :label="names[item.month]" class="w200" :class="item.money*1<0?'txt-error':''">
<el-input-number :precision="4" v-model="item.money" placeholder="年度投资">
</el-input-number>
<span class="sp-unit">万元</span>

View File

@ -11,7 +11,7 @@
<el-form ref="form" label-width="100px">
<el-tabs v-model="activeName" @tab-click="handleClick">
<el-tab-pane label="总投资" name="first">
<el-form-item label="总投资" class="w400">
<el-form-item label="总投资" class="w400" :class="form.totalInv.money * 1 < 0 ? 'txt-error' : ''">
<el-input-number :precision="4" v-model="form.totalInv.money" placeholder="请输入总投资">
</el-input-number>
<span class="sp-unit">万元</span>
@ -23,10 +23,11 @@
</el-tab-pane>
<el-tab-pane label="合同金额" name="second">
<el-row style="margin-top:12px;">
<el-col :span="8">
<el-form-item label="合同金额" class="w200">
<el-form-item label="合同金额" class="w200"
:class="form.contract1.money * 1 < 0 ? 'txt-error' : ''">
<el-input-number :precision="4" v-model="form.contract1.money"
placeholder="请输入合同金额">
</el-input-number>
@ -34,21 +35,23 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="建安费金额" class="w200">
<el-input-number :precision="4" v-model="form.contract2.money"
<el-form-item label="建安费金额" class="w200"
:class="form.contract2.money * 1 < 0 ? 'txt-error' : ''">
<el-input-number :precision="4" v-model="form.contract2.money"
placeholder="建安费金额">
</el-input-number>
<span class="sp-unit">万元</span>
</el-form-item>
</el-col>
</el-col>
</el-row>
<costContract ref="costContract" ></costContract>
<costContract ref="costContract"></costContract>
</el-tab-pane>
<el-tab-pane label="安措费" name="third">
<el-tab-pane label="安措费" name="third">
<el-row style="margin-top:12px;">
<el-col :span="8">
<el-form-item label="安措费金额" class="w200">
<el-form-item label="安措费金额" class="w200"
:class="form.safety1.money * 1 < 0 ? 'txt-error' : ''">
<el-input-number :precision="4" v-model="form.safety1.money"
placeholder="请输入安措费金额">
</el-input-number>
@ -56,7 +59,8 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="安措支付金额" class="w200">
<el-form-item label="安措支付金额" class="w200"
:class="form.safety2.money * 1 < 0 ? 'txt-error' : ''">
<el-input-number :precision="4" disabled v-model="form.safety2.money"
placeholder="请输入安措支付金额">
</el-input-number>
@ -64,7 +68,8 @@
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item label="安措挂账金额" class="w200">
<el-form-item label="安措挂账金额" class="w200"
:class="form.safety3.money * 1 < 0 ? 'txt-error' : ''">
<el-input-number :precision="4" disabled v-model="form.safety3.money"
placeholder="请输入安措挂账金额">
</el-input-number>
@ -99,7 +104,7 @@ import costMonth from './costMonth.vue'
import costContract from './costContract.vue'
export default {
components: {
costYear, costMonth,costContract
costYear, costMonth, costContract
},
data() {
return {
@ -119,76 +124,79 @@ export default {
yearInv: [],//
monthInv: [],//
oldData: [],
contract:[],//
safety:[],//
loading:false,
contract: [],//
safety: [],//
loading: false,
};
},
methods: {
doQuery(){
this.$confirm('确定刷新数据?', '提示', { type: 'warning' }).then(()=>{
methods: {
doQuery() {
this.$confirm('确定刷新数据?', '提示', { type: 'warning' }).then(() => {
this.loadData();
});
},
costSafetyChange(datas){
let m2sum=0;
let m3sum=0;
datas.forEach(d=>{
m2sum+=d.money2;
m3sum+=d.money3;
costSafetyChange(datas) {
let m2sum = 0;
let m3sum = 0;
datas.forEach(d => {
m2sum += d.money2;
m3sum += d.money3;
});
this.form.safety2.money=m2sum;
this.form.safety3.money=m3sum;
this.form.safety2.money = m2sum;
this.form.safety3.money = m3sum;
},
handleClick(tab, event) {
},
checkData(){
if(!this.$refs.costContract.checkData()){
this.activeName="second";
checkData() {
if (!this.$refs.costContract.checkData()) {
this.activeName = "second";
return false;
}
if(!this.$refs.costSafety.checkData()){
this.activeName="third";
return false;
if (!this.$refs.costSafety.checkData()) {
this.activeName = "third";
return false;
}
return true;
return true;
},
doSave() {
if(!this.checkData()){
this.$message.error("请填写数据!");
if (!this.checkData()) {
return;
}
let objs = this.oldData.filter(d=>d.costType!=11 && d.costType!=12).map(it => {
}
let objs = this.oldData.filter(d => d.costType != 11 && d.costType != 12).map(it => {
let obj = { ...it };
obj.money = obj.money ? obj.money * 10000 : 0;
return obj;
});
let contractObjs=this.$refs.costContract.dataList.map(it=>{
let obj={...it};
if (objs.filter(d => d.money * 1 < 0).length > 0) {
this.$message.error("请检查,金额不能为负数!");
return;
}
let contractObjs = this.$refs.costContract.dataList.map(it => {
let obj = { ...it };
obj.money = obj.money ? obj.money * 10000 : 0;
obj.money2=obj.money2?obj.money2*10000:0;
obj.date1=this.$dt(obj.date1).format("YYYY-MM-DD");
obj.money2 = obj.money2 ? obj.money2 * 10000 : 0;
obj.date1 = this.$dt(obj.date1).format("YYYY-MM-DD");
return obj;
});
let safetyObjs=this.$refs.costSafety.dataList.map(it=>{
let obj={...it};
let safetyObjs = this.$refs.costSafety.dataList.map(it => {
let obj = { ...it };
obj.money = obj.money ? obj.money * 10000 : 0;
obj.money2=obj.money2?obj.money2*10000:0;
obj.date1=this.$dt(obj.date1).format("YYYY-MM-DD");
obj.money2 = obj.money2 ? obj.money2 * 10000 : 0;
obj.date1 = this.$dt(obj.date1).format("YYYY-MM-DD");
return obj;
});
this.loading=true;
batchUpdate([...objs,...contractObjs,...safetyObjs]).then(d => {
this.loading=false;
this.loading = true;
batchUpdate([...objs, ...contractObjs, ...safetyObjs]).then(d => {
this.loading = false;
if (d.code != 200) {
this.loadData();
} else {
this.$modal.msgSuccess("保存成功");
this.loadData();
}
});
});
},
doAddYearSuccess() {
this.loadData();
@ -210,21 +218,21 @@ export default {
let tmps = (d.data || []).map(it => {
it.money = it.money ? it.money / 10000.0 : 0;
it.money2 = it.money2 ? it.money2 / 10000.0 : 0;
it.money3=it.money-it.money2;
it.isErr=false;
it.date1=this.$dt(it.date1)
it.money3 = it.money - it.money2;
it.isErr = false;
it.date1 = this.$dt(it.date1)
return it;
});
this.resetData(tmps);
this.oldData = tmps;
this.form.totalInv = this.getValue(tmps, 1);
this.yearInv = tmps.filter(it => it.costType == 2);
this.contract=tmps.filter(it=>it.costType==11);
this.safety=tmps.filter(it=>it.costType==12);
this.contract = tmps.filter(it => it.costType == 11);
this.safety = tmps.filter(it => it.costType == 12);
this.form.contract1 = this.getValue(tmps, 3);
this.form.contract2 = this.getValue(tmps, 10);
this.form.safety1 = this.getValue(tmps, 6);
this.form.safety2 = this.getValue(tmps, 7);
this.form.safety3 = this.getValue(tmps, 8);
@ -246,20 +254,20 @@ export default {
setTimeout(() => {
this.$refs.costYear.init(this.yearInv, this.prj);
this.$refs.costMonth.init(this.monthInv, this.prj);
this.$refs.costContract.init(this.contract,this.prj,11);
this.$refs.costSafety.init(this.safety,this.prj,12);
this.$refs.costContract.init(this.contract, this.prj, 11);
this.$refs.costSafety.init(this.safety, this.prj, 12);
}, 400)
});
},
getValue(tmps, type) {
let objs = tmps.filter(d => d.costType == type);
if(objs.length>0){
if (objs.length > 0) {
return objs[0];
}
let obj={
money:0,
costType:type,
projectId:this.prj.id
let obj = {
money: 0,
costType: type,
projectId: this.prj.id
};
tmps.push(obj);
return obj;
@ -287,6 +295,12 @@ export default {
::v-deep .el-drawer__body {
padding: 0px 24px;
.el-form-item.txt-error {
.el-input__inner {
border: solid 1px red;
}
}
.el-popover__reference-wrapper {
position: absolute;
right: 0px;

View File

@ -17,7 +17,7 @@
<el-tabs v-model="activeName">
<el-tab-pane v-for="(it,idx) in yearInv" :label="''+it.year" :name="''+it.year" :key="idx">
<el-form-item label="年度投资" class="w400">
<el-form-item label="年度投资" class="w400" :class="it.money*1<0?'txt-error':''">
<el-input-number :precision="4" v-model="it.money" placeholder="年度投资">
</el-input-number>
<span class="sp-unit">万元</span>