From dca3d7522c45f7e1d13997c6db116027484a6099 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=99=E8=BF=90=E6=A8=A1?= <1724894114@qq.com> Date: Sat, 24 Aug 2024 16:57:53 +0800 Subject: [PATCH 01/21] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=E6=BA=90=E9=82=AE?= =?UTF-8?q?=E4=BB=B6=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/model/setup.js | 16 ++++ src/views/setting/advanced/index.vue | 4 +- src/views/setting/advanced/setup/mail.vue | 105 ++++++++++++++++++++++ 3 files changed, 123 insertions(+), 2 deletions(-) create mode 100644 src/views/setting/advanced/setup/mail.vue diff --git a/src/api/model/setup.js b/src/api/model/setup.js index b7fd029..66f3b6b 100644 --- a/src/api/model/setup.js +++ b/src/api/model/setup.js @@ -17,5 +17,21 @@ export default { return await http.post(this.url, data); }, }, + }, + mail:{ + set:{ + url: `${config.API_URL}/mail.config.set`, + name: "源邮件配置", + post: async function (data = {}) { + return await http.post(this.url, data); + }, + }, + get:{ + url: `${config.API_URL}/mail.config.get`, + name: "源邮件获取", + post: async function (data = {}) { + return await http.post(this.url, data); + }, + } } }; diff --git a/src/views/setting/advanced/index.vue b/src/views/setting/advanced/index.vue index 541b0b0..b6a0377 100644 --- a/src/views/setting/advanced/index.vue +++ b/src/views/setting/advanced/index.vue @@ -39,9 +39,9 @@ export default { pushSettings: defineAsyncComponent(() => import('./setup/computerRoom')), password: defineAsyncComponent(() => import('./setup/computerRoom')), space: defineAsyncComponent(() => import('./setup/computerRoom')), - logs: defineAsyncComponent(() => import('./setup/computerRoom')), upToEnterprise: defineAsyncComponent(() => import('./setup/computerRoom')), bind: defineAsyncComponent(() => import('./setup/computerRoom')), + mail: defineAsyncComponent(() => import('./setup/mail')), }, data() { return { @@ -72,7 +72,7 @@ export default { { icon: "sc-icon-DataSource", title: "数据源邮件设置", - component: "logs" + component: "mail" } ] }, diff --git a/src/views/setting/advanced/setup/mail.vue b/src/views/setting/advanced/setup/mail.vue new file mode 100644 index 0000000..5cac43f --- /dev/null +++ b/src/views/setting/advanced/setup/mail.vue @@ -0,0 +1,105 @@ + + + + + From 8c5bfc04f05017a73048d21c8c10726c647163ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=99=E8=BF=90=E6=A8=A1?= <1724894114@qq.com> Date: Sun, 25 Aug 2024 21:54:00 +0800 Subject: [PATCH 02/21] =?UTF-8?q?=E5=A2=9E=E5=8A=A0k3=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/model/setup.js | 18 ++- src/views/order/orderList/components/flow.vue | 87 ++++++++++++ src/views/order/orderList/index.vue | 23 +++- src/views/setting/advanced/index.vue | 6 + .../setting/advanced/setup/interface.vue | 126 ++++++++++++++++++ src/views/setting/advanced/setup/mail.vue | 18 ++- 6 files changed, 267 insertions(+), 11 deletions(-) create mode 100644 src/views/order/orderList/components/flow.vue create mode 100644 src/views/setting/advanced/setup/interface.vue diff --git a/src/api/model/setup.js b/src/api/model/setup.js index 66f3b6b..c0883fa 100644 --- a/src/api/model/setup.js +++ b/src/api/model/setup.js @@ -33,5 +33,21 @@ export default { return await http.post(this.url, data); }, } - } + }, + k3:{ + set:{ + url: `${config.API_URL}/k3.api.config.set`, + name: "金蝶ERP接口配置", + post: async function (data = {}) { + return await http.post(this.url, data); + }, + }, + get:{ + url: `${config.API_URL}/k3.api.config.get`, + name: "金蝶ERP接口配置获取", + post: async function (data = {}) { + return await http.post(this.url, data); + }, + } + }, }; diff --git a/src/views/order/orderList/components/flow.vue b/src/views/order/orderList/components/flow.vue new file mode 100644 index 0000000..c2e670f --- /dev/null +++ b/src/views/order/orderList/components/flow.vue @@ -0,0 +1,87 @@ + + + + + diff --git a/src/views/order/orderList/index.vue b/src/views/order/orderList/index.vue index 82a13a9..d55af5c 100644 --- a/src/views/order/orderList/index.vue +++ b/src/views/order/orderList/index.vue @@ -3,18 +3,18 @@
新增工单 - 批量审核 - 提交维保 - 下发维保 - + 批量审核 + 提交维保 + 下发维保 +
@@ -23,6 +23,9 @@
+
+ +
@@ -74,14 +77,20 @@ + + diff --git a/src/views/setting/advanced/setup/mail.vue b/src/views/setting/advanced/setup/mail.vue index 5cac43f..7a8e839 100644 --- a/src/views/setting/advanced/setup/mail.vue +++ b/src/views/setting/advanced/setup/mail.vue @@ -3,6 +3,13 @@
+
自动维修邮件同步
+
+ +
+
+
+
获取数据源邮件地址
邮件别名 @@ -39,6 +46,7 @@ export default { size:'small', loading:false, mail:{ + active_status:false, alias:'', email:'', client_id:'', @@ -71,12 +79,16 @@ export default { From 34c1a74812591ee0ecd3a96a4c8ac1feaa15bcc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=99=E8=BF=90=E6=A8=A1?= <1724894114@qq.com> Date: Mon, 26 Aug 2024 09:50:02 +0800 Subject: [PATCH 03/21] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E5=B7=A5=E5=8D=95?= =?UTF-8?q?=E5=B1=95=E7=A4=BA=E6=B5=81=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/views/order/orderList/index.vue | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/src/views/order/orderList/index.vue b/src/views/order/orderList/index.vue index d55af5c..74d605d 100644 --- a/src/views/order/orderList/index.vue +++ b/src/views/order/orderList/index.vue @@ -1,6 +1,6 @@ - 批量审核 提交维保 + 批量审核 下发维保
@@ -47,6 +47,11 @@ + @@ -127,8 +132,12 @@ export default { {name:'关键字',type:'text',code:['fault_description'],keyword:true,show:true}, ], params: {}, + statusList:[], } }, + mounted() { + this.getStatusList(); + }, methods: { searchShowClick(){ this.searchShow = !this.searchShow; @@ -339,6 +348,12 @@ export default { handleSaveSuccess(){ this.$refs.table.refresh(); }, + async getStatusList() { + const res = await this.$API.orders.order.maintenance.status.post(); + if (res.code == 200) { + this.statusList = res.data; + } + }, } } diff --git a/src/views/order/submit-order.vue b/src/views/order/submit-order.vue index f3ec980..ad96388 100644 --- a/src/views/order/submit-order.vue +++ b/src/views/order/submit-order.vue @@ -7,7 +7,11 @@
工单时间
当前状态: - {{info.business_status}} + + + {{item.label}} + +
@@ -56,15 +60,19 @@ {{info.maintenance_plan}} - 故障类型: - {{info.fault_type}} + 维修分类: + {{info.maintenance_level}} - + 故障内容: {{info.fault_description}} + + 故障类型: + {{info.fault_type}} + 维保等级: {{info.maintenance_plan}} @@ -74,59 +82,45 @@ {{info.requires_shutdown}} -
-
-
-
部件信息
-
机房城市: - - - + {{info.city}} 园区: - - - + {{info.park_name}} 机房: - - - + {{info.data_center_name}} 机架位: - - - + {{info.rack_position}} 整机SN: - - - + {{info.device_sn}} 整机厂商: - - - + {{info.device_manufacturer}} 整机型号: - - - + {{info.device_model}} +
+
+
+
部件信息
+
部件SN/Sp: @@ -170,7 +164,7 @@
- 确认提交 + 确认提交
@@ -189,11 +183,13 @@ export default { params:{ order_id:Number(this.$route.query.id) }, - info:{} + info:{}, + statusList:[] } }, mounted() { this.getData(); + this.getStatusList(); }, methods:{ async getData() { @@ -236,12 +232,18 @@ export default { } this.saveLoading = false; }, + async getStatusList() { + const res = await this.$API.orders.order.maintenance.status.post(); + if (res.code == 200) { + this.statusList = res.data; + } + }, } } diff --git a/src/views/setting/advanced/index.vue b/src/views/setting/advanced/index.vue index 6ad1f9c..917ca57 100644 --- a/src/views/setting/advanced/index.vue +++ b/src/views/setting/advanced/index.vue @@ -60,11 +60,6 @@ export default { title: "费用配置", component: "password" }, - { - icon: "sc-icon-AgentMaintenance", - title: "维保代理商维护", - component: "pushSettings" - }, ] }, { @@ -76,7 +71,7 @@ export default { component: "mail" }, { - icon: "sc-icon-DataSource", + icon: "sc-icon-AgentMaintenance", title: "K3接口配置", component: "interface" } diff --git a/src/views/setting/advanced/setup/interface.vue b/src/views/setting/advanced/setup/interface.vue index bca2f7f..76f729d 100644 --- a/src/views/setting/advanced/setup/interface.vue +++ b/src/views/setting/advanced/setup/interface.vue @@ -68,7 +68,9 @@ export default { async getMail() { const res = await this.$API.setup.k3.get.post(); if(res.code == 200){ - this.inter = res.data; + if(res.data && res.data.account_id){ + this.inter = res.data; + } } }, async save() { diff --git a/src/views/setting/advanced/setup/mail.vue b/src/views/setting/advanced/setup/mail.vue index 7a8e839..14dcb0e 100644 --- a/src/views/setting/advanced/setup/mail.vue +++ b/src/views/setting/advanced/setup/mail.vue @@ -61,7 +61,9 @@ export default { async getMail() { const res = await this.$API.setup.mail.get.post(); if(res.code == 200){ - this.mail = res.data; + if(res.data && res.data.alias){ + this.mail = res.data; + } } }, async save() { diff --git a/src/views/setting/bom/index.vue b/src/views/setting/bom/index.vue index ef1806c..1600060 100644 --- a/src/views/setting/bom/index.vue +++ b/src/views/setting/bom/index.vue @@ -2,20 +2,7 @@
- 新增工单 - - - - -
-
- - 下载 - + 新增BOM
@@ -80,23 +67,36 @@ export default { show: false, }, list: { - apiObj: {}, + apiObj: this.$API.setup.bom.list, column: [], }, selection: [], exportShow:false, searchShow:false, searchList:[ - {name:'生产日期',type:'date',code:'activation_date'}, - {name:'反厂日期',type:'date',code:'activation_date'}, - {name:'处理时间',type:'date',code:'activation_date'}, - {name:'客户名称',type:'multiple',code:'id', data:[], placeholder:"请选择公司名称",show:false}, - {name:'状态',type:'select',code:'active_status', data:[], placeholder:"请选择状态",show:false}, - {name:'工单号',type:'text',code:['mobile'],placeholder:"请输入手机号",isOpen:true,show:false}, - {name:'邮件地址',type:'text',code:['email'],placeholder:"请输入邮箱地址",isOpen:true,show:false}, - {name:'公司地址',type:'text',code:['address'],placeholder:"请输入公司地址",isOpen:true,show:false}, - {name:'负责人',type:'text',code:['owner'],placeholder:"请输入负责人",isOpen:true,show:false}, - {name:'关键字',type:'text',code:['domain','name'],keyword:true,show:true}, + {name:'创建时间',type:'date',code:'created_at',show: true}, + {name:'更新时间',type:'date',code:'updated_at',show: true}, + {name:'BOM版本',type:'text',code:'bom_version',placeholder:"请输入BOM版本",show:true}, + {name:'BOM简称',type:'text',code:'bom_abbreviation',placeholder:"请输入BOM简称",show:false}, + {name:'BOM分类',type:'text',code:['bom_classification'],placeholder:"请输入BOM分类",isOpen:true,show:false}, + {name:'BOM用途',type:'text',code:['bom_purpose'],placeholder:"请输入BOM用途",isOpen:true,show:false}, + {name:'父项物料编码',type:'text',code:['parent_material_code'],placeholder:"请输入父项物料编码",isOpen:true,show:false}, + {name:'父项物料名称',type:'text',code:['parent_material_name'],placeholder:"请输入父项物料名称",isOpen:true,show:false}, + {name:'父项物料单位',type:'text',code:['parent_material_unit'],placeholder:"请输入父项物料单位",isOpen:true,show:false}, + {name:'子项物料编码',type:'text',code:['child_material_code'],placeholder:"请输入子项物料编码",isOpen:true,show:false}, + {name:'子项物料名称',type:'text',code:['child_material_name'],placeholder:"请输入子项物料名称",isOpen:true,show:false}, + {name:'子项物料单位',type:'text',code:['child_material_unit'],placeholder:"请输入子项物料单位",isOpen:true,show:false}, + {name:'次项',type:'text',code:['item_sequence'],placeholder:"请输入次项",isOpen:true,show:false}, + {name:'子项类型',type:'text',code:['child_material_type'],placeholder:"请输入子项类型",isOpen:true,show:false}, + {name:'用量分母',type:'text',code:['usage_numerator'],placeholder:"请输入用量分母",isOpen:true,show:false}, + {name:'用量分子',type:'text',code:['usage_denominator'],placeholder:"请输入用量分子",isOpen:true,show:false}, + {name:'创建组织编码',type:'text',code:['create_org_code'],placeholder:"请输入创建组织编码",isOpen:true,show:false}, + {name:'创建组织名称',type:'text',code:['create_org_name'],placeholder:"请输入创建组织名称",isOpen:true,show:false}, + {name:'使用组织编码',type:'text',code:['use_org_code'],placeholder:"请输入使用组织编码",isOpen:true,show:false}, + {name:'使用组织名称',type:'text',code:['use_org_name'],placeholder:"请输入使用组织名称",isOpen:true,show:false}, + {name:'单据状态',type:'text',code:['document_status'],placeholder:"请输入单据状态",isOpen:true,show:false}, + {name:'禁用状态',type:'text',code:['disable_status'],placeholder:"请输入禁用状态",isOpen:true,show:false}, + {name:'关键字',type:'text',code:['bom_abbreviation'],keyword:true,show:true}, ], params: {}, } From 78121f6093c7fb3a5c8b8e9a3a72fbaf9bf54d12 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=99=E8=BF=90=E6=A8=A1?= <1724894114@qq.com> Date: Tue, 27 Aug 2024 21:30:59 +0800 Subject: [PATCH 05/21] =?UTF-8?q?=E5=AE=8C=E5=96=84=E6=95=B0=E7=BB=84?= =?UTF-8?q?=E5=88=A4=E6=96=AD=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/directives/authSetup.js | 19 ++++++++++ src/scui.js | 2 ++ src/views/order/dataConfirm/index.vue | 2 +- src/views/order/preview-order.vue | 6 ++-- src/views/order/view-mail.vue | 6 ++-- src/views/setting/advanced/index.vue | 26 ++++++++------ src/views/setting/role/dataTree.vue | 42 +++++++++++----------- src/views/setting/role/index.vue | 32 ++++++++++------- src/views/setting/role/members.vue | 10 +++--- src/views/setting/role/permission.vue | 4 ++- src/views/setting/user/index.vue | 1 - src/views/setting/user/view-permission.vue | 2 +- 12 files changed, 96 insertions(+), 56 deletions(-) create mode 100644 src/directives/authSetup.js diff --git a/src/directives/authSetup.js b/src/directives/authSetup.js new file mode 100644 index 0000000..fbcf956 --- /dev/null +++ b/src/directives/authSetup.js @@ -0,0 +1,19 @@ +import { permissionAll } from '@/utils/permission' +import tool from '@/utils/tool'; + +/** + * 用户权限指令 + * @directive 单个权限验证(v-auth="xxx") + */ +export default { + mounted (el, binding) { + if(permissionAll()){ + return + } + let permissions = tool.data.get("PERMISSIONS"); + // if(permissions.auth.some((v)=> v === binding.value)){ + // console.log(binding.value,800) + // } + if (!permissions.auth.some((v) => v === binding.value)) el.parentNode.removeChild(el); + } +} diff --git a/src/scui.js b/src/scui.js index 8ebfd27..23d3749 100644 --- a/src/scui.js +++ b/src/scui.js @@ -33,6 +33,7 @@ import scImport from "./components/scImport"; import scStatusIndicator from './components/scMini/scStatusIndicator' import scTrend from './components/scMini/scTrend' +import authSetup from './directives/authSetup' import auth from './directives/auth' import auths from './directives/auths' import authsAll from './directives/authsAll' @@ -86,6 +87,7 @@ export default { app.component('scImport', scImport); //注册全局指令 + app.directive('authSetup', authSetup) app.directive('auth', auth) app.directive('auths', auths) app.directive('auths-all', authsAll) diff --git a/src/views/order/dataConfirm/index.vue b/src/views/order/dataConfirm/index.vue index c0f067f..dd4d7dd 100644 --- a/src/views/order/dataConfirm/index.vue +++ b/src/views/order/dataConfirm/index.vue @@ -281,6 +281,7 @@ export default { async getData() { this.listLoading = true; const res = await this.$API.orders.order.mail.list.get(this.listParams); + this.listLoading = false; if(res.code == 200){ if(res.data.rows && res.data.rows.length>0){ res.data.rows.forEach(item=>{ @@ -299,7 +300,6 @@ export default { this.confirmList = this.confirmList.concat(res.data.rows); } } - this.listLoading = false; }, stripHtmlTags(html) { const div = document.createElement('div'); diff --git a/src/views/order/preview-order.vue b/src/views/order/preview-order.vue index a27aabe..8cff570 100644 --- a/src/views/order/preview-order.vue +++ b/src/views/order/preview-order.vue @@ -7,8 +7,8 @@
- 审核通过 - 审核拒绝 + 审核通过 + 审核拒绝
@@ -99,6 +99,6 @@ export default { diff --git a/src/views/order/view-mail.vue b/src/views/order/view-mail.vue index ebb4501..94deef0 100644 --- a/src/views/order/view-mail.vue +++ b/src/views/order/view-mail.vue @@ -1,5 +1,5 @@ -
diff --git a/src/views/setting/user/view-permission.vue b/src/views/setting/user/view-permission.vue index 5191aad..a63ba6c 100644 --- a/src/views/setting/user/view-permission.vue +++ b/src/views/setting/user/view-permission.vue @@ -96,7 +96,7 @@ export default { res.data.menu.forEach(item=>{ if(item.children){ item.children.forEach(em=>{ - if(em.meta.data_permission){ + if(em.meta.data_permission && em.meta.data_permission.length>0){ let check = em.meta.data_permission.filter((li)=>li.checked).length; let ed = em.meta.data_permission.length; em.isCheck = check>0 && check != ed?true:false; From e7a81853253d1a081ecdc8e1bd6455cf7eb426b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=BE=99=E8=BF=90=E6=A8=A1?= <1724894114@qq.com> Date: Tue, 27 Aug 2024 22:53:34 +0800 Subject: [PATCH 06/21] =?UTF-8?q?=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/directives/authSetup.js | 3 --- src/views/setting/advanced/index.vue | 2 +- src/views/setting/company/add-permission.vue | 12 ++++++------ src/views/setting/role/dataTree.vue | 4 ++-- src/views/setting/role/index.vue | 2 +- src/views/setting/role/permission.vue | 2 +- 6 files changed, 11 insertions(+), 14 deletions(-) diff --git a/src/directives/authSetup.js b/src/directives/authSetup.js index fbcf956..c860db8 100644 --- a/src/directives/authSetup.js +++ b/src/directives/authSetup.js @@ -11,9 +11,6 @@ export default { return } let permissions = tool.data.get("PERMISSIONS"); - // if(permissions.auth.some((v)=> v === binding.value)){ - // console.log(binding.value,800) - // } if (!permissions.auth.some((v) => v === binding.value)) el.parentNode.removeChild(el); } } diff --git a/src/views/setting/advanced/index.vue b/src/views/setting/advanced/index.vue index 5743c3a..365b0a5 100644 --- a/src/views/setting/advanced/index.vue +++ b/src/views/setting/advanced/index.vue @@ -21,7 +21,7 @@