fix: BUG修改

This commit is contained in:
kun 2024-05-31 18:31:38 +08:00
parent 60b85aceab
commit 6b778bbfbb
5 changed files with 300 additions and 157 deletions

View File

@ -95,9 +95,9 @@ if (process.env.NODE_ENV == "development") {
// axios.defaults.baseURL = 'http://125.88.207.86:8099/'//中建四局(沙湖)线上(最新)地址 // axios.defaults.baseURL = 'http://125.88.207.86:8099/'//中建四局(沙湖)线上(最新)地址
// axios.defaults.baseURL = 'http://jxj.zhgdyun.com:15551/'//测试地址 // axios.defaults.baseURL = 'http://jxj.zhgdyun.com:15551/'//测试地址
// axios.defaults.baseURL = 'http://47.93.215.234:9809/'//鞍钢正式地址(弃用) // axios.defaults.baseURL = 'http://47.93.215.234:9809/'//鞍钢正式地址(弃用)
// axios.defaults.baseURL = 'http://42.180.188.17:9809/'//鞍钢正式地址 axios.defaults.baseURL = 'http://42.180.188.17:9809/'//鞍钢正式地址
// axios.defaults.baseURL = 'http://47.93.215.234:11211/'//鞍钢测试地址(弃用) // axios.defaults.baseURL = 'http://47.93.215.234:11211/'//鞍钢测试地址(弃用)
axios.defaults.baseURL = "http://42.180.188.17:11211/"; //鞍钢测试地址 // axios.defaults.baseURL = "http://42.180.188.17:11211/"; //鞍钢测试地址
// axios.defaults.baseURL = 'http://jxj.zhgdyun.com:19814/'//测试地址 // axios.defaults.baseURL = 'http://jxj.zhgdyun.com:19814/'//测试地址
} else if (process.env.NODE_ENV == "debug") { } else if (process.env.NODE_ENV == "debug") {
axios.defaults.baseURL = "https://www.ceshi.com"; axios.defaults.baseURL = "https://www.ceshi.com";

View File

@ -6,55 +6,75 @@
<div class="statistics-content"> <div class="statistics-content">
<div class="statistics-content-left"> <div class="statistics-content-left">
<!-- 数据统计 --> <!-- 数据统计 -->
<div class="pageTitle">今日车辆出入记录统计</div> <div class="search-title">
<div class="pageTitle">今日车辆出入记录统计</div>
<div class="condition-change">
<el-radio-group v-model="timeRadio" size="small">
<el-radio-button label="1">进场</el-radio-button>
<el-radio-button label="2">出场</el-radio-button>
</el-radio-group>
</div>
</div>
<div class="left-data"> <div class="left-data">
<div class="numBox"> <div class="numBox">
<img src="@/assets/images/companyProject/1.png" /> <img src="@/assets/images/companyProject/1.png" />
<div class="dataBox"> <div class="dataBox">
<p class="num primaryText">{{ totalNum.innum }}</p> <p class="num primaryText">{{ totalNum.innum }}</p>
<!-- 今日进场车次 -->
<p class="text">今日总进场车次</p> <p class="text">今日总进场车次</p>
</div> </div>
</div> </div>
<div class="numBox"> <div class="numBox">
<img src="@/assets/images/companyProject/1.png" /> <img src="@/assets/images/companyProject/1.png" />
<div class="dataBox"> <div class="dataBox" v-if="timeRadio == 1">
<p class="num primaryText">{{ totalNum.wlcInNum }}</p> <p class="num primaryText">{{ totalNum.wlcInNum }}</p>
<!-- 今日出场车次 -->
<p class="text">外来车辆进场车次</p> <p class="text">外来车辆进场车次</p>
</div> </div>
<div class="dataBox" v-else>
<p class="num primaryText">{{ totalNum.wlcOutNum }}</p>
<p class="text">外来车辆出场车次</p>
</div>
</div> </div>
<div class="numBox"> <div class="numBox">
<img src="@/assets/images/companyProject/1.png" /> <img src="@/assets/images/companyProject/1.png" />
<div class="dataBox"> <div class="dataBox" v-if="timeRadio == 1">
<p class="num primaryText">{{ totalNum.gdcInNum }}</p> <p class="num primaryText">{{ totalNum.gdcInNum }}</p>
<!-- 白名单车辆数 -->
<p class="text">固定车进场车次</p> <p class="text">固定车进场车次</p>
</div> </div>
<div class="dataBox" v-else>
<p class="num primaryText">{{ totalNum.gdcOutNum }}</p>
<p class="text">固定车出场车次</p>
</div>
</div> </div>
<div class="numBox"> <div class="numBox">
<img src="@/assets/images/companyProject/1.png" /> <img src="@/assets/images/companyProject/1.png" />
<div class="dataBox"> <div class="dataBox">
<p class="num primaryText">{{ totalNum.outnum }}</p> <p class="num primaryText">{{ totalNum.outnum }}</p>
<!-- 长期车辆数 -->
<p class="text">今日总出场车次</p> <p class="text">今日总出场车次</p>
</div> </div>
</div> </div>
<div class="numBox"> <div class="numBox">
<img src="@/assets/images/companyProject/1.png" /> <img src="@/assets/images/companyProject/1.png" />
<div class="dataBox"> <div class="dataBox" v-if="timeRadio == 1">
<p class="num primaryText">{{ totalNum.cqcInNum }}</p> <p class="num primaryText">{{ totalNum.cqcInNum }}</p>
<!-- 长期车辆数 -->
<p class="text">长期车进场车次</p> <p class="text">长期车进场车次</p>
</div> </div>
<div class="dataBox" v-else>
<p class="num primaryText">{{ totalNum.cqcOutNum }}</p>
<p class="text">长期车出场车次</p>
</div>
</div> </div>
<div class="numBox"> <div class="numBox">
<img src="@/assets/images/companyProject/1.png" /> <img src="@/assets/images/companyProject/1.png" />
<div class="dataBox"> <div class="dataBox" v-if="timeRadio == 1">
<p class="num primaryText">{{ totalNum.lscInNum }}</p> <p class="num primaryText">{{ totalNum.lscInNum }}</p>
<!-- 长期车辆数 --> <!-- 长期车辆数 -->
<p class="text">临时车进场车次</p> <p class="text">临时车进场车次</p>
</div> </div>
<div class="dataBox" v-else>
<p class="num primaryText">{{ totalNum.lscOutNum }}</p>
<!-- 长期车辆数 -->
<p class="text">临时车出场车次</p>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -235,6 +255,7 @@ import {
export default { export default {
data() { data() {
return { return {
timeRadio: "1",
carDataTypeList: [ carDataTypeList: [
{ {
value: 1, value: 1,
@ -360,10 +381,26 @@ export default {
//--- //---
carNumCharts(el) { carNumCharts(el) {
console.log(this.totalCarNum, 888999); console.log(this.totalCarNum, 888999);
let totalNum = 0;
for(let i in this.totalCarNum){
totalNum += this.totalCarNum[i]
}
let that = this; let that = this;
let numChart = echarts.init(el); let numChart = echarts.init(el);
// ageChart.clear(); // ageChart.clear();
let option = { let option = {
title: {
text: totalNum, //
x: "50.5%",
y: "35%",
z: 8,
textAlign: "center",
textStyle: {
fontFamily: "微软雅黑",
fontSize: 36,
color: "#9B9B9B",
},
},
color: ["#2478F2", "#84B7F9", "#5F9CF8"], color: ["#2478F2", "#84B7F9", "#5F9CF8"],
tooltip: { tooltip: {
trigger: "item", trigger: "item",
@ -539,6 +576,18 @@ export default {
display: flex; display: flex;
&-left { &-left {
width: 60%; width: 60%;
.search-title {
display: flex;
align-items: center;
justify-content: space-between;
.pageTitle {
margin-bottom: 0px;
line-height: 20px;
}
.condition-change {
margin-right: 5px;
}
}
.left-data { .left-data {
width: 100%; width: 100%;
margin-top: 60px; margin-top: 60px;

View File

@ -395,7 +395,7 @@
<div style="margin: 15px 0"></div> <div style="margin: 15px 0"></div>
<el-tree <el-tree
ref="treeRef" ref="treeRef"
:default-expand-all="false" :default-expand-all="true"
:data="treeDatas" :data="treeDatas"
show-checkbox show-checkbox
check-strictly check-strictly
@ -755,13 +755,12 @@ export default {
// } // }
// }, // },
handleTreeCheckAllFn(arr) { handleTreeCheckAllFn(arr) {
if (arr.children) { arr.map((item) => {
this.handleTreeCheckAllFn(arr.children); this.$refs.treeRef.setChecked(item.id, true, true);
} else { if (item.children && item.children.length) {
arr.map((item) => { this.handleTreeCheckAllFn(item.children);
this.$refs.treeRef.setChecked(item.id, true, true); }
}); });
}
}, },
handleTreeCheckAllChange(val) { handleTreeCheckAllChange(val) {
this.isIndeterminate = false; this.isIndeterminate = false;
@ -776,38 +775,91 @@ export default {
this.$refs.treeRef.setCheckedKeys([]); this.$refs.treeRef.setCheckedKeys([]);
} }
}, },
//
hasUncheckedNodes(treeData) {
const tree = this.$refs.treeRef;
return treeData.some((node) => {
const isUnchecked = !tree.getNode(node).checked && !tree.getNode(node).indeterminate;
if (isUnchecked) return true;
if (node.children && node.children.length) {
return this.hasUncheckedNodes(node.children);
}
return false;
});
},
//
hasCheckedNodes(treeData) {
const tree = this.$refs.treeRef;
return treeData.some((node) => {
const isChecked = tree.getNode(node).checked;
if (isChecked) return true;
if (node.children && node.children.length) {
return this.hasCheckedNodes(node.children);
}
return false;
});
},
//
hasIndeterminateNodes(treeData) {
const tree = this.$refs.treeRef;
return treeData.some((node) => {
if (tree.getNode(node).indeterminate) return true;
if (node.children && node.children.length) {
return this.hasIndeterminateNodes(node.children);
}
return false;
});
},
// //
testCheckChange() { testCheckChange() {
//
this.checkAll = true; //
const tree = this.$refs.treeRef; const tree = this.$refs.treeRef;
let checkedCount = 0; // 使
let disabledCount = 0; const hasUnchecked = this.hasUncheckedNodes(this.treeDatas);
let indeterminateFlag = false; const hasChecked = this.hasCheckedNodes(this.treeDatas);
for (let i = 0; i < this.treeDatas.length; i++) { // const hasIndeterminate = this.hasIndeterminateNodes(this.treeDatas);
if (tree.getNode(this.treeDatas[i]).disabled == true) { if (hasUnchecked && hasChecked) {
disabledCount += 1; // 1
}
if (tree.getNode(this.treeDatas[i]).checked == true) {
checkedCount += 1; // 1
}
if (tree.getNode(this.treeDatas[i]).indeterminate == true) {
indeterminateFlag = true; // true
}
}
if (checkedCount == 0) {
this.isIndeterminate = false;
this.checkAll = false; // 0false
if (indeterminateFlag == true) {
this.isIndeterminate = true;
this.checkAll = false;
}
} else if (checkedCount + disabledCount == this.treeDatas.length) {
this.isIndeterminate = false;
this.checkAll = true;
} else {
this.isIndeterminate = true;
this.checkAll = false; this.checkAll = false;
this.isIndeterminate = true;
} else if(!hasUnchecked && hasChecked){
this.checkAll = true;
this.isIndeterminate = false;
} else if(!hasChecked){
this.checkAll = false;
this.isIndeterminate = false;
} }
return; //
// const tree = this.$refs.treeRef;
// let checkedCount = 0;
// let disabledCount = 0;
// let indeterminateFlag = false;
// for (let i = 0; i < this.treeDatas.length; i++) {
// if (tree.getNode(this.treeDatas[i]).disabled == true) {
// disabledCount += 1; // 1
// }
// if (tree.getNode(this.treeDatas[i]).checked == true) {
// checkedCount += 1; // 1
// }
// if (tree.getNode(this.treeDatas[i]).indeterminate == true) {
// indeterminateFlag = true; // true
// }
// }
// if (checkedCount == 0) {
// this.isIndeterminate = false;
// this.checkAll = false; // 0false
// if (indeterminateFlag == true) {
// this.isIndeterminate = true;
// this.checkAll = false;
// }
// } else if (checkedCount + disabledCount == this.treeDatas.length) {
// this.isIndeterminate = false;
// this.checkAll = true;
// } else {
// this.isIndeterminate = true;
// this.checkAll = false;
// }
// return;
}, },
getTreeEnterpriseList() { getTreeEnterpriseList() {
selectHierarchyEnterpriseListApi({ selectHierarchyEnterpriseListApi({

View File

@ -109,7 +109,6 @@
type="primary" type="primary"
size="medium" size="medium"
@click="updateProgressFn(1)" @click="updateProgressFn(1)"
>更新项目总进度</el-button >更新项目总进度</el-button
> >
<!-- :disabled="![5, 10].includes($store.state.userInfo.accountType)" --> <!-- :disabled="![5, 10].includes($store.state.userInfo.accountType)" -->
@ -162,6 +161,15 @@
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="dash-line"></div> <div class="dash-line"></div>
<div class="info-show">
<div class="info-show-title">查看里程碑节点</div>
<div class="info-show-content">
<span>日期{{ isShowDate(date, day.num) }}</span>
<span
>里程碑{{ isShowLcText(date, day.num) }}</span
>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -1071,6 +1079,27 @@ export default {
} }
}); });
}, },
isShowLcText(date, day) {
let dateEntiry = "";
if (day < 10) {
dateEntiry = date + "-0" + day;
} else {
dateEntiry = date + "-" + day;
}
let item = this.listData.find((item) => {
return item.milestoneTime == dateEntiry;
});
return item ? item.milestoneName : "";
},
isShowDate(date, day) {
let dateEntiry = "";
if (day < 10) {
dateEntiry = date + "-0" + day;
} else {
dateEntiry = date + "-" + day;
}
return dateEntiry;
},
isShowTopTip(date, day) { isShowTopTip(date, day) {
let dateEntiry = ""; let dateEntiry = "";
if (day < 10) { if (day < 10) {
@ -1781,6 +1810,12 @@ export default {
width: 20px; width: 20px;
height: 20px; height: 20px;
} }
// .tip-box {
// width: 180px;
// height: 150px;
// position: absolute;
// z-index: 10;
// }
.dash-line { .dash-line {
border: 1px dashed #d81e06; border: 1px dashed #d81e06;
height: 100%; height: 100%;
@ -1790,6 +1825,37 @@ export default {
left: -2px; left: -2px;
z-index: 20; z-index: 20;
} }
.info-show {
width: 180px;
height: 150px;
border: 1px solid #ccc;
background-color: white;
padding: 10px 15px;
position: absolute;
top: 15px;
left: 20px;
z-index: 30;
display: none;
transition: 0.5s;
&-title {
text-align: left;
text-indent: 0.5em;
border-left: 2px solid #0894f0;
}
&-content {
margin-top: 10px;
display: flex;
flex-direction: column;
justify-content: center;
span {
margin-top: 15px;
}
}
}
}
.tip-show img:hover ~ .info-show {
display: block;
} }
} }
} }

View File

@ -322,17 +322,17 @@
top: '10px', top: '10px',
left: calcLeft(gantt, forTimesFn(p), index) + 'px', left: calcLeft(gantt, forTimesFn(p), index) + 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title">查看里程碑节点</div> <div class="info-show-title">查看里程碑节点</div>
<div class="info-show-content"> <div class="info-show-content">
<span>日期{{ isShowDate(p, index + 1) }}</span> <span>日期{{ isShowDate(p, index) }}</span>
<span>里程碑主体结构施工</span> <span>里程碑{{ isShowLcText(p, index) }}</span>
</div>
</div> </div>
</div> </div>
</div>
</div> </div>
</div> </div>
@ -416,16 +416,16 @@
top: '10px', top: '10px',
left: calcLeft(gantt, forTimesFn(p), index) + 'px', left: calcLeft(gantt, forTimesFn(p), index) + 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title">查看里程碑节点</div> <div class="info-show-title">查看里程碑节点</div>
<div class="info-show-content"> <div class="info-show-content">
<span>日期{{ isShowDate(p, index + 1) }}</span> <span>日期{{ isShowDate(p, index) }}</span>
<span>里程碑主体结构施工</span> <span>里程碑{{ isShowLcText(p, index) }}</span>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
@ -509,16 +509,16 @@
top: '10px', top: '10px',
left: calcLeft(gantt, forTimesFn(p), index) + 'px', left: calcLeft(gantt, forTimesFn(p), index) + 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title">查看里程碑节点</div> <div class="info-show-title">查看里程碑节点</div>
<div class="info-show-content"> <div class="info-show-content">
<span>日期{{ isShowDate(p, index + 1) }}</span> <span>日期{{ isShowDate(p, index) }}</span>
<span>里程碑主体结构施工</span> <span>里程碑{{ isShowLcText(p, index) }}</span>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
</div> </div>
@ -603,18 +603,16 @@
left: left:
calcLeft(gantt, forTimesFn(p), index) + 'px', calcLeft(gantt, forTimesFn(p), index) + 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title">查看里程碑节点</div> <div class="info-show-title">查看里程碑节点</div>
<div class="info-show-content"> <div class="info-show-content">
<span <span>日期{{ isShowDate(p, index) }}</span>
>日期{{ isShowDate(p, index + 1) }}</span <span>里程碑{{ isShowLcText(p, index) }}</span>
> </div>
<span>里程碑主体结构施工</span> </div>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -698,20 +696,16 @@
left: left:
calcLeft(gantt, forTimesFn(p), index) + 'px', calcLeft(gantt, forTimesFn(p), index) + 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title"> <div class="info-show-title">查看里程碑节点</div>
查看里程碑节点 <div class="info-show-content">
</div> <span>日期{{ isShowDate(p, index) }}</span>
<div class="info-show-content"> <span>里程碑{{ isShowLcText(p, index) }}</span>
<span </div>
>日期{{ isShowDate(p, index + 1) }}</span </div>
>
<span>里程碑主体结构施工</span>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -796,22 +790,16 @@
calcLeft(gantt, forTimesFn(p), index) + calcLeft(gantt, forTimesFn(p), index) +
'px', 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title"> <div class="info-show-title">查看里程碑节点</div>
查看里程碑节点 <div class="info-show-content">
</div> <span>日期{{ isShowDate(p, index) }}</span>
<div class="info-show-content"> <span>里程碑{{ isShowLcText(p, index) }}</span>
<span </div>
>日期{{ </div>
isShowDate(p, index + 1)
}}</span
>
<span>里程碑主体结构施工</span>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -900,22 +888,16 @@
calcLeft(gantt, forTimesFn(p), index) + calcLeft(gantt, forTimesFn(p), index) +
'px', 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title"> <div class="info-show-title">查看里程碑节点</div>
查看里程碑节点 <div class="info-show-content">
</div> <span>日期{{ isShowDate(p, index) }}</span>
<div class="info-show-content"> <span>里程碑{{ isShowLcText(p, index) }}</span>
<span </div>
>日期{{ </div>
isShowDate(p, index + 1)
}}</span
>
<span>里程碑主体结构施工</span>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -1003,22 +985,16 @@
calcLeft(gantt, forTimesFn(p), index) + calcLeft(gantt, forTimesFn(p), index) +
'px', 'px',
}" }"
v-show="isShowTip(p, index + 1)" v-show="isShowTip(p, index)"
> >
<img src="@/assets/images/lcbTip.png" /> <img src="@/assets/images/lcbTip.png" />
<div class="info-show"> <div class="info-show">
<div class="info-show-title"> <div class="info-show-title">查看里程碑节点</div>
查看里程碑节点 <div class="info-show-content">
</div> <span>日期{{ isShowDate(p, index) }}</span>
<div class="info-show-content"> <span>里程碑{{ isShowLcText(p, index) }}</span>
<span </div>
>日期{{ </div>
isShowDate(p, index + 1)
}}</span
>
<span>里程碑主体结构施工</span>
</div>
</div>
</div> </div>
</div> </div>
</div> </div>
@ -1271,7 +1247,7 @@ export default {
const today = moment(obj.startDate) const today = moment(obj.startDate)
// //
const twoDaysLater = today.add(dayAfter, "days").format("YYYY-MM-DD"); // const twoDaysLater = today.add(dayAfter, "days").format("YYYY-MM-DD");
let daysLaterDate = ""; let daysLaterDate = "";
if(dayAfter === 0){ if(dayAfter === 0){
daysLaterDate = today.format("YYYY-MM-DD"); daysLaterDate = today.format("YYYY-MM-DD");
@ -1284,24 +1260,24 @@ export default {
responseResult = item.milestoneName; responseResult = item.milestoneName;
} }
}); });
return responseResult;
} else { } else {
responseResult = ""; responseResult = "";
return responseResult;
} }
// if(twoDaysLater == obj.finishDate){ // if(twoDaysLater == obj.finishDate){
// return true; // return true;
// } else { // } else {
// return false; // return false;
// } // }
return responseResult;
}, },
isShowTip(obj, dayAfter) { isShowTip(obj, dayAfter) {
console.log(dayAfter,123456789)
let responseResult = false; let responseResult = false;
// //
const today = moment(obj.startDate); const today = moment(obj.startDate);
// //
const twoDaysLater = today.add(dayAfter, "days").format("YYYY-MM-DD"); // const twoDaysLater = today.add(dayAfter, "days").format("YYYY-MM-DD");
let daysLaterDate = ""; let daysLaterDate = "";
if(dayAfter === 0){ if(dayAfter === 0){
daysLaterDate = today.format("YYYY-MM-DD"); daysLaterDate = today.format("YYYY-MM-DD");
@ -1311,11 +1287,11 @@ export default {
if (obj.xzMilestoneList) { if (obj.xzMilestoneList) {
obj.xzMilestoneList.map((item) => { obj.xzMilestoneList.map((item) => {
if (item.milestoneTime == daysLaterDate) { if (item.milestoneTime == daysLaterDate) {
console.log(item.milestoneTime,111)
console.log(daysLaterDate,222)
responseResult = true; responseResult = true;
} }
}); });
} else {
responseResult = false;
} }
// if(twoDaysLater == obj.finishDate){ // if(twoDaysLater == obj.finishDate){
// return true; // return true;