From 552f768190a90a1406e975ebef20f03647a7eee0 Mon Sep 17 00:00:00 2001
From: haha
Date: Sat, 4 Jan 2025 00:53:16 +0800
Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E5=B1=8F=E9=97=AE=E9=A2=98=E5=A4=84?=
=?UTF-8?q?=E7=90=86?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
yanzhu-bigscreen/src/api/detail.js | 12 +-
yanzhu-bigscreen/src/components/header.vue | 263 ++++++++++++++++--
.../src/pages-old/projectDetail.vue | 49 ++--
yanzhu-bigscreen/src/views/projectDetail.vue | 2 +-
yanzhu-bigscreen/src/views/videoMonitor.vue | 2 +-
.../manage/mapper/ProProjectInfoMapper.java | 2 +
.../mapper/manage/ProProjectInfoMapper.xml | 38 ++-
.../ProProjectInfoSubdeptsUsersMapper.xml | 2 +-
.../controller/ProProjectInfoController.java | 2 +-
.../service/IProProjectInfoService.java | 2 +
.../impl/ProProjectInfoServiceImpl.java | 5 +
11 files changed, 316 insertions(+), 63 deletions(-)
diff --git a/yanzhu-bigscreen/src/api/detail.js b/yanzhu-bigscreen/src/api/detail.js
index 9d1ef10a..9c5a2c4b 100644
--- a/yanzhu-bigscreen/src/api/detail.js
+++ b/yanzhu-bigscreen/src/api/detail.js
@@ -133,16 +133,16 @@ const costOutputSelectYearAndMonth=(data)=> {
return it;
});
let y=data.year;
- let m=data.month-1;
- if(m==0){
- m=12;
- y--;
- }
+ let m=data.month;
+ //if(m==0){
+ // m=12;
+ // y--;
+ //}
let tmps2=(res[1].data||[]).map(it=>{
it.money=it.money?it.money/10000.0:0;
return it;
});
- let curM=tmps2.filter(it=>it.costType==9 && it.year==y && it.month==m);
+ let curM=tmps.filter(it=>it.costType==9 && it.year==y && it.month==m);
curM=curM.length>0?curM[0]:{};
let totalObjs=tmps.filter(it=>it.costType==9);
diff --git a/yanzhu-bigscreen/src/components/header.vue b/yanzhu-bigscreen/src/components/header.vue
index 0159b1ca..bb6c20db 100644
--- a/yanzhu-bigscreen/src/components/header.vue
+++ b/yanzhu-bigscreen/src/components/header.vue
@@ -5,21 +5,101 @@
项目概况
项目详情
-
安全管理
-
质量管理
-
进度管理
-
视频监控
+
+
+
+
-
-
-
-
+
+
+
+
@@ -55,7 +136,8 @@ export default {
data() {
return {
nav: 1,
- selProject: '',
+ selProject: null,
+ selProjectId: '',
projects: [],
isFullScreen: false,
}
@@ -79,7 +161,7 @@ export default {
this.projects = d.rows || [];
if (this.projects.length > 0) {
let id = localStorage.getItem("selProj") || this.projects[0].id
- this.selProject = +id;
+ this.selProjectId = +id;
this.doProjectSelect();
}
});
@@ -93,21 +175,44 @@ export default {
}, 400);
},
doProjectSelect() {
- let tmps = this.projects.filter(d => d.id == this.selProject);
+ let tmps = this.projects.filter(d => d.id == this.selProjectId);
if (tmps.length > 0) {
this.$store.dispatch('SetSelProject', tmps[0]);
+ this.selProject = tmps[0];
} else {
this.$store.dispatch('SetSelProject', null);
+ this.selProject = null;
}
- localStorage.setItem("selProj", this.selProject);
+ localStorage.setItem("selProj", this.selProjectId);
},
doNav(n) {
if (this.nav == n) {
return;
}
this.nav = n;
- let path = ["/index", "/detail", "/prjSafety", "/prjQuality", "/prjProgress","/greenCarbon","/videoMonitor"][n - 1];
- this.$router.push(path);
+ switch (n) {
+ case 1:
+ this.$router.push("/index");
+ break;
+ case 2:
+ this.$router.push("/detail");
+ break;
+ case 3:
+ this.$router.push("/prjSafety");
+ break;
+ case 309:
+ this.$router.push("/videoMonitor");
+ break;
+ case 4:
+ this.$router.push("/prjQuality");
+ break;
+ case 5:
+ this.$router.push("/prjProgress");
+ break;
+ case 6:
+ this.$router.push("/greenCarbon");
+ break;
+ }
},
doLogout() {
this.$confirm('确定注销并退出系统吗?', '提示', {
@@ -133,6 +238,65 @@ export default {
color: #3da2ff;
font-size: 32px;
font-weight: bold;
+
+ .prj-logo {
+ width: 40px;
+ height: 40px;
+ vertical-align: middle;
+ border-radius: 20px;
+ }
+ }
+
+ .head-title-tab {
+ .has-submenu {
+ &:hover {
+ .header-btn-list {
+ display: block;
+ }
+ }
+
+ .header-btn-list {
+ display: none;
+
+ .header-btn-list-item {
+ .header-btn-list-padding {
+ padding: 0px;
+
+ button {
+ width: 120px;
+ }
+
+ &.menu-row2 {
+ .sub-btn {
+ color: #fff;
+
+ &:hover {
+ color: #ccc;
+ }
+ }
+ }
+
+ &.menu-row1 {
+ .sub-btn {
+ color: rgb(1, 169, 255);
+
+ &:hover {
+ color: #fff;
+ }
+ }
+ }
+
+ .sub-btn {
+ &.active {
+ color: #ffffffaa;
+ }
+ }
+ }
+
+ }
+ }
+
+ }
}
}
@@ -145,6 +309,12 @@ export default {
padding: 5px 40px;
position: relative;
top: -8px;
+ .prj-logo {
+ width: 40px;
+ height: 40px;
+ vertical-align: middle;
+ border-radius: 20px;
+ }
}
}
@@ -163,20 +333,41 @@ export default {
top: -5px;
}
}
+
.header-sel-project-pop {
transform: scale(1.5);
width: 200px;
min-width: unset !important;
margin-left: 50px;
}
+
+ .head-title-tab {
+ .header-btn-list {
+ top: 40px;
+ left: 40px;
+
+ .sub-btn {
+ font-size: 18px;
+ width: 140px !important;
+ line-height: 40px;
+ height: 40px;
+ }
+ }
+ }
}
@media (min-width: 2561px) {
-
+
.header-center {
font-size: 52px !important;
margin-top: 10px;
+ .prj-logo {
+ width: 50px;
+ height: 50px;
+ vertical-align: middle;
+ border-radius: 25px;
+ }
}
.header-title-user-info {
@@ -196,5 +387,19 @@ export default {
min-width: unset !important;
margin-left: 100px;
}
+
+ .head-title-tab {
+ .header-btn-list {
+ top: 50px;
+ left: 50px;
+
+ .sub-btn {
+ font-size: 24px;
+ width: 160px !important;
+ line-height: 50px;
+ height: 50px;
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/yanzhu-bigscreen/src/pages-old/projectDetail.vue b/yanzhu-bigscreen/src/pages-old/projectDetail.vue
index 94907f35..93044633 100644
--- a/yanzhu-bigscreen/src/pages-old/projectDetail.vue
+++ b/yanzhu-bigscreen/src/pages-old/projectDetail.vue
@@ -95,7 +95,7 @@
今日出勤
-
@@ -123,7 +123,7 @@
@@ -304,9 +304,10 @@
计划开工日期
- {{
- fmtDate(getCurProject().scheduledStartTime || "")
- }}
+
+ {{getCurProject()}}{{
+ fmtDate(getCurProject().scheduledStartTime || "")
+ }}
@@ -355,8 +356,8 @@
{{
- fmtDate(getCurProject().plannedCompletionTime || "")
- }}
+ fmtDate(getCurProject().plannedCompletionTime || "")
+ }}
@@ -513,9 +514,9 @@
实际:{{ item.endDate || "--" }}
+ ' state-' +
+ item.finishState
+ ">
{{ item.finish }}
@@ -914,13 +915,13 @@ export default {
this.projectLvlDict = d || [];
});
},
- mounted() {
+ mounted() {
this.$bus.$on(
"projectChange",
debounce((res) => {
- this.project = res||this.$root.project;
- this.dept=this.$root.dept||this.dept;
- this.prjs= this.$root.projects||this.prjs;
+ this.project = res || this.$root.project;
+ this.dept = this.$root.dept || this.dept;
+ this.prjs = this.$root.projects || this.prjs;
this.mapName = "";
if (res.id == 0) {
if (this.prjs.length > 1) {
@@ -932,7 +933,7 @@ export default {
this.loadData();
this.loadFilshNode();
})
- );
+ );
if (this.$root.hasInitHeader) {
this.initMe();
}
@@ -942,14 +943,14 @@ export default {
* 劳资预警详情弹窗
*/
doFlowLabourDlg() {
- if(this.project.id==0){
- if(this.prjs.length>1){
+ if (this.project.id == 0) {
+ if (this.prjs.length > 1) {
this.$refs.flowLabourDlg.showDialog(this.prjs[1]);
}
- }else{
+ } else {
this.$refs.flowLabourDlg.showDialog(this.project);
}
-
+
},
getFloorArea() {
this.getProjectId((id) => {
@@ -982,7 +983,7 @@ export default {
} else {
this.$refs.jobWorkerdlg.showDialog({
...data,
- type:this.infoNav,
+ type: this.infoNav,
total: this.laborPersonnelTotal,
datas: this.laborPersonnelData.map((it) => {
return {
@@ -1068,11 +1069,11 @@ export default {
}
if (this.project.id == 0) {
if (this.prjs.length > 1) {
- return this.prjs[1];
+ return this.prjs[1]||{};
}
return {};
}
- return this.project;
+ return this.project||{};
},
getProjectId(cb) {
let func = () => {
@@ -1680,9 +1681,11 @@ export default {
width: calc(100% - 4px);
height: calc(100% - 26px);
padding-left: 1px;
- .el-carousel{
+
+ .el-carousel {
height: 100%;
}
+
.photography-video {
width: 100%;
height: calc(100% - 30px);
diff --git a/yanzhu-bigscreen/src/views/projectDetail.vue b/yanzhu-bigscreen/src/views/projectDetail.vue
index 11b4a595..bc5cb0d7 100644
--- a/yanzhu-bigscreen/src/views/projectDetail.vue
+++ b/yanzhu-bigscreen/src/views/projectDetail.vue
@@ -214,7 +214,7 @@
-
+
diff --git a/yanzhu-bigscreen/src/views/videoMonitor.vue b/yanzhu-bigscreen/src/views/videoMonitor.vue
index 8a5ef6b9..e842bbab 100644
--- a/yanzhu-bigscreen/src/views/videoMonitor.vue
+++ b/yanzhu-bigscreen/src/views/videoMonitor.vue
@@ -76,7 +76,7 @@ export default {
}
},
mounted() {
- this.$store.dispatch('ChangeNav', 7);
+ this.$store.dispatch('ChangeNav', 309);
this.dpi = this.$dpi();
window.addEventListener("resize", () => {
if (this.dpi != this.$dpi()) {
diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/mapper/ProProjectInfoMapper.java b/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/mapper/ProProjectInfoMapper.java
index 73bbc81c..cf586b6e 100644
--- a/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/mapper/ProProjectInfoMapper.java
+++ b/yanzhu-common/yanzhu-common-mapper/src/main/java/com/yanzhu/manage/mapper/ProProjectInfoMapper.java
@@ -74,4 +74,6 @@ public interface ProProjectInfoMapper
* @return
*/
public int updateDept(ProDept proDept);
+
+ List
selectMyProjectList(ProProjectInfo proProjectInfo);
}
diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoMapper.xml b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoMapper.xml
index 7a0b2937..73b634e8 100644
--- a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoMapper.xml
+++ b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoMapper.xml
@@ -345,5 +345,41 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where dept_id = #{deptId}
-
+
\ No newline at end of file
diff --git a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoSubdeptsUsersMapper.xml b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoSubdeptsUsersMapper.xml
index 39a6d94d..a95c0ac3 100644
--- a/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoSubdeptsUsersMapper.xml
+++ b/yanzhu-common/yanzhu-common-mapper/src/main/resources/mapper/manage/ProProjectInfoSubdeptsUsersMapper.xml
@@ -274,7 +274,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
) u
ON u.craft_type = dic.dict_value
WHERE
- dic.dict_type = 'pro_craft_type';
+ dic.dict_type = 'pro_craft_type'
diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoController.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoController.java
index a5056338..54533d96 100644
--- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoController.java
+++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/controller/ProProjectInfoController.java
@@ -149,7 +149,7 @@ public class ProProjectInfoController extends BaseController
if(StringUtils.isNotEmpty(list)){
return getDataTable(list);
}
- list = proProjectInfoService.selectProProjectInfoList(proProjectInfo);
+ list = proProjectInfoService.selectMyProjectList(proProjectInfo);
redisService.setCacheObject(key, list, Constants.CAPTCHA_EXPIRATION, TimeUnit.MINUTES);
return getDataTable(list);
}
diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoService.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoService.java
index b61289cb..5f35a6e8 100644
--- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoService.java
+++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/IProProjectInfoService.java
@@ -70,4 +70,6 @@ public interface IProProjectInfoService
* 加载地址信息到缓存
*/
public void loadingProjectsCache();
+
+ public List selectMyProjectList(com.yanzhu.manage.domain.ProProjectInfo proProjectInfo);
}
diff --git a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoServiceImpl.java b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoServiceImpl.java
index 17fffccc..6a81dc30 100644
--- a/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoServiceImpl.java
+++ b/yanzhu-modules/yanzhu-manage/src/main/java/com/yanzhu/manage/service/impl/ProProjectInfoServiceImpl.java
@@ -88,6 +88,11 @@ public class ProProjectInfoServiceImpl implements IProProjectInfoService
}
}
+ @Override
+ public List selectMyProjectList(ProProjectInfo proProjectInfo) {
+ return proProjectInfoMapper.selectMyProjectList(proProjectInfo);
+ }
+
/**
* 查询项目信息
*