From c59ed01f610a871f1db2869aaf08a991dddb600f Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期二, 01 八月 2023 16:14:24 +0800
Subject: [PATCH] 1.基础设置、工单管理、生产执行、统计报表菜单新增

---
 src/views/basicSettings/postList.vue         |   11 
 src/views/statistic/workOrderProcess.vue     |   11 
 src/views/statistic/reportList.vue           |   11 
 src/views/workOrder/workOrderClose.vue       |   11 
 src/views/basicSettings/menuList.vue         |   11 
 src/views/statistic/inProcessList.vue        |   11 
 src/views/produce/reportCorrect.vue          |   11 
 src/router/index.js                          |  142 +++++++++
 src/views/basicSettings/personList.vue       |   11 
 src/views/workOrder/workOrderSend.vue        |   11 
 /dev/null                                    |  425 ------------------------------
 src/views/statistic/monthReport.vue          |   11 
 src/views/basicSettings/roleList.vue         |   84 ++++-
 src/views/basicSettings/organizationList.vue |   11 
 src/views/basicSettings/groupList.vue        |   11 
 src/views/produce/stepReport.vue             |   11 
 src/views/workOrder/workOrderList.vue        |   11 
 src/views/produce/reportVerify.vue           |   11 
 18 files changed, 360 insertions(+), 456 deletions(-)

diff --git a/src/router/index.js b/src/router/index.js
index 949574a..c5019d7 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -96,11 +96,145 @@
     alwaysShow: true, // 褰揷hildren鍙湁涓�涓椂锛屼篃鏄剧ず鐖惰彍鍗�
     children: [
       {
-        path: 'rolePermission',
-        name: 'rolePermissionCancel',
+        path: 'organizationList',
+        name: 'organizationListCancel',
+        code: '1010',
+        component: () => import('@/views/basicSettings/organizationList'),
+        meta: { code: '1010', title: '缁勭粐鏋舵瀯', icon: '', keepAlive: true }
+      },
+      {
+        path: 'personList',
+        name: 'personListCancel',
+        code: '1011',
+        component: () => import('@/views/basicSettings/personList'),
+        meta: { code: '1011', title: '浜哄憳绠$悊', icon: '', keepAlive: true }
+      }, {
+        path: 'postList',
+        name: 'personListCancel',
+        code: '1012',
+        component: () => import('@/views/basicSettings/postList'),
+        meta: { code: '1012', title: '宀椾綅绠$悊', icon: '', keepAlive: true }
+      }, {
+        path: 'roleList',
+        name: 'roleListCancel',
+        code: '1013',
+        component: () => import('@/views/basicSettings/roleList'),
+        meta: { code: '1013', title: '瑙掕壊绠$悊', icon: '', keepAlive: true }
+      }, {
+        path: 'groupList',
+        name: 'groupListCancel',
         code: '1014',
-        component: () => import('@/views/basicSettings/rolePermission'),
-        meta: { code: '1014', title: '瀹夌伅璁剧疆', icon: '', keepAlive: true }
+        component: () => import('@/views/basicSettings/groupList'),
+        meta: { code: '1014', title: '鐝粍绠$悊', icon: '', keepAlive: true }
+      },
+      {
+        path: 'menuList',
+        name: 'menuListCancel',
+        code: '1015',
+        component: () => import('@/views/basicSettings/menuList'),
+        meta: { code: '1015', title: '鑿滃崟绠$悊', icon: '', keepAlive: true }
+      }
+
+    ]
+  },
+  {
+    path: '/workOrder',
+    component: Layout,
+    redirect: '/workOrder/workOrderList',
+    name: '宸ュ崟绠$悊',
+    code: '1002',
+    meta: { code: '1002', title: '宸ュ崟绠$悊', icon: 'quality' },
+    alwaysShow: true, // 褰揷hildren鍙湁涓�涓椂锛屼篃鏄剧ず鐖惰彍鍗�
+    children: [
+      {
+        path: 'workOrderList',
+        name: 'workOrderListCancel',
+        code: '1020',
+        component: () => import('@/views/workOrder/workOrderList'),
+        meta: { code: '1010', title: '宸ュ崟鍒楄〃', icon: '', keepAlive: true }
+      },
+      {
+        path: 'workOrderSend',
+        name: 'workOrderSendCancel',
+        code: '1011',
+        component: () => import('@/views/workOrder/workOrderSend'),
+        meta: { code: '1021', title: '宸ュ崟娲惧彂', icon: '', keepAlive: true }
+      }, {
+        path: 'workOrderClose',
+        name: 'workOrderCloseCancel',
+        code: '1012',
+        component: () => import('@/views/workOrder/workOrderClose'),
+        meta: { code: '1022', title: '宸ュ崟鍏抽棴', icon: '', keepAlive: true }
+      }
+
+    ]
+  },
+  {
+    path: '/produce',
+    component: Layout,
+    redirect: '/produce/stepReport',
+    name: '鐢熶骇鎵ц',
+    code: '1003',
+    meta: { code: '1003', title: '鐢熶骇鎵ц', icon: 'production' },
+    alwaysShow: true, // 褰揷hildren鍙湁涓�涓椂锛屼篃鏄剧ず鐖惰彍鍗�
+    children: [
+      {
+        path: 'stepReport',
+        name: 'stepReportCancel',
+        code: '1030',
+        component: () => import('@/views/produce/stepReport'),
+        meta: { code: '1030', title: '宸ュ簭鎶ュ伐', icon: '', keepAlive: true }
+      },
+      {
+        path: 'reportCorrect',
+        name: 'reportCorrectCancel',
+        code: '1031',
+        component: () => import('@/views/produce/reportCorrect'),
+        meta: { code: '1031', title: '鎶ュ伐淇', icon: '', keepAlive: true }
+      }, {
+        path: 'reportVerify',
+        name: 'reportVerifyCancel',
+        code: '1032',
+        component: () => import('@/views/produce/reportVerify'),
+        meta: { code: '1032', title: '鎶ュ伐瀹℃牳', icon: '', keepAlive: true }
+      }
+
+    ]
+  },
+  {
+    path: '/statistic',
+    component: Layout,
+    redirect: '/statistic/reportList',
+    name: '缁熻鎶ヨ〃',
+    code: '1004',
+    meta: { code: '1004', title: '缁熻鎶ヨ〃', icon: 'bbgl' },
+    alwaysShow: true, // 褰揷hildren鍙湁涓�涓椂锛屼篃鏄剧ず鐖惰彍鍗�
+    children: [
+      {
+        path: 'reportList',
+        name: 'reportListCancel',
+        code: '1040',
+        component: () => import('@/views/statistic/reportList'),
+        meta: { code: '1040', title: '鎶ュ伐璁板綍', icon: '', keepAlive: true }
+      },
+      {
+        path: 'monthReport',
+        name: 'monthReportCancel',
+        code: '1041',
+        component: () => import('@/views/statistic/monthReport'),
+        meta: { code: '1041', title: '鏈堝害缁熻', icon: '', keepAlive: true }
+      }, {
+        path: 'workOrderProcess',
+        name: 'workOrderProcessCancel',
+        code: '1042',
+        component: () => import('@/views/statistic/workOrderProcess'),
+        meta: { code: '1042', title: '宸ュ崟杩涘害', icon: '', keepAlive: true }
+      }, {
+        path: 'inProcessList',
+        name: 'inProcessListCancel',
+        code: '1043',
+        component: () => import('@/views/statistic/inProcessList'),
+        meta: { code: '1043', title: '鍦ㄥ埗鍒楄〃', icon: '', keepAlive: true }
       }
 
     ]
diff --git a/src/views/basicSettings/groupList.vue b/src/views/basicSettings/groupList.vue
new file mode 100644
index 0000000..2d690b0
--- /dev/null
+++ b/src/views/basicSettings/groupList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'GroupList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/basicSettings/menuList.vue b/src/views/basicSettings/menuList.vue
new file mode 100644
index 0000000..fad6f6a
--- /dev/null
+++ b/src/views/basicSettings/menuList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'MenuList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/basicSettings/organizationList.vue b/src/views/basicSettings/organizationList.vue
new file mode 100644
index 0000000..2464b07
--- /dev/null
+++ b/src/views/basicSettings/organizationList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'OrganizationList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/basicSettings/personList.vue b/src/views/basicSettings/personList.vue
new file mode 100644
index 0000000..3e527d2
--- /dev/null
+++ b/src/views/basicSettings/personList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'PersonList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/basicSettings/postList.vue b/src/views/basicSettings/postList.vue
new file mode 100644
index 0000000..f521893
--- /dev/null
+++ b/src/views/basicSettings/postList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'PostList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/basicSettings/rolePermission.vue b/src/views/basicSettings/roleList.vue
similarity index 88%
rename from src/views/basicSettings/rolePermission.vue
rename to src/views/basicSettings/roleList.vue
index a8a6f8b..89635a6 100644
--- a/src/views/basicSettings/rolePermission.vue
+++ b/src/views/basicSettings/roleList.vue
@@ -81,6 +81,7 @@
             highlight-current
             :props="defaultPropsLeft"
             :default-expand-all="true"
+            @node-click="treeLeftNodeClick"
           />
         </div>
 
@@ -120,7 +121,7 @@
 
                 <div
                   ref="scrollCenter"
-                  style="border-right: 1px solid rgba(0,0,0,0.2);width: 500px;padding-left: 10px;overflow-y: auto"
+                  style="border-right: 1px solid rgba(0,0,0,0.2);width: 600px;padding-left: 10px;overflow-y: auto"
                   :style="{height:isExpandForm?tableHeight:(tableHeight+35)+'px',}"
                   @scroll="scrollCenterScroll()"
                   @mouseover="changeScrollLeftFlag('center')"
@@ -308,12 +309,12 @@
         this.$notify.error('璇峰厛寤虹浉瀵瑰簲鐨勮鑹诧紒')
       }
     },
-
+    // 鑾峰彇鑿滃崟鏉冮檺瀵瑰簲鐨勬寜閽�
     async getRolePermissionSearchRoleMenuButton(rolecode) {
       const { data: res } = await RolePermissionSearchRoleMenuButton({ rolecode })
       this.allButtonData = res
     },
-
+    // 鑾峰彇鑿滃崟鏉冮檺
     async getRolePermissionSearchRoleMenu(rolecode) {
       const { data: res } = await RolePermissionSearchRoleMenu({ rolecode, type: 'PC' })
 
@@ -326,6 +327,7 @@
 
       this.menuCheckedCodeArr = []
 
+      // console.log(this.allButtonData, 213)
       result.forEach(item => {
         if (item.children && item.children.length) {
           item.children.forEach(it => {
@@ -340,12 +342,12 @@
             // 鏁版嵁鏉冮檺鍥炴樉
             const dataAll = this.allButtonData.tData.filter(j => j.menucode === it.code).map(j => j.name)
             const dataChecked = this.allButtonData.tData.filter(j => j.menucode === it.code && j.flag === 'Y').name
-            console.log(dataAll, dataChecked, 2)
+            // console.log(dataAll, dataChecked, 2)
             it.itemData = dataAll
             it.checkedData = dataChecked
 
             // 鐢ㄤ綔鑿滃崟鍕鹃�夊洖鏄�
-            if (buttonChecked && buttonChecked.length > 0) {
+            if (it.flag === 'Y') {
               this.menuCheckedCodeArr.push(it.code)
             }
           })
@@ -360,13 +362,15 @@
         { code: '-1', name: '鍏ㄩ儴', flag: result.every(i => i.flag === 'Y') ? 'Y' : 'N', children: result }
       ]
 
-      this.buttonIsChecked = result.every(i => i.flag === 'Y')
-
+      // this.buttonIsChecked = result.every(i => i.flag === 'Y')
+      this.handleCheckedButtonChange('', '', true)
+      this.handleCheckedDataChange('', '', true)
       // console.log(this.menuCheckedCodeArr, 2)
       this.$nextTick(() => {
         this.$refs.treeCenterRef.setCheckedKeys(this.menuCheckedCodeArr)
       })
 
+      this.$forceUpdate()
       // console.log(this.treeCenter[0].children)
     },
 
@@ -436,18 +440,19 @@
         })
       }
 
-      console.log(this.treeCenter[0].children, 20)
+      // console.log(this.treeCenter[0].children, 20)
     },
     // 鍗曚釜鎸夐挳鏀瑰彉
-    handleCheckedButtonChange(value, code) {
+    handleCheckedButtonChange(value, code, flag) {
       // 鍒ゆ柇鏄惁鍖呭惈鍦ㄥ唴
-      if (!this.menuCheckedCodeArr.includes(code) && value.length === 1) { // 鍚�
-        this.menuCheckedCodeArr.push(code)
-      } else if (this.menuCheckedCodeArr.includes(code) && value.length === 0) { // 鏄�
-        this.menuCheckedCodeArr = this.menuCheckedCodeArr.filter(i => i !== code)
+      if (!flag) {
+        if (!this.menuCheckedCodeArr.includes(code) && value.length === 1) { // 鍚�
+          this.menuCheckedCodeArr.push(code)
+        } else if (this.menuCheckedCodeArr.includes(code) && value.length === 0) { // 鏄�
+          this.menuCheckedCodeArr = this.menuCheckedCodeArr.filter(i => i !== code)
+        }
+        this.$refs.treeCenterRef.setCheckedKeys(this.menuCheckedCodeArr)
       }
-
-      this.$refs.treeCenterRef.setCheckedKeys(this.menuCheckedCodeArr)
 
       // 杩欓噷鏄垽鏂叏閫塩heckbox 鏄惁閫変腑
       let count = 0
@@ -468,8 +473,8 @@
 
     // 鑾峰彇鏍戝舰鑺傜偣node
     getLeftTreeNode(data, Node, VueComponent) {
-      console.log(data, Node, VueComponent, 2221)
-      console.log(Node.expanded)
+      // console.log(data, Node, VueComponent, 2221)
+      // console.log(Node.expanded)
       this.treeCenter[0].children.forEach(item => {
         if (item.name === data.name) {
           item.expanded = Node.expanded
@@ -483,13 +488,25 @@
       }
       this.$forceUpdate()
     },
-
+    // 澶勭悊鏍戝舰鍕鹃��
     handleTreeCenterCheck(obj, { checkedNodes, checkedKeys, halfCheckedNodes, halfCheckedKeys }) {
-      // console.log(obj, checkedNodes, checkedKeys, halfCheckedNodes, halfCheckedKeys)
+      // console.log(obj, checkedNodes, checkedKeys, halfCheckedNodes, halfCheckedKeys, '鍔犲瀹�')
+
+      if (checkedKeys.length === 0) { // 鏍戝舰鑿滃崟鍏ㄤ笉閫夌殑鎯呭喌涓�
+        this.buttonIsChecked = false
+        this.dataIsChecked = false
+        this.menuCheckedCodeArr = []
+      } else {
+        if (checkedKeys.includes(obj.code)) { // 鍒ゆ柇鏄惁鍖呭惈鍦ㄥ唴   //鏄�
+          this.menuCheckedCodeArr.push(obj.code)
+        } else { // 鍚�
+          this.menuCheckedCodeArr = this.menuCheckedCodeArr.filter(i => i !== obj.code)
+        }
+      }
     },
     // 澶勭悊鏍戝舰閫変腑鍊兼敼鍙�
     handleTreeCenterCheckChange(obj, selfChecked, selfChildrenTreeCheck) {
-      // console.log(obj, selfChecked, selfChildrenTreeCheck)
+      // console.log(obj, selfChecked, selfChildrenTreeCheck, '鐜嬭�佸悏')
       if (!selfChildrenTreeCheck) {
         if (!selfChecked) {
           this.treeCenter[0].children.forEach(item => {
@@ -508,13 +525,14 @@
     },
 
     // 鍗曢�夋鎸夐挳鏀瑰彉
-    handleCheckedDataChange(value, code) {
-      console.log(value, code)
+    handleCheckedDataChange(value, code, flag) {
+      // console.log(value, code)
+      if (flag) {
+        this.menuCheckedCodeArr.push(code)
+        this.menuCheckedCodeArr = [...new Set(this.menuCheckedCodeArr)]
 
-      this.menuCheckedCodeArr.push(code)
-      this.menuCheckedCodeArr = [...new Set(this.menuCheckedCodeArr)]
-
-      this.$refs.treeCenterRef.setCheckedKeys(this.menuCheckedCodeArr)
+        this.$refs.treeCenterRef.setCheckedKeys(this.menuCheckedCodeArr)
+      }
 
       // 杩欓噷鏄垽鏂叏閫塺adio 鏄惁閫変腑
       let count = 0
@@ -525,14 +543,26 @@
             if (it.checkedData) {
               count++
             }
-            childrenLength++
+            if (it.itemData.length > 0) {
+              childrenLength++
+            }
           })
         }
       })
+      // console.log(count, childrenLength, 9)
       this.dataIsChecked = count === childrenLength
+      // console.log(JSON.parse(JSON.stringify(this.treeCenter[0].children)))
+
       this.$forceUpdate()
     },
 
+    async  treeLeftNodeClick(obj, Node, VueComponent) {
+      // this.menuCheckedCodeArr = []
+
+      await this.getRolePermissionSearchRoleMenuButton(obj.code)
+      await this.getRolePermissionSearchRoleMenu(obj.code)
+    },
+
     // 鑾峰彇椤甸潰楂樺害
     getHeight() {
       this.$nextTick(() => {
diff --git a/src/views/produce/reportCorrect.vue b/src/views/produce/reportCorrect.vue
new file mode 100644
index 0000000..1e5626a
--- /dev/null
+++ b/src/views/produce/reportCorrect.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'ReportCorrect'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/produce/reportVerify.vue b/src/views/produce/reportVerify.vue
new file mode 100644
index 0000000..81b99d2
--- /dev/null
+++ b/src/views/produce/reportVerify.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'ReportVerify'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/produce/stepReport.vue b/src/views/produce/stepReport.vue
new file mode 100644
index 0000000..42bbb50
--- /dev/null
+++ b/src/views/produce/stepReport.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'StepReport'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/statistic/inProcessList.vue b/src/views/statistic/inProcessList.vue
new file mode 100644
index 0000000..a4a49f7
--- /dev/null
+++ b/src/views/statistic/inProcessList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'InProcessList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/statistic/monthReport.vue b/src/views/statistic/monthReport.vue
new file mode 100644
index 0000000..ffb7634
--- /dev/null
+++ b/src/views/statistic/monthReport.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'MonthReport'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/statistic/reportList.vue b/src/views/statistic/reportList.vue
new file mode 100644
index 0000000..1792657
--- /dev/null
+++ b/src/views/statistic/reportList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'ReportList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/statistic/workOrderProcess.vue b/src/views/statistic/workOrderProcess.vue
new file mode 100644
index 0000000..7d95aec
--- /dev/null
+++ b/src/views/statistic/workOrderProcess.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'WorkOrderProcess'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/test/printMe.vue b/src/views/test/printMe.vue
deleted file mode 100644
index c5998db..0000000
--- a/src/views/test/printMe.vue
+++ /dev/null
@@ -1,425 +0,0 @@
-<template>
-  <div>
-
-    <el-button type="primary" @click="clickMe">鐐瑰嚮鎴�</el-button>
-
-    <el-dialog
-      title="棰勮"
-      :visible.sync="dialogVisible"
-      width="812px"
-    >
-      <!-- 瑕佹墦鍗扮殑鍖哄煙 -->
-      <div id="printMe" style="padding: 30px">
-
-        <div style="display: flex;justify-content: space-around;">
-          <!--          浜岀淮鐮侀儴鍒�-->
-          <div>
-            <div id="qrCode" ref="qrCodeDiv" />
-            <!--            <img :src="QRImgUrl">-->
-
-            <div style="font-size: 18px;width: 100px;text-align: center;margin-top: 10px">MO-79601</div>
-          </div>
-          <!--          鍏徃鍚嶇О鍙婃墦鍗板崟绫诲瀷-->
-          <div
-            style="height: 100px;display: flex;justify-content:space-between;align-items: center;flex-direction: column;font-weight: bolder"
-          >
-            <div style="font-size: 26px;">姘稿悍鏂板嚡杩伐涓氫簰鑱旀湁闄愬叕鍙�</div>
-            <div style="font-size: 22px;">濮斿娲惧崟</div>
-          </div>
-          <!--鍙充晶姘村嵃鍙婂鍚嶆棩鏈�-->
-          <div>
-            <!--            <div ref="watermark" style="width: 100px;height:100px;" />-->
-            <div style="color:#0f0f0f;;width: 100px;margin-top:40px;height: 50px;text-align: center">鍑开鍒堕��</div>
-            <div style="font-weight: bolder">
-              <div>濮撳悕锛氬紶涓�</div>
-              <div>鏃ユ湡锛�2022-07-05</div>
-            </div>
-          </div>
-        </div>
-        <!--        <el-divider />-->
-        <div style="width:100%;height: 30px;border-bottom: 1px solid #eee;margin-bottom: 20px" />
-        <el-table
-          id="table"
-          :data="tableData"
-          border
-          :header-cell-style="{ background: '#c0c0c0',textAlign:'center',color:'#000'}"
-          :cell-style="{textAlign: 'center',color:'#000',}"
-          class="elTable"
-          style="width: 100%;"
-        >
-          <el-table-column
-            id="column0"
-            prop="id"
-            label="宸ュ簭鍙�"
-            width="70"
-          />
-          <el-table-column
-            id="column1"
-            prop="stepcode"
-            label="宸ュ簭浜岀淮鐮�"
-            width="100"
-          />
-          <el-table-column
-            id="column2"
-            prop="stepname"
-            label="宸ュ簭"
-            width="120"
-          />
-          <el-table-column
-            id="column3"
-            prop="plan_qty"
-            label="鍔犲伐鏁伴噺"
-            width="100"
-          />
-          <el-table-column
-            id="column4"
-            prop="good_qty"
-            width="100"
-            label="鍚堟牸鏁伴噺"
-          />
-          <el-table-column
-            id="column5"
-            width="100"
-            prop="ng_qty"
-            label="涓嶈壇鏁伴噺"
-          />
-          <el-table-column
-            id="column6"
-            prop="desc"
-            width="120"
-            label="澶囨敞"
-          />
-        </el-table>
-      </div>
-
-      <!--      <vue-easy-print ref="printRef" :button-show="true">-->
-      <!--        x-->
-      <!--      </vue-easy-print>-->
-
-      <!-- 鎵撳嵃鐨勬寜閽紝鏄剧ず鎵撳嵃棰勮 -->
-      <!--    <el-button v-print="'#printMe'">鎵撳嵃</el-button>-->
-      <el-button v-print="printObj">鎵撳嵃</el-button>
-
-      <span slot="footer" class="dialog-footer">
-        <el-button @click="dialogVisible = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="dialogVisible = false">纭� 瀹�</el-button>
-      </span>
-    </el-dialog>
-
-    <!--2222-->
-    <el-dialog
-      title="棰勮"
-      :visible.sync="dialogVisible2"
-      width="1140"
-    >
-      <!-- 瑕佹墦鍗扮殑鍖哄煙 -->
-      <div id="printMe2" style="padding: 30px;">
-        <!--        <div style="width: 500px; height: 300px;">-->
-
-        <div
-          style="display: flex;width: 300px;height: 200px;border: 1px solid #000;text-align: center;font-size: 16px;"
-        >
-          <div style="width: 100px;display: flex;flex-direction: column;border-right: 1px solid #000">
-            <div
-              style="display: flex;height: 75%;border-bottom:1px solid #000;justify-content: center;align-items: center "
-            >
-              <div id="qrCode2" ref="qrCodeDiv2" />
-            </div>
-            <div style="display: flex;height: 25%;justify-content: center;align-items: center">
-              鏁伴噺锛�100
-            </div>
-          </div>
-          <div style="width:200px;display: flex;flex-direction: column">
-            <div
-              style="display: flex;height: 25%;border-bottom:1px solid #000;justify-content: center;align-items: center "
-            >
-              宸ュ崟缂栧彿锛�1403-001-0001
-            </div>
-            <div
-              style="display: flex;height: 25%;border-bottom:1px solid #000;justify-content: center;align-items: center "
-            >
-              宸ュ崟缂栧彿锛�1403-001-0001
-            </div>
-            <div
-              style="display: flex;height: 25%;border-bottom:1px solid #000 ;justify-content: center;align-items: center"
-            >
-              宸ュ崟缂栧彿锛�1403-001-0001
-            </div>
-            <div style="display: flex;height: 25%;justify-content: center;align-items: center">
-              宸ュ崟缂栧彿锛�1403-001-0001
-            </div>
-
-          </div>
-
-        </div>
-
-        <!--        </div>-->
-      </div>
-
-      <!--      <vue-easy-print ref="printRef" :button-show="true">-->
-      <!--        x-->
-      <!--      </vue-easy-print>-->
-
-      <!-- 鎵撳嵃鐨勬寜閽紝鏄剧ず鎵撳嵃棰勮 -->
-      <!--    <el-button v-print="'#printMe'">鎵撳嵃</el-button>-->
-      <el-button v-print="printObj2">鎵撳嵃</el-button>
-
-      <span slot="footer" class="dialog-footer">
-        <el-button @click="dialogVisible2 = false">鍙� 娑�</el-button>
-        <el-button type="primary" @click="dialogVisible2 = false">纭� 瀹�</el-button>
-      </span>
-    </el-dialog>
-
-    <el-button type="text" @click="outerVisible = true">鐐瑰嚮鎵撳紑澶栧眰 Dialog</el-button>
-
-    <el-button type="primary" @click="ws_ajax_preview">jhjhjh</el-button>
-
-  </div>
-</template>
-
-<script>
-// import vueEasyPrint from 'vue-easy-print'
-import QRCode from 'qrcodejs2'
-import { MesOrderPrintSearch, MesOrderPrintSearch1 } from '@/api/utils'
-import { urlAddRandomNo, webapp_ws_ajax_run, webapp_urlprotocol_startup } from '@/utils/grwebapp'
-import { getCookie } from '@/utils/auth'
-// import QRCode from 'qrcode'
-
-export default {
-  name: 'Gdpg',
-  // components: {
-  //   vueEasyPrint
-  // },
-  data() {
-    return {
-      outerVisible: false,
-      innerVisible: false,
-      dialogVisible2: false,
-      printObj2: {
-        id: 'printMe2',
-        beforeOpenCallback(vue) {
-          vue.printLoading = true
-          console.log('鎵撳紑涔嬪墠')
-          console.log()
-        },
-        openCallback(vue) {
-          vue.printLoading = false
-          console.log('鎵ц浜嗘墦鍗�')
-        },
-        closeCallback(vue) {
-          console.log('鍏抽棴浜嗘墦鍗板伐鍏�')
-        }
-
-      },
-      firstWatermark: true, // 绗竴娆℃樉绀烘按鍗�
-      firstbindQRCode: true, // 绗竴娆℃樉绀轰簩缁寸爜
-      form: {
-        describle: ''
-      },
-      QRImgUrl: '',
-      QRlink: 'www.xxx.com',
-      dialogVisible: true,
-      printObj: {
-        id: 'printMe',
-        popTitle: '鎵撳嵃妯℃澘',
-        preview: false,
-        extraHead: '<meta http-equiv="Content-Language" content="zh-cn"/>',
-        previewBeforeOpenCallback() {
-        }, // 棰勮绐楀彛鎵撳紑涔嬪墠鐨刢allback锛堝紑鍚瑙堟ā寮忚皟鐢級
-        previewOpenCallback() {
-        }, // 棰勮绐楀彛鎵撳紑涔嬪悗鐨刢allback锛堝紑鍚瑙堟ā寮忚皟鐢級
-        beforeEntryIframe() {
-          const widthArr = ['10%', '10%', '15%', '15%', '15%', '15%', '10%', '10%']
-          // const tables = document.getElementById('table').getElementsByTagName('el-table') // 鑾峰彇鎵撳嵃鐨勮〃鏍�
-          const tables = document.getElementById('table') // 鑾峰彇鎵撳嵃鐨勮〃鏍�
-          // const headcolgroupCol0 = tables[0].getElementsByTagName('colgroup')[0].getElementsByTagName('col')
-          // const headcolgroupCol0 = document.getElementById('column0').style.width = '400px'
-          // const headcolgroupCol1 = document.getElementById('column1')
-          // const headcolgroupCol2 = document.getElementById('column2')
-          // const headcolgroupCol3 = document.getElementById('column3')
-          // const headcolgroupCol4 = document.getElementById('column4')
-          // const headcolgroupCol5 = document.getElementById('column5')
-          // const headcolgroupCol6 = document.getElementById('column6')
-          // const headcolgroupCol7 = document.getElementById('column7')
-          // const headcolgroupCol1 = tables[1].getElementsByTagName('colgroup')[0].getElementsByTagName('col')
-          // widthArr.forEach((val, index) => {
-          //   headcolgroupCol0[index].width = val
-          //   headcolgroupCol1[index].width = val
-          //   headcolgroupCol2[index].width = val
-          //   headcolgroupCol3[index].width = val
-          //   headcolgroupCol4[index].width = val
-          //   headcolgroupCol5[index].width = val
-          //   headcolgroupCol6[index].width = val
-          //   headcolgroupCol7[index].width = val
-          // })
-        },
-        openCallback() {
-
-        }, // 璋冪敤鎵撳嵃涔嬪悗鐨勫洖璋冧簨浠�
-        closeCallback() {
-        } // 鍏抽棴鎵撳嵃鐨勫洖璋冧簨浠讹紙鏃犳硶纭畾鐐瑰嚮鐨勬槸纭杩樻槸鍙栨秷锛�
-
-        // id: 'printMe',
-        // popTitle: '鎵撳嵃', // 鎵撳嵃閰嶇疆椤典笂鏂规爣棰�
-        // extraHead: '', // 鏈�涓婃柟鐨勫ご閮ㄦ枃瀛楋紝闄勫姞鍦╤ead鏍囩涓婄殑棰濆鏍囩,浣跨敤閫楀彿鍒嗛殧
-        // preview: '', // 鏄惁鍚姩棰勮妯″紡锛岄粯璁ゆ槸false锛堝紑鍚瑙堟ā寮忥紝鍙互鍏堥瑙堝悗鎵撳嵃锛�
-        // previewTitle: '', // 鎵撳嵃棰勮鐨勬爣棰橈紙寮�鍚瑙堟ā寮忓悗鍑虹幇锛�,
-        // previewPrintBtnLabel: '', // 鎵撳嵃棰勮鐨勬爣棰樼殑涓嬫柟鎸夐挳鏂囨湰锛岀偣鍑诲彲杩涘叆鎵撳嵃锛堝紑鍚瑙堟ā寮忓悗鍑虹幇锛�
-        // zIndex: '', // 棰勮鐨勭獥鍙g殑z-index锛岄粯璁ゆ槸 20002锛堟鍊艰楂樹竴浜涳紝杩欐秹鍙婂埌棰勮妯″紡鏄惁鏄剧ず鍦ㄦ渶涓婇潰锛�
-        // previewBeforeOpenCallback() {}, // 棰勮绐楀彛鎵撳紑涔嬪墠鐨刢allback锛堝紑鍚瑙堟ā寮忚皟鐢級
-        // previewOpenCallback() {}, // 棰勮绐楀彛鎵撳紑涔嬪悗鐨刢allback锛堝紑鍚瑙堟ā寮忚皟鐢級
-        // beforeOpenCallback() {}, // 寮�鍚墦鍗板墠鐨勫洖璋冧簨浠�
-        // openCallback() {}, // 璋冪敤鎵撳嵃涔嬪悗鐨勫洖璋冧簨浠�
-        // closeCallback() {}, // 鍏抽棴鎵撳嵃鐨勫洖璋冧簨浠讹紙鏃犳硶纭畾鐐瑰嚮鐨勬槸纭杩樻槸鍙栨秷锛�
-        // url: '',
-        // standard: '',
-        // extraCss: ''
-      },
-      tableData: [
-        { id: 1, stepcode: '001', stepname: '棰嗘枡', plan_qty: 100, good_qty: 10, ng_qty: 5, desc: '鍚堟牸' },
-        { id: 2, stepcode: '001', stepname: '棰嗘枡', plan_qty: 100, good_qty: 10, ng_qty: 5, desc: '鍚堟牸' }
-      ],
-      printContentObj: {}
-    }
-  },
-  mounted() {
-    // this.TestClick()
-
-    // function window_onload() {
-    //* 杩欏彞鐗瑰埆閲嶈*锛氬彧鏈夊湪WEB鎶ヨ〃瀹㈡埛绔▼搴忓悗锛屾墠鑳借繘琛學ebSocket閫氳
-    // 濡傛灉WEB鎶ヨ〃瀹㈡埛绔▼搴忎负寮�鏈鸿嚜鍚姩锛屼互涓嬭皟鐢ㄥ簲璇ュ幓鎺夈�傛洿澶氳鏄庤鍙傝�冨府鍔┾�淲EB鎶ヨ〃(B/S鎶ヨ〃)->WEB鎶ヨ〃瀹㈡埛绔�->閮ㄧ讲涓庡畨瑁呪�濋儴鍒嗕腑涓庤胺姝孋hrome娴忚鍣ㄧ殑鐩稿叧璇存槑
-    webapp_urlprotocol_startup() // 鍚姩WEB鎶ヨ〃瀹㈡埛绔▼搴忥紝浠ヤ究渚﹀惉鎺ュ彈 WebSocket 鏁版嵁
-    // }
-    this.$nextTick(() => {
-      this.bindQRCode()
-    })
-  },
-  methods: {
-    // addWatermark() {
-    //   if (this.firstWatermark) {
-    //     console.log(this.firstWatermark)
-    //     this.$watermark.set('鍑开鍒堕��', this.$refs.watermark)
-    //     this.firstWatermark = false
-    //   }
-    // },
-    clickMe() {
-      //   this.dialogVisible = true
-      //   this.$nextTick(() => {
-      //     this.bindQRCode()
-      //     this.addWatermark()
-      //     console.log(document.getElementById('column0').style.width = '200px', 0)
-      //     console.log(document.getElementById('column7'), 7)
-      //     console.log(document.getElementById('table'), 2)
-      //     console.log(document.getElementById('table').getElementsByTagName('el-table'), 1)
-      //   })
-      this.dialogVisible = true
-    },
-    bindQRCode() {
-      if (this.firstbindQRCode) {
-        const text = 'PO202206280001;Step02'
-        new QRCode(this.$refs.qrCodeDiv, {
-          // text: 'Vue瀹炵幇鐢熸垚浜岀淮鐮侊紒',
-          text: text,
-          width: 80,
-          height: 80,
-          colorDark: '#333333', // 浜岀淮鐮侀鑹�
-          colorLight: '#ffffff', // 浜岀淮鐮佽儗鏅壊
-          correctLevel: QRCode.CorrectLevel.L// 瀹归敊鐜囷紝L/M/H
-        })
-        this.firstbindQRCode = false
-      }
-    },
-    async TestClick() {
-      const data = {
-        mesordercode: 'PO202206280001_4',
-        username: getCookie('admin')
-      }
-      // const res = await MesOrderPrintSearch(data)
-      const res = await MesOrderPrintSearch1(data)
-      console.log(res, 1)
-    },
-    ws_ajax_preview() {
-      // 鍙傛暟鍏蜂綋璇存槑璇峰弬鑰冨府鍔╂枃妗d腑鐨勨�淲EB鎶ヨ〃(B/S鎶ヨ〃)->WEB鎶ヨ〃瀹㈡埛绔�->鍚姩鍙傛暟璇存槑鈥濋儴鍒�
-      var args = {
-        type: 'preview',
-        showOptionDlg: true,
-        report: urlAddRandomNo('../grf/鎶ュ伐浜у嚭鏍囩.grf'),
-
-        // report: urlAddRandomNo('https://www.gridreport.cn/demos/grf/1a.grf'),
-        // data: 'http://www.gridreport.cn/demos/data/DataCenter.ashx?data=Customer'
-        data:
-          {
-            'recordset': [
-              {
-                'wo_code': 'PO202206280001_1',
-                'partcode': '1403-001-0001',
-                'partname': '鍦嗛挗F45MnVS蠁20',
-                'qty': '100',
-                'next_stepname': '娴嬭瘯宸ュ簭2',
-                'qrcode': 'PO202206280001_1;Step02'
-              },
-              {
-                'wo_code': 'PO202206280001_1',
-                'partcode': '1403-001-0001',
-                'partname': '鍦嗛挗F45MnVS蠁20',
-                'qty': '100',
-                'next_stepname': '娴嬭瘯宸ュ簭2',
-                'qrcode': 'PO202206280001_1;Step02'
-              }
-            ]
-          }
-
-      }
-      console.log(args)
-      webapp_ws_ajax_run(args)
-    }
-
-  }
-}
-</script>
-
-<style media="print">
-/*@media print {*/
-@page {
-  /*size: auto;*/
-  size: auto;
-  margin: 3mm;
-  /*margin: 0mm;*/
-  /*padding: 0;*/
-}
-
-/*}*/
-/*.elTable {*/
-
-/*::v-deep .el-table {*/
-/*  margin-top: 10px;*/
-/*}*/
-/*table {*/
-/*  width: 100% !important;*/
-/*}*/
-
-/*.el-table__body,*/
-/*.el-table__header {*/
-/*  width: 100% !important;*/
-/*}*/
-
-/*.el-table__body {*/
-/*  width: 100% !important;*/
-/*}*/
-
-/*}*/
-
-/*/deep/.el-table__body-wrapper::-webkit-scrollbar{*/
-/*  width: 0;*/
-/*}*/
-
-/*.el-table--border,.el-table--fit{*/
-/*  border-right:  1px solid #000 !important;*/
-/*  border-bottom:  1px solid #000 !important;*/
-/*}*/
-/*.el-table--border td, .el-table--border th, .el-table__body-wrapper .el-table--border.is-scrolling-left~.el-table__fixed{*/
-/*  border-left:   1px solid #000 !important;*/
-/*  border-top:   1px solid #000 !important;*/
-/*}*/
-</style>
-
diff --git a/src/views/workOrder/workOrderClose.vue b/src/views/workOrder/workOrderClose.vue
new file mode 100644
index 0000000..753842b
--- /dev/null
+++ b/src/views/workOrder/workOrderClose.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'WorkOrderClose'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/workOrder/workOrderList.vue b/src/views/workOrder/workOrderList.vue
new file mode 100644
index 0000000..4398e56
--- /dev/null
+++ b/src/views/workOrder/workOrderList.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'WorkOrderList'
+}
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/views/workOrder/workOrderSend.vue b/src/views/workOrder/workOrderSend.vue
new file mode 100644
index 0000000..d150eab
--- /dev/null
+++ b/src/views/workOrder/workOrderSend.vue
@@ -0,0 +1,11 @@
+<template />
+
+<script>
+export default {
+  name: 'WorkOrderSend'
+}
+</script>
+
+<style scoped>
+
+</style>

--
Gitblit v1.9.3