姜玉琦 2024-07-07 21:24:11 +08:00
commit 4f376f259a
3 changed files with 247 additions and 158 deletions

View File

@ -11,7 +11,7 @@
</div>
</module-one-1-1>
<module-one-2-1 :label="label2" style="position: relative;" class="flow-list">
<div class="scroll" style="margin-top: 0px;max-height: calc(100% - 30px);overflow-y: auto;">
<table class="tb-list1">
@ -33,7 +33,11 @@
</el-col>
<el-col :span="12">
<module-one-3-1 label="付款金额" style="position: relative;" class="cost-sum">
<div style="position: absolute;right:0px;top:4px;" v-if="1 == 1">
<el-date-picker class="bg-date-picker" v-model="selDate" type="daterange"
popper-class="bg-date-picker-pop" :editable="false" @change="dtChange" :picker-options="pickerOptions"
range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期"></el-date-picker>
</div>
<el-row style="padding:0px 10px;">
<el-col :span="12">
<div class="warning-info-title">
@ -105,12 +109,7 @@
<div class="warning-info-title" style="border-bottom: dotted 1px #409effb8;">
<div class="active">付款明细</div>
</div>
<div style="position: absolute;right:0px;top:4px;" v-if="1==1">
<el-date-picker class="bg-date-picker" v-model="selDate" type="daterange"
popper-class="bg-date-picker-pop" :editable="false" @change="dtChange"
:picker-options="pickerOptions" range-separator="至" start-placeholder="开始日期"
end-placeholder="结束日期"></el-date-picker>
</div>
<div class="scroll" v-if="sumList" style="max-height: calc(100% - 50px);overflow-y: auto;">
<template v-if="sumList.names.length > 0">
<div class="sum-list-item" v-for="(it, idx) in sumList.names" :key="idx">
@ -176,7 +175,7 @@
<template v-else>
<div style="width:100%;text-align: center;padding-top:200px">
<img src="images/nodata.png" style="width: 120px;">
<div style="text-align: center;font-size: 12px;color:#888;">暂无数据</div>
<div style="text-align: center;font-size: 12px;color:#888;">暂无数据</div>
</div>
</template>
</div>
@ -247,7 +246,7 @@ export default {
return {
label1: "工程审批进度",
label2: "工程审批排名",
label4:"分包单位资质审批",
label4: "分包单位资质审批",
prjs: [],
project: {},
dept: {},
@ -264,45 +263,45 @@ export default {
},
selDate: [],
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
}
}]
},
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
}
}]
},
};
},
mounted() {
mounted() {
let dt1 = this.$dt((+new Date()) - 30 * 24 * 3600 * 1000);
let dt2 = this.$dt(new Date());
this.selDate = [dt1, dt2];
this.selDate = [dt1, dt2];
this.$bus.$on("projectChange", debounce(res => {
this.project = res;
this.dept = this.$root.dept ||this.dept|| {};
this.prjs = this.$root.projects || this.prjs||[];
this.dept = this.$root.dept || this.dept || {};
this.prjs = this.$root.projects || this.prjs || [];
this.loadData();
}));
}));
if (this.$root.hasInitHeader) {
this.initMe();
}
@ -310,7 +309,7 @@ export default {
methods: {
dtChange(init) {
//this.loadSumCost();
this.loadSumCost();
this.loadCostList();
},
doStateDlg(it) {
@ -385,11 +384,11 @@ export default {
value: it.taskId || 0
}
});
let sum=0;
data.forEach(it=>{
sum+=it.value*1;
let sum = 0;
data.forEach(it => {
sum += it.value * 1;
});
this.label4=`分包单位资质审批(${sum})`
this.label4 = `分包单位资质审批(${sum})`
let opt = {
"tooltip": { "trigger": "item" }, "series": [{
"top": 10, "type": "pie", "radius": "60%",
@ -490,13 +489,13 @@ export default {
} else {
postData.id = this.dept.id;
}
if (this.selDate.length > 0) {
postData.createTime = +this.$dt(this.selDate[0]).$d;
}
if (this.selDate.length > 1) {
postData.updateTime = +this.$dt(this.selDate[1]).$d;
}
postData.createTime = +this.$dt(this.selDate[0]).$d;
}
if (this.selDate.length > 1) {
postData.updateTime = +this.$dt(this.selDate[1]).$d;
}
this.$api.costOut.selectForBigEnginList(postData).then(d => {
this.sumList = d;
});
@ -508,6 +507,12 @@ export default {
} else {
postData.id = this.dept.id;
}
if (this.selDate.length > 0) {
postData.createTime = +this.$dt(this.selDate[0]).$d;
}
if (this.selDate.length > 1) {
postData.updateTime = +this.$dt(this.selDate[1]).$d;
}
this.$api.costOut.sumForBsEnginAuditing(postData).then(d => {
this.sumCost = d;
});

View File

@ -78,7 +78,9 @@
</el-table-column>
<el-table-column v-for="(it, idx) in dataListTitles" :label="it" :key="idx">
<template slot-scope="{row}">
<span style="cursor: pointer;" @click="showMagDlg(row,idx)">{{ row.list[idx].cnt }}</span>
<span style="cursor: pointer;" @click="showMagDlg(row, idx)">{{
row.list[idx].cnt
}}</span>
</template>
</el-table-column>
</el-table>
@ -95,14 +97,16 @@
<img src="images/nodata.png" style="width: 240px;">
<div style="text-align: center;">暂无数据</div>
</div>
<table v-else>
<table v-else>
<tr v-for="(it, idx) in magOrdList" :key="idx">
<td width="50%" style="text-align: right;padding-right:2px;">{{ it.title }}</td>
<td>
<div class="mag-ord-line" :style="it.ord">
</div>
<span style="color:#63f8bc;display:inline-block;margin-left:2px;">{{it.id }}</span> </td>
</tr>
<span style="color:#63f8bc;display:inline-block;margin-left:2px;">{{ it.id
}}</span>
</td>
</tr>
</table>
</div>
@ -111,7 +115,13 @@
</el-col>
<el-col :span="8">
<module-one-3-1 label="工程管理委员会" style="position: relative;">
<el-select v-model="selComm" placeholder="请选择"
<div style="position: absolute;right:0px;top:4px;" v-if="1 == 1">
<el-date-picker class="bg-date-picker" v-model="selDate" type="daterange"
popper-class="bg-date-picker-pop" :editable="false" @change="dtChange"
:picker-options="pickerOptions" range-separator="至" start-placeholder="开始日期"
end-placeholder="结束日期"></el-date-picker>
</div>
<el-select v-model="selComm" placeholder="请选择" v-if="1 == 2"
style="position: absolute;top: 8px;right: 12px;width: 160px;" @change="commChange">
<el-option v-for="item in commList" :key="item.id" :label="item.name" :value="item.id">
</el-option>
@ -119,63 +129,82 @@
<div class="comm-row1">
<i class="el-icon-caret-right" style="color: #63f8bc;font-size:24px;"></i>
<span style="display:inline-block;margin-right:4px;">合计</span>
<people-number
:number="((commTotal * 1.0 || 0).toFixed(2)) || '0.00'"
unit="万元"></people-number>
<people-number :number="((commTotal * 1.0 || 0).toFixed(2)) || '0.00'"
unit="万元"></people-number>
</div>
<div class="comm-row2" style="overflow: hidden;margin-bottom: 40px;">
<el-col :span="12" v-for="(it,idx) in commGroupList" :class="idx%2==1?'is-split':''" :key="idx">
<el-col :span="12" v-for="(it, idx) in commGroupList"
:class="idx % 2 == 1 ? 'is-split' : ''" :key="idx">
<div class="equipment-list-min quality-target-index-min item-blue">
<div class="czz-number-img czz-number-img-green">
<svg class="my-svg-icon-green"
style="vertical-align: middle;fill: currentColor;overflow: hidden;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg">
<path d="M801.69624 87.464222a35.722517 35.722517 0 0 0-40.007036 59.205501A440.418517 440.418517 0 0 1 955.966207 512c0 242.921302-197.633665 440.554966-440.554966 440.554966S74.856275 754.921302 74.856275 512a440.418517 440.418517 0 0 1 194.263358-365.330277 35.736162 35.736162 0 0 0-39.99339-59.205501A511.80897 511.80897 0 0 0 3.411241 512c0 282.314314 229.672041 512 512 512 282.314314 0 512-229.685686 512-512A511.80897 511.80897 0 0 0 801.69624 87.464222zM387.926339 0a35.722517 35.722517 0 0 0-35.722517 35.722517v34.849239a35.722517 35.722517 0 1 0 71.445033 0V35.722517A35.749807 35.749807 0 0 0 387.926339 0zM642.896144 0a35.722517 35.722517 0 0 0-35.722517 35.722517v34.849239a35.722517 35.722517 0 1 0 71.445034 0V35.722517A35.722517 35.722517 0 0 0 642.896144 0zM416.512539 186.444794c12.826267 20.644831 48.002985 55.562295 98.530288 55.562295 50.268049 0 85.895051-34.671855 99.007862-55.152946a35.736162 35.736162 0 0 0-60.160648-38.547025c-0.13645 0.231964-15.296005 22.241292-38.847214 22.241292-22.882605 0-37.100658-20.726701-38.055806-22.159422a35.722517 35.722517 0 0 0-60.474482 38.055806zM336.798657 602.04312a35.722517 35.722517 0 1 0 0 71.445034h142.876422v112.366282a35.722517 35.722517 0 1 0 71.445034 0v-112.366282h142.876422a35.722517 35.722517 0 1 0 0-71.445034h-142.862777v-95.255496h142.876422a35.722517 35.722517 0 1 0 0-71.445034h-92.362764l77.817232-77.817232a35.708872 35.708872 0 1 0-50.513658-50.513659l-113.539749 113.539749-113.539749-113.539749a35.722517 35.722517 0 0 0-50.513658 50.513659l77.817232 77.817232h-92.376409a35.722517 35.722517 0 1 0 0 71.445034h142.876422v95.255496H336.798657z"></path>
<path
d="M801.69624 87.464222a35.722517 35.722517 0 0 0-40.007036 59.205501A440.418517 440.418517 0 0 1 955.966207 512c0 242.921302-197.633665 440.554966-440.554966 440.554966S74.856275 754.921302 74.856275 512a440.418517 440.418517 0 0 1 194.263358-365.330277 35.736162 35.736162 0 0 0-39.99339-59.205501A511.80897 511.80897 0 0 0 3.411241 512c0 282.314314 229.672041 512 512 512 282.314314 0 512-229.685686 512-512A511.80897 511.80897 0 0 0 801.69624 87.464222zM387.926339 0a35.722517 35.722517 0 0 0-35.722517 35.722517v34.849239a35.722517 35.722517 0 1 0 71.445033 0V35.722517A35.749807 35.749807 0 0 0 387.926339 0zM642.896144 0a35.722517 35.722517 0 0 0-35.722517 35.722517v34.849239a35.722517 35.722517 0 1 0 71.445034 0V35.722517A35.722517 35.722517 0 0 0 642.896144 0zM416.512539 186.444794c12.826267 20.644831 48.002985 55.562295 98.530288 55.562295 50.268049 0 85.895051-34.671855 99.007862-55.152946a35.736162 35.736162 0 0 0-60.160648-38.547025c-0.13645 0.231964-15.296005 22.241292-38.847214 22.241292-22.882605 0-37.100658-20.726701-38.055806-22.159422a35.722517 35.722517 0 0 0-60.474482 38.055806zM336.798657 602.04312a35.722517 35.722517 0 1 0 0 71.445034h142.876422v112.366282a35.722517 35.722517 0 1 0 71.445034 0v-112.366282h142.876422a35.722517 35.722517 0 1 0 0-71.445034h-142.862777v-95.255496h142.876422a35.722517 35.722517 0 1 0 0-71.445034h-92.362764l77.817232-77.817232a35.708872 35.708872 0 1 0-50.513658-50.513659l-113.539749 113.539749-113.539749-113.539749a35.722517 35.722517 0 0 0-50.513658 50.513659l77.817232 77.817232h-92.376409a35.722517 35.722517 0 1 0 0 71.445034h142.876422v95.255496H336.798657z">
</path>
</svg>
</div>
<div class="equipment-list-data">
<div style="text-align: center;">
<span style="font-size:20px;">{{((it.id * 1.0 || 0).toFixed(2)) || '0.00' }}</span>
<span style="font-size:20px;">{{ ((it.id * 1.0 || 0).toFixed(2)) || '0.00'
}}</span>
</div>
<p style="font-size: 12px;text-align: center;">{{ it.costName}}(万元)</p>
<p style="font-size: 12px;text-align: center;">{{ it.costName }}(万元)</p>
</div>
</div>
</el-col>
</div>
<div class="analyse_title_blue analyse-title" style="margin-left: 12px;position:relative;">
<div>
<svg class="icon-money" style="width: 1em;height: 1em;vertical-align: middle;fill: currentColor;overflow: hidden;" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="27211"><path d="M703.146667 977.92H34.133333V728.746667h122.88c20.48-20.48 80.213333-75.093333 143.36-88.746667H614.4c39.253333 0 69.973333 32.426667 69.973333 69.973333 0 39.253333-32.426667 69.973333-69.973333 69.973334h-131.413333c-1.706667 0-3.413333 1.706667-3.413334 3.413333s0 1.706667 1.706667 3.413333c0 0 1.706667 1.706667 3.413333 1.706667h221.866667l167.253333-136.533333c30.72-25.6 75.093333-20.48 100.693334 10.24 11.946667 15.36 17.066667 34.133333 15.36 52.906666-1.706667 18.773333-10.24 35.84-25.6 47.786667L703.146667 977.92zM85.333333 926.72h599.04l245.76-203.093333c3.413333-3.413333 6.826667-8.533333 6.826667-13.653334 0-5.12-1.706667-10.24-5.12-15.36-6.826667-8.533333-20.48-10.24-29.013333-1.706666l-182.613334 148.48h-238.933333c-15.36 0-29.013333-5.12-39.253333-15.36-10.24-10.24-17.066667-23.893333-17.066667-39.253334 0-30.72 25.6-54.613333 54.613333-54.613333H614.4c10.24 0 18.773333-8.533333 18.773333-18.773333s-8.533333-18.773333-18.773333-18.773334H310.613333c-51.2 13.653333-105.813333 63.146667-122.88 81.92l-6.826666 8.533334H85.333333v141.653333zM512 314.026667c-6.826667 0-15.36-3.413333-20.48-8.533334L426.666667 226.986667c-8.533333-10.24-6.826667-27.306667 3.413333-35.84s27.306667-6.826667 35.84 3.413333l46.08 54.613333 46.08-54.613333c8.533333-10.24 25.6-11.946667 35.84-3.413333 10.24 8.533333 11.946667 25.6 3.413333 35.84l-66.56 78.506666c-3.413333 6.826667-11.946667 8.533333-18.773333 8.533334zM590.506667 394.24h-158.72c-13.653333 0-25.6-11.946667-25.6-25.6s11.946667-25.6 25.6-25.6h158.72c13.653333 0 25.6 11.946667 25.6 25.6s-10.24 25.6-25.6 25.6z" ></path><path d="M590.506667 314.026667h-158.72c-13.653333 0-25.6-11.946667-25.6-25.6s11.946667-25.6 25.6-25.6h158.72c13.653333 0 25.6 11.946667 25.6 25.6s-10.24 25.6-25.6 25.6z" ></path><path d="M512 472.746667c-13.653333 0-25.6-11.946667-25.6-25.6v-158.72c0-13.653333 11.946667-25.6 25.6-25.6s25.6 11.946667 25.6 25.6v158.72c0 13.653333-11.946667 25.6-25.6 25.6z"></path><path d="M512 576.853333c-136.533333 0-247.466667-110.933333-247.466667-247.466666S375.466667 81.92 512 81.92s247.466667 110.933333 247.466667 247.466667S648.533333 576.853333 512 576.853333z m0-443.733333c-107.52 0-196.266667 88.746667-196.266667 196.266667S404.48 525.653333 512 525.653333s196.266667-88.746667 196.266667-196.266666S619.52 133.12 512 133.12z"></path></svg>
<span style="display:inline-block;margin-left:12px;">付款明细</span>
</div>
<div>
<svg class="icon-money"
style="width: 1em;height: 1em;vertical-align: middle;fill: currentColor;overflow: hidden;"
viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg"
p-id="27211">
<path
d="M703.146667 977.92H34.133333V728.746667h122.88c20.48-20.48 80.213333-75.093333 143.36-88.746667H614.4c39.253333 0 69.973333 32.426667 69.973333 69.973333 0 39.253333-32.426667 69.973333-69.973333 69.973334h-131.413333c-1.706667 0-3.413333 1.706667-3.413334 3.413333s0 1.706667 1.706667 3.413333c0 0 1.706667 1.706667 3.413333 1.706667h221.866667l167.253333-136.533333c30.72-25.6 75.093333-20.48 100.693334 10.24 11.946667 15.36 17.066667 34.133333 15.36 52.906666-1.706667 18.773333-10.24 35.84-25.6 47.786667L703.146667 977.92zM85.333333 926.72h599.04l245.76-203.093333c3.413333-3.413333 6.826667-8.533333 6.826667-13.653334 0-5.12-1.706667-10.24-5.12-15.36-6.826667-8.533333-20.48-10.24-29.013333-1.706666l-182.613334 148.48h-238.933333c-15.36 0-29.013333-5.12-39.253333-15.36-10.24-10.24-17.066667-23.893333-17.066667-39.253334 0-30.72 25.6-54.613333 54.613333-54.613333H614.4c10.24 0 18.773333-8.533333 18.773333-18.773333s-8.533333-18.773333-18.773333-18.773334H310.613333c-51.2 13.653333-105.813333 63.146667-122.88 81.92l-6.826666 8.533334H85.333333v141.653333zM512 314.026667c-6.826667 0-15.36-3.413333-20.48-8.533334L426.666667 226.986667c-8.533333-10.24-6.826667-27.306667 3.413333-35.84s27.306667-6.826667 35.84 3.413333l46.08 54.613333 46.08-54.613333c8.533333-10.24 25.6-11.946667 35.84-3.413333 10.24 8.533333 11.946667 25.6 3.413333 35.84l-66.56 78.506666c-3.413333 6.826667-11.946667 8.533333-18.773333 8.533334zM590.506667 394.24h-158.72c-13.653333 0-25.6-11.946667-25.6-25.6s11.946667-25.6 25.6-25.6h158.72c13.653333 0 25.6 11.946667 25.6 25.6s-10.24 25.6-25.6 25.6z">
</path>
<path
d="M590.506667 314.026667h-158.72c-13.653333 0-25.6-11.946667-25.6-25.6s11.946667-25.6 25.6-25.6h158.72c13.653333 0 25.6 11.946667 25.6 25.6s-10.24 25.6-25.6 25.6z">
</path>
<path
d="M512 472.746667c-13.653333 0-25.6-11.946667-25.6-25.6v-158.72c0-13.653333 11.946667-25.6 25.6-25.6s25.6 11.946667 25.6 25.6v158.72c0 13.653333-11.946667 25.6-25.6 25.6z">
</path>
<path
d="M512 576.853333c-136.533333 0-247.466667-110.933333-247.466667-247.466666S375.466667 81.92 512 81.92s247.466667 110.933333 247.466667 247.466667S648.533333 576.853333 512 576.853333z m0-443.733333c-107.52 0-196.266667 88.746667-196.266667 196.266667S404.48 525.653333 512 525.653333s196.266667-88.746667 196.266667-196.266666S619.52 133.12 512 133.12z">
</path>
</svg>
<span style="display:inline-block;margin-left:12px;">付款明细</span>
</div>
</div>
<div style="height: calc(100% - 410px);">
<div class="warning-info-title" style="padding-left: 8px;font-size:14px;">
<div v-for="(it,idx) in workTypeList" :class="selType == it.value ? 'active' : ''"
@click="getCommList(it)" :key="idx">{{it.text }}</div>
<div v-for="(it, idx) in workTypeList" :class="selType == it.value ? 'active' : ''"
@click="getCommList(it)" :key="idx">{{ it.text }}</div>
</div>
<div class="mag-list quality-table special-table scheduled-alerts-list">
<el-table :data="commDetailList"
style="width: 100%;background: transparent;height: calc(100% - 40px);margin-top: 10px;"
height="200">
<el-table-column prop="nodeText" label="经要序号">
<template slot-scope="{row}">
{{ row.updateBy }}
</template>
</el-table-column>
<el-table-column prop="remark" label="项目名称"/>
<el-table-column prop="costName" label="成本名称"/>
<el-table-column prop="money" label="申报金额(万元)">
<template slot-scope="{row}">
{{ (row.money||0).toFixed(2) }}
</template>
</el-table-column>
</el-table>
</div>
<el-table :data="commDetailList"
style="width: 100%;background: transparent;height: calc(100% - 40px);margin-top: 10px;"
height="200">
<el-table-column prop="nodeText" label="经要序号">
<template slot-scope="{row}">
{{ row.updateBy }}
</template>
</el-table-column>
<el-table-column prop="remark" label="项目名称" />
<el-table-column prop="costName" label="成本名称" />
<el-table-column prop="money" label="申报金额(万元)">
<template slot-scope="{row}">
{{ (row.money||0).toFixed(2) }}
</template>
</el-table-column>
</el-table>
</div>
</div>
</module-one-3-1>
</el-col>
@ -204,7 +233,7 @@ import { tryToJson } from '@/utils/tools'
import ListByCategory from './engin/flowListByCategory.vue'
export default {
name: 'JhbigscreenProjectEngin',
components: { BorderBox6, imageItem, unitDialog, stateDialog, enginChart, projectStandardDialog, ListByCategory,magListDialog },
components: { BorderBox6, imageItem, unitDialog, stateDialog, enginChart, projectStandardDialog, ListByCategory, magListDialog },
data() {
return {
label1: '项目标准化管理',
@ -221,20 +250,50 @@ export default {
selComm: "",
commTotal: "",
commGroupList: [],
workTypeList:[],
selType:'',
commDetailList:[],
workTypeList: [],
selType: '',
commDetailList: [],
selDate: [],
pickerOptions: {
shortcuts: [{
text: '最近一周',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近一个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
picker.$emit('pick', [start, end]);
}
}, {
text: '最近三个月',
onClick(picker) {
const end = new Date();
const start = new Date();
start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
picker.$emit('pick', [start, end]);
}
}]
},
};
},
mounted() {
mounted() {
let dt1 = this.$dt((+new Date()) - 30 * 24 * 3600 * 1000);
let dt2 = this.$dt(new Date());
this.selDate = [dt1, dt2];
this.$bus.$on("projectChange", debounce(res => {
this.project = res;
this.prjs=this.$root.projects ||this.prjs||[];
this.dept=this.$root.dept||this.dept;
this.prjs = this.$root.projects || this.prjs || [];
this.dept = this.$root.dept || this.dept;
this.loadData();
}));
}));
if (this.$root.hasInitHeader) {
this.initMe();
}
@ -242,48 +301,68 @@ export default {
let tmps = d.rows || [];
this.magList = [{ id: 0, name: "全部" }, ...tmps];
this.selMag = 0;
});
});
this.$api.engin.committeeList().then(d => {
let tmps = d.rows || [];
this.commList = [{ id: 0, name: "全部" }, ...tmps];
this.selComm = 0;
});
this.$api.dict("project_working_type").then(d=>{
let tmps=(d||[]).map(it=>{
this.$api.dict("project_working_type").then(d => {
let tmps = (d || []).map(it => {
return {
value:it.dictValue,
text:it.dictLabel,
value: it.dictValue,
text: it.dictLabel,
}
});
this.workTypeList=tmps;
this.selType=tmps[0].value;
this.workTypeList = tmps;
this.selType = tmps[0].value;
this.getCommList(tmps[0]);
});
},
methods: {
showMagDlg(row,idx){
this.$refs.magListDlg.showDialog({row:row,idx:idx});
},
getCommList(it){
this.selType=it.value;
this.$api.engin.selectByWorkingType({
workingType:this.selType,
committeeId:this.selComm,
dtChange() {
debugger
this.commChange();
this.getCommList({ value: this.selType })
},
showMagDlg(row, idx) {
this.$refs.magListDlg.showDialog({ row: row, idx: idx });
},
getCommList(it) {
this.selType = it.value;
let postData={
workingType: this.selType,
committeeId: this.selComm,
projectId: this.project?.id || 0, deptId: this.dept?.id || 0
}).then(d=>{
let tmps=d.data||[];
this.commDetailList=tmps;
};
if (this.selDate.length > 0) {
postData.createTime = +this.$dt(this.selDate[0]).$d;
}
if (this.selDate.length > 1) {
postData.updateTime = +this.$dt(this.selDate[1]).$d;
}
this.$api.engin.selectByWorkingType(postData).then(d => {
let tmps = d.data || [];
this.commDetailList = tmps;
})
},
commChange(){
this.$api.engin.committeeSumGroupByType({
committeeId:this.selComm,
projectId: this.project?.id || 0, deptId: this.dept?.id || 0 })
.then(d=>{
this.showCommSumInfo(d);
this.selType=this.workTypeList[0];
this.getCommList(this.workTypeList[0]);
});
commChange() {
let postData = {
committeeId: this.selComm,
projectId: this.project?.id || 0, deptId: this.dept?.id || 0
};
if (this.selDate.length > 0) {
postData.createTime = +this.$dt(this.selDate[0]).$d;
}
if (this.selDate.length > 1) {
postData.updateTime = +this.$dt(this.selDate[1]).$d;
}
this.$api.engin.committeeSumGroupByType(postData)
.then(d => {
this.showCommSumInfo(d);
this.selType = this.workTypeList[0];
this.getCommList(this.workTypeList[0]);
});
},
numberWithCommas(x) {
x = x.toString();
@ -333,28 +412,28 @@ export default {
}
func();
},
showChart1(data) {
showChart1(data) {
let tmps = data.data || [];
let datas = tmps.map(d => (d.status || 0) * 1);
let sum = 0;
let objs=[
{id:1,text:'现场管理标准化',value:0},
{id:2,text:'作业标准化',value:0},
{id:3,text:'安全技术标准化',value:0},
{id:4,text:'文明施工标准化',value:0},
{id:5,text:'设备管理标准化',value:0},
{id:6,text:'环境保护标准化',value:0}
let objs = [
{ id: 1, text: '现场管理标准化', value: 0 },
{ id: 2, text: '作业标准化', value: 0 },
{ id: 3, text: '安全技术标准化', value: 0 },
{ id: 4, text: '文明施工标准化', value: 0 },
{ id: 5, text: '设备管理标准化', value: 0 },
{ id: 6, text: '环境保护标准化', value: 0 }
];
datas.forEach(d => {
sum += d;
});
this.label1 = `项目标准化管理(${sum})`
this.standList =objs.map(d=>{
let o=tmps.filter(it=>it.dictLabel==d.id);
d.value=o.length>0?(o[0].status||0)*1:0;
this.standList = objs.map(d => {
let o = tmps.filter(it => it.dictLabel == d.id);
d.value = o.length > 0 ? (o[0].status || 0) * 1 : 0;
return d;
})
tmps.map(d => {
return {
id: d.dictValue,
@ -411,9 +490,10 @@ export default {
this.$api.standard.groupByProject(),
this.$api.engin.magGroupByTopic(),
this.$api.engin.groupByMag(this.selMag),
this.$api.engin.committeeSumGroupByType({
committeeId:this.selComm,
projectId: this.project?.id || 0, deptId: this.dept?.id || 0 })
this.$api.engin.committeeSumGroupByType({
committeeId: this.selComm,
projectId: this.project?.id || 0, deptId: this.dept?.id || 0
})
];
this.$api.http.all(ajaxs).then(res => {
this.showChart1(res[0]);
@ -426,10 +506,10 @@ export default {
});
},
showCommSumInfo(data) {
this.commTotal = data.total;
this.commTotal = data.total;
this.commGroupList = data.data;
},
showMagOrder(data) {
showMagOrder(data) {
this.magOrdList = data;
},
showMagGroup(data) {
@ -453,7 +533,7 @@ export default {
left: 196px;
}
}
/deep/ .tr-cmd {
cursor: pointer;
@ -550,26 +630,30 @@ export default {
border-radius: 4px;
}
}
.comm-row1{
.comm-row1 {
display: flex;
align-items: center;
justify-content: center;
}
/deep/ .el-col.is-split{
/deep/ .el-col.is-split {
position: relative;
&::before{
content:"";
display:inline-block;
height:80%;
width:1px;
&::before {
content: "";
display: inline-block;
height: 80%;
width: 1px;
position: absolute;
background-color: #389de37a;
top:10%;
top: 10%;
}
}
.icon-money{
width:20px;
height:20px;
.icon-money {
width: 20px;
height: 20px;
}
}
</style>

View File

@ -37,8 +37,8 @@ module.exports = defineConfig({
}
},
'/jhapi':{
//target: `http://62.234.3.186/jhapi/`,
target: `http://127.0.0.1:8090/jhapi/`,
target: `http://62.234.3.186/jhapi/`,
//target: `http://127.0.0.1:8090/jhapi/`,
//target: `http://szgc.jhncidg.com/jhapi/`,
changeOrigin: true,
pathRewrite: {