From 521e8ba3e006eccf6b241ccb222695ae479a1e83 Mon Sep 17 00:00:00 2001 From: yunkexin <760754045@qq.com> Date: Tue, 28 Oct 2025 08:40:05 +0800 Subject: [PATCH 01/10] 1 --- pages.json | 11 + pages/apply/jobList.vue | 499 ++++++++++++++++++++++++++++++++++++ pages/apply/jobRiskShow.vue | 89 +++++++ services/apply.js | 10 + services/common.js | 28 ++ style/css/newTemplate.css | 152 +++++++++++ 6 files changed, 789 insertions(+) create mode 100644 pages/apply/jobList.vue create mode 100644 pages/apply/jobRiskShow.vue create mode 100644 style/css/newTemplate.css diff --git a/pages.json b/pages.json index 5aa860a..828c22f 100644 --- a/pages.json +++ b/pages.json @@ -79,6 +79,17 @@ "navigationBarTitleText": "视频播放" } }, + { + "path": "pages/apply/jobList", + "style": { + "navigationBarTitleText": "岗位风险" + } + }, { + "path": "pages/apply/jobRiskShow", + "style": { + "navigationBarTitleText": "岗位风险" + } + }, { "path": "pages/apply/complete", "style": { diff --git a/pages/apply/jobList.vue b/pages/apply/jobList.vue new file mode 100644 index 0000000..d348bb4 --- /dev/null +++ b/pages/apply/jobList.vue @@ -0,0 +1,499 @@ + + + + + \ No newline at end of file diff --git a/pages/apply/jobRiskShow.vue b/pages/apply/jobRiskShow.vue new file mode 100644 index 0000000..9194939 --- /dev/null +++ b/pages/apply/jobRiskShow.vue @@ -0,0 +1,89 @@ + + + + + \ No newline at end of file diff --git a/services/apply.js b/services/apply.js index 5ef770c..ec17266 100644 --- a/services/apply.js +++ b/services/apply.js @@ -87,4 +87,14 @@ export const PagedDangerJob = (params) => { method: 'post', data: params, }) +} + +//危险作业查看 +export const GetPostRiskList = (params) => { + params.isAll=true + return request.send({ + url: '/BI/H5Controller/GetPostRiskList', + method: 'post', + data: params, + }) } \ No newline at end of file diff --git a/services/common.js b/services/common.js index 76c81cf..1859022 100644 --- a/services/common.js +++ b/services/common.js @@ -35,4 +35,32 @@ export const AreaEntities = (params) => { method: 'post', data: params, }) +} +//辨识部门 +export const DepartOrderPaged = (params) => { + params.isAll=true + return request.send({ + url: '/BI/H5Controller/DepartOrderPaged', + method: 'post', + data: params, + }) +} +//辨识岗位 +export const PostOrderPaged = (params) => { + params.isAll=true + return request.send({ + url: '/BI/H5Controller/PostOrderPaged', + method: 'post', + data: params, + }) +} + +//辨识岗位 +export const getEnum = (params) => { + // params.isAll=true + return request.send({ + url: '/PF/Extend/GetEnum', + method: 'get', + data: params, + }) } \ No newline at end of file diff --git a/style/css/newTemplate.css b/style/css/newTemplate.css new file mode 100644 index 0000000..328bfaf --- /dev/null +++ b/style/css/newTemplate.css @@ -0,0 +1,152 @@ +/* .todo-page>>>.u-steps-item__line { + width: 187.6px !important; + } */ +/* 进度条步骤少于3 */ +.page-wrap { + padding-bottom: 150px; +} +.allview { + padding: 0px 0px 180px 0px; +} + +.video { + padding: 16px 16px 10px; +} + +.background { + position: fixed; + top: 0; + left: 0; + right: 0; + bottom: 0; + background: #edf1fd; + z-index: -1; +} + +.richtext { + font-size: 14px; +} + +.card { + margin: 20px 16px 140px 16px; + /* border: 1px solid #EBEEF5; */ + padding: 20px 30px 80px 30px; + /* box-shadow: rgba(0, 0, 0, 0.08) 0px 0px 3px 1px; */ + background-color: #ffffff; + border-radius: 10px; +} + +.upload-title { + font-size: 14px; + color: #8e8b9c; + line-height: 22px; + padding: 8px 0px; +} + +.demo-ruleForm>>>.u-form-item__body__left__content__label { + font-size: 14px; + color: #8e8b9c; + /* justify-content: flex-start; */ +} + +.demo-ruleForm>>>.u-form-item__body__left__content__ { + left: -11px; + top: 0px +} + +.demo-ruleForm>>>.u-textarea__field { + font-size: 14px; +} + +.demo-ruleForm>>>.u-cell__title-text { + font-size: 14px; +} + +.check-p>>>.u-form-item__body__right__content__slot { + justify-content: flex-end; +} + +.bottom-button { + position: fixed; + bottom: 0; + left: 0; + width: 100%; + padding: 10px 16px; + box-sizing: border-box; + background: #edf1fd; + z-index: 999; +} + +.sub-form>>>.u-form-item__body__left__content__label { + font-size: 14px; + /* justify-content: flex-start; */ +} + +.sub-form>>>.u-textarea__field { + font-size: 14px; +} + +.sub-form>>>.u-cell__title-text { + font-size: 14px; +} + +.uni-collapse-item { + box-sizing: border-box; + +} + +.sub-form>>>.uni-collapse-item__title { + display: flex; + width: 100%; + box-sizing: border-box; + flex-direction: row; + align-items: center; + transition: border-bottom-color .3s; + border-bottom: 1px solid #ebeef5; +} + +.sub-form>>>.uni-collapse-item__title-wrap { + /* width: 100%; */ + flex: 1; +} +.sub-form>>>.uni-collapse-item__title-box { + padding: 0px; +} + +.uni-collapse-item__title-box { + padding: 0px; + display: flex; + width: 100%; + box-sizing: border-box; + flex-direction: row; + justify-content: space-between; + align-items: center; + height: 48px; + line-height: 48px; + background-color: #fff; + color: #303133; + font-size: 13px; + font-weight: 500; + cursor: pointer; + outline: none; + white-space: nowrap; + overflow: hidden; + text-overflow: ellipsis; + flex: 1; + +} + +.uni-collapse-item__title-text { + flex: 1; + font-size: 14px; + white-space: nowrap; + color: inherit; + overflow: hidden; + text-overflow: ellipsis; +} +.right-align { + display: flex; + flex-wrap: wrap; + justify-content: end; + flex: 1; +} \ No newline at end of file From 658191f0e22968c4a00c3ac03514d35225b05fb0 Mon Sep 17 00:00:00 2001 From: yunkexin <760754045@qq.com> Date: Tue, 28 Oct 2025 11:17:06 +0800 Subject: [PATCH 02/10] 1 --- pages/apply/jobList.vue | 53 ++++++++++++++------------- pages/apply/jobRiskShow.vue | 71 ++++++++++++++++++++++++++++++++++--- 2 files changed, 93 insertions(+), 31 deletions(-) diff --git a/pages/apply/jobList.vue b/pages/apply/jobList.vue index d348bb4..f05eaaf 100644 --- a/pages/apply/jobList.vue +++ b/pages/apply/jobList.vue @@ -20,7 +20,7 @@ - + * @@ -36,7 +36,7 @@ - + @@ -46,7 +46,7 @@ - + @@ -58,7 +58,7 @@ - + 生产岗位告知卡 0) { item.Nav_Librarys.map(item1 => { item1.EVALUATE_LEVELName = item1.EVALUATE_LEVEL !== undefined ? this.enumsData['SKEvaluateLevelEnum'].find(item => item.code === item1.EVALUATE_LEVEL).name : ''; + if(!item1.MINE_NAME){ + item1.MINE_NAME = item1.MineType !== undefined ? this.enumsData['SKProductionUnit'].find(item => item.code === item1.MineType).name : ''; + } + }) } }) @@ -269,15 +273,6 @@ if (e.length === allIds.length && allIds.length > 0) { this.checkedItems.unshift('all'); } - // const diff = this.checkedItems.filter(item => !e.includes(item)); - - // // 取消其他选项 - // this.checkedItems = e.filter(item => item !== 'all'); - - // // 检查是否所有选项都被选中,如果是则自动勾选全选 - // if (this.checkedItems.length === allIds.length && allIds.length > 0) { - // this.checkedItems.unshift('all'); - // } } } } @@ -286,16 +281,10 @@ this.allData.map(item => { if (item.DEPARTMENT_ID == this.model.DEPARTMENT_ID && item.POST_NAME == this.model.Nav_Post.NAME) { this.filterDatas = item - console.log(this.filterDatas, 'this.filterData') } }) }, - checkChange(e) { - console.log(e, '888') - }, submit() { - console.log(this.checkedItems, '9999') - console.log(this.filterDatas, '9999') let arr = [] this.filterDatas.Nav_Librarys.map(item => { this.checkedItems.map(item1 => { @@ -304,7 +293,6 @@ } }) }) - console.log(arr, 'arr') //MEASURES_NAME处理 const groupedData = arr.reduce((acc, item) => { const riskName = item.RISK_NAME; @@ -325,7 +313,22 @@ // // 1. 按 RISK_NAME 分组,收集所有对应的 RISK_DESCRIPTION + const allPhotos = []; + const photoNames = new Set(); // 用于记录已添加的图片name,实现去重 + arr.forEach(item => { + // 确保当前对象存在 Nav_Photo 且是数组,避免报错 + if (Array.isArray(item.Nav_Photo)) { + item.Nav_Photo.forEach(photo => { + // 判断图片name是否已存在,不存在则添加 + if (!photoNames.has(photo.name)) { + allPhotos.push(photo); + photoNames.add(photo.name); + } + }); + } + }); + // 此时 allPhotos 已包含所有 Nav_Photo 中的图片对象 let newarr = { departName: this.filterDatas.Nav_Department ? this.filterDatas.Nav_Department.NAME : '', userName: this.filterDatas.USER_NAME, @@ -357,13 +360,9 @@ }) .join(''), RISK_DESCRIPTION: this.handleData(arr,'RISK_DESCRIPTION'), - EMERGENCY: this.handleData(arr,'EMERGENCY') + EMERGENCY: this.handleData(arr,'EMERGENCY'), + Nav_Photo:allPhotos } - - console.log(newarr, 'nnnnnnnnnnnnn') - - - uni.setStorageSync('detailData', newarr); uni.navigateTo({ url: '/pages/apply/jobRiskShow' diff --git a/pages/apply/jobRiskShow.vue b/pages/apply/jobRiskShow.vue index 9194939..dcd209a 100644 --- a/pages/apply/jobRiskShow.vue +++ b/pages/apply/jobRiskShow.vue @@ -1,5 +1,5 @@