Merge branch 'dev' of http://62.234.3.186:3000/sxyanzhu/jhbigscreen into dev
commit
17fb41850d
|
@ -98,6 +98,22 @@ const findFlowLabourGroupCountByApprove=(deptId,projectId)=> {
|
|||
})
|
||||
}
|
||||
|
||||
//工程管理-分包单位占比
|
||||
const groupFlowBySubDeptType=(data)=>{
|
||||
return request({
|
||||
url:'bgscreen/flow/groupFlowBySubDeptType',
|
||||
method:'post',
|
||||
data:data
|
||||
})
|
||||
}
|
||||
|
||||
const listFlowBySubDeptType=(data,pageNum,pageSize)=>{
|
||||
return request({
|
||||
url:`bgscreen/flow/listFlowBySubDeptType?pageNum=${pageNum}&pageSize=${pageSize}`,
|
||||
method:'post',
|
||||
data:data
|
||||
})
|
||||
}
|
||||
|
||||
export default{
|
||||
groupByCategory,
|
||||
|
@ -111,5 +127,7 @@ export default{
|
|||
findFormDatasByProcInsId,
|
||||
listByCategory,
|
||||
findFlowLabourList,
|
||||
findFlowLabourGroupCountByApprove
|
||||
findFlowLabourGroupCountByApprove,
|
||||
groupFlowBySubDeptType,
|
||||
listFlowBySubDeptType
|
||||
}
|
||||
|
|
|
@ -185,26 +185,39 @@
|
|||
</enginChart>
|
||||
</module-one-1-1>
|
||||
<module-one-2-1 label="劳务单位资质审批明细" style="position: relative;">
|
||||
<div class="data-list3 scroll">
|
||||
<table style=" border-collapse: collapse;">
|
||||
<tr class="tr-header">
|
||||
<th>所属项目</th>
|
||||
<th style="width:95px">所属总包单位</th>
|
||||
<th>申请单位</th>
|
||||
<th style="width:60px">所属时间</th>
|
||||
<th style="width:30px">状态</th>
|
||||
</tr>
|
||||
<tr v-for="(it,idx) in dataList4" :key="idx">
|
||||
<td>泾河智谷(一期)一标段</td>
|
||||
<td>中国一冶集团有限公司</td>
|
||||
<td>陕西凯德劳务建筑有限公司</td>
|
||||
<td>2024-3-4</td>
|
||||
<td>
|
||||
<span v-if="idx<10">进行中</span>
|
||||
<span v-else style="color:green">行中</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
<template v-if="dataList4.length > 0">
|
||||
<div class="data-list3 scroll">
|
||||
<table style=" border-collapse: collapse;">
|
||||
<tr class="tr-header">
|
||||
<th>所属项目</th>
|
||||
<th style="width:95px">所属总包单位</th>
|
||||
<th>申请单位</th>
|
||||
<th>分包类型</th>
|
||||
<th style="width:40px">申请<br />时间</th>
|
||||
<th style="width:40px">状态</th>
|
||||
</tr>
|
||||
<tr v-for="(it, idx) in dataList4" :key="idx">
|
||||
<td>{{ it.businessKeyName }}</td>
|
||||
<td>{{ it.startDeptName }}</td>
|
||||
<td>{{ it.deptName }}</td>
|
||||
<td>{{ it.taskName }}</td>
|
||||
<td>{{ it.createTime | formatDate }}</td>
|
||||
<td>
|
||||
<span v-if="!it.finishTime">进行中</span>
|
||||
<span v-else style="color:green">完成</span>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
<el-pagination layout="total,prev, pager, next"
|
||||
@current-change="handleCurrentChange" :total="data4Page.total" :page-size="data4Page.pageSize"
|
||||
:current-page.sync="data4Page.pageIndex" class="bg-pagination"></el-pagination>
|
||||
</template>
|
||||
<div v-else style="text-align: center;margin-top:100px;" class="div-no-data">
|
||||
<img src="images/nodata.png" style="width: 120px;">
|
||||
<div style="text-align: center;font-size: 12px;color:#888;">暂无数据</div>
|
||||
|
||||
</div>
|
||||
</module-one-2-1>
|
||||
</el-col>
|
||||
|
@ -238,7 +251,12 @@ export default {
|
|||
chart1Data: [],
|
||||
elChart2: 0,
|
||||
flowList: [],
|
||||
dataList4:[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20]
|
||||
dataList4: [],
|
||||
data4Page: {
|
||||
total: 0,
|
||||
pageSize: 10,
|
||||
pageIndex: 1
|
||||
}
|
||||
};
|
||||
},
|
||||
|
||||
|
@ -297,16 +315,51 @@ export default {
|
|||
this.loadCostList();
|
||||
this.loadFlow();
|
||||
this.initChart2();
|
||||
this.data4Page.pageIndex = 1;
|
||||
this.loadFlowDataList();
|
||||
},
|
||||
handleCurrentChange(n) {
|
||||
this.data4Page.pageIndex = n;
|
||||
this.loadFlowDataList();
|
||||
},
|
||||
loadFlowDataList() {
|
||||
let postData = {};
|
||||
if (this.project && this.project.id > 0) {
|
||||
postData.projectId = this.project.id;
|
||||
} else {
|
||||
postData.id = this.dept.id;
|
||||
}
|
||||
this.$api.flow.listFlowBySubDeptType(postData, this.data4Page.pageIndex, this.data4Page.pageSize).then(d => {
|
||||
let data = d.rows || [];
|
||||
this.dataList4 = data;
|
||||
this.data4Page.total = d.total;
|
||||
});
|
||||
},
|
||||
initChart2() {
|
||||
let opt = { "tooltip": { "trigger": "item" }, "series": [{ "top": 10, "type": "pie", "radius": "60%",
|
||||
"data": [{ "name": "未发起", "value": 6 },
|
||||
{ "name": " 审批中", "value": 4 },
|
||||
{ "name": "审批通过", "value": 15 }
|
||||
], "label": { "alignTo": "edge", "edgeDistance": "10%", "color": "#fff", "formatter": "{name|{b}}\n{cnt|{c}}", "rich": { "cnt": { "fontSize": 10, "color": "#eee" } } } }] };
|
||||
if (this.$refs.chart2 && this.$refs.chart2.init) {
|
||||
this.$refs.chart2.init(opt);
|
||||
let postData = {};
|
||||
if (this.project && this.project.id > 0) {
|
||||
postData.projectId = this.project.id;
|
||||
} else {
|
||||
postData.id = this.dept.id;
|
||||
}
|
||||
this.$api.flow.groupFlowBySubDeptType(postData).then(d => {
|
||||
let data = (d.data || []).map(it => {
|
||||
return {
|
||||
name: it.taskName,
|
||||
value: it.taskId || 0
|
||||
}
|
||||
});
|
||||
let opt = {
|
||||
"tooltip": { "trigger": "item" }, "series": [{
|
||||
"top": 10, "type": "pie", "radius": "60%",
|
||||
"data": data, "label": { "alignTo": "edge", "edgeDistance": "10%", "color": "#fff", "formatter": "{name|{b}}\n{cnt|{c}}", "rich": { "cnt": { "fontSize": 10, "color": "#eee" } } }
|
||||
}]
|
||||
};
|
||||
if (this.$refs.chart2 && this.$refs.chart2.init) {
|
||||
this.$refs.chart2.init(opt);
|
||||
}
|
||||
});
|
||||
|
||||
},
|
||||
loadFlow() {
|
||||
let ajaxs = [
|
||||
|
@ -423,7 +476,7 @@ export default {
|
|||
|
||||
th {
|
||||
font-size: 14px;
|
||||
color:#409eff;
|
||||
color: #409eff;
|
||||
border: solid 1px #ffffff52;
|
||||
line-height: 60px;
|
||||
}
|
||||
|
@ -435,22 +488,26 @@ export default {
|
|||
line-height: 40px;
|
||||
}
|
||||
}
|
||||
}
|
||||
.data-list3{
|
||||
max-height: calc(100% - 40px);
|
||||
}
|
||||
|
||||
.data-list3 {
|
||||
max-height: calc(100% - 70px);
|
||||
overflow-y: auto;
|
||||
padding:4px;
|
||||
.tr-header{
|
||||
th{
|
||||
color:#409eff;
|
||||
}
|
||||
}
|
||||
td,th{
|
||||
border: solid 1px #409eff8c;
|
||||
padding: 0px 8px;
|
||||
font-size:12px;
|
||||
line-height: 20px;
|
||||
padding: 4px;
|
||||
|
||||
.tr-header {
|
||||
th {
|
||||
color: #409eff;
|
||||
}
|
||||
}
|
||||
|
||||
td,
|
||||
th {
|
||||
border: solid 1px #409eff8c;
|
||||
padding: 0px 8px;
|
||||
font-size: 12px;
|
||||
line-height: 20px;
|
||||
}
|
||||
}
|
||||
|
||||
.cost-sum {
|
||||
|
@ -489,10 +546,13 @@ export default {
|
|||
|
||||
.sum-table {
|
||||
border-collapse: collapse;
|
||||
th{
|
||||
color:#409eff;
|
||||
|
||||
th {
|
||||
color: #409eff;
|
||||
}
|
||||
td,th{
|
||||
|
||||
td,
|
||||
th {
|
||||
line-height: 30px;
|
||||
border: solid 1px #409eff8c;
|
||||
padding: 0px 8px;
|
||||
|
|
|
@ -611,13 +611,17 @@ export default {
|
|||
});
|
||||
},
|
||||
qualityNavClick(n) {
|
||||
let dt1=this.$dt((+new Date())-30*24*3600*1000);
|
||||
let dt2=this.$dt(new Date());
|
||||
this.qualityNav = n;
|
||||
if (n == 0) {
|
||||
this.qualityNavTitle = "安全隐患总数";
|
||||
let postData = {
|
||||
deptId: this.deptInfo?.id || 0,
|
||||
roleType: 0
|
||||
};
|
||||
roleType: 0,
|
||||
startDate:this.$dt(dt1).format("YYYY-MM-DD"),
|
||||
endDate:this.$dt(dt2).format("YYYY-MM-DD"),
|
||||
};
|
||||
this.$api.problemmodify.safetySummary(postData).then(d => {
|
||||
let tmps= (d || []).map(it => {
|
||||
return {
|
||||
|
@ -639,7 +643,9 @@ export default {
|
|||
} else {
|
||||
let postData = {
|
||||
deptId: this.deptInfo?.id || 0,
|
||||
roleType: 0
|
||||
roleType: 0,
|
||||
startDate:this.$dt(dt1).format("YYYY-MM-DD"),
|
||||
endDate:this.$dt(dt2).format("YYYY-MM-DD"),
|
||||
};
|
||||
this.qualityNavTitle = "质量隐患总数";
|
||||
this.$api.problemmodify.qualitySummary(postData).then(d => {
|
||||
|
|
|
@ -120,13 +120,18 @@
|
|||
<module-one-1-1 label="项目全景">
|
||||
<div class="photography-list">
|
||||
<template v-if="photographyList && photographyList.length > 0">
|
||||
<video controls class="photography-video">
|
||||
<source :src="photographyList[0].videoUrl" type="video/mp4" />
|
||||
您的浏览器不支持Video标签。
|
||||
</video>
|
||||
<div class="photography-list-title">
|
||||
{{ photographyList[0].videoDate }}
|
||||
</div>
|
||||
<el-carousel height="100%" :autoplay="false">
|
||||
<el-carousel-item v-for="(item, idx) in photographyList" :key="idx">
|
||||
<video controls class="photography-video">
|
||||
<source :src="item.videoUrl" type="video/mp4" :key="item.videoUrl"/>
|
||||
您的浏览器不支持Video标签。
|
||||
</video>
|
||||
<div class="photography-list-title">
|
||||
{{ item.videoDate }}
|
||||
</div>
|
||||
</el-carousel-item>
|
||||
</el-carousel>
|
||||
|
||||
</template>
|
||||
<template v-else>
|
||||
<div class="photography-list-nodata">
|
||||
|
@ -1249,7 +1254,7 @@ export default {
|
|||
return;
|
||||
}
|
||||
let data = {
|
||||
id:this.infoNav,
|
||||
id: this.infoNav,
|
||||
subDeptId: this.dept.id || 0,
|
||||
projectId: id || 0,
|
||||
attendanceTime: this.$dt(new Date()).format("YYYY-MM-DD"),
|
||||
|
@ -1423,7 +1428,7 @@ export default {
|
|||
this.infoNav = n;
|
||||
this.staffText = text;
|
||||
this.loadAttendanceData();
|
||||
if (n == 0 || n==1) {
|
||||
if (n == 0 || n == 1) {
|
||||
this.surveyUrl = "images/survey_icon_4.png";
|
||||
} else {
|
||||
this.surveyUrl = "images/survey_icon_5.png";
|
||||
|
@ -1679,7 +1684,9 @@ export default {
|
|||
width: calc(100% - 4px);
|
||||
height: calc(100% - 26px);
|
||||
padding-left: 1px;
|
||||
|
||||
.el-carousel{
|
||||
height: 100%;
|
||||
}
|
||||
.photography-video {
|
||||
width: 100%;
|
||||
height: calc(100% - 30px);
|
||||
|
|
|
@ -321,7 +321,7 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
materialSealList: [],
|
||||
selDate: "",
|
||||
selDate: [],
|
||||
elKey: 0,
|
||||
materialSealEl: 0,
|
||||
elSummaryKey: 0,
|
||||
|
@ -420,6 +420,9 @@ export default {
|
|||
this.init();
|
||||
},
|
||||
mounted() {
|
||||
let dt1=this.$dt((+new Date())-30*24*3600*1000);
|
||||
let dt2=this.$dt(new Date());
|
||||
this.selDate=[dt1,dt2];
|
||||
this.$bus.$on(
|
||||
"loadProjects",
|
||||
debounce((prjs) => {
|
||||
|
|
|
@ -397,7 +397,7 @@ export default {
|
|||
data() {
|
||||
return {
|
||||
dictWorkTrainDataType: [],
|
||||
selDate: '',
|
||||
selDate: [],
|
||||
elSummaryKey: 0,
|
||||
elSummaryPrjKey: 0,
|
||||
elKey: 0,
|
||||
|
@ -482,7 +482,10 @@ export default {
|
|||
this.dictWorkTrainDataType = d || [];
|
||||
});
|
||||
},
|
||||
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.projectInfo = res;
|
||||
this.doDeptChane();
|
||||
|
|
Loading…
Reference in New Issue