From b08169e47e402ed24d1955f2bd9e57b926dab666 Mon Sep 17 00:00:00 2001 From: jiayu Date: Fri, 11 Jul 2025 17:03:21 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=AD=E6=B0=B4=E5=8C=97=E6=96=B9=E9=9C=80?= =?UTF-8?q?=E6=B1=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .env.development | 1 + src/api/modules/labor.ts | 4 + .../images/larborManagement/back-ic.png | Bin 0 -> 634 bytes .../images/larborManagement/xd-bg-warn.png | Bin 0 -> 1141 bytes .../images/larborManagement/xd-ic-warn.png | Bin 0 -> 281 bytes .../laborManagement/data-dialog.vue | 7 +- .../laborManagement/index.vue | 2 +- .../laborManagement/leftTop.vue | 38 ++++- .../laborManagement/member-count-list.vue | 133 +++++++++++++----- 9 files changed, 141 insertions(+), 44 deletions(-) create mode 100644 src/assets/images/larborManagement/back-ic.png create mode 100644 src/assets/images/larborManagement/xd-bg-warn.png create mode 100644 src/assets/images/larborManagement/xd-ic-warn.png diff --git a/.env.development b/.env.development index 9fc1912..01f4021 100644 --- a/.env.development +++ b/.env.development @@ -3,6 +3,7 @@ NODE_ENV = 'development' # 本地环境接口地址(/api/index.ts文件中使用) # 后端本地 +# VITE_API_URL = 'http://10.0.1.49' # VITE_API_URL = 'http://192.168.34.155:28890' #彭杰鞍钢本地 # VITE_API_URL = 'http://192.168.34.155:19111' # VITE_API_URL = 'http://192.168.34.221:9111' #雄哥本地 diff --git a/src/api/modules/labor.ts b/src/api/modules/labor.ts index 2ad2897..b1e0613 100644 --- a/src/api/modules/labor.ts +++ b/src/api/modules/labor.ts @@ -21,6 +21,10 @@ export const getRealTimeDataApi = (params: {}) => { export const getMemberInfoList = (params: {}) => { return http.post(BASEURL + `/xmgl/workerInfo/selectWorkerInfoList`, params); }; +// 一键出场 +export const outMember = (params: {}) => { + return http.post(BASEURL + `/xmgl/workerAttendance/reissueAttendanceCard`, params); +}; //查询所属企业 export const getCompanyDataList = (params: {}) => { return http.post(BASEURL + `/xmgl/enterpriseInfo/list`, params); diff --git a/src/assets/images/larborManagement/back-ic.png b/src/assets/images/larborManagement/back-ic.png new file mode 100644 index 0000000000000000000000000000000000000000..f10c8a5194149f6970c6c7a3aaeaee3b79b1a3ca GIT binary patch literal 634 zcmV-=0)_pFP)gb+d#cr(@2Rowsxf*=TjAP9mL5Hu+@J4GUI9}rg{VLXC{hr{ce!g31?(Go5_ z_sf8E1}VZnwBIU`7zq0T`ko>^2LKB%Eyc znx2C#g5Db#lBh6;VEew1uR(_RcOfmpS)%mPJv({rAA&_PD}37QtZ@=3Q$Q6ibn3-A zS*hsU2x+9P{NmuzhO|3#*pjqcNy~z?ds&*L{iS|AoZ}iexh#c^1bB}+(#e*Ve+WCR zh|Nc!`fQ@H@BfmH)iS0ktYo>by^J!FCdht|(U5k&(i%xe9X}VP<@8wiVIG8A1K#?H zIymJy9MlNB%P1o~PFg&Vr}fgIY$dBn>%OpD<)>%&MO`Al85n&5rv~Ce-@nanfa4MvEPhb|yQZTc_F^-r9 z7!q4p%^|+h50E~pVYmWAwExs{^wcTla%lD3XB-4reee3$w%24q5ClOG1VJ$117@Sj U61i}HH2?qr07*qoM6N<$f~6A;d;kCd literal 0 HcmV?d00001 diff --git a/src/assets/images/larborManagement/xd-bg-warn.png b/src/assets/images/larborManagement/xd-bg-warn.png new file mode 100644 index 0000000000000000000000000000000000000000..6c91aee046c8f439324274a83c0d337ea5f2e1f6 GIT binary patch literal 1141 zcmeAS@N?(olHy`uVBq!ia0y~yV44nOALC#HlI@DCUjZr30*}aI1_nh75N33pW|#mJ zWGoJHcVbv~PUa<$!;&U>cv7h@-A}f%~<>}%WQo;E4#_rxj0V1v!pI;0yym`97 zFqrA+Mef!e!gh=;5gyi`qi#<1V~j4}Y1`w!Ew{&#oq>UU%jB-}VKL8Q;+~&pU})&r z!NQ>MxjOdx|GQUTnlLa}EGYe(^{$wc!NDztiD7~u(5Wd$R2di~3rB@ULt->d&^;?m zyM6fh(QUnk&lwmVG?WE>yxCR%{PgcHJAv6&S&xz7#2rTaa}sI#ULL^Gfq}u()z4*} HQ$iB}22&B; literal 0 HcmV?d00001 diff --git a/src/assets/images/larborManagement/xd-ic-warn.png b/src/assets/images/larborManagement/xd-ic-warn.png new file mode 100644 index 0000000000000000000000000000000000000000..51a9748e4f7bdcdd1d52f194a0eaf5a46c42588b GIT binary patch literal 281 zcmeAS@N?(olHy`uVBq!ia0vp^x**KK1|+Sd9?b$$oCO|{#S9FJ79h;%I?XTvD9BhG zWx{mHwP;9U}{!ypbv(l{k$EG_=idMef_U_*EjP4zI z&weUR-OYdaWXN|l-Xs&Q#eovNhcc#w?1)q9zkkVQ-|@GNhcZOm78^*lUexGuON6U< z)SdfM^^5!t+W?RTpbC>3rCsmiE|*NXwX&`*=Xyr?Th&JjTf4tz{^1R;l7E_DUw#Sb Oat2RVKbLh*2~7Zsp>MAM literal 0 HcmV?d00001 diff --git a/src/views/sevenLargeScreen/laborManagement/data-dialog.vue b/src/views/sevenLargeScreen/laborManagement/data-dialog.vue index 6fe9869..2832b05 100644 --- a/src/views/sevenLargeScreen/laborManagement/data-dialog.vue +++ b/src/views/sevenLargeScreen/laborManagement/data-dialog.vue @@ -8,7 +8,7 @@
- +
@@ -29,6 +29,7 @@ import memberCountList from "./member-count-list.vue"; import MemberAllShow from "./member-all-show.vue"; import MemberMoreList from "./member-more-list.vue"; import { GlobalStore } from "@/stores"; +const emit = defineEmits(["refresh"]); let showDialog = ref(false as any); const postData = ref({} as any); let dialogTitle = ref("" as any); @@ -46,7 +47,9 @@ function openDialog(obj: any) { postData.value = obj showDialog.value = true; } - +const handleRefresh = () => { + emit("refresh"); +}; // 暴露给父组件的参数和方法(外部需要什么,都可以从这里暴露出去) defineExpose({ openDialog diff --git a/src/views/sevenLargeScreen/laborManagement/index.vue b/src/views/sevenLargeScreen/laborManagement/index.vue index cd05554..f4ca500 100644 --- a/src/views/sevenLargeScreen/laborManagement/index.vue +++ b/src/views/sevenLargeScreen/laborManagement/index.vue @@ -9,7 +9,7 @@
- + diff --git a/src/views/sevenLargeScreen/laborManagement/leftTop.vue b/src/views/sevenLargeScreen/laborManagement/leftTop.vue index a70cb4f..05307e2 100644 --- a/src/views/sevenLargeScreen/laborManagement/leftTop.vue +++ b/src/views/sevenLargeScreen/laborManagement/leftTop.vue @@ -27,13 +27,14 @@
- + + {{ item.regionName }}
@@ -117,12 +118,12 @@
- +
- +
@@ -491,6 +492,9 @@ const option = reactive({ // 打开弹窗 const openDialogData = (tip: any, regionIdForUface = "") => { + if (regionIdForUface) { + getPresentByRegion(); + } emits("openDialog", { type: 1, tip, regionIdForUface }); }; const openDialogHistoryData = (tip: any) => { @@ -505,7 +509,12 @@ const getPresentByRegion = async () => { } console.log("人员分布", res); }; - +const handleChangeEnterprise = () => { + searchForm.teamId = ""; + searchForm.departmentId = ""; + getTeamList(); + getDepartmentList(); +}; // 获取闸机分组列表 const getUfaceDevGroupList = async () => { const res = await getUfaceDevGroupListApi({ projectSn: store.sn }); @@ -543,7 +552,9 @@ const timeChange = (e: any) => { }; function drawChart() { - let myEchartsNum = echarts.init(document.getElementById("myEchartsNum")); + let dom = document.getElementById("myEchartsNum"); + if (!dom) return; + let myEchartsNum = echarts.init(dom); myEchartsNum.setOption(option); } //获取人员数据 @@ -678,6 +689,9 @@ const loadMethod = async () => { await getPersonList2(); await getQueryTodayList2(); await getCrewRealTimeData(); + if (COMPANY == "zsbf") { + await getPresentByRegion(); + } }; //将方法暴露给父组件 defineExpose({ @@ -685,12 +699,14 @@ defineExpose({ }); onMounted(async () => { getUfaceDevList(); - getPresentByRegion(); getUfaceDevGroupList(); getPersonList(); getQueryTodayList(); getCrewRealTimeData(); getCompanyList(); + if (COMPANY == "zsbf") { + getPresentByRegion(); + } }); @@ -913,6 +929,7 @@ onMounted(async () => { color: #ffffff; line-height: 24px; margin: 0 16px; + white-space: nowrap; } .date { font-size: 12px; @@ -998,6 +1015,13 @@ onMounted(async () => { &.mt { margin-top: 24px; } + &.warn { + background: url("@/assets/images/larborManagement/xd-bg-warn.png") no-repeat; + background-size: 100% 100%; + .sd-item-bottom .num { + color: #ff0000; + } + } // background: rgba(39, 88, 192, 0.06); .sd-item-top { display: flex; diff --git a/src/views/sevenLargeScreen/laborManagement/member-count-list.vue b/src/views/sevenLargeScreen/laborManagement/member-count-list.vue index d946f7e..da3ca18 100644 --- a/src/views/sevenLargeScreen/laborManagement/member-count-list.vue +++ b/src/views/sevenLargeScreen/laborManagement/member-count-list.vue @@ -57,16 +57,18 @@
姓名
联系电话
所属部门
-
进场日期
+
{{ props.regionIdForUface ? "进场日期" : "登记日期" }}
在职状态
身份证号
人员类型
-
所属企业
+
所属企业
+
异常分析
+
-
-
{{index + 1}}
+
+
{{ index + 1 }}
-
{{item.workerName}}
-
{{item.phoneNumber}}
-
{{item.personType == 1?item.teamName:item.personType == 2?item.departmentName:''}}
-
{{item.enterDate}}
-
{{onlineWorkList[item.inserviceType - 1].name}}
-
{{item.idCard}}
-
{{memberTypeList[item.personType - 1].name}}
-
{{item.enterpriseName}}
+
{{ item.workerName }}
+
{{ item.phoneNumber }}
+
{{ item.personType == 1 ? item.teamName : item.personType == 2 ? item.departmentName : '' }}
+
{{ props.regionIdForUface ? item.attendTime : item.enterDate }}
+
{{ onlineWorkList[item.inserviceType - 1].name }}
+
{{ item.idCard }}
+
{{ memberTypeList[item.personType - 1].name }}
+
{{ item.enterpriseName }}
+
{{ item.alarmFlag }}
+
@@ -96,33 +105,34 @@ @@ -268,6 +326,9 @@ onMounted(async () => { overflow: hidden; text-overflow: ellipsis; } + &.danger { + color: #ff0000; + } } .listStyle:hover { background: #091f3f; @@ -309,6 +370,10 @@ onMounted(async () => { border-color: transparent; } } +.back-ic { + width: 20px; + height: 20px; +} // ::v-deep .el-select .el-input .el-select__caret { // color: #fff; // }