update code

prv
haha 2024-05-06 21:56:00 +08:00
parent 17fb41850d
commit 6adedec170
17 changed files with 251 additions and 326 deletions

View File

@ -6,35 +6,57 @@
<div class="head-title-tab"> <div class="head-title-tab">
<div v-if="!isTypeBuser" :class="nav == 1 ? 'head-nav active' : 'head-nav'" @click="pageJump(1, '#/')"> <div v-if="!isTypeBuser" :class="nav == 1 ? 'head-nav active' : 'head-nav'" @click="pageJump(1, '#/')">
</div> </div>
<div :class="(nav >=20 && nav <30) || nav==2? 'head-nav active' : 'head-nav'" style="position: relative;" <div :class="(nav >=200 && nav <300) || nav==2? 'head-nav active' : 'head-nav'" style="position: relative;"
class="has-submenu"> class="has-submenu">
<div @click="pageJump(2, '#/detail')">项目详情</div> <div @click="pageJump(2, '#/detail')">项目详情</div>
<div class="header-btn-list"> <div class="header-btn-list">
<div class="header-btn-list-arrow"></div> <div class="header-btn-list-arrow"></div>
<div class="header-btn-list-item" style=""> <div class="header-btn-list-item" style="">
<div class="header-btn-list-padding" style="text-align: left;"> <div class="header-btn-list-padding" style="text-align: left;display: grid;grid-template-columns: 20% 20% 20% 20% 20%;">
<button type="button" :class="nav == 21 ? 'active' : ''" class="sub-btn" <button type="button" :class="nav == 208 ? 'active' : ''" class="sub-btn"
@click="pageJump(21, '#/towerCrane')">塔吊监控</button> @click="pageJump(208, '#/prjSafety')">安全管理</button>
<button type="button" :class="nav == 22 ? 'active' : ''" class="sub-btn" <button type="button" :class="nav == 209 ? 'active' : ''" class="sub-btn"
@click="pageJump(22, '#/excavation')">基坑监控</button> @click="pageJump(209, '#/prjQuality')">质量管理</button>
<button type="button" :class="nav == 23 ? 'active' : ''" class="sub-btn"
@click="pageJump(23, '#/distributionBox')">配电箱监控</button> <button type="button" :class="nav == 210 ? 'active' : ''" class="sub-btn"
<button type="button" :class="nav == 24 ? 'active' : ''" class="sub-btn" @click="pageJump(210, '#/prjProgress')">进度管理</button>
@click="pageJump(24, '#/dumbwaiter')">升降机监控</button> <br/>
<button type="button" :class="nav == 25 ? 'active' : ''" class="sub-btn" <button type="button" :class="nav == 211 ? 'active' : ''" class="sub-btn"
@click="pageJump(25, '#/personnelPosition')">人员定位</button> @click="pageJump(211, '#/prjVideo')">视频监控</button>
<button type="button" :class="nav == 26 ? 'active' : ''" class="sub-btn" <button type="button" :class="nav == 212 ? 'active' : ''" class="sub-btn"
@click="pageJump(26, '#/standardCuringRoom')">标养室检测</button> @click="pageJump(212, '#/prjAiVideo')">AI识别监控</button>
<button type="button" :class="nav == 27 ? 'active' : ''" class="sub-btn"
@click="pageJump(27, '#/concreteStrength')">混泥土强度检测</button> <button type="button" :class="nav == 213 ? 'active' : ''" class="sub-btn"
@click="pageJump(213, '#/prjPhotography')">项目全景</button>
<button type="button" :class="nav == 214 ? 'active' : ''" class="sub-btn"
@click="pageJump(214, '#/prjEngin')" v-if="!isTypeBuser" >工程管理</button>
<button type="button" :class="nav == 215 ? 'active' : ''" class="sub-btn"
@click="pageJump(215, '#/prjEnginAuditing')" v-if="!isTypeBuser" >工程审核</button>
<button type="button" :class="nav == 201 ? 'active' : ''" class="sub-btn"
@click="pageJump(201, '#/towerCrane')">塔吊监控</button>
<button type="button" :class="nav == 202 ? 'active' : ''" class="sub-btn"
@click="pageJump(202, '#/excavation')">基坑监控</button>
<button type="button" :class="nav == 203 ? 'active' : ''" class="sub-btn"
@click="pageJump(203, '#/distributionBox')">配电箱监控</button>
<button type="button" :class="nav == 204 ? 'active' : ''" class="sub-btn"
@click="pageJump(204, '#/dumbwaiter')">升降机监控</button>
<button type="button" :class="nav == 205 ? 'active' : ''" class="sub-btn"
@click="pageJump(205, '#/personnelPosition')">人员定位</button>
<button type="button" :class="nav == 206 ? 'active' : ''" class="sub-btn"
@click="pageJump(206, '#/standardCuringRoom')">标养室检测</button>
<button type="button" :class="nav == 207 ? 'active' : ''" class="sub-btn"
@click="pageJump(207, '#/concreteStrength')">混泥土强度检测</button>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
<div :class="nav == 3 ? 'head-nav active' : 'head-nav'" @click="pageJump(3, '#/safety')">安全管理</div> <div v-if="!isTypeBuser" :class="nav == 3 ? 'head-nav active' : 'head-nav'" @click="pageJump(3, '#/safety')"></div>
<div :class="nav == 4 ? 'head-nav active' : 'head-nav'" @click="pageJump(4, '#/quality')">质量管理</div> <div v-if="!isTypeBuser" :class="nav == 4 ? 'head-nav active' : 'head-nav'" @click="pageJump(4, '#/quality')"></div>
<div :class="nav == 5 ? 'head-nav active' : 'head-nav'" @click="pageJump(5, '#/progress')">进度管理</div> <div v-if="!isTypeBuser" :class="nav == 5 ? 'head-nav active' : 'head-nav'" @click="pageJump(5, '#/progress')"></div>
<div :class="nav == 61 || nav == 62 || nav==63 ? 'head-nav active' : 'head-nav'" style="position: relative;" <div v-if="!isTypeBuser" :class="nav == 61 || nav == 62 || nav==63 ? 'head-nav active' : 'head-nav'" style="position: relative;"
class="has-submenu"> class="has-submenu">
<div>视频管理</div> <div>视频管理</div>
<div class="header-btn-list"> <div class="header-btn-list">
@ -76,7 +98,7 @@
</div> </div>
<el-collapse-transition> <el-collapse-transition>
<ul class="header-screen-ul" v-show="showSel1" ref="selectUl"> <ul class="header-screen-ul" v-show="showSel1" ref="selectUl">
<li v-for="item in depts" @click="setScreenLiSel1(item)" :title="item.text">{{ item.text }}</li> <li v-for="item in depts" @click="doSetScreenLiSel1(item)" :title="item.text">{{ item.text }}</li>
</ul> </ul>
</el-collapse-transition> </el-collapse-transition>
</div> </div>
@ -87,7 +109,7 @@
</div> </div>
<el-collapse-transition> <el-collapse-transition>
<ul class="header-screen-ul" v-show="showSel3"> <ul class="header-screen-ul" v-show="showSel3">
<li v-for="item in proTypeList" @click="setScreenLiSel3(item)" :title="item.text">{{ item.text }}</li> <li v-for="item in proTypeList" @click="doSetScreenLiSel3(item)" :title="item.text">{{ item.text }}</li>
</ul> </ul>
</el-collapse-transition> </el-collapse-transition>
</div> </div>
@ -97,7 +119,7 @@
</div> </div>
<el-collapse-transition> <el-collapse-transition>
<ul class="header-screen-ul" v-show="showSel2" ref="selectUl"> <ul class="header-screen-ul" v-show="showSel2" ref="selectUl">
<li v-for="item in data" @click="setScreenLiSel2(item)" :title="item.text">{{ item.text }}</li> <li v-for="item in data" @click="doSetScreenLiSel2(item)" :title="item.text">{{ item.text }}</li>
</ul> </ul>
</el-collapse-transition> </el-collapse-transition>
</div> </div>
@ -183,6 +205,7 @@ export default {
condCode: '', condCode: '',
proTypeList:[], proTypeList:[],
proType:'', proType:'',
projs:[],
} }
}, },
created(){ created(){
@ -224,9 +247,17 @@ export default {
this.isTypeBuser = true; this.isTypeBuser = true;
if (this.$route.name == "index") { if (this.$route.name == "index") {
this.$router.push("/detail"); this.$router.push("/detail");
return;
} }
this.$api.project.findProjectByDept(-1).then(d => { }
let objs = (d?.data || []).map(it => { let ajaxs=[
this.$api.dept.list(),
this.$api.project.findProjectByDept(0)
];
let res=await this.$api.http.all(ajaxs);
this.projs=res[1].data||[];
if ([5, 6, 7, 15, 16, 17, 99].includes(roleId)) {
let objs = (res[1]?.data || []).map(it => {
it.text = it.projectName; it.text = it.projectName;
return it; return it;
}).filter(it => +it.progressVisible == 0); }).filter(it => +it.progressVisible == 0);
@ -234,29 +265,25 @@ export default {
let dept={id:0,text:''}; let dept={id:0,text:''};
this.$root.dept=dept; this.$root.dept=dept;
this.$root.hasInitHeader=true; this.$root.hasInitHeader=true;
this.$bus.$emit("deptChange", dept)
this.$root._prjIds=objs.map(it=>it.id); this.$root._prjIds=objs.map(it=>it.id);
Cookies.set("__ids__",objs.map(it=>it.id).join(",")); Cookies.set("__ids__",objs.map(it=>it.id).join(","));
this.$bus.$emit("loadProjects", this.data);
this.$root.projects = this.data; this.$root.projects = this.data;
if (this.data.length > 0) { if (this.data.length > 0) {
this.setScreenLiSel2(this.data[0], true); this.setScreenLiSel2(this.data[0], true);
} else { } else {
this.setScreenLiSel2(null); this.setScreenLiSel2(null);
} }
});
} else { } else {
this.isTypeBuser = false; this.isTypeBuser = false;
this.$api.dept.list().then(d => {
this.$root.hasInitHeader = true; this.$root.hasInitHeader = true;
if (roleId < 4) { if (roleId < 4) {
this.depts = [{ text: '产发集团', id: 0 }, ...(d?.data || []).map(it => { this.depts = [{ text: '产发集团', id: 0 }, ...(res[0]?.data || []).map(it => {
it.text = it.deptName; it.text = it.deptName;
it.id = it.deptId; it.id = it.deptId;
return it; return it;
})] })]
} else { } else {
this.depts = [...(d?.data || []).map(it => { this.depts = [...(res[0]?.data || []).map(it => {
it.text = it.deptName; it.text = it.deptName;
it.id = it.deptId; it.id = it.deptId;
return it; return it;
@ -264,10 +291,10 @@ export default {
} }
this.setScreenLiSel1(this.localStorage1); this.setScreenLiSel1(this.localStorage1);
this.deptChange(); this.deptChange();
});
} }
this.$root.isTypeBuser = this.isTypeBuser; this.$root.isTypeBuser = this.isTypeBuser;
this.init(); this.init();
this.$bus.$emit("headerChange",this);
}, },
methods: { methods: {
initMe() { initMe() {
@ -352,7 +379,6 @@ export default {
} }
let tmps = this.depts.filter(d => d.text == this.dept1); let tmps = this.depts.filter(d => d.text == this.dept1);
if (tmps.length > 0) { if (tmps.length > 0) {
this.$bus.$emit("deptChange", tmps[0])
this.$root.dept = tmps[0]; this.$root.dept = tmps[0];
} }
}, },
@ -370,7 +396,10 @@ export default {
this.nav = n; this.nav = n;
this.setTitle(); this.setTitle();
if (url) { if (url) {
location.href="#/"
setTimeout(()=>{
location.href = url location.href = url
},400);
} else { } else {
this.$notify({ this.$notify({
title: '提示', title: '提示',
@ -407,10 +436,21 @@ export default {
this.deptChange(); this.deptChange();
this.loadProject(); this.loadProject();
}, },
doSetScreenLiSel1(item){
this.setScreenLiSel1(item);
this.$bus.$emit("headerChange",this);
},
doSetScreenLiSel2(item){
this.setScreenLiSel2(item);
this.$bus.$emit("headerChange",this);
},
doSetScreenLiSel3(item){
this.setScreenLiSel3(item);
this.$bus.$emit("headerChange",this);
},
setScreenLiSel1(item) { setScreenLiSel1(item) {
localStorage.setItem("data1", JSON.stringify(item)) localStorage.setItem("data1", JSON.stringify(item))
this.localStorage1 = JSON.parse(localStorage.getItem("data1")) this.localStorage1 = JSON.parse(localStorage.getItem("data1"))
this.$emit('itemdata', item);
this.showSel1 = false this.showSel1 = false
this.dept1 = item.text; this.dept1 = item.text;
this.deptChange(); this.deptChange();
@ -420,13 +460,24 @@ export default {
if (this.isTypeBuser) { if (this.isTypeBuser) {
return; return;
} }
this.$api.project.findProjectByDept(this.localStorage1.id).then(d => { let tmps=this.projs.filter(d=>{
let objs = (d?.data || []).map(it => { let b1= true;
if(this.localStorage1.id!=0){
b1=d.deptId==this.localStorage1.id
}
let b2=true;
let tmps=this.proTypeList.filter(it=>it.text==this.proType);
if(tmps.length>0 && tmps[0].value!=0){
b2=d.projectType==tmps[0].value;
}
return b1 && b2;
});
let objs = (tmps || []).map(it => {
it.text = it.projectName; it.text = it.projectName;
return it; return it;
}).filter(it => +it.progressVisible == 0); }).filter(it => +it.progressVisible == 0);
this.data = [{ id: 0, text: '所有项目' }, ...objs]; this.data = [{ id: 0, text: '所有项目' }, ...objs];
this.$bus.$emit("loadProjects", this.data); //this.$bus.$emit("loadProjects", this.data);
this.$root.projects = this.data; this.$root.projects = this.data;
if(this.data.find(it=>it.id==this.localStorage2.id)){ if(this.data.find(it=>it.id==this.localStorage2.id)){
this.setScreenLiSel2(this.localStorage2) this.setScreenLiSel2(this.localStorage2)
@ -440,7 +491,7 @@ export default {
if(cb){ if(cb){
cb(); cb();
} }
});
}, },
setScreenLiSel2(item, init) { setScreenLiSel2(item, init) {
if (item) { if (item) {
@ -452,7 +503,6 @@ export default {
this.dept2 = item.text; this.dept2 = item.text;
} }
this.$root.project = this.localStorage2; this.$root.project = this.localStorage2;
this.$bus.$emit("projectChange", this.localStorage2);
} else { } else {
localStorage.removeItem("data2"); localStorage.removeItem("data2");
this.localStorage2 = {}; this.localStorage2 = {};

View File

@ -104,17 +104,8 @@ export default {
}; };
}, },
mounted() { mounted() {
this.$bus.$on("projectChange", (res) => { this.$bus.$on("headerChange",()=>{
this.prjInfo = res; this.initMe();
if (this.deptInfo.text) {
this.getMonitAndWarning();
}
});
this.$bus.$on("deptChange", (dept) => {
this.deptInfo = dept;
if (this.prjInfo.id) {
this.getMonitAndWarning();
}
}); });
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();

View File

@ -36,9 +36,8 @@ export default {
mounted() { mounted() {
window.mymap = this; window.mymap = this;
this.$bus.$on("projectChange", res => { this.$bus.$on("headerChange",()=>{
this.project = res; this.initMe();
this.reloadMap();
}); });
if(this.$root.hasInitHeader){ if(this.$root.hasInitHeader){
this.initMe(); this.initMe();

View File

@ -261,17 +261,9 @@ export default {
}, },
mounted() { mounted() {
this.$bus.$on("loadProjects", debounce(prjs => { this.$bus.$on("headerChange",()=>{
this.prjs = prjs; this.initMe();
})); });
this.$bus.$on("projectChange", debounce(res => {
this.project = res;
this.loadData();
}));
this.$bus.$on("deptChange", debounce(dept => {
this.dept = dept;
this.loadData();
}));
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -471,42 +471,9 @@ export default {
} }
this.loading = true; this.loading = true;
}); });
this.$bus.$on("loadProjects", debounce(prjs => { this.$bus.$on("headerChange",()=>{
this.prjs = prjs; this.initMe();
if (this.prj.id == 0) { });
this.prjInfo = this.prjs[1];
}
}));
this.$bus.$on("projectChange", debounce(res => {
if (res.id == 0) {
const func = () => {
if (this.prjs && this.prjs.length > 1) {
this.prjInfo = this.prjs[1];
} else {
setTimeout(func, 100);
}
}
func();
} else {
this.prjInfo = res;
}
this.prj = res;
this.investmentAmountData1[0].value = "" + res.paidAmount * 1.0;
this.investmentAmountData2[0].value = "" + res.onAccountAmount * 1.0;
this.elKey++;
this.onWarningInfoNav(0);
this.sumCostOutByDeptId();
this.groupByProjectCategory(this.deptInfo.id);
}));
this.$bus.$on("deptChange", debounce(dept => {
this.deptInfo = dept;
this.groupByProjectCategory(dept.id);
this.onClickoOverview(0)
this.qualityNavClick(0);
this.onWarningInfoNav(0);
this.sumCostOutByDeptId();
}));
if(this.$root.hasInitHeader){ if(this.$root.hasInitHeader){
this.initMe(); this.initMe();
} }

View File

@ -72,13 +72,9 @@ export default {
}, },
mounted() { mounted() {
this.$bus.$on("loadProjects", debounce(prjs => { this.$bus.$on("headerChange",()=>{
this.prjs = prjs; this.initMe();
})); });
this.$bus.$on("projectChange", debounce(res => {
this.prj = res;
this.loadData2();
}));
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -66,14 +66,9 @@ export default {
}; };
}, },
mounted() { mounted() {
this.$bus.$on("deptChange", debounce(dept => { this.$bus.$on("headerChange",()=>{
this.dept = dept; this.initMe();
this.loadData(); });
}));
this.$bus.$on("projectChange", debounce(res => {
this.prj = res;
this.loadData();
}));
this.info = this.scheduleInfo || {}; this.info = this.scheduleInfo || {};
this.prj = this.prjInfo || {}; this.prj = this.prjInfo || {};
if(this.$root.hasInitHeader){ if(this.$root.hasInitHeader){

View File

@ -916,17 +916,11 @@ export default {
}, },
mounted() { mounted() {
window.xapp = this; window.xapp = this;
this.$bus.$on( this.$bus.$on("headerChange",()=>{
"loadProjects", this.project = this.$root.project || {};
debounce((prjs) => { this.dept = this.$root.dept || {};
this.prjs = prjs; this.prjs = this.$root.projects || [];
}) let res=this.project;
);
this.$bus.$on(
"projectChange",
debounce((res) => {
this.project = res;
this.mapName = ""; this.mapName = "";
if (res.id == 0) { if (res.id == 0) {
if (this.prjs.length > 1) { if (this.prjs.length > 1) {
@ -937,14 +931,7 @@ export default {
} }
this.loadData(); this.loadData();
this.loadFilshNode(); this.loadFilshNode();
}) });
);
this.$bus.$on(
"deptChange",
debounce((dept) => {
this.dept = dept;
})
);
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -142,17 +142,9 @@ export default {
}, },
mounted() { mounted() {
this.$bus.$on("loadProjects", debounce(prjs => { this.$bus.$on("headerChange",()=>{
this.prjs = prjs; this.initMe();
})); });
this.$bus.$on("projectChange",debounce(res => {
this.project = res;
this.loadData();
}));
this.$bus.$on("deptChange",debounce(dept => {
this.dept = dept;
this.loadData();
}));
this.loadPeriodical(); this.loadPeriodical();
if(this.$root.hasInitHeader){ if(this.$root.hasInitHeader){
this.initMe(); this.initMe();

View File

@ -228,17 +228,9 @@ export default {
}, },
mounted() { mounted() {
this.$bus.$on("loadProjects", debounce(prjs => { this.$bus.$on("headerChange",()=>{
this.prjs = prjs; this.initMe();
})); });
this.$bus.$on("projectChange", debounce(res => {
this.project = res;
this.loadData();
}));
this.$bus.$on("deptChange", debounce(dept => {
this.dept = dept;
this.loadData();
}));
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -453,22 +453,9 @@ export default {
this.loadPlan(); this.loadPlan();
}, },
mounted() { mounted() {
this.$bus.$on("projectChange", debounce(res => { this.$bus.$on("headerChange",()=>{
this.prjInfo = res; this.initMe();
this.loadProjectConstructionProgress(); });
this.selectScheduledAlerts();
this.selectCompletionRate();
}));
this.$bus.$on("loadProjects", debounce(prjs => {
this.projects = prjs;
}));
this.$bus.$on("deptChange", debounce(dept => {
this.dept = dept;
this.groupByProjectCategory(dept.id);
this.deptChange();
this.selectScheduledAlerts();
this.selectCompletionRate();
}))
if(this.$root.hasInitHeader){ if(this.$root.hasInitHeader){
this.initMe(); this.initMe();
} }

View File

@ -423,32 +423,9 @@ export default {
let dt1=this.$dt((+new Date())-30*24*3600*1000); let dt1=this.$dt((+new Date())-30*24*3600*1000);
let dt2=this.$dt(new Date()); let dt2=this.$dt(new Date());
this.selDate=[dt1,dt2]; this.selDate=[dt1,dt2];
this.$bus.$on( this.$bus.$on("headerChange",()=>{
"loadProjects", this.initMe();
debounce((prjs) => { });
this.prjs = prjs;
})
);
this.$bus.$on(
"projectChange",
debounce((res) => {
this.projectInfo = res;
this.doDeptChane();
this.checkDetection(0);
this.doMeasuredNav(0, "汇总");
this.selectTop20materialSeal();
})
);
this.$bus.$on(
"deptChange",
debounce((dept) => {
this.dept = dept;
this.doDeptChane();
this.checkDetection(0);
this.doMeasuredNav(0, "汇总");
this.selectTop20materialSeal();
})
);
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -486,50 +486,41 @@ export default {
let dt1=this.$dt((+new Date())-30*24*3600*1000); let dt1=this.$dt((+new Date())-30*24*3600*1000);
let dt2=this.$dt(new Date()); let dt2=this.$dt(new Date());
this.selDate=[dt1,dt2]; this.selDate=[dt1,dt2];
this.$bus.$on("projectChange", debounce(res => { this.$bus.$on("headerChange",()=>{
this.projectInfo = res; this.initMe();
this.doDeptChane(); });
this.getWorkTrainChart();
//this.getWorkTrainList();
//this.getEmergencyDrillList();
this.getProjectSpecialView();
this.getDeptSafetyWorksList();
this.getProjectInsuranceList();
}));
this.$bus.$on("loadProjects", debounce(prjs => {
this.projects = prjs;
}))
this.$bus.$on("deptChange", debounce(dept => {
this.dept = dept;
this.doDeptChane();
//this.getWorkTrainList();
//this.getEmergencyDrillList();
this.getProjectSpecialView();
this.getDeptSafetyWorksList();
this.getProjectInsuranceList();
if (this.fileNav == 3) {
this.getWorkFileList();
}
}));
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }
}, },
methods: { methods: {
getPrjId(cb){
let isFromPrj=(+this.$route.meta?.nav)>200;//
if(isFromPrj){
this.getProjectId(id=>{
cb(id);
});
}else{
cb(this.projectInfo?.id || 0);
}
},
doShowWorkTrain(type) { doShowWorkTrain(type) {
this.getPrjId(prjId=>{
this.$refs.workTrainListDlg.showDialog({ this.$refs.workTrainListDlg.showDialog({
type: type, type: type,
deptId: this.dept.id || 0, deptId: this.dept.id || 0,
projectId: this.projectInfo?.id || 0, projectId: prjId,
prj: this.projectInfo || {}, prj: this.projectInfo || {},
dicts: this.dictWorkTrainDataType.filter(d => d.cssClass == (type == 0 ? 'a' : 'b')) dicts: this.dictWorkTrainDataType.filter(d => d.cssClass == (type == 0 ? 'a' : 'b'))
}); });
});
}, },
doShowAttendanceDetail() { doShowAttendanceDetail() {
this.getPrjId(prjId=>{
let data = { let data = {
deptId: this.dept.id || 0, deptId: this.dept.id || 0,
projectId: this.projectInfo?.id || 0, projectId: prjId,
attendanceTime: this.$dt(new Date()).format("YYYY-MM-DD") attendanceTime: this.$dt(new Date()).format("YYYY-MM-DD")
} }
if (this.infoNav == 1) { if (this.infoNav == 1) {
@ -537,6 +528,7 @@ export default {
} else { } else {
this.$refs.jobWorkerdlg.showDialog(data); this.$refs.jobWorkerdlg.showDialog(data);
} }
});
}, },
initMe() { initMe() {
this.projectInfo = this.$root.project || {}; this.projectInfo = this.$root.project || {};
@ -587,7 +579,8 @@ export default {
}); });
}, },
getWorkTrainChart() { getWorkTrainChart() {
this.$api.workTrain.getGroupByDataType(this.dept?.id || 0, this.projectInfo?.id || 0).then(d => { this.getPrjId(prjId=>{
this.$api.workTrain.getGroupByDataType(this.dept?.id || 0, prjId).then(d => {
this.WorkTrainChart1 = (d.data || []).filter(it => it.trainType === 'a').map(it => { return { value: it.id || 0, name: it.trainTitle } }); this.WorkTrainChart1 = (d.data || []).filter(it => it.trainType === 'a').map(it => { return { value: it.id || 0, name: it.trainTitle } });
this.WorkTrainChart2 = (d.data || []).filter(it => it.trainType === 'b').map(it => { return { value: it.id || 0, name: it.trainTitle } }); this.WorkTrainChart2 = (d.data || []).filter(it => it.trainType === 'b').map(it => { return { value: it.id || 0, name: it.trainTitle } });
let cnt = 0; let cnt = 0;
@ -668,31 +661,40 @@ export default {
}; };
this.$refs.chart4.init(opt2); this.$refs.chart4.init(opt2);
}); });
});
}, },
// //
getWorkTrainList() { getWorkTrainList() {
this.$api.workTrain.getWorkTrainList(0, this.dept?.id || 0, this.projectInfo?.id || 0).then(d => { this.getPrjId(prjId=>{
this.$api.workTrain.getWorkTrainList(0, this.dept?.id || 0, prjId).then(d => {
this.workTrainList = d.rows; this.workTrainList = d.rows;
}); });
});
}, },
// //
getEmergencyDrillList() { getEmergencyDrillList() {
this.$api.workTrain.getWorkTrainList(1, this.dept?.id || 0, this.projectInfo?.id || 0).then(d => { this.getPrjId(prjId=>{
this.$api.workTrain.getWorkTrainList(1, this.dept?.id || 0, prjId).then(d => {
this.emergencyDrillList = d.rows; this.emergencyDrillList = d.rows;
}); });
});
}, },
// //
getProjectSpecialView() { getProjectSpecialView() {
this.$api.special.getProjectSpecialView(this.dept?.id || 0, this.projectInfo?.id || 0).then(d => { this.getPrjId(prjId=>{
this.$api.special.getProjectSpecialView(this.dept?.id || 0, prjId).then(d => {
this.specialDataList = d.rows; this.specialDataList = d.rows;
}); });
});
}, },
// //
getDeptSafetyWorksList() { getDeptSafetyWorksList() {
// //
this.$api.flow.findSafetyWorkList(this.dept?.id || 0, this.projectInfo?.id || 0, this.infoNav).then(d => { this.getPrjId(prjId=>{
this.$api.flow.findSafetyWorkList(this.dept?.id || 0, prjId, this.infoNav).then(d => {
this.safetyWorkFlowList = d.data || []; this.safetyWorkFlowList = d.data || [];
}); });
});
}, },
getProjectId(cb) { getProjectId(cb) {
let func = () => { let func = () => {
@ -750,12 +752,14 @@ export default {
}); });
}, },
getProjectInsuranceList() { getProjectInsuranceList() {
this.$api.insurance.getProjectInsuranceList(this.dept?.id || 0, this.projectInfo?.id || 0).then(d => { this.getPrjId(prjId=>{
this.$api.insurance.getProjectInsuranceList(this.dept?.id || 0, prjId).then(d => {
this.insuranceDataList = []; this.insuranceDataList = [];
if (d.rows.length > 0 && d.rows[0] != null) { if (d.rows.length > 0 && d.rows[0] != null) {
this.insuranceDataList = d.rows; this.insuranceDataList = d.rows;
} }
}); });
});
}, },
fmt(n) { fmt(n) {
n = "" + n; n = "" + n;

View File

@ -319,27 +319,9 @@ export default {
}, },
mounted() { mounted() {
window.xapp = this; window.xapp = this;
this.$bus.$on( this.$bus.$on("headerChange",()=>{
"projectChange", this.initMe();
debounce((res) => { });
this.projectInfo = res;
this.initVideoMenu();
})
);
this.$bus.$on(
"loadProjects",
debounce((prjs) => {
this.projectInfos = prjs;
//this.initVideoMenu();
})
);
this.$bus.$on(
"deptChange",
debounce((dept) => {
this.dept = dept;
//this.initVideoMenu();
})
);
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -204,20 +204,9 @@ export default {
}); });
}, },
mounted() { mounted() {
this.$bus.$on( this.$bus.$on("headerChange",()=>{
"loadProjects", this.initMe();
debounce((prjs) => { });
this.prjs = prjs;
})
);
this.$bus.$on("projectChange", throttle((res) => {
this.projectInfo = res;
this.loadData();
}));
this.$bus.$on("deptChange", throttle((dept) => {
this.dept = dept;
this.loadData();
}));
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -384,33 +384,9 @@ export default {
this.forIndex = 0; this.forIndex = 0;
}, },
mounted() { mounted() {
this.$bus.$on( this.$bus.$on("headerChange",()=>{
"projectChange", this.initMe();
debounce((res) => { });
this.projectInfo = res;
console.log("项目改变");
console.log(this.projectInfo);
this.init();
})
);
this.$bus.$on(
"loadProjects",
debounce((prjs) => {
this.projectInfos = prjs;
console.log("项目加载");
console.log(this.projectInfos);
this.init();
})
);
this.$bus.$on(
"deptChange",
debounce((dept) => {
this.dept = dept;
console.log("部门改变");
console.log(this.dept);
this.init();
})
);
if (this.$root.hasInitHeader) { if (this.$root.hasInitHeader) {
this.initMe(); this.initMe();
} }

View File

@ -35,16 +35,59 @@ const routes = [
meta:{nav:4,}, meta:{nav:4,},
component: () => import(/* webpackChunkName: "quality" */ '../pages/projectQuality.vue') component: () => import(/* webpackChunkName: "quality" */ '../pages/projectQuality.vue')
} , } ,
{
path: '/prjQuality',
name: 'prjQuality',
meta:{nav:209,},
component: () => import(/* webpackChunkName: "quality" */ '../pages/projectQuality.vue')
} ,
{
path: '/prjProgress',
name: 'prjProgress',
meta:{nav:210,},
component: () => import(/* webpackChunkName: "progress" */ '../pages/projectProgress.vue')
}
,
{
path: '/prjVideo',
name: 'prjVideo',
meta:{nav:211,},
component: () => import(/* webpackChunkName: "video" */ '../pages/projectVideo.vue')
},
{
path: '/prjAiVideo',
name: 'prjAiVideo',
meta:{nav:212,},
component: () => import(/* webpackChunkName: "video" */ '../pages/toAIVideoProject.vue')
},
{
path: '/prjPhotography',
name: 'prjPhotography',
meta:{nav:213,},
component: () => import(/* webpackChunkName: "video" */ '../pages/photography.vue')
},
{
path: '/prjEngin',
name: 'prjEngin',
meta:{nav:214,},
component: () => import(/* webpackChunkName: "video" */ '../pages/projectEngin.vue')
},
{
path: '/prjEnginAuditing',
name: 'prjEnginAuditing',
meta:{nav:215,},
component: () => import(/* webpackChunkName: "video" */ '../pages/engin/auditingPage.vue')
},
{ {
path: '/concreteStrength', path: '/concreteStrength',
name: 'concreteStrength', name: 'concreteStrength',
meta:{nav:27,}, meta:{nav:207,},
component: () => import(/* webpackChunkName: "concreteStrength" */ '../pages/quality/concreteStrength.vue') component: () => import(/* webpackChunkName: "concreteStrength" */ '../pages/quality/concreteStrength.vue')
} , } ,
{ {
path: '/standardCuringRoom', path: '/standardCuringRoom',
name: 'standardCuringRoom', name: 'standardCuringRoom',
meta:{nav:26,}, meta:{nav:206,},
component: () => import(/* webpackChunkName: "standardCuringRoom" */ '../pages/quality/standardCuringRoom.vue') component: () => import(/* webpackChunkName: "standardCuringRoom" */ '../pages/quality/standardCuringRoom.vue')
} }
, ,
@ -53,34 +96,40 @@ const routes = [
name: 'safety', name: 'safety',
meta:{nav:3,}, meta:{nav:3,},
component: () => import(/* webpackChunkName: "safety" */ '../pages/projectSafety.vue') component: () => import(/* webpackChunkName: "safety" */ '../pages/projectSafety.vue')
},
{
path: '/prjSafety',
name: 'prjSafety',
meta:{nav:208,},
component: () => import(/* webpackChunkName: "safety" */ '../pages/projectSafety.vue')
} }
, { , {
path: '/distributionBox', path: '/distributionBox',
name: 'distributionBox', name: 'distributionBox',
meta:{nav:23,}, meta:{nav:203,},
component: () => import(/* webpackChunkName: "distributionBox" */ '../pages/safe/distributionBox.vue') component: () => import(/* webpackChunkName: "distributionBox" */ '../pages/safe/distributionBox.vue')
} }
, { , {
path: '/dumbwaiter', path: '/dumbwaiter',
name: 'dumbwaiter', name: 'dumbwaiter',
meta:{nav:24,}, meta:{nav:204,},
component: () => import(/* webpackChunkName: "dumbwaiter" */ '../pages/safe/dumbwaiter.vue') component: () => import(/* webpackChunkName: "dumbwaiter" */ '../pages/safe/dumbwaiter.vue')
}, { }, {
path: '/personnelPosition', path: '/personnelPosition',
name: 'personnelPosition', name: 'personnelPosition',
meta:{nav:25,}, meta:{nav:205,},
component: () => import(/* webpackChunkName: "personnelPosition" */ '../pages/safe/personnelPosition.vue') component: () => import(/* webpackChunkName: "personnelPosition" */ '../pages/safe/personnelPosition.vue')
} }
, { , {
path: '/excavation', path: '/excavation',
name: 'excavation', name: 'excavation',
meta:{nav:22,}, meta:{nav:202,},
component: () => import(/* webpackChunkName: "excavation" */ '../pages/safe/excavation.vue') component: () => import(/* webpackChunkName: "excavation" */ '../pages/safe/excavation.vue')
} }
, { , {
path: '/towerCrane', path: '/towerCrane',
name: 'towerCrane', name: 'towerCrane',
meta:{nav:21,}, meta:{nav:201,},
component: () => import(/* webpackChunkName: "towerCrane" */ '../pages/safe/towerCrane.vue') component: () => import(/* webpackChunkName: "towerCrane" */ '../pages/safe/towerCrane.vue')
} }
, ,