From f5ae7a0d842003f49c75b5a4f0e124f2fcfd4c52 Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Mon, 14 Oct 2024 18:08:48 +0800 Subject: [PATCH 1/3] =?UTF-8?q?=E4=BD=9C=E4=B8=9A=E8=AE=A1=E5=88=92?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=90=AD=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/realName/index/index.vue | 2 +- pages/workPlan/index/components/risk-calendar.vue | 11 +++++++++++ pages/workPlan/index/index.vue | 6 +++++- 3 files changed, 17 insertions(+), 2 deletions(-) create mode 100644 pages/workPlan/index/components/risk-calendar.vue diff --git a/pages/realName/index/index.vue b/pages/realName/index/index.vue index 65c429d..ea20a5d 100644 --- a/pages/realName/index/index.vue +++ b/pages/realName/index/index.vue @@ -12,7 +12,7 @@ - + diff --git a/pages/workPlan/index/components/risk-calendar.vue b/pages/workPlan/index/components/risk-calendar.vue new file mode 100644 index 0000000..c7c849c --- /dev/null +++ b/pages/workPlan/index/components/risk-calendar.vue @@ -0,0 +1,11 @@ + + + + + diff --git a/pages/workPlan/index/index.vue b/pages/workPlan/index/index.vue index 319f56b..024fc60 100644 --- a/pages/workPlan/index/index.vue +++ b/pages/workPlan/index/index.vue @@ -15,6 +15,8 @@ + + @@ -26,10 +28,12 @@ import TabbarConfig from '../util/tabbar' import DayRiskView from './components/day-risk-view' import HomeNoticeBar from './components/home-notice-bar' +import RiskCalendar from './components/risk-calendar.vue' export default { components: { DayRiskView, - HomeNoticeBar + HomeNoticeBar, + RiskCalendar }, data() { return { From bcb0fac678a056065d3eb8640d907b733d40a2dd Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Tue, 15 Oct 2024 17:01:47 +0800 Subject: [PATCH 2/3] =?UTF-8?q?=E6=97=A5=E8=AE=A1=E5=88=92=20=E7=AD=89?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=E6=90=AD=E5=BB=BA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- main.js | 40 +- package-lock.json | 40 +- package.json | 3 +- pages.json | 16 +- .../dayPlan/components/time-select.vue | 39 ++ pages/workPlan/dayPlan/index.vue | 377 ++++++++++++++++++ .../index/components/day-risk-view.vue | 5 - .../index/components/risk-calendar.vue | 54 ++- pages/workPlan/index/index.vue | 5 + pages/workPlan/util/tabbar.js | 2 +- .../workbench/components/custody-model.vue | 43 ++ .../components/infrastructure-model.vue | 67 ++++ .../workbench/components/production-model.vue | 67 ++++ pages/workPlan/workbench/index.vue | 53 +++ 14 files changed, 745 insertions(+), 66 deletions(-) create mode 100644 pages/workPlan/dayPlan/components/time-select.vue create mode 100644 pages/workPlan/dayPlan/index.vue create mode 100644 pages/workPlan/workbench/components/custody-model.vue create mode 100644 pages/workPlan/workbench/components/infrastructure-model.vue create mode 100644 pages/workPlan/workbench/components/production-model.vue create mode 100644 pages/workPlan/workbench/index.vue diff --git a/main.js b/main.js index 8e78ed1..5869387 100644 --- a/main.js +++ b/main.js @@ -5,9 +5,13 @@ import store from './store' // #ifndef VUE3 import Vue from 'vue' import config from './config.js' + +import moment from 'moment' +moment.locale('zh-cn') Vue.config.productionTip = false // Vue.prototype.$api = $api Vue.prototype.$store = store +Vue.prototype.$moment = moment Vue.prototype.$adpid = '1111111111' Vue.prototype.$backgroundAudioData = { playing: false, @@ -33,23 +37,23 @@ Vue.prototype.$verificationToken = function () { header: { Authorization: uni.getStorageSync('access_token') }, - success: (res) => { - console.log('🚀 ~ res:', res) - let data = res.data - console.log('🚀 ~ res.data:', data) - if (data === '' || data === undefined) { - uni.showToast({ - title: '已在其他设备登录,请重新登录', - icon: 'none' - }) - uni.reLaunch({ - url: '/pages/login' - }) - } - }, - fail: (err) => { - console.log('🚀 ~ err:', err) - } + success: res => { + console.log('🚀 ~ res:', res) + let data = res.data + console.log('🚀 ~ res.data:', data) + if (data === '' || data === undefined) { + uni.showToast({ + title: '已在其他设备登录,请重新登录', + icon: 'none' + }) + uni.reLaunch({ + url: '/pages/login' + }) + } + }, + fail: err => { + console.log('🚀 ~ err:', err) + } }) } @@ -63,7 +67,7 @@ app.$mount() // #ifdef VUE3 import { createSSRApp } from 'vue' -import { data } from 'uview-ui/libs/mixin/mixin'; +import { data } from 'uview-ui/libs/mixin/mixin' export function createApp() { const app = createSSRApp(App) app.use(store) diff --git a/package-lock.json b/package-lock.json index 4ddc616..2fa3fa9 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3,41 +3,6 @@ "version": "3.4.5", "lockfileVersion": 1, "requires": true, - "packages": { - "": { - "name": "hello-uniapp", - "version": "3.4.5", - "license": "MIT", - "dependencies": { - "crypto-js": "^4.2.0", - "image-tools": "^1.4.0", - "luch-request": "^3.1.1" - } - }, - "node_modules/@dcloudio/types": { - "version": "2.6.12", - "resolved": "https://registry.npmjs.org/@dcloudio/types/-/types-2.6.12.tgz", - "integrity": "sha512-mrCMwcINy1IFjU9VUqLeWBkj404yWs5paLDttBcA+eqUjanuUQbBcTVPqlrGgkyzLXDcV2oDDZRSNxNpXi4kMQ==" - }, - "node_modules/crypto-js": { - "version": "4.2.0", - "resolved": "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.2.0.tgz", - "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==" - }, - "node_modules/image-tools": { - "version": "1.4.0", - "resolved": "https://registry.npmmirror.com/image-tools/-/image-tools-1.4.0.tgz", - "integrity": "sha512-TKtvJ6iUwM0mfaD4keMnk1ENHFC470QEjBfA3IlvKdEOufzvWbjbaoNcoyYq6HlViF8+d5tOS1ooE6j7CHf1lQ==" - }, - "node_modules/luch-request": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/luch-request/-/luch-request-3.1.1.tgz", - "integrity": "sha512-p7+mlcEtgRcd0OfXC4XZbyiwSr1XgCeqNT7LlVUjnk7InYl/8d5Rk7BUqAYNA2WRafI1wRIUQWRWZRpeUwWR0w==", - "dependencies": { - "@dcloudio/types": "^2.0.16" - } - } - }, "dependencies": { "@dcloudio/types": { "version": "2.6.12", @@ -61,6 +26,11 @@ "requires": { "@dcloudio/types": "^2.0.16" } + }, + "moment": { + "version": "2.30.1", + "resolved": "https://repo.huaweicloud.com/repository/npm/moment/-/moment-2.30.1.tgz", + "integrity": "sha512-uEmtNhbDOrWPFS+hdjFCBfy9f2YoyzRpwcl+DqpC6taX21FzsTLQVbMV/W7PzNSX6x/bhC1zA3c2UQ5NzH6how==" } } } diff --git a/package.json b/package.json index 1452229..54e2948 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,8 @@ "dependencies": { "crypto-js": "^4.2.0", "image-tools": "^1.4.0", - "luch-request": "^3.1.1" + "luch-request": "^3.1.1", + "moment": "^2.30.1" }, "dcloudext": { "sale": { diff --git a/pages.json b/pages.json index 9450372..91beccc 100644 --- a/pages.json +++ b/pages.json @@ -211,7 +211,6 @@ "navigationBarTitleText": "图片学习" } }, - ////实名制二期-移动端 { //首页 @@ -631,7 +630,6 @@ "navigationStyle": "custom" } }, - { "path": "pages/HealthExaminationApp/index/index", "style": { @@ -692,13 +690,25 @@ "navigationBarTitleText": "消息通知" } }, - /* 作业计划移动端 */ { "path": "pages/workPlan/index/index", "style": { "navigationStyle": "custom" } + }, + /* 工作台 */ + { + "path": "pages/workPlan/workbench/index", + "style": { + "navigationStyle": "custom" + } + }, + { + "path": "pages/workPlan/dayPlan/index", + "style": { + "navigationStyle": "custom" + } } ], "globalStyle": { diff --git a/pages/workPlan/dayPlan/components/time-select.vue b/pages/workPlan/dayPlan/components/time-select.vue new file mode 100644 index 0000000..400b2b3 --- /dev/null +++ b/pages/workPlan/dayPlan/components/time-select.vue @@ -0,0 +1,39 @@ + + + + + diff --git a/pages/workPlan/dayPlan/index.vue b/pages/workPlan/dayPlan/index.vue new file mode 100644 index 0000000..04ac27f --- /dev/null +++ b/pages/workPlan/dayPlan/index.vue @@ -0,0 +1,377 @@ + + + + + diff --git a/pages/workPlan/index/components/day-risk-view.vue b/pages/workPlan/index/components/day-risk-view.vue index 45b8ebd..fc0adaf 100644 --- a/pages/workPlan/index/components/day-risk-view.vue +++ b/pages/workPlan/index/components/day-risk-view.vue @@ -37,11 +37,6 @@ export default { + diff --git a/pages/workPlan/index/index.vue b/pages/workPlan/index/index.vue index 024fc60..0c7864c 100644 --- a/pages/workPlan/index/index.vue +++ b/pages/workPlan/index/index.vue @@ -71,5 +71,10 @@ export default { background: #fff; box-sizing: border-box; padding: 0 10rpx; + + h2 { + margin: 20rpx 0; + font-size: 26rpx; + } } diff --git a/pages/workPlan/util/tabbar.js b/pages/workPlan/util/tabbar.js index fee747f..c061d7f 100644 --- a/pages/workPlan/util/tabbar.js +++ b/pages/workPlan/util/tabbar.js @@ -12,7 +12,7 @@ export default { //新版本新增,页面被打开方式,默认为reLaunch }, { - pagePath: 'pages/realName/workbench/index', + pagePath: 'pages/workPlan/workbench/index', iconPath: '/static/realName/work.png', selectedIconPath: '/static/realName/workSelected.png', text: '工作台' diff --git a/pages/workPlan/workbench/components/custody-model.vue b/pages/workPlan/workbench/components/custody-model.vue new file mode 100644 index 0000000..6af5b72 --- /dev/null +++ b/pages/workPlan/workbench/components/custody-model.vue @@ -0,0 +1,43 @@ + + + + + diff --git a/pages/workPlan/workbench/components/infrastructure-model.vue b/pages/workPlan/workbench/components/infrastructure-model.vue new file mode 100644 index 0000000..1c92159 --- /dev/null +++ b/pages/workPlan/workbench/components/infrastructure-model.vue @@ -0,0 +1,67 @@ + + + + + diff --git a/pages/workPlan/workbench/components/production-model.vue b/pages/workPlan/workbench/components/production-model.vue new file mode 100644 index 0000000..e8b9dcb --- /dev/null +++ b/pages/workPlan/workbench/components/production-model.vue @@ -0,0 +1,67 @@ + + + + + diff --git a/pages/workPlan/workbench/index.vue b/pages/workPlan/workbench/index.vue new file mode 100644 index 0000000..51c2f6f --- /dev/null +++ b/pages/workPlan/workbench/index.vue @@ -0,0 +1,53 @@ + + + + + From 8b6df121428c4bb9725b7702bad8d39a3d5c2b2c Mon Sep 17 00:00:00 2001 From: BianLzhaoMin <11485688+bianliangzhaomin123@user.noreply.gitee.com> Date: Tue, 15 Oct 2024 18:02:51 +0800 Subject: [PATCH 3/3] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=8F=B0=E9=A1=B5?= =?UTF-8?q?=E9=9D=A2=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/workPlan/dayPlan/index.vue | 94 +++++++++++++++++- .../components/infrastructure-model.vue | 20 ++-- .../workbench/components/production-model.vue | 20 ++-- static/images/workPlan/day_plan.png | Bin 0 -> 1479 bytes static/images/workPlan/month_plan.png | Bin 0 -> 877 bytes static/images/workPlan/temporary_plan.png | Bin 0 -> 843 bytes static/images/workPlan/web_plan.png | Bin 0 -> 1430 bytes static/images/workPlan/week_plan.png | Bin 0 -> 792 bytes 8 files changed, 119 insertions(+), 15 deletions(-) create mode 100644 static/images/workPlan/day_plan.png create mode 100644 static/images/workPlan/month_plan.png create mode 100644 static/images/workPlan/temporary_plan.png create mode 100644 static/images/workPlan/web_plan.png create mode 100644 static/images/workPlan/week_plan.png diff --git a/pages/workPlan/dayPlan/index.vue b/pages/workPlan/dayPlan/index.vue index 04ac27f..d2843d5 100644 --- a/pages/workPlan/dayPlan/index.vue +++ b/pages/workPlan/dayPlan/index.vue @@ -144,10 +144,34 @@ - 查看数据 + + + + + + + 请选择 + > + + + + + 请选择 + > + + + + - + 选择工程 X @@ -161,6 +185,20 @@ 暂无数据 + + + + 请选择 + 请选择 + + + + + + {{ item.title }} + + + @@ -205,7 +243,13 @@ export default { dj: { rules: [{ required: true, errorMessage: '请填写' }] } - } + }, + popupType: 'center', + isType: false, + isAUditingList: [ + { title: '未审核', value: 0 }, + { title: '已审核', value: 1 } + ] } }, methods: { @@ -223,6 +267,7 @@ export default { }, onSelectProject() { this.$refs.popup.open('center') + this.popupType = 'center' }, onProjectChange() { console.log('选择---') @@ -251,6 +296,24 @@ export default { }, onBackToday() { this.currentTime = this.$moment().format('YYYY-MM-DD') + }, + onViewSelectProject() { + this.$refs.popup.open('bottom') + this.popupType = 'bottom' + }, + onSelectAllType() { + this.$refs.popup.open('bottom') + this.popupType = 'bottom' + this.isType = true + }, + onClosePopup() { + this.$refs.popup.close() + if (this.isType) { + this.isType = !this.isType + } + }, + onCheckAuditing(val) { + console.log(val, '----') } }, onLoad(options) { @@ -374,4 +437,29 @@ export default { .view-time { margin: 0 35rpx; } +.popup-bottom-content { + height: 50vh; + + .bottom-title { + height: 90rpx; + padding-right: 30rpx; + display: flex; + align-items: center; + justify-content: space-between; + border-bottom: 1px solid #ccc; + } + .bottom-title text:first-child { + color: transparent; + } + + .select-item { + height: 90rpx; + line-height: 90rpx; + text-align: center; + border-bottom: 1px solid #ccc; + } + .select-item:hover { + background-color: rgb(224, 239, 249); + } +} diff --git a/pages/workPlan/workbench/components/infrastructure-model.vue b/pages/workPlan/workbench/components/infrastructure-model.vue index 1c92159..9a47bf3 100644 --- a/pages/workPlan/workbench/components/infrastructure-model.vue +++ b/pages/workPlan/workbench/components/infrastructure-model.vue @@ -4,7 +4,7 @@

基建-计划审核

- + {{ icon.icon_title }} @@ -16,11 +16,19 @@ export default { data() { return { iconList: [ - { icon_title: '日计划', url: '/pages/workPlan/dayPlan/index' }, - { icon_title: '周计划', url: 'xxx' }, - { icon_title: '月计划', url: 'xxx' }, - { icon_title: '涉网计划', url: 'xxx' }, - { icon_title: '临时计划', url: 'xxx' } + { + icon_title: '日计划', + url: '/pages/workPlan/dayPlan/index', + img_src: require('../../../../static/images/workPlan/day_plan.png') + }, + { icon_title: '周计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/week_plan.png') }, + { icon_title: '月计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/month_plan.png') }, + { icon_title: '涉网计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/web_plan.png') }, + { + icon_title: '临时计划', + url: 'xxx', + img_src: require('../../../../static/images/workPlan/temporary_plan.png') + } ] } }, diff --git a/pages/workPlan/workbench/components/production-model.vue b/pages/workPlan/workbench/components/production-model.vue index e8b9dcb..29744f2 100644 --- a/pages/workPlan/workbench/components/production-model.vue +++ b/pages/workPlan/workbench/components/production-model.vue @@ -4,7 +4,7 @@

生产-计划审核

- + {{ icon.icon_title }} @@ -16,11 +16,19 @@ export default { data() { return { iconList: [ - { icon_title: '日计划', url: '/pages/workPlan/dayPlan/index' }, - { icon_title: '周计划', url: 'xxx' }, - { icon_title: '月计划', url: 'xxx' }, - { icon_title: '涉网计划', url: 'xxx' }, - { icon_title: '临时计划', url: 'xxx' } + { + icon_title: '日计划', + url: '/pages/workPlan/dayPlan/index', + img_src: require('../../../../static/images/workPlan/day_plan.png') + }, + { icon_title: '周计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/week_plan.png') }, + { icon_title: '月计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/month_plan.png') }, + { icon_title: '涉网计划', url: 'xxx', img_src: require('../../../../static/images/workPlan/web_plan.png') }, + { + icon_title: '临时计划', + url: 'xxx', + img_src: require('../../../../static/images/workPlan/temporary_plan.png') + } ] } }, diff --git a/static/images/workPlan/day_plan.png b/static/images/workPlan/day_plan.png new file mode 100644 index 0000000000000000000000000000000000000000..a7fde085989da0fde135caa79210c6c62692371d GIT binary patch literal 1479 zcmV;&1vvVNP)cEg-@gdQeHQYqm86m1f4+l}xaz-j7< zpiv2_kfg_*nn@Gwt?rOkw#C z4mRjGdH{@RT{-7%VEh#*tPL;MS}*`ykMvYI4;T`iFF_j%yW`$6dyMh6UCm`BA$7#~W=JIO(bKBJO0Rs|F72;dl$0>xYmP;sMkO z-relVIDZ0-^{q6^(~+JkR&ggQ-o@KU-t3EP?7B;NaFm^{;WEAgC+pR#mZ?`w2oWY# za6S~E_4DsA2%NoW!`;XGpeP#tdMMQ9{xpNLqk6Apy?0uu1m6^6?$n_1Y#xS%T(O39 z=G=SrRuwsEVRY(iF(&^iu;kP z?4YhokW8BVuTZ~{NzQXy={YLi|RSUg>A-S{Z znlINpy(Gtfxa8PS++vk`^XbxnfcP_q>cM8bK@GA&gMPrdM6P-& z0yEK5;hh#)n-`{SC$7t6D8_OXm{JwV5wo|ua(!t6 z(E3S|)*4S2AXnn}c?Z3qFQ!OC2LNF^#3$@UBI@CIWVk$8&m&>wvpJbN8YmbR4uTHa zPXJ-{V7^{@lap{h)&%Cb^Nf-PjWyTOMUK*kdXSMxb7~Q20=!&|Ko;o2#c6?yl98;4 zQp*u(EA#;qKbZ=FY^2Er8pU>?2CR!C)qX~)8r_jp;CAM^F-)3^QVE0)mcelfn81@h zTbPM$cjdmC3=~Wg{~qxQAiC3Txx{I*1a80?0>MP+-nSJLhDobfkUHQhKDo8lmKD2< zYj6wrWSHD^X5pphKgp|He4gDE-g$39J>fngHTGf#4|}sPY0}MH*%Ec2`YDC;uz|Q? z+&8#!a7L&=D2N-Jk6;+@WGCGjYvXYuCjVE>d)dAfP1+K|xZ^#QV?tV7+_A8-v7jHw z!Z`D)7|Ma7r(%;StKwb(FltZ4st2REh{pw7*~U;mA4;kw%h~;OQrjU|H32u_bbYrs zX+p02&TAFaFasN2T_{7YMA@S$s+h)lOm&ir0PgtS!A#0$hYB}GH^rDiHED{xur*2; zu7%4%HTZin(US}sS7$dxE}HpQ4bRcLPP%cl13FugfChI^06{p9iR2)>-w;qKIP zczb*Sg953<7lmK&`aghAxbduK#J##L_U7m?K>Q&nqu;}WulM247uVNus+9g2{k7Xg zO+lEDzH4eMS45e0i5mLxl`JjVE?hrMZ3?q1J}d}{s&eP`Qg*SJOBUy002ovPDHLkV1madxSId~ literal 0 HcmV?d00001 diff --git a/static/images/workPlan/month_plan.png b/static/images/workPlan/month_plan.png new file mode 100644 index 0000000000000000000000000000000000000000..1fc0e618dd864e1c9d417f8ca81e57f1d1af31cb GIT binary patch literal 877 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 literal 0 HcmV?d00001 diff --git a/static/images/workPlan/week_plan.png b/static/images/workPlan/week_plan.png new file mode 100644 index 0000000000000000000000000000000000000000..2cb1c9778c10636ef2388a702d7c86650ae878f7 GIT binary patch literal 792 zcmV+z1LypSP)a7w1WLOIHwZZaxk1UUQW|h?;M@Qf zO&8RDePg4>1TZtPWx3R!z`!tm{EXksoA(Ulvk4EO?|eah9TD&kz>-gB-}>)bB@y zg~o)@fPH!~*S>Xh>l^ofL|npd-Xabv_R1f}>;k=TlioxWF-P_>_7?Qf6MfyZd1M+O z*TV2L-YCbgSAZ^q<_VJI5%&JcbvhTF7E64Zx+vGX$O1%jO=~pLgf2&?KC(bKYED@a z5k;S)(*?3XIBHJGSC6#FMW@9&1s6^HteP_mkU5i8Z`B&`#Czy5f_JwUm6^vEE%V9= zr)g5KL_FW%fJepMpNSv$ujboh4Stm>jB`g^;N zH?=D7NzVSZ5p^(VRU^+U*SeTY^j42@-C0%FQ(vbCtq#a*1pdntZk1pOi4Ew(b-ibi zbwa(>WAI5Pq3VgK=T^9eqF1OSG3NR4BdSX>!DSi2