From d2fb861c08c060c722253daf659f1e5d4cfe4607 Mon Sep 17 00:00:00 2001
From: loulijun2021 <1694218219@qq.com>
Date: 星期五, 24 三月 2023 16:13:43 +0800
Subject: [PATCH] 1.菜单路由变为英文

---
 src/views/deviceManager/maintainPosition.vue                  |    0 
 src/views/reportManager/subcontractingOperation.vue           |    0 
 src/views/deviceManager/checkStandard.vue                     |    0 
 src/views/materialManager/inventoryQuery.vue                  |    0 
 src/views/reportManager/installationLampList.vue              |    5 
 src/views/produceManager/workOrderBatchClose.vue              |    0 
 src/views/makeModel/materialType.vue                          |    0 
 src/views/deviceManager/maintainRecord.vue                    |    0 
 src/views/qualityManager/processCheckRecord.vue               |    0 
 src/views/produceManager/AutoScheduling.vue                   |    6 
 src/views/systemSettings/passwordEdit.vue                     |    0 
 src/views/makeModel/processRoute.vue                          |    0 
 src/views/materialManager/storehouseDefine.vue                |    0 
 src/views/produceManager/capacityPlanning.vue                 |    0 
 src/views/produceManager/workOrder_autoPrint_back.vue         |    0 
 src/views/materialManager/containerList.vue                   |    0 
 src/views/materialManager/containerType.vue                   |    0 
 src/views/makeModel/meterPrice.vue                            |    0 
 src/views/basicSettings/roleList.vue                          |    0 
 src/views/gantt_back/zdpc2.vue                                |    6 
 src/views/deviceManager/checkPosition.vue                     |    0 
 src/views/systemSettings/codingRules.vue                      |    0 
 src/views/produceManager/AutoScheduling_back.vue              |    6 
 src/views/systemSettings/sopUpload.vue                        |    0 
 src/components/Scheduling/index.vue                           |    0 
 src/views/kanbanManager/ckgl.vue                              |    0 
 src/views/kanbanManager/cgdd.vue                              |    0 
 src/views/qualityManager/processCheckStandard.vue             |    0 
 src/views/kanbanManager/cjzl.vue                              |    0 
 src/router/index.js                                           |  390 ++++++++++++++++++++++++------------------------
 src/views/basicSettings/contactUnitList.vue                   |    0 
 src/views/qualityManager/defectDefine.vue                     |    0 
 src/views/deviceManager/maintainStandard.vue                  |    0 
 src/views/systemSettings/shopNotice.vue                       |    0 
 src/views/systemSettings/systemLog.vue                        |    0 
 src/views/qualityManager/defectStatistics.vue                 |    0 
 src/views/reportManager/personSalaryList.vue                  |    0 
 src/views/makeModel/InventoryList.vue                         |    7 
 src/views/produceManager/produceStartOrder.vue                |    0 
 src/views/reportManager/repairDetailList.vue                  |    0 
 src/views/gantt_back/gantt_all_back.vue                       |    6 
 src/views/kanbanManager/zhkb.vue                              |    0 
 src/views/gantt_back/gantt_back.vue                           |    6 
 src/views/produceManager/produceStartOrder_autoPrint_back.vue |    0 
 src/views/produceManager/workOrderDispatch.vue                |    0 
 src/views/deviceManager/deviceGroup.vue                       |    0 
 src/views/deviceManager/repairRequestRecord.vue               |    0 
 src/views/purchasesManager/purchasesList.vue                  |    0 
 src/views/basicSettings/userList.vue                          |    0 
 src/views/kanbanManager/cjsc.vue                              |    0 
 src/views/materialManager/locationDefine.vue                  |    0 
 src/views/deviceManager/repairRecord.vue                      |    0 
 src/views/basicSettings/installationLampSetting.vue           |    0 
 src/views/deviceManager/deviceList.vue                        |    0 
 src/views/reportManager/abnormalQualityList.vue               |    0 
 src/views/qualityManager/logisticsCheck.vue                   |    0 
 src/views/qualityManager/qualityPlaning.vue                   |    0 
 src/views/makeModel/materialList.vue                          |    0 
 src/views/produceManager/workOrder.vue                        |    0 
 src/views/systemHome/index.vue                                |    0 
 src/views/makeModel/processDefine.vue                         |    0 
 src/views/materialManager/inOutboundRecord.vue                |    0 
 /dev/null                                                     |    0 
 src/views/deviceManager/checkRecord.vue                       |    0 
 src/views/qualityManager/processCheckItem.vue                 |    0 
 src/views/reportManager/defectDetailList.vue                  |    0 
 src/views/deviceManager/deviceType.vue                        |    0 
 src/views/qualityManager/processCheck.vue                     |    0 
 src/views/qualityManager/qualityStandard.vue                  |    0 
 src/views/produceManager/produceOrder.vue                     |    0 
 src/views/basicSettings/organizationList.vue                  |    0 
 src/views/kanbanManager/kbCommon.css                          |    0 
 src/views/reportManager/groupSalaryList.vue                   |    0 
 73 files changed, 215 insertions(+), 217 deletions(-)

diff --git a/src/components/Test/index.vue b/src/components/Scheduling/index.vue
similarity index 100%
rename from src/components/Test/index.vue
rename to src/components/Scheduling/index.vue
diff --git a/src/router/index.js b/src/router/index.js
index 601b586..46b9571 100644
--- a/src/router/index.js
+++ b/src/router/index.js
@@ -36,15 +36,15 @@
   * */
   {
     path: '/zhkb',
-    component: () => import('@/views/kb/zhkb'),
+    component: () => import('@/views/kanbanManager/zhkb'),
     hidden: true
   }, {
     path: '/cgdd',
-    component: () => import('@/views/kb/cgdd'),
+    component: () => import('@/views/kanbanManager/cgdd'),
     hidden: true
   }, {
     path: '/ckgl',
-    component: () => import('@/views/kb/ckgl'),
+    component: () => import('@/views/kanbanManager/ckgl'),
     hidden: true
   },
 
@@ -77,7 +77,7 @@
     children: [{
       path: 'index',
       name: 'index',
-      component: () => import('@/views/xtsy/index'),
+      component: () => import('@/views/systemHome/index'),
       meta: { title: '绯荤粺棣栭〉', icon: 'home', affix: true }
     }]
   }
@@ -107,136 +107,130 @@
   //   }]
   // },
   {
-    path: '/jcsz',
+    path: '/basicSettings',
     component: Layout,
-    redirect: '/jcsz/zzjg',
+    redirect: '/basicSettings/organizationList',
     name: '鍩虹璁剧疆',
     code: '1001',
     meta: { code: '1001', title: '鍩虹璁剧疆', icon: 'tree2' },
     alwaysShow: true, // 褰揷hildren鍙湁涓�涓椂锛屼篃鏄剧ず鐖惰彍鍗�
     children: [
       {
-        path: 'zzjg',
-        name: 'ZZJGCancel',
+        path: 'organizationList',
+        name: 'organizationListCancel',
         code: '1010',
-        component: () => import('@/views/jcsz/zzjg'),
+        component: () => import('@/views/basicSettings/organizationList'),
         meta: { code: '1010', title: '缁勭粐鏋舵瀯', icon: '', keepAlive: true }
       }, {
-        path: 'yhqd',
-        name: 'YYQDCancel',
+        path: 'userList',
+        name: 'userListCancel',
         code: '1011',
-        component: () => import('@/views/jcsz/yhqd'),
+        component: () => import('@/views/basicSettings/userList'),
         meta: { code: '1011', title: '鐢ㄦ埛娓呭崟', icon: '', keepAlive: true }
       }, {
-        path: 'jsqd',
-        name: 'JSQDCancel',
+        path: 'roleList',
+        name: 'roleListCancel',
         code: '1012',
-        component: () => import('@/views/jcsz/jsqd'),
+        component: () => import('@/views/basicSettings/roleList'),
         meta: { code: '1012', title: '瑙掕壊娓呭崟', icon: '', keepAlive: true }
       }, {
-        path: 'wldw',
-        name: 'WLDWCancel',
+        path: 'contactUnitList',
+        name: 'contactUnitListCancel',
         code: '1013',
-        component: () => import('@/views/jcsz/wldw'),
+        component: () => import('@/views/basicSettings/contactUnitList'),
         meta: { code: '1013', title: '寰�鏉ュ崟浣�', icon: '', keepAlive: true }
       }, {
-        path: 'adsz',
-        name: 'ADZZCancel',
+        path: 'installationLampSetting',
+        name: 'installationLampSettingCancel',
         code: '1014',
-        component: () => import('@/views/jcsz/adsz'),
+        component: () => import('@/views/basicSettings/installationLampSetting'),
         meta: { code: '1014', title: '瀹夌伅璁剧疆', icon: '', keepAlive: true }
       }
     ]
   },
   {
-    path: '/sbgl',
+    path: '/deviceManager',
     component: Layout,
-    redirect: '/sbgl/sblx',
+    redirect: '/deviceManager/deviceType',
     name: '璁惧绠$悊',
     code: '1002',
     meta: { code: '1002', title: '璁惧绠$悊', icon: 'example' },
     alwaysShow: true,
     children: [
       {
-        path: 'sblx',
-        name: 'SBLXCancel',
+        path: 'deviceType',
+        name: 'deviceTypeCancel',
         code: '1020',
-        component: () => import('@/views/sbgl/sblx'),
+        component: () => import('@/views/deviceManager/deviceType'),
         meta: { code: '1020', title: '璁惧绫诲瀷', icon: '', keepAlive: true }
       },
       {
-        path: 'wxjl',
-        code: '1029Cancel',
-        name: 'WXJL',
-        component: () => import('@/views/sbgl/wxjl'),
-        meta: { code: '1029', title: '缁翠慨璁板綍', icon: '', keepAlive: true }
-      }, {
-        path: 'sbz',
-        name: 'SBZCancel',
+        path: 'deviceGroup',
+        name: 'deviceGroupCancel',
         code: '1021',
-        component: () => import('@/views/sbgl/sbz'),
+        component: () => import('@/views/deviceManager/deviceGroup'),
         meta: { code: '1021', title: '璁惧缁�', icon: '', keepAlive: true }
       }, {
-        path: 'sbqd',
-        name: 'sbqdCancel',
+        path: 'deviceList',
+        name: 'deviceListCancel',
         code: '1022',
-        component: () => import('@/views/sbgl/sbqd'),
+        component: () => import('@/views/deviceManager/deviceList'),
         meta: { code: '1022', title: '璁惧娓呭崟', icon: '', keepAlive: true }
       },
       {
-        path: 'djbz',
-        name: 'DJBZCancel',
+        path: 'checkStandard',
+        name: 'checkStandardCancel',
         code: '1023',
-        component: () => import('@/views/sbgl/djbz'),
+        component: () => import('@/views/deviceManager/checkStandard'),
         meta: { code: '1023', title: '鐐规鏍囧噯', icon: '', keepAlive: true }
       },
       {
-        path: 'djbw',
-        name: 'DJBWCancel',
+        path: 'checkPosition',
+        name: 'checkPositionCancel',
         code: '1024',
-        component: () => import('@/views/sbgl/djbw'),
+        component: () => import('@/views/deviceManager/checkPosition'),
         meta: { code: '1024', title: '鐐规閮ㄤ綅', icon: '', keepAlive: true }
       },
       {
-        path: 'bybz',
-        name: 'BYBZCancel',
+        path: 'maintainStandard',
+        name: 'maintainStandardCancel',
         code: '1025',
-        component: () => import('@/views/sbgl/bybz'),
+        component: () => import('@/views/deviceManager/maintainStandard'),
         meta: { code: '1025', title: '淇濆吇鏍囧噯', icon: '', keepAlive: true }
       },
       {
-        path: 'bybw',
-        name: 'BYBWCancel',
+        path: 'maintainPosition',
+        name: 'maintainPositionCancel',
         code: '1026',
-        component: () => import('@/views/sbgl/bybw'),
+        component: () => import('@/views/deviceManager/maintainPosition'),
         meta: { code: '1026', title: '淇濆吇閮ㄤ綅', icon: '', keepAlive: true }
       },
       {
-        path: 'djjl',
-        name: 'DJJLCancel',
+        path: 'checkRecord',
+        name: 'checkRecordCancel',
         code: '1027',
-        component: () => import('@/views/sbgl/djjl'),
+        component: () => import('@/views/deviceManager/checkRecord'),
         meta: { code: '1027', title: '鐐规璁板綍', icon: '', keepAlive: true }
       },
       {
-        path: 'byjl',
-        name: 'BYJLCancel',
+        path: 'maintainRecord',
+        name: 'maintainRecordCancel',
         code: '1028',
-        component: () => import('@/views/sbgl/byjl'),
+        component: () => import('@/views/deviceManager/maintainRecord'),
         meta: { code: '1028', title: '淇濆吇璁板綍', icon: '', keepAlive: true }
       },
       {
-        path: 'wxjl',
-        name: 'WXJLCancel',
+        path: 'repairRecord',
         code: '1029',
-        component: () => import('@/views/sbgl/wxjl'),
-        meta: { code: '1029', title: '璁惧缁翠慨璁板綍', icon: '', keepAlive: true }
+        name: 'repairRecordCancel',
+        component: () => import('@/views/deviceManager/repairRecord'),
+        meta: { code: '1029', title: '缁翠慨璁板綍', icon: '', keepAlive: true }
       },
       {
-        path: 'swsqjl',
-        name: 'WXSQJLCancel',
+        path: 'repairRequestRecord',
+        name: 'repairRequestRecordCancel',
         code: '1019',
-        component: () => import('@/views/sbgl/swsqjl'),
+        component: () => import('@/views/deviceManager/repairRequestRecord'),
         meta: { code: '1019', title: '璁惧鐢宠缁翠慨璁板綍', icon: '', keepAlive: true }
       }
     ]
@@ -320,337 +314,337 @@
     ]
   },
   {
-    path: '/wlgl',
+    path: '/materialManager',
     component: Layout,
-    redirect: '/wlgl/ckdy',
+    redirect: '/materialManager/storehouseDefine',
     name: '鐗╂枡绠$悊',
     code: '1004',
     meta: { code: '1004', title: '鐗╂枡绠$悊', icon: 'table' },
     alwaysShow: true,
     children: [
       {
-        path: 'ckdy',
-        name: 'CKDYCancel',
+        path: 'storehouseDefine',
+        name: 'storehouseDefineCancel',
         code: '1050',
-        component: () => import('@/views/wlgl/ckdy'),
+        component: () => import('@/views/materialManager/storehouseDefine'),
         meta: { code: '1050', title: '浠撳簱瀹氫箟', icon: '', keepAlive: true }
       },
       {
-        path: 'kwdy',
-        name: 'KWDYCancel',
+        path: 'locationDefine',
+        name: 'locationDefineCancel',
         code: '1051',
-        component: () => import('@/views/wlgl/kwdy'),
+        component: () => import('@/views/materialManager/locationDefine'),
         meta: { code: '1051', title: '搴撲綅瀹氫箟', icon: '', keepAlive: true }
       }, {
-        path: 'rqlx',
-        name: 'RYLXCancel',
+        path: 'containerType',
+        name: 'containerTypeCancel',
         code: '1052',
-        component: () => import('@/views/wlgl/rqlx'),
+        component: () => import('@/views/materialManager/containerType'),
         meta: { code: '1052', title: '瀹瑰櫒绫诲瀷', icon: '', keepAlive: true }
       }, {
-        path: 'rqqd',
-        name: 'RQQDCancel',
+        path: 'containerList',
+        name: 'containerListCancel',
         code: '1053',
-        component: () => import('@/views/wlgl/rqqd'),
+        component: () => import('@/views/materialManager/containerList'),
         meta: { code: '1053', title: '瀹瑰櫒娓呭崟', icon: '', keepAlive: true }
       }, {
-        path: 'crkjl',
-        name: 'CRKJLCancel',
+        path: 'inOutboundRecord',
+        name: 'inOutboundRecordCancel',
         code: '1054',
-        component: () => import('@/views/wlgl/crkjl'),
+        component: () => import('@/views/materialManager/inOutboundRecord'),
         meta: { code: '1054', title: '鍑哄叆搴撹褰�', icon: '', keepAlive: true }
       }, {
-        path: 'kccx',
-        name: 'KCCXCancel',
+        path: 'inventoryQuery',
+        name: 'inventoryQueryCancel',
         code: '1055',
-        component: () => import('@/views/wlgl/kccx'),
+        component: () => import('@/views/materialManager/inventoryQuery'),
         meta: { code: '1055', title: '搴撳瓨鏌ヨ', icon: '', keepAlive: true }
       }
     ]
   },
   {
-    path: '/zzmx',
+    path: '/makeModel',
     component: Layout,
-    redirect: '/zzmx/gylx',
+    redirect: '/makeModel/InventoryList',
     name: '鍒堕�犳ā鍨�',
     code: '1005',
     meta: { code: '1005', title: '鍒堕�犳ā鍨�', icon: 'icu' },
     alwaysShow: true,
     children: [
       {
-        path: 'wllx',
-        name: 'WLLXCancel',
+        path: 'materialType',
+        name: 'materialTypeCancel',
         code: '1060',
-        component: () => import('@/views/zzmx/wllx'),
+        component: () => import('@/views/makeModel/materialType'),
         meta: { code: '1060', title: '鐗╂枡绫诲瀷', icon: '', keepAlive: true }
       },
       {
-        path: 'chda',
-        name: 'CHDACancel',
+        path: 'InventoryList',
+        name: 'InventoryListCancel',
         code: '1061',
-        component: () => import('@/views/zzmx/chda'),
+        component: () => import('@/views/makeModel/InventoryList'),
         meta: { code: '1061', title: '瀛樿揣妗f', icon: '', keepAlive: true }
       }, {
-        path: 'wlqd',
-        name: 'WLQDCancel',
+        path: 'materialList',
+        name: 'materialListCancel',
         code: '1062',
-        component: () => import('@/views/zzmx/wlqd'),
+        component: () => import('@/views/makeModel/materialList'),
         meta: { code: '1062', title: '鐗╂枡娓呭崟', icon: '', keepAlive: true }
       },
       {
-        path: 'gylx',
-        name: 'GYLXCancel',
+        path: 'processRoute',
+        name: 'processRouteCancel',
         code: '1063',
-        component: () => import('@/views/zzmx/gylx'),
+        component: () => import('@/views/makeModel/processRoute'),
         meta: { code: '1063', title: '宸ヨ壓璺嚎', icon: '', keepAlive: true }
       }, {
-        path: 'gxdy',
-        name: 'GXDYCancel',
+        path: 'processDefine',
+        name: 'processDefineCancel',
         code: '1064',
-        component: () => import('@/views/zzmx/gxdy'),
+        component: () => import('@/views/makeModel/processDefine'),
         meta: { code: '1064', title: '宸ュ簭瀹氫箟', icon: '', keepAlive: true }
       },
       {
-        path: 'jpgj',
-        name: 'JPGJCancel',
+        path: 'meterPrice',
+        name: 'meterPriceCancel',
         code: '1065',
-        component: () => import('@/views/zzmx/jpgj'),
+        component: () => import('@/views/makeModel/meterPrice'),
         meta: { code: '1065', title: '鑺傛媿宸ヤ环', icon: '', keepAlive: true }
       }
     ]
   },
   {
-    path: '/scgl',
+    path: '/produceManager',
     component: Layout,
-    redirect: '/scgl/scdd',
+    redirect: '/produceManager/produceOrder',
     name: '鐢熶骇绠$悊',
     code: '1006',
     meta: { code: '1006', title: '鐢熶骇绠$悊', icon: 'production' },
     alwaysShow: true,
     children: [
       {
-        path: 'scdd',
-        name: 'SCDDCancel',
+        path: 'produceOrder',
+        name: 'produceOrderCancel',
         code: '1070',
-        component: () => import('@/views/scgl/scdd'),
+        component: () => import('@/views/produceManager/produceOrder'),
         meta: { code: '1070', title: 'ERP鐢熶骇璁㈠崟', icon: '', keepAlive: true }
       }, {
-        path: 'gd',
-        name: 'GDCancel',
+        path: 'workOrder',
+        name: 'workOrderCancel',
         code: '1071',
-        component: () => import('@/views/scgl/gd'),
+        component: () => import('@/views/produceManager/workOrder'),
         meta: { code: '1071', title: 'MES宸ュ崟', icon: '', keepAlive: true }
       }, {
-        path: 'gdpg',
-        name: 'GDPDCancel',
+        path: 'workOrderDispatch',
+        name: 'workOrderDispatchCancel',
         code: '1072',
-        component: () => import('@/views/scgl/gdpg'),
+        component: () => import('@/views/produceManager/workOrderDispatch'),
         meta: { code: '1072', title: '宸ュ崟娲惧伐', icon: '', keepAlive: true }
       }, {
-        path: 'sckbg',
-        name: 'SCKBGCancel',
+        path: 'produceStartOrder',
+        name: 'produceStartOrderCancel',
         code: '1073',
-        component: () => import('@/views/scgl/sckbg'),
+        component: () => import('@/views/produceManager/produceStartOrder'),
         meta: { code: '1073', title: '鐢熶骇寮�鎶ュ伐', icon: '', keepAlive: true }
       }, {
-        path: 'gdplgb',
-        name: 'GDPLGBCancel',
+        path: 'workOrderBatchClose',
+        name: 'workOrderBatchCloseCancel',
         code: '1074',
-        component: () => import('@/views/scgl/gdplgb'),
+        component: () => import('@/views/produceManager/workOrderBatchClose'),
         meta: { code: '1074', title: 'MES宸ュ崟鎵归噺鍏抽棴', icon: '', keepAlive: true }
       }, {
-        path: 'cngh',
-        name: 'CNGHCancel',
+        path: 'capacityPlanning',
+        name: 'capacityPlanningCancel',
         code: '1075',
-        component: () => import('@/views/scgl/cngh'),
+        component: () => import('@/views/produceManager/capacityPlanning'),
         meta: { code: '1075', title: '浜ц兘瑙勫垝', icon: '', keepAlive: true }
       }, {
-        path: 'zdpc',
-        name: 'ZDPCCancel',
+        path: 'AutoScheduling',
+        name: 'AutoSchedulingCancel',
         code: '1076',
-        component: () => import('@/views/scgl/zdpc'),
+        component: () => import('@/views/produceManager/AutoScheduling'),
         meta: { code: '1076', title: '鑷姩鎺掔▼', icon: '', keepAlive: true }
       }
     ]
   },
   {
-    path: '/zlgl',
+    path: '/qualityManager',
     component: Layout,
-    redirect: '/zlgl/zjbz',
+    redirect: '/qualityManager/defectDefine',
     name: '璐ㄩ噺绠$悊',
     code: '1007',
     meta: { code: '1007', title: '璐ㄩ噺绠$悊', icon: 'quality' },
     alwaysShow: true,
     children: [
       {
-        path: 'zjbz',
-        name: 'ZJBZCancel',
+        path: 'qualityStandard',
+        name: 'qualityStandardCancel',
         code: '1080',
-        component: () => import('@/views/zlgl/zjbz'),
+        component: () => import('@/views/qualityManager/qualityStandard'),
         meta: { code: '1080', title: '璐ㄦ鏍囧噯', icon: '', keepAlive: true }
       }, {
-        path: 'qxdy',
-        name: 'QXDYCancel',
+        path: 'defectDefine',
+        name: 'defectDefineCancel',
         code: '1081',
-        component: () => import('@/views/zlgl/qxdy'),
+        component: () => import('@/views/qualityManager/defectDefine'),
         meta: { code: '1081', title: '缂洪櫡瀹氫箟', icon: '', keepAlive: true }
       }, {
-        path: 'gxjy',
-        name: 'GXDYCancel',
+        path: 'processCheck',
+        name: 'processCheckCancel',
         code: '1082',
-        component: () => import('@/views/zlgl/gxjy'),
+        component: () => import('@/views/qualityManager/processCheck'),
         meta: { code: '1082', title: '宸ュ簭妫�楠�', icon: '', keepAlive: true }
       }, {
-        path: 'wljy',
-        name: 'WLJYCancel',
+        path: 'logisticsCheck',
+        name: 'logisticsCheckCancel',
         code: '1083',
-        component: () => import('@/views/zlgl/wljy'),
+        component: () => import('@/views/qualityManager/logisticsCheck'),
         meta: { code: '1083', title: '鐗╂祦妫�楠�', icon: '', keepAlive: true }
       }, {
-        path: 'qxsj',
-        name: 'QXSJCancel',
+        path: 'defectStatistics',
+        name: 'defectStatisticsCancel',
         code: '1084',
-        component: () => import('@/views/zlgl/qxsj'),
+        component: () => import('@/views/qualityManager/defectStatistics'),
         meta: { code: '1084', title: '缂洪櫡缁熻', icon: '', keepAlive: true }
       },
       {
-        path: 'gxjybz',
-        name: 'QXJYBZCancel',
+        path: 'processCheckStandard',
+        name: 'processCheckStandardCancel',
         code: '1085',
-        component: () => import('@/views/zlgl/gxjybz'),
+        component: () => import('@/views/qualityManager/processCheckStandard'),
         meta: { code: '1085', title: '宸ュ簭妫�楠屾爣鍑�', icon: '', keepAlive: true }
       },
       {
-        path: 'gxjyxm',
-        name: 'GXJYXMCancel',
+        path: 'processCheckItem',
+        name: 'processCheckItemCancel',
         code: '1086',
-        component: () => import('@/views/zlgl/gxjyxm'),
+        component: () => import('@/views/qualityManager/processCheckItem'),
         meta: { code: '1086', title: '宸ュ簭妫�楠岄」鐩�', icon: '', keepAlive: true }
       }, {
-        path: 'gxjyjl',
-        name: 'GXJYJLCancel',
+        path: 'processCheckRecord',
+        name: 'processCheckRecordCancel',
         code: '1087',
-        component: () => import('@/views/zlgl/gxjyjl'),
+        component: () => import('@/views/qualityManager/processCheckRecord'),
         meta: { code: '1087', title: '宸ュ簭妫�楠岃褰�', icon: '', keepAlive: true }
       }, {
-        path: 'zjfa',
+        path: 'qualityPlaning',
         name: 'ZJFACancel',
         code: '1088',
-        component: () => import('@/views/zlgl/zjfa'),
+        component: () => import('@/views/qualityManager/qualityPlaning'),
         meta: { code: '1088', title: '璐ㄦ鏂规', icon: '', keepAlive: true }
       }
     ]
   },
   {
-    path: '/bbgl',
+    path: '/reportManager',
     component: Layout,
-    redirect: '/bbgl/sczxbb',
+    redirect: '/reportManager/groupSalaryList',
     name: '鎶ヨ〃绠$悊',
     code: '1008',
     meta: { code: '1008', title: '鎶ヨ〃绠$悊', icon: 'bbgl' },
     alwaysShow: true,
     children: [
       {
-        path: 'bzgztj',
-        name: 'BZGZTJCancel',
+        path: 'groupSalaryList',
+        name: 'groupSalaryListCancel',
         code: '1090',
-        component: () => import('@/views/bbgl/bzgz'),
+        component: () => import('@/views/reportManager/groupSalaryList'),
         meta: { code: '1090', title: '鐝粍宸ヨ祫缁熻', icon: '', keepAlive: true }
       }, {
-        path: 'rygz',
-        name: 'RYGZCancel',
+        path: 'personSalaryList',
+        name: 'personSalaryListCancel',
         code: '1091',
-        component: () => import('@/views/bbgl/rygz'),
+        component: () => import('@/views/reportManager/personSalaryList'),
         meta: { code: '1091', title: '浜哄憳宸ヨ祫', icon: '', keepAlive: true }
       }, {
-        path: 'wwgx',
-        name: 'WWGXCancel',
+        path: 'subcontractingOperation',
+        name: 'subcontractingOperationCancel',
         code: '1092',
-        component: () => import('@/views/bbgl/wwgx'),
+        component: () => import('@/views/reportManager/subcontractingOperation'),
         meta: { code: '1092', title: '濮斿宸ュ簭', icon: '', keepAlive: true }
       }, {
-        path: 'blmx',
-        name: 'BLMXJCancel',
+        path: 'defectDetailList',
+        name: 'defectDetailListCancel',
         code: '1093',
-        component: () => import('@/views/bbgl/blmx'),
+        component: () => import('@/views/reportManager/defectDetailList'),
         meta: { code: '1093', title: '涓嶈壇鏄庣粏', icon: '', keepAlive: true }
       }, {
-        path: 'pzyc',
-        name: 'PZYCJCancel',
+        path: 'abnormalQualityList',
+        name: 'abnormalQualityListCancel',
         code: '1094',
-        component: () => import('@/views/bbgl/pzyc'),
+        component: () => import('@/views/reportManager/abnormalQualityList'),
         meta: { code: '1094', title: '鍝佽川寮傚父', icon: '', keepAlive: true }
       }, {
-        path: 'wxmx',
-        name: 'WXMXJCancel',
+        path: 'repairDetailList',
+        name: 'repairDetailListCancel',
         code: '1095',
-        component: () => import('@/views/bbgl/wxmx'),
+        component: () => import('@/views/reportManager/repairDetailList'),
         meta: { code: '1095', title: '缁翠慨鏄庣粏', icon: '', keepAlive: true }
       }, {
-        path: 'adbb',
-        name: 'ADBBJCancel',
+        path: 'installationLampList',
+        name: 'installationLampListCancel',
         code: '1096',
-        component: () => import('@/views/bbgl/adbb'),
+        component: () => import('@/views/reportManager/installationLampList'),
         meta: { code: '1096', title: '瀹夌伅鎶ヨ〃', icon: '', keepAlive: true }
       }
     ]
   },
   {
-    path: '/xtsz',
+    path: '/systemSettings',
     component: Layout,
-    redirect: '/xtsz/bmgz',
+    redirect: '/systemSettings/bmgz',
     name: '绯荤粺璁剧疆',
     code: '1009',
     meta: { code: '1009', title: '绯荤粺璁剧疆', icon: 'xtsz' },
     alwaysShow: true,
     children: [
       {
-        path: 'bmgz',
-        name: 'BMGZCancel',
+        path: 'codingRules',
+        name: 'codingRulesCancel',
         code: '1101',
-        component: () => import('@/views/xtsz/bmgz'),
+        component: () => import('@/views/systemSettings/codingRules'),
         meta: { code: '1101', title: '缂栫爜瑙勫垯', icon: '', keepAlive: true }
       }, {
-        path: 'mmxg',
-        name: 'MMXGCancel',
+        path: 'passwordEdit',
+        name: 'passwordEditCancel',
         code: '1102',
-        component: () => import('@/views/xtsz/mmxg'),
+        component: () => import('@/views/systemSettings/passwordEdit'),
         meta: { code: '1102', title: '瀵嗙爜淇敼', icon: '', keepAlive: true }
       }, {
-        path: 'xtrz',
-        name: 'XTRZCancel',
+        path: 'systemLog',
+        name: 'systemLogCancel',
         code: '1103',
-        component: () => import('@/views/xtsz/xtrz'),
+        component: () => import('@/views/systemSettings/systemLog'),
         meta: { code: '1103', title: '绯荤粺鏃ュ織', icon: '', keepAlive: true }
       }, {
-        path: 'sc',
-        name: 'SCCancel',
+        path: 'sopUpload',
+        name: 'sopUploadCancel',
         code: '1104',
-        component: () => import('@/views/xtsz/sc'),
+        component: () => import('@/views/systemSettings/sopUpload'),
         meta: { code: '1104', title: 'SOP涓婁紶', icon: '', keepAlive: true }
       }, {
-        path: 'cjgg',
-        name: 'CJGGancel',
+        path: 'shopNotice',
+        name: 'shopNoticeCancel',
         code: '1105',
-        component: () => import('@/views/xtsz/cjgg'),
+        component: () => import('@/views/systemSettings/shopNotice'),
         meta: { code: '1105', title: '杞﹂棿鍏憡', icon: '', keepAlive: true }
       }
     ]
   },
   {
-    path: '/cggl',
+    path: '/purchasesManager',
     component: Layout,
-    redirect: '/cggl/cgdd',
+    redirect: '/purchasesManager/purchasesList',
     name: '閲囪喘绠$悊',
     code: '1000',
     meta: { code: '1000', title: '閲囪喘绠$悊', icon: 'cggl' },
     alwaysShow: true,
     children: [
       {
-        path: 'cgdd',
+        path: 'purchasesList',
         name: 'CGDDCancel',
         code: '1201',
-        component: () => import('@/views/cggl/cgdd'),
+        component: () => import('@/views/purchasesManager/purchasesList'),
         meta: { code: '1201', title: '閲囪喘璁㈠崟', icon: '', keepAlive: true }
       }
     ]
diff --git a/src/views/jcsz/wldw.vue b/src/views/basicSettings/contactUnitList.vue
similarity index 100%
rename from src/views/jcsz/wldw.vue
rename to src/views/basicSettings/contactUnitList.vue
diff --git a/src/views/jcsz/adsz.vue b/src/views/basicSettings/installationLampSetting.vue
similarity index 100%
rename from src/views/jcsz/adsz.vue
rename to src/views/basicSettings/installationLampSetting.vue
diff --git a/src/views/jcsz/zzjg.vue b/src/views/basicSettings/organizationList.vue
similarity index 100%
rename from src/views/jcsz/zzjg.vue
rename to src/views/basicSettings/organizationList.vue
diff --git a/src/views/jcsz/jsqd.vue b/src/views/basicSettings/roleList.vue
similarity index 100%
rename from src/views/jcsz/jsqd.vue
rename to src/views/basicSettings/roleList.vue
diff --git a/src/views/jcsz/yhqd.vue b/src/views/basicSettings/userList.vue
similarity index 100%
rename from src/views/jcsz/yhqd.vue
rename to src/views/basicSettings/userList.vue
diff --git a/src/views/bbgl/bzgz_back.vue b/src/views/bbgl/bzgz_back.vue
deleted file mode 100644
index d7a7a00..0000000
--- a/src/views/bbgl/bzgz_back.vue
+++ /dev/null
@@ -1,670 +0,0 @@
-<template>
-  <div>
-    <div class="body" :style="{height:mainHeight+'px'}">
-      <div class="bodyTopButtonGroup">
-        <el-button type="primary" icon="el-icon-download" @click="download">瀵煎嚭</el-button>
-      </div>
-
-      <div class="bodyTopFormGroup">
-        <el-form
-          ref="form"
-          :model="form"
-          label-width="80px"
-          inline
-          style="display: flex;justify-content: space-between"
-        >
-          <div class="elForm">
-            <el-form-item label="宸ュ崟缂栧彿" style=" display: flex;">
-              <el-input v-model="form.wocode" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-            <el-form-item label="浜у搧缂栫爜" style=" display: flex;">
-              <el-input v-model="form.partcode" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-            <el-form-item label="浜у搧鍚嶇О" style=" display: flex;">
-              <el-input v-model="form.partname" style="width: 200px" placeholder="璇疯緭鍏�" />
-            </el-form-item>
-            <el-form-item label="瑙勬牸鍨嬪彿" style=" display: flex;">
-              <el-input v-model="form.partspec" style="width: 200px" placeholder="璇疯緭鍏�" />
-            </el-form-item>
-            <el-form-item label="宸ュ簭鍚嶇О" style=" display: flex;">
-              <el-input v-model="form.stepname" style="width: 200px" placeholder="璇疯緭鍏�" />
-            </el-form-item>
-            <el-form-item v-show="isExpandForm" label="鐢熶骇鐝粍" style=" display: flex;">
-              <el-select v-model="form.groupcode" style="width: 200px" placeholder="璇烽�夋嫨">
-                <el-option
-                  v-for="item in groupArr"
-                  :key="item.group_code"
-                  :label="item.group_name"
-                  :value="item.group_code"
-                />
-              </el-select>
-            </el-form-item>
-            <el-form-item v-show="isExpandForm" label="鎿嶄綔浜哄憳" style=" display: flex;">
-              <el-input v-model="form.username" style="width: 200px" placeholder="璇疯緭鍏�" />
-            </el-form-item>
-            <el-form-item v-show="isExpandForm" label="鎿嶄綔鏃堕棿" style="display: flex;align-items: center">
-              <el-date-picker
-                v-model="form.operdate"
-                type="daterange"
-                range-separator="~"
-                class="timeMini"
-                size="mini"
-                style="width: 200px;display: flex;line-height: 34px;height: 34px;"
-                :clearable="false"
-                start-placeholder="寮�濮嬫棩鏈�"
-                end-placeholder="缁撴潫鏃ユ湡"
-              />
-              <!--              font-size: 14px!important;-->
-              <!--              :picker-options="expireTimeOption"-->
-
-            </el-form-item>
-          </div>
-          <div class="bodySearchReset">
-            <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
-            <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
-          </div>
-        </el-form>
-      </div>
-
-      <div
-        class="bodyTopFormExpand"
-        @click="isExpandForm=!isExpandForm"
-      >
-        <i
-          :class="!isExpandForm?'el-icon-arrow-down':'el-icon-arrow-up'"
-          :style="{color:'#42B983'}"
-        /></div>
-
-      <div class="elTableDiv" style="margin-top: 0">
-        <el-table
-          ref="tableDataRef"
-          class="tableFixed"
-          :data="tableData"
-          :height="isExpandForm?tableHeight:(tableHeight+40)+'px'"
-          border
-          :row-class-name="tableRowClassName"
-          :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px',}"
-          highlight-current-row
-          :header-cell-style="this.$headerCellStyle"
-          :cell-style="this.$cellStyle"
-          @sort-change="sortChange"
-        >
-          <el-table-column
-            prop="RowNum"
-            width="50"
-            fixed
-            label="搴忓彿"
-          />
-          <el-table-column
-            prop="wo_code"
-            label="宸ュ崟缂栧彿"
-            width="160"
-            sortable="custom"
-          />
-          <el-table-column
-            prop="partcode"
-            label="浜у搧缂栫爜"
-            width="160"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="partname"
-            label="浜у搧鍚嶇О"
-            width="160"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="partspec"
-            label="浜у搧瑙勬牸"
-            show-tooltip-when-overflow
-            sortable="custom"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.partspec">{{ row.partspec }}</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="stepcode"
-            label="宸ュ簭缂栫爜"
-            width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="stepname"
-            label="宸ュ簭鍚嶇О"
-            width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="task_qty"
-            label="浠诲姟鏁伴噺"
-            width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="group_name"
-            label="鐢熶骇鐝粍"
-            width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="good_qty"
-            label="鎶ュ伐鏁伴噺"
-            width="110"
-            sortable="custom"
-          />
-          <el-table-column
-            prop="unprice"
-            label="宸ュ簭鍗曚环"
-            width="110"
-            sortable="custom"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.unprice">{{ row.unprice }}鍏�</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="usermoney"
-            label="璁颁欢宸ヨ祫"
-            width="110"
-            sortable="custom"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.usermoney">{{ row.usermoney }}鍏�</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="lm_user"
-            label="鎿嶄綔浜哄憳"
-            width="110"
-            sortable="custom"
-          />
-
-          <el-table-column
-            label="鏌ョ湅鏄庣粏"
-            width="120"
-            fixed="right"
-          >
-            <template slot-scope="{row}">
-              <div class="operationClass">
-                <el-tooltip class="item" effect="dark" content="浜哄憳鏄庣粏" placement="top">
-                  <!--                  <i class="el-icon-edit-outline" @click="edit('edit',row)" />-->
-                  <i
-                    class="el-icon-tickets"
-                    style="cursor: pointer;color: #42b983;margin-right: 15px"
-                    @click="edit('edit',row)"
-                  />
-                </el-tooltip>
-                <!--                <el-tooltip v-del-tab-index class="item" effect="dark" content="鍒犻櫎" placement="top">-->
-                <!--                  <i class="el-icon-delete" @click="del(row)" />-->
-                <!--                </el-tooltip>-->
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
-      </div>
-      <!--鍒嗛〉-->
-      <pagination
-        :total="total"
-        :page.sync="form.page"
-        :limit.sync="form.rows"
-        align="right"
-        layout="total,prev, pager, next,sizes"
-        popper-class="select_bottom"
-        @pagination="getGroupSalaryReportSearch"
-      />
-    </div>
-
-    <el-dialog
-      :title="operation==='add'?'鏂板':'浜哄憳鏄庣粏'"
-      :visible.sync="dialogVisible"
-      width="800px"
-      :close-on-click-modal="false"
-      top="15vh"
-      @closed="handleClose"
-      @close="handleClose"
-    >
-      <div style="height: 300px;width: 100%;background-color: aliceblue;padding:20px">
-        <el-tag
-          v-for="tag in tagArr"
-          :key="tag.name"
-          type="success"
-          style="margin-right: 15px;min-width: 80px;text-align: center"
-        >
-          {{ tag }}
-        </el-tag>
-      </div>
-      <span slot="footer" class="dialog-footer">
-        <div class="footerButton">
-          <el-button @click="dialogVisible=false">杩� 鍥�</el-button>
-          <!--          <el-button @click="dialogVisibleCancel">鍙� 娑�</el-button>-->
-          <!--          <el-button type="primary" @click="dialogVisibleConfirm">纭� 瀹�</el-button>-->
-        </div>
-      </span>
-    </el-dialog>
-
-    <!--瀵煎叆缁勪欢-->
-    <import-picker
-      ref="importPickerFunc"
-      class="importPickerClass"
-      :shows.sync="shows"
-      :title="title_value"
-      :colos="colos"
-      :code="code"
-    />
-
-  </div>
-</template>
-
-<script>
-import Pagination from '@/components/Pagination'
-import { getCookie } from '@/utils/auth'
-import ImportPicker from '@/components/ImportPicker'
-import { handleDatetime, validateCode } from '@/utils/global'
-import {
-  GroupSalaryReportExcelSearch,
-  GroupSalaryReportSearch,
-  GroupSalaryReportSearchUser,
-  OutSourceReportExcelSearch
-} from '@/api/bbgl'
-import { MesOrderStepReportSelectUserGroup } from '@/api/scgl'
-
-export default {
-  name: 'Zzjg',
-  components: {
-    Pagination, ImportPicker
-  },
-  data() {
-    return {
-      isExpandForm: false,
-      mainHeight: 0,
-      tableHeight: 0,
-      form: {
-        wocode: '', // 宸ュ崟缂栧彿
-        partcode: '', // 浜у搧缂栫爜
-        partname: '', // 浜у搧鍚嶇О
-        partspec: '', // 瑙勬牸鍨嬪彿
-        stepname: '', // 宸ュ簭鍚嶇О
-        groupcode: '', // 鐢熶骇鐝粍
-        username: '', // 鎿嶄綔浜哄憳
-        operdate: '', // 鎿嶄綔鏃堕棿
-        prop: 'lm_date', // 鎺掑簭瀛楁
-        order: 'desc', // 鎺掑簭瀛楁
-        page: 1, // 绗嚑椤�
-        rows: 20 // 姣忛〉澶氬皯鏉�
-      },
-      groupArr: [],
-      total: 10,
-      tableData: [],
-      dialogVisible: false,
-      tagArr: [], //
-      dialogForm: {
-        OrgType: '',
-        OrgCode: '',
-        OrgName: '',
-        SupUnit: ''// 涓婄骇鍗曚綅
-      },
-      operation: '',
-      dialogFormRules: {
-        OrgType: [
-          { required: true, message: '璇疯緭鍏ラ�夋嫨绫诲瀷', trigger: ['blur', 'change'] }
-        ],
-        OrgCode: [
-          { required: true, validator: validateCode, trigger: ['blur', 'change'] }
-        ],
-        OrgName: [
-          { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: ['blur', 'change'] }
-        ]
-
-      },
-
-      title_value: '鏁版嵁瀵煎叆 / 鐐规閮ㄤ綅',
-      code: '4',
-      shows: false
-
-    }
-  },
-  watch: {
-    shows() {
-      if (!this.shows) {
-        this.getGroupSalaryReportSearch()
-      }
-    }
-  },
-  created() {
-    this.handleRequest()
-  },
-  mounted() {
-    window.addEventListener('resize', this.getHeight)
-    this.getHeight()
-  },
-  methods: {
-    handleRequest() {
-      this.getGroupSalaryReportSearch().then(res => {
-        if (res.code === '200') {
-          this.getMesOrderStepReportSelectUserGroup()
-        }
-      })
-    },
-    async getGroupSalaryReportSearch() {
-      let tempDate = this.form.operdate
-      if (tempDate.length > 0) {
-        tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1])
-      }
-      const data = {
-        wocode: this.form.wocode,
-        partcode: this.form.partcode,
-        partname: this.form.partname,
-        partspec: this.form.partspec,
-        stepname: this.form.stepname,
-        groupcode: this.form.groupcode,
-        username: this.form.username,
-        operdate: tempDate,
-        prop: this.form.prop,
-        order: this.form.order,
-        page: this.form.page,
-        rows: this.form.rows
-
-      }
-      console.log(data, 1)
-      const res = await GroupSalaryReportSearch(data)
-      this.tableData = res.data
-      this.total = res.count
-
-      return { code: res.code }
-    },
-
-    async getMesOrderStepReportSelectUserGroup() {
-      const { data: res } = await MesOrderStepReportSelectUserGroup()
-      this.groupArr = res
-    },
-    // 鎺掑簭鏀瑰彉鏃�
-    sortChange({ column, prop, order }) {
-      if (order === 'descending') {
-        order = 'desc'
-      } else if (order === 'ascending') {
-        order = 'asc'
-      } else {
-        order = 'desc'
-      }
-      this.form.order = order
-      this.form.prop = prop
-      this.getGroupSalaryReportSearch()
-    },
-    async download() {
-      let tempDate = this.form.operdate
-      if (tempDate.length > 0) {
-        tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1])
-      }
-
-      const data = {
-        wocode: this.form.wocode,
-        partcode: this.form.partcode,
-        partname: this.form.partname,
-        partspec: this.form.partspec,
-        stepname: this.form.stepname,
-        groupcode: this.form.groupcode,
-        username: this.form.username,
-        operdate: tempDate
-      }
-
-      const { data: res } = await GroupSalaryReportExcelSearch(data)
-      window.location.href = res
-    },
-    // 鏌ヨ
-    search() {
-      this.getGroupSalaryReportSearch()
-    },
-    // 瀵煎叆鎸夐挳
-    upload() {
-      this.shows = true
-      this.$refs.importPickerFunc.newDataFunc()
-    },
-    colos() {
-      this.shows = false
-    },
-    // 閲嶇疆
-    reset() {
-      this.form.wocode = ''
-      this.form.partcode = ''
-      this.form.partname = ''
-      this.form.partspec = ''
-      this.form.stepname = ''
-      this.form.groupcode = ''
-      this.form.username = ''
-      this.form.operdate = ''
-      this.getGroupSalaryReportSearch()
-    },
-
-    // 鏂板鎸夐挳
-    add(operation) {
-      this.operation = operation
-      this.dialogVisible = true
-    },
-    // 淇敼鎸夐挳
-    async edit(operation, row) {
-      this.operation = operation
-      this.dialogVisible = true
-
-      const res = await GroupSalaryReportSearchUser({ id: row.id })
-      this.tagArr = res.data.map(r => r.username)
-      // this.tagArr = ['妤兼潕淇�', '寮犱笁', '鏉庡洓']
-      // this.$nextTick(() => {
-      //   this.dialogForm.OrgCode = row.org_code
-      //   this.dialogForm.OrgName = row.org_name
-      //   this.dialogForm.SupUnit = row.parent_id
-      // })
-    },
-    // 鍒犻櫎鎸夐挳
-    async del(row) {
-      // this.$confirm('鏄惁纭鍒犻櫎?', '鎻愮ず', {
-      //   confirmButtonText: '纭畾',
-      //   cancelButtonText: '鍙栨秷',
-      //   type: 'warning'
-      // }).then(() => {
-      //   DeleteOrganization({ orgid: row.code }).then(res => {
-      //     if (res.code === '200') {
-      //       this.$message.success('鍒犻櫎鎴愬姛!')
-      //       if (this.form.page > 1 && this.tableData.length === 1) {
-      //         this.form.page--
-      //       }
-      //       this.getGroupSalaryReportSearch()
-      //     }
-      //   })
-      // }).catch(() => {
-      //   this.$message.info('宸插彇娑堝垹闄�')
-      // })
-    },
-    // 瀵硅瘽妗嗗叧闂簨浠�
-    handleClose() {
-      this.dialogForm.OrgType = ''
-      this.dialogForm.OrgCode = ''
-      this.dialogForm.OrgName = ''
-      this.dialogForm.SupUnit = ''
-      this.$refs.dialogForm.clearValidate()
-    },
-    // 瀵硅瘽妗嗗彇娑�
-    dialogVisibleCancel() {
-      this.dialogVisible = false
-    },
-    // 瀵硅瘽妗嗙‘璁�
-    dialogVisibleConfirm() {
-      this.$refs.dialogForm.validate(valid => {
-        if (valid) {
-          const data = {
-            OrganCode: this.dialogForm.OrgCode,
-            OrganName: this.dialogForm.OrgName,
-            OperType: this.operation === 'add' ? 'Add' : 'Update',
-            Operator: getCookie('admin')
-          }
-          // AddUpdateOrganization(data).then(res => {
-          //   if (res.code === '200') {
-          //     this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '淇敼鎴愬姛锛�')
-          //     this.dialogVisible = false
-          //     this.getGroupSalaryReportSearch()
-          //   } else {
-          //     this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '淇敼澶辫触锛�')
-          //   }
-          // })
-        }
-      })
-    },
-    // 鑾峰彇椤甸潰楂樺害
-    getHeight() {
-      this.$nextTick(() => {
-        this.mainHeight = window.innerHeight - 85
-        this.tableHeight = this.mainHeight - 245
-        this.$refs.tableDataRef.doLayout()
-      })
-    },
-    tableRowClassName({ row, rowIndex }) {
-      return 'custom-row'
-    }
-  }
-}
-</script>
-
-<!--鍏叡椤甸潰鏍峰紡-->
-<style lang="scss" scoped>
-$main_color: #42b983;
-::v-deep .el-range__icon {
-  line-height: 28px !important;
-}
-
-::v-deep .el-range-separator {
-  line-height: 28px !important;
-}
-
-::v-deep .el-range-input {
-  font-size: 14px;
-}
-
-::v-deep .el-range-separator {
-  display: flex;
-  justify-content: center;
-  align-items: center;
-}
-
-::v-deep .el-button--text {
-  font-size: 14px;
-  cursor: pointer;
-}
-
-.el-icon-share, .el-icon-delete, .el-icon-edit-outline {
-  color: $main_color;
-  cursor: pointer;
-}
-
-.el-icon-edit-outline {
-  margin-right: 15px;
-}
-
-::v-deep .el-button--primary, .el-button--default, .el-button--info {
-  height: 34px;
-  display: flex;
-  align-items: center;
-  padding: 0 15px;
-}
-
-::v-deep .el-button--primary {
-  //background-color: $main_color !important;
-}
-
-::v-deep .el-button--default {
-  background-color: #f8f8fa;
-  border: none;
-}
-
-::v-deep .el-input__inner {
-  height: 34px;
-  line-height: 34px;
-  //color: #a7a7a7;
-}
-
-::v-deep .el-dialog__body {
-  //padding: 20px 100px !important;
-  padding: 20px 20px !important;
-}
-
-::v-deep .dialogVisibleRoles .el-dialog__body {
-  padding: 20px 20px !important;
-}
-
-::v-deep .importPickerClass .el-dialog__body {
-  padding: 20px 20px !important;
-}
-
-::v-deep .el-dialog__footer {
-  display: flex;
-  justify-content: flex-end;
-}
-
-::v-deep .el-table .caret-wrapper {
-  transform: scale(0.8);
-}
-
-::v-deep .cell {
-  display: flex;
-  align-items: center;
-  justify-content: space-between;
-}
-
-::v-deep .el-table::before {
-  height: 0;
-}
-
-::v-deep .el-table__body-wrapper {
-  background-color: #f8f8fa;
-}
-
-::v-deep .el-table__body .el-table__row.hover-row td {
-  background-color: #eaecef;
-}
-
-::v-deep .el-form--inline .el-form-item__label {
-  color: #a7a7a7;
-}
-
-.body ::v-deep .el-divider {
-  border: 1px solid #eee;
-  width: 99%;
-  margin: 10px auto;
-}
-
-.body ::v-deep .el-form-item {
-  margin-bottom: 0;
-}
-
-.userDialogVisible ::v-deep .el-form-item {
-  margin-bottom: 0;
-}
-
-::v-deep .el-select__caret {
-  display: flex;
-  align-items: center;
-  justify-content: center;
-}
-.tableFixed{
-  ::v-deep .el-table__fixed-right{
-    height: 100% !important;
-  }
-  ::v-deep .el-table__fixed{
-    height: 100% !important;
-  }
-}
-</style>
-<style>
-
-.el-table .custom-row {
-  background: #f8f8fa;
-}
-</style>
diff --git a/src/views/sbgl/djbw.vue b/src/views/deviceManager/checkPosition.vue
similarity index 100%
rename from src/views/sbgl/djbw.vue
rename to src/views/deviceManager/checkPosition.vue
diff --git a/src/views/sbgl/djjl.vue b/src/views/deviceManager/checkRecord.vue
similarity index 100%
rename from src/views/sbgl/djjl.vue
rename to src/views/deviceManager/checkRecord.vue
diff --git a/src/views/sbgl/djbz.vue b/src/views/deviceManager/checkStandard.vue
similarity index 100%
rename from src/views/sbgl/djbz.vue
rename to src/views/deviceManager/checkStandard.vue
diff --git a/src/views/sbgl/sbz.vue b/src/views/deviceManager/deviceGroup.vue
similarity index 100%
rename from src/views/sbgl/sbz.vue
rename to src/views/deviceManager/deviceGroup.vue
diff --git a/src/views/sbgl/sbqd.vue b/src/views/deviceManager/deviceList.vue
similarity index 100%
rename from src/views/sbgl/sbqd.vue
rename to src/views/deviceManager/deviceList.vue
diff --git a/src/views/sbgl/sblx.vue b/src/views/deviceManager/deviceType.vue
similarity index 100%
rename from src/views/sbgl/sblx.vue
rename to src/views/deviceManager/deviceType.vue
diff --git a/src/views/sbgl/bybw.vue b/src/views/deviceManager/maintainPosition.vue
similarity index 100%
rename from src/views/sbgl/bybw.vue
rename to src/views/deviceManager/maintainPosition.vue
diff --git a/src/views/sbgl/byjl.vue b/src/views/deviceManager/maintainRecord.vue
similarity index 100%
rename from src/views/sbgl/byjl.vue
rename to src/views/deviceManager/maintainRecord.vue
diff --git a/src/views/sbgl/bybz.vue b/src/views/deviceManager/maintainStandard.vue
similarity index 100%
rename from src/views/sbgl/bybz.vue
rename to src/views/deviceManager/maintainStandard.vue
diff --git a/src/views/sbgl/wxjl.vue b/src/views/deviceManager/repairRecord.vue
similarity index 100%
rename from src/views/sbgl/wxjl.vue
rename to src/views/deviceManager/repairRecord.vue
diff --git a/src/views/sbgl/swsqjl.vue b/src/views/deviceManager/repairRequestRecord.vue
similarity index 100%
rename from src/views/sbgl/swsqjl.vue
rename to src/views/deviceManager/repairRequestRecord.vue
diff --git a/src/views/gantt_back/gantt_all_back.vue b/src/views/gantt_back/gantt_all_back.vue
index e160a2f..47e584b 100644
--- a/src/views/gantt_back/gantt_all_back.vue
+++ b/src/views/gantt_back/gantt_all_back.vue
@@ -293,7 +293,7 @@
       >
         <!-- <template v-slot:block="{data,item}"> -->
         <template slot="block" slot-scope="{data,item}">
-          <Test
+          <Scheduling
             :data="data"
             :update-time-lines="updateTimeLines"
             :cell-height="cellHeight"
@@ -332,7 +332,7 @@
 </template>
 
 <script>
-import Test from '@/components/Test'
+import Scheduling from '@/components/Scheduling'
 // import PaginationView from '@/components/PaginationView'
 // import TestLeft from '@/components/TestLeft'
 // import { mockDatas } from './index1.js'
@@ -344,7 +344,7 @@
 // import { mockDatas } from './index1.js'
 
 export default {
-  components: { Test },
+  components: { Scheduling },
   data() {
     return {
       show: false,
diff --git a/src/views/gantt_back/gantt_back.vue b/src/views/gantt_back/gantt_back.vue
index cc905fb..d627e07 100644
--- a/src/views/gantt_back/gantt_back.vue
+++ b/src/views/gantt_back/gantt_back.vue
@@ -105,7 +105,7 @@
         @scrollLeft="scrollLeftA"
       >
         <template slot="block" slot-scope="{data,item}">
-          <Test
+          <Scheduling
             :data="data"
             :update-time-lines="updateTimeLines"
             :cell-height="cellHeight"
@@ -143,14 +143,14 @@
 </template>
 
 <script>
-import Test from '@/components/Test'
+import Scheduling from '@/components/Scheduling'
 import dayjs from 'dayjs'
 
 const scaleList = `30,60,240,360`.split(',').map(n => parseInt(n))
 const timeList = `0,30,60,120,240,480`.split(',').map(n => parseInt(n))
 
 export default {
-  components: { Test },
+  components: { Scheduling },
   data() {
     return {
       show: false,
diff --git a/src/views/gantt_back/zdpc2.vue b/src/views/gantt_back/zdpc2.vue
index b889db9..b829be8 100644
--- a/src/views/gantt_back/zdpc2.vue
+++ b/src/views/gantt_back/zdpc2.vue
@@ -281,7 +281,7 @@
             @scrollLeft="scrollLeftA"
           >
             <template slot="block" slot-scope="{data,item}">
-              <Test
+              <Scheduling
                 :data="data"
                 :update-time-lines="updateTimeLines"
                 :cell-height="cellHeight"
@@ -324,7 +324,7 @@
 
 <script>
 import Pagination from '@/components/Pagination'
-import Test from '@/components/Test'
+import Scheduling from '@/components/Scheduling'
 import dayjs from 'dayjs'
 import { AdvancedSchedulingSearch, OnclickAdvancedSchedulingDevice, SubmitAlreadyScheduling } from '@/api/scgl'
 import { handleDatetime } from '@/utils/global'
@@ -336,7 +336,7 @@
 export default {
   name: 'Zzjg',
   components: {
-    Pagination, Test
+    Pagination, Scheduling
   },
   directives: { waves },
   data() {
diff --git a/src/views/jcsz/zzjg_back.vue b/src/views/jcsz/zzjg_back.vue
deleted file mode 100644
index 27d35a8..0000000
--- a/src/views/jcsz/zzjg_back.vue
+++ /dev/null
@@ -1,620 +0,0 @@
-<template>
-  <div>
-    <div class="body" :style="{height:mainHeight+'px'}">
-
-      <div class="bodyTopButtonGroup">
-        <el-button type="primary" icon="el-icon-circle-plus-outline" @click="add('add')">鏂板</el-button>
-      </div>
-      <div class="bodyTopFormGroup">
-        <el-form
-          ref="form"
-          :model="form"
-          label-width="100px"
-          inline
-          style="display: flex;"
-        >
-          <div class="elForm">
-            <el-form-item label="缁勭粐缂栫爜" style=" display: flex;">
-              <el-input v-model="form.OrgCode" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-            <el-form-item label="缁勭粐鍚嶇О" style=" display: flex;">
-              <el-input v-model="form.OrgName" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-            <el-form-item label="缁勭粐绫诲瀷" style=" display: flex;">
-              <el-select
-                v-model="form.OrgType"
-                :popper-append-to-body="false"
-                filterable
-                style="width: 200px"
-                placeholder="璇烽�夋嫨"
-              >
-                <el-option
-                  v-for="item in OrgTypeArr"
-                  :key="item.value"
-                  :label="item.label"
-                  :value="item.value"
-                />
-              </el-select>
-            </el-form-item>
-            <el-form-item label="鍒涘缓浜哄憳" style=" display: flex;">
-              <el-input v-model="form.UserName" style="width: 200px" placeholder="璇疯緭鍏�" />
-            </el-form-item>
-          </div>
-          <div
-            class="bodySearchReset"
-            :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}"
-          >
-            <el-button type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
-            <el-button type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
-          </div>
-        </el-form>
-        <div
-          class="bodyTopFormExpand"
-        />
-      </div>
-      <div class="elTableDiv">
-        <el-table
-          ref="tableDataRef"
-          class="tableFixed"
-          :data="tableData"
-          border
-          :row-class-name="tableRowClassName"
-          :style="{width: 100+'%',height:tableHeight+'px'}"
-          highlight-current-row
-          :height="tableHeight+'px'"
-          :header-cell-style="this.$headerCellStyle"
-          :cell-style="this.$cellStyle"
-          @sort-change="sortChange"
-        >
-
-          <!--          <el-table-column-->
-          <!--            type="selection"-->
-          <!--            width="50"-->
-          <!--          />-->
-          <el-table-column
-            prop="RowNum"
-            width="50"
-            label="搴忓彿"
-            fixed
-          />
-          <el-table-column
-            prop="org_code"
-            label="缁勭粐缂栫爜"
-            sortable="custom"
-            show-tooltip-when-overflow
-            min-width="110"
-          />
-          <el-table-column
-            prop="org_name"
-            label="缁勭粐鍚嶇О"
-            sortable="custom"
-            show-tooltip-when-overflow
-            min-width="110"
-          />
-          <el-table-column
-            prop="description"
-            label="缁勭粐绫诲瀷"
-            min-width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          >
-            <template slot-scope="{row}">
-              <!--              <div v-if="row.description==='F'">宸ュ巶</div>-->
-              <div v-if="row.description==='D'">閮ㄩ棬</div>
-              <div v-if="row.description==='W'">杞﹂棿</div>
-              <!--              <div v-if="row.description==='K'">绉戝</div>-->
-              <!--              <div v-if="row.description==='L'">鐢熶骇绾�</div>-->
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="parentorg_name"
-            label="涓婄骇鍗曚綅"
-            sortable="custom"
-            show-tooltip-when-overflow
-            min-widt="110"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.parentorg_name===null">/</div>
-              <div v-else>{{ row.parentorg_name }}</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="lm_user"
-            label="鍒涘缓浜哄憳"
-            width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="lm_date"
-            label="鍒涘缓鏃堕棿"
-            width="160"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            fixed="right"
-            label="鎿嶄綔"
-            width="120"
-          >
-            <template slot-scope="{row}">
-              <div class="operationClass">
-                <el-tooltip class="item" effect="dark" content="缂栬緫" placement="top">
-                  <i :style="{color:$store.state.settings.theme}" class="el-icon-edit-outline" @click="edit('edit',row)" />
-                </el-tooltip>
-                <el-tooltip v-del-tab-index class="item" effect="dark" content="鍒犻櫎" placement="top">
-                  <i :style="{color:$store.state.settings.theme}" class="el-icon-delete" @click="del(row.id)" />
-                </el-tooltip>
-                <!--                <el-button type="primary" size="mini" />-->
-                <!--                <el-button type="danger" size="mini">鍒犻櫎</el-button>-->
-
-              </div>
-            </template>
-          </el-table-column>
-        </el-table>
-      </div>
-      <!--鍒嗛〉-->
-      <pagination
-        :total="total"
-        :page.sync="form.page"
-        :limit.sync="form.rows"
-        align="right"
-        layout="total ,prev, pager, next,sizes"
-        popper-class="select_bottom"
-        @pagination="getOrganizationSearch"
-      />
-    </div>
-
-    <el-dialog
-      :title="operation==='add'?'鏂板':'缂栬緫'"
-      :visible.sync="dialogVisible"
-      width="800px"
-      top="15vh"
-      :close-on-click-modal="false"
-      @closed="handleClose"
-      @close="handleClose"
-    >
-      <el-form ref="dialogForm" :rules="dialogFormRules" :model="dialogForm" label-width="80px">
-        <el-form-item label="缁勭粐绫诲瀷" prop="OrgType">
-          <el-radio-group
-            v-model="dialogForm.OrgType"
-            :disabled="operation==='edit'"
-            @change="changeRadio"
-          >
-            <el-radio
-              v-for="item in OrgTypeArr"
-              :key="item.value"
-              :value="item.value"
-              :label="item.label"
-            />
-          </el-radio-group>
-        </el-form-item>
-        <el-form-item label="缁勭粐缂栫爜" prop="OrgCode">
-          <el-input v-model="dialogForm.OrgCode" :disabled="operation!=='add'" style="width: 200px" />
-        </el-form-item>
-        <el-form-item label="缁勭粐鍚嶇О" prop="OrgName">
-          <el-input v-model="dialogForm.OrgName" style="width: 200px" />
-        </el-form-item>
-        <el-form-item v-if="dialogForm.OrgType!=='閮ㄩ棬'" prop="SupUnit" label="涓婄骇鍗曚綅">
-          <el-select
-            v-model="dialogForm.SupUnit"
-            style="width: 200px"
-            filterable
-            :popper-append-to-body="false"
-            placeholder="璇烽�夋嫨"
-          >
-            <el-option
-              v-for="item in SupUnitArr"
-              :key="item.id"
-              :label="item.org_name"
-              :value="item.id"
-            />
-          </el-select>
-        </el-form-item>
-      </el-form>
-      <span slot="footer" class="dialog-footer">
-        <div class="footerButton">
-          <el-button @click="dialogVisibleCancel">鍙� 娑�</el-button>
-          <el-button
-            type="primary"
-            :loading="$store.state.app.buttonIsDisabled"
-            :disabled="$store.state.app.buttonIsDisabled"
-            @click="dialogVisibleConfirm"
-          >纭� 瀹�</el-button>
-        </div>
-      </span>
-    </el-dialog>
-  </div>
-</template>
-
-<script>
-import Pagination from '@/components/Pagination'
-import { AddUpdateOrganization, DeleteOrganization, OrganizationSearch, PrentOrganization } from '@/api/jcsz'
-import { getCookie } from '@/utils/auth'
-import { validateCode } from '@/utils/global'
-
-// const SER_HZ = /^[\u4e00-\u9fa5]+$/
-// const SER_HZ = /^[a-zA-Z0-9_;,.<>() ]{0,}$/
-export default {
-  name: 'ZZJG',
-  components: {
-    Pagination
-  },
-  data() {
-    // const validateName = (rule, value, callback) => {
-    //   if (!value) {
-    //     return callback(new Error('璇疯緭鍏ョ紪鐮�'))
-    //   } else {
-    //     if (!this.$SER_HZ.test(value)) {
-    //       return callback(new Error('缂栫爜涓嶈兘鍚湁涓枃鎴栫壒娈婂瓧绗�'))
-    //     } else {
-    //       callback()
-    //     }
-    //   }
-    // }
-    const validateTypeCode = (rule, value, callback) => {
-      if (!value) {
-        return callback(new Error('璇烽�夋嫨涓婄骇'))
-      } else {
-        callback()
-      }
-    }
-    return {
-      windowHeight: 0,
-      windowWidth: 0,
-      mainHeight: 0,
-      tableHeight: 0,
-      numvalue: 0,
-      form: {
-        OrgCode: '', // 缁勭粐鏋舵瀯浠g爜
-        OrgName: '', // 缁勭粐鏋舵瀯鍚嶇О
-        OrgType: '', // 缁勭粐绫诲瀷
-        UserName: '', // 鍒涘缓浜哄憳
-        prop: 'lm_date', // 鎺掑簭瀛楁
-        order: 'desc', // 鎺掑簭瀛楁
-        page: 1, // 绗嚑椤�
-        rows: 20 // 姣忛〉澶氬皯鏉�
-      },
-      OrgTypeArr: [
-        // { label: '宸ュ巶', value: 'F' },
-        { label: '閮ㄩ棬', value: 'D' },
-        { label: '杞﹂棿', value: 'W' }
-        // { label: '绉戝', value: 'K' },
-        // { label: '鐢熶骇绾�', value: 'L' }
-      ],
-
-      total: 10,
-      tableData: [],
-      dialogVisible: false,
-      dialogForm: {
-        OrgType: '閮ㄩ棬',
-        OrgCode: '',
-        OrgName: '',
-        SupUnit: ''// 涓婄骇鍗曚綅
-      },
-      SupUnitArr: [],
-      operation: '',
-      dialogFormRules: {
-        OrgType: [
-          { required: true, message: '璇疯緭鍏ラ�夋嫨绫诲瀷', trigger: ['blur', 'change'] }
-        ],
-        OrgCode: [
-          // { required: true, validator: validateName, trigger: ['blur', 'change'] }
-          { required: true, validator: validateCode, trigger: ['blur', 'change'] }
-        ],
-        OrgName: [
-          { required: true, message: '璇疯緭鍏ュ悕绉�', trigger: ['blur', 'change'] }
-        ],
-        SupUnit: [
-          { required: true, validator: validateTypeCode, trigger: ['blur', 'change'] }
-        ]
-      }
-
-    }
-  },
-  // watch: {
-  //   windowHeight(val) {
-  //     console.log('瀹炴椂灞忓箷楂樺害锛�', val, this.windowHeight)
-  //   },
-  //   windowWidth(val) {
-  //     if (val < 768) {
-  //       this.dialogWidth = '100%'
-  //     } else {
-  //       this.dialogWidth = '75%'
-  //     }
-  //     console.log('瀹炴椂灞忓箷瀹藉害锛�', val, this.windowHeight)
-  //   }
-  // },
-  created() {
-    this.getOrganizationSearch()
-  },
-  mounted() {
-    window.addEventListener('resize', this.getHeight)
-    this.getHeight()
-
-    // console.log('椤甸潰杩涘叆鏃剁殑瀹藉害锛�', document.body.clientWidth)
-    // if (document.body.clientWidth < 768) {
-    //   this.dialogWidth = '100%'
-    // }
-    //
-    // // <!--鎶妛indow.onresize浜嬩欢鎸傚湪鍒癿ounted鍑芥暟涓�-->
-    // window.onresize = () => {
-    //   return (() => {
-    //     this.windowHeight = document.documentElement.clientHeight// 楂�
-    //     this.windowWidth = document.documentElement.clientWidth // 瀹�
-    //   })()
-    // }
-  },
-  destroyed() {
-
-  },
-  methods: {
-    async getOrganizationSearch() {
-      const res = await OrganizationSearch(this.form)
-      this.tableData = res.data
-      this.total = res.count
-    },
-    // 鎺掑簭鏀瑰彉鏃�
-    sortChange({ column, prop, order }) {
-      if (order === 'descending') {
-        order = 'desc'
-      } else if (order === 'ascending') {
-        order = 'asc'
-      } else {
-        order = 'desc'
-      }
-      this.form.order = order
-      this.form.prop = prop
-      this.getOrganizationSearch()
-    },
-    // 鏌ヨ
-    search() {
-      this.getOrganizationSearch()
-    },
-    // 閲嶇疆
-    reset() {
-      this.form.OrgCode = ''
-      this.form.OrgName = ''
-      this.form.OrgType = ''
-      this.form.UserName = ''
-      this.getOrganizationSearch()
-    },
-    // 鍗曢�夋鏀瑰彉鏃�
-    async changeRadio(val) {
-      if (this.dialogForm.OrgType !== '閮ㄩ棬') {
-        const { data: res } = await PrentOrganization({ orgcode: this.OrgTypeArr.find(item => item.label === this.dialogForm.OrgType).value })
-        this.SupUnitArr = res
-      }
-    },
-    // 鏂板鎸夐挳
-    async add(operation) {
-      this.operation = operation
-      this.dialogVisible = true
-
-      // const res = await getNewEncodingRules(getCookie('ruleCode'))
-      // this.dialogForm.OrgCode = res.RightCode
-      // this.numvalue = res.numvalue
-    },
-    // 淇敼鎸夐挳
-    edit(operation, row) {
-      this.operation = operation
-      this.dialogVisible = true
-      // if (row.description === 'F') {
-      //   this.dialogForm.OrgType = '宸ュ巶'
-      // } else
-      if (row.description === 'D') {
-        this.dialogForm.OrgType = '閮ㄩ棬'
-      } else if (row.description === 'W') {
-        this.dialogForm.OrgType = '杞﹂棿'
-      }
-      // else if (row.description === 'K') {
-      //   this.dialogForm.OrgType = '绉戝'
-      // } else if (row.description === 'L') {
-      //   this.dialogForm.OrgType = '鐢熶骇绾�'
-      // }
-      this.$nextTick(() => {
-        this.changeRadio(this.dialogForm.OrgType)
-        this.dialogForm.OrgCode = row.org_code
-        this.dialogForm.OrgName = row.org_name
-        this.dialogForm.SupUnit = row.parent_id
-      })
-    },
-    // 鍒犻櫎鎸夐挳
-    async del(id) {
-      this.$confirm('鏄惁纭鍒犻櫎?', '鎻愮ず', {
-        confirmButtonText: '纭畾',
-        cancelButtonText: '鍙栨秷',
-        type: 'warning'
-      }).then(() => {
-        DeleteOrganization({ orgid: id }).then(res => {
-          if (res.code === '200') {
-            this.$message.success('鍒犻櫎鎴愬姛!')
-            if (this.form.page > 1 && this.tableData.length === 1) {
-              this.form.page--
-            }
-            this.getOrganizationSearch()
-          }
-        })
-      }).catch(() => {
-        this.$message.info('宸插彇娑堝垹闄�')
-      })
-    },
-    // 瀵硅瘽妗嗗叧闂簨浠�
-    handleClose() {
-      this.dialogForm.OrgType = '閮ㄩ棬'
-      this.dialogForm.OrgCode = ''
-      this.dialogForm.OrgName = ''
-      this.dialogForm.SupUnit = ''
-      this.$refs.dialogForm.clearValidate()
-    },
-    // 瀵硅瘽妗嗗彇娑�
-    dialogVisibleCancel() {
-      this.dialogVisible = false
-    },
-    // 瀵硅瘽妗嗙‘璁�
-    dialogVisibleConfirm() {
-      this.$refs.dialogForm.validate(valid => {
-        if (valid) {
-          this.$store.state.app.buttonIsDisabled = true
-          const data = {
-            OrganType: this.dialogForm.OrgType === '閮ㄩ棬' ? 'D' : 'W',
-            OrganCode: this.dialogForm.OrgCode,
-            OrganName: this.dialogForm.OrgName,
-            RightCode: '',
-            numvalue: '',
-            // RightCode: this.operation === 'add' ? getCookie('ruleCode') : '',
-            // numvalue: this.operation === 'add' ? this.numvalue : '',
-            SupUnit: this.dialogForm.OrgType === '閮ㄩ棬' ? '0' : this.dialogForm.SupUnit,
-            OperType: this.operation === 'add' ? 'Add' : 'Update',
-            Operator: getCookie('admin')
-          }
-
-          AddUpdateOrganization(data).then(res => {
-            if (res.code === '200') {
-              this.dialogVisible = false
-              this.$message.success(this.operation === 'add' ? '娣诲姞鎴愬姛锛�' : '淇敼鎴愬姛锛�')
-              this.getOrganizationSearch()
-              this.$store.state.app.buttonIsDisabled = false
-            } else {
-              this.$message.error(this.operation === 'add' ? '娣诲姞澶辫触锛�' : '淇敼澶辫触锛�')
-              this.$store.state.app.buttonIsDisabled = false
-            }
-          })
-        }
-      })
-    },
-    // 鑾峰彇椤甸潰楂樺害
-    getHeight() {
-      this.$nextTick(() => {
-        this.mainHeight = window.innerHeight - 85
-        this.tableHeight = this.mainHeight - 195
-        if (window.innerHeight < 769) {
-          this.tableHeight = this.tableHeight - 40
-        }
-        this.isIpad = window.innerHeight < 769 && window.innerWidth < 1367
-        this.$refs.tableDataRef.doLayout()
-      })
-    },
-    tableRowClassName({ row, rowIndex }) {
-      return 'custom-row'
-    }
-  }
-}
-</script>
-
-<!--鍏叡椤甸潰鏍峰紡-->
-<style lang="scss" scoped>
-$main_color: #42b983;
-.el-icon-share, .el-icon-delete, .el-icon-edit-outline {
-  color: $main_color;
-  cursor: pointer;
-}
-
-.el-icon-edit-outline {
-  margin-right: 15px;
-}
-
-::v-deep .el-button--primary, .el-button--default, .el-button--info {
-  height: 34px;
-  display: flex;
-  align-items: center;
-  padding: 0 15px;
-}
-
-::v-deep .el-button--primary {
-  //background-color: $main_color !important;
-}
-
-::v-deep .el-button--default {
-  background-color: #f8f8fa;
-  border: none;
-}
-
-::v-deep .el-input__inner {
-  height: 34px;
-  line-height: 34px;
-  //color: #a7a7a7;
-}
-
-::v-deep .el-dialog__body {
-  padding: 20px 100px !important;
-}
-
-::v-deep .dialogVisibleRoles .el-dialog__body {
-  padding: 20px 20px !important;
-}
-
-::v-deep .importPickerClass .el-dialog__body {
-  padding: 20px 20px !important;
-}
-
-::v-deep .el-dialog__footer {
-  display: flex;
-  justify-content: flex-end;
-}
-
-::v-deep .el-table .caret-wrapper {
-  transform: scale(0.8);
-}
-
-::v-deep .cell {
-  display: flex;
-  align-items: center;
-  justify-content: space-between;
-}
-
-::v-deep .el-table::before {
-  height: 0;
-}
-
-::v-deep .el-table__body-wrapper {
-  background-color: #f8f8fa;
-}
-
-::v-deep .el-table__body .el-table__row.hover-row td {
-  background-color: #eaecef;
-}
-
-::v-deep .el-form--inline .el-form-item__label {
-  color: #a7a7a7;
-}
-
-.body ::v-deep .el-divider {
-  border: 1px solid #eee;
-  width: 99%;
-  margin: 10px auto;
-}
-
-.body ::v-deep .el-form-item {
-  margin-bottom: 0;
-}
-
-.tableFixed {
-  ::v-deep .el-table__fixed-right {
-    height: 100% !important;
-  }
-
-  ::v-deep .el-table__fixed {
-    height: 100% !important;
-  }
-}
-
-//::v-deep .cell {
-//  display: flex;
-//  flex-wrap: nowrap;
-//}
-//
-//::v-deep .has-gutter .cell {
-//  display: flex;
-//  flex-wrap: nowrap;
-//}
-</style>
-<style>
-.osloading{
-  font-size: 30px;
-}
-
-.el-table .custom-row {
-  background: #f8f8fa;
-}
-</style>
diff --git a/src/views/kb/cgdd.vue b/src/views/kanbanManager/cgdd.vue
similarity index 100%
rename from src/views/kb/cgdd.vue
rename to src/views/kanbanManager/cgdd.vue
diff --git a/src/views/kb/cjsc.vue b/src/views/kanbanManager/cjsc.vue
similarity index 100%
rename from src/views/kb/cjsc.vue
rename to src/views/kanbanManager/cjsc.vue
diff --git a/src/views/kb/cjzl.vue b/src/views/kanbanManager/cjzl.vue
similarity index 100%
rename from src/views/kb/cjzl.vue
rename to src/views/kanbanManager/cjzl.vue
diff --git a/src/views/kb/ckgl.vue b/src/views/kanbanManager/ckgl.vue
similarity index 100%
rename from src/views/kb/ckgl.vue
rename to src/views/kanbanManager/ckgl.vue
diff --git a/src/views/kb/kbCommon.css b/src/views/kanbanManager/kbCommon.css
similarity index 100%
rename from src/views/kb/kbCommon.css
rename to src/views/kanbanManager/kbCommon.css
diff --git a/src/views/kb/zhkb.vue b/src/views/kanbanManager/zhkb.vue
similarity index 100%
rename from src/views/kb/zhkb.vue
rename to src/views/kanbanManager/zhkb.vue
diff --git a/src/views/zzmx/chda.vue b/src/views/makeModel/InventoryList.vue
similarity index 98%
rename from src/views/zzmx/chda.vue
rename to src/views/makeModel/InventoryList.vue
index 9f8c7ca..35d1916 100644
--- a/src/views/zzmx/chda.vue
+++ b/src/views/makeModel/InventoryList.vue
@@ -190,7 +190,12 @@
             sortable="custom"
             show-tooltip-when-overflow
             min-width="110"
-          />
+          >
+            <template slot-scope="{row}">
+              <div v-if="row.stocktypename">{{ row.stocktypename }}</div>
+              <div v-else>/</div>
+            </template>
+          </el-table-column>
           <!--          <el-table-column-->
           <!--            prop="materialtypename"-->
           <!--            label="鐗╂枡绫诲埆"-->
diff --git a/src/views/zzmx/wlqd.vue b/src/views/makeModel/materialList.vue
similarity index 100%
rename from src/views/zzmx/wlqd.vue
rename to src/views/makeModel/materialList.vue
diff --git a/src/views/zzmx/wllx.vue b/src/views/makeModel/materialType.vue
similarity index 100%
rename from src/views/zzmx/wllx.vue
rename to src/views/makeModel/materialType.vue
diff --git a/src/views/zzmx/jpgj.vue b/src/views/makeModel/meterPrice.vue
similarity index 100%
rename from src/views/zzmx/jpgj.vue
rename to src/views/makeModel/meterPrice.vue
diff --git a/src/views/zzmx/gxdy.vue b/src/views/makeModel/processDefine.vue
similarity index 100%
rename from src/views/zzmx/gxdy.vue
rename to src/views/makeModel/processDefine.vue
diff --git a/src/views/zzmx/gylx.vue b/src/views/makeModel/processRoute.vue
similarity index 100%
rename from src/views/zzmx/gylx.vue
rename to src/views/makeModel/processRoute.vue
diff --git a/src/views/wlgl/rqqd.vue b/src/views/materialManager/containerList.vue
similarity index 100%
rename from src/views/wlgl/rqqd.vue
rename to src/views/materialManager/containerList.vue
diff --git a/src/views/wlgl/rqlx.vue b/src/views/materialManager/containerType.vue
similarity index 100%
rename from src/views/wlgl/rqlx.vue
rename to src/views/materialManager/containerType.vue
diff --git a/src/views/wlgl/crkjl.vue b/src/views/materialManager/inOutboundRecord.vue
similarity index 100%
copy from src/views/wlgl/crkjl.vue
copy to src/views/materialManager/inOutboundRecord.vue
diff --git a/src/views/wlgl/kccx.vue b/src/views/materialManager/inventoryQuery.vue
similarity index 100%
rename from src/views/wlgl/kccx.vue
rename to src/views/materialManager/inventoryQuery.vue
diff --git a/src/views/wlgl/kwdy.vue b/src/views/materialManager/locationDefine.vue
similarity index 100%
rename from src/views/wlgl/kwdy.vue
rename to src/views/materialManager/locationDefine.vue
diff --git a/src/views/wlgl/ckdy.vue b/src/views/materialManager/storehouseDefine.vue
similarity index 100%
rename from src/views/wlgl/ckdy.vue
rename to src/views/materialManager/storehouseDefine.vue
diff --git a/src/views/scgl/zdpc.vue b/src/views/produceManager/AutoScheduling.vue
similarity index 99%
rename from src/views/scgl/zdpc.vue
rename to src/views/produceManager/AutoScheduling.vue
index 716955d..375656c 100644
--- a/src/views/scgl/zdpc.vue
+++ b/src/views/produceManager/AutoScheduling.vue
@@ -300,7 +300,7 @@
             <!--            @scrollLeft="scrollLeftA"-->
             <!--            :scroll-to-postion="positionA"-->
             <template slot="block" slot-scope="{data,item}">
-              <Test
+              <Scheduling
                 :data="data"
                 :cell-height="cellHeight"
                 :item="item"
@@ -356,7 +356,7 @@
 
 <script>
 import Pagination from '@/components/Pagination'
-import Test from '@/components/Test'
+import Scheduling from '@/components/Scheduling'
 import dayjs from 'dayjs'
 import { AdvancedSchedulingSearch, OnclickAdvancedSchedulingDevice, SubmitAlreadyScheduling } from '@/api/scgl'
 import { handleDatetime, handleDatetime2 } from '@/utils/global'
@@ -365,7 +365,7 @@
 export default {
   name: 'Zzjg',
   components: {
-    Pagination, Test
+    Pagination, Scheduling
   },
   directives: { waves },
   data() {
diff --git a/src/views/scgl/zdpc.vue b/src/views/produceManager/AutoScheduling_back.vue
similarity index 99%
copy from src/views/scgl/zdpc.vue
copy to src/views/produceManager/AutoScheduling_back.vue
index 716955d..375656c 100644
--- a/src/views/scgl/zdpc.vue
+++ b/src/views/produceManager/AutoScheduling_back.vue
@@ -300,7 +300,7 @@
             <!--            @scrollLeft="scrollLeftA"-->
             <!--            :scroll-to-postion="positionA"-->
             <template slot="block" slot-scope="{data,item}">
-              <Test
+              <Scheduling
                 :data="data"
                 :cell-height="cellHeight"
                 :item="item"
@@ -356,7 +356,7 @@
 
 <script>
 import Pagination from '@/components/Pagination'
-import Test from '@/components/Test'
+import Scheduling from '@/components/Scheduling'
 import dayjs from 'dayjs'
 import { AdvancedSchedulingSearch, OnclickAdvancedSchedulingDevice, SubmitAlreadyScheduling } from '@/api/scgl'
 import { handleDatetime, handleDatetime2 } from '@/utils/global'
@@ -365,7 +365,7 @@
 export default {
   name: 'Zzjg',
   components: {
-    Pagination, Test
+    Pagination, Scheduling
   },
   directives: { waves },
   data() {
diff --git a/src/views/scgl/cngh.vue b/src/views/produceManager/capacityPlanning.vue
similarity index 100%
rename from src/views/scgl/cngh.vue
rename to src/views/produceManager/capacityPlanning.vue
diff --git a/src/views/scgl/scdd.vue b/src/views/produceManager/produceOrder.vue
similarity index 100%
rename from src/views/scgl/scdd.vue
rename to src/views/produceManager/produceOrder.vue
diff --git a/src/views/scgl/sckbg.vue b/src/views/produceManager/produceStartOrder.vue
similarity index 100%
rename from src/views/scgl/sckbg.vue
rename to src/views/produceManager/produceStartOrder.vue
diff --git a/src/views/scgl/sckbg_autoPrint_back.vue b/src/views/produceManager/produceStartOrder_autoPrint_back.vue
similarity index 100%
rename from src/views/scgl/sckbg_autoPrint_back.vue
rename to src/views/produceManager/produceStartOrder_autoPrint_back.vue
diff --git a/src/views/scgl/gd.vue b/src/views/produceManager/workOrder.vue
similarity index 100%
rename from src/views/scgl/gd.vue
rename to src/views/produceManager/workOrder.vue
diff --git a/src/views/scgl/gdplgb.vue b/src/views/produceManager/workOrderBatchClose.vue
similarity index 100%
rename from src/views/scgl/gdplgb.vue
rename to src/views/produceManager/workOrderBatchClose.vue
diff --git a/src/views/scgl/gdpg.vue b/src/views/produceManager/workOrderDispatch.vue
similarity index 100%
rename from src/views/scgl/gdpg.vue
rename to src/views/produceManager/workOrderDispatch.vue
diff --git a/src/views/scgl/gd_autoPrint_back.vue b/src/views/produceManager/workOrder_autoPrint_back.vue
similarity index 100%
rename from src/views/scgl/gd_autoPrint_back.vue
rename to src/views/produceManager/workOrder_autoPrint_back.vue
diff --git a/src/views/cggl/cgdd.vue b/src/views/purchasesManager/purchasesList.vue
similarity index 100%
rename from src/views/cggl/cgdd.vue
rename to src/views/purchasesManager/purchasesList.vue
diff --git a/src/views/zlgl/qxdy.vue b/src/views/qualityManager/defectDefine.vue
similarity index 100%
rename from src/views/zlgl/qxdy.vue
rename to src/views/qualityManager/defectDefine.vue
diff --git a/src/views/zlgl/qxsj.vue b/src/views/qualityManager/defectStatistics.vue
similarity index 100%
rename from src/views/zlgl/qxsj.vue
rename to src/views/qualityManager/defectStatistics.vue
diff --git a/src/views/wlgl/crkjl.vue b/src/views/qualityManager/logisticsCheck.vue
similarity index 100%
rename from src/views/wlgl/crkjl.vue
rename to src/views/qualityManager/logisticsCheck.vue
diff --git a/src/views/zlgl/gxjy.vue b/src/views/qualityManager/processCheck.vue
similarity index 100%
rename from src/views/zlgl/gxjy.vue
rename to src/views/qualityManager/processCheck.vue
diff --git a/src/views/zlgl/gxjyxm.vue b/src/views/qualityManager/processCheckItem.vue
similarity index 100%
rename from src/views/zlgl/gxjyxm.vue
rename to src/views/qualityManager/processCheckItem.vue
diff --git a/src/views/zlgl/gxjyjl.vue b/src/views/qualityManager/processCheckRecord.vue
similarity index 100%
rename from src/views/zlgl/gxjyjl.vue
rename to src/views/qualityManager/processCheckRecord.vue
diff --git a/src/views/zlgl/gxjybz.vue b/src/views/qualityManager/processCheckStandard.vue
similarity index 100%
rename from src/views/zlgl/gxjybz.vue
rename to src/views/qualityManager/processCheckStandard.vue
diff --git a/src/views/zlgl/zjfa.vue b/src/views/qualityManager/qualityPlaning.vue
similarity index 100%
rename from src/views/zlgl/zjfa.vue
rename to src/views/qualityManager/qualityPlaning.vue
diff --git a/src/views/wlgl/crkjl.vue b/src/views/qualityManager/qualityStandard.vue
similarity index 100%
copy from src/views/wlgl/crkjl.vue
copy to src/views/qualityManager/qualityStandard.vue
diff --git a/src/views/bbgl/pzyc.vue b/src/views/reportManager/abnormalQualityList.vue
similarity index 100%
rename from src/views/bbgl/pzyc.vue
rename to src/views/reportManager/abnormalQualityList.vue
diff --git a/src/views/bbgl/blmx.vue b/src/views/reportManager/defectDetailList.vue
similarity index 100%
rename from src/views/bbgl/blmx.vue
rename to src/views/reportManager/defectDetailList.vue
diff --git a/src/views/bbgl/bzgz.vue b/src/views/reportManager/groupSalaryList.vue
similarity index 100%
rename from src/views/bbgl/bzgz.vue
rename to src/views/reportManager/groupSalaryList.vue
diff --git a/src/views/bbgl/adbb.vue b/src/views/reportManager/installationLampList.vue
similarity index 98%
rename from src/views/bbgl/adbb.vue
rename to src/views/reportManager/installationLampList.vue
index a59bc2b..614b062 100644
--- a/src/views/bbgl/adbb.vue
+++ b/src/views/reportManager/installationLampList.vue
@@ -106,10 +106,10 @@
           :model="formSum"
           label-width="100px"
           inline
-          style="display: flex;justify-content: space-between"
+          style="display: flex;"
         >
           <div class="elForm">
-            <el-form-item label-width="70px" label="鐢熶骇杞﹂棿" style=" display: flex;">
+            <el-form-item label="鐢熶骇杞﹂棿" style=" display: flex;">
               <el-select
                 v-model="formSum.wkshopcode"
                 style="width: 200px"
@@ -164,7 +164,6 @@
             </el-form-item>
             <el-form-item
               v-show="isExpandForm"
-              label-width="70px"
               label="鍝嶅簲鏃堕棿"
               style="display: flex;font-size: 14px;align-items: center"
             >
diff --git a/src/views/bbgl/rygz.vue b/src/views/reportManager/personSalaryList.vue
similarity index 100%
rename from src/views/bbgl/rygz.vue
rename to src/views/reportManager/personSalaryList.vue
diff --git a/src/views/bbgl/wxmx.vue b/src/views/reportManager/repairDetailList.vue
similarity index 100%
rename from src/views/bbgl/wxmx.vue
rename to src/views/reportManager/repairDetailList.vue
diff --git a/src/views/bbgl/wwgx.vue b/src/views/reportManager/subcontractingOperation.vue
similarity index 100%
rename from src/views/bbgl/wwgx.vue
rename to src/views/reportManager/subcontractingOperation.vue
diff --git a/src/views/scgl/zdpc_back.vue b/src/views/scgl/zdpc_back.vue
deleted file mode 100644
index 716955d..0000000
--- a/src/views/scgl/zdpc_back.vue
+++ /dev/null
@@ -1,1731 +0,0 @@
-<template>
-  <div>
-    <div class="body" :style="{height:mainHeight+'px'}">
-
-      <div class="bodyTopFormGroup" style="margin-top: 10px;padding-top: 10px">
-        <el-form
-          ref="form"
-          :model="formTop"
-          label-width="100px"
-          inline
-          style="display: flex;"
-        >
-          <div class="elForm">
-            <el-form-item label="杞﹂棿缂栫爜" style=" display: flex;">
-              <el-input v-model="formTop.workshop" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-            <el-form-item label="鐢熶骇宸ュ崟鍙�" style=" display: flex;">
-              <el-input v-model="formTop.wocode" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-            <el-form-item label="鐗╂枡缂栫爜" style=" display: flex;">
-              <el-input v-model="formTop.partcode" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-            <el-form-item label="鐗╂枡鍚嶇О" style=" display: flex;">
-              <el-input v-model="formTop.partname" placeholder="璇疯緭鍏�" style="width: 200px" />
-            </el-form-item>
-          </div>
-          <div
-            class="bodySearchReset"
-            :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}"
-          >
-            <el-button v-waves type="primary" icon="el-icon-search" @click="search">鏌ヨ</el-button>
-            <el-button v-waves type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button>
-          </div>
-        </el-form>
-        <div
-          class="bodyTopFormExpand"
-          style="height: 5px"
-        />
-      </div>
-
-      <div class="elTableDiv" style="margin-top: 0">
-        <el-table
-          ref="tableDataRef"
-          class="tableFixed"
-          :data="tableData"
-          :height="(tableHeight-400)+'px'"
-          border
-          :row-class-name="tableRowClassName"
-          :style="{width: 100+'%',height:(tableHeight-400)+'px',}"
-          highlight-current-row
-          :header-cell-style="this.$headerCellStyle"
-          :cell-style="this.$cellStyle"
-          @sort-change="sortChangeTop"
-          @row-click="getCurrentRow"
-        >
-          <!--          @row-click="rowClick"-->
-          <el-table-column
-            width="50"
-            fixed
-          >
-            <template slot-scope="{row}">
-              <el-radio
-                v-model="radioSelectedId"
-                :label="row.AdvaScheId"
-              />
-
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="RowNum"
-            width="50"
-            fixed
-            label="搴忓彿"
-          />
-          <el-table-column
-            prop="AdvaSchePiroQue"
-            show-tooltip-when-overflow
-            label="浼樺厛绾�"
-            width="90"
-            sortable="custom"
-          />
-          <el-table-column
-            prop="AdvaScheWorkShop"
-            label="鐢熶骇杞﹂棿"
-            width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="AdvaScheWorkCode"
-            label="宸ュ崟缂栧彿"
-            min-width="160"
-            show-tooltip-when-overflow
-            sortable="custom"
-          />
-          <el-table-column
-            prop="AdvaSchePartNumber"
-            label="浜у搧缂栫爜"
-            min-width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          >
-            <!--            <template slot-scope="{row}">-->
-            <!--              <div v-if="row.AdvaSchePartNumber">{{ row.AdvaSchePartNumber }}</div>-->
-            <!--              <div v-else>/</div>-->
-            <!--            </template>-->
-          </el-table-column>
-          <el-table-column
-            prop="AdvaSchePartName"
-            min-width="160"
-            show-tooltip-when-overflow
-            label="浜у搧鍚嶇О"
-            sortable="custom"
-          />
-          <el-table-column
-            prop="AdvaSchePartSpec"
-            label="浜у搧瑙勬牸"
-            width="110"
-            show-tooltip-when-overflow
-            sortable="custom"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.AdvaSchePartSpec">{{ row.AdvaSchePartSpec }}</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="AdvaScheQty"
-            label="鏁伴噺"
-            show-tooltip-when-overflow
-            width="110"
-            sortable="custom"
-          />
-          <el-table-column
-            prop="AdvaScheEndDate"
-            label="瑕佹眰浜や粯鏃堕棿"
-            sortable="custom"
-            show-tooltip-when-overflow
-            width="160"
-          />
-          <el-table-column
-            prop="AdvaScheStus"
-            label="鎺掔▼鐘舵��"
-            show-tooltip-when-overflow
-            width="110"
-            sortable="custom"
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.AdvaScheStus==='NOSCHED'">寰呮帓绋�</div>
-              <div v-if="row.AdvaScheStus==='SCHED'">宸叉帓绋�</div>
-            </template>
-          </el-table-column>
-          <el-table-column
-            prop="AdvaScheBotProcName"
-            label="鎺掔▼宸ュ簭"
-            show-tooltip-when-overflow
-            width="110"
-            sortable="custom"
-          />
-          <el-table-column
-            prop="AdvaSchePCStartDate"
-            label="璁″垝鎺掔▼鏃堕棿"
-            width="200"
-            sortable="custom"
-            show-tooltip-when-overflow
-          >
-            <template slot-scope="{row}">
-              <div v-if="row.AdvaSchePCStartDate">{{ row.AdvaSchePCStartDate }} ~ {{ row.AdvaSchePCEndDate }}</div>
-              <div v-else>/</div>
-            </template>
-          </el-table-column>
-
-        </el-table>
-      </div>
-      <!--鍒嗛〉-->
-      <pagination
-        :total="totalTop"
-        :page.sync="formTop.page"
-        :limit.sync="formTop.rows"
-        align="right"
-        layout="total,prev, pager, next,sizes"
-        popper-class="select_bottom"
-        @pagination="getAdvancedSchedulingSearch"
-      />
-
-      <!--      鑷姩鎺掔▼閮ㄥ垎鐨勪唬鐮�-->
-      <div class="autoScheduling">
-
-        <div class="bodyTopFormGroup">
-          <el-form
-            ref="form"
-            :model="formBottom"
-            inline
-            label-width="100px"
-            style="display: flex;"
-          >
-            <div class="elForm">
-              <el-form-item label="鎺掔▼鏃ユ湡" style=" display: flex;">
-                <el-date-picker
-                  v-model="formBottom.scheDate"
-                  :disabled="radioSelectedId===''"
-                  type="daterange"
-                  range-separator="~"
-                  format="yyyy-MM-dd"
-                  value-format="yyyy-MM-dd"
-                  start-placeholder="寮�濮嬫棩鏈�"
-                  end-placeholder="缁撴潫鏃ユ湡"
-                  size="small"
-                  :picker-options="pickerOptions1"
-                  :clearable="false"
-                  @change="dateChange"
-                />
-              </el-form-item>
-              <el-form-item label="鎺掔▼鏂瑰紡" style=" display: flex;">
-                <el-select
-                  v-model="formBottom.types"
-                  :disabled="radioSelectedId===''"
-                  style="width:120px"
-                  @change="typesChange"
-                >
-                  <el-option value="N" label="璁惧浼樺厛" />
-                  <el-option value="Y" label="鏃堕棿浼樺厛" />
-                </el-select>
-              </el-form-item>
-              <el-form-item label="鏃堕棿鍒诲害(鍒嗛挓)" label-width="110" style=" display: flex;">
-                <el-select v-model.number="formBottom.scale" :disabled="radioSelectedId===''" style="width: 120px;">
-                  <el-option v-for="item in scaleList" :key="item" :value="item" :label="item" />
-                </el-select>
-
-              </el-form-item>
-              <el-form-item label="鎹㈠瀷鏃堕棿(鍒嗛挓)" label-width="110" style=" display: flex;">
-                <el-input
-                  id="scale"
-                  v-model="formBottom.times"
-                  :disabled="radioSelectedId===''"
-                  type="number"
-                  style="display:inline-block;width:80px;"
-                  @change="no_zero"
-                />
-              </el-form-item>
-              <el-form-item label="棰勬帓杩涘害" style=" display: flex;">
-                <span>
-                  <span style="text-decoration:underline;">{{ formBottom.canArrangeNumber }}</span> /
-                  <span style="text-decoration:underline">{{ formBottom.needArrangeNumber }}</span>
-                </span>
-              </el-form-item>
-            </div>
-            <div
-              class="bodySearchReset"
-              :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}"
-            >
-              <el-button
-                v-waves
-                :disabled="radioSelectedId===''"
-                type="primary"
-                icon="el-icon-document-remove"
-                @click="prepareArrange"
-              >棰勬帓
-              </el-button>
-              <el-button
-                v-waves
-                type="primary"
-                :disabled="radioSelectedId===''"
-                icon="el-icon-document-checked"
-                @click="prepareSubmit"
-              >鎻愪氦
-              </el-button>
-            </div>
-          </el-form>
-          <div class="colorDescription">
-            <div class="colorDescriptionItem"><i class="el-icon-s-opportunity" style="margin-right: 5px;color: rgba(5, 185, 100, 0.5)" />浜ц兘</div>
-            <div class="colorDescriptionItem"><i class="el-icon-s-opportunity" style="margin-right: 5px;color: rgba(5, 185, 100, 1)" />宸叉帓</div>
-            <div class="colorDescriptionItem"><i class="el-icon-s-opportunity" style="margin-right: 5px;color:rgba(128,0,128,0.7)" />棰勬帓</div>
-            <!--            <div class="colorDescriptionItem"><i class="el-icon-s-opportunity" style="margin-right: 5px;color: #a7a7a7" />澶辨晥浜ц兘</div>-->
-          </div>
-          <div
-            class="bodyTopFormExpand"
-            style="height: 5px"
-          />
-        </div>
-
-        <div class="container" style="margin: 10px;">
-          <v-gantt-chart
-            :start-time="time_data[0]"
-            :end-time="time_data[1]"
-            :cell-width="cellWidth"
-            :cell-height="cellHeight"
-            :title-height="titleHeight"
-            :scale="formBottom.scale"
-            :title-width="titleWidth"
-            show-current-time
-            :hide-header="hideHeader"
-            :data-key="dataKey"
-            :array-keys="arrayKeys"
-
-            :datas="schedulingData"
-          >
-            <!--            鏆傛椂鐢ㄤ笉鍒�-->
-            <!--            :time-lines="timeLines"-->
-            <!--            @scrollLeft="scrollLeftA"-->
-            <!--            :scroll-to-postion="positionA"-->
-            <template slot="block" slot-scope="{data,item}">
-              <Test
-                :data="data"
-                :cell-height="cellHeight"
-                :item="item"
-              />
-              <!--              鏆傛椂鐢ㄤ笉鍒�-->
-              <!--              :update-time-lines="updateTimeLines"-->
-              <!--              :current-time="currentTime"-->
-            </template>
-            <template slot="left" slot-scope="{data}">
-              <div class="name">
-                <div class="carId">
-                  <el-checkbox
-                    v-model="data.status"
-                    style="margin-right:5px;"
-                    @change="checkboxSingle(data)"
-                  />
-                  {{ data.id }} {{ data.name }}
-                </div>
-                <div class="speed">
-                  <!--                  <el-tooltip class="item" effect="dark" content="鏌ョ湅" placement="top">-->
-                  <!--                    <el-button v-waves type="text" size="mini" @click="look(data)">-->
-                  <!--                      <i class="el-icon-document size i-color"  />-->
-                  <!--                    </el-button>-->
-                  <!--                  </el-tooltip>-->
-                </div>
-              </div>
-            </template>
-            <template slot="title">
-              <span class="tc">宸ヤ綅鍒楄〃</span>
-              <el-checkbox
-                v-model="ganttCheckboxAll"
-                class="box_style"
-                :disabled="radioSelectedId===''"
-                @change="checkboxAll()"
-              />
-              <input
-                v-model.number="cellWidth"
-                type="range"
-                min="20"
-                max="100"
-                class="box_styles"
-                :disabled="radioSelectedId===''"
-              >
-            </template>
-          </v-gantt-chart>
-        </div>
-      </div>
-
-    </div>
-
-  </div>
-</template>
-
-<script>
-import Pagination from '@/components/Pagination'
-import Test from '@/components/Test'
-import dayjs from 'dayjs'
-import { AdvancedSchedulingSearch, OnclickAdvancedSchedulingDevice, SubmitAlreadyScheduling } from '@/api/scgl'
-import { handleDatetime, handleDatetime2 } from '@/utils/global'
-import waves from '@/directive/waves'
-
-export default {
-  name: 'Zzjg',
-  components: {
-    Pagination, Test
-  },
-  directives: { waves },
-  data() {
-    return {
-      mouseHoverType: 'mouseout',
-      isExpandForm: false,
-      mainHeight: 0,
-      tableHeight: 0,
-      radioSelectedId: '', // 琛ㄥ崟鍗曢�夋
-      formTop: {
-        workshop: '', // 杞﹂棿缂栫爜
-        wocode: '', // 鐢熶骇宸ュ崟鍙�
-        partcode: '', // 鐗╂枡缂栫爜
-        partname: '', // 鐗╂枡鍚嶇О
-        prop: 'AdvaScheWorkCode', // 鎺掑簭瀛楁
-        order: 'desc', // 鎺掑簭瀛楁
-        page: 1, // 绗嚑椤�
-        rows: 20 // 姣忛〉澶氬皯鏉�
-      },
-      totalTop: 10,
-      tableData: [],
-      /*
-    鎺掔▼閮ㄥ垎鐨勫睘鎬�
-    * */
-      show: false,
-      pickerOptions1: {
-        disabledDate(time) {
-          return time.getTime() <= Date.now() - 24 * 60 * 60 * 1000
-        }
-      },
-
-      ganttCheckboxAll: true, // 鐢樼壒鍥惧乏渚у閫夋鏄惁閫変腑鎴栬�呭彇娑�
-      ganttLeftArrId: [], // 鐢樼壒鍥惧乏渚х殑鏁扮粍id
-      cl_name: '', // 浜у搧鍚嶇О
-      cl_code: '', // 浜у搧缂栫爜
-      work_order: '', // 宸ュ崟缂栧彿
-      AdvaScheUom: '', // 浜у搧鍗曚綅
-      time_data: [[handleDatetime(new Date()) + ' 00:00:00'], [handleDatetime(new Date()) + ' 00:00:00']], // 鐢樼壒鍥惧垵濮嬫覆鏌撶殑鏃堕棿鑼冨洿
-      forms: { // 鐐瑰嚮琛岃幏鍙栦俊鎭� 璇锋眰鎺ュ彛 鐨勬暟鎹璞�
-        wocode: '', // 宸ュ崟缂栧彿
-        wkshpcode: '', // 杞﹂棿缂栫爜
-        partcode: '', // 鐗╂枡缂栫爜
-        botproccode: '', // 鐡堕宸ュ簭缂栫爜(棣栭亾宸ュ簭)
-        startdate: '', // 寮�濮嬫棩鏈�
-        enddate: ''// 缁撴潫鏃ユ湡
-      },
-      formBottom: { // 搴曢儴琛ㄥ崟鐨� 鏁版嵁瀵硅薄
-        scheDate: [handleDatetime(new Date()), handleDatetime(new Date())], // 鎺掔▼鏃ユ湡
-        types: 'N', // 鎺掔▼鏂瑰紡
-        scale: 60, // 鏃堕棿鍒诲害
-        times: 0, // 鎹㈠瀷鏃堕棿
-        canArrangeNumber: 0, // 鍙帓鏁伴噺
-        needArrangeNumber: 0// 闇�鎺掓暟閲�
-      },
-      schedulingData: [], // 鎺掔▼鐨勬渶缁堟暟鎹�
-      timeTopTempData: [], // 鏃堕棿浼樺厛鐨勪复鏃舵暟鎹�
-      eqpTopTempData: [], //  璁惧浼樺厛鐨勪复鏃舵暟鎹�
-
-      formUpdate: {
-        WorkCode: '',
-        BotProceCode: '',
-        json: []
-      },
-      // currentTime: dayjs(),
-      cellWidth: 50,
-      cellHeight: 30,
-      titleHeight: 40,
-      titleWidth: 250,
-      dataKey: 'id',
-      // timeList: `0,30,60,120,240,480`.split(',').map(n => parseInt(n)),
-      scaleList: `30,60,240,360`.split(',').map(n => parseInt(n)),
-      hideHeader: false,
-      arrayKeys: ['gtArray', 'error']
-
-    }
-  },
-
-  created() {
-    const loading = this.$loading({
-      lock: true,
-      text: '姝e湪鍔犺浇鏁版嵁锛岃绋嶇瓑...',
-      spinner: 'el-icon-loading',
-      customClass: 'osloading',
-      background: 'rgba(0, 0, 0, 0.7)'
-    })
-    setTimeout(() => {
-      if (this.getAdvancedSchedulingSearch()) {
-        loading.close()
-      }
-    }, 3000)
-
-    // this.getAdvancedSchedulingSearch()
-  },
-  mounted() {
-    window.addEventListener('resize', this.getHeight)
-    this.getHeight()
-  },
-  methods: {
-    async getAdvancedSchedulingSearch() {
-      const res = await AdvancedSchedulingSearch(this.formTop)
-      this.tableData = res.data
-      this.totalTop = res.count
-
-      return true
-    },
-    // 鎺掑簭鏀瑰彉鏃�
-    sortChangeTop({ column, prop, order }) {
-      if (order === 'descending') {
-        order = 'desc'
-      } else if (order === 'ascending') {
-        order = 'asc'
-      } else {
-        order = 'desc'
-      }
-      this.formTop.order = order
-      this.formTop.prop = prop
-      this.getAdvancedSchedulingSearch()
-    },
-    // 鏌ヨ
-    search() {
-      this.getAdvancedSchedulingSearch()
-    },
-    // 閲嶇疆
-    reset() {
-      this.formTop.workshop = ''
-      this.formTop.wocode = ''
-      this.formTop.partcode = ''
-      this.formTop.partname = ''
-      this.getAdvancedSchedulingSearch()
-    },
-    // 鑾峰彇椤甸潰楂樺害
-    getHeight() {
-      this.$nextTick(() => {
-        this.mainHeight = window.innerHeight - 85
-        this.tableHeight = this.mainHeight - 255
-        this.$refs.tableDataRef.doLayout()
-      })
-    },
-    tableRowClassName({ row, rowIndex }) {
-      return 'custom-row'
-    },
-    /*
-     鎺掔▼閮ㄥ垎鐨勬柟娉�
-     */
-    // 纭繚鎹㈠瀷鏃堕棿涓洪潪璐熸暟
-    no_zero() {
-      if (this.formBottom.times < 0) {
-        this.formBottom.times = 0
-      }
-    },
-    // 鎺掔▼鏂瑰紡鏀瑰彉
-    typesChange() {
-      this.getOnclickAdvancedSchedulingDevice()
-    },
-    // 鎺掔▼鏃ユ湡鍊兼敼鍙樻椂
-    dateChange() {
-      this.time_data[0] = this.formBottom.scheDate[0] + ' 00:00'
-      this.time_data[1] = this.formBottom.scheDate[1] + ' 23:59'
-      this.forms.startdate = this.formBottom.scheDate[0]
-      this.forms.enddate = this.formBottom.scheDate[1]
-      this.getOnclickAdvancedSchedulingDevice()
-    },
-    // 宸ヤ綅鍒楄〃澶嶉�夋鎿嶄綔  (鍏ㄩ�夈�佸叏涓嶉��)
-    checkboxAll() {
-      if (this.ganttCheckboxAll) {
-        this.ganttLeftArrId = []
-        this.getOnclickAdvancedSchedulingDevice()
-      } else {
-        for (const i in this.schedulingData) {
-          this.schedulingData[i].status = false
-          this.schedulingData[i].gtArray = []
-        }
-        for (const i in this.timeTopTempData) {
-          this.timeTopTempData[i].gtArray = []
-        }
-      }
-      // this.prepareArrange()
-    },
-    // 鐢樼壒鍥惧乏渚heckbox鍊奸�変腑鎴栬�呭彇娑堟椂
-    checkboxSingle(val) {
-      if (!val.status) {
-        for (const i in this.timeTopTempData) {
-          const new_arr = []
-          for (const j in this.timeTopTempData[i].gtArray) {
-            if (this.timeTopTempData[i].gtArray[j].id === val.id) {
-            } else {
-              new_arr.push(this.timeTopTempData[i].gtArray[j])
-            }
-          }
-          this.timeTopTempData[i].gtArray = new_arr
-        }
-      } else {
-        this.ganttLeftArrId = []
-        for (const i in this.schedulingData) {
-          if (!this.schedulingData[i].status) {
-            this.ganttLeftArrId.push(this.schedulingData[i].id)
-          }
-        }
-        this.getOnclickAdvancedSchedulingDevice()
-      }
-
-      if (!val.status) {
-        for (const i in this.schedulingData) {
-          if (!this.schedulingData[i].status) {
-            this.schedulingData[i].gtArray = []
-          }
-        }
-      } else {
-        this.ganttLeftArrId = []
-        for (const i in this.schedulingData) {
-          if (!this.schedulingData[i].status) {
-            this.ganttLeftArrId.push(this.schedulingData[i].id)
-          }
-        }
-        this.getOnclickAdvancedSchedulingDevice()
-      }
-      for (const i in this.schedulingData) {
-        const arr = []
-        for (const j in this.schedulingData[i].gtArray) {
-          if (this.schedulingData[i].gtArray[j].type !== 'schedule') {
-            arr.push(this.schedulingData[i].gtArray[j])
-          }
-        }
-        this.schedulingData[i].gtArray = arr
-      }
-      this.formBottom.canArrangeNumber = 0
-      // this.prepareArrange()
-    },
-    // 鐐瑰嚮甯﹀嚭鏁版嵁
-    async getOnclickAdvancedSchedulingDevice() {
-      const res = await OnclickAdvancedSchedulingDevice(this.forms)
-      if (res.rus.Message) {
-        this.$message.error(res.rus.Message)
-      }
-
-      const data = res.rows // 鎷垮埌寰呮帓鏁版嵁  瀵规暟鎹繘琛屾敼閫�
-      const cont = res.Cont // 鎷垮埌宸叉帓鏁版嵁  瀵规暟鎹繘琛屾敼閫�
-
-      this.formBottom.canArrangeNumber = 0
-
-      // 灏嗕簲涓椂闂存杩涜璧嬪��
-      data.forEach(item => {
-        item.children.forEach(it => {
-          if (it.OneStartDate !== '') {
-            it.OneStartDate = it.OneStartDate.split('~')
-            it.OneStartDate[0] = item.YearDate + ' ' + it.OneStartDate[0] + ':00'
-            it.OneStartDate[1] = item.YearDate + ' ' + it.OneStartDate[1] + ':00'
-          }
-
-          if (it.TwoStartDate !== '') {
-            it.TwoStartDate = it.TwoStartDate.split('~')
-            it.TwoStartDate[0] = item.YearDate + ' ' + it.TwoStartDate[0] + ':00'
-            it.TwoStartDate[1] = item.YearDate + ' ' + it.TwoStartDate[1] + ':00'
-          }
-          if (it.ThreeStartDate !== '') {
-            it.ThreeStartDate = it.ThreeStartDate.split('~')
-            it.ThreeStartDate[0] = item.YearDate + ' ' + it.ThreeStartDate[0] + ':00'
-            it.ThreeStartDate[1] = item.YearDate + ' ' + it.ThreeStartDate[1] + ':00'
-          }
-          if (it.FourStartDate !== '') {
-            it.FourStartDate = it.FourStartDate.split('~')
-            it.FourStartDate[0] = item.YearDate + ' ' + it.FourStartDate[0] + ':00'
-            it.FourStartDate[1] = item.YearDate + ' ' + it.FourStartDate[1] + ':00'
-          }
-          if (it.FiveStartDate !== '') {
-            it.FiveStartDate = it.FiveStartDate.split('~')
-            it.FiveStartDate[0] = item.YearDate + ' ' + it.FiveStartDate[0] + ':00'
-            it.FiveStartDate[1] = item.YearDate + ' ' + it.FiveStartDate[1] + ':00'
-          }
-        })
-      })
-
-      // 鏋勫缓 鎸夎澶囦紭鍏堟帓绋嬬殑 鏁版嵁鏍煎紡 schedulingData
-      const list = [] // 涓存椂list  鏆傚瓨
-      data[0].children.forEach(item => {
-        const obj = {
-          id: '',
-          name: '',
-          AdvaDevicRhythm: '', // 鑺傛媿澶氬皯绉掔敓浜т竴涓紙鐢熶骇鑺傛媿锛�
-          status: true,
-          colorPair: {
-            dark: 'rgb(83, 186, 241,0.8)',
-            light: 'rgb(83, 186, 241,0.1)',
-            light_capacity: 'rgb(209,239,237,0.8)',
-            h_schedule: 'rgb(100,255,192,0.8)',
-            scheduleing: 'rgb(20,182,231,0.8)'
-          },
-          gtArray: []
-        }
-        obj.id = item.AdvaDevicNumber
-        obj.name = item.AdvaDevicName
-        obj.AdvaDevicRhythm = item.AdvaDevicRhythm
-        list.push(obj)
-      })
-
-      // 缁勫悎鏂扮殑缁撴瀯     娴呯豢鑹茶儗鏅潯
-      const newList = []
-      for (const i in data) {
-        for (const j in data[i].children) {
-          if (data[i].children[j].OneStartDate !== '') {
-            const data1 = {
-              id: '',
-              start: '',
-              end: '',
-              mod: ''
-            }
-            data1.id = data[i].children[j].AdvaDevicNumber
-            data1.start = data[i].children[j].OneStartDate[0]
-            data1.end = data[i].children[j].OneStartDate[1]
-            // AdvaDevicCropMob 绋煎姩鐜�     AdvaDevicRhythm  鐢熶骇鑺傛媿
-            data1.mod = (data[i].children[j].AdvaDevicCropMob * 1) / 100 // 绋煎姩鐜�
-            newList.push(data1)
-          }
-          if (data[i].children[j].TwoStartDate !== '') {
-            const data2 = {
-              id: '',
-              start: '',
-              end: '',
-              mod: ''
-            }
-            data2.id = data[i].children[j].AdvaDevicNumber
-            data2.start = data[i].children[j].TwoStartDate[0]
-            data2.end = data[i].children[j].TwoStartDate[1]
-            data2.mod = (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            newList.push(data2)
-          }
-          if (data[i].children[j].ThreeStartDate !== '') {
-            const data3 = {
-              id: '',
-              start: '',
-              end: '',
-              mod: ''
-            }
-            data3.id = data[i].children[j].AdvaDevicNumber
-            data3.start = data[i].children[j].ThreeStartDate[0]
-            data3.end = data[i].children[j].ThreeStartDate[1]
-            data3.mod = (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            newList.push(data3)
-          }
-          if (data[i].children[j].FourStartDate !== '') {
-            const data4 = {
-              id: '',
-              start: '',
-              end: '',
-              mod: ''
-            }
-            data4.id = data[i].children[j].AdvaDevicNumber
-            data4.start = data[i].children[j].FourStartDate[0]
-            data4.end = data[i].children[j].FourStartDate[1]
-            data4.mod = (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            newList.push(data4)
-          }
-          if (data[i].children[j].FiveStartDate !== '') {
-            const data5 = {
-              id: '',
-              start: '',
-              end: '',
-              mod: ''
-            }
-            data5.id = data[i].children[j].AdvaDevicNumber
-            data5.start = data[i].children[j].FiveStartDate[0]
-            data5.end = data[i].children[j].FiveStartDate[1]
-            data5.mod = (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            newList.push(data5)
-          }
-        }
-      }
-
-      for (const i in list) {
-        this.pushItem(newList, list[i].id, list[i].gtArray)
-      }
-
-      this.schedulingData = list
-
-      if (cont !== '') {
-        for (const i in cont) {
-          for (const j in this.schedulingData) {
-            if (this.schedulingData[j].id === cont[i].eqp_code) {
-              const data = {
-                id: cont[i].eqp_code,
-                number: cont[i].alloc_qty,
-                cl_name: cont[i].part_name,
-                cl_code: cont[i].part_code,
-                AdvaScheUom: cont[i].uom_name, // 鍗曚綅
-                work_order: cont[i].wo_code,
-                start: cont[i].time_start,
-                end: cont[i].time_end,
-                // type: cont[i].status === 'S' ? 'h_schedule' : 'bm_schedule'
-                type: 'h_schedule'
-              }
-              this.schedulingData[j].gtArray.unshift(data)
-            }
-          }
-        }
-      }
-
-      if (this.ganttLeftArrId !== '') {
-        for (const j in this.schedulingData) {
-          if (this.ganttLeftArrId.indexOf(this.schedulingData[j].id) >= 0) {
-            this.schedulingData[j].gtArray = []
-            this.schedulingData[j].status = false
-          }
-        }
-      }
-
-      // 璁惧浼樺厛鐨勬暟鎹牸寮�
-      this.eqpTopTempData = []
-      for (const i in data[0].children) {
-        const obj = {
-          id: '',
-          name: '',
-          status: true,
-          AdvaDevicRhythm: '',
-          // mod:'',
-          colorPair: {
-            dark: 'rgb(83, 186, 241,0.8)',
-            light: 'rgb(83, 186, 241,0.1)',
-            light_capacity: 'rgb(209,239,237,0.8)',
-            h_schedule: 'rgb(100,255,192,0.8)',
-            scheduleing: 'rgb(20,182,231,0.8)'
-          },
-          gtArray: []
-        }
-        obj.id = data[0].children[i].AdvaDevicNumber
-        obj.name = data[0].children[i].AdvaDevicName
-        obj.AdvaDevicRhythm = data[0].children[i].AdvaDevicRhythm
-        // obj.mod =data[0].children[i].AdvaDevicCropMob *1
-
-        this.eqpTopTempData.push(obj)
-      }
-
-      // 鏇存敼鏍煎紡
-      this.timeTopTempData = []
-
-      // 鏋勫缓鎸夋椂闂翠紭鍏堢殑鎺掔▼鏁版嵁鏍煎紡 timeTopTempData
-      for (const i in data) {
-        const time = {
-          date: data[i].YearDate,
-          AdvaDevicRhythm: '',
-          gtArray: []
-        }
-        if (data[i].children !== '') {
-          time.AdvaDevicRhythm = data[i].children[0].AdvaDevicRhythm
-        }
-        for (const j in data[i].children) {
-          if (data[i].children[j].OneStartDate !== '') {
-            const icu1 = {
-              name: data[i].children[j].AdvaDevicName,
-              id: data[i].children[j].AdvaDevicNumber,
-              type: 'capacity',
-              rhythm: data[i].children[j].AdvaDevicRhythm, // 鐢熶骇鑺傛媿
-              start: data[i].children[j].OneStartDate[0],
-              end: data[i].children[j].OneStartDate[1],
-              mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            }
-            time.gtArray.push(icu1)
-          }
-          if (data[i].children[j].TwoStartDate !== '') {
-            const icu2 = {
-              name: data[i].children[j].AdvaDevicName,
-              id: data[i].children[j].AdvaDevicNumber,
-              type: 'capacity',
-              rhythm: data[i].children[j].AdvaDevicRhythm,
-              start: data[i].children[j].TwoStartDate[0],
-              end: data[i].children[j].TwoStartDate[1],
-              mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            }
-            time.gtArray.push(icu2)
-          }
-          if (data[i].children[j].ThreeStartDate !== '') {
-            const icu3 = {
-              name: data[i].children[j].AdvaDevicName,
-              id: data[i].children[j].AdvaDevicNumber,
-              type: 'capacity',
-              rhythm: data[i].children[j].AdvaDevicRhythm,
-              start: data[i].children[j].ThreeStartDate[0],
-              end: data[i].children[j].ThreeStartDate[1],
-              mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            }
-            time.gtArray.push(icu3)
-          }
-          if (data[i].children[j].FourStartDate !== '') {
-            const icu4 = {
-              name: data[i].children[j].AdvaDevicName,
-              id: data[i].children[j].AdvaDevicNumber,
-              type: 'capacity',
-              rhythm: data[i].children[j].AdvaDevicRhythm,
-              start: data[i].children[j].FourStartDate[0],
-              end: data[i].children[j].FourStartDate[1],
-              mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            }
-            time.gtArray.push(icu4)
-          }
-          if (data[i].children[j].FiveStartDate !== '') {
-            const icu5 = {
-              name: data[i].children[j].AdvaDevicName,
-              id: data[i].children[j].AdvaDevicNumber,
-              type: 'capacity',
-              rhythm: data[i].children[j].AdvaDevicRhythm,
-              start: data[i].children[j].FiveStartDate[0],
-              end: data[i].children[j].FiveStartDate[1],
-              mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100
-            }
-            time.gtArray.push(icu5)
-          }
-        }
-
-        this.timeTopTempData.push(time)
-      }
-
-      if (cont !== '') {
-        for (const i in cont) {
-          for (const j in this.timeTopTempData) {
-            const data = {
-              id: cont[i].eqp_code,
-              date: cont[i].time_start.split(' ')[0],
-              number: cont[i].alloc_qty,
-              cl_name: cont[i].part_name,
-              cl_code: cont[i].part_code,
-              AdvaScheUom: cont[i].uom_name, // 鍗曚綅
-              work_order: cont[i].wo_code,
-              start: cont[i].time_start,
-              end: cont[i].time_end,
-              type: 'h_schedule'
-            }
-            if (this.timeTopTempData[j].date === data.date) {
-              this.timeTopTempData[j].gtArray.unshift(data)
-            }
-          }
-        }
-      }
-    },
-    // 鎹㈠瀷鏃堕棿
-    MinutesTest(time) {
-      const t = new Date(time)
-      t.setMinutes(t.getMinutes() + this.formBottom.times * 1)
-      const now =
-        t.getFullYear() +
-        '-' +
-        (t.getMonth() + 1).toString().padStart(2, '0') +
-        '-' +
-        t.getDate().toString().padStart(2, '0') +
-        ' ' +
-        t.getHours().toString().padStart(2, '0') +
-        ':' +
-        t.getMinutes().toString().padStart(2, '0') +
-        ':' +
-        t.getSeconds().toString().padStart(2, '0')
-      return now
-    },
-    // 鎻掑叆浜ц兘鏃堕棿娈�
-    pushItem(newList, id, arr) {
-      for (const i in newList) {
-        if (newList[i].id === id) {
-          const data = {
-            start: newList[i].start,
-            end: newList[i].end,
-            id: newList[i].id,
-            mod: newList[i].mod,
-            type: 'capacity'
-          }
-          arr.push(data)
-        }
-      }
-    },
-    // 琛岀偣鍑讳簨浠�
-    getCurrentRow(row) {
-      this.radioSelectedId = row.AdvaScheId // 鎺掔▼id璧嬪�肩粰閫変腑琛宨d
-
-      this.formBottom.needArrangeNumber = row.AdvaScheQty * 1 - row.AdvaScheYPQty * 1 // 闇�鎺掓暟閲� = 鏈帓绋嬫暟閲� - 宸叉帓绋嬫暟閲�
-      this.formBottom.scheDate = [] // 鎺掔▼鏃ユ湡缃┖
-      this.cl_name = row.AdvaSchePartName // 浜у搧鍚嶇О
-      this.cl_code = row.AdvaSchePartNumber // 浜у搧缂栫爜
-      this.AdvaScheUom = row.AdvaScheUom // 浜у搧鍗曚綅
-      this.work_order = row.AdvaScheWorkCode // 宸ュ崟缂栧彿
-
-      this.formBottom.scheDate.push(handleDatetime(new Date())) //  褰撳墠鏃ユ湡锛堜粖澶╋級
-      this.formBottom.scheDate.push(row.AdvaScheEndDate) //  瑕佹眰浜や粯鏃堕棿
-      if (this.formBottom.scheDate !== '') {
-        this.time_data[0] = this.formBottom.scheDate[0] + ' 00:00' // 鎺掔▼寮�濮嬫椂闂�
-        this.time_data[1] = this.formBottom.scheDate[1] + ' 23:59' // 鎺掔▼缁撴潫鏃堕棿
-      }
-      this.forms.wocode = row.AdvaScheWorkCode // 宸ュ崟缂栧彿
-      this.forms.wkshpcode = row.AdvaScheWorkShopid // 杞﹂棿缂栫爜
-      this.forms.partcode = row.AdvaSchePartNumber // 浜у搧缂栫爜
-      this.forms.botproccode = row.AdvaScheBotProcid // 宸ヨ壓璺嚎缂栫爜
-      this.forms.startdate = handleDatetime(new Date()) // 褰撳墠鏃ユ湡锛堜粖澶╋級
-      this.forms.enddate = row.AdvaScheEndDate //  瑕佹眰浜や粯鏃堕棿
-      this.getOnclickAdvancedSchedulingDevice()
-      this.formUpdate.WorkCode = row.AdvaScheWorkCode // 宸ュ崟缂栧彿
-      this.formUpdate.BotProceCode = row.AdvaScheBotProcid // 宸ヨ壓璺嚎缂栫爜
-    },
-    // 鎻愪氦鎺掔▼
-    async prepareSubmit() {
-      if (this.formBottom.canArrangeNumber !== this.formBottom.needArrangeNumber) {
-        this.$message.error('鏁伴噺鏈帓瀹岋紝璇疯缃骇鑳芥椂闂达紒')
-      } else {
-        const list = [] // 鎻愪氦鏁扮粍
-        for (const i in this.schedulingData) {
-          const arr = []
-          for (const j in this.schedulingData[i].gtArray) {
-            if (this.schedulingData[i].gtArray[j].type === 'schedule') {
-              arr.push(this.schedulingData[i].gtArray[j])
-            }
-          }
-          if (arr !== '') {
-            for (const i in arr) {
-              const data = {
-                AlreDevicNumber: '',
-                AlreStartDate: '',
-                AlreEndDate: '',
-                AlreQty: ''
-              }
-              data.AlreDevicNumber = arr[i].id
-              data.AlreStartDate = arr[i].start
-              data.AlreEndDate = arr[i].end
-              data.AlreQty = arr[i].number
-              list.push(data)
-            }
-          }
-        }
-        // 鎺掔▼鐩稿悓璁惧鑾峰彇寮�濮嬫椂闂� 缁撴潫鏃堕棿 鏁伴噺鐨勬�诲拰
-        // 杩囨护
-        let update = []
-        for (const i in list) {
-          if (list[i].AlreStartDate !== '') {
-            update.push(list[i])
-          }
-        }
-
-        update = JSON.stringify(update)
-        this.formUpdate.json = update
-        if (list === '') {
-          this.$message.error('璇峰厛棰勬帓')
-          return false
-        }
-
-        const formData = new FormData()
-        formData.append('wocode', this.formUpdate.WorkCode)
-        formData.append('botprocecode', this.formUpdate.BotProceCode)
-        formData.append('json', this.formUpdate.json)
-
-        const res = await SubmitAlreadyScheduling(formData)
-
-        if (res.code === '200') {
-          this.$message.success(res.Message)
-        }
-
-        this.formBottom.needArrangeNumber = 0
-        this.formBottom.canArrangeNumber = 0
-        await this.getOnclickAdvancedSchedulingDevice()
-        await this.getAdvancedSchedulingSearch()
-      }
-    },
-    // 鏃堕棿/璁惧浼樺厛鎺掔▼
-    prepareArrange() {
-      const timestamp = new Date().toLocaleDateString()
-
-      if (new Date(this.formBottom.scheDate[1]) < new Date(timestamp)) {
-        this.$message.error('鎺掔▼鏃ユ湡涓嶅彲浠ュ皬浜庡綋鍓嶆椂闂�!')
-        return false
-      }
-      this.filterAlreadyScheduleEqp()// 鎵嬪姩杩囨护鎵�鏈夎澶囧凡鎺掔▼
-
-      // 璁惧浼樺厛鎴栬�呮椂闂翠紭鍏� 瀵规暟鎹繘琛岀殑鏍煎紡杞崲
-      if (this.schedulingData !== '' && this.formBottom.types === 'N') { // 璁惧浼樺厛
-        this.eqpDataTransition()
-        this.editLastValue(this.schedulingData)
-      } else if (this.timeTopTempData !== '' && this.formBottom.types === 'Y') { // 鏃堕棿浼樺厛
-        this.filterAlreadyScheduleTime() // 鎵嬪姩杩囨护鎵�鏈夋椂闂村凡鎺掔▼
-        this.timeDataTransition()
-        this.dataTransition()
-        this.editLastValue(this.schedulingData)
-      }
-    },
-    // 鎵嬪姩杩囨护鎵�鏈夋椂闂村凡鎺掔▼
-    filterAlreadyScheduleTime() {
-      this.timeTopTempData.forEach(item => {
-        if (item.gtArray && item.gtArray.length > 0) {
-          item.gtArray = item.gtArray.filter(it => it.type !== 'schedule')
-        }
-      })
-    },
-    // 鎵嬪姩杩囨护鎵�鏈夎澶囧凡鎺掔▼
-    filterAlreadyScheduleEqp() {
-      this.schedulingData.forEach(item => {
-        if (item.gtArray && item.gtArray.length > 0) {
-          item.gtArray = item.gtArray.filter(it => it.type !== 'schedule')
-        }
-      })
-    },
-    // 缁欐帓绋嬫渶鍚庝竴涓慨鏀规暟閲�
-    editLastValue(arr) {
-      this.formBottom.canArrangeNumber = 0 // 鐪熷疄宸叉帓鏁伴噺
-      let num = 0 // 鍙栨暣宸叉帓鏁伴噺
-      const arr_num = [] // 宸叉帓鏁版嵁
-      let need_num = 0
-      for (const i in arr) {
-        for (const j in arr[i].gtArray) {
-          if (arr[i].gtArray[j].type === 'schedule') {
-            arr_num.unshift(arr[i].gtArray[j])
-          }
-        }
-      }
-
-      for (const n in arr_num) {
-        this.formBottom.canArrangeNumber += arr_num[n].real_number
-        num += arr_num[n].number * 1
-      }
-
-      this.formBottom.canArrangeNumber = Math.ceil(this.formBottom.canArrangeNumber)
-      const y10 = this.formBottom.needArrangeNumber - this.formBottom.canArrangeNumber
-      if (y10 <= 10) {
-        this.formBottom.canArrangeNumber = this.formBottom.needArrangeNumber
-        need_num = this.formBottom.needArrangeNumber - num
-      } else {
-      }
-      for (const i in this.schedulingData) {
-        for (const j in this.schedulingData[i].gtArray) {
-          if (
-            this.schedulingData[i].gtArray[j].type === 'schedule' &&
-            this.schedulingData[i].gtArray[j].end_num
-          ) {
-            this.schedulingData[i].gtArray[j].number =
-              this.schedulingData[i].gtArray[j].number * 1 + need_num
-          }
-        }
-      }
-    },
-    // 璁惧浼樺厛   鏁版嵁鏍煎紡杞崲
-    eqpDataTransition() {
-      let needNumber = this.formBottom.needArrangeNumber // 闇�鎺掓暟閲�
-      let flag1 = 0
-
-      for (const i in this.schedulingData) {
-        let end_arr = [] // 宸叉帓绋嬬殑鏁扮粍
-        let need_arr = [] // 寰呮帓绋嬬殑鏁扮粍
-
-        let capacity_arr = [] // 瑕佹帓绋嬬殑鏁扮粍
-        this.schedulingData[i].gtArray.sort((a, b) => new Date(a.end).getTime() - new Date(b.end).getTime())
-
-        end_arr = JSON.parse(JSON.stringify(this.schedulingData[i].gtArray.filter(item => item.type === 'h_schedule'))) // 宸叉帓绋嬫暟缁�
-        need_arr = JSON.parse(JSON.stringify(this.schedulingData[i].gtArray.filter(item => item.type === 'capacity'))) // 瀹归噺
-
-        if (end_arr && end_arr.length > 0) {
-          capacity_arr = need_arr.map(item => {
-            // 鎺掗櫎鎺夊凡缁忔帓绋嬬殑瀛樺湪hshedule锛宻tart锛宔nd閮界浉绛夌殑鎯呭喌
-            const schedule = end_arr.filter(it => {
-              return new Date(item.start).getTime() <= new Date(it.start).getTime() &&
-                new Date(item.end).getTime() >= new Date(it.end).getTime()
-            })
-
-            if (schedule && schedule.length > 0) {
-              item.start = this.MinutesTest(schedule[schedule.length - 1]['end'])
-            }
-
-            const schedule1 = end_arr.filter(schedule => {
-              return new Date(item.start).getTime() === new Date(schedule.start).getTime() &&
-                new Date(item.end).getTime() === new Date(schedule.end).getTime()
-            })
-            if (schedule1 && schedule1.length > 0) {
-              item.capacity = false
-            }
-
-            return item
-          }).filter(item => item.capacity !== false)
-        } else {
-          capacity_arr = need_arr
-        }
-
-        const id_obj = {
-          id: '',
-          start_time: ''
-        }
-        if (end_arr != '') {
-          (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end)
-        }
-
-        capacity_arr = this.filterOutTime(capacity_arr) // 杩囨护鎺夊綋鍓嶆椂闂翠箣鍓嶇殑涓嶈兘鎺掔▼
-
-        for (const w in capacity_arr) {
-          let end_time = ''
-          let mistiming = ''
-          const data = {
-            id: capacity_arr[w].id,
-            start: '',
-            end: '',
-            type: 'schedule',
-            cl_name: this.cl_name,
-            cl_code: this.cl_code,
-            work_order: this.work_order,
-            AdvaScheUom: this.AdvaScheUom,
-            number: 0,
-            real_number: 0
-          }
-          if (
-            id_obj.start_time !== '' &&
-            flag1 === 0 &&
-            new Date(id_obj.start_time).getTime() >= new Date(capacity_arr[w].start).getTime()
-          ) {
-            data.start = this.MinutesTest(id_obj.start_time)
-            flag1 = 1
-          } else {
-            data.start = capacity_arr[w].start
-          }
-          let nowTime = (this.schedulingData[i].AdvaDevicRhythm * needNumber) / capacity_arr[w].mod
-          end_time = this.formSeconds(nowTime, data.start, capacity_arr[w].mod) // 鎬诲叡鐨勭粨鏉熸椂闂�
-          data.end = end_time
-          mistiming = this.compareTime(
-            end_time,
-            capacity_arr[w].end,
-            capacity_arr[w].mod
-          ) // 鎬诲叡鐨勭粨鏉熸椂闂�-褰撳墠鐨勭粨鏉熸椂闂� = 鍓╀笅澶氫箙鏃堕棿
-          if (mistiming >= 0) {
-            data.number =
-              ((new Date(data.end) - new Date(data.start)) *
-                capacity_arr[w].mod) /
-              this.schedulingData[i].AdvaDevicRhythm /
-              1000
-            data.real_number =
-              ((new Date(data.end) - new Date(data.start)) *
-                capacity_arr[w].mod) /
-              this.schedulingData[i].AdvaDevicRhythm /
-              1000
-            data.number = data.number.toFixed(0)
-            data.end_num = true
-            if (new Date(data.start) >= new Date(data.end)) {
-            } else {
-              this.schedulingData[i].gtArray.push(data)
-            }
-            return false
-          } else {
-            data.end = capacity_arr[w].end
-
-            if (new Date(data.end).getTime() < new Date(data.start)) {
-              continue // 鍥犱负寮�濮嬫椂闂存瘮缁撴潫鏃堕棿澶� 闇�瑕佽烦杩囧悗闈㈡楠�
-            }
-
-            // 杩欓噷闄や互涓�鍗冩槸鍥犱负 new Date() 寰楀埌鐨勬槸姣  姣杞寲涓虹鏄崈杩涘埗
-            // 涓�娈垫椂闂存鍐呯殑鐢熶骇閲�=涓よ�呮椂闂村樊锛堟绉掞級/1000  / 鐢熶骇鑺傛媿 * 绋煎姩鐜�
-            data.number =
-              ((new Date(data.end) - new Date(data.start)) *
-                capacity_arr[w].mod) /
-              this.schedulingData[i].AdvaDevicRhythm /
-              1000
-
-            data.real_number =
-              ((new Date(data.end) - new Date(data.start)) *
-                capacity_arr[w].mod) /
-              this.schedulingData[i].AdvaDevicRhythm /
-              1000
-
-            data.number = data.number.toFixed(0)
-
-            nowTime = (needNumber - data.real_number) * this.schedulingData[i].AdvaDevicRhythm
-            needNumber = needNumber - data.real_number
-            if (new Date(data.start) >= new Date(data.end)) {
-
-            } else {
-              this.schedulingData[i].gtArray.push(data)
-            }
-          }
-        }
-      }
-    },
-    // 鏃堕棿浼樺厛  鏁版嵁鏍煎紡杞崲
-    timeDataTransition() {
-      // 鎺掗櫎鏈嬀閫夐」
-      for (const i in this.timeTopTempData) {
-        const newArr = []
-        for (const j in this.timeTopTempData[i].gtArray) {
-          if (this.ganttLeftArrId.indexOf(this.timeTopTempData[i].gtArray[j].id) < 0) {
-            newArr.push(this.timeTopTempData[i].gtArray[j])
-          }
-        }
-        this.timeTopTempData[i].gtArray = newArr
-      }
-      let needNumber = this.formBottom.needArrangeNumber // 闇�鎺掓暟閲�
-
-      //  閲岄潰閫昏緫瑕佹悶娓呮 寰堥噸瑕�
-      for (const i in this.timeTopTempData) {
-        let end_arr = []
-        let need_arr = [] // 鎺掔▼鐨勬暟缁�
-
-        let capacity_arr = [] // 瑕佹帓绋嬬殑鏁扮粍
-
-        this.timeTopTempData[i].gtArray.sort((a, b) => new Date(a.end).getTime() - new Date(b.end).getTime())
-
-        end_arr = JSON.parse(JSON.stringify(this.timeTopTempData[i].gtArray.filter(item => item.type === 'h_schedule'))) // 宸叉帓绋嬫暟鎹�
-        need_arr = JSON.parse(JSON.stringify(this.timeTopTempData[i].gtArray.filter(item => item.type === 'capacity'))) // 瀹归噺
-
-        capacity_arr = JSON.parse(JSON.stringify(need_arr)) // 瀹归噺
-
-        // 鑾峰彇鍙帓绋嬬殑鏃堕棿   浠ヤ究鎺ョ潃寰�鍚庢帓绋�    閬嶅巻缁撴潫瑕佸緱鍒扮殑鏄� 褰撳墠鏃ユ湡鍙帓瀹归噺
-        end_arr.forEach((item, index) => { // 宸叉帓绋嬬殑鏁扮粍
-          capacity_arr.forEach((it, ind) => { // 瀹归噺锛堟棩浜ц兘锛�
-            if (item.id === it.id &&
-              new Date(item.start).getTime() >= new Date(it.start).getTime() &&
-              new Date(item.end).getTime() === new Date(it.end).getTime() // new Date(item.end).getTime() <= new Date(it.end).getTime()
-            ) {
-              capacity_arr.splice(ind, 1)
-            }
-          })
-        })
-
-        // continue:琛ㄧず璺冲嚭鏈寰幆锛屼篃灏辨槸涓嶆墽琛屾湰娆″惊鐜痗ontinue涔嬪悗鐨勬搷浣�
-        // break:琛ㄧず璺冲嚭褰撳墠鐨勫惊鐜紝閽堝鏁翠釜寰幆浣撶粓姝㈠悗缁殑閬嶅巻锛�
-        if (!capacity_arr || capacity_arr.length === 0) {
-          continue
-        }
-
-        const schedule_arr = end_arr.filter(item => {
-          const remain = need_arr.some(it => {
-            return (new Date(item.start).getTime() >= new Date(it.start).getTime() &&
-              new Date(item.end).getTime() < new Date(it.end).getTime())
-          })
-
-          return remain
-        })
-
-        // 涓嬮潰閫昏緫寰堥噸瑕�
-        if (schedule_arr && schedule_arr.length > 0) {
-          const scheduleCan = schedule_arr.map(item => {
-            const temp = need_arr.filter(it => {
-              if (it.id === item.id) {
-                return (new Date(item.start).getTime() >= new Date(it.start).getTime() &&
-                  new Date(item.end).getTime() < new Date(it.end).getTime())
-                //   ||
-                // (new Date(item.start).getTime() > new Date(it.start).getTime() &&
-                // new Date(item.end).getTime() < new Date(it.end).getTime())
-              }
-            })[0]
-
-            temp.start = this.MinutesTest(item.end)
-
-            return temp
-          })
-
-          const newSchedule = JSON.parse(JSON.stringify(scheduleCan))
-
-          capacity_arr.forEach(item => {
-            newSchedule.forEach(it => {
-              if (item.id === it.id && new Date(item.start).getTime() < new Date(it.start).getTime()) {
-                item.start = it.start
-              }
-            })
-          })
-        }
-
-        const id_obj = {}
-        if (end_arr != '') {
-          (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end)
-        }
-
-        capacity_arr = this.filterOutTime(capacity_arr) // 杩囨护鎺夊綋鍓嶆椂闂翠箣鍓嶇殑涓嶈兘鎺掔▼
-
-        for (const w in capacity_arr) {
-          const data = {
-            id: capacity_arr[w].id,
-            start: '',
-            end: '',
-            type: 'schedule',
-            cl_name: this.cl_name,
-            cl_code: this.cl_code,
-            work_order: this.work_order,
-            AdvaScheUom: this.AdvaScheUom, // 鍗曚綅
-            number: 0,
-            real_number: 0
-          }
-
-          if (
-            id_obj &&
-            new Date(id_obj.start_time).getTime() >=
-            new Date(capacity_arr[w].start).getTime()
-          ) {
-            if (data.id === id_obj.id) {
-              data.start = this.MinutesTest(id_obj.start_time)
-            } else {
-              data.start = capacity_arr[w].start
-            }
-          } else {
-            data.start = capacity_arr[w].start
-          }
-
-          let nowTime = (capacity_arr[w].rhythm * needNumber) / capacity_arr[w].mod
-
-          const end_time = this.formSeconds(nowTime, data.start)
-
-          data.end = end_time
-          const mistiming = this.compareTime(end_time, capacity_arr[w].end)
-          if (mistiming >= 0) {
-            data.number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000
-            data.real_number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000
-            data.number = data.number.toFixed(0)
-            data.end_num = true
-
-            if (new Date(data.start) >= new Date(data.end)) {
-
-            } else {
-              this.timeTopTempData[i].gtArray.push(data)
-            }
-
-            return false
-          } else {
-            data.end = capacity_arr[w].end
-            data.number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000
-            data.real_number = ((new Date(data.end) - new Date(data.start)) * capacity_arr[w].mod) / capacity_arr[w].rhythm / 1000
-            data.number = data.number.toFixed(0)
-            nowTime = (needNumber - data.real_number) * capacity_arr[w].rhythm
-            needNumber = needNumber - data.real_number
-
-            if (new Date(data.start) >= new Date(data.end)) {
-            } else {
-              this.timeTopTempData[i].gtArray.push(data)
-            }
-          }
-        }
-      }
-    },
-    // 杩囨护鎺夊綋鍓嶆椂闂翠箣鍓嶇殑涓嶈兘鎺掔▼
-    filterOutTime(capacity_arr) {
-      // 杩欓噷瑕佸皢瀹归噺鍜屽綋鍓嶆椂闂村仛瀵规瘮   鍋氭椂闂村鐞�   濡傛灉鍦ㄥ綋鍓嶆椂闂翠箣鍓嶇殑涓嶈兘鎺掔▼
-      capacity_arr.forEach((item, index) => {
-        // 褰撳墠鏃堕棿 澶т簬绛変簬寮�濮嬫椂闂�   涓斿皬浜庣瓑浜庣粨鏉熸椂闂�
-        if (new Date(item.start).getTime() <= new Date(handleDatetime2(new Date())).getTime() && new Date(item.end).getTime() >= new Date(handleDatetime2(new Date())).getTime()) {
-          item.start = handleDatetime2(new Date())
-        }
-        // 褰撳墠鏃堕棿姣斿紑濮嬫椂闂村ぇ  姣旂粨鏉熸椂闂翠篃澶�
-        if (new Date(item.start).getTime() < new Date(handleDatetime2(new Date())).getTime() && new Date(item.end).getTime() < new Date(handleDatetime2(new Date())).getTime()) {
-          item.capacity = false
-        }
-      })
-
-      return capacity_arr.filter(item => item.capacity !== false)
-    },
-
-    // 鏃堕棿浼樺厛 缁欒澶囪浆鎹㈡牸寮�
-    dataTransition() {
-      this.schedulingData = []
-      const data = this.timeTopTempData
-
-      const all = []
-      const list = this.eqpTopTempData
-      for (const i in data) {
-        for (const j in data[i].gtArray) {
-          all.push(data[i].gtArray[j])
-        }
-      }
-
-      for (const i in list) {
-        list[i].gtArray = []
-        this.pushTimes(all, list[i].id, list[i].gtArray)
-      }
-
-      for (const n in list) {
-        if (list[n].gtArray.length === 0) {
-          list[n].status = false
-        }
-      }
-
-      this.schedulingData = list
-    },
-    // 鎻掑叆浜ц兘鏃堕棿娈�
-    pushTimes(newList, id, arr) {
-      for (const i in newList) {
-        if (newList[i].id === id) {
-          arr.push(newList[i])
-        }
-      }
-    },
-    // 鎺掔▼鏂规硶
-    formSeconds(s1, start, mod) {
-      const nowData = new Date(start)
-      // 绠楀嚭褰撳墠鎺掔▼鐨勭粨鏉熸椂闂�
-      return this.transitionTime(
-        new Date(nowData.setSeconds(nowData.getSeconds() + s1))
-      )
-    },
-    // 杞寲鏍囧噯鏃堕棿
-    transitionTime(time) {
-      const d = new Date(time)
-      return (
-        d.getFullYear() +
-        '-' +
-        (d.getMonth() + 1).toString().padStart(2, '0') +
-        '-' +
-        d.getDate().toString().padStart(2, '0') +
-        ' ' +
-        d.getHours().toString().padStart(2, '0') +
-        ':' +
-        d.getMinutes().toString().padStart(2, '0') +
-        ':' +
-        d.getSeconds().toString().padStart(2, '0')
-      )
-    },
-    // 鏃堕棿姣旇緝
-    compareTime(d1, d2, mod) {
-      // d1 鎺掗櫎缁撴潫鏃堕棿  d2 褰撳墠浜ц兘缁撴潫鏃堕棿
-      const time1 = new Date(d1)
-      const time2 = new Date(d2)
-      return parseInt(time2 - time1) / 1000
-    }
-  }
-}
-</script>
-<!--鎺掔▼閮ㄥ垎鐨勬牱寮�-->
-<style scoped>
-body {
-  font-size: 12px;
-  margin: 0;
-  padding: 0;
-  width: 100%;
-  height: 100%;
-}
-
-.box_style {
-  position: relative;
-  top: 40px;
-  left: -91px;
-}
-
-.box_styles {
-  position: relative;
-  top: 40px;
-  left: 0;
-}
-
-/*鑷姩鎺掔▼閮ㄥ垎*/
-.autoScheduling {
-  display: flex;
-  flex-direction: column;
-  /*padding: 0 10px;*/
-  /* height: calc(100vh - 100px); */
-  /*background-color: #f8f8fa;*/
-  background-color: #fff;
-  margin-top: 20px;
-  height: 490px;
-}
-
-.colorDescription {
-  display: flex;
-  padding: 5px 30px 0;
-}
-
-.colorDescriptionItem {
-  display: flex;
-  margin-right: 20px;
-}
-
-label {
-  margin-left: 10px;
-}
-
-input {
-  width: 40px;
-  height: 20px;
-  vertical-align: middle;
-}
-
-input[type="range"] {
-  width: 100px;
-}
-
-.container {
-  display: flex;
-  flex-direction: column;
-  flex: 1;
-}
-
-.tc {
-  text-align: center;
-}
-
-.name {
-  display: flex;
-  box-sizing: border-box;
-  overflow: hidden;
-  height: 100%;
-  width: 100%;
-  padding: 0 5px 0 0;
-  border-radius: 8px 0 0 8px;
-  align-items: center;
-}
-
-.carId {
-  flex: 1;
-}
-
-.tc {
-  color: #909399;
-  font-size: 14px;
-}
-</style>
-
-<!--鍏叡椤甸潰鏍峰紡-->
-<style lang="scss" scoped>
-$main_color: #42b983;
-.elTableDiv {
-  ::v-deep .el-radio__label {
-    display: none;
-  }
-}
-
-::v-deep .el-button--text {
-  font-size: 14px;
-  cursor: pointer;
-}
-
-.el-icon-share, .el-icon-delete, .el-icon-edit-outline {
-  color: $main_color;
-  cursor: pointer;
-}
-
-.el-icon-edit-outline {
-  margin-right: 15px;
-}
-
-::v-deep .el-button--primary, .el-button--default, .el-button--info {
-  height: 34px;
-  display: flex;
-  align-items: center;
-  padding: 0 15px;
-}
-
-::v-deep .el-button--primary {
-  //background-color: $main_color !important;
-}
-
-::v-deep .el-button--default {
-  background-color: #f8f8fa;
-  border: none;
-}
-
-::v-deep .el-input__inner {
-  height: 34px;
-  line-height: 34px;
-  //color: #a7a7a7;
-}
-
-::v-deep .el-dialog__body {
-  padding: 20px 100px !important;
-}
-
-::v-deep .dialogVisibleRoles .el-dialog__body {
-  padding: 20px 20px !important;
-}
-
-::v-deep .importPickerClass .el-dialog__body {
-  padding: 20px 20px !important;
-}
-
-::v-deep .el-dialog__footer {
-  display: flex;
-  justify-content: flex-end;
-}
-
-::v-deep .el-table .caret-wrapper {
-  transform: scale(0.8);
-}
-
-::v-deep .cell {
-  display: flex;
-  align-items: center;
-  justify-content: space-between;
-}
-
-::v-deep .el-table::before {
-  height: 0;
-}
-
-::v-deep .el-table__body-wrapper {
-  background-color: #f8f8fa;
-}
-
-::v-deep .el-table__body .el-table__row.hover-row td {
-  background-color: #eaecef;
-}
-
-::v-deep .el-form--inline .el-form-item__label {
-  color: #a7a7a7;
-}
-
-.body ::v-deep .el-divider {
-  border: 1px solid #eee;
-  width: 99%;
-  margin: 10px auto;
-}
-
-.body ::v-deep .el-form-item {
-  margin-bottom: 0;
-}
-
-.userDialogVisible ::v-deep .el-form-item {
-  margin-bottom: 0;
-}
-
-::v-deep .el-select__caret {
-  display: flex;
-  align-items: center;
-  justify-content: center;
-}
-
-.tableFixed {
-  ::v-deep .el-table__fixed-right {
-    height: 100% !important;
-  }
-
-  ::v-deep .el-table__fixed {
-    height: 100% !important;
-  }
-
-}
-
-::v-deep .gantt-header-title {
-  background-color: #fff;
-  //border-left: 1px solid #eee !important;
-  //border-bottom: 1px solid #eee !important;
-}
-
-</style>
-<style>
-
-.el-table .custom-row {
-  background: #f8f8fa;
-}
-
-</style>
-
-<!--<style>-->
-<!--input[type=range]:focus {-->
-<!--  display: none;-->
-<!--}-->
-
-<!--input[type=range] {-->
-<!--  -webkit-appearance: none;-->
-<!--  width: 500px;-->
-<!--  border-radius: 10px;-->
-<!--  /*杩欎釜灞炴�ц缃娇濉厖杩涘害鏉℃椂鐨勫浘褰负鍦嗚*/-->
-<!--}-->
-
-<!--input[type=range]::-webkit-slider-runnable-track {-->
-<!--  height: 20px;-->
-<!--  border-radius: 10px;-->
-<!--  /*灏嗚建閬撹涓哄渾瑙掔殑*/-->
-<!--  /* box-shadow: 0 1px 1px #def3f8, inset 0 .125em .125em #0d1112; */-->
-<!--  border: solid 1px red;-->
-<!--}-->
-
-<!--input[type=range]::-webkit-slider-thumb {-->
-<!--  -webkit-appearance: none;-->
-<!--  height: 30px;-->
-<!--  width: 120px;-->
-<!--  margin-top: -5px;-->
-<!--  /*浣挎粦鍧楄秴鍑鸿建閬撻儴鍒嗙殑鍋忕Щ閲忕浉绛�*/-->
-<!--  background: #ffffff;-->
-<!--  /* border-radius: 50%; */-->
-<!--  /*澶栬璁剧疆涓哄渾褰�*/-->
-<!--  border: solid 0.125em rgba(205, 224, 230, 0.5);-->
-<!--  /*璁剧疆杈规*/-->
-<!--  /* box-shadow: 0 .125em .125em #3b4547; */-->
-<!--  /*娣诲姞搴曢儴闃村奖*/-->
-<!--}-->
-<!--</style>-->
diff --git a/src/views/xtsy/index.vue b/src/views/systemHome/index.vue
similarity index 100%
rename from src/views/xtsy/index.vue
rename to src/views/systemHome/index.vue
diff --git a/src/views/xtsz/bmgz.vue b/src/views/systemSettings/codingRules.vue
similarity index 100%
rename from src/views/xtsz/bmgz.vue
rename to src/views/systemSettings/codingRules.vue
diff --git a/src/views/xtsz/mmxg.vue b/src/views/systemSettings/passwordEdit.vue
similarity index 100%
rename from src/views/xtsz/mmxg.vue
rename to src/views/systemSettings/passwordEdit.vue
diff --git a/src/views/xtsz/cjgg.vue b/src/views/systemSettings/shopNotice.vue
similarity index 100%
rename from src/views/xtsz/cjgg.vue
rename to src/views/systemSettings/shopNotice.vue
diff --git a/src/views/xtsz/sc.vue b/src/views/systemSettings/sopUpload.vue
similarity index 100%
rename from src/views/xtsz/sc.vue
rename to src/views/systemSettings/sopUpload.vue
diff --git a/src/views/xtsz/xtrz.vue b/src/views/systemSettings/systemLog.vue
similarity index 100%
rename from src/views/xtsz/xtrz.vue
rename to src/views/systemSettings/systemLog.vue
diff --git a/src/views/zlgl/qxtj.vue b/src/views/zlgl/qxtj.vue
deleted file mode 100644
index b532541..0000000
--- a/src/views/zlgl/qxtj.vue
+++ /dev/null
@@ -1,11 +0,0 @@
-<template />
-
-<script>
-export default {
-  name: 'Qxtj'
-}
-</script>
-
-<style scoped>
-
-</style>
diff --git a/src/views/zlgl/wljy.vue b/src/views/zlgl/wljy.vue
deleted file mode 100644
index e69de29..0000000
--- a/src/views/zlgl/wljy.vue
+++ /dev/null
diff --git a/src/views/zlgl/zjbz.vue b/src/views/zlgl/zjbz.vue
deleted file mode 100644
index e69de29..0000000
--- a/src/views/zlgl/zjbz.vue
+++ /dev/null

--
Gitblit v1.9.3