diff --git a/package-lock.json b/package-lock.json index 9a5c8d8..c48b769 100644 --- a/package-lock.json +++ b/package-lock.json @@ -18616,6 +18616,11 @@ "integrity": "sha512-KmvZVtmM26BQOMK1rwUZsrqxEGeKiYSZGA7SNWE6uExx8UX/cj9hq2MRV/wWC3Cq6AoeDGk57rL9YMFRel/q+g==", "dev": true }, + "vue-infinite-loading": { + "version": "2.4.5", + "resolved": "https://registry.npmjs.org/vue-infinite-loading/-/vue-infinite-loading-2.4.5.tgz", + "integrity": "sha512-xhq95Mxun060bRnsOoLE2Be6BR7jYwuC89kDe18+GmCLVrRA/dU0jrGb12Xu6NjmKs+iTW0AA6saSEmEW4cR7g==" + }, "vue-jest": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/vue-jest/-/vue-jest-1.0.2.tgz", diff --git a/package.json b/package.json index 4190202..c44ae00 100644 --- a/package.json +++ b/package.json @@ -38,6 +38,7 @@ "vconsole": "^3.3.4", "vue": "2.5.16", "vue-cookie": "1.1.4", + "vue-infinite-loading": "^2.4.5", "vue-router": "3.0.1", "vuex": "3.0.1", "wangeditor": "^3.1.1" diff --git a/src/api/api_equipment.js b/src/api/api_equipment.js new file mode 100644 index 0000000..fa0675e --- /dev/null +++ b/src/api/api_equipment.js @@ -0,0 +1,36 @@ +import http from '../utils/http' + +/** + * 设备相关的 + */ +// 设备分类 +export const apiFindEquipmentType = data => { + return http({ url: '/lz_management/api/findEquipmentType', method: 'post', data }) +} + +// 修改设备信息 +export const apiChangeEquipment = data => { + return http({ url: '/lz_management/api/changeEquipmentInfo', method: 'post', data }) +} + +// 根据编码获取设备信息 +export const apiFindEquipmentByCode = (data, code) => { + return http({ url: `/lz_management/api/findEquipmentById?code=${code}`, method: 'get', data }) +} + + +// 搜索用户 +export const apiFindStaff = data => { + return http({ url: `/lz_management/api/findEmployeeByName`, method: 'post', data }) +} + +// 搜索使用地 +export const apiFindDepat = data => { + return http({ url: `/lz_management/api/findSpecialApplyByName`, method: 'post', data }) +} + +// 获取使用地,使用人的设备信息 +export const apiFindStaffDevice = data => { + return http({ url: `/lz_management/api/findUsersEquipmentsByName`, method: 'post', data }) +} + diff --git a/src/api/api_role.js b/src/api/api_role.js new file mode 100644 index 0000000..79c3539 --- /dev/null +++ b/src/api/api_role.js @@ -0,0 +1,18 @@ +import http from '../utils/http' + +// 获取侧边菜单栏 +export const apiGetRoleList = params => { + return http({url: '/lz_management/user/lzrecordrole/list', method: 'get', params}) +} + +export const apiSysMenuList = params => { + return http({url: '/lz_management/user/lzrecordrole/menu/list', method: 'get', params}) +} + +export const apiSysRoleInfo = (params, id) => { + return http({url: `/lz_management/user/lzrecordrole/info${id}`, method: 'get', params}) +} + +export const apiSysRoleConfirm = (data, type) => { + return http({ url: `/lz_management/user/lzrecordrole/updateOrAdd`, method: 'post', data }) +} diff --git a/src/api/api_staff_role.js b/src/api/api_staff_role.js new file mode 100644 index 0000000..2caa783 --- /dev/null +++ b/src/api/api_staff_role.js @@ -0,0 +1,26 @@ +import http from '../utils/http' + +// 获取侧边菜单栏 +export const apiGetRoleList = params => { + return http({url: '/lz_management/user/lzstaffrole/list', method: 'get', params}) +} + +export const apiSysRoleInfo = params => { + return http({url: `/lz_management/user/lzstaffrole/info/${params}`, method: 'post'}) +} + +export const apiSysMenuList = params => { + return http({url: '/lz_management/user/lzstaffrole/menu/list', method: 'get', params}) +} + +export const apiSysRoleList = (params, id) => { + return http({url: `/lz_management/user/lzstaffrole/role/list/${id}`, method: 'get', params}) +} + +export const apiDelete = params => { + return http({url: `/lz_management/user/lzstaffrole/delete/${params}`, method: 'post'}) +} + +export const apiSysRoleConfirm = (data, type) => { + return http({url: `/lz_management/user/lzstaffrole/updateOrAdd`, method: 'post', data}) +} diff --git a/src/router/index.js b/src/router/index.js index 3042ca9..5325e7d 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -26,6 +26,16 @@ const globalRoutes = [ { path: '/login', component: _import('common/login'), name: 'login', meta: { title: '登录' } } ] +const dingtalkRoutes=[ + { path: '/devicemain', component: _import('modules/device/device-main'), name: 'devicemain', meta: { title: '资产盘点主入口' } }, + { path: '/devicetype', component: _import('modules/device/device-type'), name: 'devicetype', meta: { title: '设备类型' } }, + { path: '/deviceqr', component: _import('modules/device/device-qr'), name: 'deviceqr', meta: { title: '设备自带编码' } }, + { path: '/devicemark', component: _import('modules/device/device-mark'), name: 'devicemark', meta: { title: '设备备注' } }, + { path: '/devicestaff', component: _import('modules/device/device-staff-device'), name: 'devicestaff', meta: { title: '人员资产信息' } }, + { path: '/devicestaffdepat', component: _import('modules/device/device-staff-depat'), name: 'devicestaffdepat', meta: { title: '搜索人员' } }, + { path: '/devicedetail', component: _import('modules/device/device-detail'), name: 'devicedetail', meta: { title: '资产盘点设备详情页' } } +] + const configRoutes = [ { path: '/recorddetail', @@ -48,25 +58,43 @@ const mainRoutes = { // 2. iframeUrl: 是否通过iframe嵌套展示内容, '以http[s]://开头': 是, '': 否 // 提示: 如需要通过iframe嵌套展示内容, 但不通过tab打开, 请自行创建组件使用iframe处理! { path: '/home', component: _import('common/home'), name: 'home', meta: { title: '首页' } }, + + { path: '/theme', component: _import('common/theme'), name: 'theme', meta: { title: '主题' } } ], beforeEnter (to, from, next) { - let token = Vue.cookie.get('token') + //console.log('检查token') + if(fnCheckToken()){ + next() + } else { + clearLoginInfo() + next({ name: 'login' }) + } + /*let token = Vue.cookie.get('token') if (!token || !/\S/.test(token)) { clearLoginInfo() next({ name: 'login' }) } else { next() - } + }*/ } } +function fnCheckToken() { + console.log('检查token') + let token = Vue.cookie.get('token') + if (!token || !/\S/.test(token)) { + return false; + } + return true +} + const router = new Router({ base: '/management/', mode: 'history', scrollBehavior: () => ({ y: 0 }), isAddDynamicMenuRoutes: false, // 是否已经添加动态(菜单)路由 - routes: globalRoutes.concat(mainRoutes) + routes: globalRoutes.concat(mainRoutes).concat(dingtalkRoutes) }) router.beforeEach((to, from, next) => { @@ -75,17 +103,24 @@ router.beforeEach((to, from, next) => { // 2. 获取菜单列表, 添加并保存本地存储 if (router.options.isAddDynamicMenuRoutes || fnCurrentRouteType(to, globalRoutes) === 'global') { next() - } /*else if (fnIsInRoutes(to, configRoutes)) {//判断是否全屏路由 - console.log(to) + } else if (fnIsInRoutes(to, dingtalkRoutes)) {//判断是否全屏路由 + if(fnCheckToken()){ + next() + } else { + clearLoginInfo() + next({ name: 'login' }) + } + //next() + /*console.log(to) let newpage = router.resolve({ name: to.path, query:to.query }) console.log(newpage.href) - window.open(newpage.href, '_blank') - next() - }*/ else { + window.open(newpage.href, '_blank')*/ + //next() + } else { apiGetMenuNav({}).then(res => { if (res && res.code === 0) { fnAddDynamicMenuRoutes(res.menuList) diff --git a/src/views/layout/main.vue b/src/views/layout/main.vue index f59357d..84b56e1 100644 --- a/src/views/layout/main.vue +++ b/src/views/layout/main.vue @@ -86,7 +86,6 @@ this.userName = res.user.username this.$store.state.user = res.user this.mobile = res.user.mobile - console.log('真实姓名' + res.user.realName); this.$watermark.set(res.user.realName + ' ' + this.mobile.substr(7, 4)) } else { diff --git a/src/views/modules/device/device-detail.vue b/src/views/modules/device/device-detail.vue new file mode 100644 index 0000000..1ce1af2 --- /dev/null +++ b/src/views/modules/device/device-detail.vue @@ -0,0 +1,633 @@ +> + + + \ No newline at end of file diff --git a/src/views/modules/device/device-main.vue b/src/views/modules/device/device-main.vue new file mode 100644 index 0000000..013b612 --- /dev/null +++ b/src/views/modules/device/device-main.vue @@ -0,0 +1,103 @@ +> + + + \ No newline at end of file diff --git a/src/views/modules/device/device-mark.vue b/src/views/modules/device/device-mark.vue new file mode 100644 index 0000000..26f2be2 --- /dev/null +++ b/src/views/modules/device/device-mark.vue @@ -0,0 +1,102 @@ +> + + + \ No newline at end of file diff --git a/src/views/modules/device/device-qr.vue b/src/views/modules/device/device-qr.vue new file mode 100644 index 0000000..0f568c8 --- /dev/null +++ b/src/views/modules/device/device-qr.vue @@ -0,0 +1,116 @@ +> + + + \ No newline at end of file diff --git a/src/views/modules/device/device-staff-depat.vue b/src/views/modules/device/device-staff-depat.vue new file mode 100644 index 0000000..7a8051c --- /dev/null +++ b/src/views/modules/device/device-staff-depat.vue @@ -0,0 +1,180 @@ +> + + + \ No newline at end of file diff --git a/src/views/modules/device/device-staff-device.vue b/src/views/modules/device/device-staff-device.vue new file mode 100644 index 0000000..3b2dad4 --- /dev/null +++ b/src/views/modules/device/device-staff-device.vue @@ -0,0 +1,224 @@ +> + + + \ No newline at end of file diff --git a/src/views/modules/device/device-type.vue b/src/views/modules/device/device-type.vue new file mode 100644 index 0000000..0e6a2a0 --- /dev/null +++ b/src/views/modules/device/device-type.vue @@ -0,0 +1,223 @@ +> + + + \ No newline at end of file diff --git a/src/views/modules/result/record/approval-add-or-update.vue b/src/views/modules/result/record/approval-add-or-update.vue index 21414a2..56ca723 100644 --- a/src/views/modules/result/record/approval-add-or-update.vue +++ b/src/views/modules/result/record/approval-add-or-update.vue @@ -24,7 +24,7 @@ 通过 - 待提交 + 通过 驳回 @@ -62,7 +62,6 @@ export default { this.auth = auth this.visible = true this.status = status - this.$nextTick(async () => { this.$refs['dataForm'].resetFields() if (this.resultCommentEditor === null) { @@ -73,6 +72,7 @@ export default { this.resultCommentEditor.customConfig.debug = true this.resultCommentEditor.create() } + this.resultCommentEditor.txt.html('

') const data = await getResultComment(this.recordResultId) if (data && data.code === 0) { this.resultCommitId = data.resultComment.id diff --git a/src/views/modules/result/record/lzresultrecord.vue b/src/views/modules/result/record/lzresultrecord.vue index 2de5007..c5cae7d 100644 --- a/src/views/modules/result/record/lzresultrecord.vue +++ b/src/views/modules/result/record/lzresultrecord.vue @@ -131,9 +131,9 @@ export default { } else if (status === 1) { return '审批中' } else if (status === 2) { - return '侍审批' + return '审批中' } else if (status === 3) { - return '侍提交' + return '审批中' } else if (status === 4) { return '审批通过' } else if (status === 5) { @@ -182,7 +182,7 @@ export default { {value: '0', label: '新建'}, {value: '1', label: '审批中'}, {value: '2', label: '拒绝'}, - {value: '3', label: '侍提交'}, + {value: '3', label: '审批中'}, {value: '4', label: '审批通过'} ], departmentList1: [], diff --git a/src/views/modules/result/record/lzresultrecordapp.vue b/src/views/modules/result/record/lzresultrecordapp.vue index 7a2a4e7..96eba4e 100644 --- a/src/views/modules/result/record/lzresultrecordapp.vue +++ b/src/views/modules/result/record/lzresultrecordapp.vue @@ -35,7 +35,6 @@ - @@ -71,19 +70,29 @@ - 查询 + 查询 + + + + + + + + + + + 提交 - -
- 批量提交 -
- - - + + - - - - - - @@ -173,7 +176,7 @@ export default { } else if (status === 2) { return '己审批' } else if (status === 3) { - return '侍提交' + return '审批中' } else if (status === 4) { return '审批通过' } else if (status === 5) { @@ -192,6 +195,13 @@ export default { }, data () { return { + batchOpts: [{ + id: 1, + opt: '批量提交' + }, { + id: 2, + opt: '批量终止' + }], Datalist: [{ Month: 1, title: '近一个月' @@ -223,7 +233,7 @@ export default { {value: '0', label: '新建'}, {value: '1', label: '审批中'}, {value: '2', label: '拒绝'}, - {value: '3', label: '侍提交'}, + {value: '3', label: '审批中'}, {value: '4', label: '审批通过'} ], departmentList1: [], diff --git a/src/views/modules/result/record/recorddetail-add-or-update.vue b/src/views/modules/result/record/recorddetail-add-or-update.vue index b46efc4..2e20dcc 100644 --- a/src/views/modules/result/record/recorddetail-add-or-update.vue +++ b/src/views/modules/result/record/recorddetail-add-or-update.vue @@ -57,7 +57,7 @@ 确定 - 删除 + 删除 @@ -248,7 +248,6 @@ export default { const data = await apiDetailInfo(this.dataForm.id) if (data && data.code === 0) { this.dataForm = data.detailInfo - console.log(this.dataForm.keyResult37) if (this.keyResultEditor !== null) { this.keyResultEditor.txt.html(this.dataForm.keyResult || '') } diff --git a/src/views/modules/result/record/recorddetail.vue b/src/views/modules/result/record/recorddetail.vue index ac85072..5e4e9b2 100644 --- a/src/views/modules/result/record/recorddetail.vue +++ b/src/views/modules/result/record/recorddetail.vue @@ -27,25 +27,39 @@ 直属上级:{{ superStaff }}
-
-

提交审批

+ + + +
+ 提交审批
-
-

- - - - -

+
+ 添加
-
-

确认得分

+
+ 确认得分 +
+ +
+ +
+ +
+ +
+ +
+ +
+ +
+
-

+
@@ -55,6 +69,8 @@

+ +
@@ -81,21 +97,6 @@ - -