From 1e06a27a4475d6966b58375160ba2d81c6e7df86 Mon Sep 17 00:00:00 2001 From: liangzhou <594755172@qq.com> Date: Sat, 8 Mar 2025 10:09:47 +0800 Subject: [PATCH] =?UTF-8?q?=E5=88=9D=E7=89=88=E4=BD=9C=E6=88=90?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/.gitignore | 8 + .idea/compiler.xml | 18 + .idea/encodings.xml | 6 + .idea/jarRepositories.xml | 20 + .idea/misc.xml | 12 + .idea/vcs.xml | 6 + mvnw | 259 ++ mvnw.cmd | 149 + pom.xml | 169 + .../java/com/wms_main/WmsMainApplication.java | 13 + src/main/java/com/wms_main/app/AppCommon.java | 150 + .../com/wms_main/app/AppStartComplete.java | 12 + .../wms_main/config/MybatisPlusConfig.java | 32 + .../com/wms_main/config/ResourceConfig.java | 17 + .../advice/WmsControllerExceptionHandler.java | 60 + .../com/wms_main/constant/AppConstant.java | 23 + .../constant/enums/jobs/JobStatusEnums.java | 17 + .../enums/jobs/JobTimerTypeEnums.java | 14 + .../constant/enums/others/DbsStatusEnums.java | 14 + .../enums/wcs/WcsApiResponseCodeEnums.java | 14 + .../enums/wcs/WcsConveyTaskTypeEnums.java | 18 + .../enums/wcs/WcsStackerTaskStatusEnums.java | 23 + .../enums/wcs/WcsStackerTaskTypeEnums.java | 18 + .../constant/enums/wms/AppConfigKeyEnums.java | 22 + .../enums/wms/WmsApiResponseCodeEnums.java | 15 + .../enums/wms/WmsGoodsStatusEnums.java | 18 + .../wms/WmsLocationOccupyStatusEnums.java | 17 + .../constant/enums/wms/WmsLockEnums.java | 17 + .../constant/enums/wms/WmsOutTypeEnums.java | 19 + .../enums/wms/WmsPickTaskStatusEnum.java | 22 + .../enums/wms/WmsStackerTaskStatusEnums.java | 22 + .../enums/wms/WmsStockStatusEnums.java | 20 + .../constant/enums/wms/WmsTaskTypeEnums.java | 18 + .../enums/wms/WmsUsableStatusEnums.java | 18 + .../enums/wms/WmsVehicleStatusEnums.java | 18 + .../controller/wms/ExcelController.java | 133 + .../controller/wms/GoodsController.java | 31 + .../controller/wms/JobController.java | 18 + .../controller/wms/KateWorkController.java | 142 + .../controller/wms/LocationController.java | 29 + .../controller/wms/LoginController.java | 45 + .../controller/wms/StockController.java | 35 + .../controller/wms/TaskController.java | 107 + .../controller/wms/TestController.java | 99 + .../controller/wms/UserController.java | 18 + .../controller/wms/mes/MesController.java | 18 + .../com/wms_main/dao/ITAppConfigService.java | 10 + .../com/wms_main/dao/ITAppDbsService.java | 18 + .../wms_main/dao/ITAppEquipmentService.java | 10 + .../com/wms_main/dao/ITAppGoodsService.java | 11 + .../com/wms_main/dao/ITAppImageService.java | 14 + .../com/wms_main/dao/ITAppJobsService.java | 19 + .../com/wms_main/dao/ITAppKanbanService.java | 10 + .../wms_main/dao/ITAppLocationService.java | 10 + .../wms_main/dao/ITAppOutsRecordService.java | 7 + .../com/wms_main/dao/ITAppOutsService.java | 7 + .../wms_main/dao/ITAppPickPlanService.java | 7 + .../wms_main/dao/ITAppPickTaskBakService.java | 10 + .../wms_main/dao/ITAppPickTaskService.java | 10 + .../dao/ITAppProductExtendService.java | 14 + .../com/wms_main/dao/ITAppProductService.java | 14 + .../dao/ITAppSingleProductService.java | 13 + .../com/wms_main/dao/ITAppStandService.java | 10 + .../wms_main/dao/ITAppStandWorkService.java | 11 + .../com/wms_main/dao/ITAppStockService.java | 10 + .../wms_main/dao/ITAppStockUpdateService.java | 7 + .../com/wms_main/dao/ITAppTaskBakService.java | 10 + .../com/wms_main/dao/ITAppTaskService.java | 10 + .../com/wms_main/dao/ITAppVehicleService.java | 10 + .../wms_main/dao/ITAppWcsTaskBakService.java | 10 + .../com/wms_main/dao/ITAppWcsTaskService.java | 10 + .../wms_main/dao/ITAppWorkRecordService.java | 11 + .../com/wms_main/dao/ITAppWorkService.java | 10 + .../com/wms_main/dao/ITSysMenuService.java | 18 + .../wms_main/dao/ITSysPermissionService.java | 10 + .../com/wms_main/dao/ITSysRoleService.java | 10 + .../com/wms_main/dao/ITSysUserService.java | 24 + .../dao/impl/TAppConfigServiceImpl.java | 14 + .../wms_main/dao/impl/TAppDbsServiceImpl.java | 67 + .../dao/impl/TAppEquipmentServiceImpl.java | 14 + .../dao/impl/TAppGoodsServiceImpl.java | 14 + .../dao/impl/TAppImageServiceImpl.java | 23 + .../dao/impl/TAppJobsServiceImpl.java | 70 + .../dao/impl/TAppKanbanServiceImpl.java | 14 + .../dao/impl/TAppLocationServiceImpl.java | 14 + .../dao/impl/TAppOutsRecordServiceImpl.java | 11 + .../dao/impl/TAppOutsServiceImpl.java | 11 + .../dao/impl/TAppPickPlanServiceImpl.java | 11 + .../dao/impl/TAppPickTaskBakServiceImpl.java | 14 + .../dao/impl/TAppPickTaskServiceImpl.java | 14 + .../impl/TAppProductExtendServiceImpl.java | 23 + .../dao/impl/TAppProductServiceImpl.java | 24 + .../impl/TAppSingleProductServiceImpl.java | 20 + .../dao/impl/TAppStandServiceImpl.java | 14 + .../dao/impl/TAppStandWorkServiceImpl.java | 14 + .../dao/impl/TAppStockServiceImpl.java | 14 + .../dao/impl/TAppStockUpdateServiceImpl.java | 11 + .../dao/impl/TAppTaskBakServiceImpl.java | 14 + .../dao/impl/TAppTaskServiceImpl.java | 14 + .../dao/impl/TAppVehicleServiceImpl.java | 14 + .../dao/impl/TAppWcsTaskBakServiceImpl.java | 14 + .../dao/impl/TAppWcsTaskServiceImpl.java | 14 + .../dao/impl/TAppWorkRecordServiceImpl.java | 14 + .../dao/impl/TAppWorkServiceImpl.java | 11 + .../dao/impl/TSysMenuServiceImpl.java | 34 + .../dao/impl/TSysPermissionServiceImpl.java | 14 + .../dao/impl/TSysRoleServiceImpl.java | 14 + .../dao/impl/TSysUserServiceImpl.java | 35 + src/main/java/com/wms_main/excel/ReadMe.md | 0 .../converter/TaskStatusConvertor.java | 83 + .../converter/TaskTypeConvertor.java | 62 + .../easyexcel/style/ExcelContentStyle.java | 30 + .../excelTemplate/DbsExcelTemplate.java | 83 + .../excelTemplate/GoodsExcelTemplate.java | 71 + .../excelTemplate/ImageExcelTemplate.java | 20 + .../easypoi/excelTemplate/ImageTemplate.java | 19 + .../excelTemplate/KanbanExcelTemplate.java | 26 + .../excelTemplate/ProductExcelTemplate.java | 51 + .../ProductExtendExcelTemplate.java | 31 + .../SingleProductExcelTemplate.java | 51 + .../easypoi/service/IExportExcelEasyPoi.java | 29 + .../easypoi/service/IImportExcelEasyPoi.java | 69 + .../serviceImpl/ExportExcelEasyPoi.java | 212 + .../serviceImpl/ImportExcelEasyPoi.java | 664 +++ .../com/wms_main/filter/RequestLogFilter.java | 65 + .../com/wms_main/mapper/AppConfigMapper.java | 12 + .../com/wms_main/mapper/AppDbsMapper.java | 12 + .../wms_main/mapper/AppEquipmentMapper.java | 12 + .../com/wms_main/mapper/AppGoodsMapper.java | 12 + .../com/wms_main/mapper/AppImageMapper.java | 13 + .../com/wms_main/mapper/AppJobsMapper.java | 12 + .../com/wms_main/mapper/AppKanbanMapper.java | 12 + .../wms_main/mapper/AppLocationMapper.java | 12 + .../com/wms_main/mapper/AppOutsMapper.java | 9 + .../wms_main/mapper/AppOutsRecordMapper.java | 9 + .../wms_main/mapper/AppPickPlanMapper.java | 9 + .../wms_main/mapper/AppPickTaskBakMapper.java | 12 + .../wms_main/mapper/AppPickTaskMapper.java | 12 + .../mapper/AppProductExtendsMapper.java | 13 + .../com/wms_main/mapper/AppProductMapper.java | 12 + .../mapper/AppSingleProductMapper.java | 13 + .../com/wms_main/mapper/AppStandMapper.java | 12 + .../wms_main/mapper/AppStandWorkMapper.java | 13 + .../com/wms_main/mapper/AppStockMapper.java | 12 + .../wms_main/mapper/AppStockUpdateMapper.java | 9 + .../com/wms_main/mapper/AppTaskBakMapper.java | 12 + .../com/wms_main/mapper/AppTaskMapper.java | 12 + .../com/wms_main/mapper/AppVehicleMapper.java | 12 + .../wms_main/mapper/AppWcsTaskBakMapper.java | 12 + .../com/wms_main/mapper/AppWcsTaskMapper.java | 12 + .../com/wms_main/mapper/AppWorkMapper.java | 12 + .../wms_main/mapper/AppWorkRecordMapper.java | 13 + .../com/wms_main/mapper/SysMenuMapper.java | 15 + .../wms_main/mapper/SysPermissionMapper.java | 12 + .../com/wms_main/mapper/SysRoleMapper.java | 12 + .../com/wms_main/mapper/SysUserMapper.java | 12 + .../wms_main/model/bo/wcs/WcsPickTask.java | 34 + .../wms_main/model/bo/wcs/WcsStackerTask.java | 38 + .../com/wms_main/model/bo/wms/BoxSummary.java | 73 + .../model/bo/wms/GoodsInfoForTask.java | 37 + .../model/bo/wms/GoodsLackSummary.java | 35 + .../model/bo/wms/OrderConfirmEntity.java | 50 + .../model/bo/wms/StockConfirmEntity.java | 55 + .../model/bo/wms/TaskConfirmEntity.java | 50 + .../wms_main/model/bo/wms/WmsPickTask.java | 62 + .../wms_main/model/dto/query/DbsQuery.java | 79 + .../wms_main/model/dto/query/GoodsQuery.java | 27 + .../wms_main/model/dto/query/ImageQuery.java | 34 + .../wms_main/model/dto/query/KanbanQuery.java | 32 + .../model/dto/query/KateWorksQuery.java | 49 + .../model/dto/query/KittingBomQuery.java | 44 + .../dto/query/KittingBomRelationQuery.java | 32 + .../model/dto/query/LocationQuery.java | 22 + .../wms_main/model/dto/query/PageQuery.java | 58 + .../wms_main/model/dto/query/StockQuery.java | 60 + .../dto/request/wcs/WcsBoxArriveRequest.java | 35 + .../dto/request/wcs/WcsPickTaskRequest.java | 40 + .../dto/request/wcs/WcsReleaseBoxRequest.java | 32 + .../request/wcs/WcsStackerTaskRequest.java | 76 + .../dto/request/wcs/WcsTaskResultRequest.java | 40 + .../dto/request/wcs/WcsVehicleInRequest.java | 32 + .../model/dto/request/wms/BaseWmsRequest.java | 22 + .../dto/request/wms/ConfirmTaskRequest.java | 29 + .../dto/request/wms/ConfirmWorkRequest.java | 29 + .../wms/GenKanbanRequirementRequest.java | 29 + .../dto/request/wms/InitKateWorkRequest.java | 53 + .../model/dto/request/wms/LoginRequest.java | 21 + .../dto/request/wms/PickTaskRequest.java | 25 + .../model/dto/request/wms/StockInRequest.java | 40 + .../dto/request/wms/StockOutRequest.java | 42 + .../dto/response/wcs/BaseWcsApiResponse.java | 51 + .../dto/response/wcs/WcsApiResponse.java | 70 + .../dto/response/wms/BaseWmsApiResponse.java | 77 + .../response/wms/InitKateWorkResponse.java | 66 + .../dto/response/wms/WmsApiResponse.java | 68 + .../wms_main/model/po/BaseImportEntity.java | 37 + .../com/wms_main/model/po/TAppConfig.java | 46 + .../java/com/wms_main/model/po/TAppDbs.java | 118 + .../com/wms_main/model/po/TAppEquipment.java | 55 + .../java/com/wms_main/model/po/TAppGoods.java | 77 + .../java/com/wms_main/model/po/TAppImage.java | 58 + .../java/com/wms_main/model/po/TAppJobs.java | 55 + .../com/wms_main/model/po/TAppKanban.java | 49 + .../com/wms_main/model/po/TAppLocation.java | 92 + .../java/com/wms_main/model/po/TAppOuts.java | 63 + .../com/wms_main/model/po/TAppOutsRecord.java | 63 + .../com/wms_main/model/po/TAppPickPlan.java | 55 + .../com/wms_main/model/po/TAppPickTask.java | 60 + .../wms_main/model/po/TAppPickTaskBak.java | 60 + .../com/wms_main/model/po/TAppProduct.java | 60 + .../wms_main/model/po/TAppProductExtend.java | 40 + .../wms_main/model/po/TAppSingleProduct.java | 60 + .../java/com/wms_main/model/po/TAppStand.java | 60 + .../com/wms_main/model/po/TAppStandWork.java | 90 + .../java/com/wms_main/model/po/TAppStock.java | 102 + .../wms_main/model/po/TAppStockUpdate.java | 65 + .../java/com/wms_main/model/po/TAppTask.java | 106 + .../com/wms_main/model/po/TAppTaskBak.java | 106 + .../com/wms_main/model/po/TAppVehicle.java | 55 + .../com/wms_main/model/po/TAppWcsTask.java | 75 + .../com/wms_main/model/po/TAppWcsTaskBak.java | 75 + .../java/com/wms_main/model/po/TAppWork.java | 109 + .../com/wms_main/model/po/TAppWorkRecord.java | 101 + .../java/com/wms_main/model/po/TSysMenu.java | 43 + .../com/wms_main/model/po/TSysPermission.java | 33 + .../java/com/wms_main/model/po/TSysRole.java | 65 + .../java/com/wms_main/model/po/TSysUser.java | 80 + .../wms_main/model/pojo/log/RequestLog.java | 49 + .../com/wms_main/model/vo/others/FileVo.java | 45 + .../wms_main/model/vo/wms/BaseImportVo.java | 37 + .../wms_main/model/vo/wms/BoxDetailVo.java | 29 + .../java/com/wms_main/model/vo/wms/DbsVo.java | 159 + .../com/wms_main/model/vo/wms/GoodsVo.java | 62 + .../com/wms_main/model/vo/wms/ImageVo.java | 58 + .../com/wms_main/model/vo/wms/KanbanVo.java | 50 + .../model/vo/wms/KateWorkOptionsVo.java | 43 + .../com/wms_main/model/vo/wms/KateWorkVo.java | 58 + .../model/vo/wms/KittingBomRelationVo.java | 52 + .../wms_main/model/vo/wms/KittingBomVo.java | 104 + .../com/wms_main/model/vo/wms/MenuVo.java | 42 + .../com/wms_main/model/vo/wms/PageVo.java | 54 + .../com/wms_main/model/vo/wms/StandVo.java | 25 + .../com/wms_main/model/vo/wms/StockVo.java | 133 + .../wms_main/model/vo/wms/TaskConfirmVo.java | 27 + .../wms_main/model/vo/wms/UserLoginVo.java | 32 + .../com/wms_main/model/vo/wms/UserVo.java | 44 + .../wms_main/model/vo/wms/WorkConfirmVo.java | 27 + .../java/com/wms_main/quartz/JobStarter.java | 17 + .../java/com/wms_main/quartz/JobUtils.java | 141 + .../com/wms_main/quartz/config/JobBean.java | 46 + .../wms_main/repository/http/HttpClient.java | 202 + .../repository/http/entity/HttpRequest.java | 71 + .../repository/http/entity/HttpResponse.java | 59 + .../repository/http/enums/HttpMethodEnum.java | 21 + .../com/wms_main/repository/pdf/ReadMe.md | 0 .../wms_main/repository/tcp/TcpClient.java | 227 + .../com/wms_main/repository/tcp/TcpEvent.java | 45 + .../tcp/constant/SocketStatusEnum.java | 20 + .../tcp/model/po/SocketServerData.java | 52 + .../com/wms_main/repository/tuple/Tuple2.java | 19 + .../com/wms_main/repository/tuple/Tuple3.java | 19 + .../repository/utils/ConvertUtils.java | 66 + .../repository/utils/StringUtils.java | 248 + .../wms_main/repository/utils/UUIDUtils.java | 43 + .../wms_main/service/api/IWcsApiService.java | 42 + .../api/serviceImpl/WcsApiServiceImpl.java | 99 + .../service/business/IConveyTaskService.java | 52 + .../service/business/IStackerTaskService.java | 45 + .../service/business/IStockDataService.java | 30 + .../serviceImpl/ConveyTaskServiceImpl.java | 439 ++ .../serviceImpl/StackerTaskServiceImpl.java | 701 +++ .../serviceImpl/StockDataServiceImpl.java | 138 + .../controller/IGoodsControllerService.java | 19 + .../controller/IJobControllerService.java | 4 + .../IKateWorkControllerService.java | 101 + .../ILocationControllerService.java | 16 + .../controller/ILoginControllerService.java | 21 + .../controller/IStockControllerService.java | 18 + .../controller/ITaskControllerService.java | 73 + .../controller/ITestControllerService.java | 17 + .../controller/IUserControllerService.java | 7 + .../GoodsControllerServiceImpl.java | 49 + .../serviceImpl/JobControllerServiceImpl.java | 8 + .../KateWorkControllerServiceImpl.java | 1184 +++++ .../LocationControllerServiceImpl.java | 65 + .../LoginControllerServiceImpl.java | 176 + .../StockControllerServiceImpl.java | 51 + .../TaskControllerServiceImpl.java | 655 +++ .../TestControllerServiceImpl.java | 60 + .../UserControllerServiceImpl.java | 12 + .../service/quartz_job/IJobService.java | 21 + .../quartz_job/IOutsExecutorService.java | 23 + .../quartz_job/job_executor/DataSolver.java | 27 + .../quartz_job/job_executor/JobTest.java | 30 + .../quartz_job/job_executor/OutsExecutor.java | 55 + .../job_executor/WcsPickTaskSender.java | 81 + .../job_executor/WcsStackerTaskSender.java | 107 + .../job_executor/WmsTaskExecutor.java | 185 + .../job_executor/WmsTaskFinisher.java | 70 + .../serviceImpl/JobServiceImpl.java | 99 + .../serviceImpl/OutsExecutorServiceImpl.java | 1027 +++++ src/main/resources/application.yml | 51 + src/main/resources/logback-spring.xml | 114 + src/main/resources/mapper/AppConfigMapper.xml | 5 + src/main/resources/mapper/AppDbsMapper.xml | 5 + .../resources/mapper/AppEquipmentMapper.xml | 5 + src/main/resources/mapper/AppGoodsMapper.xml | 5 + src/main/resources/mapper/AppImageMapper.xml | 5 + src/main/resources/mapper/AppJobsMapper.xml | 5 + src/main/resources/mapper/AppKanbanMapper.xml | 5 + .../resources/mapper/AppLocationMapper.xml | 5 + src/main/resources/mapper/AppOutsMapper.xml | 5 + .../resources/mapper/AppOutsRecordMapper.xml | 5 + .../resources/mapper/AppPickPlanMapper.xml | 5 + .../resources/mapper/AppPickTaskBakMapper.xml | 5 + .../resources/mapper/AppPickTaskMapper.xml | 5 + .../mapper/AppProductExtendMapper.xml | 5 + .../resources/mapper/AppProductMapper.xml | 5 + .../mapper/AppSingleProductMapper.xml | 5 + src/main/resources/mapper/AppStandMapper.xml | 5 + .../resources/mapper/AppStandWorkMapper.xml | 5 + src/main/resources/mapper/AppStockMapper.xml | 5 + .../resources/mapper/AppStockUpdateMapper.xml | 5 + .../resources/mapper/AppTaskBakMapper.xml | 5 + src/main/resources/mapper/AppTaskMapper.xml | 5 + .../resources/mapper/AppVehicleMapper.xml | 5 + .../resources/mapper/AppWcsTaskBakMapper.xml | 5 + .../resources/mapper/AppWcsTaskMapper.xml | 5 + src/main/resources/mapper/AppWorkMapper.xml | 5 + .../resources/mapper/AppWorkRecordMapper.xml | 5 + src/main/resources/mapper/SysMenuMapper.xml | 10 + .../resources/mapper/SysPermissionMapper.xml | 5 + src/main/resources/mapper/SysRoleMapper.xml | 5 + src/main/resources/mapper/SysUserMapper.xml | 5 + src/main/resources/sql/wms_kate_wuxi.sql | 4046 +++++++++++++++++ .../wms_main/DevWmsServeApplicationTests.java | 13 + 336 files changed, 21443 insertions(+) create mode 100644 .idea/.gitignore create mode 100644 .idea/compiler.xml create mode 100644 .idea/encodings.xml create mode 100644 .idea/jarRepositories.xml create mode 100644 .idea/misc.xml create mode 100644 .idea/vcs.xml create mode 100644 mvnw create mode 100644 mvnw.cmd create mode 100644 pom.xml create mode 100644 src/main/java/com/wms_main/WmsMainApplication.java create mode 100644 src/main/java/com/wms_main/app/AppCommon.java create mode 100644 src/main/java/com/wms_main/app/AppStartComplete.java create mode 100644 src/main/java/com/wms_main/config/MybatisPlusConfig.java create mode 100644 src/main/java/com/wms_main/config/ResourceConfig.java create mode 100644 src/main/java/com/wms_main/config/advice/WmsControllerExceptionHandler.java create mode 100644 src/main/java/com/wms_main/constant/AppConstant.java create mode 100644 src/main/java/com/wms_main/constant/enums/jobs/JobStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/jobs/JobTimerTypeEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/others/DbsStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wcs/WcsApiResponseCodeEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wcs/WcsConveyTaskTypeEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskTypeEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/AppConfigKeyEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsApiResponseCodeEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsGoodsStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsLocationOccupyStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsLockEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsOutTypeEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsPickTaskStatusEnum.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsStackerTaskStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsStockStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsTaskTypeEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsUsableStatusEnums.java create mode 100644 src/main/java/com/wms_main/constant/enums/wms/WmsVehicleStatusEnums.java create mode 100644 src/main/java/com/wms_main/controller/wms/ExcelController.java create mode 100644 src/main/java/com/wms_main/controller/wms/GoodsController.java create mode 100644 src/main/java/com/wms_main/controller/wms/JobController.java create mode 100644 src/main/java/com/wms_main/controller/wms/KateWorkController.java create mode 100644 src/main/java/com/wms_main/controller/wms/LocationController.java create mode 100644 src/main/java/com/wms_main/controller/wms/LoginController.java create mode 100644 src/main/java/com/wms_main/controller/wms/StockController.java create mode 100644 src/main/java/com/wms_main/controller/wms/TaskController.java create mode 100644 src/main/java/com/wms_main/controller/wms/TestController.java create mode 100644 src/main/java/com/wms_main/controller/wms/UserController.java create mode 100644 src/main/java/com/wms_main/controller/wms/mes/MesController.java create mode 100644 src/main/java/com/wms_main/dao/ITAppConfigService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppDbsService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppEquipmentService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppGoodsService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppImageService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppJobsService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppKanbanService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppLocationService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppOutsRecordService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppOutsService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppPickPlanService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppPickTaskBakService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppPickTaskService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppProductExtendService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppProductService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppSingleProductService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppStandService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppStandWorkService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppStockService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppStockUpdateService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppTaskBakService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppTaskService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppVehicleService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppWcsTaskBakService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppWcsTaskService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppWorkRecordService.java create mode 100644 src/main/java/com/wms_main/dao/ITAppWorkService.java create mode 100644 src/main/java/com/wms_main/dao/ITSysMenuService.java create mode 100644 src/main/java/com/wms_main/dao/ITSysPermissionService.java create mode 100644 src/main/java/com/wms_main/dao/ITSysRoleService.java create mode 100644 src/main/java/com/wms_main/dao/ITSysUserService.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppConfigServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppDbsServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppEquipmentServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppGoodsServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppImageServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppJobsServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppKanbanServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppLocationServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppOutsRecordServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppOutsServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppPickPlanServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppPickTaskBakServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppPickTaskServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppProductExtendServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppProductServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppSingleProductServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppStandServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppStandWorkServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppStockServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppStockUpdateServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppTaskBakServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppTaskServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppVehicleServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppWcsTaskBakServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppWcsTaskServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppWorkRecordServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TAppWorkServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TSysMenuServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TSysPermissionServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TSysRoleServiceImpl.java create mode 100644 src/main/java/com/wms_main/dao/impl/TSysUserServiceImpl.java create mode 100644 src/main/java/com/wms_main/excel/ReadMe.md create mode 100644 src/main/java/com/wms_main/excel/easyexcel/converter/TaskStatusConvertor.java create mode 100644 src/main/java/com/wms_main/excel/easyexcel/converter/TaskTypeConvertor.java create mode 100644 src/main/java/com/wms_main/excel/easyexcel/style/ExcelContentStyle.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/DbsExcelTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/GoodsExcelTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageExcelTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/KanbanExcelTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExcelTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExtendExcelTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/excelTemplate/SingleProductExcelTemplate.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/service/IExportExcelEasyPoi.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/service/IImportExcelEasyPoi.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ExportExcelEasyPoi.java create mode 100644 src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ImportExcelEasyPoi.java create mode 100644 src/main/java/com/wms_main/filter/RequestLogFilter.java create mode 100644 src/main/java/com/wms_main/mapper/AppConfigMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppDbsMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppEquipmentMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppGoodsMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppImageMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppJobsMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppKanbanMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppLocationMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppOutsMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppOutsRecordMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppPickPlanMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppPickTaskBakMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppPickTaskMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppProductExtendsMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppProductMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppSingleProductMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppStandMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppStandWorkMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppStockMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppStockUpdateMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppTaskBakMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppTaskMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppVehicleMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppWcsTaskBakMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppWcsTaskMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppWorkMapper.java create mode 100644 src/main/java/com/wms_main/mapper/AppWorkRecordMapper.java create mode 100644 src/main/java/com/wms_main/mapper/SysMenuMapper.java create mode 100644 src/main/java/com/wms_main/mapper/SysPermissionMapper.java create mode 100644 src/main/java/com/wms_main/mapper/SysRoleMapper.java create mode 100644 src/main/java/com/wms_main/mapper/SysUserMapper.java create mode 100644 src/main/java/com/wms_main/model/bo/wcs/WcsPickTask.java create mode 100644 src/main/java/com/wms_main/model/bo/wcs/WcsStackerTask.java create mode 100644 src/main/java/com/wms_main/model/bo/wms/BoxSummary.java create mode 100644 src/main/java/com/wms_main/model/bo/wms/GoodsInfoForTask.java create mode 100644 src/main/java/com/wms_main/model/bo/wms/GoodsLackSummary.java create mode 100644 src/main/java/com/wms_main/model/bo/wms/OrderConfirmEntity.java create mode 100644 src/main/java/com/wms_main/model/bo/wms/StockConfirmEntity.java create mode 100644 src/main/java/com/wms_main/model/bo/wms/TaskConfirmEntity.java create mode 100644 src/main/java/com/wms_main/model/bo/wms/WmsPickTask.java create mode 100644 src/main/java/com/wms_main/model/dto/query/DbsQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/GoodsQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/ImageQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/KanbanQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/KateWorksQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/KittingBomQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/KittingBomRelationQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/LocationQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/PageQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/query/StockQuery.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wcs/WcsBoxArriveRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wcs/WcsPickTaskRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wcs/WcsReleaseBoxRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wcs/WcsStackerTaskRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wcs/WcsTaskResultRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wcs/WcsVehicleInRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/BaseWmsRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/ConfirmTaskRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/ConfirmWorkRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/GenKanbanRequirementRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/InitKateWorkRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/LoginRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/PickTaskRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/StockInRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/request/wms/StockOutRequest.java create mode 100644 src/main/java/com/wms_main/model/dto/response/wcs/BaseWcsApiResponse.java create mode 100644 src/main/java/com/wms_main/model/dto/response/wcs/WcsApiResponse.java create mode 100644 src/main/java/com/wms_main/model/dto/response/wms/BaseWmsApiResponse.java create mode 100644 src/main/java/com/wms_main/model/dto/response/wms/InitKateWorkResponse.java create mode 100644 src/main/java/com/wms_main/model/dto/response/wms/WmsApiResponse.java create mode 100644 src/main/java/com/wms_main/model/po/BaseImportEntity.java create mode 100644 src/main/java/com/wms_main/model/po/TAppConfig.java create mode 100644 src/main/java/com/wms_main/model/po/TAppDbs.java create mode 100644 src/main/java/com/wms_main/model/po/TAppEquipment.java create mode 100644 src/main/java/com/wms_main/model/po/TAppGoods.java create mode 100644 src/main/java/com/wms_main/model/po/TAppImage.java create mode 100644 src/main/java/com/wms_main/model/po/TAppJobs.java create mode 100644 src/main/java/com/wms_main/model/po/TAppKanban.java create mode 100644 src/main/java/com/wms_main/model/po/TAppLocation.java create mode 100644 src/main/java/com/wms_main/model/po/TAppOuts.java create mode 100644 src/main/java/com/wms_main/model/po/TAppOutsRecord.java create mode 100644 src/main/java/com/wms_main/model/po/TAppPickPlan.java create mode 100644 src/main/java/com/wms_main/model/po/TAppPickTask.java create mode 100644 src/main/java/com/wms_main/model/po/TAppPickTaskBak.java create mode 100644 src/main/java/com/wms_main/model/po/TAppProduct.java create mode 100644 src/main/java/com/wms_main/model/po/TAppProductExtend.java create mode 100644 src/main/java/com/wms_main/model/po/TAppSingleProduct.java create mode 100644 src/main/java/com/wms_main/model/po/TAppStand.java create mode 100644 src/main/java/com/wms_main/model/po/TAppStandWork.java create mode 100644 src/main/java/com/wms_main/model/po/TAppStock.java create mode 100644 src/main/java/com/wms_main/model/po/TAppStockUpdate.java create mode 100644 src/main/java/com/wms_main/model/po/TAppTask.java create mode 100644 src/main/java/com/wms_main/model/po/TAppTaskBak.java create mode 100644 src/main/java/com/wms_main/model/po/TAppVehicle.java create mode 100644 src/main/java/com/wms_main/model/po/TAppWcsTask.java create mode 100644 src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java create mode 100644 src/main/java/com/wms_main/model/po/TAppWork.java create mode 100644 src/main/java/com/wms_main/model/po/TAppWorkRecord.java create mode 100644 src/main/java/com/wms_main/model/po/TSysMenu.java create mode 100644 src/main/java/com/wms_main/model/po/TSysPermission.java create mode 100644 src/main/java/com/wms_main/model/po/TSysRole.java create mode 100644 src/main/java/com/wms_main/model/po/TSysUser.java create mode 100644 src/main/java/com/wms_main/model/pojo/log/RequestLog.java create mode 100644 src/main/java/com/wms_main/model/vo/others/FileVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/BaseImportVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/BoxDetailVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/DbsVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/GoodsVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/ImageVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/KanbanVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/KateWorkOptionsVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/KateWorkVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/KittingBomRelationVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/KittingBomVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/MenuVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/PageVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/StandVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/StockVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/TaskConfirmVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/UserLoginVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/UserVo.java create mode 100644 src/main/java/com/wms_main/model/vo/wms/WorkConfirmVo.java create mode 100644 src/main/java/com/wms_main/quartz/JobStarter.java create mode 100644 src/main/java/com/wms_main/quartz/JobUtils.java create mode 100644 src/main/java/com/wms_main/quartz/config/JobBean.java create mode 100644 src/main/java/com/wms_main/repository/http/HttpClient.java create mode 100644 src/main/java/com/wms_main/repository/http/entity/HttpRequest.java create mode 100644 src/main/java/com/wms_main/repository/http/entity/HttpResponse.java create mode 100644 src/main/java/com/wms_main/repository/http/enums/HttpMethodEnum.java create mode 100644 src/main/java/com/wms_main/repository/pdf/ReadMe.md create mode 100644 src/main/java/com/wms_main/repository/tcp/TcpClient.java create mode 100644 src/main/java/com/wms_main/repository/tcp/TcpEvent.java create mode 100644 src/main/java/com/wms_main/repository/tcp/constant/SocketStatusEnum.java create mode 100644 src/main/java/com/wms_main/repository/tcp/model/po/SocketServerData.java create mode 100644 src/main/java/com/wms_main/repository/tuple/Tuple2.java create mode 100644 src/main/java/com/wms_main/repository/tuple/Tuple3.java create mode 100644 src/main/java/com/wms_main/repository/utils/ConvertUtils.java create mode 100644 src/main/java/com/wms_main/repository/utils/StringUtils.java create mode 100644 src/main/java/com/wms_main/repository/utils/UUIDUtils.java create mode 100644 src/main/java/com/wms_main/service/api/IWcsApiService.java create mode 100644 src/main/java/com/wms_main/service/api/serviceImpl/WcsApiServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/business/IConveyTaskService.java create mode 100644 src/main/java/com/wms_main/service/business/IStackerTaskService.java create mode 100644 src/main/java/com/wms_main/service/business/IStockDataService.java create mode 100644 src/main/java/com/wms_main/service/business/serviceImpl/ConveyTaskServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/business/serviceImpl/StockDataServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/IGoodsControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/IJobControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/IKateWorkControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/ILocationControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/ILoginControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/IStockControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/ITaskControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/ITestControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/IUserControllerService.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/JobControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/KateWorkControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/TestControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/controller/serviceImpl/UserControllerServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/IJobService.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/IOutsExecutorService.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/job_executor/DataSolver.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/job_executor/JobTest.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/job_executor/OutsExecutor.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/job_executor/WcsPickTaskSender.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/job_executor/WcsStackerTaskSender.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskExecutor.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskFinisher.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/serviceImpl/JobServiceImpl.java create mode 100644 src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java create mode 100644 src/main/resources/application.yml create mode 100644 src/main/resources/logback-spring.xml create mode 100644 src/main/resources/mapper/AppConfigMapper.xml create mode 100644 src/main/resources/mapper/AppDbsMapper.xml create mode 100644 src/main/resources/mapper/AppEquipmentMapper.xml create mode 100644 src/main/resources/mapper/AppGoodsMapper.xml create mode 100644 src/main/resources/mapper/AppImageMapper.xml create mode 100644 src/main/resources/mapper/AppJobsMapper.xml create mode 100644 src/main/resources/mapper/AppKanbanMapper.xml create mode 100644 src/main/resources/mapper/AppLocationMapper.xml create mode 100644 src/main/resources/mapper/AppOutsMapper.xml create mode 100644 src/main/resources/mapper/AppOutsRecordMapper.xml create mode 100644 src/main/resources/mapper/AppPickPlanMapper.xml create mode 100644 src/main/resources/mapper/AppPickTaskBakMapper.xml create mode 100644 src/main/resources/mapper/AppPickTaskMapper.xml create mode 100644 src/main/resources/mapper/AppProductExtendMapper.xml create mode 100644 src/main/resources/mapper/AppProductMapper.xml create mode 100644 src/main/resources/mapper/AppSingleProductMapper.xml create mode 100644 src/main/resources/mapper/AppStandMapper.xml create mode 100644 src/main/resources/mapper/AppStandWorkMapper.xml create mode 100644 src/main/resources/mapper/AppStockMapper.xml create mode 100644 src/main/resources/mapper/AppStockUpdateMapper.xml create mode 100644 src/main/resources/mapper/AppTaskBakMapper.xml create mode 100644 src/main/resources/mapper/AppTaskMapper.xml create mode 100644 src/main/resources/mapper/AppVehicleMapper.xml create mode 100644 src/main/resources/mapper/AppWcsTaskBakMapper.xml create mode 100644 src/main/resources/mapper/AppWcsTaskMapper.xml create mode 100644 src/main/resources/mapper/AppWorkMapper.xml create mode 100644 src/main/resources/mapper/AppWorkRecordMapper.xml create mode 100644 src/main/resources/mapper/SysMenuMapper.xml create mode 100644 src/main/resources/mapper/SysPermissionMapper.xml create mode 100644 src/main/resources/mapper/SysRoleMapper.xml create mode 100644 src/main/resources/mapper/SysUserMapper.xml create mode 100644 src/main/resources/sql/wms_kate_wuxi.sql create mode 100644 src/test/java/com/wms_main/DevWmsServeApplicationTests.java diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..35410ca --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# 默认忽略的文件 +/shelf/ +/workspace.xml +# 基于编辑器的 HTTP 客户端请求 +/httpRequests/ +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml diff --git a/.idea/compiler.xml b/.idea/compiler.xml new file mode 100644 index 0000000..991ef7c --- /dev/null +++ b/.idea/compiler.xml @@ -0,0 +1,18 @@ + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/encodings.xml b/.idea/encodings.xml new file mode 100644 index 0000000..63e9001 --- /dev/null +++ b/.idea/encodings.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml new file mode 100644 index 0000000..abb532a --- /dev/null +++ b/.idea/jarRepositories.xml @@ -0,0 +1,20 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..9dc782b --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,12 @@ + + + + + + + + \ No newline at end of file diff --git a/.idea/vcs.xml b/.idea/vcs.xml new file mode 100644 index 0000000..35eb1dd --- /dev/null +++ b/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/mvnw b/mvnw new file mode 100644 index 0000000..9ed703b --- /dev/null +++ b/mvnw @@ -0,0 +1,259 @@ +#!/bin/sh +# ---------------------------------------------------------------------------- +# Licensed to the Apache Software Foundation (ASF) under one +# or more contributor license agreements. See the NOTICE file +# distributed with this work for additional information +# regarding copyright ownership. The ASF licenses this file +# to you under the Apache License, Version 2.0 (the +# "License"); you may not use this file except in compliance +# with the License. You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, +# software distributed under the License is distributed on an +# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +# KIND, either express or implied. See the License for the +# specific language governing permissions and limitations +# under the License. +# ---------------------------------------------------------------------------- + +# ---------------------------------------------------------------------------- +# Apache Maven Wrapper startup batch script, version 3.3.2 +# +# Optional ENV vars +# ----------------- +# JAVA_HOME - location of a JDK home dir, required when download maven via java source +# MVNW_REPOURL - repo url base for downloading maven distribution +# MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +# MVNW_VERBOSE - true: enable verbose log; debug: trace the mvnw script; others: silence the output +# ---------------------------------------------------------------------------- + +set -euf +[ "${MVNW_VERBOSE-}" != debug ] || set -x + +# OS specific support. +native_path() { printf %s\\n "$1"; } +case "$(uname)" in +CYGWIN* | MINGW*) + [ -z "${JAVA_HOME-}" ] || JAVA_HOME="$(cygpath --unix "$JAVA_HOME")" + native_path() { cygpath --path --windows "$1"; } + ;; +esac + +# set JAVACMD and JAVACCMD +set_java_home() { + # For Cygwin and MinGW, ensure paths are in Unix format before anything is touched + if [ -n "${JAVA_HOME-}" ]; then + if [ -x "$JAVA_HOME/jre/sh/java" ]; then + # IBM's JDK on AIX uses strange locations for the executables + JAVACMD="$JAVA_HOME/jre/sh/java" + JAVACCMD="$JAVA_HOME/jre/sh/javac" + else + JAVACMD="$JAVA_HOME/bin/java" + JAVACCMD="$JAVA_HOME/bin/javac" + + if [ ! -x "$JAVACMD" ] || [ ! -x "$JAVACCMD" ]; then + echo "The JAVA_HOME environment variable is not defined correctly, so mvnw cannot run." >&2 + echo "JAVA_HOME is set to \"$JAVA_HOME\", but \"\$JAVA_HOME/bin/java\" or \"\$JAVA_HOME/bin/javac\" does not exist." >&2 + return 1 + fi + fi + else + JAVACMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v java + )" || : + JAVACCMD="$( + 'set' +e + 'unset' -f command 2>/dev/null + 'command' -v javac + )" || : + + if [ ! -x "${JAVACMD-}" ] || [ ! -x "${JAVACCMD-}" ]; then + echo "The java/javac command does not exist in PATH nor is JAVA_HOME set, so mvnw cannot run." >&2 + return 1 + fi + fi +} + +# hash string like Java String::hashCode +hash_string() { + str="${1:-}" h=0 + while [ -n "$str" ]; do + char="${str%"${str#?}"}" + h=$(((h * 31 + $(LC_CTYPE=C printf %d "'$char")) % 4294967296)) + str="${str#?}" + done + printf %x\\n $h +} + +verbose() { :; } +[ "${MVNW_VERBOSE-}" != true ] || verbose() { printf %s\\n "${1-}"; } + +die() { + printf %s\\n "$1" >&2 + exit 1 +} + +trim() { + # MWRAPPER-139: + # Trims trailing and leading whitespace, carriage returns, tabs, and linefeeds. + # Needed for removing poorly interpreted newline sequences when running in more + # exotic environments such as mingw bash on Windows. + printf "%s" "${1}" | tr -d '[:space:]' +} + +# parse distributionUrl and optional distributionSha256Sum, requires .mvn/wrapper/maven-wrapper.properties +while IFS="=" read -r key value; do + case "${key-}" in + distributionUrl) distributionUrl=$(trim "${value-}") ;; + distributionSha256Sum) distributionSha256Sum=$(trim "${value-}") ;; + esac +done <"${0%/*}/.mvn/wrapper/maven-wrapper.properties" +[ -n "${distributionUrl-}" ] || die "cannot read distributionUrl property in ${0%/*}/.mvn/wrapper/maven-wrapper.properties" + +case "${distributionUrl##*/}" in +maven-mvnd-*bin.*) + MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ + case "${PROCESSOR_ARCHITECTURE-}${PROCESSOR_ARCHITEW6432-}:$(uname -a)" in + *AMD64:CYGWIN* | *AMD64:MINGW*) distributionPlatform=windows-amd64 ;; + :Darwin*x86_64) distributionPlatform=darwin-amd64 ;; + :Darwin*arm64) distributionPlatform=darwin-aarch64 ;; + :Linux*x86_64*) distributionPlatform=linux-amd64 ;; + *) + echo "Cannot detect native platform for mvnd on $(uname)-$(uname -m), use pure java version" >&2 + distributionPlatform=linux-amd64 + ;; + esac + distributionUrl="${distributionUrl%-bin.*}-$distributionPlatform.zip" + ;; +maven-mvnd-*) MVN_CMD=mvnd.sh _MVNW_REPO_PATTERN=/maven/mvnd/ ;; +*) MVN_CMD="mvn${0##*/mvnw}" _MVNW_REPO_PATTERN=/org/apache/maven/ ;; +esac + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +[ -z "${MVNW_REPOURL-}" ] || distributionUrl="$MVNW_REPOURL$_MVNW_REPO_PATTERN${distributionUrl#*"$_MVNW_REPO_PATTERN"}" +distributionUrlName="${distributionUrl##*/}" +distributionUrlNameMain="${distributionUrlName%.*}" +distributionUrlNameMain="${distributionUrlNameMain%-bin}" +MAVEN_USER_HOME="${MAVEN_USER_HOME:-${HOME}/.m2}" +MAVEN_HOME="${MAVEN_USER_HOME}/wrapper/dists/${distributionUrlNameMain-}/$(hash_string "$distributionUrl")" + +exec_maven() { + unset MVNW_VERBOSE MVNW_USERNAME MVNW_PASSWORD MVNW_REPOURL || : + exec "$MAVEN_HOME/bin/$MVN_CMD" "$@" || die "cannot exec $MAVEN_HOME/bin/$MVN_CMD" +} + +if [ -d "$MAVEN_HOME" ]; then + verbose "found existing MAVEN_HOME at $MAVEN_HOME" + exec_maven "$@" +fi + +case "${distributionUrl-}" in +*?-bin.zip | *?maven-mvnd-?*-?*.zip) ;; +*) die "distributionUrl is not valid, must match *-bin.zip or maven-mvnd-*.zip, but found '${distributionUrl-}'" ;; +esac + +# prepare tmp dir +if TMP_DOWNLOAD_DIR="$(mktemp -d)" && [ -d "$TMP_DOWNLOAD_DIR" ]; then + clean() { rm -rf -- "$TMP_DOWNLOAD_DIR"; } + trap clean HUP INT TERM EXIT +else + die "cannot create temp dir" +fi + +mkdir -p -- "${MAVEN_HOME%/*}" + +# Download and Install Apache Maven +verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +verbose "Downloading from: $distributionUrl" +verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +# select .zip or .tar.gz +if ! command -v unzip >/dev/null; then + distributionUrl="${distributionUrl%.zip}.tar.gz" + distributionUrlName="${distributionUrl##*/}" +fi + +# verbose opt +__MVNW_QUIET_WGET=--quiet __MVNW_QUIET_CURL=--silent __MVNW_QUIET_UNZIP=-q __MVNW_QUIET_TAR='' +[ "${MVNW_VERBOSE-}" != true ] || __MVNW_QUIET_WGET='' __MVNW_QUIET_CURL='' __MVNW_QUIET_UNZIP='' __MVNW_QUIET_TAR=v + +# normalize api auth +case "${MVNW_PASSWORD:+has-password}" in +'') MVNW_USERNAME='' MVNW_PASSWORD='' ;; +has-password) [ -n "${MVNW_USERNAME-}" ] || MVNW_USERNAME='' MVNW_PASSWORD='' ;; +esac + +if [ -z "${MVNW_USERNAME-}" ] && command -v wget >/dev/null; then + verbose "Found wget ... using wget" + wget ${__MVNW_QUIET_WGET:+"$__MVNW_QUIET_WGET"} "$distributionUrl" -O "$TMP_DOWNLOAD_DIR/$distributionUrlName" || die "wget: Failed to fetch $distributionUrl" +elif [ -z "${MVNW_USERNAME-}" ] && command -v curl >/dev/null; then + verbose "Found curl ... using curl" + curl ${__MVNW_QUIET_CURL:+"$__MVNW_QUIET_CURL"} -f -L -o "$TMP_DOWNLOAD_DIR/$distributionUrlName" "$distributionUrl" || die "curl: Failed to fetch $distributionUrl" +elif set_java_home; then + verbose "Falling back to use Java to download" + javaSource="$TMP_DOWNLOAD_DIR/Downloader.java" + targetZip="$TMP_DOWNLOAD_DIR/$distributionUrlName" + cat >"$javaSource" <<-END + public class Downloader extends java.net.Authenticator + { + protected java.net.PasswordAuthentication getPasswordAuthentication() + { + return new java.net.PasswordAuthentication( System.getenv( "MVNW_USERNAME" ), System.getenv( "MVNW_PASSWORD" ).toCharArray() ); + } + public static void main( String[] args ) throws Exception + { + setDefault( new Downloader() ); + java.nio.file.Files.copy( java.net.URI.create( args[0] ).toURL().openStream(), java.nio.file.Paths.get( args[1] ).toAbsolutePath().normalize() ); + } + } + END + # For Cygwin/MinGW, switch paths to Windows format before running javac and java + verbose " - Compiling Downloader.java ..." + "$(native_path "$JAVACCMD")" "$(native_path "$javaSource")" || die "Failed to compile Downloader.java" + verbose " - Running Downloader.java ..." + "$(native_path "$JAVACMD")" -cp "$(native_path "$TMP_DOWNLOAD_DIR")" Downloader "$distributionUrl" "$(native_path "$targetZip")" +fi + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +if [ -n "${distributionSha256Sum-}" ]; then + distributionSha256Result=false + if [ "$MVN_CMD" = mvnd.sh ]; then + echo "Checksum validation is not supported for maven-mvnd." >&2 + echo "Please disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + elif command -v sha256sum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | sha256sum -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + elif command -v shasum >/dev/null; then + if echo "$distributionSha256Sum $TMP_DOWNLOAD_DIR/$distributionUrlName" | shasum -a 256 -c >/dev/null 2>&1; then + distributionSha256Result=true + fi + else + echo "Checksum validation was requested but neither 'sha256sum' or 'shasum' are available." >&2 + echo "Please install either command, or disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." >&2 + exit 1 + fi + if [ $distributionSha256Result = false ]; then + echo "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised." >&2 + echo "If you updated your Maven version, you need to update the specified distributionSha256Sum property." >&2 + exit 1 + fi +fi + +# unzip and move +if command -v unzip >/dev/null; then + unzip ${__MVNW_QUIET_UNZIP:+"$__MVNW_QUIET_UNZIP"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -d "$TMP_DOWNLOAD_DIR" || die "failed to unzip" +else + tar xzf${__MVNW_QUIET_TAR:+"$__MVNW_QUIET_TAR"} "$TMP_DOWNLOAD_DIR/$distributionUrlName" -C "$TMP_DOWNLOAD_DIR" || die "failed to untar" +fi +printf %s\\n "$distributionUrl" >"$TMP_DOWNLOAD_DIR/$distributionUrlNameMain/mvnw.url" +mv -- "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" "$MAVEN_HOME" || [ -d "$MAVEN_HOME" ] || die "fail to move MAVEN_HOME" + +clean || : +exec_maven "$@" diff --git a/mvnw.cmd b/mvnw.cmd new file mode 100644 index 0000000..b150b91 --- /dev/null +++ b/mvnw.cmd @@ -0,0 +1,149 @@ +<# : batch portion +@REM ---------------------------------------------------------------------------- +@REM Licensed to the Apache Software Foundation (ASF) under one +@REM or more contributor license agreements. See the NOTICE file +@REM distributed with this work for additional information +@REM regarding copyright ownership. The ASF licenses this file +@REM to you under the Apache License, Version 2.0 (the +@REM "License"); you may not use this file except in compliance +@REM with the License. You may obtain a copy of the License at +@REM +@REM http://www.apache.org/licenses/LICENSE-2.0 +@REM +@REM Unless required by applicable law or agreed to in writing, +@REM software distributed under the License is distributed on an +@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY +@REM KIND, either express or implied. See the License for the +@REM specific language governing permissions and limitations +@REM under the License. +@REM ---------------------------------------------------------------------------- + +@REM ---------------------------------------------------------------------------- +@REM Apache Maven Wrapper startup batch script, version 3.3.2 +@REM +@REM Optional ENV vars +@REM MVNW_REPOURL - repo url base for downloading maven distribution +@REM MVNW_USERNAME/MVNW_PASSWORD - user and password for downloading maven +@REM MVNW_VERBOSE - true: enable verbose log; others: silence the output +@REM ---------------------------------------------------------------------------- + +@IF "%__MVNW_ARG0_NAME__%"=="" (SET __MVNW_ARG0_NAME__=%~nx0) +@SET __MVNW_CMD__= +@SET __MVNW_ERROR__= +@SET __MVNW_PSMODULEP_SAVE=%PSModulePath% +@SET PSModulePath= +@FOR /F "usebackq tokens=1* delims==" %%A IN (`powershell -noprofile "& {$scriptDir='%~dp0'; $script='%__MVNW_ARG0_NAME__%'; icm -ScriptBlock ([Scriptblock]::Create((Get-Content -Raw '%~f0'))) -NoNewScope}"`) DO @( + IF "%%A"=="MVN_CMD" (set __MVNW_CMD__=%%B) ELSE IF "%%B"=="" (echo %%A) ELSE (echo %%A=%%B) +) +@SET PSModulePath=%__MVNW_PSMODULEP_SAVE% +@SET __MVNW_PSMODULEP_SAVE= +@SET __MVNW_ARG0_NAME__= +@SET MVNW_USERNAME= +@SET MVNW_PASSWORD= +@IF NOT "%__MVNW_CMD__%"=="" (%__MVNW_CMD__% %*) +@echo Cannot start maven from wrapper >&2 && exit /b 1 +@GOTO :EOF +: end batch / begin powershell #> + +$ErrorActionPreference = "Stop" +if ($env:MVNW_VERBOSE -eq "true") { + $VerbosePreference = "Continue" +} + +# calculate distributionUrl, requires .mvn/wrapper/maven-wrapper.properties +$distributionUrl = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionUrl +if (!$distributionUrl) { + Write-Error "cannot read distributionUrl property in $scriptDir/.mvn/wrapper/maven-wrapper.properties" +} + +switch -wildcard -casesensitive ( $($distributionUrl -replace '^.*/','') ) { + "maven-mvnd-*" { + $USE_MVND = $true + $distributionUrl = $distributionUrl -replace '-bin\.[^.]*$',"-windows-amd64.zip" + $MVN_CMD = "mvnd.cmd" + break + } + default { + $USE_MVND = $false + $MVN_CMD = $script -replace '^mvnw','mvn' + break + } +} + +# apply MVNW_REPOURL and calculate MAVEN_HOME +# maven home pattern: ~/.m2/wrapper/dists/{apache-maven-,maven-mvnd--}/ +if ($env:MVNW_REPOURL) { + $MVNW_REPO_PATTERN = if ($USE_MVND) { "/org/apache/maven/" } else { "/maven/mvnd/" } + $distributionUrl = "$env:MVNW_REPOURL$MVNW_REPO_PATTERN$($distributionUrl -replace '^.*'+$MVNW_REPO_PATTERN,'')" +} +$distributionUrlName = $distributionUrl -replace '^.*/','' +$distributionUrlNameMain = $distributionUrlName -replace '\.[^.]*$','' -replace '-bin$','' +$MAVEN_HOME_PARENT = "$HOME/.m2/wrapper/dists/$distributionUrlNameMain" +if ($env:MAVEN_USER_HOME) { + $MAVEN_HOME_PARENT = "$env:MAVEN_USER_HOME/wrapper/dists/$distributionUrlNameMain" +} +$MAVEN_HOME_NAME = ([System.Security.Cryptography.MD5]::Create().ComputeHash([byte[]][char[]]$distributionUrl) | ForEach-Object {$_.ToString("x2")}) -join '' +$MAVEN_HOME = "$MAVEN_HOME_PARENT/$MAVEN_HOME_NAME" + +if (Test-Path -Path "$MAVEN_HOME" -PathType Container) { + Write-Verbose "found existing MAVEN_HOME at $MAVEN_HOME" + Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" + exit $? +} + +if (! $distributionUrlNameMain -or ($distributionUrlName -eq $distributionUrlNameMain)) { + Write-Error "distributionUrl is not valid, must end with *-bin.zip, but found $distributionUrl" +} + +# prepare tmp dir +$TMP_DOWNLOAD_DIR_HOLDER = New-TemporaryFile +$TMP_DOWNLOAD_DIR = New-Item -Itemtype Directory -Path "$TMP_DOWNLOAD_DIR_HOLDER.dir" +$TMP_DOWNLOAD_DIR_HOLDER.Delete() | Out-Null +trap { + if ($TMP_DOWNLOAD_DIR.Exists) { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } + } +} + +New-Item -Itemtype Directory -Path "$MAVEN_HOME_PARENT" -Force | Out-Null + +# Download and Install Apache Maven +Write-Verbose "Couldn't find MAVEN_HOME, downloading and installing it ..." +Write-Verbose "Downloading from: $distributionUrl" +Write-Verbose "Downloading to: $TMP_DOWNLOAD_DIR/$distributionUrlName" + +$webclient = New-Object System.Net.WebClient +if ($env:MVNW_USERNAME -and $env:MVNW_PASSWORD) { + $webclient.Credentials = New-Object System.Net.NetworkCredential($env:MVNW_USERNAME, $env:MVNW_PASSWORD) +} +[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12 +$webclient.DownloadFile($distributionUrl, "$TMP_DOWNLOAD_DIR/$distributionUrlName") | Out-Null + +# If specified, validate the SHA-256 sum of the Maven distribution zip file +$distributionSha256Sum = (Get-Content -Raw "$scriptDir/.mvn/wrapper/maven-wrapper.properties" | ConvertFrom-StringData).distributionSha256Sum +if ($distributionSha256Sum) { + if ($USE_MVND) { + Write-Error "Checksum validation is not supported for maven-mvnd. `nPlease disable validation by removing 'distributionSha256Sum' from your maven-wrapper.properties." + } + Import-Module $PSHOME\Modules\Microsoft.PowerShell.Utility -Function Get-FileHash + if ((Get-FileHash "$TMP_DOWNLOAD_DIR/$distributionUrlName" -Algorithm SHA256).Hash.ToLower() -ne $distributionSha256Sum) { + Write-Error "Error: Failed to validate Maven distribution SHA-256, your Maven distribution might be compromised. If you updated your Maven version, you need to update the specified distributionSha256Sum property." + } +} + +# unzip and move +Expand-Archive "$TMP_DOWNLOAD_DIR/$distributionUrlName" -DestinationPath "$TMP_DOWNLOAD_DIR" | Out-Null +Rename-Item -Path "$TMP_DOWNLOAD_DIR/$distributionUrlNameMain" -NewName $MAVEN_HOME_NAME | Out-Null +try { + Move-Item -Path "$TMP_DOWNLOAD_DIR/$MAVEN_HOME_NAME" -Destination $MAVEN_HOME_PARENT | Out-Null +} catch { + if (! (Test-Path -Path "$MAVEN_HOME" -PathType Container)) { + Write-Error "fail to move MAVEN_HOME" + } +} finally { + try { Remove-Item $TMP_DOWNLOAD_DIR -Recurse -Force | Out-Null } + catch { Write-Warning "Cannot remove $TMP_DOWNLOAD_DIR" } +} + +Write-Output "MVN_CMD=$MAVEN_HOME/bin/$MVN_CMD" diff --git a/pom.xml b/pom.xml new file mode 100644 index 0000000..54d738d --- /dev/null +++ b/pom.xml @@ -0,0 +1,169 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 3.3.5 + + + com + dev_wms_serve + 3.2 + dev_wms_serve + dev_wms_serve + + + + + + + + + + + + + + + 21 + + + + org.springframework.boot + spring-boot-starter-web + + + + org.springframework.boot + spring-boot-starter-logging + + + + org.springframework.boot + spring-boot-starter-quartz + + + + com.mysql + mysql-connector-j + runtime + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + com.baomidou + mybatis-plus-spring-boot3-starter + 3.5.7 + + + org.apache.httpcomponents + httpclient + 4.5.13 + + + + + com.fasterxml.jackson.core + jackson-databind + + + + + com.alibaba + fastjson + 2.0.21 + + + + + cn.hutool + hutool-all + 5.8.33 + + + + + + com.alibaba + easyexcel + 4.0.3 + + + + cn.afterturn + easypoi-spring-boot-starter + 4.5.0 + + + + com.google.guava + guava + 33.3.1-jre + + + + junit + junit + test + + + org.jetbrains + annotations + 26.0.2 + compile + + + + + org.apache.commons + commons-compress + 1.26.0 + + + + + org.xmlunit + xmlunit-core + 2.10.0 + test + + + + + wms-server + + + org.springframework.boot + spring-boot-maven-plugin + + + + org.projectlombok + lombok + + + + + + org.apache.maven.plugins + maven-surefire-plugin + + true + + + + + + + \ No newline at end of file diff --git a/src/main/java/com/wms_main/WmsMainApplication.java b/src/main/java/com/wms_main/WmsMainApplication.java new file mode 100644 index 0000000..8661a7e --- /dev/null +++ b/src/main/java/com/wms_main/WmsMainApplication.java @@ -0,0 +1,13 @@ +package com.wms_main; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; + +@SpringBootApplication +public class WmsMainApplication { + + public static void main(String[] args) { + SpringApplication.run(WmsMainApplication.class, args); + } + +} diff --git a/src/main/java/com/wms_main/app/AppCommon.java b/src/main/java/com/wms_main/app/AppCommon.java new file mode 100644 index 0000000..e92c358 --- /dev/null +++ b/src/main/java/com/wms_main/app/AppCommon.java @@ -0,0 +1,150 @@ +package com.wms_main.app; + +import com.wms_main.dao.ITAppConfigService; +import com.wms_main.dao.ITAppGoodsService; +import com.wms_main.dao.ITAppLocationService; +import com.wms_main.model.po.TAppConfig; +import com.wms_main.model.po.TAppGoods; +import com.wms_main.model.po.TAppLocation; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; + +import java.util.HashMap; +import java.util.List; +import java.util.Map; + +/** + * Application 共享 + */ +@Component +@RequiredArgsConstructor +@Slf4j +public class AppCommon { + /** + * 配置服务 + */ + private final ITAppConfigService appConfigService; + private final ITAppLocationService appLocationService; + private final ITAppGoodsService appGoodsService; + /** + * 配置map + */ + public final Map configMap = new HashMap<>(); + /** + * 库位map + */ + public final Map instantLocationMap = new HashMap<>(); + /** + * 物料信息Map + */ + private final Map instantGoodsMap = new HashMap<>(); + + /** + * 根据key获取值 + * @param key 键 + * @return 值 + */ + public String getConfigByKey(String key) { + if (configMap.isEmpty()) { + if (!initConfigMap()) { + log.error("配置初始化失败,请尝试重启程序。"); + return ""; + } + } + return configMap.get(key); + } + + /** + * 更新配置 + * @return 更新结果 + */ + public boolean initConfigMap() { + configMap.clear();// 清除配置值 + try { + // 获取到所有的配置 + List configList = appConfigService.list(); + if (!configList.isEmpty()) { + for (TAppConfig appConfig : configList) { + configMap.put(appConfig.getConfigKey(), appConfig.getConfigValue()); + log.info("导入系统配置成功---{}:{}", appConfig.getConfigName(), appConfig.getConfigValue()); + } + } + return true; + } catch (Exception e) { + return false; + } + } + + /** + * 根据库位id获取库位信息 + * @param locationId 库位id + * @return 库位详情 + */ + public TAppLocation getInstantLocationByLocationId(String locationId) { + if (instantLocationMap.isEmpty()) { + if (!initInstantLocationMap()) { + log.error("库位缓存失败,请尝试重启程序。"); + return null; + } + } + return instantLocationMap.get(locationId); + } + + /** + * 初始化库位缓存map + * @return 缓存结果 + */ + public boolean initInstantLocationMap() { + instantLocationMap.clear(); + try { + // 获取到所有的配置 + List locationList = appLocationService.list(); + if (!locationList.isEmpty()) { + for (TAppLocation appLocation : locationList) { + instantLocationMap.put(appLocation.getLocationId(), appLocation); + } + } + log.info("库位缓存成功。"); + return true; + } catch (Exception e) { + return false; + } + } + + /** + * 根据料号获取物料信息 + * @param goodsId 料号 + * @return 物料信息 + */ + public TAppGoods getInstantGoodsByGoodsId(String goodsId) { + if (instantGoodsMap.isEmpty()) { + if (!initInstantGoodsMap()) { + log.error("物料缓存失败,请尝试重启程序。"); + return null; + } + } + return instantGoodsMap.get(goodsId); + } + + /** + * 缓存物料信息 + * @return 缓存结果 + */ + public boolean initInstantGoodsMap() { + instantGoodsMap.clear(); + try { + // 获取到所有的配置 + List goodsList = appGoodsService.list(); + if (!goodsList.isEmpty()) { + for (TAppGoods appGoods : goodsList) { + instantGoodsMap.put(appGoods.getGoodsId(), appGoods); + } + } + log.info("缓存物料信息成功。"); + return true; + } catch (Exception e) { + return false; + } + } +} diff --git a/src/main/java/com/wms_main/app/AppStartComplete.java b/src/main/java/com/wms_main/app/AppStartComplete.java new file mode 100644 index 0000000..8f98050 --- /dev/null +++ b/src/main/java/com/wms_main/app/AppStartComplete.java @@ -0,0 +1,12 @@ +package com.wms_main.app; + +import org.springframework.boot.CommandLineRunner; +import org.springframework.stereotype.Component; + +@Component +public class AppStartComplete implements CommandLineRunner { + @Override + public void run(String... args) { + System.out.println("WMS启动完成......"); + } +} diff --git a/src/main/java/com/wms_main/config/MybatisPlusConfig.java b/src/main/java/com/wms_main/config/MybatisPlusConfig.java new file mode 100644 index 0000000..7edce3d --- /dev/null +++ b/src/main/java/com/wms_main/config/MybatisPlusConfig.java @@ -0,0 +1,32 @@ +package com.wms_main.config; + +import com.baomidou.mybatisplus.annotation.DbType; +import com.baomidou.mybatisplus.extension.plugins.MybatisPlusInterceptor; +import com.baomidou.mybatisplus.extension.plugins.inner.PaginationInnerInterceptor; +import org.mybatis.spring.annotation.MapperScan; +import org.springframework.boot.SpringBootConfiguration; +import org.springframework.context.annotation.Bean; +import org.springframework.transaction.annotation.EnableTransactionManagement; + +/** + * mp配置类 + */ +@SpringBootConfiguration +@MapperScan("com.wms_main.mapper") +@EnableTransactionManagement +public class MybatisPlusConfig { + /** + * 分页插件的控制 + * @return MybatisPlusInterceptor + */ + @Bean + public MybatisPlusInterceptor mybatisPlusInterceptor() { + MybatisPlusInterceptor interceptor = new MybatisPlusInterceptor(); + // 添加分页插件 + PaginationInnerInterceptor pageInnerInterceptor = new PaginationInnerInterceptor(); + pageInnerInterceptor.setDbType(DbType.MYSQL); + pageInnerInterceptor.setMaxLimit(1000L); + interceptor.addInnerInterceptor(pageInnerInterceptor); + return interceptor; + } +} diff --git a/src/main/java/com/wms_main/config/ResourceConfig.java b/src/main/java/com/wms_main/config/ResourceConfig.java new file mode 100644 index 0000000..4a84247 --- /dev/null +++ b/src/main/java/com/wms_main/config/ResourceConfig.java @@ -0,0 +1,17 @@ +package com.wms_main.config; + +import org.springframework.context.annotation.Configuration; +import org.springframework.web.servlet.config.annotation.ResourceHandlerRegistry; +import org.springframework.web.servlet.config.annotation.WebMvcConfigurer; + +@Configuration +public class ResourceConfig implements WebMvcConfigurer { + /** + * 图片地址映射 + * @param registry 注册 + */ + @Override + public void addResourceHandlers(ResourceHandlerRegistry registry) { + registry.addResourceHandler("/image/**").addResourceLocations("file:D:/image/"); + } +} diff --git a/src/main/java/com/wms_main/config/advice/WmsControllerExceptionHandler.java b/src/main/java/com/wms_main/config/advice/WmsControllerExceptionHandler.java new file mode 100644 index 0000000..e942011 --- /dev/null +++ b/src/main/java/com/wms_main/config/advice/WmsControllerExceptionHandler.java @@ -0,0 +1,60 @@ +package com.wms_main.config.advice; + +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import lombok.extern.slf4j.Slf4j; +import org.springframework.http.converter.HttpMessageConversionException; +import org.springframework.validation.FieldError; +import org.springframework.web.bind.MethodArgumentNotValidException; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; +import org.springframework.web.bind.annotation.ResponseBody; + +/** + * WMS 接口异常处理类 + */ +@ControllerAdvice(value = "com.wms_main.controller.wms") +@ResponseBody +@Slf4j +public class WmsControllerExceptionHandler { + + /** + * 参数校验失败 + * @param ex 异常 + * @return 返回值 + */ + @ExceptionHandler(value = MethodArgumentNotValidException.class) + public BaseWmsApiResponse methodArgumentNotValidException(MethodArgumentNotValidException ex) { + log.error("Wms接口请求参数错误:{}", ex.getMessage()); + String errMessage = "请求参数错误"; + FieldError fieldError = ex.getBindingResult().getFieldError(); + if(fieldError != null) { + errMessage = fieldError.getDefaultMessage(); + } + return BaseWmsApiResponse.error(errMessage); + } + + /** + * 参数类型转换失败 + * @param ex 异常 + * @return 返回值 + */ + @ExceptionHandler(HttpMessageConversionException.class) + public BaseWmsApiResponse parameterTypeException(HttpMessageConversionException ex) { + log.error("Wms接口请求参数格式错误:{}", ex.getMessage()); + String errorMessage = "请求参数格式错误,请参照接口文档"; + return BaseWmsApiResponse.error(errorMessage); + + } + + /** + * 捕获所有异常 + * @param e 异常 + * @return 返回值 + */ + @ExceptionHandler(value = Exception.class) + public BaseWmsApiResponse handleException(Exception e) { + log.error("Wms接口异常:{}", e.getMessage()); + return BaseWmsApiResponse.error(String.format("发生异常:%s", e.getMessage())); + } + +} diff --git a/src/main/java/com/wms_main/constant/AppConstant.java b/src/main/java/com/wms_main/constant/AppConstant.java new file mode 100644 index 0000000..555c3fd --- /dev/null +++ b/src/main/java/com/wms_main/constant/AppConstant.java @@ -0,0 +1,23 @@ +package com.wms_main.constant; + +import lombok.Data; + +@Data +public class AppConstant { + /** + * WMS 服务端专属编号,禁止修改,数值为 0 - 99 整数 + */ + public static final short APP_ID = 1; + /** + * 根菜单ID + */ + public static final String ROOT_MENU_ID = "0"; + /** + * 管理员角色 + */ + public static final String ADMIN_ID = "0"; + /** + * 空物料号 + */ + public static final String EMPTY_GOODS_ID = "000000000"; +} diff --git a/src/main/java/com/wms_main/constant/enums/jobs/JobStatusEnums.java b/src/main/java/com/wms_main/constant/enums/jobs/JobStatusEnums.java new file mode 100644 index 0000000..79a9c6d --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/jobs/JobStatusEnums.java @@ -0,0 +1,17 @@ +package com.wms_main.constant.enums.jobs; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 定时任务状态 枚举 + */ +@Getter +@AllArgsConstructor +public enum JobStatusEnums { + STOP(0, "停止"), + RUN(1, "运行"); + + private final Integer status; + private final String description; +} diff --git a/src/main/java/com/wms_main/constant/enums/jobs/JobTimerTypeEnums.java b/src/main/java/com/wms_main/constant/enums/jobs/JobTimerTypeEnums.java new file mode 100644 index 0000000..03b9352 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/jobs/JobTimerTypeEnums.java @@ -0,0 +1,14 @@ +package com.wms_main.constant.enums.jobs; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum JobTimerTypeEnums { + SIMPLE(1, "简单任务"), + CRON(2, "cron表达式"); + + private final Integer type; + private final String description; +} diff --git a/src/main/java/com/wms_main/constant/enums/others/DbsStatusEnums.java b/src/main/java/com/wms_main/constant/enums/others/DbsStatusEnums.java new file mode 100644 index 0000000..0d0bd3a --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/others/DbsStatusEnums.java @@ -0,0 +1,14 @@ +package com.wms_main.constant.enums.others; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum DbsStatusEnums { + NEW(0, "未开始"), + RUN(1, "已开始"), + FINISH(2, "已完成"); + private final Integer value; + private final String description; +} diff --git a/src/main/java/com/wms_main/constant/enums/wcs/WcsApiResponseCodeEnums.java b/src/main/java/com/wms_main/constant/enums/wcs/WcsApiResponseCodeEnums.java new file mode 100644 index 0000000..d2c635a --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wcs/WcsApiResponseCodeEnums.java @@ -0,0 +1,14 @@ +package com.wms_main.constant.enums.wcs; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum WcsApiResponseCodeEnums { + SUCCESS(0, "成功"), + FAIL(500, "失败"), + ERROR(999, "错误"); + private final int code; + private final String message; +} diff --git a/src/main/java/com/wms_main/constant/enums/wcs/WcsConveyTaskTypeEnums.java b/src/main/java/com/wms_main/constant/enums/wcs/WcsConveyTaskTypeEnums.java new file mode 100644 index 0000000..8a2a16e --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wcs/WcsConveyTaskTypeEnums.java @@ -0,0 +1,18 @@ +package com.wms_main.constant.enums.wcs; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wcs输送线任务类型 + */ +@Getter +@AllArgsConstructor +public enum WcsConveyTaskTypeEnums { + CONVEY_TASK_TYPE_PICK(1, "拣选"), + CONVEY_TASK_TYPE_ADD(2, "补货"), + CONVEY_TASK_TYPE_DELIVERY(3, "发货"), + CONVEY_TASK_TYPE_CHECK(4, "复核"); + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskStatusEnums.java b/src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskStatusEnums.java new file mode 100644 index 0000000..e521173 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskStatusEnums.java @@ -0,0 +1,23 @@ +package com.wms_main.constant.enums.wcs; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wcs任务状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WcsStackerTaskStatusEnums { + INIT(0, "任务初始化"), + WAIT(1, "任务排队中"), + RUN(2, "任务开始执行"), + LEAVE(3, "任务已经离开初始位置"), + MID(4, "任务到达中间点"), + ARRIVE(5, "任务到达目的地"), + FINISH(100, "任务完成"), + CANCEL(998, "任务取消"), + EXCEPTION(999, "任务异常"); + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskTypeEnums.java b/src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskTypeEnums.java new file mode 100644 index 0000000..ee745b2 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wcs/WcsStackerTaskTypeEnums.java @@ -0,0 +1,18 @@ +package com.wms_main.constant.enums.wcs; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wcs任务类型枚举 + */ +@Getter +@AllArgsConstructor +public enum WcsStackerTaskTypeEnums { + IN(1, "入库"), + OUT(2, "出库"), + INVENTORY(3, "盘点"); + + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/AppConfigKeyEnums.java b/src/main/java/com/wms_main/constant/enums/wms/AppConfigKeyEnums.java new file mode 100644 index 0000000..2d3be9c --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/AppConfigKeyEnums.java @@ -0,0 +1,22 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 应用配置key枚举 + */ +@Getter +@AllArgsConstructor +public enum AppConfigKeyEnums { + WCS_STACKER_TASK_URL("WcsStackerTaskUrl", "发送堆垛机任务地址"), + WCS_PICK_TASK_URL("WcsPickTaskUrl", "发送拣选任务地址"), + WCS_CANCEL_PICK_TASK_URL("WcsCancelPickTaskUrl", "发送取消拣选任务地址"), + WCS_RELEASE_BOX_URL("WcsReleaseBoxUrl", "发送释放站台箱子地址"), + STAND_CAPACITY("StandCapacity", "站台容量"), + IMAGE_IP("ImageIp", "图片存放ip"), + EMPTY_BACK("EmptyBack", "空载具是否回库"), + STOCK_WARNING_QTY("StockWarningQty", "库存预警数量"); + private final String key; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsApiResponseCodeEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsApiResponseCodeEnums.java new file mode 100644 index 0000000..baaff72 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsApiResponseCodeEnums.java @@ -0,0 +1,15 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +@Getter +@AllArgsConstructor +public enum WmsApiResponseCodeEnums { + SUCCESS(0, "成功"), + WARNING(400, "警告"), + FAIL(500, "失败"), + ERROR(999, "错误"); + private final int code; + private final String message; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsGoodsStatusEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsGoodsStatusEnums.java new file mode 100644 index 0000000..9e73ab4 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsGoodsStatusEnums.java @@ -0,0 +1,18 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 物料状态的枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsGoodsStatusEnums { + OK(0, "正常"), + BAD(1, "不合格"), + OVER_DUE(2, "过期"), + LONG_TIME_NO_USE(3, "长期未使用"); + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsLocationOccupyStatusEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsLocationOccupyStatusEnums.java new file mode 100644 index 0000000..c7f0d62 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsLocationOccupyStatusEnums.java @@ -0,0 +1,17 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 库位占用状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsLocationOccupyStatusEnums { + EMPTY(0, "空闲"), + OCCUPY(1, "占用"); + + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsLockEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsLockEnums.java new file mode 100644 index 0000000..7774795 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsLockEnums.java @@ -0,0 +1,17 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 锁定状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsLockEnums { + UNLOCK(0, "未锁定"), + LOCKED(1, "已锁定"); + + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsOutTypeEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsOutTypeEnums.java new file mode 100644 index 0000000..4ce7fba --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsOutTypeEnums.java @@ -0,0 +1,19 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * 出库类型 枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsOutTypeEnums { + EMPTY(1, "空箱出库"), + NORMAL(2, "普通出库"), + ALL_OUT(4, "完整出库"), + FOR_IN(5, "入库使用"), + EMERGE(9, "紧急出库"); + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsPickTaskStatusEnum.java b/src/main/java/com/wms_main/constant/enums/wms/WmsPickTaskStatusEnum.java new file mode 100644 index 0000000..44e6e26 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsPickTaskStatusEnum.java @@ -0,0 +1,22 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wms拣选任务状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsPickTaskStatusEnum { + FOR_IN(-2, "入库用"), + TEMP(-1, "暂存"), + WAIT(0, "待下发"), + SEND(1, "已下发"), + RUN(2, "正在执行"), + ARRIVE(3, "已到达"), + LEAVE(4, "已离开"), + CANCEL(5, "已取消"); + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsStackerTaskStatusEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsStackerTaskStatusEnums.java new file mode 100644 index 0000000..b0d3c97 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsStackerTaskStatusEnums.java @@ -0,0 +1,22 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wms任务状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsStackerTaskStatusEnums { + TEMP(-1, "暂存"), + WAIT(0, "初始化"), + EXECUTED(1, "已解析"), + SEND(2, "已下发"), + RUN(3, "正在执行"), + FINISH(4, "执行完成"), + CANCEL(98, "已取消"), + EXCEPTION(99, "执行异常"); + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsStockStatusEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsStockStatusEnums.java new file mode 100644 index 0000000..5ca36c3 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsStockStatusEnums.java @@ -0,0 +1,20 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wms库存状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsStockStatusEnums { + OK(0, "在库"), + OUTING(1, "出库中"), + OUTED(2, "已出库"), + BACK(3, "回库中"), + LOCK(9, "锁定"); + + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsTaskTypeEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsTaskTypeEnums.java new file mode 100644 index 0000000..3f108eb --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsTaskTypeEnums.java @@ -0,0 +1,18 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wms任务类型枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsTaskTypeEnums { + IN(1, "入库"), + OUT(2, "出库"), + INVENTORY(3, "盘点"); + + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsUsableStatusEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsUsableStatusEnums.java new file mode 100644 index 0000000..bbcd8d9 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsUsableStatusEnums.java @@ -0,0 +1,18 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * wms可用状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsUsableStatusEnums { + UNUSABLE(0, "不可用"), + USABLE(1, "可用"), + ; + + private final int code; + private final String message; +} diff --git a/src/main/java/com/wms_main/constant/enums/wms/WmsVehicleStatusEnums.java b/src/main/java/com/wms_main/constant/enums/wms/WmsVehicleStatusEnums.java new file mode 100644 index 0000000..c6ac143 --- /dev/null +++ b/src/main/java/com/wms_main/constant/enums/wms/WmsVehicleStatusEnums.java @@ -0,0 +1,18 @@ +package com.wms_main.constant.enums.wms; + +import lombok.AllArgsConstructor; +import lombok.Getter; + +/** + * Wms载具状态枚举 + */ +@Getter +@AllArgsConstructor +public enum WmsVehicleStatusEnums { + IN(1, "入库中"), + ON(2, "在库"), + OUT(3, "出库中"), + LOCK(9, "锁定"); + private final Integer code; + private final String desc; +} diff --git a/src/main/java/com/wms_main/controller/wms/ExcelController.java b/src/main/java/com/wms_main/controller/wms/ExcelController.java new file mode 100644 index 0000000..3fcde3e --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/ExcelController.java @@ -0,0 +1,133 @@ +package com.wms_main.controller.wms; + +import com.wms_main.excel.easypoi.service.IExportExcelEasyPoi; +import com.wms_main.excel.easypoi.service.IImportExcelEasyPoi; +import com.wms_main.model.dto.query.DbsQuery; +import com.wms_main.model.dto.query.KittingBomQuery; +import com.wms_main.model.dto.query.KittingBomRelationQuery; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.vo.others.FileVo; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.io.IOException; + +/** + * excel控制类 + */ +@ResponseBody +@RestController +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/excel") +public class ExcelController { + /** + * excel导入服务 + */ + private final IImportExcelEasyPoi importExcelEasyPoi; + /** + * excel导出服务 + */ + private final IExportExcelEasyPoi exportExcelEasyPoi; + + /** + * 导入基础物料数据 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @PostMapping("/importBaseGoods") + public BaseWmsApiResponse importBaseGoods(@RequestPart("file") MultipartFile file, @RequestPart("fileVo") FileVo fileVo) throws Exception { + return importExcelEasyPoi.doImportBaseGoods(file, fileVo); + } + + /** + * 导入看板数据 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @PostMapping("/importKanban") + public BaseWmsApiResponse importKanban(@RequestPart("file") MultipartFile file, @RequestPart("fileVo") FileVo fileVo) throws Exception { + return importExcelEasyPoi.doImportKanban(file, fileVo); + } + + /** + * 导入DBS计划数据 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @PostMapping("/importDbs") + public BaseWmsApiResponse importDbs(@RequestPart("file") MultipartFile file, @RequestPart("fileVo") FileVo fileVo) throws Exception { + return importExcelEasyPoi.doImportDbs(file, fileVo); + } + + /** + * 导入配料单及图纸 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @PostMapping("/importProduct") + public BaseWmsApiResponse importProduct(@RequestPart("file") MultipartFile file, @RequestPart("fileVo") FileVo fileVo) throws Exception { + return importExcelEasyPoi.doImportProduct(file, fileVo); + } + + /** + * 导入单片配料单及图纸 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @PostMapping("/importSingleProduct") + public BaseWmsApiResponse importSingleProduct(@RequestPart("file") MultipartFile file, @RequestPart("fileVo") FileVo fileVo) throws Exception { + return importExcelEasyPoi.doImportSingleProduct(file, fileVo); + } + + /** + * 导入总成-单片对应关系 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @PostMapping("/importProductExtend") + public BaseWmsApiResponse importProductExtend(@RequestPart("file") MultipartFile file, @RequestPart("fileVo") FileVo fileVo) throws Exception { + return importExcelEasyPoi.doImportProductExtend(file, fileVo); + } + + /** + * 导出DBS + * @param dbsQuery 请求 + */ + @PostMapping("/exportDbsWithExcel") + public void exportDbsWithExcel(@RequestBody DbsQuery dbsQuery, HttpServletResponse response) throws IOException { + exportExcelEasyPoi.doExportDbs(dbsQuery, response); + } + + /** + * 导出配料单 + * @param kittingBomQuery 请求 + */ + @PostMapping("/exportKittingBomWithExcel") + public void exportKittingBomWithExcel(@RequestBody KittingBomQuery kittingBomQuery, HttpServletResponse response) throws IOException { + exportExcelEasyPoi.doExportKittingBom(kittingBomQuery, response); + } + + /** + * 导出配对关系 + * @param kittingBomRelationQuery 请求 + */ + @PostMapping("/exportKittingBomRelationWithExcel") + public void exportKittingBomRelationWithExcel(@RequestBody KittingBomRelationQuery kittingBomRelationQuery, HttpServletResponse response) throws IOException { + exportExcelEasyPoi.doExportKittingBomRelations(kittingBomRelationQuery, response); + } +} diff --git a/src/main/java/com/wms_main/controller/wms/GoodsController.java b/src/main/java/com/wms_main/controller/wms/GoodsController.java new file mode 100644 index 0000000..8e5624b --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/GoodsController.java @@ -0,0 +1,31 @@ +package com.wms_main.controller.wms; + +import com.wms_main.model.dto.query.GoodsQuery; +import com.wms_main.model.vo.wms.GoodsVo; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.service.controller.IGoodsControllerService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + * 物料控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/goods") +public class GoodsController { + private final IGoodsControllerService goodsControllerService; + + /** + * 根据条件查询物料信息---分页 + * @param goodsQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/getGoodsInfoByPage") + public WmsApiResponse> getGoodsInfoByPage(@RequestBody GoodsQuery goodsQuery) { + return goodsControllerService.getGoodsInfoByPage(goodsQuery); + } +} diff --git a/src/main/java/com/wms_main/controller/wms/JobController.java b/src/main/java/com/wms_main/controller/wms/JobController.java new file mode 100644 index 0000000..0e0f9ed --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/JobController.java @@ -0,0 +1,18 @@ +package com.wms_main.controller.wms; + +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; + +/** + * 定时类控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/job") +public class JobController { +} diff --git a/src/main/java/com/wms_main/controller/wms/KateWorkController.java b/src/main/java/com/wms_main/controller/wms/KateWorkController.java new file mode 100644 index 0000000..f4759c0 --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/KateWorkController.java @@ -0,0 +1,142 @@ +package com.wms_main.controller.wms; + +import com.wms_main.model.dto.query.*; +import com.wms_main.model.dto.request.wms.BaseWmsRequest; +import com.wms_main.model.dto.request.wms.ConfirmWorkRequest; +import com.wms_main.model.dto.request.wms.GenKanbanRequirementRequest; +import com.wms_main.model.dto.request.wms.InitKateWorkRequest; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.*; +import com.wms_main.service.controller.IKateWorkControllerService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import java.util.List; + +/** + * 卡特相关控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/kate") +public class KateWorkController { + private final IKateWorkControllerService kateWorkControllerService; + + /** + * 处理查询请求 + * @param kateWorksQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryKateWorks") + public WmsApiResponse queryKateWorks(@RequestBody KateWorksQuery kateWorksQuery) { + return kateWorkControllerService.queryKateWorks(kateWorksQuery); + } + + /** + * 请求创建工作 + * @param initKateWorkRequest 请求参数 + * @return 查询结果 + */ + @PostMapping("/initWorks") + public BaseWmsApiResponse initWorks(@RequestBody InitKateWorkRequest initKateWorkRequest) { + return kateWorkControllerService.initWorks(initKateWorkRequest); + } + + /** + * 获取工作信息 + * @param kateWorksQuery 请求参数 + * @return 查询结果 + */ + @PostMapping("/getCurrentWorks") + public WmsApiResponse getCurrentWorks(@RequestBody KateWorksQuery kateWorksQuery) { + return kateWorkControllerService.getCurrentWorks(kateWorksQuery); + } + + /** + * 确认工作 + * @param confirmWorkRequest 请求参数 + * @return 查询结果 + */ + @PostMapping("/confirmCurrentWork") + public BaseWmsApiResponse confirmCurrentWork(@RequestBody ConfirmWorkRequest confirmWorkRequest) { + return kateWorkControllerService.confirmCurrentWork(confirmWorkRequest); + } + + /** + * 查询图纸 + * @param request 请求参数 + * @return 查询结果 + */ + @PostMapping("/getImageOfWork") + public WmsApiResponse getImageOfWork(@RequestBody BaseWmsRequest request) { + return kateWorkControllerService.getImageOfWork(request); + } + + /** + * 配料界面获取料盒显示信息 + * @param request 请求 + * @return 查询结果 + */ + @PostMapping("/getBoxesAndLacks") + WmsApiResponse getBoxesAndLacks(@RequestBody BaseWmsRequest request) { + return kateWorkControllerService.getBoxesAndLacks(request); + } + + /** + * 分页查看看板 + * @param kanbanQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryKanbanByPage") + WmsApiResponse> queryKanbanByPage(@RequestBody KanbanQuery kanbanQuery) { + return kateWorkControllerService.queryKanbanByPage(kanbanQuery); + } + + @PostMapping("/genClcKanbanRequirement") + BaseWmsApiResponse genClcKanbanRequirement(@RequestBody GenKanbanRequirementRequest genRequest) { + return kateWorkControllerService.genClcKanbanRequirement(genRequest); + } + + /** + * 查询图纸 + * @param imageQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/requestImageDetail") + public WmsApiResponse> requestImageDetail(@RequestBody ImageQuery imageQuery) { + return kateWorkControllerService.requestImageDetail(imageQuery); + } + + /** + * 查询DBS数据--分页 + * @param dbsQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryDbsByPage") + public WmsApiResponse> queryDbsByPage(@RequestBody DbsQuery dbsQuery) { + return kateWorkControllerService.queryDbsByPage(dbsQuery); + } + + /** + * 查询配料单数据--分页 + * @param kittingBomQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryKittingBomByPage") + public WmsApiResponse> queryKittingBomByPage(@RequestBody KittingBomQuery kittingBomQuery) { + return kateWorkControllerService.queryKittingBomByPage(kittingBomQuery); + } + + /** + * 查询配对关系数据--分页 + * @param kittingBomRelationQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryRelationByPage") + public WmsApiResponse> queryKittingRelationByPage(@RequestBody KittingBomRelationQuery kittingBomRelationQuery) { + return kateWorkControllerService.queryKittingRelationByPage(kittingBomRelationQuery); + } +} diff --git a/src/main/java/com/wms_main/controller/wms/LocationController.java b/src/main/java/com/wms_main/controller/wms/LocationController.java new file mode 100644 index 0000000..4983855 --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/LocationController.java @@ -0,0 +1,29 @@ +package com.wms_main.controller.wms; + +import com.wms_main.model.dto.query.LocationQuery; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.service.controller.ILocationControllerService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + * 卡特相关控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/location") +public class LocationController { + private final ILocationControllerService locationControllerService;// 库位控制类服务 + + /** + * 初始化库位 + * @param locationQuery 查询 + * @return 创建结果 + */ + @PostMapping("/genLocations") + public BaseWmsApiResponse genLocations(@RequestBody LocationQuery locationQuery) { + return locationControllerService.genLocations(locationQuery); + } +} diff --git a/src/main/java/com/wms_main/controller/wms/LoginController.java b/src/main/java/com/wms_main/controller/wms/LoginController.java new file mode 100644 index 0000000..6e5a00c --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/LoginController.java @@ -0,0 +1,45 @@ +package com.wms_main.controller.wms; + +import com.wms_main.model.dto.request.wms.LoginRequest; +import com.wms_main.model.vo.wms.UserLoginVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.service.controller.ILoginControllerService; +import jakarta.servlet.http.HttpServletRequest; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +import static com.wms_main.repository.utils.StringUtils.getIpAddr; + +/** + * 登录控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/login") +public class LoginController { + private final HttpServletRequest servletRequest;// 请求头部信息 + + private final ILoginControllerService loginControllerService; + + /** + * 带密码登录 + * @param request 请求 + * @return 登录结果 + */ + @PostMapping("/loginWithAuth") + public WmsApiResponse loginWithAuth(@RequestBody LoginRequest request) { + return loginControllerService.loginWithAuth(request.getLoginAccount(), request.getLoginPassword(), getIpAddr(servletRequest)); + } + + /** + * 无密码登录 + * @param request 请求 + * @return 登录结果 + */ + @PostMapping("/loginWithOutAuth") + public WmsApiResponse loginWithOutAuth(@RequestBody LoginRequest request) { + return loginControllerService.loginWithAuth(request.getLoginAccount(), request.getLoginPassword(), getIpAddr(servletRequest)); + } +} diff --git a/src/main/java/com/wms_main/controller/wms/StockController.java b/src/main/java/com/wms_main/controller/wms/StockController.java new file mode 100644 index 0000000..3442b9b --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/StockController.java @@ -0,0 +1,35 @@ +package com.wms_main.controller.wms; + +import com.wms_main.model.dto.query.StockQuery; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.StockVo; +import com.wms_main.service.controller.IStockControllerService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + * 库存控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/stock") +public class StockController { + /** + * 库存控制类服务 + */ + private final IStockControllerService stockControllerService; + + /** + * 分页查询库存 + * @param stockQuery 查询参数 + * @return 查询结果 + */ + @PostMapping("/queryStocksByPage") + public WmsApiResponse> queryStocksByPage(@RequestBody StockQuery stockQuery) + { + return stockControllerService.queryStocksByPage(stockQuery); + } +} diff --git a/src/main/java/com/wms_main/controller/wms/TaskController.java b/src/main/java/com/wms_main/controller/wms/TaskController.java new file mode 100644 index 0000000..55fa2c9 --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/TaskController.java @@ -0,0 +1,107 @@ +package com.wms_main.controller.wms; + +import com.wms_main.model.bo.wcs.WcsStackerTask; +import com.wms_main.model.dto.request.wcs.WcsBoxArriveRequest; +import com.wms_main.model.dto.request.wcs.WcsTaskResultRequest; +import com.wms_main.model.dto.request.wcs.WcsVehicleInRequest; +import com.wms_main.model.dto.request.wms.*; +import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.TaskConfirmVo; +import com.wms_main.service.controller.ITaskControllerService; +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.*; + +/** + * 任务控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/task") +public class TaskController { + private final ITaskControllerService taskControllerService; + + /** + * 请求入库 + * @param stockInRequest 请求信息 + * @return 处理结果 + */ + @PostMapping("/requireStockIn") + public BaseWmsApiResponse requireStockIn(@RequestBody StockInRequest stockInRequest) { + return taskControllerService.requireStockIn(stockInRequest); + } + + /** + * 请求出库 + * @param stockOutRequest 请求信息 + * @return 处理结果 + */ + @PostMapping("/requireStockOut") + public BaseWmsApiResponse requireStockOut(@RequestBody StockOutRequest stockOutRequest) { + return taskControllerService.requireStockOut(stockOutRequest); + } + + /** + * 接收wcs反馈任务状态 + * @param wcsTaskResultRequest 请求信息 + * @return 处理结果 + */ + @PostMapping("/sendTaskResult") + public BaseWcsApiResponse sendTaskResult(@RequestBody WcsTaskResultRequest wcsTaskResultRequest) { + return taskControllerService.sendTaskResult(wcsTaskResultRequest); + } + + /** + * wcs请求载具入库 + * @param wcsVehicleInRequest 载具请求 + * @return 处理结果 + */ + @PostMapping("/wcsRequestVehicleIn") + public WcsApiResponse wcsRequestVehicleIn(@RequestBody WcsVehicleInRequest wcsVehicleInRequest) { + return taskControllerService.wcsRequestVehicleIn(wcsVehicleInRequest); + } + + /** + * Wcs上报载具到达站台 + * @param boxArriveRequest 请求信息 + * @return 处理结果 + */ + @PostMapping("/boxArrive") + public BaseWcsApiResponse boxArrive(@RequestBody WcsBoxArriveRequest boxArriveRequest) { + return taskControllerService.boxArrive(boxArriveRequest); + } + + /** + * 取消拣选任务 + * @param pickTaskRequest 请求信息 + * @return 处理结果 + */ + @PostMapping("/cancelPickTasks") + public BaseWmsApiResponse cancelPickTasks(@RequestBody PickTaskRequest pickTaskRequest) { + return taskControllerService.cancelPickTasks(pickTaskRequest); + } + + /** + * 查询站台拣货任务---拣配工作之外 + * @param wmsRequest 请求信息 + * @return 处理结果 + */ + @PostMapping("/getCurrentTask") + public WmsApiResponse getCurrentTask(@RequestBody BaseWmsRequest wmsRequest) { + return taskControllerService.getCurrentTask(wmsRequest); + } + + /** + * 确认当前站台拣货任务---拣配工作之外 + * @param confirmTaskRequest 请求信息 + * @return 处理结果 + */ + @PostMapping("/confirmCurrentTask") + public BaseWmsApiResponse confirmCurrentTask(@RequestBody ConfirmTaskRequest confirmTaskRequest) { + return taskControllerService.confirmCurrentTask(confirmTaskRequest); + } +} diff --git a/src/main/java/com/wms_main/controller/wms/TestController.java b/src/main/java/com/wms_main/controller/wms/TestController.java new file mode 100644 index 0000000..4133a54 --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/TestController.java @@ -0,0 +1,99 @@ +package com.wms_main.controller.wms; + +import com.wms_main.app.AppCommon; +import com.wms_main.dao.ITSysMenuService; +import com.wms_main.dao.ITSysPermissionService; +import com.wms_main.dao.ITSysRoleService; +import com.wms_main.dao.ITSysUserService; +import com.wms_main.excel.easypoi.service.IImportExcelEasyPoi; +import com.wms_main.model.dto.request.wms.BaseWmsRequest; +import com.wms_main.model.dto.query.DbsQuery; +import com.wms_main.model.dto.request.wms.InitKateWorkRequest; +import com.wms_main.model.vo.others.FileVo; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.vo.wms.ImageVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.controller.ITestControllerService; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.quartz.Scheduler; +import org.springframework.web.bind.annotation.*; +import org.springframework.web.multipart.MultipartFile; + +import java.util.List; + +/** + * 测试专用 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/test") +public class TestController { + + private final AppCommon appCommon; + private final Scheduler scheduler; + private final IImportExcelEasyPoi importExcelEasyPoi; + private final ITestControllerService testService; + + private final ITSysUserService userService;// User服务 + private final ITSysRoleService roleService;// Role服务 + private final ITSysPermissionService permissionService;// Permission服务 + private final ITSysMenuService menuService;// Menu服务 + + @GetMapping(value = "/test") + public String testApi() { + return UUIDUtils.getNewUUID(); + } +// +// +// @PostMapping(value = "/test2") +// public WmsApiResponse testApiPost(@RequestBody String msg) { +// +// return WmsApiResponse.success("收到", "收到" + msg); +// } +// +// @GetMapping(value = "/testQuartz") +// public String testQuartz() { +// JobUtils.createJob(scheduler, new JobBean(JobTest.class.getName(), JobTest.class, "0/2 * * * * ? *")); +// return "创建定时任务成功。"; +// } +// +// @PostMapping("/testFilter") +// public WmsApiResponse testFilter(@RequestBody WaveRequest originRequest) { +// originRequest.setWavesId("new"); +// return WmsApiResponse.success("收到", originRequest); +// } + + @PostMapping("/testImportImage") + public BaseWmsApiResponse testFilter(@RequestPart("file") MultipartFile file, @RequestPart("fileVo") FileVo fileVo) throws Exception { + return importExcelEasyPoi.doImportDbs(file, fileVo); + } + + /** + * 测试前台向后台请求图片 + * @param request 请求 + * @return 结果 + */ + @PostMapping("/testRequestImage") + public WmsApiResponse> testRequestImage(@RequestBody InitKateWorkRequest request) { + return testService.testRequestImage(request); + } + + /** + * 测试导出 + * @param dbsQuery 请求 + */ + @PostMapping("/testExport") + public void testExport(@RequestBody DbsQuery dbsQuery, HttpServletResponse response) { + try { + testService.testExport(dbsQuery, response); + } catch (Exception e) { + throw new RuntimeException(e); + } + } + + +} diff --git a/src/main/java/com/wms_main/controller/wms/UserController.java b/src/main/java/com/wms_main/controller/wms/UserController.java new file mode 100644 index 0000000..683d982 --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/UserController.java @@ -0,0 +1,18 @@ +package com.wms_main.controller.wms; + +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; + +/** + * 用户控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/wms/user") +public class UserController { +} diff --git a/src/main/java/com/wms_main/controller/wms/mes/MesController.java b/src/main/java/com/wms_main/controller/wms/mes/MesController.java new file mode 100644 index 0000000..7fc8549 --- /dev/null +++ b/src/main/java/com/wms_main/controller/wms/mes/MesController.java @@ -0,0 +1,18 @@ +package com.wms_main.controller.wms.mes; + +import lombok.RequiredArgsConstructor; +import org.springframework.web.bind.annotation.CrossOrigin; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.ResponseBody; +import org.springframework.web.bind.annotation.RestController; + +/** + * 卡特相关控制类 + */ +@RestController +@ResponseBody +@CrossOrigin +@RequiredArgsConstructor +@RequestMapping("/mes") +public class MesController { +} diff --git a/src/main/java/com/wms_main/dao/ITAppConfigService.java b/src/main/java/com/wms_main/dao/ITAppConfigService.java new file mode 100644 index 0000000..601d572 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppConfigService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppConfig; + +/** + * 应用配置表服务接口 + */ +public interface ITAppConfigService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppDbsService.java b/src/main/java/com/wms_main/dao/ITAppDbsService.java new file mode 100644 index 0000000..cb36eda --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppDbsService.java @@ -0,0 +1,18 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppDbs; + +import java.util.List; + +/** + * DBS服务接口 + */ +public interface ITAppDbsService extends IService { + /** + * 根据查询条件查询DBS列表 + * @param dbsQuery 查询条件 + * @return 查询结果 + */ + List selectList(TAppDbs dbsQuery); +} diff --git a/src/main/java/com/wms_main/dao/ITAppEquipmentService.java b/src/main/java/com/wms_main/dao/ITAppEquipmentService.java new file mode 100644 index 0000000..7730b7f --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppEquipmentService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppEquipment; + +/** + * 设备表服务 + */ +public interface ITAppEquipmentService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppGoodsService.java b/src/main/java/com/wms_main/dao/ITAppGoodsService.java new file mode 100644 index 0000000..a7cfaed --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppGoodsService.java @@ -0,0 +1,11 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppGoods; + +/** + * 物料表服务接口 + */ +public interface ITAppGoodsService extends IService { + +} diff --git a/src/main/java/com/wms_main/dao/ITAppImageService.java b/src/main/java/com/wms_main/dao/ITAppImageService.java new file mode 100644 index 0000000..b9611d8 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppImageService.java @@ -0,0 +1,14 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppImage; + +import java.util.List; + +/** + * DBS服务接口 + */ +public interface ITAppImageService extends IService { + List selectAllList(); +} diff --git a/src/main/java/com/wms_main/dao/ITAppJobsService.java b/src/main/java/com/wms_main/dao/ITAppJobsService.java new file mode 100644 index 0000000..74f0e68 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppJobsService.java @@ -0,0 +1,19 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppJobs; +import com.wms_main.quartz.config.JobBean; + +import java.util.List; + +/** + * Jobs服务 + */ +public interface ITAppJobsService extends IService { + /** + * 查询job + * @param jobQuery 查询条件 + * @return 查询结果,返回jobBean + */ + List getJobs(TAppJobs jobQuery); +} diff --git a/src/main/java/com/wms_main/dao/ITAppKanbanService.java b/src/main/java/com/wms_main/dao/ITAppKanbanService.java new file mode 100644 index 0000000..2c0124e --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppKanbanService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppKanban; + +/** + * 看板服务接口 + */ +public interface ITAppKanbanService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppLocationService.java b/src/main/java/com/wms_main/dao/ITAppLocationService.java new file mode 100644 index 0000000..669f362 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppLocationService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppLocation; + +/** + * 库位表服务接口 + */ +public interface ITAppLocationService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppOutsRecordService.java b/src/main/java/com/wms_main/dao/ITAppOutsRecordService.java new file mode 100644 index 0000000..a169f7e --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppOutsRecordService.java @@ -0,0 +1,7 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppOutsRecord; + +public interface ITAppOutsRecordService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppOutsService.java b/src/main/java/com/wms_main/dao/ITAppOutsService.java new file mode 100644 index 0000000..a34ef0f --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppOutsService.java @@ -0,0 +1,7 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppOuts; + +public interface ITAppOutsService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppPickPlanService.java b/src/main/java/com/wms_main/dao/ITAppPickPlanService.java new file mode 100644 index 0000000..88627a8 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppPickPlanService.java @@ -0,0 +1,7 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppPickPlan; + +public interface ITAppPickPlanService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppPickTaskBakService.java b/src/main/java/com/wms_main/dao/ITAppPickTaskBakService.java new file mode 100644 index 0000000..c087b01 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppPickTaskBakService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppPickTaskBak; + +/** + * 拣选记录表服务接口 + */ +public interface ITAppPickTaskBakService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppPickTaskService.java b/src/main/java/com/wms_main/dao/ITAppPickTaskService.java new file mode 100644 index 0000000..71b7a81 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppPickTaskService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppPickTask; + +/** + * 拣选任务表服务接口 + */ +public interface ITAppPickTaskService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppProductExtendService.java b/src/main/java/com/wms_main/dao/ITAppProductExtendService.java new file mode 100644 index 0000000..905e8fb --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppProductExtendService.java @@ -0,0 +1,14 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppProductExtend; + +import java.util.List; + +/** + * DBS服务接口 + */ +public interface ITAppProductExtendService extends IService { + List selectAllList(); +} diff --git a/src/main/java/com/wms_main/dao/ITAppProductService.java b/src/main/java/com/wms_main/dao/ITAppProductService.java new file mode 100644 index 0000000..67fcba2 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppProductService.java @@ -0,0 +1,14 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppProduct; + +import java.util.List; + +/** + * DBS服务接口 + */ +public interface ITAppProductService extends IService { + List selectAllList(); +} diff --git a/src/main/java/com/wms_main/dao/ITAppSingleProductService.java b/src/main/java/com/wms_main/dao/ITAppSingleProductService.java new file mode 100644 index 0000000..533ea24 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppSingleProductService.java @@ -0,0 +1,13 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppSingleProduct; + +import java.util.List; + +/** + * DBS服务接口 + */ +public interface ITAppSingleProductService extends IService { + List selectAllList(); +} diff --git a/src/main/java/com/wms_main/dao/ITAppStandService.java b/src/main/java/com/wms_main/dao/ITAppStandService.java new file mode 100644 index 0000000..c63f5e3 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppStandService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppStand; + +/** + * 站台表映射 + */ +public interface ITAppStandService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppStandWorkService.java b/src/main/java/com/wms_main/dao/ITAppStandWorkService.java new file mode 100644 index 0000000..82b6719 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppStandWorkService.java @@ -0,0 +1,11 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppStand; +import com.wms_main.model.po.TAppStandWork; + +/** + * 站台工作映射 + */ +public interface ITAppStandWorkService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppStockService.java b/src/main/java/com/wms_main/dao/ITAppStockService.java new file mode 100644 index 0000000..30edd38 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppStockService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppStock; + +/** + * 库存表服务接口 + */ +public interface ITAppStockService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppStockUpdateService.java b/src/main/java/com/wms_main/dao/ITAppStockUpdateService.java new file mode 100644 index 0000000..bd99d9c --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppStockUpdateService.java @@ -0,0 +1,7 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppStockUpdate; + +public interface ITAppStockUpdateService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppTaskBakService.java b/src/main/java/com/wms_main/dao/ITAppTaskBakService.java new file mode 100644 index 0000000..a773319 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppTaskBakService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppTaskBak; + +/** + * 任务记录表服务接口 + */ +public interface ITAppTaskBakService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppTaskService.java b/src/main/java/com/wms_main/dao/ITAppTaskService.java new file mode 100644 index 0000000..ab1a8fd --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppTaskService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppTask; + +/** + * 任务表服务接口 + */ +public interface ITAppTaskService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppVehicleService.java b/src/main/java/com/wms_main/dao/ITAppVehicleService.java new file mode 100644 index 0000000..aef5733 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppVehicleService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppVehicle; + +/** + * 载具表服务接口 + */ +public interface ITAppVehicleService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppWcsTaskBakService.java b/src/main/java/com/wms_main/dao/ITAppWcsTaskBakService.java new file mode 100644 index 0000000..3e7691a --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppWcsTaskBakService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppWcsTaskBak; + +/** + * wcs任务记录表mapper + */ +public interface ITAppWcsTaskBakService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppWcsTaskService.java b/src/main/java/com/wms_main/dao/ITAppWcsTaskService.java new file mode 100644 index 0000000..cb4b841 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppWcsTaskService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppWcsTask; + +/** + * wcs任务表服务 + */ +public interface ITAppWcsTaskService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppWorkRecordService.java b/src/main/java/com/wms_main/dao/ITAppWorkRecordService.java new file mode 100644 index 0000000..a593c87 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppWorkRecordService.java @@ -0,0 +1,11 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppWork; +import com.wms_main.model.po.TAppWorkRecord; + +/** + * work表服务 + */ +public interface ITAppWorkRecordService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITAppWorkService.java b/src/main/java/com/wms_main/dao/ITAppWorkService.java new file mode 100644 index 0000000..c805367 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITAppWorkService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TAppWork; + +/** + * work表服务 + */ +public interface ITAppWorkService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITSysMenuService.java b/src/main/java/com/wms_main/dao/ITSysMenuService.java new file mode 100644 index 0000000..82e32b2 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITSysMenuService.java @@ -0,0 +1,18 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TSysMenu; + +import java.util.List; + +/** + * Menu服务 + */ +public interface ITSysMenuService extends IService { + /** + * 根据roleId获取到所有菜单 + * @param roleId 角色id + * @return 查询结果 + */ + List selMenuByRoleId(String roleId); +} diff --git a/src/main/java/com/wms_main/dao/ITSysPermissionService.java b/src/main/java/com/wms_main/dao/ITSysPermissionService.java new file mode 100644 index 0000000..e649197 --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITSysPermissionService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TSysPermission; + +/** + * Permission服务 + */ +public interface ITSysPermissionService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITSysRoleService.java b/src/main/java/com/wms_main/dao/ITSysRoleService.java new file mode 100644 index 0000000..658d6bf --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITSysRoleService.java @@ -0,0 +1,10 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TSysRole; + +/** + * Role服务 + */ +public interface ITSysRoleService extends IService { +} diff --git a/src/main/java/com/wms_main/dao/ITSysUserService.java b/src/main/java/com/wms_main/dao/ITSysUserService.java new file mode 100644 index 0000000..3d107cd --- /dev/null +++ b/src/main/java/com/wms_main/dao/ITSysUserService.java @@ -0,0 +1,24 @@ +package com.wms_main.dao; + +import com.baomidou.mybatisplus.extension.service.IService; +import com.wms_main.model.po.TSysUser; + +/** + * User服务 + */ +public interface ITSysUserService extends IService { + /** + * 获取用户信息---带验证 + * @param loginAccount 登录账号 + * @param loginPassword 登录密码 + * @return 用户信息 + */ + TSysUser getUserWithAuth(String loginAccount, String loginPassword); + + /** + * 获取用户信息---无验证 + * @param loginAccount 登录账号 + * @return 结果 + */ + TSysUser getUserWithOutAuth(String loginAccount); +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppConfigServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppConfigServiceImpl.java new file mode 100644 index 0000000..dc67459 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppConfigServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppConfigService; +import com.wms_main.mapper.AppConfigMapper; +import com.wms_main.model.po.TAppConfig; +import org.springframework.stereotype.Service; + +/** + * 应用配置表服务实现 + */ +@Service +public class TAppConfigServiceImpl extends ServiceImpl implements ITAppConfigService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppDbsServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppDbsServiceImpl.java new file mode 100644 index 0000000..f24d480 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppDbsServiceImpl.java @@ -0,0 +1,67 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppDbsService; +import com.wms_main.mapper.AppDbsMapper; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.repository.utils.StringUtils; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * DBS服务实现 + */ +@Service +public class TAppDbsServiceImpl extends ServiceImpl implements ITAppDbsService { + /** + * 实现 + * @param dbsQuery 查询条件 + * @return 结果 + */ + @Override + public List selectList(TAppDbs dbsQuery) { + if (dbsQuery == null) { + return list(); + } + LambdaQueryWrapper dbsQueryWrapper = new LambdaQueryWrapper<>(); + if (StringUtils.isNotEmpty(dbsQuery.getDbsId())) { + // dbsId + dbsQueryWrapper.eq(TAppDbs::getDbsId, dbsQuery.getDbsId()); + } + if (StringUtils.isNotEmpty(dbsQuery.getWorkOrder())) { + // workOrder + dbsQueryWrapper.eq(TAppDbs::getWorkOrder, dbsQuery.getWorkOrder()); + } + if (StringUtils.isNotEmpty(dbsQuery.getProductIdOrigin())) { + // productIdOrigin + dbsQueryWrapper.eq(TAppDbs::getProductIdOrigin, dbsQuery.getProductIdOrigin()); + } + if (StringUtils.isNotEmpty(dbsQuery.getProductId())) { + // productId + dbsQueryWrapper.eq(TAppDbs::getProductId, dbsQuery.getProductId()); + } + if (dbsQuery.getTestPlanStartDate() != null) { + // planStartDate + dbsQueryWrapper.eq(TAppDbs::getTestPlanStartDate, dbsQuery.getTestPlanStartDate()); + } + if (dbsQuery.getPlanProduction() != null) { + // planProduction + dbsQueryWrapper.eq(TAppDbs::getPlanProduction, dbsQuery.getPlanProduction()); + } + if (StringUtils.isNotEmpty(dbsQuery.getFamily())) { + // family + dbsQueryWrapper.eq(TAppDbs::getFamily, dbsQuery.getFamily()); + } + if (StringUtils.isNotEmpty(dbsQuery.getTestNo())) { + // testNo + dbsQueryWrapper.eq(TAppDbs::getTestNo, dbsQuery.getTestNo()); + } + if (dbsQuery.getDbsStatus() != null) { + // dbsStatus + dbsQueryWrapper.eq(TAppDbs::getDbsStatus, dbsQuery.getDbsStatus()); + } + return list(dbsQueryWrapper); + } +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppEquipmentServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppEquipmentServiceImpl.java new file mode 100644 index 0000000..e9eae33 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppEquipmentServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppEquipmentService; +import com.wms_main.mapper.AppEquipmentMapper; +import com.wms_main.model.po.TAppEquipment; +import org.springframework.stereotype.Service; + +/** + * 设备表服务实现 + */ +@Service +public class TAppEquipmentServiceImpl extends ServiceImpl implements ITAppEquipmentService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppGoodsServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppGoodsServiceImpl.java new file mode 100644 index 0000000..004b3eb --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppGoodsServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppGoodsService; +import com.wms_main.mapper.AppGoodsMapper; +import com.wms_main.model.po.TAppGoods; +import org.springframework.stereotype.Service; + +/** + * 物料服务实现类 + */ +@Service +public class TAppGoodsServiceImpl extends ServiceImpl implements ITAppGoodsService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppImageServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppImageServiceImpl.java new file mode 100644 index 0000000..167e02b --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppImageServiceImpl.java @@ -0,0 +1,23 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppDbsService; +import com.wms_main.dao.ITAppImageService; +import com.wms_main.mapper.AppDbsMapper; +import com.wms_main.mapper.AppImageMapper; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppImage; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * DBS服务实现 + */ +@Service +public class TAppImageServiceImpl extends ServiceImpl implements ITAppImageService { + @Override + public List selectAllList() { + return super.list(); + } +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppJobsServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppJobsServiceImpl.java new file mode 100644 index 0000000..f0719cc --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppJobsServiceImpl.java @@ -0,0 +1,70 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppJobsService; +import com.wms_main.mapper.AppJobsMapper; +import com.wms_main.model.po.TAppJobs; +import com.wms_main.quartz.config.JobBean; +import com.wms_main.repository.utils.StringUtils; +import lombok.extern.slf4j.Slf4j; +import org.quartz.Job; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; + +/** + * Jobs服务实现 + */ +@Service +@Slf4j +public class TAppJobsServiceImpl extends ServiceImpl implements ITAppJobsService { + /** + * 实现 + * @param jobQuery 查询条件 + * @return 结果 + */ + @Override + public List getJobs(TAppJobs jobQuery) { + List jobs; + if (jobQuery == null) { + // 无查询条件,视为查询所有。 + jobs = list(); + } else { + LambdaQueryWrapper jobsQueryWrapper = new LambdaQueryWrapper<>(); + if (StringUtils.isNotEmpty(jobQuery.getJobName())) { + // jobName + jobsQueryWrapper.eq(TAppJobs::getJobName, jobQuery.getJobName()); + } + if (StringUtils.isNotEmpty(jobQuery.getJobClass())) { + // JobClass + jobsQueryWrapper.eq(TAppJobs::getJobClass, jobQuery.getJobClass()); + } + if (jobQuery.getJobStatus() != null) { + // JobStatus + jobsQueryWrapper.eq(TAppJobs::getJobStatus, jobQuery.getJobStatus()); + } + jobs = list(jobsQueryWrapper); + } + if (jobs != null && !jobs.isEmpty()) { + List jobsBeans = new java.util.ArrayList<>(); + for (TAppJobs job : jobs) { + try { + Class jobClass = Class.forName(job.getJobClass()); + if (Job.class.isAssignableFrom(jobClass)) { + jobsBeans.add(new JobBean(job.getJobName(), jobClass.asSubclass(Job.class), job.getCronExpression(), job.getTimer(), job.getTimerType(), job.getJobStatus())); + } else { + log.error("类{}不是Job子类。", job.getJobClass()); + } + } catch (ClassNotFoundException e) { + log.error("类未找到:{}。", job.getJobClass()); + } catch (ClassCastException e) { + log.error("类型转换错误:{}。", job.getJobClass()); + } + } + return jobsBeans; + } + return Collections.emptyList(); + } +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppKanbanServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppKanbanServiceImpl.java new file mode 100644 index 0000000..0245b86 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppKanbanServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppKanbanService; +import com.wms_main.mapper.AppKanbanMapper; +import com.wms_main.model.po.TAppKanban; +import org.springframework.stereotype.Service; + +/** + * 看板服务实现类 + */ +@Service +public class TAppKanbanServiceImpl extends ServiceImpl implements ITAppKanbanService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppLocationServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppLocationServiceImpl.java new file mode 100644 index 0000000..0d2d946 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppLocationServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppLocationService; +import com.wms_main.mapper.AppLocationMapper; +import com.wms_main.model.po.TAppLocation; +import org.springframework.stereotype.Service; + +/** + * 库位表服务实现 + */ +@Service +public class TAppLocationServiceImpl extends ServiceImpl implements ITAppLocationService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppOutsRecordServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppOutsRecordServiceImpl.java new file mode 100644 index 0000000..2e04a42 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppOutsRecordServiceImpl.java @@ -0,0 +1,11 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppOutsRecordService; +import com.wms_main.mapper.AppOutsRecordMapper; +import com.wms_main.model.po.TAppOutsRecord; +import org.springframework.stereotype.Service; + +@Service +public class TAppOutsRecordServiceImpl extends ServiceImpl implements ITAppOutsRecordService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppOutsServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppOutsServiceImpl.java new file mode 100644 index 0000000..9b43b64 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppOutsServiceImpl.java @@ -0,0 +1,11 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppOutsService; +import com.wms_main.mapper.AppOutsMapper; +import com.wms_main.model.po.TAppOuts; +import org.springframework.stereotype.Service; + +@Service +public class TAppOutsServiceImpl extends ServiceImpl implements ITAppOutsService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppPickPlanServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppPickPlanServiceImpl.java new file mode 100644 index 0000000..21b4ca9 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppPickPlanServiceImpl.java @@ -0,0 +1,11 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppPickPlanService; +import com.wms_main.mapper.AppPickPlanMapper; +import com.wms_main.model.po.TAppPickPlan; +import org.springframework.stereotype.Service; + +@Service +public class TAppPickPlanServiceImpl extends ServiceImpl implements ITAppPickPlanService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppPickTaskBakServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppPickTaskBakServiceImpl.java new file mode 100644 index 0000000..d1c4fd1 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppPickTaskBakServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppPickTaskBakService; +import com.wms_main.mapper.AppPickTaskBakMapper; +import com.wms_main.model.po.TAppPickTaskBak; +import org.springframework.stereotype.Service; + +/** + * 拣选记录表服务实现 + */ +@Service +public class TAppPickTaskBakServiceImpl extends ServiceImpl implements ITAppPickTaskBakService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppPickTaskServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppPickTaskServiceImpl.java new file mode 100644 index 0000000..4856738 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppPickTaskServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppPickTaskService; +import com.wms_main.mapper.AppPickTaskMapper; +import com.wms_main.model.po.TAppPickTask; +import org.springframework.stereotype.Service; + +/** + * 拣选任务表服务实现 + */ +@Service +public class TAppPickTaskServiceImpl extends ServiceImpl implements ITAppPickTaskService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppProductExtendServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppProductExtendServiceImpl.java new file mode 100644 index 0000000..3ff6652 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppProductExtendServiceImpl.java @@ -0,0 +1,23 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppDbsService; +import com.wms_main.dao.ITAppProductExtendService; +import com.wms_main.mapper.AppDbsMapper; +import com.wms_main.mapper.AppProductExtendsMapper; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppProductExtend; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * DBS服务实现 + */ +@Service +public class TAppProductExtendServiceImpl extends ServiceImpl implements ITAppProductExtendService { + @Override + public List selectAllList() { + return super.list(); + } +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppProductServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppProductServiceImpl.java new file mode 100644 index 0000000..8888db0 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppProductServiceImpl.java @@ -0,0 +1,24 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppDbsService; +import com.wms_main.dao.ITAppProductService; +import com.wms_main.mapper.AppDbsMapper; +import com.wms_main.mapper.AppProductMapper; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppProduct; +import com.wms_main.model.po.TAppSingleProduct; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * DBS服务实现 + */ +@Service +public class TAppProductServiceImpl extends ServiceImpl implements ITAppProductService { + @Override + public List selectAllList() { + return super.list(); + } +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppSingleProductServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppSingleProductServiceImpl.java new file mode 100644 index 0000000..2578d3e --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppSingleProductServiceImpl.java @@ -0,0 +1,20 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppSingleProductService; +import com.wms_main.mapper.AppSingleProductMapper; +import com.wms_main.model.po.TAppSingleProduct; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * DBS服务实现 + */ +@Service +public class TAppSingleProductServiceImpl extends ServiceImpl implements ITAppSingleProductService { + @Override + public List selectAllList() { + return super.list(); + } +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppStandServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppStandServiceImpl.java new file mode 100644 index 0000000..ebca7ec --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppStandServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppStandService; +import com.wms_main.mapper.AppStandMapper; +import com.wms_main.model.po.TAppStand; +import org.springframework.stereotype.Service; + +/** + * 站台表服务实现 + */ +@Service +public class TAppStandServiceImpl extends ServiceImpl implements ITAppStandService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppStandWorkServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppStandWorkServiceImpl.java new file mode 100644 index 0000000..beb02d2 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppStandWorkServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppStandWorkService; +import com.wms_main.mapper.AppStandWorkMapper; +import com.wms_main.model.po.TAppStandWork; +import org.springframework.stereotype.Service; + +/** + * 站台工作服务实现 + */ +@Service +public class TAppStandWorkServiceImpl extends ServiceImpl implements ITAppStandWorkService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppStockServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppStockServiceImpl.java new file mode 100644 index 0000000..6d978af --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppStockServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppStockService; +import com.wms_main.mapper.AppStockMapper; +import com.wms_main.model.po.TAppStock; +import org.springframework.stereotype.Service; + +/** + * 库存表服务实现 + */ +@Service +public class TAppStockServiceImpl extends ServiceImpl implements ITAppStockService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppStockUpdateServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppStockUpdateServiceImpl.java new file mode 100644 index 0000000..be233f3 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppStockUpdateServiceImpl.java @@ -0,0 +1,11 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppStockUpdateService; +import com.wms_main.mapper.AppStockUpdateMapper; +import com.wms_main.model.po.TAppStockUpdate; +import org.springframework.stereotype.Service; + +@Service +public class TAppStockUpdateServiceImpl extends ServiceImpl implements ITAppStockUpdateService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppTaskBakServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppTaskBakServiceImpl.java new file mode 100644 index 0000000..22e0198 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppTaskBakServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppTaskBakService; +import com.wms_main.mapper.AppTaskBakMapper; +import com.wms_main.model.po.TAppTaskBak; +import org.springframework.stereotype.Service; + +/** + * 任务记录表 服务实现类 + */ +@Service +public class TAppTaskBakServiceImpl extends ServiceImpl implements ITAppTaskBakService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppTaskServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppTaskServiceImpl.java new file mode 100644 index 0000000..96340b4 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppTaskServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppTaskService; +import com.wms_main.mapper.AppTaskMapper; +import com.wms_main.model.po.TAppTask; +import org.springframework.stereotype.Service; + +/** + * 任务表服务实现 + */ +@Service +public class TAppTaskServiceImpl extends ServiceImpl implements ITAppTaskService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppVehicleServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppVehicleServiceImpl.java new file mode 100644 index 0000000..72a6978 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppVehicleServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppVehicleService; +import com.wms_main.mapper.AppVehicleMapper; +import com.wms_main.model.po.TAppVehicle; +import org.springframework.stereotype.Service; + +/** + * 载具表服务实现类 + */ +@Service +public class TAppVehicleServiceImpl extends ServiceImpl implements ITAppVehicleService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppWcsTaskBakServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppWcsTaskBakServiceImpl.java new file mode 100644 index 0000000..9dfbe64 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppWcsTaskBakServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppWcsTaskBakService; +import com.wms_main.mapper.AppWcsTaskBakMapper; +import com.wms_main.model.po.TAppWcsTaskBak; +import org.springframework.stereotype.Service; + +/** + * wcs任务备份表(TAppWcsTaskBak)表服务实现类 + */ +@Service +public class TAppWcsTaskBakServiceImpl extends ServiceImpl implements ITAppWcsTaskBakService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppWcsTaskServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppWcsTaskServiceImpl.java new file mode 100644 index 0000000..7e1b682 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppWcsTaskServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppWcsTaskService; +import com.wms_main.mapper.AppWcsTaskMapper; +import com.wms_main.model.po.TAppWcsTask; +import org.springframework.stereotype.Service; + +/** + * wcs任务表(TAppWcsTask)表服务实现类 + */ +@Service +public class TAppWcsTaskServiceImpl extends ServiceImpl implements ITAppWcsTaskService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppWorkRecordServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppWorkRecordServiceImpl.java new file mode 100644 index 0000000..21b87f3 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppWorkRecordServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppWorkRecordService; +import com.wms_main.mapper.AppWorkRecordMapper; +import com.wms_main.model.po.TAppWorkRecord; +import org.springframework.stereotype.Service; + +/** + * work_record服务实现 + */ +@Service +public class TAppWorkRecordServiceImpl extends ServiceImpl implements ITAppWorkRecordService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TAppWorkServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TAppWorkServiceImpl.java new file mode 100644 index 0000000..32f3cfc --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TAppWorkServiceImpl.java @@ -0,0 +1,11 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITAppWorkService; +import com.wms_main.mapper.AppWorkMapper; +import com.wms_main.model.po.TAppWork; +import org.springframework.stereotype.Service; + +@Service +public class TAppWorkServiceImpl extends ServiceImpl implements ITAppWorkService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TSysMenuServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TSysMenuServiceImpl.java new file mode 100644 index 0000000..9213d6c --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TSysMenuServiceImpl.java @@ -0,0 +1,34 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITSysMenuService; +import com.wms_main.mapper.SysMenuMapper; +import com.wms_main.model.po.TSysMenu; +import com.wms_main.repository.utils.StringUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.List; + +/** + * Menu服务实现 + */ +@Service +@RequiredArgsConstructor +public class TSysMenuServiceImpl extends ServiceImpl implements ITSysMenuService { + private final SysMenuMapper sysMenuMapper; + + /** + * 实现 + * @param roleId 角色id + * @return 查询结果 + */ + @Override + public List selMenuByRoleId(String roleId) { + if (StringUtils.isEmpty(roleId)) { + return Collections.emptyList(); + } + return sysMenuMapper.selMenuByRoleId(roleId); + } +} diff --git a/src/main/java/com/wms_main/dao/impl/TSysPermissionServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TSysPermissionServiceImpl.java new file mode 100644 index 0000000..c8df9a1 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TSysPermissionServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITSysPermissionService; +import com.wms_main.mapper.SysPermissionMapper; +import com.wms_main.model.po.TSysPermission; +import org.springframework.stereotype.Service; + +/** + * Permission服务实现 + */ +@Service +public class TSysPermissionServiceImpl extends ServiceImpl implements ITSysPermissionService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TSysRoleServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TSysRoleServiceImpl.java new file mode 100644 index 0000000..f123bbd --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TSysRoleServiceImpl.java @@ -0,0 +1,14 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITSysRoleService; +import com.wms_main.mapper.SysRoleMapper; +import com.wms_main.model.po.TSysRole; +import org.springframework.stereotype.Service; + +/** + * Role服务实现 + */ +@Service +public class TSysRoleServiceImpl extends ServiceImpl implements ITSysRoleService { +} diff --git a/src/main/java/com/wms_main/dao/impl/TSysUserServiceImpl.java b/src/main/java/com/wms_main/dao/impl/TSysUserServiceImpl.java new file mode 100644 index 0000000..742d599 --- /dev/null +++ b/src/main/java/com/wms_main/dao/impl/TSysUserServiceImpl.java @@ -0,0 +1,35 @@ +package com.wms_main.dao.impl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.wms_main.dao.ITSysUserService; +import com.wms_main.mapper.SysUserMapper; +import com.wms_main.model.po.TSysUser; +import org.springframework.stereotype.Service; + +import static com.wms_main.repository.utils.StringUtils.encryptPassword; + +/** + * User服务实现 + */ +@Service +public class TSysUserServiceImpl extends ServiceImpl implements ITSysUserService { + @Override + public TSysUser getUserWithAuth(String loginAccount, String loginPassword) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // 设置查询条件 + queryWrapper.eq(TSysUser::getLoginAccount, loginAccount) + .eq(TSysUser::getLoginPassword, encryptPassword(loginPassword)); + + return getOne(queryWrapper); + } + + @Override + public TSysUser getUserWithOutAuth(String loginAccount) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + // 设置查询条件 + queryWrapper.eq(TSysUser::getLoginAccount, loginAccount); + + return getOne(queryWrapper); + } +} diff --git a/src/main/java/com/wms_main/excel/ReadMe.md b/src/main/java/com/wms_main/excel/ReadMe.md new file mode 100644 index 0000000..e69de29 diff --git a/src/main/java/com/wms_main/excel/easyexcel/converter/TaskStatusConvertor.java b/src/main/java/com/wms_main/excel/easyexcel/converter/TaskStatusConvertor.java new file mode 100644 index 0000000..331c6ca --- /dev/null +++ b/src/main/java/com/wms_main/excel/easyexcel/converter/TaskStatusConvertor.java @@ -0,0 +1,83 @@ +package com.wms_main.excel.easyexcel.converter; + +import com.alibaba.excel.converters.Converter; +import com.alibaba.excel.converters.WriteConverterContext; +import com.alibaba.excel.enums.CellDataTypeEnum; +import com.alibaba.excel.metadata.GlobalConfiguration; +import com.alibaba.excel.metadata.data.ReadCellData; +import com.alibaba.excel.metadata.data.WriteCellData; +import com.alibaba.excel.metadata.property.ExcelContentProperty; + +/** + * excel任务状态转换 + */ +public class TaskStatusConvertor implements Converter { + @Override + public Class supportJavaTypeKey() { + return Integer.class; + } + + @Override + public CellDataTypeEnum supportExcelTypeKey() { + return CellDataTypeEnum.STRING; + } + + /** + * 这里是读的时候会调用 + * + * @return 转换后的任务状态 + */ + @Override + public Integer convertToJavaData(ReadCellData cellData, ExcelContentProperty contentProperty, GlobalConfiguration globalConfiguration) { + String cellValue = cellData.getStringValue(); + return switch (cellValue.trim()) { + case "重复入库" -> -2; + case "暂存任务" -> -1; + case "任务新建,待下发" -> 0; + case "任务已下发" -> 1; + case "任务开始执行" -> 2; + case "出库完成" -> 3; + case "环线运输" -> 4; + case "拣选中" -> 8; + case "盘点中" -> 9; + case "任务完成" -> 100; + case "任务取消" -> 998; + default -> 999; + }; + } + + /** + * 这里是写的时候会调用 + * + * @return 转换后的任务状态 + */ + @Override + public WriteCellData convertToExcelData(WriteConverterContext context) { + Integer value = context.getValue(); + if (value == -2) { + return new WriteCellData<>("重复入库"); + } else if (value == -1) { + return new WriteCellData<>("暂存任务"); + } else if (value == 0) { + return new WriteCellData<>("任务新建,待下发"); + } else if (value == 1) { + return new WriteCellData<>("任务已下发"); + } else if (value == 2) { + return new WriteCellData<>("任务开始执行"); + } else if (value == 3) { + return new WriteCellData<>("出库完成"); + } else if (value == 4) { + return new WriteCellData<>("环线运输"); + } else if (value == 8) { + return new WriteCellData<>("拣选中"); + } else if (value == 9) { + return new WriteCellData<>("盘点中"); + } else if (value == 100) { + return new WriteCellData<>("任务完成"); + } else if (value == 998) { + return new WriteCellData<>("任务取消"); + } else { + return new WriteCellData<>("任务异常"); + } + } +} diff --git a/src/main/java/com/wms_main/excel/easyexcel/converter/TaskTypeConvertor.java b/src/main/java/com/wms_main/excel/easyexcel/converter/TaskTypeConvertor.java new file mode 100644 index 0000000..c0e6059 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easyexcel/converter/TaskTypeConvertor.java @@ -0,0 +1,62 @@ +package com.wms_main.excel.easyexcel.converter; + +import com.alibaba.excel.converters.Converter; +import com.alibaba.excel.converters.WriteConverterContext; +import com.alibaba.excel.enums.CellDataTypeEnum; +import com.alibaba.excel.metadata.GlobalConfiguration; +import com.alibaba.excel.metadata.data.ReadCellData; +import com.alibaba.excel.metadata.data.WriteCellData; +import com.alibaba.excel.metadata.property.ExcelContentProperty; + +/** + * excel任务类型转换 + */ +public class TaskTypeConvertor implements Converter { + @Override + public Class supportJavaTypeKey() { + return Integer.class; + } + + @Override + public CellDataTypeEnum supportExcelTypeKey() { + return CellDataTypeEnum.STRING; + } + + /** + * 这里是读的时候会调用 + * + * @return 转换后的任务类型 + */ + @Override + public Integer convertToJavaData(ReadCellData cellData, ExcelContentProperty contentProperty, GlobalConfiguration globalConfiguration) { + String cellValue = cellData.getStringValue(); + return switch (cellValue.trim()) { + case "入库" -> 1; + case "出库" -> 2; + case "盘点" -> 10; + case "移库" -> 9; + default -> -1; + }; + } + + /** + * 这里是写的时候会调用 + * + * @return 转换后的任务类型 + */ + @Override + public WriteCellData convertToExcelData(WriteConverterContext context) { + Integer value = context.getValue(); + if (value == 1) { + return new WriteCellData<>("入库"); + } else if (value == 2) { + return new WriteCellData<>("出库"); + } else if (value == 10) { + return new WriteCellData<>("盘点"); + } else if (value == 9) { + return new WriteCellData<>("移库"); + } else { + return new WriteCellData<>("未知"); + } + } +} diff --git a/src/main/java/com/wms_main/excel/easyexcel/style/ExcelContentStyle.java b/src/main/java/com/wms_main/excel/easyexcel/style/ExcelContentStyle.java new file mode 100644 index 0000000..f733eed --- /dev/null +++ b/src/main/java/com/wms_main/excel/easyexcel/style/ExcelContentStyle.java @@ -0,0 +1,30 @@ +package com.wms_main.excel.easyexcel.style; + +import com.alibaba.excel.write.metadata.style.WriteCellStyle; +import com.alibaba.excel.write.style.HorizontalCellStyleStrategy; +import org.apache.poi.ss.usermodel.BorderStyle; +import org.apache.poi.ss.usermodel.HorizontalAlignment; +import org.apache.poi.ss.usermodel.VerticalAlignment; + +public class ExcelContentStyle { + //设置excel内容格式 + public static HorizontalCellStyleStrategy getContentStyle(){ + //内容策略 + WriteCellStyle contentWriteCellStyle = new WriteCellStyle(); + //设置样式 + contentWriteCellStyle.setBorderBottom(BorderStyle.THIN);//设置底边框; + contentWriteCellStyle.setBottomBorderColor((short) 0);//设置底边框颜色; + contentWriteCellStyle.setBorderLeft(BorderStyle.THIN); //设置左边框; + contentWriteCellStyle.setLeftBorderColor((short) 0);//设置左边框颜色; + contentWriteCellStyle.setBorderRight(BorderStyle.THIN);//设置右边框; + contentWriteCellStyle.setRightBorderColor((short) 0);//设置右边框颜色; + contentWriteCellStyle.setBorderTop(BorderStyle.THIN);//设置顶边框; + contentWriteCellStyle.setTopBorderColor((short) 0); ///设置顶边框颜色; + + contentWriteCellStyle.setWrapped(true); //设置自动换行; + contentWriteCellStyle.setHorizontalAlignment(HorizontalAlignment.CENTER);// 水平居中 + contentWriteCellStyle.setVerticalAlignment(VerticalAlignment.CENTER);// 垂直居中 + + return new HorizontalCellStyleStrategy(contentWriteCellStyle, contentWriteCellStyle); + } +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/DbsExcelTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/DbsExcelTemplate.java new file mode 100644 index 0000000..afd2bb0 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/DbsExcelTemplate.java @@ -0,0 +1,83 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +/** + * excel模板 + * Dbs + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class DbsExcelTemplate { + /** + * 工单 + */ + @Excel(name = "工单号") + private String workOrder; + /** + * dbs原始未处理的零件号,成品号 + */ + @Excel(name = "零件号") + private String productIdOrigin; + /** + * Test计划开始时间 + */ + @Excel(name = "Test计划开始时间") + private LocalDate testPlanStartDate; + /** + * Test计划完成时间 + */ + @Excel(name = "Test计划完成时间") + private LocalDate testPlanFinishDate; + /** + * PNT计划开始时间 + */ + @Excel(name = "PNT计划开始时间") + private LocalDate pntPlanStartDate; + /** + * PNT计划完成时间 + */ + @Excel(name = "PNT计划完成时间") + private LocalDate pntPlanFinishDate; + /** + * 计划产量/套 + */ + @Excel(name = "计划产量") + private Integer planProduction; + /** + * 设备名称 + */ + @Excel(name = "设备名称") + private String equipmentName; + /** + * 班次 + */ + @Excel(name = "班次") + private String workShift; + /** + * Family + */ + @Excel(name = "Family") + private String family; + /** + * Test No# + */ + @Excel(name = "Test No#") + private String testNo; + /** + * K料备注 + */ + @Excel(name = "K料备注") + private String kittingRemark; + /** + * 备注 + */ + @Excel(name = "备注") + private String remark; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/GoodsExcelTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/GoodsExcelTemplate.java new file mode 100644 index 0000000..09d44df --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/GoodsExcelTemplate.java @@ -0,0 +1,71 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * excel模版 + * 物料基础信息 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GoodsExcelTemplate { + /** + * 工厂 + */ + @Excel(name = "Plant") + private String plant; + /** + * 物料 + */ + @Excel(name = "Material") + private String material; + /** + * 物料描述 + */ + @Excel(name = "Description") + private String description; + /** + * 供应商 + */ + @Excel(name = "Vendor name") + private String vendorName; + /** + * 补料方式 + */ + @Excel(name = "补料方式") + private String feedingType; + /** + * 立库可放箱数 + */ + @Excel(name = "立库可放箱数(ASRS必填)") + private Integer maxBoxNum; + /** + * 箱数 + */ + @Excel(name = "Box Qty(ASRS必填)") + private Integer boxQty; + /** + * 热点分析ABC + */ + @Excel(name = "热点分析ABC(ASRS必填)") + private String hotPoint; + /** + * 库存位置 + */ + @Excel(name = "库存位置") + private String putArea; + /** + * 是否是SLED物料 + */ + @Excel(name = "是否是SLED物料") + private String isSled; + /** + * SLED时间(天) + */ + @Excel(name = "SLED时间(天)") + private Integer sledDays; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageExcelTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageExcelTemplate.java new file mode 100644 index 0000000..e49bdcd --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageExcelTemplate.java @@ -0,0 +1,20 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * excel模板 + * 图纸 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ImageExcelTemplate { + @Excel(name = "料盒号") + private String boxNo; + @Excel(name = "图纸", type = 2, savePath = "./image") + private String imageDetail; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageTemplate.java new file mode 100644 index 0000000..cc21708 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ImageTemplate.java @@ -0,0 +1,19 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 导入带图片的excel模板 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ImageTemplate { + @Excel(name = "id") + private String imageId; + @Excel(name = "图片", type = 2, savePath = "D:\\image") + private String imageTest; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/KanbanExcelTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/KanbanExcelTemplate.java new file mode 100644 index 0000000..37898c5 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/KanbanExcelTemplate.java @@ -0,0 +1,26 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * excel模版 + * 看板 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KanbanExcelTemplate { + /** + * 物料 + */ + @Excel(name = "物料") + private String goodsId; + /** + * 标识编号 + */ + @Excel(name = "标识编号") + private String kanbanId; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExcelTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExcelTemplate.java new file mode 100644 index 0000000..7e1f424 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExcelTemplate.java @@ -0,0 +1,51 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * excel模板 + * 成品配料清单 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ProductExcelTemplate { + /** + * 机型 + */ + @Excel(name = "机型") + private String model; + /** + * 成品号 + */ + @Excel(name = "成品号") + private String productId; + /** + * 物料号 + */ + @Excel(name = "物料号") + private String goodsId; + /** + * 物料描述 + */ + @Excel(name = "物料描述") + private String goodsDesc; + /** + * 单套数量 + */ + @Excel(name = "单套数量") + private Integer quantity1Pair; + /** + * 料盒号 + */ + @Excel(name = "料盒号") + private String boxNo; + /** + * 图纸套数 + */ + @Excel(name = "图纸套数") + private Integer quantityOfPairs; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExtendExcelTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExtendExcelTemplate.java new file mode 100644 index 0000000..3360c62 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/ProductExtendExcelTemplate.java @@ -0,0 +1,31 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * excel模板 + * 总成与单片的对应关系 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class ProductExtendExcelTemplate { + /** + * 机型 + */ + @Excel(name = "机型") + private String model; + /** + * 总成 + */ + @Excel(name = "总装") + private String productId; + /** + * 单片 + */ + @Excel(name = "单片") + private String singleProductId; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/excelTemplate/SingleProductExcelTemplate.java b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/SingleProductExcelTemplate.java new file mode 100644 index 0000000..b273b00 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/excelTemplate/SingleProductExcelTemplate.java @@ -0,0 +1,51 @@ +package com.wms_main.excel.easypoi.excelTemplate; + +import cn.afterturn.easypoi.excel.annotation.Excel; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * excel模板 + * 单片配料清单 + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class SingleProductExcelTemplate { + /** + * 机型 + */ + @Excel(name = "机型") + private String model; + /** + * 成品号 + */ + @Excel(name = "成品号") + private String singleProductId; + /** + * 物料号 + */ + @Excel(name = "物料号") + private String goodsId; + /** + * 物料描述 + */ + @Excel(name = "物料描述") + private String goodsDesc; + /** + * 单套数量 + */ + @Excel(name = "单套数量") + private Integer quantity1Pair; + /** + * 料盒号 + */ + @Excel(name = "料盒号") + private String boxNo; + /** + * 图纸套数 + */ + @Excel(name = "图纸套数") + private Integer quantityOfPairs; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/service/IExportExcelEasyPoi.java b/src/main/java/com/wms_main/excel/easypoi/service/IExportExcelEasyPoi.java new file mode 100644 index 0000000..eae7671 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/service/IExportExcelEasyPoi.java @@ -0,0 +1,29 @@ +package com.wms_main.excel.easypoi.service; + +import com.wms_main.model.dto.query.DbsQuery; +import com.wms_main.model.dto.query.KittingBomQuery; +import com.wms_main.model.dto.query.KittingBomRelationQuery; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.web.bind.annotation.RequestBody; + +import java.io.IOException; + +public interface IExportExcelEasyPoi { + /** + * 导出DBS + * @param dbsQuery 查询条件 + */ + void doExportDbs(@RequestBody DbsQuery dbsQuery, HttpServletResponse response) throws IOException; + + /** + * 导出配料清单 + * @param kittingBomQuery 查询条件 + */ + void doExportKittingBom(@RequestBody KittingBomQuery kittingBomQuery, HttpServletResponse response) throws IOException; + + /** + * 导出配对关系 + * @param kittingBomRelationQuery 查询条件 + */ + void doExportKittingBomRelations(@RequestBody KittingBomRelationQuery kittingBomRelationQuery, HttpServletResponse response) throws IOException; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/service/IImportExcelEasyPoi.java b/src/main/java/com/wms_main/excel/easypoi/service/IImportExcelEasyPoi.java new file mode 100644 index 0000000..d15b781 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/service/IImportExcelEasyPoi.java @@ -0,0 +1,69 @@ +package com.wms_main.excel.easypoi.service; + +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.vo.others.FileVo; +import org.springframework.web.multipart.MultipartFile; + +public interface IImportExcelEasyPoi { + /** + * 执行道路 + * @param file 文件 + * @return 结果 + * @throws Exception 异常 + */ + BaseWmsApiResponse doImportExcel(MultipartFile file) throws Exception; + + /** + * 导入dbs + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + BaseWmsApiResponse doImportDbs(MultipartFile file, FileVo fileVo) throws Exception; + + /** + * 导入成品配料单 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + BaseWmsApiResponse doImportProduct(MultipartFile file, FileVo fileVo) throws Exception; + + /** + * 导入单片 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + BaseWmsApiResponse doImportSingleProduct(MultipartFile file, FileVo fileVo) throws Exception; + + /** + * 导入成品-单片 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + BaseWmsApiResponse doImportProductExtend(MultipartFile file, FileVo fileVo) throws Exception; + + /** + * 导入基础物料 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + BaseWmsApiResponse doImportBaseGoods(MultipartFile file, FileVo fileVo) throws Exception; + + /** + * 导入看板数据 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + BaseWmsApiResponse doImportKanban(MultipartFile file, FileVo fileVo) throws Exception; +} diff --git a/src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ExportExcelEasyPoi.java b/src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ExportExcelEasyPoi.java new file mode 100644 index 0000000..c441dea --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ExportExcelEasyPoi.java @@ -0,0 +1,212 @@ +package com.wms_main.excel.easypoi.service.serviceImpl; + +import cn.afterturn.easypoi.excel.ExcelExportUtil; +import cn.afterturn.easypoi.excel.entity.ExportParams; +import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wms_main.dao.ITAppDbsService; +import com.wms_main.dao.ITAppProductExtendService; +import com.wms_main.dao.ITAppProductService; +import com.wms_main.dao.ITAppSingleProductService; +import com.wms_main.excel.easypoi.excelTemplate.DbsExcelTemplate; +import com.wms_main.excel.easypoi.excelTemplate.ProductExcelTemplate; +import com.wms_main.excel.easypoi.excelTemplate.ProductExtendExcelTemplate; +import com.wms_main.excel.easypoi.excelTemplate.SingleProductExcelTemplate; +import com.wms_main.excel.easypoi.service.IExportExcelEasyPoi; +import com.wms_main.model.dto.query.KittingBomQuery; +import com.wms_main.model.dto.query.KittingBomRelationQuery; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.dto.query.DbsQuery; +import com.wms_main.model.po.TAppProduct; +import com.wms_main.model.po.TAppProductExtend; +import com.wms_main.model.po.TAppSingleProduct; +import com.wms_main.repository.utils.StringUtils; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.apache.poi.ss.usermodel.Workbook; +import org.springframework.stereotype.Service; + +import java.io.IOException; +import java.net.URLEncoder; +import java.nio.charset.StandardCharsets; +import java.util.ArrayList; +import java.util.List; + +@Service +@RequiredArgsConstructor +public class ExportExcelEasyPoi implements IExportExcelEasyPoi { + private final ITAppDbsService tAppDbsService;// DBS服务 + private final ITAppProductService tAppProductService;// 总成服务 + private final ITAppProductExtendService tAppProductExtendService;// 配对关系服务 + private final ITAppSingleProductService tAppSingleProductService;// 单片服务 + + /** + * 导出DBS计划实现 + * @param dbsQuery 查询条件 + * @param response 响应 + * @throws IOException 异常 + */ + @Override + public void doExportDbs(DbsQuery dbsQuery, HttpServletResponse response) throws IOException { + if (dbsQuery == null) { + throw new IOException("参数不能为空"); + } + // DBS列表 + List dbsList = tAppDbsService.selectList(BeanUtil.copyProperties(dbsQuery, TAppDbs.class)); + // excel模版列表 + List resultList = new ArrayList<>(); + if (!dbsList.isEmpty()) { + for (TAppDbs dbs : dbsList) { + resultList.add(new DbsExcelTemplate( + dbs.getWorkOrder(), + dbs.getProductIdOrigin(), + dbs.getTestPlanStartDate(), + dbs.getTestPlanFinishDate(), + dbs.getPntPlanStartDate(), + dbs.getPntPlanFinishDate(), + dbs.getPlanProduction(), + dbs.getEquipmentName(), + dbs.getWorkShift(), + dbs.getFamily(), + dbs.getTestNo(), + dbs.getKittingRemark(), + dbs.getRemark() + )); + } + } else { + resultList.add(new DbsExcelTemplate()); + } + doWriteExcel("DBS计划", response, resultList, DbsExcelTemplate.class); + } + + /** + * 导出配料单 + * @param kittingBomQuery 查询条件 + * @param response 响应 + * @throws IOException 异常 + */ + @Override + public void doExportKittingBom(KittingBomQuery kittingBomQuery, HttpServletResponse response) throws IOException { + if (kittingBomQuery == null || kittingBomQuery.getBomType() == null) { + throw new IOException("参数不能为空"); + } + // 1. 查询总成 + if (kittingBomQuery.getBomType() == 1) { + List productList = tAppProductService.list(new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kittingBomQuery.getModel()), TAppProduct::getModel, kittingBomQuery.getModel()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getProductId()), TAppProduct::getProductId, kittingBomQuery.getProductId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getGoodsId()), TAppProduct::getGoodsId, kittingBomQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getBoxNo()), TAppProduct::getBoxNo, kittingBomQuery.getBoxNo())); + // excel模版列表 + List resultList = new ArrayList<>(); + if (!productList.isEmpty()) { + for (TAppProduct product : productList) { + resultList.add(new ProductExcelTemplate( + product.getModel(), + product.getProductId(), + product.getGoodsId(), + product.getGoodsDescription(), + product.getQuantity1Pair(), + product.getBoxNo(), + product.getQuantityOfPair() + )); + } + } else { + resultList.add(new ProductExcelTemplate()); + } + doWriteExcel("总成配料单", response, resultList, ProductExcelTemplate.class); + } else if (kittingBomQuery.getBomType() == 2) { + // 单片配料单 + List singleProductList = tAppSingleProductService.list(new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kittingBomQuery.getModel()), TAppSingleProduct::getModel, kittingBomQuery.getModel()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getProductId()), TAppSingleProduct::getProductId, kittingBomQuery.getProductId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getGoodsId()), TAppSingleProduct::getGoodsId, kittingBomQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getBoxNo()), TAppSingleProduct::getBoxNo, kittingBomQuery.getBoxNo())); + // excel模版列表 + List resultList = new ArrayList<>(); + if (!singleProductList.isEmpty()) { + for (TAppSingleProduct singleProduct : singleProductList) { + resultList.add(new SingleProductExcelTemplate( + singleProduct.getModel(), + singleProduct.getProductId(), + singleProduct.getGoodsId(), + singleProduct.getGoodsDescription(), + singleProduct.getQuantity1Pair(), + singleProduct.getBoxNo(), + singleProduct.getQuantityOfPair() + )); + } + } else { + resultList.add(new SingleProductExcelTemplate()); + } + doWriteExcel("单片配料单", response, resultList, SingleProductExcelTemplate.class); + } else { + throw new IOException("配料单类型不在设定值范围内。"); + } + } + + /** + * 导出配对关系实现 + * @param kittingBomRelationQuery 查询条件 + * @param response 响应 + * @throws IOException 异常 + */ + @Override + public void doExportKittingBomRelations(KittingBomRelationQuery kittingBomRelationQuery, HttpServletResponse response) throws IOException { + if (kittingBomRelationQuery == null) { + throw new IOException("参数不能为空"); + } + // DBS列表 + List extendList = tAppProductExtendService.list(new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kittingBomRelationQuery.getModel()), TAppProductExtend::getModel, kittingBomRelationQuery.getModel()) + .like(StringUtils.isNotEmpty(kittingBomRelationQuery.getProductId()), TAppProductExtend::getProductId, kittingBomRelationQuery.getProductId()) + .like(StringUtils.isNotEmpty(kittingBomRelationQuery.getSingleProductId()), TAppProductExtend::getSingleProductId, kittingBomRelationQuery.getSingleProductId())); + // excel模版列表 + List resultList = new ArrayList<>(); + if (!extendList.isEmpty()) { + for (TAppProductExtend bomRelation : extendList) { + resultList.add(new ProductExtendExcelTemplate( + bomRelation.getModel(), + bomRelation.getProductId(), + bomRelation.getSingleProductId() + )); + } + } else { + resultList.add(new ProductExtendExcelTemplate()); + } + doWriteExcel("配对关系", response, resultList, ProductExtendExcelTemplate.class); + } + + /** + * 写入excel + * @param fileDesc 文件描述 + * @param response 响应 + * @param list 数据列表 + * @param clazz 泛型类 + * @param 泛型 + * @throws IOException 异常 + */ + private void doWriteExcel(String fileDesc, HttpServletResponse response, List list, Class clazz) throws IOException { + ExportParams exportParams = new ExportParams(); + exportParams.setSheetName(fileDesc); + exportParams.setType(ExcelType.XSSF); + Workbook workbook = ExcelExportUtil.exportExcel(exportParams, clazz, list); + setResponseHeaderOfExcel(fileDesc, response); + workbook.write(response.getOutputStream()); + workbook.close(); + } + + /** + * 设置统一的excel头部文件 + * @param fileDesc 文件名描述 + * @param response 响应 + */ + private void setResponseHeaderOfExcel(String fileDesc, HttpServletResponse response) { + response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"); + response.setCharacterEncoding("utf-8"); + // 这里URLEncoder.encode可以防止中文乱码 当然和easyexcel没有关系 + String fileName = URLEncoder.encode(fileDesc, StandardCharsets.UTF_8).replaceAll("\\+", "%20"); + response.setHeader("Content-Disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx"); + } +} diff --git a/src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ImportExcelEasyPoi.java b/src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ImportExcelEasyPoi.java new file mode 100644 index 0000000..bb68552 --- /dev/null +++ b/src/main/java/com/wms_main/excel/easypoi/service/serviceImpl/ImportExcelEasyPoi.java @@ -0,0 +1,664 @@ +package com.wms_main.excel.easypoi.service.serviceImpl; + +import cn.afterturn.easypoi.excel.ExcelImportUtil; +import cn.afterturn.easypoi.excel.entity.ImportParams; +import cn.hutool.core.io.FileUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wms_main.app.AppCommon; +import com.wms_main.constant.enums.others.DbsStatusEnums; +import com.wms_main.dao.*; +import com.wms_main.excel.easypoi.excelTemplate.*; +import com.wms_main.excel.easypoi.service.IImportExcelEasyPoi; +import com.wms_main.model.po.*; +import com.wms_main.model.vo.others.FileVo; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; +import org.springframework.web.multipart.MultipartFile; + +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.time.LocalDateTime; +import java.util.*; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +public class ImportExcelEasyPoi implements IImportExcelEasyPoi { + private final ITAppDbsService tAppDbsService;// DBS服务 + private final ITAppProductService tAppProductService;// 成品配料单服务 + private final ITAppImageService tAppImageService;// 图纸服务 + private final ITAppGoodsService tAppGoodsService;// 物料服务 + private final ITAppKanbanService tAppKanbanService;// 看板服务 + private final ITAppProductExtendService tAppProductExtendService;// 总成-单片对应关系服务 + private final ITAppSingleProductService tAppSingleProductService;// 单片服务 + private final AppCommon appCommon; + + @Override + public BaseWmsApiResponse doImportExcel(MultipartFile file) throws Exception { + ImportParams params = new ImportParams(); + params.setHeadRows(1); + params.setSheetNum(1); +// params.setNeedSave(false); + //解析后的图片字段存放的是图片的地址,需要在GoodsModel中配置图片存放路径 + List result = ExcelImportUtil.importExcel(file.getInputStream(), ImageTemplate.class, params); + for (ImageTemplate imageModel : result) { + if (StringUtils.isNotEmpty(imageModel.getImageTest())) { + //将图片文件转为base64图片 + File file1 = new File(imageModel.getImageTest()); + FileInputStream inputStream = new FileInputStream(file1); + byte[] buffer = new byte[inputStream.available()]; + if (inputStream.read(buffer) == -1) { + inputStream.close(); + } + StringBuilder imageBase64 = new StringBuilder(Base64.getEncoder().encodeToString(buffer)); + imageModel.setImageTest(new String(imageBase64)); + } + } + return BaseWmsApiResponse.success(); + } + + /** + * 导入dbs的实现 + * + * @param file dbs文件 + * @param fileVo 文件vo + * @return BaseWmsApiResponse 结果 + * @throws Exception 异常 + */ + @Override + @Transactional + public BaseWmsApiResponse doImportDbs(MultipartFile file, FileVo fileVo) throws Exception { + // 设置解析条件 + ImportParams dbsImportparams = new ImportParams(); + dbsImportparams.setHeadRows(1); + dbsImportparams.setSheetNum(1); + // 解析excel文件 + List dbsRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), DbsExcelTemplate.class, dbsImportparams); + List dbsList = new ArrayList<>(); + // 处理解析数据 + for (DbsExcelTemplate dbsRawData : dbsRawDatas) { + // 校验数据正确性 + if (StringUtils.isEmpty(dbsRawData.getWorkOrder()) + || StringUtils.isEmpty(dbsRawData.getProductIdOrigin()) + || dbsRawData.getTestPlanStartDate() == null + || dbsRawData.getPlanProduction() == null + || StringUtils.isEmpty(dbsRawData.getFamily()) + || StringUtils.isEmpty(dbsRawData.getTestNo())) { + continue; + } + if (dbsRawData.getFamily().contains("NGH")) { + // 去除J列的NGH + continue; + } + dbsList.add(getDbs(dbsRawData, fileVo.getUserName())); + } + try { + // 保存数据 + if (dbsList.isEmpty()) { + return BaseWmsApiResponse.error("空数据。"); + } + // 新的DBS Map + Map> newDbsMap = dbsList.stream().collect(Collectors.groupingBy(TAppDbs::getWorkOrder)); + // 查找旧DBS + List oldDbsList = tAppDbsService.list(new LambdaQueryWrapper().in(TAppDbs::getWorkOrder, newDbsMap.keySet())); + // 旧的DBS Map + Map> oldDbsMap = oldDbsList.stream().collect(Collectors.groupingBy(TAppDbs::getWorkOrder)); + // 需要保存的Map + Map newDbsMapToSave = new HashMap<>(); + // 处理数据 + for (String workOrder : newDbsMap.keySet()) { + TAppDbs thisDbs = newDbsMap.get(workOrder).getFirst(); + if (oldDbsMap.containsKey(workOrder)) { + TAppDbs thisOldDbs = oldDbsMap.get(workOrder).getFirst(); + thisDbs.setDbsStatus(thisOldDbs.getDbsStatus()); + thisDbs.setWorkStand(thisOldDbs.getWorkStand()); + thisDbs.setFinishTime(thisOldDbs.getFinishTime()); + thisDbs.setRealWorkDate(thisOldDbs.getRealWorkDate()); + thisDbs.setRemark(thisOldDbs.getRemark()); + thisDbs.setLastUpdateTime(LocalDateTime.now()); + } + newDbsMapToSave.put(workOrder, thisDbs); + } + // 先移除这些workOrder下的dbs + tAppDbsService.remove(new LambdaQueryWrapper().in(TAppDbs::getWorkOrder, newDbsMapToSave.keySet())); + // 保存新的数据 + tAppDbsService.saveBatch(newDbsMapToSave.values()); + // 保存导入file记录 + saveFileVo(fileVo); + return BaseWmsApiResponse.success("导入计划成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("导入计划失败。"); + } + } + + /** + * 导入成品配料单的实现 + * + * @param file 配料单文件 + * @param fileVo 文件vo + * @return BaseWmsApiResponse 结果 + * @throws Exception 异常 + */ + @Override + @Transactional + public BaseWmsApiResponse doImportProduct(MultipartFile file, FileVo fileVo) throws Exception { + // 设置解析条件 + ImportParams productImportparams = new ImportParams(); + productImportparams.setHeadRows(1); + productImportparams.setSheetNum(1); + // 解析excel文件 + List productRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), ProductExcelTemplate.class, productImportparams); + List productList = new ArrayList<>(); + // 本次导入的成品号 + String thisProductId = ""; + // 处理解析数据 + for (ProductExcelTemplate productRawData : productRawDatas) { + // 校验数据正确性 + if (StringUtils.isEmpty(productRawData.getModel()) + || StringUtils.isEmpty(productRawData.getProductId()) + || productRawData.getQuantity1Pair() == null + || StringUtils.isEmpty(productRawData.getGoodsId()) + || StringUtils.isEmpty(productRawData.getGoodsDesc()) + || productRawData.getQuantityOfPairs() == null + || StringUtils.isEmpty(productRawData.getBoxNo())) { + continue; + } + if (StringUtils.isNotEmpty(thisProductId) && !thisProductId.equals(productRawData.getProductId())) { + continue; + } else { + thisProductId = productRawData.getProductId(); + } + productList.add(getProduct(productRawData, fileVo.getUserName())); + } + // 导入图纸 + ImportParams imageImportparams = new ImportParams(); + imageImportparams.setHeadRows(1); + imageImportparams.setSheetName("图纸"); + // 解析excel文件 + List imageRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), ImageExcelTemplate.class, imageImportparams); + List imageList = new ArrayList<>(); + for (ImageExcelTemplate imageRowData : imageRawDatas) { + if (StringUtils.isNotEmpty(imageRowData.getBoxNo()) && StringUtils.isNotEmpty(imageRowData.getImageDetail())) { + imageList.add(getImage(imageRowData, thisProductId, fileVo.getUserName(), 1)); + } + } + try { + // 保存数据 + if (productList.isEmpty()) { + return BaseWmsApiResponse.error("配料单为空。"); + } + if (imageList.isEmpty()) { + return BaseWmsApiResponse.error("图纸为空。"); + } + // 处理旧数据 + Map> productMap = productList.stream().collect(Collectors.groupingBy(TAppProduct::getProductId)); + // 移除旧数据 + tAppProductService.remove(new LambdaQueryWrapper().in(TAppProduct::getProductId, productMap.keySet())); + // 保存新数据 + tAppProductService.saveBatch(productList); + // 处理旧图纸 + Map> imageMap = imageList.stream().collect(Collectors.groupingBy(TAppImage::getProductId)); + // 移除旧图纸 + tAppImageService.remove(new LambdaQueryWrapper().in(TAppImage::getProductId, imageMap.keySet())); + // 保存新图纸 + tAppImageService.saveBatch(imageList); + // 保存导入file记录 + saveFileVo(fileVo); + return BaseWmsApiResponse.success("导入配料单成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("导入配料单失败。"); + } + } + + /** + * 导入单片实现 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @Override + public BaseWmsApiResponse doImportSingleProduct(MultipartFile file, FileVo fileVo) throws Exception { + // 设置解析条件 + ImportParams productImportparams = new ImportParams(); + productImportparams.setHeadRows(1); + productImportparams.setSheetNum(1); + // 解析excel文件 + List productRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), SingleProductExcelTemplate.class, productImportparams); + List productList = new ArrayList<>(); + // 本次导入的成品号 + String thisProductId = ""; + // 处理解析数据 + for (SingleProductExcelTemplate productRawData : productRawDatas) { + // 校验数据正确性 + if (StringUtils.isEmpty(productRawData.getModel()) + || StringUtils.isEmpty(productRawData.getSingleProductId()) + || productRawData.getQuantity1Pair() == null + || StringUtils.isEmpty(productRawData.getGoodsId()) + || StringUtils.isEmpty(productRawData.getGoodsDesc()) + || productRawData.getQuantityOfPairs() == null + || StringUtils.isEmpty(productRawData.getBoxNo())) { + continue; + } + if (StringUtils.isNotEmpty(thisProductId) && !thisProductId.equals(productRawData.getSingleProductId())) { + continue; + } else { + thisProductId = productRawData.getSingleProductId(); + } + productList.add(getSingleProduct(productRawData, fileVo.getUserName())); + } + // 导入图纸 + ImportParams imageImportparams = new ImportParams(); + imageImportparams.setHeadRows(1); + imageImportparams.setSheetName("图纸"); + // 解析excel文件 + List imageRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), ImageExcelTemplate.class, imageImportparams); + List imageList = new ArrayList<>(); + for (ImageExcelTemplate imageRowData : imageRawDatas) { + if (StringUtils.isNotEmpty(imageRowData.getBoxNo()) && StringUtils.isNotEmpty(imageRowData.getImageDetail())) { + imageList.add(getImage(imageRowData, thisProductId, fileVo.getUserName(), 2)); + } + } + try { + // 保存数据 + if (productList.isEmpty()) { + return BaseWmsApiResponse.error("单片配料单为空。"); + } + if (imageList.isEmpty()) { + return BaseWmsApiResponse.error("图纸为空。"); + } + // 处理旧数据 + Map> productMap = productList.stream().collect(Collectors.groupingBy(TAppSingleProduct::getProductId)); + // 先移除这个单片号下面所有的配料单 + tAppSingleProductService.remove(new LambdaQueryWrapper().in(TAppSingleProduct::getProductId, productMap.keySet())); + // 保存新数据 + tAppSingleProductService.saveBatch(productList); + // 处理旧图纸 + Map> imageMap = imageList.stream().collect(Collectors.groupingBy(TAppImage::getProductId)); + // 移除旧图纸 + tAppImageService.remove(new LambdaQueryWrapper().in(TAppImage::getProductId, imageMap.keySet())); + // 保存新图纸 + tAppImageService.saveBatch(imageList); + // 保存导入file记录 + saveFileVo(fileVo); + return BaseWmsApiResponse.success("导入单片配料单成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("导入单片配料单失败。"); + } + } + + /** + * 导入总成与单片对应关系 + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @Override + public BaseWmsApiResponse doImportProductExtend(MultipartFile file, FileVo fileVo) throws Exception { + // 设置解析条件 + ImportParams productImportparams = new ImportParams(); + productImportparams.setHeadRows(1); + productImportparams.setSheetNum(1); + // 解析excel文件 + List productRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), ProductExtendExcelTemplate.class, productImportparams); + List productList = new ArrayList<>(); + // 处理解析数据 + for (ProductExtendExcelTemplate productRawData : productRawDatas) { + // 校验数据正确性 + if (StringUtils.isEmpty(productRawData.getModel()) + || StringUtils.isEmpty(productRawData.getProductId()) + || StringUtils.isEmpty(productRawData.getSingleProductId())) { + continue; + } + productList.add(getProductExtend(productRawData, fileVo.getUserName())); + } + try { + // 保存数据 + if (productList.isEmpty()) { + return BaseWmsApiResponse.error("空数据。"); + } + Map> productExtendMap = productList.stream().collect(Collectors.groupingBy(TAppProductExtend::getProductId)); + // 先移除这个总成号下面的数据 + tAppProductExtendService.remove(new LambdaQueryWrapper().in(TAppProductExtend::getProductId, productExtendMap.keySet())); + // 保存新数据 + tAppProductExtendService.saveBatch(productList); + // 保存导入file记录 + saveFileVo(fileVo); + return BaseWmsApiResponse.success("导入总成单片对应关系成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("导入总成单片对应关系失败。"); + } + } + + /** + * 业务逻辑实现 + * + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + */ + @Override + @Transactional + public BaseWmsApiResponse doImportBaseGoods(MultipartFile file, FileVo fileVo) throws Exception { + // 设置解析条件 + ImportParams baseGoodsImportparams = new ImportParams(); + baseGoodsImportparams.setHeadRows(1); + baseGoodsImportparams.setSheetNum(1); + // 解析excel文件 + List baseGoodsRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), GoodsExcelTemplate.class, baseGoodsImportparams); + List goodsList = new ArrayList<>(); + // 处理解析数据 + for (GoodsExcelTemplate baseGoodsRawData : baseGoodsRawDatas) { + // 判断必须条件 + if (StringUtils.isEmpty(baseGoodsRawData.getMaterial()) + || StringUtils.isEmpty(baseGoodsRawData.getFeedingType()) + || StringUtils.isEmpty(baseGoodsRawData.getPutArea()) + || StringUtils.isEmpty(baseGoodsRawData.getIsSled())) { + continue; + } + if (baseGoodsRawData.getPutArea().equals("ASRS")) { + // 如果是库内料 + if (baseGoodsRawData.getMaxBoxNum() == null || baseGoodsRawData.getBoxQty() == null || StringUtils.isEmpty(baseGoodsRawData.getHotPoint())) { + continue; + } + } + // 判断SLED格式是否正确 + if (!List.of("Y", "N").contains(baseGoodsRawData.getIsSled())) { + continue; + } + // SLED管理时没有SLED天数 + if (baseGoodsRawData.getIsSled().contains("Y") && baseGoodsRawData.getSledDays() == null) { + continue; + } + // 保存数据 + goodsList.add(getGoods(baseGoodsRawData, fileVo.getUserName())); + } + try { + if (goodsList.isEmpty()) { + return BaseWmsApiResponse.error("符合条件数据行为0。"); + } + // 保存数据 + tAppGoodsService.saveOrUpdateBatch(goodsList); + // 更新common + appCommon.initInstantGoodsMap(); + // 保存导入file记录 + saveFileVo(fileVo); + return BaseWmsApiResponse.success("导入物料数据成功。原始数据" + baseGoodsRawDatas.size() + "行,导入成功" + goodsList.size() + "行。"); + } catch (Exception e){ + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("导入物料数据失败。"); + } + } + + /** + * 业务逻辑实现 + * + * @param file 文件 + * @param fileVo 文件信息 + * @return 导入结果 + * @throws Exception 异常 + */ + @Override + @Transactional + public BaseWmsApiResponse doImportKanban(MultipartFile file, FileVo fileVo) throws Exception { + // 设置解析条件 + ImportParams kanbanImportparams = new ImportParams(); + kanbanImportparams.setHeadRows(1); + kanbanImportparams.setSheetNum(1); + // 解析excel文件 + List kanbanRawDatas = ExcelImportUtil.importExcel(file.getInputStream(), KanbanExcelTemplate.class, kanbanImportparams); + Map> kanbanListMap = new HashMap<>(); + // 处理解析数据 + for (KanbanExcelTemplate kanbanRawData : kanbanRawDatas) { + if (StringUtils.isEmpty(kanbanRawData.getGoodsId()) || StringUtils.isEmpty(kanbanRawData.getKanbanId())) { + continue; + } + // 键为物料id + if (kanbanListMap.containsKey(kanbanRawData.getGoodsId())) { + List oldKanbanList = new ArrayList<>(kanbanListMap.get(kanbanRawData.getGoodsId())); + oldKanbanList.add(getKanban(kanbanRawData, fileVo.getUserName())); + kanbanListMap.replace(kanbanRawData.getGoodsId(), oldKanbanList); + } else { + kanbanListMap.put(kanbanRawData.getGoodsId(), List.of(getKanban(kanbanRawData, fileVo.getUserName()))); + } + } + try { + // 保存数据 + if (kanbanListMap.isEmpty()) { + return BaseWmsApiResponse.error("空数据。"); + } + // 先移除这些物料的看板 + tAppKanbanService.remove(new LambdaQueryWrapper().in(TAppKanban::getGoodsId, kanbanListMap.keySet())); + // 转换保存数据 + List kanbanList = new ArrayList<>(); + kanbanListMap.values().forEach(kanbanList::addAll); + tAppKanbanService.saveBatch(kanbanList); + // 保存导入file记录 + saveFileVo(fileVo); + return BaseWmsApiResponse.success("导入看板数据成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("导入看板数据失败。"); + } + } + + /** + * 保存fileVo信息 + * + * @param fileVo 文件Vo + */ + private void saveFileVo(FileVo fileVo) { + // TODO 待建表 + } + + /** + * 创建dbsPo详细信息 + * + * @param dbsRawData 原始数据 + * @param userName 用户名 + * @return 处理结果 + */ + private TAppDbs getDbs(DbsExcelTemplate dbsRawData, String userName) { + TAppDbs tempDbs = new TAppDbs(); + tempDbs.setDbsId(UUIDUtils.getNewUUID()); + tempDbs.setWorkOrder(dbsRawData.getWorkOrder()); + // 处理零件号/成品号 + tempDbs.setProductIdOrigin(dbsRawData.getProductIdOrigin());// 原始数据 + if (dbsRawData.getProductIdOrigin().contains("/")) { + // 如果包含“/”, 则以“/”为分隔符 + tempDbs.setProductId(dbsRawData.getProductIdOrigin().split("/")[0]); + } else if (dbsRawData.getProductIdOrigin().contains("-")) { + // 如果包含“-”, 则以“-”为分隔符 + tempDbs.setProductId(dbsRawData.getProductIdOrigin().split("-")[0]); + } else { + tempDbs.setProductId(dbsRawData.getProductIdOrigin()); + } + tempDbs.setTestPlanStartDate(dbsRawData.getTestPlanStartDate()); + tempDbs.setTestPlanFinishDate(dbsRawData.getTestPlanFinishDate()); + tempDbs.setPntPlanStartDate(dbsRawData.getPntPlanStartDate()); + tempDbs.setPntPlanFinishDate(dbsRawData.getPntPlanFinishDate()); + tempDbs.setPlanProduction(dbsRawData.getPlanProduction()); + tempDbs.setEquipmentName(dbsRawData.getEquipmentName()); + tempDbs.setWorkShift(dbsRawData.getWorkShift()); + tempDbs.setFamily(dbsRawData.getFamily()); + tempDbs.setTestNo(dbsRawData.getTestNo()); + tempDbs.setKittingRemark(dbsRawData.getKittingRemark()); + tempDbs.setRemark(dbsRawData.getRemark()); + + tempDbs.setDbsStatus(DbsStatusEnums.NEW.getValue()); + tempDbs.setFirstImportTime(LocalDateTime.now()); + tempDbs.setFirstImportUser(userName); + + return tempDbs; + } + + /** + * 创建详细的成品配料单Po + * + * @param productRawData 原始数据 + * @param userName 用户名 + * @return 处理结果 + */ + private TAppProduct getProduct(ProductExcelTemplate productRawData, String userName) { + TAppProduct tempProduct = new TAppProduct(); + tempProduct.setTemplateId(UUIDUtils.getNewUUID()); + tempProduct.setModel(productRawData.getModel()); + tempProduct.setProductId(productRawData.getProductId()); + tempProduct.setGoodsId(productRawData.getGoodsId()); + tempProduct.setGoodsDescription(productRawData.getGoodsDesc()); + tempProduct.setQuantity1Pair(productRawData.getQuantity1Pair()); + tempProduct.setBoxNo(productRawData.getBoxNo()); + tempProduct.setQuantityOfPair(productRawData.getQuantityOfPairs()); + tempProduct.setFirstImportTime(LocalDateTime.now()); + tempProduct.setFirstImportUser(userName); + return tempProduct; + } + + /** + * 创建详细的单片配料单Po + * + * @param productRawData 原始数据 + * @param userName 用户名 + * @return 处理结果 + */ + private TAppSingleProduct getSingleProduct(SingleProductExcelTemplate productRawData, String userName) { + TAppSingleProduct tempSingleProduct = new TAppSingleProduct(); + tempSingleProduct.setSingleTemplateId(UUIDUtils.getNewUUID()); + tempSingleProduct.setModel(productRawData.getModel()); + tempSingleProduct.setProductId(productRawData.getSingleProductId()); + tempSingleProduct.setGoodsId(productRawData.getGoodsId()); + tempSingleProduct.setGoodsDescription(productRawData.getGoodsDesc()); + tempSingleProduct.setQuantity1Pair(productRawData.getQuantity1Pair()); + tempSingleProduct.setBoxNo(productRawData.getBoxNo()); + tempSingleProduct.setQuantityOfPair(productRawData.getQuantityOfPairs()); + tempSingleProduct.setFirstImportTime(LocalDateTime.now()); + tempSingleProduct.setFirstImportUser(userName); + return tempSingleProduct; + } + + /** + * 创建详细的图纸po + * + * @param imageRawData 原始数据 + * @param userName 用户名 + * @param imageType 图片类型 1:总成;2:单片 + * @return 处理结果 + */ + private TAppImage getImage(ImageExcelTemplate imageRawData, String productId, String userName, int imageType) throws IOException { + TAppImage tempImage = new TAppImage(); + tempImage.setImageId(UUIDUtils.getNewUUID()); + tempImage.setProductId(productId); + tempImage.setBoxNo(imageRawData.getBoxNo()); + // 获取文件名 + int startIndex = imageRawData.getImageDetail().lastIndexOf(File.separator); + int endIndex = imageRawData.getImageDetail().lastIndexOf("."); + String fileDir = imageRawData.getImageDetail().substring(0, startIndex); + String oldImageName = imageRawData.getImageDetail().substring(startIndex + 1); + String fileType = imageRawData.getImageDetail().substring(endIndex); + // 文件路径 + tempImage.setImagePath(fileDir + File.separator); + // 格式化文件名 + String newImageName = productId + "_" + imageRawData.getBoxNo() + fileType; + //将图片文件转为base64图片 + File oldFile = new File(imageRawData.getImageDetail()); + // 重命名 + File renamedFile = FileUtil.rename(oldFile, newImageName, true); + if (renamedFile.getName().contains(newImageName)) { + tempImage.setImageName(newImageName); + } else { + tempImage.setImageName(oldImageName); + } + // 存储图片实例 + FileInputStream inputStream = new FileInputStream(renamedFile); + byte[] buffer = new byte[inputStream.available()]; + if (inputStream.read(buffer) == -1) { + inputStream.close(); + } + StringBuilder imageBase64 = new StringBuilder(Base64.getEncoder().encodeToString(buffer)); + tempImage.setImageDetail(new String(imageBase64)); + tempImage.setImageType(imageType); + tempImage.setFirstImportTime(LocalDateTime.now()); + tempImage.setFirstImportUser(userName); + return tempImage; + } + + /** + * 创建详细的goods po + * @param goodsRawData 原始数据 + * @param userName 用户名 + * @return po + */ + private TAppGoods getGoods(GoodsExcelTemplate goodsRawData, String userName) { + TAppGoods goods = new TAppGoods( + goodsRawData.getMaterial(), + goodsRawData.getPlant(), + goodsRawData.getDescription(), + goodsRawData.getVendorName(), + goodsRawData.getIsSled(), + goodsRawData.getSledDays(), + goodsRawData.getFeedingType(), + goodsRawData.getBoxQty(), + goodsRawData.getPutArea(), + goodsRawData.getHotPoint(), + goodsRawData.getMaxBoxNum() + ); + goods.setFirstImportTime(LocalDateTime.now()); + goods.setFirstImportUser(userName); + + return goods; + } + + /** + * 创建详细的kanban po + * @param kanbanRawData 原始数据 + * @param userName 用户名 + * @return po + */ + private TAppKanban getKanban(KanbanExcelTemplate kanbanRawData, String userName) { + TAppKanban kanban = new TAppKanban( + UUIDUtils.getNewUUID(), + kanbanRawData.getGoodsId(), + kanbanRawData.getKanbanId(), + 0, + LocalDateTime.now() + ); + kanban.setFirstImportTime(LocalDateTime.now()); + kanban.setFirstImportUser(userName); + return kanban; + } + + /** + * 创建详细的成品-单片po + * @param productExtendRawData 原始数据 + * @param userName 用户名 + * @return po + */ + private TAppProductExtend getProductExtend(ProductExtendExcelTemplate productExtendRawData, String userName) { + TAppProductExtend productExtend = new TAppProductExtend( + UUIDUtils.getNewUUID(), + productExtendRawData.getProductId(), + productExtendRawData.getSingleProductId(), + productExtendRawData.getModel() + ); + productExtend.setFirstImportTime(LocalDateTime.now()); + productExtend.setFirstImportUser(userName); + return productExtend; + } +} diff --git a/src/main/java/com/wms_main/filter/RequestLogFilter.java b/src/main/java/com/wms_main/filter/RequestLogFilter.java new file mode 100644 index 0000000..ff129aa --- /dev/null +++ b/src/main/java/com/wms_main/filter/RequestLogFilter.java @@ -0,0 +1,65 @@ +package com.wms_main.filter; + +import com.wms_main.model.pojo.log.RequestLog; +import jakarta.servlet.FilterChain; +import jakarta.servlet.ServletException; +import jakarta.servlet.annotation.WebFilter; +import jakarta.servlet.http.HttpFilter; +import jakarta.servlet.http.HttpServletRequest; +import jakarta.servlet.http.HttpServletResponse; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Component; +import org.springframework.web.util.ContentCachingRequestWrapper; +import org.springframework.web.util.ContentCachingResponseWrapper; + +import java.io.IOException; + +@Slf4j +@Component +@WebFilter(filterName = "requestLogFilter", urlPatterns = "/*") +public class RequestLogFilter extends HttpFilter { + @Override + protected void doFilter(HttpServletRequest request, HttpServletResponse response, FilterChain chain) throws IOException, ServletException { + // Wrapper封装request和response + ContentCachingRequestWrapper requestWrapper = new ContentCachingRequestWrapper(request); + ContentCachingResponseWrapper responseWrapper = new ContentCachingResponseWrapper(response); + // 继续执行请求链 + chain.doFilter(requestWrapper, responseWrapper); + // 请求方法 + String method = request.getMethod(); + // URI + String uri = request.getRequestURI(); + // 客户端主机名 + String remoteHost = request.getRemoteHost(); + // 客户端ip地址 + String remoteAddr = request.getRemoteAddr(); + // 请求体 + byte[] requestContent = requestWrapper.getContentAsByteArray(); + // 响应状态 + int status = response.getStatus(); + // 响应体 + byte[] responseContent = responseWrapper.getContentAsByteArray(); + // 记录日志信息 + String requestContentString = formatContentString(new String(requestContent)); + String responseContentString = formatContentString(new String(responseContent)); + RequestLog logInfo = new RequestLog(method, uri, remoteHost, remoteAddr, requestContentString, String.valueOf(status), responseContentString); + log.info(logInfo.toString()); + // TODO 增加存储数据库的操作 + + // 把缓存的响应数据,响应给客户端 + responseWrapper.copyBodyToResponse(); + } + + /** + * 格式化内容string + * @param contentString 原始字符串 + * @return 格式化之后的字符串 + */ + private String formatContentString (String contentString) { + String newContentString = contentString.replaceAll("\\s*", ""); + if (newContentString.length() > 1024) { + newContentString = newContentString.substring(0, 1024) + "..."; + } + return newContentString; + } +} diff --git a/src/main/java/com/wms_main/mapper/AppConfigMapper.java b/src/main/java/com/wms_main/mapper/AppConfigMapper.java new file mode 100644 index 0000000..ab5b368 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppConfigMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppConfig; +import org.apache.ibatis.annotations.Mapper; + +/** + * 应用配置表mapper + */ +@Mapper +public interface AppConfigMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppDbsMapper.java b/src/main/java/com/wms_main/mapper/AppDbsMapper.java new file mode 100644 index 0000000..b07ce07 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppDbsMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppDbs; +import org.apache.ibatis.annotations.Mapper; + +/** + * DBS数据库mapper + */ +@Mapper +public interface AppDbsMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppEquipmentMapper.java b/src/main/java/com/wms_main/mapper/AppEquipmentMapper.java new file mode 100644 index 0000000..f098f08 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppEquipmentMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppEquipment; +import org.apache.ibatis.annotations.Mapper; + +/** + * 设备表映射 + */ +@Mapper +public interface AppEquipmentMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppGoodsMapper.java b/src/main/java/com/wms_main/mapper/AppGoodsMapper.java new file mode 100644 index 0000000..bf4f2ac --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppGoodsMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppGoods; +import org.apache.ibatis.annotations.Mapper; + +/** + * 物料mapper + */ +@Mapper +public interface AppGoodsMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppImageMapper.java b/src/main/java/com/wms_main/mapper/AppImageMapper.java new file mode 100644 index 0000000..a87445d --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppImageMapper.java @@ -0,0 +1,13 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppImage; +import org.apache.ibatis.annotations.Mapper; + +/** + * DBS数据库mapper + */ +@Mapper +public interface AppImageMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppJobsMapper.java b/src/main/java/com/wms_main/mapper/AppJobsMapper.java new file mode 100644 index 0000000..c539fcb --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppJobsMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppJobs; +import org.apache.ibatis.annotations.Mapper; + +/** + * Jobs映射 + */ +@Mapper +public interface AppJobsMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppKanbanMapper.java b/src/main/java/com/wms_main/mapper/AppKanbanMapper.java new file mode 100644 index 0000000..d463906 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppKanbanMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppKanban; +import org.apache.ibatis.annotations.Mapper; + +/** + * 看板mapper + */ +@Mapper +public interface AppKanbanMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppLocationMapper.java b/src/main/java/com/wms_main/mapper/AppLocationMapper.java new file mode 100644 index 0000000..c1c34e7 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppLocationMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppLocation; +import org.apache.ibatis.annotations.Mapper; + +/** + * 库位表mapper + */ +@Mapper +public interface AppLocationMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppOutsMapper.java b/src/main/java/com/wms_main/mapper/AppOutsMapper.java new file mode 100644 index 0000000..6ea98f5 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppOutsMapper.java @@ -0,0 +1,9 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppOuts; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface AppOutsMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppOutsRecordMapper.java b/src/main/java/com/wms_main/mapper/AppOutsRecordMapper.java new file mode 100644 index 0000000..64d8c7f --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppOutsRecordMapper.java @@ -0,0 +1,9 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppOutsRecord; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface AppOutsRecordMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppPickPlanMapper.java b/src/main/java/com/wms_main/mapper/AppPickPlanMapper.java new file mode 100644 index 0000000..0f2c858 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppPickPlanMapper.java @@ -0,0 +1,9 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppPickPlan; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface AppPickPlanMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppPickTaskBakMapper.java b/src/main/java/com/wms_main/mapper/AppPickTaskBakMapper.java new file mode 100644 index 0000000..c3bf7f6 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppPickTaskBakMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppPickTaskBak; +import org.apache.ibatis.annotations.Mapper; + +/** + * 拣选记录表mapper + */ +@Mapper +public interface AppPickTaskBakMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppPickTaskMapper.java b/src/main/java/com/wms_main/mapper/AppPickTaskMapper.java new file mode 100644 index 0000000..3f485de --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppPickTaskMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppPickTask; +import org.apache.ibatis.annotations.Mapper; + +/** + * 拣选任务表mapper + */ +@Mapper +public interface AppPickTaskMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppProductExtendsMapper.java b/src/main/java/com/wms_main/mapper/AppProductExtendsMapper.java new file mode 100644 index 0000000..772fc4f --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppProductExtendsMapper.java @@ -0,0 +1,13 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppProductExtend; +import org.apache.ibatis.annotations.Mapper; + +/** + * DBS数据库mapper + */ +@Mapper +public interface AppProductExtendsMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppProductMapper.java b/src/main/java/com/wms_main/mapper/AppProductMapper.java new file mode 100644 index 0000000..477a7f0 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppProductMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppProduct; +import org.apache.ibatis.annotations.Mapper; + +/** + * DBS数据库mapper + */ +@Mapper +public interface AppProductMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppSingleProductMapper.java b/src/main/java/com/wms_main/mapper/AppSingleProductMapper.java new file mode 100644 index 0000000..839acfd --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppSingleProductMapper.java @@ -0,0 +1,13 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppDbs; +import com.wms_main.model.po.TAppSingleProduct; +import org.apache.ibatis.annotations.Mapper; + +/** + * DBS数据库mapper + */ +@Mapper +public interface AppSingleProductMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppStandMapper.java b/src/main/java/com/wms_main/mapper/AppStandMapper.java new file mode 100644 index 0000000..ca32fec --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppStandMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppStand; +import org.apache.ibatis.annotations.Mapper; + +/** + * 站台表映射 + */ +@Mapper +public interface AppStandMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppStandWorkMapper.java b/src/main/java/com/wms_main/mapper/AppStandWorkMapper.java new file mode 100644 index 0000000..8cfd094 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppStandWorkMapper.java @@ -0,0 +1,13 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppStand; +import com.wms_main.model.po.TAppStandWork; +import org.apache.ibatis.annotations.Mapper; + +/** + * 站台工作映射 + */ +@Mapper +public interface AppStandWorkMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppStockMapper.java b/src/main/java/com/wms_main/mapper/AppStockMapper.java new file mode 100644 index 0000000..8b817fd --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppStockMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppStock; +import org.apache.ibatis.annotations.Mapper; + +/** + * 库存表mapper + */ +@Mapper +public interface AppStockMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppStockUpdateMapper.java b/src/main/java/com/wms_main/mapper/AppStockUpdateMapper.java new file mode 100644 index 0000000..3be561c --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppStockUpdateMapper.java @@ -0,0 +1,9 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppStockUpdate; +import org.apache.ibatis.annotations.Mapper; + +@Mapper +public interface AppStockUpdateMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppTaskBakMapper.java b/src/main/java/com/wms_main/mapper/AppTaskBakMapper.java new file mode 100644 index 0000000..69f554a --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppTaskBakMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppTaskBak; +import org.apache.ibatis.annotations.Mapper; + +/** + * 任务记录表mapper + */ +@Mapper +public interface AppTaskBakMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppTaskMapper.java b/src/main/java/com/wms_main/mapper/AppTaskMapper.java new file mode 100644 index 0000000..8b4b734 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppTaskMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppTask; +import org.apache.ibatis.annotations.Mapper; + +/** + * 任务表mapper + */ +@Mapper +public interface AppTaskMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppVehicleMapper.java b/src/main/java/com/wms_main/mapper/AppVehicleMapper.java new file mode 100644 index 0000000..fa9e62f --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppVehicleMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppVehicle; +import org.apache.ibatis.annotations.Mapper; + +/** + * 载具表mapper + */ +@Mapper +public interface AppVehicleMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppWcsTaskBakMapper.java b/src/main/java/com/wms_main/mapper/AppWcsTaskBakMapper.java new file mode 100644 index 0000000..a9cf18d --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppWcsTaskBakMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppWcsTaskBak; +import org.apache.ibatis.annotations.Mapper; + +/** + * wcs任务记录表mapper + */ +@Mapper +public interface AppWcsTaskBakMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppWcsTaskMapper.java b/src/main/java/com/wms_main/mapper/AppWcsTaskMapper.java new file mode 100644 index 0000000..c0bbee1 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppWcsTaskMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppWcsTask; +import org.apache.ibatis.annotations.Mapper; + +/** + * wcsTask数据库mapper + */ +@Mapper +public interface AppWcsTaskMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppWorkMapper.java b/src/main/java/com/wms_main/mapper/AppWorkMapper.java new file mode 100644 index 0000000..c06e02c --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppWorkMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppWork; +import org.apache.ibatis.annotations.Mapper; + +/** + * work表映射 + */ +@Mapper +public interface AppWorkMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/AppWorkRecordMapper.java b/src/main/java/com/wms_main/mapper/AppWorkRecordMapper.java new file mode 100644 index 0000000..c968fe8 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/AppWorkRecordMapper.java @@ -0,0 +1,13 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TAppWork; +import com.wms_main.model.po.TAppWorkRecord; +import org.apache.ibatis.annotations.Mapper; + +/** + * work_record表映射 + */ +@Mapper +public interface AppWorkRecordMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/SysMenuMapper.java b/src/main/java/com/wms_main/mapper/SysMenuMapper.java new file mode 100644 index 0000000..bdcd55a --- /dev/null +++ b/src/main/java/com/wms_main/mapper/SysMenuMapper.java @@ -0,0 +1,15 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TSysMenu; +import org.apache.ibatis.annotations.Mapper; + +import java.util.List; + +/** + * MenuMapper + */ +@Mapper +public interface SysMenuMapper extends BaseMapper { + List selMenuByRoleId(String roleId); +} diff --git a/src/main/java/com/wms_main/mapper/SysPermissionMapper.java b/src/main/java/com/wms_main/mapper/SysPermissionMapper.java new file mode 100644 index 0000000..3b36852 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/SysPermissionMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TSysPermission; +import org.apache.ibatis.annotations.Mapper; + +/** + * PermissionMapper + */ +@Mapper +public interface SysPermissionMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/SysRoleMapper.java b/src/main/java/com/wms_main/mapper/SysRoleMapper.java new file mode 100644 index 0000000..9829cf0 --- /dev/null +++ b/src/main/java/com/wms_main/mapper/SysRoleMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TSysRole; +import org.apache.ibatis.annotations.Mapper; + +/** + * RoleMapper + */ +@Mapper +public interface SysRoleMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/mapper/SysUserMapper.java b/src/main/java/com/wms_main/mapper/SysUserMapper.java new file mode 100644 index 0000000..17f498e --- /dev/null +++ b/src/main/java/com/wms_main/mapper/SysUserMapper.java @@ -0,0 +1,12 @@ +package com.wms_main.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import com.wms_main.model.po.TSysUser; +import org.apache.ibatis.annotations.Mapper; + +/** + * UserMapper + */ +@Mapper +public interface SysUserMapper extends BaseMapper { +} diff --git a/src/main/java/com/wms_main/model/bo/wcs/WcsPickTask.java b/src/main/java/com/wms_main/model/bo/wcs/WcsPickTask.java new file mode 100644 index 0000000..bed590a --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wcs/WcsPickTask.java @@ -0,0 +1,34 @@ +package com.wms_main.model.bo.wcs; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 拣选任务 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsPickTask { + /** + * 任务号 + */ + private String taskId; + /** + * 载具号 + */ + private String vehicleNo; + /** + * 任务类型 + */ + private Integer taskType; + /** + * 库位 + */ + private String location; + /** + * 备注 + */ + private String remark; +} diff --git a/src/main/java/com/wms_main/model/bo/wcs/WcsStackerTask.java b/src/main/java/com/wms_main/model/bo/wcs/WcsStackerTask.java new file mode 100644 index 0000000..fd91fab --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wcs/WcsStackerTask.java @@ -0,0 +1,38 @@ +package com.wms_main.model.bo.wcs; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 堆垛机任务 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsStackerTask { + /** + * 任务id + */ + private String taskId; + /** + * 任务类型 + */ + private Integer taskType; + /** + * 载具号 + */ + private String vehicleNo; + /** + * 起点 + */ + private String origin; + /** + * 终点 + */ + private String destination; + /** + * 用户 + */ + private String user; +} diff --git a/src/main/java/com/wms_main/model/bo/wms/BoxSummary.java b/src/main/java/com/wms_main/model/bo/wms/BoxSummary.java new file mode 100644 index 0000000..c60edf4 --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wms/BoxSummary.java @@ -0,0 +1,73 @@ +package com.wms_main.model.bo.wms; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; + +/** + * 料盒总览 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BoxSummary { + /** + * 工单号 + */ + @JsonProperty("workOrder") + private String workOrder; + /** + * 总成号/原始数据 + */ + @JsonProperty("productIdOrigin") + private String productIdOrigin; + /** + * 总成号 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片/成品 + */ + @JsonProperty("singleProductId") + private String singleProductId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 配料日期 + */ + @JsonProperty("kittingDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate kittingDate; + /** + * 生产日期 + */ + @JsonProperty("produceDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate produceDate; + /** + * 测试台 + */ + @JsonProperty("testNo") + private String testNo; + /** + * 产量 + */ + @JsonProperty("productionQty") + private Integer productionQty; + /** + * 料盒数量 + */ + @JsonProperty("boxQty") + private Integer boxQty; +} diff --git a/src/main/java/com/wms_main/model/bo/wms/GoodsInfoForTask.java b/src/main/java/com/wms_main/model/bo/wms/GoodsInfoForTask.java new file mode 100644 index 0000000..86f2343 --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wms/GoodsInfoForTask.java @@ -0,0 +1,37 @@ +package com.wms_main.model.bo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 物料信息---任务中使用 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GoodsInfoForTask { + /** + * 物料编号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 操作数量 + */ + @JsonProperty("opNum") + private Integer opNum; + /** + * 生产日期 + */ + @JsonProperty("produceTime") + private LocalDateTime produceTime; + /** + * 备注 + */ + @JsonProperty("remark") + private String remark; +} diff --git a/src/main/java/com/wms_main/model/bo/wms/GoodsLackSummary.java b/src/main/java/com/wms_main/model/bo/wms/GoodsLackSummary.java new file mode 100644 index 0000000..23d1c2c --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wms/GoodsLackSummary.java @@ -0,0 +1,35 @@ +package com.wms_main.model.bo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 缺料总览 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GoodsLackSummary { + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 需求数量 + */ + @JsonProperty("needNum") + private Integer needNum; + /** + * 库存数量 + */ + @JsonProperty("stockNum") + private Integer stockNum; + /** + * 缺料数量 + */ + @JsonProperty("lackNum") + private Integer lackNum; +} diff --git a/src/main/java/com/wms_main/model/bo/wms/OrderConfirmEntity.java b/src/main/java/com/wms_main/model/bo/wms/OrderConfirmEntity.java new file mode 100644 index 0000000..8f250dd --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wms/OrderConfirmEntity.java @@ -0,0 +1,50 @@ +package com.wms_main.model.bo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 订单确认实体 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class OrderConfirmEntity { + /** + * 工单号 + */ + @JsonProperty("workOrder") + private String workOrder; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片号 + */ + @JsonProperty("singleProductId") + private String singleProductId; + /** + * 物料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 计划拣选数量 + */ + @JsonProperty("planPickQty") + private Integer planPickQty; + /** + * 实际拣选数量 + */ + @JsonProperty("realPickQty") + private Integer realPickQty; +} diff --git a/src/main/java/com/wms_main/model/bo/wms/StockConfirmEntity.java b/src/main/java/com/wms_main/model/bo/wms/StockConfirmEntity.java new file mode 100644 index 0000000..00ae246 --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wms/StockConfirmEntity.java @@ -0,0 +1,55 @@ +package com.wms_main.model.bo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 库存确认实体 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class StockConfirmEntity { + /** + * 库存id + */ + @JsonProperty("stockId") + private String stockId; + /** + * 载具号 + */ + @JsonProperty("vehicleId") + private String vehicleId; + /** + * 物料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 计划剩余数量 + */ + @JsonProperty("planRemainQty") + private Integer planRemainQty; + /** + * 实际剩余数量 + */ + @JsonProperty("realRemainQty") + private Integer realRemainQty; + /** + * 是否是库位料 + */ + @JsonProperty("isOut") + private Integer isOut; + /** + * 存放位置 + */ + @JsonProperty("putArea") + private String putArea; + /** + * 预警数量 + */ + @JsonProperty("warningQty") + private Integer warningQty; +} diff --git a/src/main/java/com/wms_main/model/bo/wms/TaskConfirmEntity.java b/src/main/java/com/wms_main/model/bo/wms/TaskConfirmEntity.java new file mode 100644 index 0000000..e917e5a --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wms/TaskConfirmEntity.java @@ -0,0 +1,50 @@ +package com.wms_main.model.bo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 任务确认实体 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class TaskConfirmEntity { + /** + * 出库单号 + */ + @JsonProperty("taskId") + private String taskId; + /** + * 出库类型 + */ + @JsonProperty("outType") + private Integer outType; + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 总需求数量 + */ + @JsonProperty("totalNeed") + private Integer totalNeed; + /** + * 剩余需求数量 + */ + @JsonProperty("remainNeed") + private Integer remainNeed; + /** + * 计划拣选数量 + */ + @JsonProperty("planPickQty") + private Integer planPickQty; + /** + * 实际拣选数量 + */ + @JsonProperty("realPickQty") + private Integer realPickQty; +} diff --git a/src/main/java/com/wms_main/model/bo/wms/WmsPickTask.java b/src/main/java/com/wms_main/model/bo/wms/WmsPickTask.java new file mode 100644 index 0000000..17d510b --- /dev/null +++ b/src/main/java/com/wms_main/model/bo/wms/WmsPickTask.java @@ -0,0 +1,62 @@ +package com.wms_main.model.bo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * WMS的拣选任务 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WmsPickTask { + /** + * 任务id + */ + @JsonProperty("pickId") + private String pickId; + /** + * 拣选站台 + */ + @JsonProperty("pickStand") + private String pickStand; + /** + * 载具号 + */ + @JsonProperty("vehicleId") + private String vehicleId; + /** + * 任务状态 + */ + @JsonProperty("pickStatus") + private Integer pickStatus; + /** + * 创建时间 + */ + @JsonProperty("createTime") + private LocalDateTime createTime; + /** + * 发送时间 + */ + @JsonProperty("sendTime") + private LocalDateTime sendTime; + /** + * 到达时间 + */ + @JsonProperty("arriveTime") + private LocalDateTime arriveTime; + /** + * 离开时间 + */ + @JsonProperty("leaveTime") + private LocalDateTime leaveTime; + + public WmsPickTask(String pickStand, String vehicleId) { + this.pickStand = pickStand; + this.vehicleId = vehicleId; + } +} diff --git a/src/main/java/com/wms_main/model/dto/query/DbsQuery.java b/src/main/java/com/wms_main/model/dto/query/DbsQuery.java new file mode 100644 index 0000000..99b74e5 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/DbsQuery.java @@ -0,0 +1,79 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonFormat; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * dbs查询条件 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class DbsQuery extends PageQuery { + /** + * 主键id + */ + private String dbsId; + /** + * 工单 + */ + private String workOrder; + /** + * dbs原始未处理的零件号,成品号 + */ + private String productIdOrigin; + /** + * 零件号,成品号 + */ + private String productId; + /** + * 计划开始时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate planStartDate; + /** + * 计划产量/套 + */ + private Integer planProduction; + /** + * Family + */ + private String family; + /** + * Test No# + */ + private String testNo; + /** + * 状态 + */ + private Integer dbsStatus; + /** + * 工作站台 + */ + private String workStand; + /** + * 实际工作日期 + */ + @JsonFormat(pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate realWorkDate; + /** + * 完成时间 + */ + @JsonFormat(pattern = "yyyy-MM-dd hh:mm:ss") + @DateTimeFormat(pattern = "yyyy-MM-dd hh:mm:ss") + private LocalDateTime finishTime; + /** + * 备注 + */ + private String remark; +} diff --git a/src/main/java/com/wms_main/model/dto/query/GoodsQuery.java b/src/main/java/com/wms_main/model/dto/query/GoodsQuery.java new file mode 100644 index 0000000..b25043f --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/GoodsQuery.java @@ -0,0 +1,27 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 物料信息查询类 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GoodsQuery extends PageQuery { + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 料名 + */ + @JsonProperty("goodsDescription") + private String goodsDescription; +} diff --git a/src/main/java/com/wms_main/model/dto/query/ImageQuery.java b/src/main/java/com/wms_main/model/dto/query/ImageQuery.java new file mode 100644 index 0000000..e733fc5 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/ImageQuery.java @@ -0,0 +1,34 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 图纸查询 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ImageQuery extends PageQuery { + /** + * 成品号/单片号 + */ + @JsonProperty("productId") + private String productId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 图纸类型 + * 1. 总成 + * 2. 单片 + */ + @JsonProperty("imageType") + private Integer imageType; +} diff --git a/src/main/java/com/wms_main/model/dto/query/KanbanQuery.java b/src/main/java/com/wms_main/model/dto/query/KanbanQuery.java new file mode 100644 index 0000000..c95cfc8 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/KanbanQuery.java @@ -0,0 +1,32 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 看板Query + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KanbanQuery extends PageQuery { + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 看板id + */ + @JsonProperty("kanbanId") + private String kanbanId; + /** + * 看板状态 + */ + @JsonProperty("kanbanStatus") + private Integer kanbanStatus; +} diff --git a/src/main/java/com/wms_main/model/dto/query/KateWorksQuery.java b/src/main/java/com/wms_main/model/dto/query/KateWorksQuery.java new file mode 100644 index 0000000..dad5d51 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/KateWorksQuery.java @@ -0,0 +1,49 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +/** + * 卡特的工作查询 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KateWorksQuery extends PageQuery{ + /** + * 工单号 + */ + @JsonProperty("workOrder") + private String workOrder; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片号 + */ + @JsonProperty("singleProductId") + private String singleProductId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 零件号/物料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 计划开工日期 + */ + @JsonProperty("planStartDate") + private LocalDate planStartDate; +} diff --git a/src/main/java/com/wms_main/model/dto/query/KittingBomQuery.java b/src/main/java/com/wms_main/model/dto/query/KittingBomQuery.java new file mode 100644 index 0000000..73617df --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/KittingBomQuery.java @@ -0,0 +1,44 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 配料单查询 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KittingBomQuery extends PageQuery { + /** + * 配料单类型 + * 1:总成 + * 2:单片 + */ + @JsonProperty("bomType") + private Integer bomType; + /** + * 机型 + */ + @JsonProperty("model") + private String model; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 原材料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; +} diff --git a/src/main/java/com/wms_main/model/dto/query/KittingBomRelationQuery.java b/src/main/java/com/wms_main/model/dto/query/KittingBomRelationQuery.java new file mode 100644 index 0000000..f409b9b --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/KittingBomRelationQuery.java @@ -0,0 +1,32 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 配料单对应关系查询 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KittingBomRelationQuery extends PageQuery { + /** + * 机型 + */ + @JsonProperty("model") + private String model; + /** + * 总成 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片 + */ + @JsonProperty("singleProductId") + private String singleProductId; +} diff --git a/src/main/java/com/wms_main/model/dto/query/LocationQuery.java b/src/main/java/com/wms_main/model/dto/query/LocationQuery.java new file mode 100644 index 0000000..90d109e --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/LocationQuery.java @@ -0,0 +1,22 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 库位信息查询 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class LocationQuery extends PageQuery{ + /** + * 库位ID + */ + @JsonProperty("locationId") + private String locationId; +} diff --git a/src/main/java/com/wms_main/model/dto/query/PageQuery.java b/src/main/java/com/wms_main/model/dto/query/PageQuery.java new file mode 100644 index 0000000..8ec10cd --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/PageQuery.java @@ -0,0 +1,58 @@ +package com.wms_main.model.dto.query; + +import com.baomidou.mybatisplus.core.metadata.OrderItem; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.repository.utils.StringUtils; +import lombok.Data; + +import java.util.List; + +/** + * 带分页的查询 + */ +@Data +public class PageQuery { + /** + * 页码 + */ + @JsonProperty("pageNo") + private Long pageNo = 1L; + /** + * 每页行数 + */ + @JsonProperty("pageSize") + private Long pageSize = 10L; + /** + * 排序字段 + */ + @JsonProperty("sortBy") + private List sortBy; + /** + * 站台号 + */ + @JsonProperty("standId") + private String standId; + /** + * 请求用户名 + */ + @JsonProperty("userName") + private String userName; + + /** + * 将前端查询转换为数据库查询可用的分页查询 + * @return 分页查询 + * @param 实体类PO + */ + public Page toMpPage(){ + Page page = Page.of(pageNo, pageSize); + if (sortBy != null && !sortBy.isEmpty()) { + sortBy.forEach(item -> { + if (StringUtils.isNotEmpty(item.getColumn())) { + page.addOrder(item); + } + }); + } + return page; + } +} diff --git a/src/main/java/com/wms_main/model/dto/query/StockQuery.java b/src/main/java/com/wms_main/model/dto/query/StockQuery.java new file mode 100644 index 0000000..de44323 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/query/StockQuery.java @@ -0,0 +1,60 @@ +package com.wms_main.model.dto.query; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; + +/** + * 库存查询 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class StockQuery extends PageQuery{ + /** + * 载具号 + */ + @JsonProperty("vehicleId") + private String vehicleId; + /** + * 物料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 库位号 + */ + @JsonProperty("locationId") + private String locationId; + /** + * 库存状态 + */ + @JsonProperty("stockStatus") + private Integer stockStatus; + /** + * 物料状态 + */ + @JsonProperty("goodsStatus") + private Integer goodsStatus; + /** + * 起始日期 + */ + @JsonProperty("起始日期") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate fromDate; + /** + * 结束日期 + */ + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + @JsonProperty("结束日期") + private LocalDate toDate; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wcs/WcsBoxArriveRequest.java b/src/main/java/com/wms_main/model/dto/request/wcs/WcsBoxArriveRequest.java new file mode 100644 index 0000000..9f6cf49 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wcs/WcsBoxArriveRequest.java @@ -0,0 +1,35 @@ +package com.wms_main.model.dto.request.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 载具到达请求 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsBoxArriveRequest { + /** + * 任务号 + */ + @JsonProperty("taskGroup") + private String taskGroup; + /** + * 载具号 + */ + @JsonProperty("vehicleNo") + private String vehicleNo; + /** + * 点位 + */ + @JsonProperty("location") + private String location; + /** + * 备注 + */ + @JsonProperty("remark") + private String remark; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wcs/WcsPickTaskRequest.java b/src/main/java/com/wms_main/model/dto/request/wcs/WcsPickTaskRequest.java new file mode 100644 index 0000000..916009c --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wcs/WcsPickTaskRequest.java @@ -0,0 +1,40 @@ +package com.wms_main.model.dto.request.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 拣选任务请求 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsPickTaskRequest { + /** + * 任务号 + */ + @JsonProperty("taskId") + private String taskId; + /** + * 载具号 + */ + @JsonProperty("vehicleNo") + private String vehicleNo; + /** + * 任务类型 + */ + @JsonProperty("taskType") + private Integer taskType; + /** + * 库位 + */ + @JsonProperty("location") + private String location; + /** + * 备注 + */ + @JsonProperty("remark") + private String remark; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wcs/WcsReleaseBoxRequest.java b/src/main/java/com/wms_main/model/dto/request/wcs/WcsReleaseBoxRequest.java new file mode 100644 index 0000000..1fa7522 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wcs/WcsReleaseBoxRequest.java @@ -0,0 +1,32 @@ +package com.wms_main.model.dto.request.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wcs.WcsStackerTask; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * Wms请求Wcs释放箱子 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsReleaseBoxRequest { + /** + * 载具号 + */ + @JsonProperty("vehicleNo") + private String vehicleNo; + /** + * 点位 + */ + @JsonProperty("location") + private String location; + /** + * 是否回库 + * 1: 回库 + */ + @JsonProperty("router") + private int router; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wcs/WcsStackerTaskRequest.java b/src/main/java/com/wms_main/model/dto/request/wcs/WcsStackerTaskRequest.java new file mode 100644 index 0000000..99a1a6b --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wcs/WcsStackerTaskRequest.java @@ -0,0 +1,76 @@ +package com.wms_main.model.dto.request.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; + +/** + * Wcs任务请求 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsStackerTaskRequest { + /** + * 任务号 + */ + @JsonProperty("taskId") + private String taskId; + /** + * 任务类型 + */ + @JsonProperty("taskType") + private Integer taskType; + /** + * 优先级 + */ + @JsonProperty("priority") + private Integer priority; + /** + * 起点 + */ + @JsonProperty("origin") + private String origin; + /** + * 终点 + */ + @JsonProperty("destination") + private String destination; + /** + * 任务号 + */ + @JsonProperty("vehicleNo") + private String vehicleNo; + /** + * 载具尺寸 + */ + @JsonProperty("vehicleSize") + private Integer vehicleSize = 0; + /** + * 重量 + */ + @JsonProperty("weight") + private BigDecimal weight = BigDecimal.ZERO; + + /** + * 构造函数 + * + * @param taskId 任务号 + * @param taskType 任务类型 + * @param priority 优先级 + * @param origin 起点 + * @param destination 终点 + * @param vehicleNo 载具号 + */ + public WcsStackerTaskRequest(String taskId, Integer taskType, Integer priority, String origin, String destination, String vehicleNo) { + this.taskId = taskId; + this.taskType = taskType; + this.priority = priority; + this.origin = origin; + this.destination = destination; + this.vehicleNo = vehicleNo; + } +} diff --git a/src/main/java/com/wms_main/model/dto/request/wcs/WcsTaskResultRequest.java b/src/main/java/com/wms_main/model/dto/request/wcs/WcsTaskResultRequest.java new file mode 100644 index 0000000..b619c5a --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wcs/WcsTaskResultRequest.java @@ -0,0 +1,40 @@ +package com.wms_main.model.dto.request.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * Wcs反馈任务状态 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsTaskResultRequest { + /** + * 任务ID + */ + @JsonProperty("taskId") + private String taskId; + /** + * 任务状态 + */ + @JsonProperty("taskStatus") + private Integer taskStatus; + /** + * 载具号 + */ + @JsonProperty("vehicleNo") + private String vehicleNo; + /** + * 终点 + */ + @JsonProperty("destination") + private String destination; + /** + * 信息 + */ + @JsonProperty("message") + private String message; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wcs/WcsVehicleInRequest.java b/src/main/java/com/wms_main/model/dto/request/wcs/WcsVehicleInRequest.java new file mode 100644 index 0000000..d59c844 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wcs/WcsVehicleInRequest.java @@ -0,0 +1,32 @@ +package com.wms_main.model.dto.request.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsVehicleInRequest { + /** + * 点位 + */ + @JsonProperty("point") + private String point; + /** + * 载具信息 + */ + @JsonProperty("vehicleNo") + private String vehicleNo; + /** + * 条码信息 + */ + @JsonProperty("codeMessage") + private String codeMessage; + /** + * 备注 + */ + @JsonProperty("remark") + private String remark; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/BaseWmsRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/BaseWmsRequest.java new file mode 100644 index 0000000..797fa27 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/BaseWmsRequest.java @@ -0,0 +1,22 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BaseWmsRequest { + /** + * 站台号 + */ + @JsonProperty("standId") + private String standId; + /** + * 用户名 + */ + @JsonProperty("userName") + private String userName; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/ConfirmTaskRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/ConfirmTaskRequest.java new file mode 100644 index 0000000..b4e6869 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/ConfirmTaskRequest.java @@ -0,0 +1,29 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.bo.wms.TaskConfirmEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 任务确认请求 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ConfirmTaskRequest extends BaseWmsRequest { + /** + * 任务确认 + */ + @JsonProperty("taskConfirm") + private TaskConfirmEntity taskConfirm; + /** + * 库存确认 + */ + @JsonProperty("stockConfirm") + private StockConfirmEntity stockConfirm; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/ConfirmWorkRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/ConfirmWorkRequest.java new file mode 100644 index 0000000..da96d70 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/ConfirmWorkRequest.java @@ -0,0 +1,29 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.bo.wms.OrderConfirmEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 工作确认请求 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ConfirmWorkRequest extends BaseWmsRequest{ + /** + * 订单确认信息 + */ + @JsonProperty("orderConfirm") + private OrderConfirmEntity orderConfirm; + /** + * 库存确认信息 + */ + @JsonProperty("stockConfirm") + private StockConfirmEntity stockConfirm; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/GenKanbanRequirementRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/GenKanbanRequirementRequest.java new file mode 100644 index 0000000..a6d45b7 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/GenKanbanRequirementRequest.java @@ -0,0 +1,29 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +/** + * 生成看板需求请求 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GenKanbanRequirementRequest extends BaseWmsRequest{ + /** + * 计划开始日期 从 + */ + @JsonProperty("planStartDateFrom") + private LocalDate planStartDateFrom; + /** + * 计划开始日期 至 + */ + @JsonProperty("planStartDateTo") + private LocalDate planStartDateTo; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/InitKateWorkRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/InitKateWorkRequest.java new file mode 100644 index 0000000..0d6b978 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/InitKateWorkRequest.java @@ -0,0 +1,53 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; + +/** + * 初始化工作请求 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class InitKateWorkRequest extends BaseWmsRequest { + /** + * 工单号 + */ + @JsonProperty("workOrder") + private String workOrder; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片号 + */ + @JsonProperty("singleProductId") + private String singleProductId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 零件号/物料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 计划开工日期 + */ + @JsonProperty("planStartDate") +// @JsonFormat(pattern = "yyyy-MM-dd") +// @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate planStartDate; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/LoginRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/LoginRequest.java new file mode 100644 index 0000000..d870f28 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/LoginRequest.java @@ -0,0 +1,21 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +/** + * 登录请求 + */ +@Data +public class LoginRequest { + /** + * 登录账号 + */ + @JsonProperty("loginAccount") + private String loginAccount; + /** + * 登录密码 + */ + @JsonProperty("loginPassword") + private String loginPassword; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/PickTaskRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/PickTaskRequest.java new file mode 100644 index 0000000..e7f2937 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/PickTaskRequest.java @@ -0,0 +1,25 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wms.WmsPickTask; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class PickTaskRequest extends BaseWmsRequest { + /** + * 拣选任务列表 + */ + @JsonProperty("pickTasks") + private List pickTasks; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/StockInRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/StockInRequest.java new file mode 100644 index 0000000..b6b7c34 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/StockInRequest.java @@ -0,0 +1,40 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wms.GoodsInfoForTask; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * WMS入库请求 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class StockInRequest extends BaseWmsRequest { + /** + * 是否为空载具入库 + */ + @JsonProperty("emptyTask") + private boolean emptyTask = false; + /** + * 载具号 + */ + @JsonProperty("vehicleId") + private String vehicleId; + /** + * 入库点 + */ + @JsonProperty("origin") + private String origin; + /** + * 物料信息 + */ + @JsonProperty("goodsInfo") + private List goodsInfo; +} diff --git a/src/main/java/com/wms_main/model/dto/request/wms/StockOutRequest.java b/src/main/java/com/wms_main/model/dto/request/wms/StockOutRequest.java new file mode 100644 index 0000000..847171a --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/request/wms/StockOutRequest.java @@ -0,0 +1,42 @@ +package com.wms_main.model.dto.request.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 出库请求 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class StockOutRequest extends BaseWmsRequest { + /** + * 出库类型 + */ + @JsonProperty("outType") + private Integer outType; + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 载具号 + */ + @JsonProperty("vehicleId") + private String vehicleId; + /** + * 需求数量 + */ + @JsonProperty("needNum") + private Integer needNum; + /** + * 终点 + */ + @JsonProperty("destination") + private String destination; +} diff --git a/src/main/java/com/wms_main/model/dto/response/wcs/BaseWcsApiResponse.java b/src/main/java/com/wms_main/model/dto/response/wcs/BaseWcsApiResponse.java new file mode 100644 index 0000000..2d534c3 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/response/wcs/BaseWcsApiResponse.java @@ -0,0 +1,51 @@ +package com.wms_main.model.dto.response.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.constant.enums.wcs.WcsApiResponseCodeEnums; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BaseWcsApiResponse { + @JsonProperty("code") + private Integer code; + @JsonProperty("message") + private String message; + + /** + * 返回成功 + * @return 响应 + */ + public static BaseWcsApiResponse success() { + return success("success"); + } + + /** + * 返回成功 + * @param message 成功信息 + * @return 响应 + */ + public static BaseWcsApiResponse success(String message) { + return new BaseWcsApiResponse(WcsApiResponseCodeEnums.SUCCESS.getCode(), message); + } + + /** + * 返回失败 + * @return 响应 + */ + public static BaseWcsApiResponse error() { + return error("error"); + } + + /** + * 返回失败 + * @param message 错误信息 + * @return 响应 + */ + public static BaseWcsApiResponse error(String message) { + return new BaseWcsApiResponse(WcsApiResponseCodeEnums.ERROR.getCode(), message); + } +} diff --git a/src/main/java/com/wms_main/model/dto/response/wcs/WcsApiResponse.java b/src/main/java/com/wms_main/model/dto/response/wcs/WcsApiResponse.java new file mode 100644 index 0000000..a995dc0 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/response/wcs/WcsApiResponse.java @@ -0,0 +1,70 @@ +package com.wms_main.model.dto.response.wcs; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.constant.enums.wcs.WcsApiResponseCodeEnums; +import com.wms_main.constant.enums.wms.WmsApiResponseCodeEnums; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WcsApiResponse extends BaseWcsApiResponse { + /** + * 返回数据 + */ + @JsonProperty("data") + private T data; + + /** + * 返回成功---无参 + * @return WcsApiResponse + */ + public static WcsApiResponse success(T data) { + return success(WcsApiResponseCodeEnums.SUCCESS.getMessage(), data); + } + + /** + * 返回成功 + * @param message 自定义响应信息 + * @return WcsApiResponse + */ + public static WcsApiResponse success(String message, T data) { + return instanceOf(WcsApiResponseCodeEnums.SUCCESS.getCode(), message, data); + } + + /** + * 返回错误---无参 + * @return WcsApiResponse + */ + public static WcsApiResponse error(T data) { + return error(WcsApiResponseCodeEnums.ERROR.getMessage(), data); + } + + /** + * 返回错误 + * @param message 自定义响应信息 + * @return WcsApiResponse + */ + public static WcsApiResponse error(String message, T data) { + return instanceOf(WcsApiResponseCodeEnums.ERROR.getCode(), message, data); + } + + /** + * 返回自定义 + * @param code 状态码 + * @param message 自定义响应信息 + * @return WcsApiResponse 响应实例 + */ + public static WcsApiResponse instanceOf(Integer code, String message, T data) { + WcsApiResponse wcsApiResponse = new WcsApiResponse<>(); + wcsApiResponse.setCode(code); + wcsApiResponse.setMessage(message); + wcsApiResponse.setData(data); + return wcsApiResponse; + } +} diff --git a/src/main/java/com/wms_main/model/dto/response/wms/BaseWmsApiResponse.java b/src/main/java/com/wms_main/model/dto/response/wms/BaseWmsApiResponse.java new file mode 100644 index 0000000..9236022 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/response/wms/BaseWmsApiResponse.java @@ -0,0 +1,77 @@ +package com.wms_main.model.dto.response.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.constant.enums.wms.WmsApiResponseCodeEnums; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * WMS基本响应信息 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BaseWmsApiResponse { + /** + * 响应码 + */ + @JsonProperty("code") + private Integer code; + /** + * 响应信息 + */ + @JsonProperty("message") + private String message; + + /** + * 返回成功---无参 + * @return BaseWmsApiResponse + */ + public static BaseWmsApiResponse success() { + return success("成功。"); + } + + /** + * 返回成功 + * @param message 自定义响应信息 + * @return BaseWmsApiResponse + */ + public static BaseWmsApiResponse success(String message) { + return new BaseWmsApiResponse(WmsApiResponseCodeEnums.SUCCESS.getCode(), message); + } + + /** + * 返回失败---无参 + * @return BaseWmsApiResponse + */ + public static BaseWmsApiResponse error() { + return error("失败。"); + } + + /** + * 返回失败---无参 + * @param message 自定义响应信息 + * @return BaseWmsApiResponse + */ + public static BaseWmsApiResponse error(String message) { + return new BaseWmsApiResponse(WmsApiResponseCodeEnums.ERROR.getCode(), message); + } + + /** + * 返回警告---无参 + * @return BaseWmsApiResponse + */ + public static BaseWmsApiResponse warn() { + return warn("警告。"); + } + + /** + * 返回警告---无参 + * @param message 自定义响应信息 + * @return BaseWmsApiResponse + */ + public static BaseWmsApiResponse warn(String message) { + return new BaseWmsApiResponse(WmsApiResponseCodeEnums.WARNING.getCode(), message); + } +} diff --git a/src/main/java/com/wms_main/model/dto/response/wms/InitKateWorkResponse.java b/src/main/java/com/wms_main/model/dto/response/wms/InitKateWorkResponse.java new file mode 100644 index 0000000..43e1514 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/response/wms/InitKateWorkResponse.java @@ -0,0 +1,66 @@ +package com.wms_main.model.dto.response.wms; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; + +/** + * 初始化工作响应信息 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class InitKateWorkResponse { + /** + * 工单号 + */ + @JsonProperty("workOrder") + private String workOrder; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片号 + */ + @JsonProperty("singleProductId") + private String singleProductId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 零件号/物料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 计划开工日期 + */ + @JsonProperty("planStartDate") + @JsonFormat(pattern = "yyyy-MM-dd") + @DateTimeFormat(pattern = "yyyy-MM-dd") + private LocalDate planStartDate; + /** + * 站台号 + */ + @JsonProperty("standId") + private String standId; + /** + * 用户名 + */ + @JsonProperty("userName") + private String userName; + /** + * 订单行总数 + */ + @JsonProperty("totalCount") + private Integer totalCount; +} diff --git a/src/main/java/com/wms_main/model/dto/response/wms/WmsApiResponse.java b/src/main/java/com/wms_main/model/dto/response/wms/WmsApiResponse.java new file mode 100644 index 0000000..7423178 --- /dev/null +++ b/src/main/java/com/wms_main/model/dto/response/wms/WmsApiResponse.java @@ -0,0 +1,68 @@ +package com.wms_main.model.dto.response.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.constant.enums.wms.WmsApiResponseCodeEnums; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WmsApiResponse extends BaseWmsApiResponse { + /** + * 返回数据 + */ + @JsonProperty("data") + private T data; + + /** + * 返回成功---无参 + * @return BaseWmsApiResponse + */ + public static WmsApiResponse success(T data) { + return success(WmsApiResponseCodeEnums.SUCCESS.getMessage(), data); + } + + /** + * 返回成功 + * @param message 自定义响应信息 + * @return BaseWmsApiResponse + */ + public static WmsApiResponse success(String message, T data) { + return instanceOf(WmsApiResponseCodeEnums.SUCCESS.getCode(), message, data); + } + + /** + * 返回错误---无参 + * @return BaseWmsApiResponse + */ + public static WmsApiResponse error(T data) { + return error(WmsApiResponseCodeEnums.ERROR.getMessage(), data); + } + + /** + * 返回错误 + * @param message 自定义响应信息 + * @return BaseWmsApiResponse + */ + public static WmsApiResponse error(String message, T data) { + return instanceOf(WmsApiResponseCodeEnums.ERROR.getCode(), message, data); + } + + /** + * 返回自定义 + * @param code 状态码 + * @param message 自定义响应信息 + * @return WmsApiResponse 响应实例 + */ + public static WmsApiResponse instanceOf(Integer code, String message, T data) { + WmsApiResponse wmsApiResponse = new WmsApiResponse<>(); + wmsApiResponse.setCode(code); + wmsApiResponse.setMessage(message); + wmsApiResponse.setData(data); + return wmsApiResponse; + } +} diff --git a/src/main/java/com/wms_main/model/po/BaseImportEntity.java b/src/main/java/com/wms_main/model/po/BaseImportEntity.java new file mode 100644 index 0000000..1e3ef60 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/BaseImportEntity.java @@ -0,0 +1,37 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 基本导入信息 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BaseImportEntity { + /** + * 初次导入时间 + */ + @TableField(value = "first_import_time") + private LocalDateTime firstImportTime; + /** + * 初次导入用户 + */ + @TableField(value = "first_import_user") + private String firstImportUser; + /** + * 上次更新时间 + */ + @TableField(value = "last_update_time") + private LocalDateTime lastUpdateTime; + /** + * 上次更新用户 + */ + @TableField(value = "last_update_user") + private String lastUpdateUser; +} diff --git a/src/main/java/com/wms_main/model/po/TAppConfig.java b/src/main/java/com/wms_main/model/po/TAppConfig.java new file mode 100644 index 0000000..b8a5755 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppConfig.java @@ -0,0 +1,46 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 应用配置表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_config", autoResultMap = true) +public class TAppConfig { + /** + * 配置ID + */ + @TableId(value = "config_id") + private String configId; + /** + * 配置键 + */ + @TableField(value = "config_key") + private String configKey; + /** + * 配置值 + */ + @TableField(value = "config_value") + private String configValue; + /** + * 配置类型 + * 1:输入框 + * 2:下拉多选 + * 3:开关 + */ + @TableField(value = "config_type") + private Integer configType; + /** + * 配置显示名称 + */ + @TableField(value = "config_name") + private String configName; +} diff --git a/src/main/java/com/wms_main/model/po/TAppDbs.java b/src/main/java/com/wms_main/model/po/TAppDbs.java new file mode 100644 index 0000000..2d5fd5d --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppDbs.java @@ -0,0 +1,118 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * DBS表映射 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_dbs", autoResultMap = true) +public class TAppDbs extends BaseImportEntity { + /** + * 主键id + */ + @TableId(value = "dbs_id") + private String dbsId; + /** + * 工单 + */ + @TableField(value = "work_order") + private String workOrder; + /** + * dbs原始未处理的零件号,成品号 + */ + @TableField(value = "product_id_origin") + private String productIdOrigin; + /** + * 零件号,成品号 + */ + @TableField(value = "product_id") + private String productId; + /** + * Test计划开始时间 + */ + @TableField(value = "test_plan_start_date") + private LocalDate testPlanStartDate; + /** + * Test计划完成时间 + */ + @TableField(value = "test_plan_finish_date") + private LocalDate testPlanFinishDate; + /** + * PNT计划开始时间 + */ + @TableField(value = "pnt_plan_start_date") + private LocalDate pntPlanStartDate; + /** + * PNT计划完成时间 + */ + @TableField(value = "pnt_plan_finish_date") + private LocalDate pntPlanFinishDate; + /** + * 计划产量/套 + */ + @TableField(value = "plan_production") + private Integer planProduction; + /** + * 设备名称 + */ + @TableField(value = "equipment_name") + private String equipmentName; + /** + * 班次 + */ + @TableField(value = "work_shift") + private String workShift; + /** + * Family + */ + @TableField(value = "family") + private String family; + /** + * Test No# + */ + @TableField(value = "test_no") + private String testNo; + /** + * 状态 + */ + @TableField(value = "dbs_status") + private Integer dbsStatus; + /** + * 工作站台 + */ + @TableField(value = "work_stand") + private String workStand; + /** + * 实际工作日期 + */ + @TableField(value = "real_work_date") + private LocalDate realWorkDate; + /** + * 完成时间 + */ + @TableField(value = "finish_time") + private LocalDateTime finishTime; + /** + * K料备注 + */ + @TableField(value = "kitting_remark") + private String kittingRemark; + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; +} diff --git a/src/main/java/com/wms_main/model/po/TAppEquipment.java b/src/main/java/com/wms_main/model/po/TAppEquipment.java new file mode 100644 index 0000000..62aef35 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppEquipment.java @@ -0,0 +1,55 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 设备表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_equipment", autoResultMap = true) +public class TAppEquipment { + /** + * 设备id + */ + @TableId(value = "equipment_id") + private Integer equipmentId; + /** + * 设备类型 + */ + @TableField(value = "equipment_type") + private Integer equipmentType; + /** + * 设备状态 + */ + @TableField(value = "equipment_status") + private Integer equipmentStatus; + /** + * 设备名称 + */ + @TableField(value = "equipment_name") + private String equipmentName; + /** + * 设备描述 + */ + @TableField(value = "equipment_desc") + private String equipmentDesc; + /** + * 上次更新时间 + */ + @TableField(value = "last_update_time") + private LocalDateTime lastUpdateTime; + /** + * 上次更新用户 + */ + @TableField(value = "last_update_user") + private String lastUpdateUser; +} diff --git a/src/main/java/com/wms_main/model/po/TAppGoods.java b/src/main/java/com/wms_main/model/po/TAppGoods.java new file mode 100644 index 0000000..7c30a90 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppGoods.java @@ -0,0 +1,77 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * DBS表映射 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_goods", autoResultMap = true) +public class TAppGoods extends BaseImportEntity { + /** + * 料号 + */ + @TableId(value = "goods_id") + private String goodsId; + /** + * plant + */ + @TableField(value = "plant") + private String plant; + /** + * 物料描述 + */ + @TableField(value = "goods_description") + private String goodsDescription; + /** + * 供应商 + */ + @TableField(value = "vendor_name") + private String vendorName; + /** + * 是否sled管理 + */ + @TableField(value = "is_sled") + private String isSled; + /** + * SLED天数 + */ + @TableField(value = "sled_days") + private Integer sledDays; + /** + * 补料方式 + */ + @TableField(value = "feeding_type") + private String feedingType; + /** + * 每盒数量 + */ + @TableField(value = "box_qty") + private Integer boxQty; + /** + * 优先存放区域 + */ + @TableField(value = "put_area") + private String putArea; + /** + * 热点分析ABC + */ + @TableField(value = "hot_point") + private String hotPoint; + /** + * 立库可放箱数 + */ + @TableField(value = "max_box_num") + private Integer maxBoxNum; +} diff --git a/src/main/java/com/wms_main/model/po/TAppImage.java b/src/main/java/com/wms_main/model/po/TAppImage.java new file mode 100644 index 0000000..1156224 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppImage.java @@ -0,0 +1,58 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 图纸表 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_image", autoResultMap = true) +public class TAppImage extends BaseImportEntity { + /** + * 图纸id + */ + @TableId(value = "image_id") + private String imageId; + /** + * 成品号 + */ + @TableField(value = "product_id") + private String productId; + /** + * 料盒号 + */ + @TableField(value = "box_no") + private String boxNo; + /** + * 图纸存放地址 + */ + @TableField(value = "image_path") + private String imagePath; + /** + * 图纸名称 + */ + @TableField(value = "image_name") + private String imageName; + /** + * 图纸详情 + * TODO 是否存在数据流 + */ + @TableField(value = "image_detail") + private String imageDetail; + /** + * 图纸对应得配料类型 + * 1:总成 + * 2:单片 + */ + @TableField(value = "image_type") + private Integer imageType; +} diff --git a/src/main/java/com/wms_main/model/po/TAppJobs.java b/src/main/java/com/wms_main/model/po/TAppJobs.java new file mode 100644 index 0000000..ef56b22 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppJobs.java @@ -0,0 +1,55 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.validation.constraints.Min; + +/** + * 数据库Jobs表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_jobs", autoResultMap = true) +public class TAppJobs { + /** + * 任务名 + */ + @TableId(value = "job_name") + private String jobName; + /** + * 任务类class + */ + @TableField(value = "job_class") + private String jobClass; + /** + * cron表达式 + */ + @TableField(value = "cron_expression") + private String cronExpression; + /** + * 普通定时器---单位:毫秒。 + */ + @TableField(value = "timer") + @Min(value = 100, message = "定时器任务间隔不能小于100ms") + private Integer timer; + /** + * timer类型 + * 1: 普通定时器 + * 2:cron + */ + @TableField(value = "timer_type") + private Integer timerType; + /** + * 任务状态 + * 1:启用 + * 0:未启用 + */ + @TableField(value = "job_status") + private Integer jobStatus; +} diff --git a/src/main/java/com/wms_main/model/po/TAppKanban.java b/src/main/java/com/wms_main/model/po/TAppKanban.java new file mode 100644 index 0000000..d99b3b8 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppKanban.java @@ -0,0 +1,49 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * DBS表映射 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_kanban", autoResultMap = true) +public class TAppKanban extends BaseImportEntity { + /** + * id + */ + @TableId(value = "record_id") + private String recordId; + /** + * 料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 看板id + */ + @TableField(value = "kanban_id") + private String kanbanId; + /** + * 看板状态 + * 0:空 + * 1:满 + */ + @TableField(value = "kanban_status") + private Integer kanbanStatus; + /** + * 上次补货时间 + */ + @TableField(value = "last_full_time") + private LocalDateTime lastFullTime; +} diff --git a/src/main/java/com/wms_main/model/po/TAppLocation.java b/src/main/java/com/wms_main/model/po/TAppLocation.java new file mode 100644 index 0000000..2953214 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppLocation.java @@ -0,0 +1,92 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 数据库Location表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_location", autoResultMap = true) +public class TAppLocation { + /** + * 库位id + */ + @TableId(value = "location_id") + private String locationId; + /** + * 外部编号 + */ + @TableField(value = "outer_id") + private String outerId; + /** + * 库位类型 + */ + @TableField(value = "location_type") + private Integer locationType; + /** + * 是否锁定 + */ + @TableField(value = "is_lock") + private Integer isLock; + /** + * 是否占用 + */ + @TableField(value = "is_occupy") + private Integer isOccupy; + /** + * 是否在工作中 + */ + private Integer isWorking; + /** + * 对应设备号 + */ + @TableField(value = "equipment_id") + private Integer equipmentId; + /** + * 对应巷道号 + */ + @TableField(value = "tunnel_id") + private Integer tunnelId; + /** + * 排 + */ + @TableField(value = "l_row") + private Integer lRow; + /** + * 列 + */ + @TableField(value = "l_col") + private Integer lCol; + /** + * 层 + */ + @TableField(value = "l_layer") + private Integer lLayer; + /** + * 深度 + */ + @TableField(value = "l_depth") + private Integer lDepth; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 库区 + */ + @TableField(value = "area_id") + private Integer areaId; + /** + * 子区域 + */ + @TableField(value = "sub_area") + private String subArea; +} diff --git a/src/main/java/com/wms_main/model/po/TAppOuts.java b/src/main/java/com/wms_main/model/po/TAppOuts.java new file mode 100644 index 0000000..262d150 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppOuts.java @@ -0,0 +1,63 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 数据库出库单表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_outs", autoResultMap = true) +public class TAppOuts { + /** + * 任务号 + */ + @TableId(value = "task_id") + private String taskId; + /** + * 料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 需求数量 + */ + @TableField(value = "need_num") + private Integer needNum; + /** + * 已分发数量 + */ + @TableField(value = "distribute_num") + private Integer distributeNum; + /** + * 已拣选数量 + */ + @TableField(value = "pick_num") + private Integer pickNum; + /** + * 出库类型 + */ + @TableField(value = "out_type") + private Integer outType; + /** + * 目的地 + */ + @TableField(value = "destination") + private String destination; + /** + * 用户名 + */ + @TableField(value = "user_name") + private String userName; +} diff --git a/src/main/java/com/wms_main/model/po/TAppOutsRecord.java b/src/main/java/com/wms_main/model/po/TAppOutsRecord.java new file mode 100644 index 0000000..80d82e2 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppOutsRecord.java @@ -0,0 +1,63 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 数据库出库单表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_outs_record", autoResultMap = true) +public class TAppOutsRecord { + /** + * 任务号 + */ + @TableId(value = "task_id") + private String taskId; + /** + * 料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 需求数量 + */ + @TableField(value = "need_num") + private Integer needNum; + /** + * 已分发数量 + */ + @TableField(value = "distribute_num") + private Integer distributeNum; + /** + * 已拣选数量 + */ + @TableField(value = "pick_num") + private Integer pickNum; + /** + * 出库类型 + */ + @TableField(value = "out_type") + private Integer outType; + /** + * 目的地 + */ + @TableField(value = "destination") + private String destination; + /** + * 用户名 + */ + @TableField(value = "user_name") + private String userName; +} diff --git a/src/main/java/com/wms_main/model/po/TAppPickPlan.java b/src/main/java/com/wms_main/model/po/TAppPickPlan.java new file mode 100644 index 0000000..4995236 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppPickPlan.java @@ -0,0 +1,55 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 数据库库存更新记录表 映射实体类 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_pick_plan", autoResultMap = true) +public class TAppPickPlan { + /** + * 主键 + */ + @TableId(value = "plan_id") + private String planId; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 计划拣选数量 + */ + @TableField(value = "plan_pick_qty") + private Integer planPickQty; + /** + * 拣选类型 + * 1. 工作拣选 + * 2. 出库单 + */ + @TableField(value = "pick_type") + private Integer pickType; + /** + * 工作index/出库单 + */ + @TableField(value = "work_index") + private String workIndex; + /** + * 工作index/出库单 + */ + @TableField(value = "stand_id") + private String standId; +} diff --git a/src/main/java/com/wms_main/model/po/TAppPickTask.java b/src/main/java/com/wms_main/model/po/TAppPickTask.java new file mode 100644 index 0000000..74dfca7 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppPickTask.java @@ -0,0 +1,60 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库PickTask表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_pick_task", autoResultMap = true) +public class TAppPickTask { + /** + * 任务id + */ + @TableId(value = "pick_id") + private String pickId; + /** + * 拣选站台 + */ + @TableField(value = "pick_stand") + private String pickStand; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 任务状态 + */ + @TableField(value = "pick_status") + private Integer pickStatus; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 发送时间 + */ + @TableField(value = "send_time") + private LocalDateTime sendTime; + /** + * 到达时间 + */ + @TableField(value = "arrive_time") + private LocalDateTime arriveTime; + /** + * 离开时间 + */ + @TableField(value = "leave_time") + private LocalDateTime leaveTime; +} diff --git a/src/main/java/com/wms_main/model/po/TAppPickTaskBak.java b/src/main/java/com/wms_main/model/po/TAppPickTaskBak.java new file mode 100644 index 0000000..cea287d --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppPickTaskBak.java @@ -0,0 +1,60 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库PickTaskBak表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_pick_task_bak", autoResultMap = true) +public class TAppPickTaskBak { + /** + * 任务id + */ + @TableId(value = "pick_id") + private String pickId; + /** + * 拣选站台 + */ + @TableField(value = "pick_stand") + private String pickStand; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 任务状态 + */ + @TableField(value = "pick_status") + private Integer pickStatus; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 发送时间 + */ + @TableField(value = "send_time") + private LocalDateTime sendTime; + /** + * 到达时间 + */ + @TableField(value = "arrive_time") + private LocalDateTime arriveTime; + /** + * 离开时间 + */ + @TableField(value = "leave_time") + private LocalDateTime leaveTime; +} diff --git a/src/main/java/com/wms_main/model/po/TAppProduct.java b/src/main/java/com/wms_main/model/po/TAppProduct.java new file mode 100644 index 0000000..04c8f0f --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppProduct.java @@ -0,0 +1,60 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 总成配料清单表 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_product", autoResultMap = true) +public class TAppProduct extends BaseImportEntity { + /** + * 主键id + */ + @TableId(value = "template_id") + private String templateId; + /** + * 机型 + */ + @TableField(value = "model") + private String model; + /** + * 成品号 + */ + @TableField(value = "product_id") + private String productId; + /** + * 原材料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 原材料物料描述 + */ + @TableField(value = "goods_description") + private String goodsDescription; + /** + * 单套数量 + */ + @TableField(value = "quantity_1_pair") + private Integer quantity1Pair; + /** + * 料盒号 + */ + @TableField(value = "box_no") + private String boxNo; + /** + * 套数 + */ + @TableField(value = "quantity_of_pair") + private Integer quantityOfPair; +} diff --git a/src/main/java/com/wms_main/model/po/TAppProductExtend.java b/src/main/java/com/wms_main/model/po/TAppProductExtend.java new file mode 100644 index 0000000..dceb1b5 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppProductExtend.java @@ -0,0 +1,40 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 总成和单片的对应表 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_product_extend", autoResultMap = true) +public class TAppProductExtend extends BaseImportEntity { + /** + * id + */ + @TableId(value = "record_id") + private String recordId; + /** + * 总成号 + */ + @TableField(value = "product_id") + private String productId; + /** + * 单片号 + */ + @TableField(value = "single_product_id") + private String singleProductId; + /** + * 机型 + */ + @TableField(value = "model") + private String model; +} diff --git a/src/main/java/com/wms_main/model/po/TAppSingleProduct.java b/src/main/java/com/wms_main/model/po/TAppSingleProduct.java new file mode 100644 index 0000000..57e25d4 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppSingleProduct.java @@ -0,0 +1,60 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 单片配料清单表 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_single_product", autoResultMap = true) +public class TAppSingleProduct extends BaseImportEntity { + /** + * 主键id + */ + @TableId(value = "single_template_id") + private String singleTemplateId; + /** + * 机型 + */ + @TableField(value = "model") + private String model; + /** + * 成品号 + */ + @TableField(value = "product_id") + private String productId; + /** + * 原材料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 原材料物料描述 + */ + @TableField(value = "goods_description") + private String goodsDescription; + /** + * 单套数量 + */ + @TableField(value = "quantity_1_pair") + private Integer quantity1Pair; + /** + * 料盒号 + */ + @TableField(value = "box_no") + private String boxNo; + /** + * 套数 + */ + @TableField(value = "quantity_of_pair") + private Integer quantityOfPair; +} diff --git a/src/main/java/com/wms_main/model/po/TAppStand.java b/src/main/java/com/wms_main/model/po/TAppStand.java new file mode 100644 index 0000000..1a1e657 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppStand.java @@ -0,0 +1,60 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 应用配置表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_stand", autoResultMap = true) +public class TAppStand { + /** + * 站台id + */ + @TableId(value = "stand_id") + private String standId; + /** + * 站台类型 + */ + @TableField(value = "stand_type") + private Integer standType; + /** + * 站台状态 + */ + @TableField(value = "stand_status") + private Integer standStatus; + /** + * 站台ip + */ + @TableField(value = "stand_ip") + private String standIp; + /** + * 站台名称 + */ + @TableField(value = "stand_name") + private String standName; + /** + * 站台描述 + */ + @TableField(value = "stand_desc") + private String standDesc; + /** + * 上次更新时间 + */ + @TableField(value = "last_update_time") + private LocalDateTime lastUpdateTime; + /** + * 上次更新用户 + */ + @TableField(value = "last_update_user") + private String lastUpdateUser; +} diff --git a/src/main/java/com/wms_main/model/po/TAppStandWork.java b/src/main/java/com/wms_main/model/po/TAppStandWork.java new file mode 100644 index 0000000..8c53053 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppStandWork.java @@ -0,0 +1,90 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_stand_work", autoResultMap = true) +public class TAppStandWork { + /** + * id + */ + @TableId(value = "work_id") + private String workId; + /** + * 站台号 + */ + @TableField(value = "stand_id") + private String standId; + /** + * 工单号 + */ + @TableField(value = "work_order") + private String workOrder; + /** + * 成品号 + */ + @TableField(value = "product_id") + private String productId; + /** + * 单片号 + */ + @TableField(value = "single_product_id") + private String singleProductId; + /** + * 物料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 料盒号 + */ + @TableField(value = "box_no") + private String boxNo; + /** + * 计划拣选数量 + */ + @TableField(value = "plan_pick_qty") + private Integer planPickQty; + /** + * 实际拣选数量 + */ + @TableField(value = "real_pick_qty") + private Integer realPickQty; + /** + * 库存id + */ + @TableField(value = "stock_id") + private String stockId; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 计划剩余数量 + */ + @TableField(value = "plan_remain_qty") + private Integer planRemainQty; + /** + * 实际剩余数量 + */ + @TableField(value = "real_remain_qty") + private Integer realRemainQty; + /** + * 是否是库外料 + */ + @TableField(value = "is_out") + private Integer isOut; + /** + * 物料存放位置 + */ + @TableField(value = "put_area") + private String putArea; +} diff --git a/src/main/java/com/wms_main/model/po/TAppStock.java b/src/main/java/com/wms_main/model/po/TAppStock.java new file mode 100644 index 0000000..d582ee3 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppStock.java @@ -0,0 +1,102 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * 数据库Stock表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_stock", autoResultMap = true) +public class TAppStock { + /** + * 库存编号 + */ + @TableId(value = "stock_id") + private String stockId; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 库位号 + */ + @TableField(value = "location_id") + private String locationId; + /** + * 库存状态 + */ + @TableField(value = "stock_status") + private Integer stockStatus; + /** + * 物料编号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 物料状态 + */ + @TableField(value = "goods_status") + private Integer goodsStatus; + /** + * 初次入库时间 + */ + @TableField(value = "first_in_time") + private LocalDateTime firstInTime; + /** + * 初次入库用户 + */ + @TableField(value = "first_in_user") + private String firstInUser; + /** + * 上次更新时间 + */ + @TableField(value = "last_update_time") + private LocalDateTime lastUpdateTime; + /** + * 上次更新用户 + */ + @TableField(value = "last_update_user") + private String lastUpdateUser; + /** + * 入库总量 + */ + @TableField(value = "total_num") + private Integer totalNum; + /** + * 剩余数量 + */ + @TableField(value = "remain_num") + private Integer remainNum; + /** + * 实际数量 + */ + @TableField(value = "real_num") + private Integer realNum; + /** + * 物料描述 + */ + @TableField(value = "goods_desc") + private String goodsDesc; + /** + * 有效期 + */ + @TableField(value = "expire_date") + private LocalDate expireDate; + /** + * sled 天数 + */ + @TableField(value = "sled") + private Integer sled; +} diff --git a/src/main/java/com/wms_main/model/po/TAppStockUpdate.java b/src/main/java/com/wms_main/model/po/TAppStockUpdate.java new file mode 100644 index 0000000..1650c66 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppStockUpdate.java @@ -0,0 +1,65 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库库存更新记录表 映射实体类 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_stock_update", autoResultMap = true) +public class TAppStockUpdate { + /** + * 库存更新记录id + */ + @TableId(value = "update_id") + private String updateId; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 首次入库时间 + */ + @TableField(value = "first_in_time") + private LocalDateTime firstInTime; + /** + * 原数量 + */ + @TableField(value = "before_num") + private Integer beforeNum; + /** + * 新数量 + */ + @TableField(value = "after_num") + private Integer afterNum; + /** + * 更新理由 + */ + @TableField(value = "reason") + private String reason; + /** + * 更新时间 + */ + @TableField(value = "update_time") + private LocalDateTime updateTime; + /** + * 更新用户 + */ + @TableField(value = "update_user") + private String updateUser; +} diff --git a/src/main/java/com/wms_main/model/po/TAppTask.java b/src/main/java/com/wms_main/model/po/TAppTask.java new file mode 100644 index 0000000..a7923a0 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppTask.java @@ -0,0 +1,106 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * 数据库Task表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_task", autoResultMap = true) +public class TAppTask { + /** + * 任务ID + */ + @TableId(value = "task_id") + private String taskId; + /** + * 任务类型 + */ + @TableField(value = "task_type") + private Integer taskType; + /** + * 任务状态 + */ + @TableField(value = "task_status") + private Integer taskStatus; + /** + * 任务优先级 + */ + @TableField(value = "task_priority") + private Integer taskPriority; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 起点 + */ + @TableField(value = "origin") + private String origin; + /** + * 终点 + */ + @TableField(value = "destination") + private String destination; + /** + * wcs任务id + */ + @TableField(value = "wcs_task_id") + private String wcsTaskId; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 完成时间 + */ + @TableField(value = "finish_time") + private LocalDateTime finishTime; + /** + * 料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 操作数量 + */ + @TableField(value = "op_num") + private Integer opNum; + /** + * 库存数量 + */ + @TableField(value = "stock_num") + private Integer stockNum; + /** + * 操纵用户 + */ + @TableField(value = "op_user") + private String opUser; + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; + /** + * 申请出库的站台 + */ + @TableField(value = "call_stand") + private String callStand; + /** + * 物料描述 + */ + @TableField(value = "goods_desc") + private String goodsDesc; +} diff --git a/src/main/java/com/wms_main/model/po/TAppTaskBak.java b/src/main/java/com/wms_main/model/po/TAppTaskBak.java new file mode 100644 index 0000000..12940cb --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppTaskBak.java @@ -0,0 +1,106 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.math.BigDecimal; +import java.time.LocalDateTime; + +/** + * 数据库任务记录表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_task_bak", autoResultMap = true) +public class TAppTaskBak { + /** + * 任务ID + */ + @TableId(value = "task_id") + private String taskId; + /** + * 任务类型 + */ + @TableField(value = "task_type") + private Integer taskType; + /** + * 任务状态 + */ + @TableField(value = "task_status") + private Integer taskStatus; + /** + * 任务优先级 + */ + @TableField(value = "task_priority") + private Integer taskPriority; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 起点 + */ + @TableField(value = "origin") + private String origin; + /** + * 终点 + */ + @TableField(value = "destination") + private String destination; + /** + * wcs任务id + */ + @TableField(value = "wcs_task_id") + private String wcsTaskId; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 完成时间 + */ + @TableField(value = "finish_time") + private LocalDateTime finishTime; + /** + * 料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 操作数量 + */ + @TableField(value = "op_num") + private Integer opNum; + /** + * 库存数量 + */ + @TableField(value = "stock_num") + private Integer stockNum; + /** + * 操纵用户 + */ + @TableField(value = "op_user") + private String opUser; + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; + /** + * 申请出库的站台 + */ + @TableField(value = "call_stand") + private String callStand; + /** + * 物料描述 + */ + @TableField(value = "goods_desc") + private String goodsDesc; +} diff --git a/src/main/java/com/wms_main/model/po/TAppVehicle.java b/src/main/java/com/wms_main/model/po/TAppVehicle.java new file mode 100644 index 0000000..709db5e --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppVehicle.java @@ -0,0 +1,55 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库载具表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_vehicle", autoResultMap = true) +public class TAppVehicle { + /** + * 载具号 + */ + @TableId(value = "vehicle_id") + private String vehicleId; + /** + * 是否空载具 + */ + @TableField(value = "is_empty") + private Integer isEmpty; + /** + * 载具状态 + */ + @TableField(value = "vehicle_status") + private Integer vehicleStatus; + /** + * 载具类型 + */ + @TableField(value = "vehicle_type") + private String vehicleType; + /** + * 是否锁定 + */ + @TableField(value = "is_lock") + private Integer isLock; + /** + * 库位 + */ + @TableField(value = "location_id") + private String locationId; + /** + * 上次入库时间 + */ + @TableField(value = "last_in_time") + private LocalDateTime lastInTime; +} diff --git a/src/main/java/com/wms_main/model/po/TAppWcsTask.java b/src/main/java/com/wms_main/model/po/TAppWcsTask.java new file mode 100644 index 0000000..bdd1d28 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppWcsTask.java @@ -0,0 +1,75 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库wcs任务表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_wcs_task", autoResultMap = true) +public class TAppWcsTask { + /** + * wcs任务id + */ + @TableId(value = "wcs_task_id") + private String wcsTaskId; + /** + * wcs任务状态 + */ + @TableField(value = "wcs_task_status") + private Integer wcsTaskStatus; + /** + * wcs任务类型 + */ + @TableField(value = "wcs_task_type") + private Integer wcsTaskType; + /** + * wcs任务优先级 + */ + @TableField(value = "task_priority") + private Integer taskPriority; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 起点 + */ + @TableField(value = "origin") + private String origin; + /** + * 终点 + */ + @TableField(value = "destination") + private String destination; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 发送时间 + */ + @TableField(value = "send_time") + private LocalDateTime sendTime; + /** + * 完成时间 + */ + @TableField(value = "finish_time") + private LocalDateTime finishTime; + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; +} diff --git a/src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java b/src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java new file mode 100644 index 0000000..cb48502 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppWcsTaskBak.java @@ -0,0 +1,75 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库wcs任务记录表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_wcs_task_bak", autoResultMap = true) +public class TAppWcsTaskBak { + /** + * wcs任务id + */ + @TableId(value = "wcs_task_id") + private String wcsTaskId; + /** + * wcs任务状态 + */ + @TableField(value = "wcs_task_status") + private Integer wcsTaskStatus; + /** + * wcs任务类型 + */ + @TableField(value = "wcs_task_type") + private Integer wcsTaskType; + /** + * wcs任务优先级 + */ + @TableField(value = "task_priority") + private Integer taskPriority; + /** + * 载具号 + */ + @TableField(value = "vehicle_id") + private String vehicleId; + /** + * 起点 + */ + @TableField(value = "origin") + private String origin; + /** + * 终点 + */ + @TableField(value = "destination") + private String destination; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 发送时间 + */ + @TableField(value = "send_time") + private LocalDateTime sendTime; + /** + * 完成时间 + */ + @TableField(value = "finish_time") + private LocalDateTime finishTime; + /** + * 备注 + */ + @TableField(value = "remark") + private String remark; +} diff --git a/src/main/java/com/wms_main/model/po/TAppWork.java b/src/main/java/com/wms_main/model/po/TAppWork.java new file mode 100644 index 0000000..d615e0a --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppWork.java @@ -0,0 +1,109 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * work表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_work", autoResultMap = true) +public class TAppWork { + /** + * 主键 + */ + @TableId(value = "work_index") + private String workIndex; + /** + * plant + */ + @TableField(value = "work_order") + private String workOrder; + /** + * 计划开工日期 + */ + @TableField(value = "plan_start_date") + private LocalDate planStartDate; + /** + * 成品号 + */ + @TableField(value = "product_id") + private String productId; + /** + * 单片号 + */ + @TableField(value = "single_product_id") + private String singleProductId; + /** + * 料盒号 + */ + @TableField(value = "box_no") + private String boxNo; + /** + * 原材料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 需求数量 + */ + @TableField(value = "need_num") + private Integer needNum; + /** + * 已分配数量 + */ + @TableField(value = "distribute_num") + private Integer distributeNum; + /** + * 已完成数量 + */ + @TableField(value = "finish_num") + private Integer finishNum; + /** + * 工作站台 + */ + @TableField(value = "work_stand") + private String workStand; + /** + * 工作状态 + * -1: 暂停/暂存 + */ + @TableField(value = "work_status") + private Integer workStatus; + /** + * 工作用户 + */ + @TableField(value = "work_user") + private String workUser; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 完成时间 + */ + @TableField(value = "finish_time") + private LocalDateTime finishTime; + /** + * 缺料状态 + * 0:不缺料 + * 1: 缺料 + */ + @TableField(value = "lack_status") + private Integer lackStatus; + /** + * 是否是库外料 + */ + @TableField(value = "is_out") + private Integer isOut; +} diff --git a/src/main/java/com/wms_main/model/po/TAppWorkRecord.java b/src/main/java/com/wms_main/model/po/TAppWorkRecord.java new file mode 100644 index 0000000..e81573e --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TAppWorkRecord.java @@ -0,0 +1,101 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * work_record表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_app_work_record", autoResultMap = true) +public class TAppWorkRecord { + /** + * 主键 + */ + @TableId(value = "work_index") + private String workIndex; + /** + * plant + */ + @TableField(value = "work_order") + private String workOrder; + /** + * 计划开工日期 + */ + @TableField(value = "plan_start_date") + private LocalDate planStartDate; + /** + * 成品号 + */ + @TableField(value = "product_id") + private String productId; + /** + * 单片号 + */ + @TableField(value = "single_product_id") + private String singleProductId; + /** + * 料盒号 + */ + @TableField(value = "box_no") + private String boxNo; + /** + * 原材料号 + */ + @TableField(value = "goods_id") + private String goodsId; + /** + * 需求数量 + */ + @TableField(value = "need_num") + private Integer needNum; + /** + * 已完成数量 + */ + @TableField(value = "finish_num") + private Integer finishNum; + /** + * 工作站台 + */ + @TableField(value = "work_stand") + private String workStand; + /** + * 工作状态 + */ + @TableField(value = "work_status") + private Integer workStatus; + /** + * 工作用户 + */ + @TableField(value = "work_user") + private String workUser; + /** + * 创建时间 + */ + @TableField(value = "create_time") + private LocalDateTime createTime; + /** + * 完成时间 + */ + @TableField(value = "finish_time") + private LocalDateTime finishTime; + /** + * 缺料状态 + */ + @TableField(value = "lack_status") + private Integer lackStatus; + /** + * 是否是库外料 + */ + @TableField(value = "is_out") + private Integer isOut; +} diff --git a/src/main/java/com/wms_main/model/po/TSysMenu.java b/src/main/java/com/wms_main/model/po/TSysMenu.java new file mode 100644 index 0000000..f2a1346 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TSysMenu.java @@ -0,0 +1,43 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 数据库Menu表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_sys_menu", autoResultMap = true) +public class TSysMenu { + /** + * 菜单id + */ + @TableId(value = "menu_id") + private String menuId; + /** + * 菜单名称 + */ + @TableField(value = "label_name") + private String labelName; + /** + * 图标 + */ + @TableField(value = "icon_value") + private String iconValue; + /** + * 路径 + */ + @TableField(value = "path") + private String path; + /** + * 父级菜单id + */ + @TableField(value = "parent_id") + private String parentId; +} diff --git a/src/main/java/com/wms_main/model/po/TSysPermission.java b/src/main/java/com/wms_main/model/po/TSysPermission.java new file mode 100644 index 0000000..2aad4ee --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TSysPermission.java @@ -0,0 +1,33 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 数据库Permission表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_sys_permission", autoResultMap = true) +public class TSysPermission { + /** + * 权限id + */ + @TableId(value = "permission_id") + private String permissionId; + /** + * 角色id + */ + @TableField(value = "role_id") + private String roleId; + /** + * 菜单id + */ + @TableField(value = "menu_id") + private String menuId; +} diff --git a/src/main/java/com/wms_main/model/po/TSysRole.java b/src/main/java/com/wms_main/model/po/TSysRole.java new file mode 100644 index 0000000..6a63d09 --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TSysRole.java @@ -0,0 +1,65 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库Role表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_sys_role", autoResultMap = true) +public class TSysRole { + /** + * 角色id + */ + @TableId(value = "role_id") + private String roleId; + /** + * 角色名 + */ + @TableField(value = "role_name") + private String roleName; + /** + * 角色描述 + */ + @TableField(value = "role_desc") + private String roleDesc; + /** + * 上级角色 + */ + @TableField(value = "leader_role") + private String leaderRole; + /** + * 角色状态 + */ + @TableField(value = "role_status") + private Integer roleStatus; + /** + * 添加用户 + */ + @TableField(value = "add_user") + private String addUser; + /** + * 添加时间 + */ + @TableField(value = "add_time") + private LocalDateTime addTime; + /** + * 上次更新时间 + */ + @TableField(value = "last_update_user") + private String lastUpdateUser; + /** + * 上次更新时间 + */ + @TableField(value = "last_update_time") + private LocalDateTime lastUpdateTime; +} diff --git a/src/main/java/com/wms_main/model/po/TSysUser.java b/src/main/java/com/wms_main/model/po/TSysUser.java new file mode 100644 index 0000000..fb9d83c --- /dev/null +++ b/src/main/java/com/wms_main/model/po/TSysUser.java @@ -0,0 +1,80 @@ +package com.wms_main.model.po; + +import com.baomidou.mybatisplus.annotation.TableField; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 数据库User表映射 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +@TableName(value = "t_sys_user", autoResultMap = true) +public class TSysUser { + /** + * 登录账号 + */ + @TableId(value = "login_account") + private String loginAccount; + /** + * 登录密码 + */ + @TableField(value = "login_password") + private String loginPassword; + /** + * 用户名---显示 + */ + @TableField(value = "user_name") + private String userName; + /** + * 角色id + */ + @TableField(value = "role_id") + private String roleId; + /** + * 登录状态 + */ + @TableField(value = "login_status") + private Integer loginStatus; + /** + * 账号状态 + */ + @TableField(value = "account_status") + private Integer accountStatus; + /** + * 上次登录设备 + */ + @TableField(value = "last_login_device") + private String lastLoginDevice; + /** + * 上次登录时间 + */ + @TableField(value = "last_login_time") + private LocalDateTime lastLoginTime; + /** + * 添加用户 + */ + @TableField(value = "add_user") + private String addUser; + /** + * 添加时间 + */ + @TableField(value = "add_time") + private LocalDateTime addTime; + /** + * 上次更新用户 + */ + @TableField(value = "last_update_user") + private String lastUpdateUser; + /** + * 上次更新时间 + */ + @TableField(value = "last_update_time") + private LocalDateTime lastUpdateTime; +} diff --git a/src/main/java/com/wms_main/model/pojo/log/RequestLog.java b/src/main/java/com/wms_main/model/pojo/log/RequestLog.java new file mode 100644 index 0000000..da337eb --- /dev/null +++ b/src/main/java/com/wms_main/model/pojo/log/RequestLog.java @@ -0,0 +1,49 @@ +package com.wms_main.model.pojo.log; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +@Data +@AllArgsConstructor +@NoArgsConstructor +public class RequestLog { + /** + * 请求方式 + */ + private String method; + /** + * 请求地址 + */ + private String uri; + /** + * 客户端主机 + */ + private String remoteHost; + /** + * 客户端地址 + */ + private String remoteAddr; + /** + * 请求数据 + */ + private String requestContent; + /** + * 响应状态 + */ + private String status; + /** + * 响应数据 + */ + private String responseContent; + + public String toString() { + return "\n请求方式:" + method + + "\n请求地址:" + uri + + "\n客户端主机:" + remoteHost + + "\n客户端地址:" + remoteAddr + + "\n请求数据:" + requestContent + + "\n响应状态:" + status + + "\n响应数据:" + responseContent; + } +} diff --git a/src/main/java/com/wms_main/model/vo/others/FileVo.java b/src/main/java/com/wms_main/model/vo/others/FileVo.java new file mode 100644 index 0000000..b39c89b --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/others/FileVo.java @@ -0,0 +1,45 @@ +package com.wms_main.model.vo.others; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 文件属性vo + */ +@Data +@NoArgsConstructor +@AllArgsConstructor +public class FileVo { + /** + * 文件id + */ + @JsonProperty("fileId") + private String fileId; + /** + * 文件名 + */ + @JsonProperty("name") + private String name; + /** + * 文件类型 + */ + @JsonProperty("type") + private String type; + /** + * 文件大小 + */ + @JsonProperty("size") + private String size; + /** + * 文件hash + */ + @JsonProperty("hash") + private String hash; + /** + * 用户名 + */ + @JsonProperty("userName") + private String userName; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/BaseImportVo.java b/src/main/java/com/wms_main/model/vo/wms/BaseImportVo.java new file mode 100644 index 0000000..2ca9225 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/BaseImportVo.java @@ -0,0 +1,37 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDateTime; + +/** + * 导入信息基本类 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BaseImportVo { + /** + * 初次导入时间 + */ + @JsonProperty("firstImportTime") + private LocalDateTime firstImportTime; + /** + * 初次导入用户 + */ + @JsonProperty("firstImportUser") + private String firstImportUser; + /** + * 上次更新时间 + */ + @JsonProperty("lastUpdateTime") + private LocalDateTime lastUpdateTime; + /** + * 上次更新用户 + */ + @JsonProperty("lastUpdateUser") + private String lastUpdateUser; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/BoxDetailVo.java b/src/main/java/com/wms_main/model/vo/wms/BoxDetailVo.java new file mode 100644 index 0000000..53c589f --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/BoxDetailVo.java @@ -0,0 +1,29 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wms.BoxSummary; +import com.wms_main.model.bo.wms.GoodsLackSummary; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * 配料界面料盒预览信息 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class BoxDetailVo { + /** + * 料盒总览信息 + */ + @JsonProperty("boxSummary") + private BoxSummary boxSummary; + /** + * 缺料总览信息 + */ + @JsonProperty("goodsLackSummary") + private List goodsLackSummary; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/DbsVo.java b/src/main/java/com/wms_main/model/vo/wms/DbsVo.java new file mode 100644 index 0000000..01ea4e8 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/DbsVo.java @@ -0,0 +1,159 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppDbs; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * Dbs显示类 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class DbsVo extends BaseImportVo { + /** + * 主键id + */ + @JsonProperty(value = "dbsId") + private String dbsId; + /** + * 工单 + */ + @JsonProperty(value = "workOrder") + private String workOrder; + /** + * dbs原始未处理的零件号,成品号 + */ + @JsonProperty(value = "productIdOrigin") + private String productIdOrigin; + /** + * 零件号,成品号 + */ + @JsonProperty(value = "productId") + private String productId; + /** + * Test计划开始时间 + */ + @JsonProperty(value = "testPlanStartDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate testPlanStartDate; + /** + * Test计划完成时间 + */ + @JsonProperty(value = "testPlanFinishDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate testPlanFinishDate; + /** + * PNT计划开始时间 + */ + @JsonProperty(value = "pntPlanStartDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate pntPlanStartDate; + /** + * PNT计划完成时间 + */ + @JsonProperty(value = "pntPlanFinishDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate pntPlanFinishDate; + /** + * 计划产量/套 + */ + @JsonProperty(value = "planProduction") + private Integer planProduction; + /** + * 设备名称 + */ + @JsonProperty(value = "equipmentName") + private String equipmentName; + /** + * 班次 + */ + @JsonProperty(value = "workShift") + private String workShift; + /** + * Family + */ + @JsonProperty(value = "family") + private String family; + /** + * Test No# + */ + @JsonProperty(value = "testNo") + private String testNo; + /** + * 状态 + */ + @JsonProperty(value = "dbsStatus") + private Integer dbsStatus; + /** + * 工作站台 + */ + @JsonProperty(value = "workStand") + private String workStand; + /** + * 实际工作日期 + */ + @JsonProperty(value = "realWorkDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate realWorkDate; + /** + * 完成时间 + */ + @JsonProperty(value = "finishTime") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime finishTime; + /** + * K料备注 + */ + @JsonProperty(value = "kittingRemark") + private String kittingRemark; + /** + * 备注 + */ + @JsonProperty(value = "remark") + private String remark; + + /** + * 将PO转换为VO + * @param po po + * @return vo + */ + public static DbsVo ofPo(TAppDbs po) { + return new DbsVo( + po.getDbsId(), + po.getWorkOrder(), + po.getProductIdOrigin(), + po.getProductId(), + po.getTestPlanStartDate(), + po.getTestPlanFinishDate(), + po.getPntPlanStartDate(), + po.getPntPlanFinishDate(), + po.getPlanProduction(), + po.getEquipmentName(), + po.getWorkShift(), + po.getFamily(), + po.getTestNo(), + po.getDbsStatus(), + po.getWorkStand(), + po.getRealWorkDate(), + po.getFinishTime(), + po.getKittingRemark(), + po.getRemark() + ); + } +} diff --git a/src/main/java/com/wms_main/model/vo/wms/GoodsVo.java b/src/main/java/com/wms_main/model/vo/wms/GoodsVo.java new file mode 100644 index 0000000..7481977 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/GoodsVo.java @@ -0,0 +1,62 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 物料信息显示类 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class GoodsVo extends BaseImportVo { + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * plant + */ + @JsonProperty("plant") + private String plant; + /** + * 物料描述 + */ + @JsonProperty("goodsDescription") + private String goodsDescription; + /** + * 供应商 + */ + @JsonProperty("vendorName") + private String vendorName; + /** + * 是否sled管理 + */ + @JsonProperty("isSled") + private String isSled; + /** + * SLED天数 + */ + @JsonProperty("sledDays") + private Integer sledDays; + /** + * 补料方式 + */ + @JsonProperty("feedingType") + private String feedingType; + /** + * 每盒数量 + */ + @JsonProperty("boxQty") + private Integer boxQty; + /** + * 优先存放区域 + */ + @JsonProperty("putArea") + private String putArea; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/ImageVo.java b/src/main/java/com/wms_main/model/vo/wms/ImageVo.java new file mode 100644 index 0000000..200dc35 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/ImageVo.java @@ -0,0 +1,58 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppImage; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 图纸Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class ImageVo { + /** + * 图纸id + */ + @JsonProperty("imageId") + private String imageId; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 图纸存放ip + */ + @JsonProperty("imageIp") + private String imageIp; + /** + * 图纸存放地址 + */ + @JsonProperty("imagePath") + private String imagePath; + /** + * 图纸名称 + */ + @JsonProperty("imageName") + private String imageName; + /** + * 图纸详情 + */ + @JsonProperty("imageDetail") + private String imageDetail; + /** + * 图纸对应得配料类型 + * 1:总成 + * 2:单片 + */ + @JsonProperty("imageType") + private Integer imageType; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/KanbanVo.java b/src/main/java/com/wms_main/model/vo/wms/KanbanVo.java new file mode 100644 index 0000000..b99c8bd --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/KanbanVo.java @@ -0,0 +1,50 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppKanban; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 看板Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KanbanVo { + /** + * 记录id + */ + @JsonProperty("recordId") + private String recordId; + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 看板id + */ + @JsonProperty("kanbanId") + private String kanbanId; + /** + * 看板状态 + */ + @JsonProperty("kanbanStatus") + private Integer kanbanStatus; + + /** + * 将Po转化为Vo + * @param kanbanPo Po + * @return Vo + */ + public static KanbanVo ofPo(TAppKanban kanbanPo) { + return new KanbanVo( + kanbanPo.getRecordId(), + kanbanPo.getGoodsId(), + kanbanPo.getKanbanId(), + kanbanPo.getKanbanStatus() + ); + } +} diff --git a/src/main/java/com/wms_main/model/vo/wms/KateWorkOptionsVo.java b/src/main/java/com/wms_main/model/vo/wms/KateWorkOptionsVo.java new file mode 100644 index 0000000..bef94ae --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/KateWorkOptionsVo.java @@ -0,0 +1,43 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Collections; +import java.util.List; + +/** + * 工作下发界面查询选项 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KateWorkOptionsVo { + /** + * 工单号 + */ + @JsonProperty("workOrder") + private List workOrder = Collections.emptyList(); + /** + * 成品号 + */ + @JsonProperty("productId") + private List productId = Collections.emptyList(); + /** + * 单片号 + */ + @JsonProperty("singleProductId") + private List singleProductId = Collections.emptyList(); + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private List boxNo = Collections.emptyList(); + /** + * 原材料号 + */ + @JsonProperty("goodsId") + private List goodsId = Collections.emptyList(); +} diff --git a/src/main/java/com/wms_main/model/vo/wms/KateWorkVo.java b/src/main/java/com/wms_main/model/vo/wms/KateWorkVo.java new file mode 100644 index 0000000..5d9ab72 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/KateWorkVo.java @@ -0,0 +1,58 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.time.LocalDate; + +/** + * 工作界面显示 + * // TODO 数据待补充 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KateWorkVo { + /** + * 工单号 + */ + @JsonProperty("workOrder") + private String workOrder; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片号 + */ + @JsonProperty("singleProductId") + private String singleProductId; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 原材料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 机型 + */ + @JsonProperty("model") + private String model; + /** + * 计划开工日期 + */ + @JsonProperty("planStartDate") + private LocalDate planStartDate; + /** + * 工作状态 + */ + @JsonProperty("workStatus") + private Integer workStatus; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/KittingBomRelationVo.java b/src/main/java/com/wms_main/model/vo/wms/KittingBomRelationVo.java new file mode 100644 index 0000000..070b1fe --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/KittingBomRelationVo.java @@ -0,0 +1,52 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppProductExtend; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 配料单对应关系 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KittingBomRelationVo extends BaseImportVo { + /** + * id + */ + @JsonProperty("recordId") + private String recordId; + /** + * 机型 + */ + @JsonProperty("model") + private String model; + /** + * 总成 + */ + @JsonProperty("productId") + private String productId; + /** + * 单片 + */ + @JsonProperty("singleProductId") + private String singleProductId; + + /** + * 将po对象转换为vo对象 + * @param po po对象 + * @return vo对象 + */ + public static KittingBomRelationVo ofPo(TAppProductExtend po) { + return new KittingBomRelationVo( + po.getRecordId(), + po.getModel(), + po.getProductId(), + po.getSingleProductId() + ); + } +} diff --git a/src/main/java/com/wms_main/model/vo/wms/KittingBomVo.java b/src/main/java/com/wms_main/model/vo/wms/KittingBomVo.java new file mode 100644 index 0000000..b85d790 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/KittingBomVo.java @@ -0,0 +1,104 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppProduct; +import com.wms_main.model.po.TAppSingleProduct; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.EqualsAndHashCode; +import lombok.NoArgsConstructor; + +/** + * 配料单显示类 + */ +@EqualsAndHashCode(callSuper = true) +@Data +@AllArgsConstructor +@NoArgsConstructor +public class KittingBomVo extends BaseImportVo { + /** + * 主键id + */ + @JsonProperty("templateId") + private String templateId; + /** + * 配料单类型 + * 1:总成 + * 2:单片 + */ + @JsonProperty("bomType") + private Integer bomType; + /** + * 机型 + */ + @JsonProperty("model") + private String model; + /** + * 成品号 + */ + @JsonProperty("productId") + private String productId; + /** + * 原材料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 原材料物料描述 + */ + @JsonProperty("goodsDescription") + private String goodsDescription; + /** + * 单套数量 + */ + @JsonProperty("quantity1Pair") + private Integer quantity1Pair; + /** + * 料盒号 + */ + @JsonProperty("boxNo") + private String boxNo; + /** + * 套数 + */ + @JsonProperty("quantityOfPair") + private Integer quantityOfPair; + + /** + * 将Po转换为Vo + * @param product po + * @return vo + */ + public static KittingBomVo ofProduct(TAppProduct product) { + return new KittingBomVo( + product.getTemplateId(), + 1, + product.getModel(), + product.getProductId(), + product.getGoodsId(), + product.getGoodsDescription(), + product.getQuantity1Pair(), + product.getBoxNo(), + product.getQuantityOfPair() + ); + } + + /** + * 将Po转换为Vo + * @param singleProduct po + * @return vo + */ + public static KittingBomVo ofSingleProduct(TAppSingleProduct singleProduct) { + return new KittingBomVo( + singleProduct.getSingleTemplateId(), + 2, + singleProduct.getModel(), + singleProduct.getProductId(), + singleProduct.getGoodsId(), + singleProduct.getGoodsDescription(), + singleProduct.getQuantity1Pair(), + singleProduct.getBoxNo(), + singleProduct.getQuantityOfPair() + ); + } +} diff --git a/src/main/java/com/wms_main/model/vo/wms/MenuVo.java b/src/main/java/com/wms_main/model/vo/wms/MenuVo.java new file mode 100644 index 0000000..84c553e --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/MenuVo.java @@ -0,0 +1,42 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * 菜单Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class MenuVo { + /** + * 菜单Id + */ + @JsonProperty("id") + private String id; + /** + * 菜单名称 + */ + @JsonProperty("labelName") + private String labelName; + /** + * 图标值 + */ + @JsonProperty("iconValue") + private String iconValue; + /** + * 地址 + */ + @JsonProperty("path") + private String path; + /** + * 子菜单 + */ + @JsonProperty("children") + private List children; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/PageVo.java b/src/main/java/com/wms_main/model/vo/wms/PageVo.java new file mode 100644 index 0000000..a4a3c8c --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/PageVo.java @@ -0,0 +1,54 @@ +package com.wms_main.model.vo.wms; + +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.Data; + +import java.util.Collections; +import java.util.List; +import java.util.function.Function; + +/** + * 分页结果 + * @param vo泛型 + */ +@Data +public class PageVo { + /** + * 总数 + */ + @JsonProperty("total") + private Long total; + /** + * 页数 + */ + @JsonProperty("pages") + private Long pages; + /** + * 结果集 + */ + @JsonProperty("lists") + private List lists; + + /** + * 将数据库集合转换为分页结果 + * @param page 数据库查询结果 + * @param converter 转换方法 + * @return 转换后的分页结果 + * @param 数据库结果集 + * @param 前端显示结果集 + */ + public static PageVo of(Page page, Function converter) { + PageVo pageVo = new PageVo<>(); + // 设置总数 + pageVo.setTotal(page.getTotal()); + // 设置总页数 + pageVo.setPages(page.getPages()); + if (page.getRecords().isEmpty()) { + pageVo.setLists(Collections.emptyList()); + return pageVo; + } + pageVo.setLists(page.getRecords().stream().map(converter).toList()); + return pageVo; + } +} diff --git a/src/main/java/com/wms_main/model/vo/wms/StandVo.java b/src/main/java/com/wms_main/model/vo/wms/StandVo.java new file mode 100644 index 0000000..08e3875 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/StandVo.java @@ -0,0 +1,25 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 站台Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class StandVo { + /** + * 站台id + */ + @JsonProperty("standId") + private String standId; + /** + * 站台类型 + */ + @JsonProperty("standType") + private Integer standType; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/StockVo.java b/src/main/java/com/wms_main/model/vo/wms/StockVo.java new file mode 100644 index 0000000..653ab95 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/StockVo.java @@ -0,0 +1,133 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonFormat; +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TAppStock; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.springframework.format.annotation.DateTimeFormat; + +import java.time.LocalDate; +import java.time.LocalDateTime; + +/** + * 库存Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class StockVo { + /** + * 库存ID + */ + @JsonProperty("stockId") + private String stockId; + /** + * 载具号 + */ + @JsonProperty("vehicleId") + private String vehicleId; + /** + * 库位 + */ + @JsonProperty("locationId") + private String locationId; + /** + * 库存状态 + */ + @JsonProperty("stockStatus") + private Integer stockStatus; + /** + * 料号 + */ + @JsonProperty("goodsId") + private String goodsId; + /** + * 物料描述 + */ + @JsonProperty("goodsDesc") + private String goodsDesc; + /** + * 物料状态 + */ + @JsonProperty("goodsStatus") + private Integer goodsStatus; + /** + * 入库总数 + */ + @JsonProperty("totalNum") + private Integer totalNum; + /** + * 实际剩余数量 + */ + @JsonProperty("realNum") + private Integer realNum; + /** + * 剩余数量 + */ + @JsonProperty("remainNum") + private Integer remainNum; + /** + * 有效期 + */ + @JsonProperty("expireDate") + @DateTimeFormat(pattern = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd") + private LocalDate expireDate; + /** + * sled + */ + @JsonProperty("sled") + private Integer sled; + /** + * 初次入库时间 + */ + @JsonProperty("firstInTime") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime firstInTime; + /** + * 初次入库用户 + */ + @JsonProperty("firstInUser") + private String firstInUser; + /** + * 上次更新时间 + */ + @JsonProperty("lastUpdateTime") + @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private LocalDateTime lastUpdateTime; + /** + * 上次更新用户 + */ + @JsonProperty("lastUpdateUser") + private String lastUpdateUser; + + /** + * 库存数据 Po->Vo + * @param stockPo 库存Po + * @return 库存Vo + */ + public static StockVo ofPo(TAppStock stockPo) { + return new StockVo( + stockPo.getStockId(), + stockPo.getVehicleId(), + stockPo.getLocationId(), + stockPo.getStockStatus(), + stockPo.getGoodsId(), + stockPo.getGoodsDesc(), + stockPo.getGoodsStatus(), + stockPo.getTotalNum(), + stockPo.getRealNum(), + stockPo.getRemainNum(), + stockPo.getExpireDate(), + stockPo.getSled(), + stockPo.getFirstInTime(), + stockPo.getFirstInUser(), + stockPo.getLastUpdateTime(), + stockPo.getLastUpdateUser() + ); + } +} diff --git a/src/main/java/com/wms_main/model/vo/wms/TaskConfirmVo.java b/src/main/java/com/wms_main/model/vo/wms/TaskConfirmVo.java new file mode 100644 index 0000000..d1a84c4 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/TaskConfirmVo.java @@ -0,0 +1,27 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.bo.wms.TaskConfirmEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 任务确认Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class TaskConfirmVo { + /** + * 任务确认信息Vo + */ + @JsonProperty("taskConfirm") + private TaskConfirmEntity taskConfirmVo; + /** + * 库存确认信息Vo + */ + @JsonProperty("stockConfirm") + private StockConfirmEntity stockConfirmVo; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/UserLoginVo.java b/src/main/java/com/wms_main/model/vo/wms/UserLoginVo.java new file mode 100644 index 0000000..835b195 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/UserLoginVo.java @@ -0,0 +1,32 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.List; + +/** + * 用户登录信息Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class UserLoginVo { + /** + * 用户 + */ + @JsonProperty("user") + private UserVo user; + /** + * 菜单列表 + */ + @JsonProperty("menuList") + private List menuList; + /** + * 站台 + */ + @JsonProperty("stand") + private StandVo stand; +} diff --git a/src/main/java/com/wms_main/model/vo/wms/UserVo.java b/src/main/java/com/wms_main/model/vo/wms/UserVo.java new file mode 100644 index 0000000..185bcf3 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/UserVo.java @@ -0,0 +1,44 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.po.TSysUser; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 用户Vo + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class UserVo { + /** + * 登录账户 + */ + @JsonProperty("loginAccount") + private String loginAccount; + /** + * 用户名 + */ + @JsonProperty("userName") + private String userName; + /** + * 角色Id + */ + @JsonProperty("roleId") + private String roleId; + + /** + * 从po转化为vo + * @param userPo po + * @return vo + */ + public static UserVo ofPo(TSysUser userPo) { + UserVo userVo = new UserVo(); + userVo.setLoginAccount(userPo.getLoginAccount()); + userVo.setUserName(userPo.getUserName()); + userVo.setRoleId(userPo.getRoleId()); + return userVo; + } +} diff --git a/src/main/java/com/wms_main/model/vo/wms/WorkConfirmVo.java b/src/main/java/com/wms_main/model/vo/wms/WorkConfirmVo.java new file mode 100644 index 0000000..ff23da9 --- /dev/null +++ b/src/main/java/com/wms_main/model/vo/wms/WorkConfirmVo.java @@ -0,0 +1,27 @@ +package com.wms_main.model.vo.wms; + +import com.fasterxml.jackson.annotation.JsonProperty; +import com.wms_main.model.bo.wms.OrderConfirmEntity; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * 工作确认信息Vo类 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class WorkConfirmVo { + /** + * 订单确认信息Vo + */ + @JsonProperty("orderConfirm") + private OrderConfirmEntity orderConfirmVo; + /** + * 库存确认信息Vo + */ + @JsonProperty("stockConfirm") + private StockConfirmEntity stockConfirmVo; +} diff --git a/src/main/java/com/wms_main/quartz/JobStarter.java b/src/main/java/com/wms_main/quartz/JobStarter.java new file mode 100644 index 0000000..4b44111 --- /dev/null +++ b/src/main/java/com/wms_main/quartz/JobStarter.java @@ -0,0 +1,17 @@ +package com.wms_main.quartz; + +import com.wms_main.service.quartz_job.IJobService; +import lombok.RequiredArgsConstructor; +import org.springframework.boot.CommandLineRunner; +import org.springframework.stereotype.Component; + +@Component +@RequiredArgsConstructor +public class JobStarter implements CommandLineRunner { + private final IJobService jobService; + @Override + public void run(String... args) { + // 启动定时任务 + jobService.initAllJobs(); + } +} diff --git a/src/main/java/com/wms_main/quartz/JobUtils.java b/src/main/java/com/wms_main/quartz/JobUtils.java new file mode 100644 index 0000000..8bed1a7 --- /dev/null +++ b/src/main/java/com/wms_main/quartz/JobUtils.java @@ -0,0 +1,141 @@ +package com.wms_main.quartz; + +import com.wms_main.constant.enums.jobs.JobTimerTypeEnums; +import com.wms_main.quartz.config.JobBean; +import lombok.RequiredArgsConstructor; +import org.quartz.*; + +import java.util.Objects; + +/** + * 定时任务工具类 + */ +@RequiredArgsConstructor +public class JobUtils { + + /** + * 创建任务 + * @param scheduler 调度器 + * @param jobBean 任务信息 + */ + public static void createJob(Scheduler scheduler, JobBean jobBean) { + try { + // 生成任务 + JobDetail jobDetail = JobBuilder.newJob(jobBean.getJobClass()) + .storeDurably() + .withIdentity(jobBean.getJobName()) + .build(); + // 生成触发器 + TriggerBuilder triggerBuilder = TriggerBuilder.newTrigger() + .forJob(jobDetail) + .withIdentity(jobBean.getJobName() + "_trigger"); + if (Objects.equals(jobBean.getTimerType(), JobTimerTypeEnums.CRON.getType())) { + // cron + triggerBuilder.withSchedule(CronScheduleBuilder.cronSchedule(jobBean.getCronExpression())); + } else { + // 简单定时器 + if (jobBean.getTimer() == null || jobBean.getTimer() < 100) { + triggerBuilder.withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInMilliseconds(100).repeatForever()); + } else { + triggerBuilder.withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInMilliseconds(jobBean.getTimer()).repeatForever()); + } + } + Trigger trigger = triggerBuilder.build(); + scheduler.scheduleJob(jobDetail, trigger); + } catch (SchedulerException e) { + throw new RuntimeException(e); + } + } + + /** + * 暂停定时任务 + * @param scheduler 调度器 + * @param jobName 任务名 + */ + public static void pauseJob(Scheduler scheduler, String jobName) { + try { + scheduler.pauseJob(JobKey.jobKey(jobName)); + } catch (SchedulerException e) { + throw new RuntimeException(e); + } + } + + /** + * 恢复定时任务 + * @param scheduler 调度器 + * @param jobName 任务名 + */ + public static void resumeJob(Scheduler scheduler, String jobName) { + try { + scheduler.resumeJob(JobKey.jobKey(jobName)); + } catch (SchedulerException e) { + throw new RuntimeException(e); + } + } + + /** + * 删除定时任务 + * @param scheduler 调度器 + * @param jobName 任务名 + */ + public static void deleteJob(Scheduler scheduler, String jobName) { + try { + scheduler.deleteJob(JobKey.jobKey(jobName)); + } catch (SchedulerException e) { + throw new RuntimeException(e); + } + } + + /** + * 立即执行一次任务 + * @param scheduler 调度器 + * @param jobName 任务名 + */ + public static void runJobOnce(Scheduler scheduler, String jobName) { + try { + scheduler.triggerJob(JobKey.jobKey(jobName)); + } catch (SchedulerException e) { + throw new RuntimeException(e); + } + } + + /** + * 更新任务信息 + * @param scheduler 调度器 + * @param jobBean 任务信息 + */ + public static void modifyJob(Scheduler scheduler, JobBean jobBean) { + try { + // 获取触发器唯一标识 + TriggerKey triggerKey = TriggerKey.triggerKey(jobBean.getJobName() + "_trigger"); + if (Objects.equals(jobBean.getTimerType(), JobTimerTypeEnums.CRON.getType())) {// cron + // 获取触发器唯一对象 + CronTrigger oldTrigger = (CronTrigger) scheduler.getTrigger(triggerKey); + // 使用新cron表达式构建新的触发器 + CronTrigger newTrigger = oldTrigger.getTriggerBuilder() + .withSchedule(CronScheduleBuilder.cronSchedule(jobBean.getCronExpression())) + .build(); + // 调度器更新最新的触发器 + scheduler.rescheduleJob(triggerKey, newTrigger); + } else { + // 获取触发器唯一对象 + SimpleTrigger oldTrigger = (SimpleTrigger) scheduler.getTrigger(triggerKey); + // 使用新cron表达式构建新的触发器 + SimpleTrigger newTrigger; + if (jobBean.getTimer() == null || jobBean.getTimer() < 100) { + newTrigger = oldTrigger.getTriggerBuilder() + .withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInMilliseconds(100).repeatForever()) + .build(); + } else { + newTrigger = oldTrigger.getTriggerBuilder() + .withSchedule(SimpleScheduleBuilder.simpleSchedule().withIntervalInMilliseconds(jobBean.getTimer()).repeatForever()) + .build(); + } + // 调度器更新最新的触发器 + scheduler.rescheduleJob(triggerKey, newTrigger); + } + } catch (SchedulerException e) { + throw new RuntimeException(e); + } + } +} diff --git a/src/main/java/com/wms_main/quartz/config/JobBean.java b/src/main/java/com/wms_main/quartz/config/JobBean.java new file mode 100644 index 0000000..f03b34d --- /dev/null +++ b/src/main/java/com/wms_main/quartz/config/JobBean.java @@ -0,0 +1,46 @@ +package com.wms_main.quartz.config; + +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; +import org.quartz.Job; + +import javax.validation.constraints.Min; + +/** + * 定时任务配置类 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class JobBean { + /** + * 任务名 + */ + private String jobName; + /** + * 任务类class + */ + private Class jobClass; + /** + * cron表达式 + */ + private String cronExpression; + /** + * 普通定时器---单位:毫秒。 + */ + @Min(value = 100, message = "定时器任务间隔不能小于100ms") + private Integer timer; + /** + * timer类型 + * 1: 普通定时器 + * 2:cron + */ + private Integer timerType; + /** + * 任务状态 + * 1:启用 + * 0:未启用 + */ + private Integer jobStatus; +} diff --git a/src/main/java/com/wms_main/repository/http/HttpClient.java b/src/main/java/com/wms_main/repository/http/HttpClient.java new file mode 100644 index 0000000..7bfe2e3 --- /dev/null +++ b/src/main/java/com/wms_main/repository/http/HttpClient.java @@ -0,0 +1,202 @@ +package com.wms_main.repository.http; + +import com.wms_main.repository.http.entity.HttpRequest; +import com.wms_main.repository.http.entity.HttpResponse; +import com.wms_main.repository.utils.StringUtils; +import lombok.extern.slf4j.Slf4j; +import org.apache.http.client.config.RequestConfig; +import org.apache.http.client.methods.CloseableHttpResponse; +import org.apache.http.client.methods.HttpDelete; +import org.apache.http.client.methods.HttpGet; +import org.apache.http.client.methods.HttpPost; +import org.apache.http.entity.StringEntity; +import org.apache.http.impl.client.CloseableHttpClient; +import org.apache.http.impl.client.HttpClientBuilder; +import org.springframework.stereotype.Component; +import org.springframework.util.StopWatch; + +import java.io.BufferedReader; +import java.io.InputStreamReader; +import java.time.LocalDateTime; + +/** + * api 客户端 + */ +@Component +@Slf4j +public class HttpClient { + + /** + * 发送一个 Get 请求 + * @param request 请求数据 + * @return 响应数据 + */ + public HttpResponse httpGet(HttpRequest request) { + HttpResponse response = new HttpResponse(); + String url = request.getUrl(); + if(StringUtils.isEmpty(url)) { + // 请求地址没传 + response.setSuccess(false); + response.setResponseCode(999); + response.setException(new Exception("请求地址为空")); + return response; + } + if(StringUtils.isNotEmpty(request.getData())) { + url += request.getData(); + } + response.setRequestUrl(url); + response.setRequestMessage(request.getData()); + try { + CloseableHttpClient httpClient = HttpClientBuilder.create().build(); + HttpGet getRequest = new HttpGet(url + request.getData()); + getRequest.setHeader("Content-Type", request.getContentType()); + getRequest.setHeader("Authorization", request.getToken()); + RequestConfig requestConfig = RequestConfig.custom() + .setConnectTimeout(request.getTimeout()) + .setConnectionRequestTimeout(request.getTimeout()) + .setSocketTimeout(request.getTimeout()).build(); + getRequest.setConfig(requestConfig); + StopWatch watch = new StopWatch(); + response.setRequestTime(LocalDateTime.now()); + watch.start(); + CloseableHttpResponse getResponse = httpClient.execute(getRequest); + watch.stop(); + response.setResponseTime(LocalDateTime.now()); + response.setUseTime(watch.getTotalTimeMillis()); + response.setResponseCode(getResponse.getStatusLine().getStatusCode()); + BufferedReader reader = new BufferedReader(new InputStreamReader(getResponse.getEntity().getContent())); + String line; + StringBuilder result = new StringBuilder(); + while ((line = reader.readLine()) != null) { + result.append(line); + } + reader.close(); + httpClient.close(); + response.setSuccess(true); + response.setResponseMessage(result.toString()); + return response; + } catch (Exception e) { + response.setSuccess(false); + response.setResponseCode(999); + response.setException(e); + return response; + } + } + + + /** + * 发送一个 Post 请求 + * @param request 请求数据 + * @return 响应数据 + */ + public HttpResponse httpPost(HttpRequest request) { + log.info("请求信息{}", StringUtils.objectToString(request)); + HttpResponse response = new HttpResponse(); + String url = request.getUrl(); + if(StringUtils.isEmpty(url)) { + // 请求地址没传 + response.setSuccess(false); + response.setResponseCode(999); + response.setException(new Exception("请求地址为空")); + return response; + } + if(StringUtils.isEmpty(request.getData())) { + request.setData("{}"); + } + response.setRequestUrl(url); + response.setRequestMessage(request.getData()); + try { + CloseableHttpClient httpClient = HttpClientBuilder.create().build(); + HttpPost postRequest = new HttpPost(url); + postRequest.setHeader("Content-Type", request.getContentType()); + postRequest.setHeader("Authorization", request.getToken()); + postRequest.setEntity(new StringEntity(request.getData())); + RequestConfig requestConfig = RequestConfig.custom() + .setConnectTimeout(request.getTimeout()) + .setConnectionRequestTimeout(request.getTimeout()) + .setSocketTimeout(request.getTimeout()).build(); + postRequest.setConfig(requestConfig); + StopWatch watch = new StopWatch(); + response.setRequestTime(LocalDateTime.now()); + watch.start(); + CloseableHttpResponse postResponse = httpClient.execute(postRequest); + watch.stop(); + response.setResponseTime(LocalDateTime.now()); + response.setUseTime(watch.getTotalTimeMillis()); + response.setResponseCode(postResponse.getStatusLine().getStatusCode()); + BufferedReader reader = new BufferedReader(new InputStreamReader(postResponse.getEntity().getContent())); + String line; + StringBuilder result = new StringBuilder(); + while ((line = reader.readLine()) != null) { + result.append(line); + } + reader.close(); + httpClient.close(); + response.setSuccess(true); + response.setResponseMessage(result.toString()); + return response; + } catch (Exception e) { + response.setSuccess(false); + response.setResponseCode(999); + response.setException(e); + return response; + } + } + + /** + * 发送一个 delete 请求 + * @param request 请求数据 + * @return 响应数据 + */ + public HttpResponse httpDelete(HttpRequest request) { + HttpResponse response = new HttpResponse(); + String url = request.getUrl(); + if(StringUtils.isEmpty(url)) { + // 请求地址没传 + response.setSuccess(false); + response.setResponseCode(999); + response.setException(new Exception("请求地址为空")); + return response; + } + if(!StringUtils.isEmpty(request.getData())) { + url += request.getData(); + } + response.setRequestUrl(url); + response.setRequestMessage(request.getData()); + try { + CloseableHttpClient httpClient = HttpClientBuilder.create().build(); + HttpDelete deleteRequest = new HttpDelete(url + request.getData()); + deleteRequest.setHeader("Content-Type", request.getContentType()); + deleteRequest.setHeader("Authorization", request.getToken()); + RequestConfig requestConfig = RequestConfig.custom() + .setConnectTimeout(request.getTimeout()) + .setConnectionRequestTimeout(request.getTimeout()) + .setSocketTimeout(request.getTimeout()).build(); + deleteRequest.setConfig(requestConfig); + StopWatch watch = new StopWatch(); + response.setRequestTime(LocalDateTime.now()); + watch.start(); + CloseableHttpResponse getResponse = httpClient.execute(deleteRequest); + watch.stop(); + response.setResponseTime(LocalDateTime.now()); + response.setUseTime(watch.getTotalTimeMillis()); + response.setResponseCode(getResponse.getStatusLine().getStatusCode()); + BufferedReader reader = new BufferedReader(new InputStreamReader(getResponse.getEntity().getContent())); + String line; + StringBuilder result = new StringBuilder(); + while ((line = reader.readLine()) != null) { + result.append(line); + } + reader.close(); + httpClient.close(); + response.setSuccess(true); + response.setResponseMessage(result.toString()); + return response; + } catch (Exception e) { + response.setSuccess(false); + response.setResponseCode(999); + response.setException(e); + return response; + } + } +} diff --git a/src/main/java/com/wms_main/repository/http/entity/HttpRequest.java b/src/main/java/com/wms_main/repository/http/entity/HttpRequest.java new file mode 100644 index 0000000..973f80b --- /dev/null +++ b/src/main/java/com/wms_main/repository/http/entity/HttpRequest.java @@ -0,0 +1,71 @@ +package com.wms_main.repository.http.entity; + +import com.wms_main.repository.http.enums.HttpMethodEnum; +import com.wms_main.repository.utils.StringUtils; +import lombok.AllArgsConstructor; +import lombok.Data; +import lombok.NoArgsConstructor; + +/** + * WCS HTTP 请求类 + */ +@Data +@AllArgsConstructor +@NoArgsConstructor +public class HttpRequest { + /** + * url + */ + private String url; + /** + * 超时时长 + */ + private Integer timeout = 5000; + /** + * 请求方式 + */ + private HttpMethodEnum method; + /** + * 请求头 + */ + private String contentType = "application/json"; + /** + * 数据 + */ + private String data; + /** + * token + */ + private String token; + + /** + * 构建一个POST请求 + * @param url 接口地址 + * @param data 数据 + * @param timeout 超时时长 + * @param contentType 请求头 + * @param token token + * @return post请求体 + * @param 数据类型 + */ + public static HttpRequest postInstanceOf(String url, T data, Integer timeout, String contentType, String token) { + if (timeout == null || timeout <= 1000) { + timeout = 5000; + } + if (StringUtils.isEmpty(contentType)) { + contentType = "application/json"; + } + return new HttpRequest(url.trim(), timeout, HttpMethodEnum.POST, contentType, StringUtils.objectToString(data), token); + } + + /** + * 构建一个POST请求 + * @param url 接口地址 + * @param data 数据 + * @return post请求体 + * @param 数据类型 + */ + public static HttpRequest postInstanceOf(String url, T data) { + return postInstanceOf(url.trim(), data, 5000, "application/json", ""); + } +} diff --git a/src/main/java/com/wms_main/repository/http/entity/HttpResponse.java b/src/main/java/com/wms_main/repository/http/entity/HttpResponse.java new file mode 100644 index 0000000..186d4dd --- /dev/null +++ b/src/main/java/com/wms_main/repository/http/entity/HttpResponse.java @@ -0,0 +1,59 @@ +package com.wms_main.repository.http.entity; + +import com.wms_main.repository.utils.StringUtils; +import lombok.Data; + +import java.time.LocalDateTime; + +/** + * Http 请求的响应类 + */ +@Data +public class HttpResponse { + /** + * 请求是否成功 + */ + private boolean success = false; + /** + * 响应码 + */ + private int responseCode; + /** + * 请求信息 + */ + private String requestMessage; + /** + * 响应信息 + */ + private String responseMessage; + /** + * 请求时间 + */ + private LocalDateTime requestTime; + /** + * 响应时间 + */ + private LocalDateTime responseTime; + /** + * 请求地址 + */ + private String requestUrl; + /** + * 请求耗时 + */ + private long useTime; + /** + * 异常 + */ + private Exception exception; + + /** + * 获取响应数据 + * @param clazz 转化类型 + * @return 转化结果 + * @param 泛型 + */ + public T getData(Class clazz) { + return StringUtils.stringToObject(this.getResponseMessage(), clazz); + } +} diff --git a/src/main/java/com/wms_main/repository/http/enums/HttpMethodEnum.java b/src/main/java/com/wms_main/repository/http/enums/HttpMethodEnum.java new file mode 100644 index 0000000..158c8e7 --- /dev/null +++ b/src/main/java/com/wms_main/repository/http/enums/HttpMethodEnum.java @@ -0,0 +1,21 @@ +package com.wms_main.repository.http.enums; + +import lombok.Getter; + +/** + * http请求方式 + */ +@Getter +public enum HttpMethodEnum { + + GET("GET"), + POST("POST"), + PUT("PUT"), + DELETE("DELETE"); + + private String method; + + HttpMethodEnum(String method) { + this.method = method; + } +} diff --git a/src/main/java/com/wms_main/repository/pdf/ReadMe.md b/src/main/java/com/wms_main/repository/pdf/ReadMe.md new file mode 100644 index 0000000..e69de29 diff --git a/src/main/java/com/wms_main/repository/tcp/TcpClient.java b/src/main/java/com/wms_main/repository/tcp/TcpClient.java new file mode 100644 index 0000000..d5dd924 --- /dev/null +++ b/src/main/java/com/wms_main/repository/tcp/TcpClient.java @@ -0,0 +1,227 @@ +package com.wms_main.repository.tcp; + +import com.wms_main.repository.tcp.constant.SocketStatusEnum; +import com.wms_main.repository.tcp.model.po.SocketServerData; +import lombok.Setter; +import org.jetbrains.annotations.NotNull; + +import java.io.*; +import java.net.InetAddress; +import java.net.Socket; +import java.nio.charset.StandardCharsets; +import java.time.LocalDateTime; +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; +import java.util.Map; +import java.util.concurrent.Executors; +import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.TimeUnit; + +public class TcpClient { + + // 基础的服务端的信息 + private List socketServerDataList; + + // 事件回调 + @Setter + private TcpEvent tcpEvent; + + // 心跳包数据 + @Setter + private byte[] keepAliveBytes = "".getBytes(StandardCharsets.US_ASCII); + + protected Map lastReceiveTime; + + /** + * 设置基础的服务端信息 + * + * @param id 服务端ID + * @param ip 服务端ip + * @param port 服务端端口 + * @param name 服务端名称 + */ + public void setBaseServerInfo(Integer id, String ip, Integer port, String name) { + if(socketServerDataList == null) { + socketServerDataList = new ArrayList<>(); + } + SocketServerData socketServerData = new SocketServerData(); + socketServerData.setId(id); + socketServerData.setIp(ip); + socketServerData.setPort(port); + socketServerData.setName(name); + socketServerData.setConnectStatus(SocketStatusEnum.WAIT_CONNECT); + socketServerDataList.add(socketServerData); + } + + /** + * 连接服务端 + */ + public void connect() { + if(socketServerDataList == null || socketServerDataList.isEmpty()) { + return; + } + for (SocketServerData socketServerData : socketServerDataList) { + Thread thread = new Thread(()->{ + if(socketServerData.getConnectStatus() == SocketStatusEnum.CONNECTING + || socketServerData.getConnectStatus() == SocketStatusEnum.CONNECTED) { + return; + } + try { + socketServerData.setConnectStatus(SocketStatusEnum.CONNECTING); + socketServerData.setSocket(new Socket(socketServerData.getIp(), socketServerData.getPort())); + socketServerData.setConnectStatus(SocketStatusEnum.CONNECTED); + if (tcpEvent != null) { + tcpEvent.connected(socketServerData); + } + while (true) { + InputStream inputStream = socketServerData.getSocket().getInputStream();// 接收消息 + byte[] receiveBytes = new byte[128]; + int readCount = inputStream.read(receiveBytes); + if (tcpEvent != null) { + if(lastReceiveTime == null) { + lastReceiveTime = new java.util.HashMap<>(); + } + lastReceiveTime.put(socketServerData.getId(), LocalDateTime.now()); + tcpEvent.receiveData(socketServerData, receiveBytes); + } + if(readCount == 0 || Arrays.equals(receiveBytes, new byte[128])) { + // 断开连接 + try { + socketServerData.getSocket().close(); + } catch (IOException ignored) { + } + socketServerData.setSocket(null); + if (tcpEvent != null) { + tcpEvent.disConnected(socketServerData); + } + break; + } + } + socketServerData.setSocket(null); + socketServerData.setConnectStatus(SocketStatusEnum.DISCONNECTED); + if (tcpEvent != null) { + tcpEvent.disConnected(socketServerData); + } + } catch (IOException e) { + if (socketServerData.getSocket() != null) { + try { + socketServerData.getSocket().close(); // 连接失败时候释放Socket资源 + } catch (IOException ignored) { + } + socketServerData.setSocket(null); + } + socketServerData.setConnectStatus(SocketStatusEnum.DISCONNECTED); + if (tcpEvent != null) { + tcpEvent.connectFailed(socketServerData, e); // 连接失败 + } + } + }); + thread.start(); + } + } + + /** + * 定时器监控 Socket 是否断开 + */ + public void keepAlive() { + new Thread(() -> { + while (socketServerDataList != null && !socketServerDataList.isEmpty()) { + try { + TimeUnit.SECONDS.sleep(1); + for (SocketServerData socketServerData : socketServerDataList) { + if (socketServerData.getConnectStatus() == SocketStatusEnum.CONNECTED && socketServerData.getSocket() != null) { + /* 检测连接中的Socket是否断开,若断开则设置状态为连接断开并且释放Socket资源 */ + boolean isConnected = isConnected(socketServerData); + if (isConnected) { + continue; + } + socketServerData.setConnectStatus(SocketStatusEnum.DISCONNECTED); + try { + socketServerData.getSocket().close(); + } catch (IOException ignored) { + } + socketServerData.setSocket(null); + if (tcpEvent != null) { + tcpEvent.disConnected(socketServerData); + } + break; + } + } + connect(); // 重新调用连接方法 + } catch (Exception ignored) {} + } + }).start(); + } + + /** + * 校验是否断开连接 + * @param socketServerData socket + * @return 是否断开连接 + */ + public boolean isConnected(@NotNull SocketServerData socketServerData) { + boolean canPing = ping(socketServerData.getIp()); + if(!canPing) { + return false; + } + try { + socketServerData.getSocket().getOutputStream().write(keepAliveBytes); + return true; + } catch (IOException e) { + return false; + } + } + + + /** + * ping 一个ip 地址 + * @param ip ip + * @return ping 是否成功的结果 + */ + private boolean ping(String ip) { + try { + return InetAddress.getByName(ip).isReachable(500); + } catch (IOException e) { + return false; + } + } + + + /** + * 向一个 Socket id 发送信息 + * @param id id + * @param data 信息 + * @return 错误信息,为 null 则表示发送成功 + */ + public String sendData(Integer id, byte[] data) { + if(id == null) { + return "传入的 id 为 null"; + } + if(data == null || data.length == 0) { + return "要发送的数据为空"; + } + if(socketServerDataList == null || socketServerDataList.isEmpty()) { + return "没有Socket资源"; + } + for (SocketServerData socketServerData : socketServerDataList) { + if(socketServerData.getId().equals(id)) { + try { + if(socketServerData.getConnectStatus() != SocketStatusEnum.CONNECTED) { + return "Socket 未连接或者已经断开"; + } + if(socketServerData.getSocket() == null) { + return "Socket 连接为空"; + } + OutputStream outputStream = socketServerData.getSocket().getOutputStream(); + outputStream.write(data); + outputStream.flush(); + return null; + } catch (IOException e) { + return "发送数据失败"; + } + } + } + return "未找到对应 id 的 Socket"; + } + +} diff --git a/src/main/java/com/wms_main/repository/tcp/TcpEvent.java b/src/main/java/com/wms_main/repository/tcp/TcpEvent.java new file mode 100644 index 0000000..4442ef5 --- /dev/null +++ b/src/main/java/com/wms_main/repository/tcp/TcpEvent.java @@ -0,0 +1,45 @@ +package com.wms_main.repository.tcp; + +import com.wms_main.repository.tcp.model.po.SocketServerData; + +/** + * 观察着模式,触发事件 + */ +public interface TcpEvent { + + /** + * 连接中 + * @param socketServerData 服务端 + */ + void connecting(SocketServerData socketServerData); + + /** + * 连接成功 + * @param socketServerData 服务端 + */ + void connected(SocketServerData socketServerData); + + /** + * 连接失败 + * @param socketServerData 服务端 + * @param ex 异常 + */ + void connectFailed(SocketServerData socketServerData, Exception ex); + + + /** + * 断开连接 + * @param socketServerData 服务端 + */ + void disConnected(SocketServerData socketServerData); + + /** + * 收到信息 + * @param socketServerData 客户端 + * @param data 信息 + */ + void receiveData(SocketServerData socketServerData, byte[] data); + + + +} diff --git a/src/main/java/com/wms_main/repository/tcp/constant/SocketStatusEnum.java b/src/main/java/com/wms_main/repository/tcp/constant/SocketStatusEnum.java new file mode 100644 index 0000000..7ffba75 --- /dev/null +++ b/src/main/java/com/wms_main/repository/tcp/constant/SocketStatusEnum.java @@ -0,0 +1,20 @@ +package com.wms_main.repository.tcp.constant; + +/** + * socket 连接状态枚举 + */ +public enum SocketStatusEnum { + + // 等待连接 + WAIT_CONNECT, + + // 连接中 + CONNECTING, + + // 已连接 + CONNECTED, + + // 已断开连接 + DISCONNECTED; + +} diff --git a/src/main/java/com/wms_main/repository/tcp/model/po/SocketServerData.java b/src/main/java/com/wms_main/repository/tcp/model/po/SocketServerData.java new file mode 100644 index 0000000..37536fc --- /dev/null +++ b/src/main/java/com/wms_main/repository/tcp/model/po/SocketServerData.java @@ -0,0 +1,52 @@ +package com.wms_main.repository.tcp.model.po; + +import com.wms_main.repository.tcp.constant.SocketStatusEnum; +import lombok.Data; + +import java.net.Socket; + +/** + * 基础的 Socket 连接信息 + */ +@Data +public class SocketServerData { + + /** + * socket客户端的id号 + */ + private Integer id; + + /** + * socket客户端的ip + */ + private String ip; + + /** + * socket客户端的端口号 + */ + private Integer port; + + /** + * socket客户端的名称 + */ + private String name; + + /** + * socket客户端的连接实例 + */ + private Socket socket; + + /** + * 连接状态 + */ + private SocketStatusEnum connectStatus; + + + public String ToString(){ + return String.format("[%d]%s:%d (%s)", id, ip, port, name); + } + + + + +} diff --git a/src/main/java/com/wms_main/repository/tuple/Tuple2.java b/src/main/java/com/wms_main/repository/tuple/Tuple2.java new file mode 100644 index 0000000..3991eb6 --- /dev/null +++ b/src/main/java/com/wms_main/repository/tuple/Tuple2.java @@ -0,0 +1,19 @@ +package com.wms_main.repository.tuple; + +import lombok.Getter; + +/** + * 元组,2个元素 + */ +@Getter +public class Tuple2 { + + public T1 item1; + + public T2 item2; + + public Tuple2(T1 item1, T2 item2) { + this.item1 = item1; + this.item2 = item2; + } +} diff --git a/src/main/java/com/wms_main/repository/tuple/Tuple3.java b/src/main/java/com/wms_main/repository/tuple/Tuple3.java new file mode 100644 index 0000000..218212c --- /dev/null +++ b/src/main/java/com/wms_main/repository/tuple/Tuple3.java @@ -0,0 +1,19 @@ +package com.wms_main.repository.tuple; + +import lombok.Getter; + +/** + * 元组,3个元素 + */ +@Getter +public class Tuple3 { + public T1 item1; + public T2 item2; + public T3 item3; + + public Tuple3(T1 item1, T2 item2, T3 item3) { + this.item1 = item1; + this.item2 = item2; + this.item3 = item3; + } +} diff --git a/src/main/java/com/wms_main/repository/utils/ConvertUtils.java b/src/main/java/com/wms_main/repository/utils/ConvertUtils.java new file mode 100644 index 0000000..345f736 --- /dev/null +++ b/src/main/java/com/wms_main/repository/utils/ConvertUtils.java @@ -0,0 +1,66 @@ +package com.wms_main.repository.utils; + +/** + * 转换工具 + */ +public class ConvertUtils { + /** + * wcs堆垛机任务状态转换成wms任务状态 + * @param wcsStatus wcs堆垛机任务状态 + * @return wms任务状态 + */ + public static int convertWcsStackerTaskStatusToWmsTaskStatus(int wcsStatus) { + return switch (wcsStatus) { + case 0 -> 1; + case 1 -> 2; + case 2, 3, 4, 5 -> 3; + case 100 -> 4; + case 998 -> 98; + case 999 -> 99; + default -> -1; + }; + } + + /** + * wms任务状态转换成wcs堆垛机任务状态 + * @param wmsStatus wms任务状态 + * @return wcs堆垛机任务状态 + */ + public static int convertWmsTaskStatusToWcsStackerTaskStatus(int wmsStatus) { + return switch (wmsStatus) { + case 1 -> 0; + case 2 -> 1; + case 3 -> 2; + case 4 -> 100; + case 98 -> 998; + case 99 -> 999; + default -> -1; + }; + } + + /** + * 将Wms任务类型转化为Wcs任务类型 + * @param wmsStackerTaskType wms任务类型 + * @return wcs任务类型 + */ + public static int convertStackerTaskTypeFromWmsToWcs(int wmsStackerTaskType) { + return switch (wmsStackerTaskType) { + case 1 -> 1; + case 2 -> 2; + default -> -1; + }; + } + + /** + * 将Wcs任务类型转化为Wms任务类型 + * @param wcsStackerTaskType wcs任务类型 + * @return wms任务类型 + */ + public static int convertStackerTaskTypeFromWcsToWms(int wcsStackerTaskType) { + return switch (wcsStackerTaskType) { + case 1 -> 1; + case 2 -> 2; + default -> -1; + }; + } +} diff --git a/src/main/java/com/wms_main/repository/utils/StringUtils.java b/src/main/java/com/wms_main/repository/utils/StringUtils.java new file mode 100644 index 0000000..a8e9725 --- /dev/null +++ b/src/main/java/com/wms_main/repository/utils/StringUtils.java @@ -0,0 +1,248 @@ +package com.wms_main.repository.utils; + +import com.alibaba.fastjson2.JSON; +import jakarta.servlet.http.HttpServletRequest; +import org.springframework.util.DigestUtils; + +/** + * 字符串工具类 + */ +public class StringUtils { + + private static final String CHARS_AZ = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; + private static final String CHARS_az = "abcdefghijklmnopqrstuvwxyz"; + private static final String CHARS_09 = "0123456789"; + + /** 下划线 */ + private static final char SEPARATOR = '_'; + + /** + * 判断字符串是否为空 + * @param str 要判断的字符串 + * @return 结果 true:空 + */ + public static boolean isEmpty(String str) { + return str == null || str.isEmpty(); + } + + /** + * 判断字符串是否为非空 + * @param str 要判断的字符串 + * @return 结果 true:非空 + */ + public static boolean isNotEmpty(String str) { + return !isEmpty(str); + } + + /** + * 在左边补充字符到指定长度 + * @param str 要补充的字符串 + * @param c 补充的字符 + * @param length 长度 + * @return 结果 + */ + public static String padLeft(String str, String c, int length) { + if(isEmpty(str)) { + return c.repeat(length); + } + return c.repeat(Math.max(0, length - str.length())) + str; + } + + /** + * 在右边补充字符到指定长度 + * @param str 要补充的字符串 + * @param c 补充的字符 + * @param length 长度 + * @return 结果 + */ + public static String padRight(String str, String c, int length) { + if(isEmpty(str)) { + return c.repeat(length); + } + return str + c.repeat(Math.max(0, length - str.length())); + } + + /** + * 判断一个字符串是否为数字 + * @param str 要判断的字符串 + * @return 结果 + */ + public static boolean isNumber(String str) { + if (isEmpty(str)) return false; + return str.matches("^\\d+$"); + } + + public static boolean isDecimal(String str) { + if (isEmpty(str)) return false; + return str.matches("^\\d+\\.?\\d*$"); + } + + /** + * 加密密码所用的一种方式,理论上不可逆向 + * @param password 要加密的密码 + * @return 加密结果 + */ + public static String encryptPassword(String password) { + StringBuilder result = new StringBuilder(); + int count = 0; + String needEncryptStr = password; + while (result.length() < 255) { + count ++; + String md5 = DigestUtils.md5DigestAsHex(needEncryptStr.getBytes()).toUpperCase(); + if(count % 2 == 0 || result.length() < count * 2) { + result.append(md5); + } else { + result.insert(count * 2, md5); + } + needEncryptStr = md5; + } + return result.substring(0, 255); + } + + /** + * 驼峰转下划线命名 + * @param str 转换前的驼峰方式命名的字符串 + * @return 转换后的下划线方式命名的字符串 + * 例:userName->user_name + */ + public static String toUnderScoreCase(String str) { + if (str == null) { + return null; + } + StringBuilder sb = new StringBuilder(); + // 前置字符是否大写 + boolean preCharIsUpperCase = true; + // 当前字符是否大写 + boolean curreCharIsUpperCase = true; + // 下一个字符是否大写 + boolean nexteCharIsUpperCase = true; + for (int i = 0; i < str.length(); i++) + { + char c = str.charAt(i); + if (i > 0) { + preCharIsUpperCase = Character.isUpperCase(str.charAt(i - 1)); + } else { + preCharIsUpperCase = false; + } + curreCharIsUpperCase = Character.isUpperCase(c); + if (i < (str.length() - 1)) { + nexteCharIsUpperCase = Character.isUpperCase(str.charAt(i + 1)); + } + if (preCharIsUpperCase && curreCharIsUpperCase && !nexteCharIsUpperCase) { + sb.append(SEPARATOR); + } else if ((i != 0 && !preCharIsUpperCase) && curreCharIsUpperCase) { + sb.append(SEPARATOR); + } + sb.append(Character.toLowerCase(c)); + } + return sb.toString(); + } + + /** + * 驼峰式命名法 + * 例如:user_name->userName + */ + public static String toCamelCase(String s) { + if (s == null) { + return null; + } + if (s.indexOf(SEPARATOR) == -1) { + s = s.toLowerCase(); + return s; + } + s = s.toLowerCase(); + StringBuilder sb = new StringBuilder(s.length()); + boolean upperCase = false; + for (int i = 0; i < s.length(); i++) { + char c = s.charAt(i); + if (c == SEPARATOR) { + upperCase = true; + } else if (upperCase) { + sb.append(Character.toUpperCase(c)); + upperCase = false; + } else { + sb.append(c); + } + } + return sb.toString(); + } + + /** + * 将对象转为字符串 + * @param t 实体类 + * @param clazz 类型 + * @return 字符串 + */ + public static String objectToStringWithClassName(T t, Class clazz) { + return clazz.getSimpleName() + JSON.toJSONString(t); + } + + /** + * 将对象转为字符串 + * @param t 实体类 + * @return 字符串 + */ + public static String objectToString(T t) { + return JSON.toJSONString(t); + } + + /** + * 将字符串转为对象 + * @param s 字符串 + * @param clazz 类型 + * @return 转化后的对象 + */ + public static T stringToObject(String s, Class clazz) { + if (s.startsWith(clazz.getSimpleName())) { + return JSON.parseObject(s.substring(clazz.getSimpleName().length()), clazz); + } else { + return JSON.parseObject(s, clazz); + } + } + + /** + * 将字母转化为对应的数字 + * @param letter 字母 + * @return 转化后的数字 + */ + public static int letterToNumber(char letter) { + if ('a' <= letter && letter <= 'z') { + return letter - 'a' + 1; + } else if ('A' <= letter && letter <= 'Z') { + return letter - 'A' + 1; + } else { + return -1; + } + } + + /** + * 获取请求的ip地址 + * @param request 请求 + * @return ip地址 + */ + public static String getIpAddr(HttpServletRequest request) { + String ip = request.getHeader("x-forwarded-for"); + if (ip == null || ip.isEmpty() || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("Proxy-Client-IP"); + } + if (ip == null || ip.isEmpty() || "unknown".equalsIgnoreCase(ip)) { + ip = request.getHeader("WL-Proxy-Client-IP"); + } + if (ip == null || ip.isEmpty() || "unknown".equalsIgnoreCase(ip)) { + ip = request.getRemoteAddr(); + } + if (ip != null && ip.indexOf(",") > 0) { + String[] parts = ip.split(","); + for (String part : parts) { + if (!part.isEmpty() && !"unknown".equalsIgnoreCase(part)) { + ip = part.trim(); + break; + } + } + } + if ("0:0:0:0:0:0:0:1".equals(ip)) { + ip = "127.0.0.1"; + } + return ip; + } +} diff --git a/src/main/java/com/wms_main/repository/utils/UUIDUtils.java b/src/main/java/com/wms_main/repository/utils/UUIDUtils.java new file mode 100644 index 0000000..0ab379a --- /dev/null +++ b/src/main/java/com/wms_main/repository/utils/UUIDUtils.java @@ -0,0 +1,43 @@ +package com.wms_main.repository.utils; + +import com.wms_main.constant.AppConstant; + +/** + * 唯一识别号工具类 + */ +public class UUIDUtils { + + + private static long lastTime = 0L; + private static short lastCount = 0; + + /** + * 生成唯一识别号 + * @return 生成的唯一号码 + */ + public synchronized static String getNewUUID() { + return getNewUUID(""); + } + + /** + * 生成唯一识别号 + * @return 生成的唯一号码 + */ + public synchronized static String getNewUUID(String code) { + /* 经测试,单线程情况下生成UUID一万个约为50毫秒,不存在重复的UUID */ + while (true) { + long thisTime = System.currentTimeMillis(); + if(lastTime == thisTime) { + lastCount ++; + if(lastCount > 9999) { + lastCount = 10000; + continue; + } + } else { + lastTime = thisTime; + lastCount = 0; + } + return code + thisTime + String.format("%02d", AppConstant.APP_ID) + String.format("%04d", lastCount); + } + } +} diff --git a/src/main/java/com/wms_main/service/api/IWcsApiService.java b/src/main/java/com/wms_main/service/api/IWcsApiService.java new file mode 100644 index 0000000..5e959e2 --- /dev/null +++ b/src/main/java/com/wms_main/service/api/IWcsApiService.java @@ -0,0 +1,42 @@ +package com.wms_main.service.api; + +import com.wms_main.model.bo.wcs.WcsPickTask; +import com.wms_main.model.bo.wcs.WcsStackerTask; +import com.wms_main.model.dto.request.wcs.WcsPickTaskRequest; +import com.wms_main.model.dto.request.wcs.WcsReleaseBoxRequest; +import com.wms_main.model.dto.request.wcs.WcsStackerTaskRequest; +import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; + +/** + * wcs接口服务 + */ +public interface IWcsApiService { + /** + * 发送堆垛机任务 + * @param request 任务请求 + * @return 发送结果 + */ + WcsApiResponse sendWcsStackerTask(WcsStackerTaskRequest request); + + /** + * 发送拣选任务 + * @param request 任务请求 + * @return 发送结果 + */ + WcsApiResponse sendPickTask(WcsPickTaskRequest request); + + /** + * 请求释放载具 + * @param request 释放请求信息 + * @return 发送结果 + */ + BaseWcsApiResponse releaseBox(WcsReleaseBoxRequest request); + + /** + * 取消拣选任务 + * @param request 取消请求信息 + * @return 发送结果 + */ + WcsApiResponse cancelPickTask(WcsPickTaskRequest request); +} diff --git a/src/main/java/com/wms_main/service/api/serviceImpl/WcsApiServiceImpl.java b/src/main/java/com/wms_main/service/api/serviceImpl/WcsApiServiceImpl.java new file mode 100644 index 0000000..76bbd5f --- /dev/null +++ b/src/main/java/com/wms_main/service/api/serviceImpl/WcsApiServiceImpl.java @@ -0,0 +1,99 @@ +package com.wms_main.service.api.serviceImpl; + +import com.wms_main.app.AppCommon; +import com.wms_main.constant.enums.wms.AppConfigKeyEnums; +import com.wms_main.model.bo.wcs.WcsPickTask; +import com.wms_main.model.bo.wcs.WcsStackerTask; +import com.wms_main.model.dto.request.wcs.WcsPickTaskRequest; +import com.wms_main.model.dto.request.wcs.WcsReleaseBoxRequest; +import com.wms_main.model.dto.request.wcs.WcsStackerTaskRequest; +import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; +import com.wms_main.repository.http.HttpClient; +import com.wms_main.repository.http.entity.HttpRequest; +import com.wms_main.repository.http.entity.HttpResponse; +import com.wms_main.service.api.IWcsApiService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +/** + * Wcs接口服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class WcsApiServiceImpl implements IWcsApiService { + private final HttpClient httpClient;// http客户端 + private final AppCommon appCommon;// 应用共通 + + /** + * 发送堆垛机任务 + * @param request 任务请求 + * @return 响应结果 + */ + @Override + public WcsApiResponse sendWcsStackerTask(WcsStackerTaskRequest request) { + // 设置http请求 + HttpRequest httpRequest = HttpRequest.postInstanceOf(appCommon.getConfigByKey(AppConfigKeyEnums.WCS_STACKER_TASK_URL.getKey()), request); + HttpResponse httpResponse = httpClient.httpPost(httpRequest); + if (httpResponse != null && httpResponse.isSuccess()) { + WcsApiResponse response = new WcsApiResponse<>(); + response = httpResponse.getData(response.getClass().asSubclass(WcsApiResponse.class)); + return response; + } + return WcsApiResponse.error("请求未获得响应信息。", null); + } + + /** + * 发送拣选任务 + * @param request 任务请求 + * @return 响应结果 + */ + @Override + public WcsApiResponse sendPickTask(WcsPickTaskRequest request) { + // 设置http请求 + HttpRequest httpRequest = HttpRequest.postInstanceOf(appCommon.getConfigByKey(AppConfigKeyEnums.WCS_PICK_TASK_URL.getKey()), request); + HttpResponse httpResponse = httpClient.httpPost(httpRequest); + if (httpResponse != null && httpResponse.isSuccess()) { + WcsApiResponse response = new WcsApiResponse<>(); + response = httpResponse.getData(response.getClass().asSubclass(WcsApiResponse.class)); + return response; + } + return WcsApiResponse.error("请求未获得响应信息。", null); + } + + /** + * 发送释放载具请求 + * @param request 释放请求信息 + * @return 响应结果 + */ + @Override + public BaseWcsApiResponse releaseBox(WcsReleaseBoxRequest request) { + // 设置http请求 + HttpRequest httpRequest = HttpRequest.postInstanceOf(appCommon.getConfigByKey(AppConfigKeyEnums.WCS_RELEASE_BOX_URL.getKey()), request); + HttpResponse httpResponse = httpClient.httpPost(httpRequest); + if (httpResponse != null && httpResponse.isSuccess()) { + return httpResponse.getData(BaseWcsApiResponse.class); + } + return BaseWcsApiResponse.error("请求未获得响应信息。"); + } + + /** + * 取消拣选任务请求 + * @param request 取消请求信息 + * @return 响应结果 + */ + @Override + public WcsApiResponse cancelPickTask(WcsPickTaskRequest request) { + // 设置http请求 + HttpRequest httpRequest = HttpRequest.postInstanceOf(appCommon.getConfigByKey(AppConfigKeyEnums.WCS_CANCEL_PICK_TASK_URL.getKey()), request); + HttpResponse httpResponse = httpClient.httpPost(httpRequest); + if (httpResponse != null && httpResponse.isSuccess()) { + WcsApiResponse response = new WcsApiResponse<>(); + response = httpResponse.getData(response.getClass().asSubclass(WcsApiResponse.class)); + return response; + } + return WcsApiResponse.error("请求未获得响应信息。", null); + } +} diff --git a/src/main/java/com/wms_main/service/business/IConveyTaskService.java b/src/main/java/com/wms_main/service/business/IConveyTaskService.java new file mode 100644 index 0000000..89682e7 --- /dev/null +++ b/src/main/java/com/wms_main/service/business/IConveyTaskService.java @@ -0,0 +1,52 @@ +package com.wms_main.service.business; + +import com.wms_main.model.bo.wms.WmsPickTask; +import com.wms_main.model.po.TAppPickTask; +import com.wms_main.model.po.TAppStock; +import com.wms_main.model.vo.wms.TaskConfirmVo; +import com.wms_main.model.vo.wms.WorkConfirmVo; + +import java.util.List; +import java.util.Map; + +/** + * 输送线任务服务 + */ +public interface IConveyTaskService { + /** + * 取消拣选任务 + * @param vehicleStandMap 载具-站台map + * @param successCount 成功count + * @param failCount 失败count + * @param exceptionCount 异常count + */ + void cancelPickTasks(Map vehicleStandMap, int successCount, int failCount, int exceptionCount); + + /** + * 取消后续站台任务 + * @param vehicleId 载具 + * @param standId 当前站台 + */ + void cancelOtherStandPickTasks(String vehicleId, String standId); + + /** + * 释放站台箱子 + * @param targetPickTask 目标拣选任务 + * @return 处理结果 + */ + boolean releaseStandVehicle(TAppPickTask targetPickTask); + + /** + * 获得当前站台的工作 + * @param thisPickTask 拣选任务 + * @return 结果 + */ + WorkConfirmVo getCurrentStandWork(TAppPickTask thisPickTask); + + /** + * 获得当前站台的任务 + * @param thisPickTask 当前站台拣选任务 + * @return 结果 + */ + TaskConfirmVo getCurrentStandTask(TAppPickTask thisPickTask); +} diff --git a/src/main/java/com/wms_main/service/business/IStackerTaskService.java b/src/main/java/com/wms_main/service/business/IStackerTaskService.java new file mode 100644 index 0000000..46ff3b5 --- /dev/null +++ b/src/main/java/com/wms_main/service/business/IStackerTaskService.java @@ -0,0 +1,45 @@ +package com.wms_main.service.business; + +import com.wms_main.model.po.TAppLocation; +import com.wms_main.model.po.TAppTask; +import com.wms_main.model.po.TAppWcsTask; + +import java.util.List; + +/** + * 堆垛机任务业务服务 + */ +public interface IStackerTaskService { + /** + * 存WcsTask表 + * 更新WmsTask表 + * @param wcsInTask wcs任务 + */ + void saveWcsTaskAndUpdateWmsTask(TAppWcsTask wcsInTask); + + /** + * 申请一个库位 + * @param locationFilter 申请条件 + * @param requestVehicleId 本次申请入库的载具号 + * @return 可用库位 + */ + TAppLocation requestOneLocation(TAppLocation locationFilter, String requestVehicleId); + + /** + * 完成堆垛机入库任务 + * @param stackerInTasks 已完成的入库任务 + */ + void finishStackerInTasks(List stackerInTasks); + + /** + * 完成堆垛机入库任务---合并相同物料 + * @param stackerInTasks 已完成的入库任务 + */ + void finishStackerInTasksMergeSameGoods(List stackerInTasks); + + /** + * 完成堆垛机出库任务 + * @param stackerOutTasks 已完成的出库任务 + */ + void finishStackerOutTasks(List stackerOutTasks); +} diff --git a/src/main/java/com/wms_main/service/business/IStockDataService.java b/src/main/java/com/wms_main/service/business/IStockDataService.java new file mode 100644 index 0000000..9a338bc --- /dev/null +++ b/src/main/java/com/wms_main/service/business/IStockDataService.java @@ -0,0 +1,30 @@ +package com.wms_main.service.business; + +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.po.TAppStock; + +/** + * 库存数据服务 + */ +public interface IStockDataService { + /** + * 更新库存信息 + * @param stockConfirm 库存确认信息 + * @param standId 站台号 + * @param userName 用户名 + */ + void updateStockInfo(StockConfirmEntity stockConfirm, String standId, String userName, String reason); + + /** + * 查询库存预警值 + * @return 库存预警值 + */ + int getWarningQty(); + + /** + * 判断当前载具是否是空载具 + * @param vehicleId 载具号 + * @return 是空载具 + */ + boolean isEmptyVehicle(String vehicleId); +} diff --git a/src/main/java/com/wms_main/service/business/serviceImpl/ConveyTaskServiceImpl.java b/src/main/java/com/wms_main/service/business/serviceImpl/ConveyTaskServiceImpl.java new file mode 100644 index 0000000..1c1ddae --- /dev/null +++ b/src/main/java/com/wms_main/service/business/serviceImpl/ConveyTaskServiceImpl.java @@ -0,0 +1,439 @@ +package com.wms_main.service.business.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.app.AppCommon; +import com.wms_main.constant.AppConstant; +import com.wms_main.constant.enums.wcs.WcsApiResponseCodeEnums; +import com.wms_main.constant.enums.wms.*; +import com.wms_main.dao.*; +import com.wms_main.model.bo.wcs.WcsPickTask; +import com.wms_main.model.bo.wms.OrderConfirmEntity; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.bo.wms.TaskConfirmEntity; +import com.wms_main.model.bo.wms.WmsPickTask; +import com.wms_main.model.dto.request.wcs.WcsPickTaskRequest; +import com.wms_main.model.dto.request.wcs.WcsReleaseBoxRequest; +import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; +import com.wms_main.model.po.*; +import com.wms_main.model.vo.wms.TaskConfirmVo; +import com.wms_main.model.vo.wms.WorkConfirmVo; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.api.IWcsApiService; +import com.wms_main.service.business.IConveyTaskService; +import com.wms_main.service.business.IStockDataService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import java.time.LocalDateTime; +import java.util.*; + +/** + * 输送线任务服务 实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class ConveyTaskServiceImpl implements IConveyTaskService { + private final IWcsApiService wcsApiService;// wcs api服务 + private final ITAppPickTaskService appPickTaskService;// 拣选任务服务 + private final ITAppPickTaskBakService appPickTaskBakService;// 拣选任务备份服务 + private final ITAppTaskService appTaskService;// 堆垛机任务服务 + private final ITAppWorkService appWorkService;// 工作服务 + private final ITAppOutsService appOutsService;// 出库单服务 + private final IStockDataService stockDataService;// 库存数据服务 + private final ITAppPickPlanService appPickPlanService;// 拣选计划服务 + private final ITAppStockService appStockService;// 库存服务 + private final AppCommon appCommon; + private final ITAppVehicleService appVehicleService;// 载具服务 + + /** + * 取消拣选任务实现 + * + * @param vehicleStandMap 键为站台,值为WmsPickTask + * @param successCount 成功数量 + * @param failCount 失败数量 + * @param exceptionCount 异常数量 + */ + @Override + public void cancelPickTasks(Map vehicleStandMap, int successCount, int failCount, int exceptionCount) { + // 循环取消 + for (String key : vehicleStandMap.keySet()) { + WmsPickTask thisKeyPickTask = vehicleStandMap.get(key); + try { + WcsPickTaskRequest request = new WcsPickTaskRequest( + null, + thisKeyPickTask.getVehicleId(), + 1, + thisKeyPickTask.getPickStand(), + "" + ); + WcsApiResponse wcsResponse = wcsApiService.cancelPickTask(request); + if (wcsResponse != null && WcsApiResponseCodeEnums.SUCCESS.getCode() == wcsResponse.getCode()) { + // 将这些拣选任务添加进记录表 + List targetPickTasks = appPickTaskService.list(new LambdaQueryWrapper() + .eq(TAppPickTask::getVehicleId, thisKeyPickTask.getVehicleId()) + .eq(TAppPickTask::getPickStand, thisKeyPickTask.getPickStand()) + .ne(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.FOR_IN.getCode())); + // 设置拣选任务记录 + List pickRecords = new ArrayList<>(); + for (TAppPickTask pickTask : targetPickTasks) { + TAppPickTaskBak pickRecord = new TAppPickTaskBak( + pickTask.getPickId(), + pickTask.getPickStand(), + pickTask.getVehicleId(), + WmsPickTaskStatusEnum.CANCEL.getCode(), + pickTask.getCreateTime(), + pickTask.getSendTime(), + LocalDateTime.now(), + LocalDateTime.now() + ); + pickRecords.add(pickRecord); + } + // 添加记录 + appPickTaskBakService.saveBatch(pickRecords); + // 删除拣选任务 + appPickTaskService.removeByIds(targetPickTasks); + successCount++; + log.info("取消拣选任务成功。载具:{},站台:{}。", thisKeyPickTask.getVehicleId(), thisKeyPickTask.getPickStand()); + } else { + failCount++; + log.error("取消拣选任务失败。载具:{},站台:{}。", thisKeyPickTask.getVehicleId(), thisKeyPickTask.getPickStand()); + } + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + exceptionCount++; + log.error("取消拣选任务异常。载具:{},站台:{}。", thisKeyPickTask.getVehicleId(), thisKeyPickTask.getPickStand()); + } + } + } + + /** + * 取消当前其他站台的任务 + * + * @param vehicleId 载具号 + * @param standId 站台号 + */ + @Override + public void cancelOtherStandPickTasks(String vehicleId, String standId) { + // 取消这个箱子去其他站台的任务 + List otherStandPickTaskList = appPickTaskService.list(new LambdaQueryWrapper() + .ne(TAppPickTask::getPickStand, standId) + .eq(TAppPickTask::getVehicleId, vehicleId) + .ne(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.FOR_IN.getCode())); + Map vehicleStandMap = new HashMap<>(); + for (TAppPickTask otherStandPickTask : otherStandPickTaskList) { + String key = otherStandPickTask.getVehicleId() + "_" + otherStandPickTask.getPickStand(); + if (vehicleStandMap.containsKey(key)) { + continue; + } + vehicleStandMap.put(key, new WmsPickTask(otherStandPickTask.getPickStand(), otherStandPickTask.getVehicleId())); + } + cancelPickTasks(vehicleStandMap, 0, 0, 0); + } + + /** + * 释放站台载具 + * + * @param targetPickTask 目标拣选任务 + * @return 处理结果 + */ + @Override + public boolean releaseStandVehicle(TAppPickTask targetPickTask) { + // 判断是否是需要回库 + int router = 0;// 默认不需要回库 + if (!appPickTaskService.exists(new LambdaQueryWrapper() + .eq(TAppPickTask::getVehicleId, targetPickTask.getVehicleId()) + .ne(TAppPickTask::getPickStand, targetPickTask.getPickStand()) + .ne(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.FOR_IN.getCode()))) { + router = 1;// 需要回库 + } + // 需要回库时,需要生成回库任务 + List pickRecords = new ArrayList<>(); + if (router == 1) { + // 设置这个载具为入库中 + appVehicleService.update(new LambdaUpdateWrapper() + .set(TAppVehicle::getVehicleStatus, WmsVehicleStatusEnums.IN.getCode()) + .eq(TAppVehicle::getVehicleId, targetPickTask.getVehicleId())); + // 设置这个载具的库存为回库中 + appStockService.update(new LambdaUpdateWrapper() + .set(TAppStock::getStockStatus, WmsStockStatusEnums.BACK.getCode()) + .eq(TAppStock::getVehicleId, targetPickTask.getVehicleId())); + // 查询这个箱子入库用的拣选任务 + List forInPickTasks = appPickTaskService.list(new LambdaQueryWrapper() + .eq(TAppPickTask::getVehicleId, targetPickTask.getVehicleId()) + .eq(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.FOR_IN.getCode())); + boolean haveForIn = false;// 是否要为了入库不回库 + for (TAppPickTask forInPickTask : forInPickTasks) { + if (!Objects.equals(forInPickTask.getPickStand(), targetPickTask.getPickStand())) { + haveForIn = true; + } + // 生成记录并删除 + pickRecords.add(new TAppPickTaskBak( + targetPickTask.getPickId(), + targetPickTask.getPickStand(), + targetPickTask.getVehicleId(), + WmsPickTaskStatusEnum.FOR_IN.getCode(), + targetPickTask.getCreateTime(), + null, + null, + LocalDateTime.now() + )); + } + // 没有需要入库的拣选任务 + if (!haveForIn) { + // 判断空箱需不需要回库 + String emptyBack = "0"; + try { + emptyBack = appCommon.getConfigByKey(AppConfigKeyEnums.EMPTY_BACK.getKey()); + } catch (Exception e) { + log.error("获取空箱回库配置失败,使用默认值不回库。"); + } + // 判断这个箱子是不是空箱需要回库 + if (!stockDataService.isEmptyVehicle(targetPickTask.getVehicleId()) + || (stockDataService.isEmptyVehicle(targetPickTask.getVehicleId()) && "1".equals(emptyBack))) { + // 生成回库任务 + TAppTask task = new TAppTask( + UUIDUtils.getNewUUID("BACK_"), + WmsTaskTypeEnums.IN.getCode(), + WmsStackerTaskStatusEnums.TEMP.getCode(), + 1, + targetPickTask.getVehicleId(), + targetPickTask.getPickStand(), + null, + null, + LocalDateTime.now(), + null, + AppConstant.EMPTY_GOODS_ID, + 0, + 0, + "wms_auto", + "", + targetPickTask.getPickStand(), + "" + ); + try { + // 保存任务 + appTaskService.save(task); + } catch (Exception e) { + log.error("释放站台载具生成回库任务时失败。"); + return false; + } + } + } + } + // 更新拣选任务信息,添加拣选任务记录信息 + pickRecords.add(new TAppPickTaskBak( + targetPickTask.getPickId(), + targetPickTask.getPickStand(), + targetPickTask.getVehicleId(), + WmsPickTaskStatusEnum.LEAVE.getCode(), + targetPickTask.getCreateTime(), + targetPickTask.getSendTime(), + targetPickTask.getArriveTime(), + LocalDateTime.now() + )); + try { + appPickTaskBakService.saveBatch(pickRecords); + // 删除当前载具在当前站台的拣选任务 + appPickTaskService.remove(new LambdaQueryWrapper() + .eq(TAppPickTask::getVehicleId, targetPickTask.getVehicleId()) + .eq(TAppPickTask::getPickStand, targetPickTask.getPickStand())); + } catch (Exception e) { + log.error("保存拣选任务记录时发生异常。载具号:{},站台号:{}", targetPickTask.getVehicleId(), targetPickTask.getPickStand()); + return false; + } + try { + // 给wcs放行信号 + BaseWcsApiResponse releaseResult = wcsApiService.releaseBox(new WcsReleaseBoxRequest(targetPickTask.getVehicleId(), targetPickTask.getPickStand(), router)); + if (releaseResult == null || WcsApiResponseCodeEnums.SUCCESS.getCode() != releaseResult.getCode()) { + return false; + } + } catch (Exception e) { + log.error("向wcs传递放行信息异常。"); + return false; + } + return true; + } + + /** + * 获得对应库存的第一条工作 + * + * @param thisPickTask 站台号 + * @return 工作确认信息 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public WorkConfirmVo getCurrentStandWork(TAppPickTask thisPickTask) { + // 站台号和载具号必须输入 + if (thisPickTask == null || StringUtils.isEmpty(thisPickTask.getPickStand()) || StringUtils.isEmpty(thisPickTask.getVehicleId())) { + return null; + } + // 轮询当前站台的拣选计划 + List pickPlans = appPickPlanService.list(new LambdaQueryWrapper() + .eq(TAppPickPlan::getStandId, thisPickTask.getPickStand()) + .eq(TAppPickPlan::getVehicleId, thisPickTask.getVehicleId()) + .eq(TAppPickPlan::getPickType, 1)); + if (pickPlans == null || pickPlans.isEmpty()) { + return null; + } + WorkConfirmVo resultVo = null; + List needRemovePlans = new ArrayList<>(); + for (TAppPickPlan pickPlan : pickPlans) { + needRemovePlans.add(pickPlan); + // 计划拣选数量 + int planPickQty = pickPlan.getPlanPickQty(); + // 先查询对应的工作存不存在 + TAppWork thisWork = appWorkService.getById(pickPlan.getWorkIndex()); + // 判断这条工作还存在否 + if (thisWork == null) { + continue; + } + // 判断有没有需求 + if (thisWork.getFinishNum() >= thisWork.getNeedNum()) { + continue; + } + // 剩余需求量 + int remainNeedNum = thisWork.getNeedNum() - thisWork.getFinishNum(); + if (remainNeedNum < planPickQty) { + // 需求不足,将计划拣选数量更新成实际需求数量 + planPickQty = remainNeedNum; + } + // 查询这个箱子上库存是否足够 + List stockList = appStockService.list(new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, thisPickTask.getVehicleId()) + .eq(TAppStock::getGoodsId, thisWork.getGoodsId()) + .gt(TAppStock::getRealNum, 0).orderByAsc(TAppStock::getFirstInTime)); + if (stockList == null || stockList.isEmpty()) { + continue; + } + // 算出库存总量 + int remainSumNum = stockList.stream().mapToInt(TAppStock::getRealNum).sum(); + if (remainSumNum < planPickQty) { + // 剩余数量不足,计划拣选数量更新成实际剩余数量 + planPickQty = remainSumNum; + } + // 命中,开始设置返回数据 + OrderConfirmEntity orderConfirmVo = new OrderConfirmEntity( + thisWork.getWorkOrder(), + thisWork.getProductId(), + thisWork.getSingleProductId(), + thisWork.getGoodsId(), + thisWork.getBoxNo(), + planPickQty, + planPickQty + ); + StockConfirmEntity stockConfirmVo = new StockConfirmEntity( + pickPlan.getPlanId(), + pickPlan.getVehicleId(), + pickPlan.getGoodsId(), + remainSumNum - planPickQty, + remainSumNum - planPickQty, + 0, + "ASRS", + stockDataService.getWarningQty() + ); + resultVo = new WorkConfirmVo(orderConfirmVo, stockConfirmVo); + break; + } + // 删除不可用拣货计划 + if (!needRemovePlans.isEmpty()) { + appPickPlanService.removeBatchByIds(needRemovePlans.stream().map(TAppPickPlan::getPlanId).toList()); + } + + return resultVo; + } + + /** + * 获取当前站台拣选任务需求 + * @param thisPickTask 拣选任务 + * @return 任务vo + */ + @Override + @Transactional(rollbackFor = Exception.class) + public TaskConfirmVo getCurrentStandTask(TAppPickTask thisPickTask) { + // 站台号和载具号必须输入 + if (thisPickTask == null || StringUtils.isEmpty(thisPickTask.getPickStand()) || StringUtils.isEmpty(thisPickTask.getVehicleId())) { + return null; + } + // 轮询当前站台的拣选计划 + List pickPlans = appPickPlanService.list(new LambdaQueryWrapper() + .eq(TAppPickPlan::getStandId, thisPickTask.getPickStand()) + .eq(TAppPickPlan::getVehicleId, thisPickTask.getVehicleId()) + .eq(TAppPickPlan::getPickType, 2)); + if (pickPlans == null || pickPlans.isEmpty()) { + return null; + } + TaskConfirmVo resultVo = null; + List needRemovePlans = new ArrayList<>(); + for (TAppPickPlan pickPlan : pickPlans) { + needRemovePlans.add(pickPlan); + // 计划拣选数量 + int planPickQty = pickPlan.getPlanPickQty(); + // 先查询对应的工作存不存在 + TAppOuts thisOuts = appOutsService.getById(pickPlan.getWorkIndex()); + // 判断这条工作还存在否 + if (thisOuts == null) { + continue; + } + // 判断有没有需求 + if (thisOuts.getPickNum() >= thisOuts.getNeedNum()) { + continue; + } + // 剩余需求量 + int remainNeedNum = thisOuts.getNeedNum() - thisOuts.getPickNum(); + if (remainNeedNum < planPickQty) { + // 需求不足,将计划拣选数量更新成实际需求数量 + planPickQty = remainNeedNum; + } + // 查询这个箱子上库存是否足够 + List stockList = appStockService.list(new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, thisPickTask.getVehicleId()) + .eq(TAppStock::getGoodsId, thisOuts.getGoodsId()) + .gt(TAppStock::getRealNum, 0).orderByAsc(TAppStock::getFirstInTime)); + if (stockList == null || stockList.isEmpty()) { + continue; + } + // 算出库存总量 + int remainSumNum = stockList.stream().mapToInt(TAppStock::getRealNum).sum(); + if (remainSumNum < planPickQty) { + // 剩余数量不足,计划拣选数量更新成实际剩余数量 + planPickQty = remainSumNum; + } + // 命中,开始设置返回数据 + TaskConfirmEntity taskConfirmVo = new TaskConfirmEntity( + thisOuts.getTaskId(), + thisOuts.getOutType(), + thisOuts.getGoodsId(), + thisOuts.getNeedNum(), + remainNeedNum, + planPickQty, + planPickQty + ); + StockConfirmEntity stockConfirmVo = new StockConfirmEntity( + pickPlan.getPlanId(), + pickPlan.getVehicleId(), + pickPlan.getGoodsId(), + remainSumNum - planPickQty, + remainSumNum - planPickQty, + 0, + "ASRS", + stockDataService.getWarningQty() + ); + resultVo = new TaskConfirmVo(taskConfirmVo, stockConfirmVo); + break; + } + // 删除不可用拣货计划 + if (!needRemovePlans.isEmpty()) { + appPickPlanService.removeBatchByIds(needRemovePlans.stream().map(TAppPickPlan::getPlanId).toList()); + } + + return resultVo; + } +} diff --git a/src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java b/src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java new file mode 100644 index 0000000..1ae7365 --- /dev/null +++ b/src/main/java/com/wms_main/service/business/serviceImpl/StackerTaskServiceImpl.java @@ -0,0 +1,701 @@ +package com.wms_main.service.business.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.app.AppCommon; +import com.wms_main.constant.AppConstant; +import com.wms_main.constant.enums.wms.*; +import com.wms_main.dao.*; +import com.wms_main.model.po.*; +import com.wms_main.repository.utils.ConvertUtils; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.business.IStackerTaskService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.util.*; +import java.util.stream.Collectors; + +/** + * 服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class StackerTaskServiceImpl implements IStackerTaskService { + /** + * Wcs任务服务 + */ + private final ITAppWcsTaskService appWcsTaskService; + /** + * Wms任务服务 + */ + private final ITAppTaskService appTaskService; + /** + * 库位服务 + */ + private final ITAppLocationService appLocationService; + /** + * 载具服务 + */ + private final ITAppVehicleService appVehicleService; + /** + * 库存服务 + */ + private final ITAppStockService appStockService; + /** + * 任务记录服务 + */ + private final ITAppTaskBakService appTaskBakService; + /** + * 拣选任务服务 + */ + private final ITAppPickTaskService appPickTaskService; + /** + * 设备服务 + */ + private final ITAppEquipmentService appEquipmentService; + /** + * 业务通用 + */ + private final AppCommon appCommon; + + /** + * 存WcsTask表 + * 更新WmsTask表 + * + * @param wcsTask wcs任务 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void saveWcsTaskAndUpdateWmsTask(TAppWcsTask wcsTask) { + // 存WcsTask表 + appWcsTaskService.save(wcsTask); + // 更新WmsTask表 + appTaskService.update( + new LambdaUpdateWrapper() + .set(TAppTask::getWcsTaskId, wcsTask.getWcsTaskId()) + .set(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.EXECUTED.getCode()) + .eq(TAppTask::getVehicleId, wcsTask.getVehicleId()) + .eq(TAppTask::getTaskType, ConvertUtils.convertStackerTaskTypeFromWcsToWms(wcsTask.getWcsTaskType())) + .eq(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.WAIT.getCode()) + ); + } + + /** + * 实现 + * + * @param locationFilter 申请条件 + * @return 申请到的库位,null表示无库位可用 + */ + @Override + public TAppLocation requestOneLocation(TAppLocation locationFilter, String requestVehicleId) { + // 目标库位 + TAppLocation targetLocation = null; + // 设备号优先级序列 + List equipmentIds = new ArrayList<>(); + + // 判断是否传入设备号 + if (locationFilter != null && locationFilter.getEquipmentId() != null) { + equipmentIds.add(locationFilter.getEquipmentId()); + } else { + // 根据堆垛机任务数量,找到最空闲的那台堆垛机 + equipmentIds = findMostRelaxEquip(); + } + // 循环设备列表,找到合适的库位 + for (Integer equipmentId : equipmentIds) { + // 判断一下这个设备号是否可用 + TAppEquipment thisEquipment = appEquipmentService.getById(equipmentId); + if (thisEquipment == null) { + // 不是可用设备 + continue; + } + // 设定查询条件 + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper() + .eq(TAppLocation::getEquipmentId, equipmentId); + // 查询库位 + List locationList = appLocationService.list(queryWrapper); + List candidateLocationList = locationList.stream().filter(item -> { + boolean filterResult = item.getIsWorking() == 0 && item.getIsLock() == 0 && item.getIsOccupy() == 0; + if (locationFilter != null) { + if (locationFilter.getLRow() != null) { + filterResult = filterResult && Objects.equals(item.getLRow(), locationFilter.getLRow()); + } + if (locationFilter.getLCol() != null) { + filterResult = filterResult && Objects.equals(item.getLCol(), locationFilter.getLCol()); + } + if (locationFilter.getLLayer() != null) { + filterResult = filterResult && Objects.equals(item.getLLayer(), locationFilter.getLLayer()); + } + } + return filterResult; + }).sorted(Comparator.comparingInt(TAppLocation::getLDepth).reversed()) + .sorted(Comparator.comparingInt(location -> location.getLCol() + location.getLLayer())) + .toList(); + // 判断是否输入了subArea + if (locationFilter != null && StringUtils.isNotEmpty(locationFilter.getSubArea())) { + // 对candidateLocationList进行排序 + List firstList = candidateLocationList.stream().filter(item -> item.getSubArea().equals(locationFilter.getSubArea())).toList(); + List lastList = candidateLocationList.stream().filter(item -> !item.getSubArea().equals(locationFilter.getSubArea())).toList(); + candidateLocationList = new ArrayList<>(firstList);// 先添加符合subArea的库位 + candidateLocationList.addAll(lastList);// 再添加不符合subArea的库位 + } + // 找一个空闲的库位 + for (TAppLocation candidateLocation : candidateLocationList) { + if (candidateLocation.getIsWorking() == 1 || candidateLocation.getIsLock() == 1 || candidateLocation.getIsOccupy() == 1) { + continue; + } + if (isMaxDepthAvailable(locationList, candidateLocation)) { + try { + // 尝试锁定库位,锁定成功就返回 + if (appLocationService.update(new LambdaUpdateWrapper() + .set(TAppLocation::getIsOccupy, 1) + .set(TAppLocation::getVehicleId, requestVehicleId) + .eq(TAppLocation::getLocationId, candidateLocation.getLocationId()) + .eq(TAppLocation::getIsOccupy, 0) + )) { + // 当前库位可用 + targetLocation = candidateLocation; + break; + } + } catch (Exception e) { + log.error("锁定库位{}失败。", candidateLocation.getLocationId()); + } + } + } + if (targetLocation != null) { + // 找到了目标库位 + break; + } + } + + // 返回库位,如果返回null则表示没有可用库位 + return targetLocation; + } + + /** + * 是否是最内层可用库位 + * + * @param appLocationList 库位列表 + * @param appLocation 库位 + * @return 结果 + */ + private boolean isMaxDepthAvailable(List appLocationList, TAppLocation appLocation) { + // 验证库位列表 + if (appLocationList == null || appLocationList.isEmpty()) { + return false; + } + // 验证待查库位 + if (appLocation == null) { + return false; + } + // 查询到排列层对应的库位列表 + List diffDepthLocationList = appLocationList.stream().filter(item -> + Objects.equals(item.getLRow(), appLocation.getLRow()) && + Objects.equals(item.getLCol(), appLocation.getLCol()) && + Objects.equals(item.getLLayer(), appLocation.getLLayer()) && + !Objects.equals(item.getLDepth(), appLocation.getLDepth())).toList(); + // 结果 + boolean result = true; + for (TAppLocation diffDepthLocation : diffDepthLocationList) { + if (diffDepthLocation.getIsWorking() == 1) { + result = false; + break; + } + // 深度低的库位锁定或者占用 + if (diffDepthLocation.getLDepth() < appLocation.getLDepth()) { + if (diffDepthLocation.getIsLock() == 1 || diffDepthLocation.getIsOccupy() == 1) { + result = false; + break; + } + } + // 深度高的库位未锁定或者空闲 + if (diffDepthLocation.getLDepth() > appLocation.getLDepth()) { + if (diffDepthLocation.getIsLock() == 0 && diffDepthLocation.getIsOccupy() == 0) { + result = false; + break; + } + } + } + return result; + } + + /** + * 找到最空闲的那台设备 + */ + private List findMostRelaxEquip() { + // 构造可用库位map + Map equipCountMap = new HashMap<>(); + // 找到可以使用的空闲库位最多的那台设备 + List emptyLocationList = appLocationService.list(new LambdaQueryWrapper() + .eq(TAppLocation::getIsOccupy, WmsLocationOccupyStatusEnums.EMPTY.getCode()) + .eq(TAppLocation::getIsLock, WmsLockEnums.UNLOCK.getCode())); + if (emptyLocationList.isEmpty()) { + return Collections.emptyList(); + } + for (TAppLocation appLocation : emptyLocationList) { + if (!equipCountMap.containsKey(appLocation.getEquipmentId())) { + equipCountMap.put(appLocation.getEquipmentId(), 0); + } + } + // 查找到所有的入库任务列表---非暂存和完成状态。 + List inTasks = appTaskService.list(new LambdaQueryWrapper() + .eq(TAppTask::getTaskType, WmsTaskTypeEnums.IN.getCode()) + .notIn(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.FINISH.getCode(), WmsStackerTaskStatusEnums.TEMP.getCode())); + if (inTasks == null || inTasks.isEmpty()) { + for (TAppLocation appLocation : emptyLocationList) { + if (equipCountMap.containsKey(appLocation.getEquipmentId())) { + equipCountMap.replace(appLocation.getEquipmentId(), equipCountMap.get(appLocation.getEquipmentId()) + 1); + } + } + } else { + for (TAppTask inTask : inTasks) { + if (StringUtils.isNotEmpty(inTask.getDestination())) { + // 当前目标库位的设备号 + TAppLocation destinationEquipmentId = appCommon.getInstantLocationByLocationId(inTask.getDestination()); + if (equipCountMap.containsKey(destinationEquipmentId.getEquipmentId())) { + equipCountMap.replace(destinationEquipmentId.getEquipmentId(), equipCountMap.get(destinationEquipmentId.getEquipmentId()) + 1); + } + } + } + } + if (equipCountMap.isEmpty()) { + return Collections.emptyList(); + } + // 排序 + return equipCountMap.entrySet().stream() + .sorted(Comparator.comparingInt(Map.Entry::getValue)) + .map(Map.Entry::getKey) + .toList(); + } + + /** + * 实现 + * + * @param stackerInTasks 已完成的入库任务 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void finishStackerInTasks(List stackerInTasks) { + // 入库任务完成需要做以下几件事情: + // 1. 生成库存,如果是已有库存则更新库存状态、数量、库位这些信息。 + // 2. 添加载具信息,如果载具已经存在则更新状态、库位等信息。 + // 3. 添加入库记录。 + // 4. 不同入库时间的库存要分开 + // 根据载具号map一下 + Map> vehicleIdToTaskMap = stackerInTasks.stream() + .filter(inTask -> Objects.equals(inTask.getTaskType(), WmsTaskTypeEnums.IN.getCode()) && Objects.equals(inTask.getTaskStatus(), WmsStackerTaskStatusEnums.FINISH.getCode())) + .collect(Collectors.groupingBy(TAppTask::getVehicleId)); + for (String vehicleId : vehicleIdToTaskMap.keySet()) { + List thisVehicleInTasks = vehicleIdToTaskMap.get(vehicleId); + // 查询这个载具的信息 + TAppVehicle thisVehicle = appVehicleService.getOne(new LambdaQueryWrapper() + .eq(TAppVehicle::getVehicleId, vehicleId) + ); + // 查询这个载具的库存 + List thisVehicleStocks = appStockService.list( + new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, vehicleId)); + // 遍历任务信息 + List goodsIds = new ArrayList<>(); + // 新的库存信息 + List newStockList = new ArrayList<>(); + // 入库记录 + List newTaskBakList = new ArrayList<>(); + // 需要删除的任务id + List needDeleteTaskIds = new ArrayList<>(); + for (TAppTask thisVehicleInTask : thisVehicleInTasks) { + // 任务记录 + newTaskBakList.add(new TAppTaskBak( + thisVehicleInTask.getTaskId(), + thisVehicleInTask.getTaskType(), + thisVehicleInTask.getTaskStatus(), + thisVehicleInTask.getTaskPriority(), + thisVehicleInTask.getVehicleId(), + thisVehicleInTask.getOrigin(), + thisVehicleInTask.getDestination(), + thisVehicleInTask.getWcsTaskId(), + thisVehicleInTask.getCreateTime(), + thisVehicleInTask.getFinishTime(), + thisVehicleInTask.getGoodsId(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getStockNum(), + thisVehicleInTask.getOpUser(), + thisVehicleInTask.getRemark(), + thisVehicleInTask.getCallStand(), + thisVehicleInTask.getGoodsDesc() + )); + // 删除任务 + needDeleteTaskIds.add(thisVehicleInTask.getTaskId()); + // 判断是否需要更新库存信息 + if (!Objects.equals(thisVehicleInTask.getGoodsId(), AppConstant.EMPTY_GOODS_ID)) { + goodsIds.add(thisVehicleInTask.getGoodsId()); + TAppGoods thisGoods = appCommon.getInstantGoodsByGoodsId(thisVehicleInTask.getGoodsId()); + Integer sledDays = null;// null表示非有效期管理 + LocalDate expireDate = null;// null表示非有效期管理 + if (thisGoods != null && Objects.equals(thisGoods.getPutArea(), "ASRS") && thisGoods.getIsSled().contains("Y")) { + // 有效期管理的物料 + if (thisGoods.getSledDays() != null) { + sledDays = thisGoods.getSledDays(); + expireDate = thisVehicleInTask.getCreateTime().plusDays(sledDays).toLocalDate(); + } + } + // 新库存,增加库存信息 + newStockList.add(new TAppStock( + UUIDUtils.getNewUUID(), + vehicleId, + thisVehicleInTask.getDestination(), + WmsStockStatusEnums.OK.getCode(), + thisVehicleInTask.getGoodsId(), + WmsGoodsStatusEnums.OK.getCode(), + thisVehicleInTask.getCreateTime(), + thisVehicleInTask.getOpUser(), + LocalDateTime.now(), + thisVehicleInTask.getOpUser(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getGoodsDesc(), + expireDate, + sledDays + )); + } + } + // 当前载具是否是空载具 + boolean isEmptyVehicle = goodsIds.isEmpty() && thisVehicleStocks.isEmpty(); + if (thisVehicle == null) { + // 新建一个载具信息 + thisVehicle = new TAppVehicle( + vehicleId, + isEmptyVehicle ? 1 : 0, + WmsVehicleStatusEnums.ON.getCode(), + "", + 0, + thisVehicleInTasks.getFirst().getDestination(), + LocalDateTime.now() + ); + } else { + // 更新已有载具信息 + thisVehicle.setIsEmpty(isEmptyVehicle ? 1 : 0); + thisVehicle.setVehicleStatus(WmsVehicleStatusEnums.ON.getCode()); + thisVehicle.setLastInTime(LocalDateTime.now()); + thisVehicle.setLocationId(thisVehicleInTasks.getFirst().getDestination()); + } + // 保存载具信息 + appVehicleService.saveOrUpdate(thisVehicle); + // 将目标库位的工作状态设置为未工作 + appLocationService.update(new LambdaUpdateWrapper() + .set(TAppLocation::getIsWorking, 0) + .eq(TAppLocation::getLocationId, thisVehicle.getLocationId()) + ); + // 需要更新下当前载具下的库存其他信息 + appStockService.update(new LambdaUpdateWrapper() + .set(TAppStock::getStockStatus, WmsStockStatusEnums.OK.getCode()) + .set(TAppStock::getLocationId, thisVehicleInTasks.getFirst().getDestination()) + .eq(TAppStock::getVehicleId, vehicleId)); + // 保存库存信息 + if (!newStockList.isEmpty()) { + appStockService.saveOrUpdateBatch(newStockList); + } + // 添加任务记录 + if (!newTaskBakList.isEmpty()) { + appTaskBakService.saveBatch(newTaskBakList); + } + // 删除已经完成的入库任务 + if (!needDeleteTaskIds.isEmpty()) { + appTaskService.removeByIds(needDeleteTaskIds); + } + } + } + + /** + * 实现---这里是合并库存的部分 + * + * @param stackerInTasks 已完成的入库任务 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void finishStackerInTasksMergeSameGoods(List stackerInTasks) { + // 入库任务完成需要做以下几件事情: + // 1. 生成库存,如果是已有库存则更新库存状态、数量、库位这些信息。 + // 2. 添加载具信息,如果载具已经存在则更新状态、库位等信息。 + // 3. 添加入库记录。 + // 根据载具号map一下 + Map> vehicleIdToTaskMap = stackerInTasks.stream() + .filter(inTask -> Objects.equals(inTask.getTaskType(), WmsTaskTypeEnums.IN.getCode()) && Objects.equals(inTask.getTaskStatus(), WmsStackerTaskStatusEnums.FINISH.getCode())) + .collect(Collectors.groupingBy(TAppTask::getVehicleId)); + for (String vehicleId : vehicleIdToTaskMap.keySet()) { + List thisVehicleInTasks = vehicleIdToTaskMap.get(vehicleId); + // 查询这个载具的信息 + TAppVehicle thisVehicle = appVehicleService.getOne(new LambdaQueryWrapper() + .eq(TAppVehicle::getVehicleId, vehicleId) + ); + // 查询这个载具的库存 + List thisVehicleStocks = appStockService.list( + new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, vehicleId)); + // 遍历任务信息 + List goodsIds = new ArrayList<>(); + // 新的库存信息 + List newStockList = new ArrayList<>(); + // 待删除的库存信息 + List needDeleteStockIds = new ArrayList<>(); + // 入库记录 + List newTaskBakList = new ArrayList<>(); + // 需要删除的任务id + List needDeleteTaskIds = new ArrayList<>(); + for (TAppTask thisVehicleInTask : thisVehicleInTasks) { + // 任务记录 + newTaskBakList.add(new TAppTaskBak( + thisVehicleInTask.getTaskId(), + thisVehicleInTask.getTaskType(), + thisVehicleInTask.getTaskStatus(), + thisVehicleInTask.getTaskPriority(), + thisVehicleInTask.getVehicleId(), + thisVehicleInTask.getOrigin(), + thisVehicleInTask.getDestination(), + thisVehicleInTask.getWcsTaskId(), + thisVehicleInTask.getCreateTime(), + thisVehicleInTask.getFinishTime(), + thisVehicleInTask.getGoodsId(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getStockNum(), + thisVehicleInTask.getOpUser(), + thisVehicleInTask.getRemark(), + thisVehicleInTask.getCallStand(), + "" + )); + // 删除任务 + needDeleteTaskIds.add(thisVehicleInTask.getTaskId()); + // 判断是否需要更新库存信息 + if (Objects.equals(thisVehicleInTask.getGoodsId(), AppConstant.EMPTY_GOODS_ID)) { + // 空载具或者回库任务 + continue; + } else { + goodsIds.add(thisVehicleInTask.getGoodsId()); + } + List oldStockList = thisVehicleStocks.stream() + .filter(stock -> Objects.equals(stock.getGoodsId(), thisVehicleInTask.getGoodsId())) + .toList(); + TAppGoods thisGoods = appCommon.getInstantGoodsByGoodsId(thisVehicleInTask.getGoodsId()); + Integer sledDays = null;// -1表示非有效期管理 + LocalDate expireDate = null;// null表示非有效期管理 + if (thisGoods != null && Objects.equals(thisGoods.getPutArea(), "ASRS") && thisGoods.getIsSled().contains("Y")) { + // 有效期管理的物料 + if (thisGoods.getSledDays() != null) { + sledDays = thisGoods.getSledDays(); + expireDate = thisVehicleInTask.getCreateTime().plusDays(sledDays).toLocalDate(); + } + } + if (oldStockList.isEmpty()) { + // 新库存,增加库存信息 + newStockList.add(new TAppStock( + UUIDUtils.getNewUUID(), + vehicleId, + thisVehicleInTask.getDestination(), + WmsStockStatusEnums.OK.getCode(), + thisVehicleInTask.getGoodsId(), + WmsGoodsStatusEnums.OK.getCode(), + thisVehicleInTask.getCreateTime(), + thisVehicleInTask.getOpUser(), + LocalDateTime.now(), + thisVehicleInTask.getOpUser(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getGoodsDesc(), + expireDate, + sledDays + )); + } else { + // 更新已有库存信息 + if (oldStockList.size() > 1) { + // 需要合并库存信息 + int originSum = oldStockList.stream() + .mapToInt(TAppStock::getRealNum) + .sum(); + int originTotal = oldStockList.stream() + .mapToInt(TAppStock::getTotalNum) + .sum(); + // 新库存,增加库存信息 + newStockList.add(new TAppStock( + UUIDUtils.getNewUUID(), + vehicleId, + thisVehicleInTask.getDestination(), + WmsStockStatusEnums.OK.getCode(), + thisVehicleInTask.getGoodsId(), + WmsGoodsStatusEnums.OK.getCode(), + oldStockList.getFirst().getFirstInTime(), + oldStockList.getFirst().getFirstInUser(), + LocalDateTime.now(), + thisVehicleInTask.getOpUser(), + originTotal + thisVehicleInTask.getOpNum(), + originSum + thisVehicleInTask.getOpNum(), + originSum + thisVehicleInTask.getOpNum(), + thisVehicleInTask.getGoodsDesc(), + expireDate, + sledDays + )); + needDeleteStockIds.addAll(oldStockList.stream() + .map(TAppStock::getStockId) + .toList()); + } else { + TAppStock oldStock = oldStockList.getFirst(); + // 更新数量 + oldStock.setRealNum(oldStock.getRealNum() + thisVehicleInTask.getOpNum()); + oldStock.setRemainNum(oldStock.getRealNum()); + oldStock.setTotalNum(oldStock.getTotalNum() + thisVehicleInTask.getOpNum()); + // 更新库位 + oldStock.setLocationId(thisVehicleInTask.getDestination()); + oldStock.setLastUpdateTime(LocalDateTime.now()); + oldStock.setLastUpdateUser(thisVehicleInTask.getOpUser()); + oldStock.setStockStatus(WmsStockStatusEnums.OK.getCode()); + newStockList.add(oldStock); + } + } + } + // 当前载具是否是空载具 + boolean isEmptyVehicle = goodsIds.isEmpty() && thisVehicleStocks.isEmpty(); + if (thisVehicle == null) { + // 新建一个载具信息 + thisVehicle = new TAppVehicle( + vehicleId, + isEmptyVehicle ? 1 : 0, + WmsVehicleStatusEnums.ON.getCode(), + "", + 0, + thisVehicleInTasks.getFirst().getDestination(), + LocalDateTime.now() + ); + } else { + // 更新已有载具信息 + thisVehicle.setIsEmpty(isEmptyVehicle ? 1 : 0); + thisVehicle.setVehicleStatus(WmsVehicleStatusEnums.ON.getCode()); + thisVehicle.setLastInTime(LocalDateTime.now()); + thisVehicle.setLocationId(thisVehicleInTasks.getFirst().getDestination()); + } + // 保存载具信息 + appVehicleService.saveOrUpdate(thisVehicle); + // 将目标库位的工作状态设置为未工作 + appLocationService.update(new LambdaUpdateWrapper() + .set(TAppLocation::getIsWorking, 0) + .eq(TAppLocation::getLocationId, thisVehicle.getLocationId()) + ); + // 删除多余的库存信息 + if (!needDeleteStockIds.isEmpty()) { + appStockService.removeByIds(needDeleteStockIds); + } + // 需要更新下当前载具下的库存其他信息 + appStockService.update(new LambdaUpdateWrapper() + .set(TAppStock::getStockStatus, WmsStockStatusEnums.OK.getCode()) + .set(TAppStock::getLocationId, thisVehicleInTasks.getFirst().getDestination()) + .eq(TAppStock::getVehicleId, vehicleId) + ); + // 保存库存信息 + if (!newStockList.isEmpty()) { + appStockService.saveOrUpdateBatch(newStockList); + } + // 添加任务记录 + if (!newTaskBakList.isEmpty()) { + appTaskBakService.saveBatch(newTaskBakList); + } + // 删除已经完成的入库任务 + if (!needDeleteTaskIds.isEmpty()) { + appTaskService.removeByIds(needDeleteTaskIds); + } + } + } + + /** + * 实现 + * + * @param stackerOutTasks 已完成的出库任务 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public void finishStackerOutTasks(List stackerOutTasks) { + // 出库完成需要完成以下事情: + // 1. 更新库存状态 + // 2. 更新载具状态 + // 3. 释放库位 + // 4. 释放当前载具的拣选任务列表 + // 5. 添加出库记录 + // 根据载具号map一下 + Map> vehicleIdToTaskMap = stackerOutTasks.stream() + .filter(outTask -> Objects.equals(outTask.getTaskType(), WmsTaskTypeEnums.OUT.getCode()) && Objects.equals(outTask.getTaskStatus(), WmsStackerTaskStatusEnums.FINISH.getCode())) + .collect(Collectors.groupingBy(TAppTask::getVehicleId)); + for (String vehicleId : vehicleIdToTaskMap.keySet()) { + // 查询当前载具的数据 + TAppVehicle thisVehicle = appVehicleService.getOne(new LambdaQueryWrapper() + .eq(TAppVehicle::getVehicleId, vehicleId)); + if (thisVehicle == null || StringUtils.isEmpty(thisVehicle.getLocationId())) { + // 必须要有载具信息 + log.warn("载具{}的出库任务完成处理失败,原因:缺少载具信息(库位必须)。", vehicleId); + // 将当前载具所有的任务状态都设置为异常 + appTaskService.update(new LambdaUpdateWrapper() + .set(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.EXCEPTION.getCode()) + .set(TAppTask::getRemark, "缺少载具信息(库位必须),出库完成处理失败。") + .eq(TAppTask::getTaskType, WmsTaskTypeEnums.OUT.getCode()) + .eq(TAppTask::getVehicleId, vehicleId)); + continue; + } + // 释放当前库位 + appLocationService.update(new LambdaUpdateWrapper() + .set(TAppLocation::getIsOccupy, WmsLocationOccupyStatusEnums.EMPTY.getCode()) + .set(TAppLocation::getVehicleId, "") + .set(TAppLocation::getIsWorking, 0) + .eq(TAppLocation::getLocationId, thisVehicle.getLocationId()) + .eq(TAppLocation::getVehicleId, vehicleId)); + // 更新载具信息 + thisVehicle.setVehicleStatus(WmsVehicleStatusEnums.OUT.getCode()); + thisVehicle.setLocationId(""); + appVehicleService.updateById(thisVehicle); + // 更新当前载具对应的所有库存的状态为已出库 + appStockService.update(new LambdaUpdateWrapper() + .set(TAppStock::getStockStatus, WmsStockStatusEnums.OUTED.getCode()) + .set(TAppStock::getLocationId, "") + .eq(TAppStock::getVehicleId, vehicleId)); + // 释放当前载具对应的拣选任务 + appPickTaskService.update(new LambdaUpdateWrapper() + .set(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.WAIT.getCode()) + .eq(TAppPickTask::getVehicleId, vehicleId) + .eq(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.TEMP.getCode())); + // 当前载具的任务列表 + List thisVehicleOutTasks = vehicleIdToTaskMap.get(vehicleId); + if (!thisVehicleOutTasks.isEmpty()) { + // 存储出库记录 + List stockOutRecordList = thisVehicleOutTasks.stream() + .map(outTask -> new TAppTaskBak( + outTask.getTaskId(), + outTask.getTaskType(), + outTask.getTaskStatus(), + outTask.getTaskPriority(), + outTask.getVehicleId(), + outTask.getOrigin(), + outTask.getDestination(), + outTask.getWcsTaskId(), + outTask.getCreateTime(), + outTask.getFinishTime(), + outTask.getGoodsId(), + outTask.getOpNum(), + outTask.getStockNum(), + outTask.getOpUser(), + outTask.getRemark(), + outTask.getCallStand(), + "" + )).toList(); + appTaskBakService.saveBatch(stockOutRecordList); + // 删除当前载具所对应的出库任务 + appTaskService.remove(new LambdaQueryWrapper() + .eq(TAppTask::getVehicleId, vehicleId) + .eq(TAppTask::getTaskType, WmsTaskTypeEnums.OUT.getCode()) + .in(TAppTask::getTaskId, thisVehicleOutTasks.stream().map(TAppTask::getTaskId).toList())); + } + } + } +} diff --git a/src/main/java/com/wms_main/service/business/serviceImpl/StockDataServiceImpl.java b/src/main/java/com/wms_main/service/business/serviceImpl/StockDataServiceImpl.java new file mode 100644 index 0000000..3b34c83 --- /dev/null +++ b/src/main/java/com/wms_main/service/business/serviceImpl/StockDataServiceImpl.java @@ -0,0 +1,138 @@ +package com.wms_main.service.business.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.app.AppCommon; +import com.wms_main.constant.enums.wms.AppConfigKeyEnums; +import com.wms_main.dao.ITAppStockService; +import com.wms_main.dao.ITAppStockUpdateService; +import com.wms_main.dao.ITAppVehicleService; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.po.TAppStock; +import com.wms_main.model.po.TAppStockUpdate; +import com.wms_main.model.po.TAppVehicle; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.business.IStockDataService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; + +/** + * 库存数据服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class StockDataServiceImpl implements IStockDataService { + private final ITAppStockService appStockService;// 库存服务 + private final ITAppVehicleService appVehicleService;// 载具服务 + private final AppCommon appCommon;// app通用数据 + private final ITAppStockUpdateService appStockUpdateService;// 库存更新服务 + + /** + * 更新库存信息 实现 + * @param stockConfirm 库存确认信息 + */ + @Override + public void updateStockInfo(StockConfirmEntity stockConfirm, String standId, String userName, String reason) { + if (stockConfirm == null || StringUtils.isEmpty(stockConfirm.getVehicleId()) || StringUtils.isEmpty(stockConfirm.getGoodsId()) + || stockConfirm.getRealRemainQty() == null) { + return; + } + // 查询对应的库存信息 + List stockList = appStockService.list(new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, stockConfirm.getVehicleId()) + .eq(TAppStock::getGoodsId, stockConfirm.getGoodsId()) + .orderByDesc(TAppStock::getFirstInTime) + ); + // 更新列表 + List removeStocks = new ArrayList<>(); + List updateStocks = new ArrayList<>(); + // 库存更新记录列表 + List stockUpdateList = new ArrayList<>(); + // 剩余数量 + int remainQty = stockConfirm.getPlanRemainQty(); + for (TAppStock stock : stockList) { + if (remainQty <= 0) { + removeStocks.add(stock); + continue; + } + if (stock.getRealNum() <= remainQty) { + remainQty -= stock.getRealNum(); + } else { + TAppStockUpdate stockUpdate = new TAppStockUpdate( + UUIDUtils.getNewUUID(), + stock.getVehicleId(), + stock.getGoodsId(), + stock.getFirstInTime(), + stock.getRealNum(), + remainQty, + standId + ":" + reason, + stock.getLastUpdateTime(), + userName + ); + stockUpdateList.add(stockUpdate); + stock.setRealNum(remainQty); + remainQty = 0; + } + updateStocks.add(stock); + } + // 删除库存 + if (!removeStocks.isEmpty()) { + appStockService.removeBatchByIds(removeStocks.stream().map(TAppStock::getStockId).toList()); + } + // 更新库存数量 + if (!updateStocks.isEmpty()) { + appStockService.updateBatchById(updateStocks); + } + // 增加库存更新记录 + if (!stockUpdateList.isEmpty()) { + appStockUpdateService.saveBatch(stockUpdateList); + } + } + + /** + * 获得库存预警值---实现 + * @return 库存预警值 + */ + @Override + public int getWarningQty() { + int warningQty = 5; + try { + // 获取配置数据 + warningQty = Integer.parseInt(appCommon.getConfigByKey(AppConfigKeyEnums.STOCK_WARNING_QTY.getKey())); + } catch (Exception e) { + log.warn("获取库存预警值失败,使用默认值5。"); + } + return warningQty; + } + + /** + * 判断当前载具是否是空载具 + * @param vehicleId 载具号 + * @return true:空载具;false:非空载具 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public boolean isEmptyVehicle(String vehicleId) { + // 查询这个载具的所有库存数据 + List thisVehicleStocks = appStockService.list(new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, vehicleId) + .gt(TAppStock::getRealNum, 0) + ); + boolean isEmpty = thisVehicleStocks == null || thisVehicleStocks.isEmpty(); + if (isEmpty) { + // 更新载具数据 + appVehicleService.update(new LambdaUpdateWrapper() + .set(TAppVehicle::getIsEmpty, 1) + .eq(TAppVehicle::getVehicleId, vehicleId) + .ne(TAppVehicle::getIsEmpty, 1)); + } + return isEmpty; + } +} diff --git a/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java b/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java new file mode 100644 index 0000000..199d146 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/IGoodsControllerService.java @@ -0,0 +1,19 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.dto.query.GoodsQuery; +import com.wms_main.model.vo.wms.GoodsVo; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import org.springframework.web.bind.annotation.RequestBody; + +/** + * 物料控制类 服务接口 + */ +public interface IGoodsControllerService { + /** + * 获取物料信息---分页 + * @param goodsQuery 查询参数 + * @return 查询结果 + */ + WmsApiResponse> getGoodsInfoByPage(@RequestBody GoodsQuery goodsQuery); +} diff --git a/src/main/java/com/wms_main/service/controller/IJobControllerService.java b/src/main/java/com/wms_main/service/controller/IJobControllerService.java new file mode 100644 index 0000000..4f6d9af --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/IJobControllerService.java @@ -0,0 +1,4 @@ +package com.wms_main.service.controller; + +public interface IJobControllerService { +} diff --git a/src/main/java/com/wms_main/service/controller/IKateWorkControllerService.java b/src/main/java/com/wms_main/service/controller/IKateWorkControllerService.java new file mode 100644 index 0000000..adefc1d --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/IKateWorkControllerService.java @@ -0,0 +1,101 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.dto.query.*; +import com.wms_main.model.dto.request.wms.BaseWmsRequest; +import com.wms_main.model.dto.request.wms.ConfirmWorkRequest; +import com.wms_main.model.dto.request.wms.GenKanbanRequirementRequest; +import com.wms_main.model.dto.request.wms.InitKateWorkRequest; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.*; + +import java.util.List; + +/** + * 卡特工作控制类服务接口 + */ +public interface IKateWorkControllerService { + /** + * 查询工作情况 + * @param kateWorksQuery 查询参数 + * @return 查询结果 + */ + WmsApiResponse queryKateWorks(KateWorksQuery kateWorksQuery); + + /** + * 创建工作/初始化 + * @param initKateWorkRequest 请求信息 + * @return 处理结果 + */ + BaseWmsApiResponse initWorks(InitKateWorkRequest initKateWorkRequest); + + /** + * 获得当前需要配料的工作 + * @param kateWorksQuery 查询参数 + * @return 查询结果 + */ + WmsApiResponse getCurrentWorks(KateWorksQuery kateWorksQuery); + + /** + * 确认当前工作 + * @param confirmWorkRequest 确认请求 + * @return 处理结果 + */ + BaseWmsApiResponse confirmCurrentWork(ConfirmWorkRequest confirmWorkRequest); + + /** + * 查找图纸 + * @param request 请求参数 + * @return 图纸 + */ + WmsApiResponse getImageOfWork(BaseWmsRequest request); + + /** + * 配料界面获取料盒显示信息 + * @param request 请求 + * @return 查询结果 + */ + WmsApiResponse getBoxesAndLacks(BaseWmsRequest request); + + /** + * 分页查看看板 + * @param kanbanQuery 查询参数 + * @return 查询结果 + */ + WmsApiResponse> queryKanbanByPage(KanbanQuery kanbanQuery); + + /** + * 生成看板需求 + * @param genRequest 请求参数 + * @return 请求结果 + */ + BaseWmsApiResponse genClcKanbanRequirement(GenKanbanRequirementRequest genRequest); + + /** + * 查询图纸 + * @param imageQuery 查询参数 + * @return 查询结果 + */ + WmsApiResponse> requestImageDetail(ImageQuery imageQuery); + + /** + * 查询Dbs列表---分页 + * @param dbsQuery 查询参数 + * @return 查询结果---分页 + */ + WmsApiResponse> queryDbsByPage(DbsQuery dbsQuery); + + /** + * 查询配料单列表---分页 + * @param kittingBomQuery 查询参数 + * @return 查询结果---分页 + */ + WmsApiResponse> queryKittingBomByPage(KittingBomQuery kittingBomQuery); + + /** + * 查询配料单对应关系列表---分页 + * @param kittingBomRelationQuery 查询参数 + * @return 查询结果---分页 + */ + WmsApiResponse> queryKittingRelationByPage(KittingBomRelationQuery kittingBomRelationQuery); +} diff --git a/src/main/java/com/wms_main/service/controller/ILocationControllerService.java b/src/main/java/com/wms_main/service/controller/ILocationControllerService.java new file mode 100644 index 0000000..998d2ee --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/ILocationControllerService.java @@ -0,0 +1,16 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.dto.query.LocationQuery; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; + +/** + * 库位控制类服务 + */ +public interface ILocationControllerService { + /** + * 初始化库位信息 + * @param locationQuery 查询参数 + * @return 创建结果 + */ + BaseWmsApiResponse genLocations(LocationQuery locationQuery); +} diff --git a/src/main/java/com/wms_main/service/controller/ILoginControllerService.java b/src/main/java/com/wms_main/service/controller/ILoginControllerService.java new file mode 100644 index 0000000..521ff1c --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/ILoginControllerService.java @@ -0,0 +1,21 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.vo.wms.UserLoginVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; + +public interface ILoginControllerService { + /** + * 带密码登录 + * @param loginAccount 登录账户 + * @param loginPassword 登录密码 + * @return 登录的用户信息 + */ + WmsApiResponse loginWithAuth(String loginAccount, String loginPassword, String ip); + + /** + * 无密码登录 + * @param loginAccount 登录账户 + * @return 登录的用户信息 + */ + WmsApiResponse loginWithOutAuth(String loginAccount, String ip); +} diff --git a/src/main/java/com/wms_main/service/controller/IStockControllerService.java b/src/main/java/com/wms_main/service/controller/IStockControllerService.java new file mode 100644 index 0000000..f860b9f --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/IStockControllerService.java @@ -0,0 +1,18 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.dto.query.StockQuery; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.StockVo; + +/** + * 库存控制类服务 接口 + */ +public interface IStockControllerService { + /** + * 查询库存信息---分页 + * @param stockQuery 查询参数 + * @return 查询结果---分页 + */ + WmsApiResponse> queryStocksByPage(StockQuery stockQuery); +} diff --git a/src/main/java/com/wms_main/service/controller/ITaskControllerService.java b/src/main/java/com/wms_main/service/controller/ITaskControllerService.java new file mode 100644 index 0000000..16bfca7 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/ITaskControllerService.java @@ -0,0 +1,73 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.bo.wcs.WcsStackerTask; +import com.wms_main.model.dto.request.wcs.WcsBoxArriveRequest; +import com.wms_main.model.dto.request.wcs.WcsTaskResultRequest; +import com.wms_main.model.dto.request.wcs.WcsVehicleInRequest; +import com.wms_main.model.dto.request.wms.*; +import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.vo.wms.TaskConfirmVo; + +/** + * 任务控制类 服务接口 + */ +public interface ITaskControllerService { + /** + * 入库请求 + * @param stockInRequest 请求信息 + * @return 处理结果 + */ + BaseWmsApiResponse requireStockIn(StockInRequest stockInRequest); + + /** + * 出库请求 + * @param stockOutRequest 请求信息 + * @return 处理结果 + */ + BaseWmsApiResponse requireStockOut(StockOutRequest stockOutRequest); + + /** + * 接收wcs反馈任务状态 + * @param wcsTaskResultRequest 请求信息 + * @return 处理结果 + */ + BaseWcsApiResponse sendTaskResult(WcsTaskResultRequest wcsTaskResultRequest); + + /** + * wcs请求载具入库 + * @param wcsVehicleInRequest 载具请求 + * @return 处理结果 + */ + WcsApiResponse wcsRequestVehicleIn(WcsVehicleInRequest wcsVehicleInRequest); + + /** + * Wcs上报载具到达站台 + * @param boxArriveRequest 请求信息 + * @return 处理结果 + */ + BaseWcsApiResponse boxArrive(WcsBoxArriveRequest boxArriveRequest); + + /** + * 取消拣选任务 + * @param pickTaskRequest 请求信息 + * @return 处理结果 + */ + BaseWmsApiResponse cancelPickTasks(PickTaskRequest pickTaskRequest); + + /** + * 获得当前站台任务 + * @param wmsRequest 请求信息 + * @return 处理结果 + */ + WmsApiResponse getCurrentTask(BaseWmsRequest wmsRequest); + + /** + * 确认任务 + * @param confirmTaskRequest 请求信息 + * @return 处理结果 + */ + BaseWmsApiResponse confirmCurrentTask(ConfirmTaskRequest confirmTaskRequest); +} diff --git a/src/main/java/com/wms_main/service/controller/ITestControllerService.java b/src/main/java/com/wms_main/service/controller/ITestControllerService.java new file mode 100644 index 0000000..a6b126d --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/ITestControllerService.java @@ -0,0 +1,17 @@ +package com.wms_main.service.controller; + +import com.wms_main.model.dto.request.wms.BaseWmsRequest; +import com.wms_main.model.dto.query.DbsQuery; +import com.wms_main.model.dto.request.wms.InitKateWorkRequest; +import com.wms_main.model.vo.wms.ImageVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import jakarta.servlet.http.HttpServletResponse; +import org.springframework.web.bind.annotation.RequestBody; + +import java.io.IOException; +import java.util.List; + +public interface ITestControllerService { + WmsApiResponse> testRequestImage(InitKateWorkRequest request); + void testExport(@RequestBody DbsQuery dbsQuery, HttpServletResponse response) throws IOException; +} diff --git a/src/main/java/com/wms_main/service/controller/IUserControllerService.java b/src/main/java/com/wms_main/service/controller/IUserControllerService.java new file mode 100644 index 0000000..91510b3 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/IUserControllerService.java @@ -0,0 +1,7 @@ +package com.wms_main.service.controller; + +/** + * 用户控制类服务 + */ +public interface IUserControllerService { +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java new file mode 100644 index 0000000..5e38608 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/GoodsControllerServiceImpl.java @@ -0,0 +1,49 @@ +package com.wms_main.service.controller.serviceImpl; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wms_main.dao.ITAppGoodsService; +import com.wms_main.model.po.TAppGoods; +import com.wms_main.model.dto.query.GoodsQuery; +import com.wms_main.model.vo.wms.GoodsVo; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.controller.IGoodsControllerService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Isolation; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; + +/** + * 物料控制类 服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class GoodsControllerServiceImpl implements IGoodsControllerService { + private final ITAppGoodsService goodsService; + /** + * 实现--查询物料信息(分页) + * @param goodsQuery 查询参数 + * @return 查询结果 + */ + @Override + @Transactional(isolation = Isolation.REPEATABLE_READ, propagation = Propagation.REQUIRED) + public WmsApiResponse> getGoodsInfoByPage(GoodsQuery goodsQuery) { + try { + Page page = goodsQuery.toMpPage(); + Page goodsPage = goodsService.page(page, new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(goodsQuery.getGoodsId()), TAppGoods::getGoodsId, goodsQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(goodsQuery.getGoodsDescription()), TAppGoods::getGoodsDescription, goodsQuery.getGoodsDescription())); + + PageVo pageVo = PageVo.of(goodsPage, goods -> BeanUtil.copyProperties(goods, GoodsVo.class)); + return WmsApiResponse.success("查询成功", pageVo); + } catch (Exception e) { + throw new RuntimeException("查询错误。"); + } + } +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/JobControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/JobControllerServiceImpl.java new file mode 100644 index 0000000..297dd42 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/JobControllerServiceImpl.java @@ -0,0 +1,8 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.wms_main.service.controller.IJobControllerService; +import org.springframework.stereotype.Service; + +@Service +public class JobControllerServiceImpl implements IJobControllerService { +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/KateWorkControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/KateWorkControllerServiceImpl.java new file mode 100644 index 0000000..46d030c --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/KateWorkControllerServiceImpl.java @@ -0,0 +1,1184 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wms_main.app.AppCommon; +import com.wms_main.constant.enums.wms.*; +import com.wms_main.dao.*; +import com.wms_main.model.bo.wms.BoxSummary; +import com.wms_main.model.bo.wms.GoodsLackSummary; +import com.wms_main.model.bo.wms.OrderConfirmEntity; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.dto.query.*; +import com.wms_main.model.dto.request.wms.BaseWmsRequest; +import com.wms_main.model.dto.request.wms.ConfirmWorkRequest; +import com.wms_main.model.dto.request.wms.GenKanbanRequirementRequest; +import com.wms_main.model.dto.request.wms.InitKateWorkRequest; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.po.*; +import com.wms_main.model.vo.wms.*; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.business.IConveyTaskService; +import com.wms_main.service.business.IStockDataService; +import com.wms_main.service.controller.IKateWorkControllerService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import java.time.LocalDateTime; +import java.util.*; +import java.util.stream.Collectors; + +/** + * 卡特工作控制类服务接口实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class KateWorkControllerServiceImpl implements IKateWorkControllerService { + private final ITAppDbsService appDbsService;// dbs服务 + private final ITAppProductService appProductService;// 成品配料单服务 + private final ITAppProductExtendService appProductExtendService;// 成品-单片对应服务 + private final ITAppSingleProductService appSingleProductService;// 单片配料单服务 + private final ITAppWorkService appWorkService;// 工作服务 + private final ITAppPickTaskService appPickTaskService;// 拣选任务服务 + private final ITAppStockService appStockService;// 库存服务 + private final IConveyTaskService conveyTaskService;// 输送线任务服务 + private final ITAppGoodsService appGoodsService;// 物料服务 + private final ITAppStandWorkService appStandWorkService;// 站台工作服务 + private final ITAppImageService appImageService;// 图纸服务 + private final IStockDataService stockDataService;// 库存数据服务 + private final ITAppStandService appStandService;// 站台服务 + private final ITAppKanbanService appKanbanService;// 看板服务 + private final AppCommon appCommon; + + /** + * 查询卡特工作 + * + * @param kateWorksQuery 卡特工作查询参数 + * @return 卡特工作列表 + */ + @Override + public WmsApiResponse queryKateWorks(KateWorksQuery kateWorksQuery) { + if (kateWorksQuery == null) { + // 空请求,直接返回空。 + return WmsApiResponse.success(new KateWorkOptionsVo()); + } + // 结果集 + KateWorkOptionsVo result = new KateWorkOptionsVo(); + // 分为两种情况 + if (StringUtils.isEmpty(kateWorksQuery.getWorkOrder())) { + // 1. 工单号未填的情况下,返回所有的工单 + List dbsList = appDbsService.list(new LambdaQueryWrapper() + .eq(kateWorksQuery.getPlanStartDate() != null, TAppDbs::getTestPlanStartDate, kateWorksQuery.getPlanStartDate())); + if (dbsList != null && !dbsList.isEmpty()) { + // 获取工单列表 + result.setWorkOrder(dbsList.stream().map(TAppDbs::getWorkOrder).distinct().toList()); + } + } else { + // 2. 工单号已填写的情况下,查询到对应的DBS信息 + List dbsList = appDbsService.list(new LambdaQueryWrapper() + .like(TAppDbs::getWorkOrder, kateWorksQuery.getWorkOrder())); + if (dbsList == null || dbsList.isEmpty()) { + // 返回空列表 + return WmsApiResponse.success(new KateWorkOptionsVo()); + } + if (dbsList.size() > 1) { + // 备选工单超过1条,直接返回 + result.setWorkOrder(dbsList.stream().map(TAppDbs::getWorkOrder).distinct().toList()); + return WmsApiResponse.success(result); + } + TAppDbs dbs = dbsList.getFirst(); + // 设置工单号列表 + result.setWorkOrder(List.of(dbs.getWorkOrder())); + if (StringUtils.isNotEmpty(kateWorksQuery.getProductId()) && !kateWorksQuery.getProductId().equals(dbs.getProductId())) { + // 如果输入了成品号,但是与DBS中的不一致,直接返回,不设置成品号列表 + return WmsApiResponse.success(result); + } + // 设置成品号列表 + result.setProductId(List.of(dbs.getProductId())); + if (StringUtils.isEmpty(kateWorksQuery.getProductId())) { + // 未输入成品号,直接返回 + return WmsApiResponse.success(result); + } + // 判断是否输入了单片号 + if (StringUtils.isNotEmpty(kateWorksQuery.getSingleProductId())) { + // 查询成品-单片以获取单片Options + List singleProductExtendList = appProductExtendService.list(new LambdaQueryWrapper() + .like(TAppProductExtend::getSingleProductId, kateWorksQuery.getSingleProductId()) + .eq(TAppProductExtend::getProductId, dbs.getProductId())); + if (singleProductExtendList == null || singleProductExtendList.isEmpty()) { + return WmsApiResponse.success(result); + } + // 设置单片Options + if (singleProductExtendList.size() > 1) { + result.setSingleProductId(singleProductExtendList.stream().map(TAppProductExtend::getSingleProductId).distinct().toList()); + return WmsApiResponse.success(result); + } + TAppProductExtend singleProductExtend = singleProductExtendList.getFirst(); + // 设置单片号 + result.setSingleProductId(List.of(singleProductExtend.getSingleProductId())); + // 查询单片配料单 + List singleProductList = appSingleProductService.list(new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kateWorksQuery.getBoxNo()), TAppSingleProduct::getBoxNo, kateWorksQuery.getBoxNo()) + .like(StringUtils.isNotEmpty(kateWorksQuery.getGoodsId()), TAppSingleProduct::getGoodsId, kateWorksQuery.getGoodsId()) + .eq(TAppSingleProduct::getProductId, singleProductExtend.getSingleProductId())); + if (singleProductList == null || singleProductList.isEmpty()) { + return WmsApiResponse.success(result); + } + // 设置料盒号以及料号 + result.setBoxNo(singleProductList.stream().map(TAppSingleProduct::getBoxNo).distinct().toList()); + result.setGoodsId(singleProductList.stream().map(TAppSingleProduct::getGoodsId).distinct().toList()); + } else { + // 查询成品-单片以获取单片Options + List singleProductExtendListAll = appProductExtendService.list(new LambdaQueryWrapper() + .eq(TAppProductExtend::getProductId, dbs.getProductId())); + if (singleProductExtendListAll != null && !singleProductExtendListAll.isEmpty()) { + result.setSingleProductId(singleProductExtendListAll.stream().map(TAppProductExtend::getSingleProductId).distinct().toList()); + } + // 查询对应的成品配料单信息 + List productList = appProductService.list(new LambdaQueryWrapper() + .eq(TAppProduct::getProductId, dbs.getProductId()) + .like(StringUtils.isNotEmpty(kateWorksQuery.getBoxNo()), TAppProduct::getBoxNo, kateWorksQuery.getBoxNo()) + .like(StringUtils.isNotEmpty(kateWorksQuery.getGoodsId()), TAppProduct::getGoodsId, kateWorksQuery.getGoodsId())); + if (productList == null || productList.isEmpty()) { + return WmsApiResponse.success(result); + } + // 设置料盒号以及料号 + result.setBoxNo(productList.stream().map(TAppProduct::getBoxNo).distinct().toList()); + result.setGoodsId(productList.stream().map(TAppProduct::getGoodsId).distinct().toList()); + } + } + return WmsApiResponse.success(result); + } + + /** + * 初始化任务 + * + * @param initKateWorkRequest 请求信息 + * @return 初始化任务响应信息 + */ + @Override + @Transactional + public BaseWmsApiResponse initWorks(InitKateWorkRequest initKateWorkRequest) { + if (initKateWorkRequest == null) { + return BaseWmsApiResponse.error("请求信息为空,无法创建工作。"); + } + if (StringUtils.isEmpty(initKateWorkRequest.getStandId())) { + return BaseWmsApiResponse.error("缺少站台号,无法创建工作。"); + } + if (!appStandService.exists(new LambdaQueryWrapper().eq(TAppStand::getStandId, initKateWorkRequest.getStandId()) + .eq(TAppStand::getStandType, 1))) { + return BaseWmsApiResponse.error("当前站台非拣选站台,不允许创建工作。"); + } + // 判断请求是否完整 + if (StringUtils.isEmpty(initKateWorkRequest.getWorkOrder())) { + return BaseWmsApiResponse.error("请求信息不完整,缺少工单号。"); + } + // 先判断当前站台是否有其他需要做的工作 + List currentStandWorkList = appWorkService.list(new LambdaQueryWrapper() + .eq(TAppWork::getWorkStand, initKateWorkRequest.getStandId()) + .ne(TAppWork::getWorkOrder, initKateWorkRequest.getWorkOrder()) + .notIn(TAppWork::getWorkStatus, -1, 2)); + if (currentStandWorkList != null && !currentStandWorkList.isEmpty()) { + return BaseWmsApiResponse.error("当前站台还有其他工单未完成,无法创建新的工单。"); + } + // 判断当前工单的工作是否已经存在,如果选择了单片,则只下发单片。 + List allcurrentWorkOrderWorkList = appWorkService.list(new LambdaQueryWrapper() + .eq(TAppWork::getWorkOrder, initKateWorkRequest.getWorkOrder())); + if (allcurrentWorkOrderWorkList != null && !allcurrentWorkOrderWorkList.isEmpty()) { + // 筛选是不是单片 + List currentWorkOrderWorkList = allcurrentWorkOrderWorkList.stream().filter(work -> { + if (StringUtils.isNotEmpty(initKateWorkRequest.getSingleProductId())) { + return Objects.equals(work.getSingleProductId(), initKateWorkRequest.getSingleProductId()); + } else { + return StringUtils.isEmpty(work.getSingleProductId()); + } + }).toList(); + if (!currentWorkOrderWorkList.isEmpty()) { + // 根据查询条件筛选出对应的暂存数据 + List filterWorks = currentWorkOrderWorkList.stream() + .filter(work -> { + boolean result = work.getWorkStatus() == -1; + // 料盒号 + if (StringUtils.isNotEmpty(initKateWorkRequest.getBoxNo())) { + result = result && Objects.equals(work.getBoxNo(), initKateWorkRequest.getBoxNo()); + } + // 物料号 + if (StringUtils.isNotEmpty(initKateWorkRequest.getGoodsId())) { + result = result && Objects.equals(work.getGoodsId(), initKateWorkRequest.getGoodsId()); + } + return result; + }).toList(); + if (filterWorks.isEmpty()) { + return BaseWmsApiResponse.error("当前工单已生成工作,请勿重复下发。"); + } + try { + // 将这些工作的状态设置为待执行 + appWorkService.update( + new LambdaUpdateWrapper() + .set(TAppWork::getWorkStatus, 0) + .set(TAppWork::getWorkStand, initKateWorkRequest.getStandId()) + .in(TAppWork::getWorkIndex, filterWorks.stream().map(TAppWork::getWorkIndex).toList()) + ); + return BaseWmsApiResponse.success("创建工作成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("创建工作失败。"); + } + } + } + // 生成新的工作详情 + // -> + // 查询dbs信息 + List dbsList = appDbsService.list(new LambdaQueryWrapper() + .eq(TAppDbs::getWorkOrder, initKateWorkRequest.getWorkOrder()) + .ne(TAppDbs::getDbsStatus, 2)); + if (dbsList == null || dbsList.isEmpty()) { + return BaseWmsApiResponse.error("工单未查询到DBS信息,请检查。"); + } + if (dbsList.size() > 1) { + return BaseWmsApiResponse.error("工单存在多个DBS信息,请检查。"); + } + // 添加work表 + List workList = new ArrayList<>(); + // 查询配料相关表 + TAppDbs dbs = dbsList.getFirst(); + // 查询对应的成品号 + String productId = dbs.getProductId();// 成品号 + int productionNum = dbs.getPlanProduction();// 计划产量 + // 查询所有的库外物料信息 + List outGoodsList = appGoodsService.list(new LambdaQueryWrapper() + .notLike(TAppGoods::getPutArea, "ASRS")); + List outGoodsIds = outGoodsList.stream().map(TAppGoods::getGoodsId).distinct().toList(); + // 判断是否执行总成配料 + if (StringUtils.isEmpty(initKateWorkRequest.getSingleProductId())) { + // 查询成品配料单 + List productList = appProductService.list(new LambdaQueryWrapper() + .eq(TAppProduct::getProductId, productId)); + if (productList == null || productList.isEmpty()) { + return BaseWmsApiResponse.error("未查询到总成配料单,请检查。"); + } + // 创建成品的工作 + for (TAppProduct product : productList) { + TAppWork tempProductWork = new TAppWork(); + tempProductWork.setWorkIndex(UUIDUtils.getNewUUID()); + tempProductWork.setWorkOrder(dbs.getWorkOrder()); + tempProductWork.setPlanStartDate(dbs.getTestPlanStartDate()); + tempProductWork.setProductId(product.getProductId()); + tempProductWork.setGoodsId(product.getGoodsId()); + tempProductWork.setBoxNo(product.getBoxNo()); + tempProductWork.setNeedNum(productionNum * product.getQuantity1Pair()); + tempProductWork.setDistributeNum(0); + tempProductWork.setFinishNum(0); + // 筛选条件 + if (StringUtils.isNotEmpty(initKateWorkRequest.getBoxNo()) && !initKateWorkRequest.getBoxNo().equals(product.getBoxNo())) { + // 选择了料盒 + tempProductWork.setWorkStatus(-1); + } else if (StringUtils.isNotEmpty(initKateWorkRequest.getGoodsId()) && !initKateWorkRequest.getGoodsId().equals(product.getGoodsId())) { + // 选择了物料 + tempProductWork.setWorkStatus(-1); + } else { + // 未选择任何条件 + tempProductWork.setWorkStatus(0); + } + tempProductWork.setWorkStand(initKateWorkRequest.getStandId()); + tempProductWork.setWorkUser(initKateWorkRequest.getUserName()); + tempProductWork.setCreateTime(LocalDateTime.now()); + if (outGoodsIds.contains(product.getGoodsId())) { + tempProductWork.setIsOut(1); + } else { + tempProductWork.setIsOut(0); + } + workList.add(tempProductWork); + } + } else { + // 查询是否包含单片 + List singleProductExtendList = appProductExtendService.list(new LambdaQueryWrapper() + .eq(TAppProductExtend::getProductId, productId)); + if (singleProductExtendList != null && !singleProductExtendList.isEmpty()) { + // 包含单片 + for (TAppProductExtend singleProductExtend : singleProductExtendList) { + // 如果不是请求的单片,则跳过 + if (!Objects.equals(initKateWorkRequest.getSingleProductId(), singleProductExtend.getSingleProductId())) { + continue; + } + // 查询对应的单片配料单 + List singleProductList = appProductService.list(new LambdaQueryWrapper() + .eq(TAppProduct::getProductId, singleProductExtend.getSingleProductId())); + if (singleProductList == null || singleProductList.isEmpty()) { + continue; + } + for (TAppProduct singleProduct : singleProductList) { + TAppWork tempSingleProductWork = new TAppWork(); + tempSingleProductWork.setWorkIndex(UUIDUtils.getNewUUID()); + tempSingleProductWork.setWorkOrder(dbs.getWorkOrder()); + tempSingleProductWork.setPlanStartDate(dbs.getTestPlanStartDate()); + tempSingleProductWork.setProductId(singleProduct.getProductId()); + tempSingleProductWork.setSingleProductId(singleProductExtend.getSingleProductId()); + tempSingleProductWork.setGoodsId(singleProduct.getGoodsId()); + tempSingleProductWork.setBoxNo(singleProduct.getBoxNo()); + tempSingleProductWork.setNeedNum(productionNum * singleProduct.getQuantity1Pair()); + tempSingleProductWork.setDistributeNum(0); + tempSingleProductWork.setFinishNum(0); + // 筛选条件 + if (StringUtils.isNotEmpty(initKateWorkRequest.getBoxNo()) && !initKateWorkRequest.getBoxNo().equals(singleProduct.getBoxNo())) { + // 选择了料盒 + tempSingleProductWork.setWorkStatus(-1); + } else if (StringUtils.isNotEmpty(initKateWorkRequest.getGoodsId()) && !initKateWorkRequest.getGoodsId().equals(singleProduct.getGoodsId())) { + // 选择了物料 + tempSingleProductWork.setWorkStatus(-1); + } else { + // 未选择任何条件 + tempSingleProductWork.setWorkStatus(0); + } + tempSingleProductWork.setWorkStand(initKateWorkRequest.getStandId()); + tempSingleProductWork.setWorkUser(initKateWorkRequest.getUserName()); + tempSingleProductWork.setCreateTime(LocalDateTime.now()); + if (outGoodsIds.contains(singleProduct.getGoodsId())) { + tempSingleProductWork.setIsOut(1); + } else { + tempSingleProductWork.setIsOut(0); + } + workList.add(tempSingleProductWork); + } + } + } + } + try { + // 保存工作 + appWorkService.saveBatch(workList); + // 更新原始dbs状态 + appDbsService.update(new LambdaUpdateWrapper() + .set(TAppDbs::getWorkStand, initKateWorkRequest.getStandId()) + .set(TAppDbs::getDbsStatus, 1).eq(TAppDbs::getDbsId, dbs.getDbsId())); + return BaseWmsApiResponse.success("创建工作成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("发生异常,请重试。"); + } + } + + /** + * 查询当前需要配料的工作---实现 + * + * @param kateWorksQuery 查询参数 + * @return 查询结果 + */ + @Override + @Transactional + public WmsApiResponse getCurrentWorks(KateWorksQuery kateWorksQuery) { + if (kateWorksQuery == null || StringUtils.isEmpty(kateWorksQuery.getStandId())) { + return WmsApiResponse.error("请求缺少信息,请输入站台号。", null); + } + // 查询是否已经有正在拣选的 + List standWorkList = appStandWorkService.list(new LambdaQueryWrapper() + .eq(TAppStandWork::getStandId, kateWorksQuery.getStandId())); + if (standWorkList == null || standWorkList.isEmpty()) { + return WmsApiResponse.error("当前没有需要拣配的工作。", null); + } + TAppStandWork thisStandWork = standWorkList.getFirst(); + // 查询库存预警数量 + if (StringUtils.isNotEmpty(thisStandWork.getGoodsId())) { + // 返回第一条 + return WmsApiResponse.success("请根据界面信息进行拣配。", new WorkConfirmVo( + new OrderConfirmEntity( + thisStandWork.getWorkOrder(), + thisStandWork.getProductId(), + thisStandWork.getSingleProductId(), + thisStandWork.getGoodsId(), + thisStandWork.getBoxNo(), + thisStandWork.getPlanPickQty(), + thisStandWork.getRealPickQty()), + new StockConfirmEntity( + thisStandWork.getStockId(), + thisStandWork.getVehicleId(), + thisStandWork.getGoodsId(), + thisStandWork.getPlanRemainQty(), + thisStandWork.getRealRemainQty(), + thisStandWork.getIsOut(), + thisStandWork.getPutArea(), + stockDataService.getWarningQty()) + )); + } + // 查询当前站台上的已到达的拣选任务 + List pickTaskList = appPickTaskService.list(new LambdaQueryWrapper() + .eq(TAppPickTask::getPickStand, kateWorksQuery.getStandId()) + .eq(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.ARRIVE.getCode())); + if (pickTaskList == null || pickTaskList.isEmpty()) { + // 这里需要增加库外料拣配工作的生成。 + WorkConfirmVo resultVo = getOutGoodsStandWork(kateWorksQuery.getStandId(), thisStandWork); + if (resultVo != null) { + setStandWork(resultVo, thisStandWork); + // 保存pickWork + try { + appStandWorkService.updateById(thisStandWork); + return WmsApiResponse.success("请根据界面信息进行拣配。", resultVo); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return WmsApiResponse.error("更新站台拣配信息异常,请检查原因。", null); + } + } + return WmsApiResponse.error("当前站台没有箱子到达, 请检查。", null); + } + if (pickTaskList.size() > 1) { + return WmsApiResponse.error("当前站台有多个箱子到达,请检查。", null); + } + // 当前站台到达的拣选任务 + TAppPickTask thisPickTask = pickTaskList.getFirst(); + WorkConfirmVo resultVo = conveyTaskService.getCurrentStandWork(thisPickTask); + if (resultVo != null) { + setStandWork(resultVo, thisStandWork); + // 保存pickWork + try { + appStandWorkService.updateById(thisStandWork); + return WmsApiResponse.success("请根据界面信息进行拣配。", resultVo); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return WmsApiResponse.error("更新站台拣配信息异常,请检查原因。", null); + } + } + return WmsApiResponse.instanceOf(WmsApiResponseCodeEnums.WARNING.getCode(), "该载具没有拣选工作,请直接确认放行。", null); + } + + /** + * 实现 + * + * @param confirmWorkRequest 确认请求 + * @return 确认结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public BaseWmsApiResponse confirmCurrentWork(ConfirmWorkRequest confirmWorkRequest) { + if (confirmWorkRequest == null || StringUtils.isEmpty(confirmWorkRequest.getStandId())) { + return BaseWmsApiResponse.error("请求缺少信息,请输入站台号。"); + } + // 查询这个站台的拣选工作 + List standWorkList = appStandWorkService.list(new LambdaQueryWrapper() + .eq(TAppStandWork::getStandId, confirmWorkRequest.getStandId())); + if (standWorkList != null && !standWorkList.isEmpty()) { + TAppStandWork thisStandWork = standWorkList.getFirst(); + if (StringUtils.isNotEmpty(thisStandWork.getGoodsId()) && thisStandWork.getIsOut() == 1) { + if (confirmWorkRequest.getOrderConfirm() != null && Objects.equals(confirmWorkRequest.getOrderConfirm().getGoodsId(), thisStandWork.getGoodsId())) { + // 更新工作信息 + updateWorkInfo(confirmWorkRequest); + return BaseWmsApiResponse.success("确认库外料拣配成功。"); + } + } + } + // 查询当前站台上的已到达的拣选任务 + List pickTaskList = appPickTaskService.list(new LambdaQueryWrapper() + .eq(TAppPickTask::getPickStand, confirmWorkRequest.getStandId()) + .eq(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.ARRIVE.getCode())); + if (pickTaskList == null || pickTaskList.isEmpty()) { + return BaseWmsApiResponse.error("当前站台没有箱子到达, 请检查。"); + } + if (pickTaskList.size() > 1) { + return BaseWmsApiResponse.error("当前站台有多个箱子到达,请检查。"); + } + // 当前站台到达的拣选任务 + TAppPickTask thisPickTask = pickTaskList.getFirst(); + // 更新工作信息 + updateWorkInfo(confirmWorkRequest); + // 更新库存信息 + stockDataService.updateStockInfo(confirmWorkRequest.getStockConfirm(), confirmWorkRequest.getStandId(), confirmWorkRequest.getUserName(), "配料拣选"); + // 查询库存获得当前载具中存储的库存列表 + LambdaQueryWrapper stockQueryWrapper = new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, thisPickTask.getVehicleId()) + .gt(TAppStock::getRealNum, 0); + List stockList = appStockService.list(stockQueryWrapper); + // 界面直接点击确认/放行 + if (!stockList.isEmpty()) { + WorkConfirmVo resultVo = conveyTaskService.getCurrentStandWork(thisPickTask); + if (resultVo != null) { + return BaseWmsApiResponse.warn("当前载具还有工作,请根据界面信息进行拣配。"); + } + // 判断还有没有当前站台的其他拣选任务 + TaskConfirmVo taskConfirmVo = conveyTaskService.getCurrentStandTask(thisPickTask); + if (taskConfirmVo != null) { + return BaseWmsApiResponse.warn("当前载具还有其他拣选任务,请切换到出库界面进行拣配。"); + } + } else { + // 取消后续拣选任务 + conveyTaskService.cancelOtherStandPickTasks(thisPickTask.getVehicleId(), thisPickTask.getPickStand()); + } + // 放行 + if (conveyTaskService.releaseStandVehicle(thisPickTask)) { + return BaseWmsApiResponse.success("确认成功。"); + } else { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("释放箱子失败。"); + } + } + + /** + * 查找图纸---实现 + * + * @param request 请求参数 + * @return 图纸 + */ + @Override + public WmsApiResponse getImageOfWork(BaseWmsRequest request) { + if (request == null || StringUtils.isEmpty(request.getStandId())) { + return WmsApiResponse.error("请求缺少信息,请输入站台号。", null); + } + // 查询是否已经有正在拣选的 + List standWorkList = appStandWorkService.list(new LambdaQueryWrapper() + .eq(TAppStandWork::getStandId, request.getStandId())); + if (standWorkList == null || standWorkList.isEmpty()) { + return WmsApiResponse.error("当前站台没有正在拣选的工作。", null); + } + TAppStandWork nowWork = standWorkList.getFirst(); + int imageType = 1;// 总成 + if (StringUtils.isNotEmpty(nowWork.getSingleProductId())) { + imageType = 2;// 单片 + } + // 查询对应的图纸 + List imageList = appImageService.list(new LambdaQueryWrapper() + .eq(TAppImage::getProductId, nowWork.getProductId()) + .eq(TAppImage::getBoxNo, nowWork.getBoxNo()) + .eq(TAppImage::getImageType, imageType)); + if (imageList == null || imageList.isEmpty()) { + return WmsApiResponse.error("成品号:" + nowWork.getProductId() + ",料盒号:" + nowWork.getBoxNo() + ",没有图纸。", null); + } + // 查询到存放图片的ip + String imageIp = getImageIp(); + String imagePath; + if (imageList.getFirst().getImagePath().startsWith(".")) { + imagePath = imageList.getFirst().getImagePath().substring(1); + } else { + imagePath = imageList.getFirst().getImagePath(); + } + ImageVo imageVo = new ImageVo( + imageList.getFirst().getImageId(), + imageList.getFirst().getProductId(), + imageList.getFirst().getBoxNo(), + imageIp, + imagePath, + imageList.getFirst().getImageName(), + imageList.getFirst().getImageDetail(), + imageList.getFirst().getImageType() + ); + return WmsApiResponse.success("获取图纸成功。", imageVo); + } + + /** + * 配料界面获取料盒信息 + * + * @param request 请求 + * @return 显示信息 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public WmsApiResponse getBoxesAndLacks(BaseWmsRequest request) { + if (StringUtils.isEmpty(request.getStandId())) { + // 站台号不能为空 + return WmsApiResponse.error("请求缺少信息,请输入站台号。", null); + } + // 查询当前站台的拣货工作 + List standWorkList = appStandWorkService.list(new LambdaQueryWrapper() + .eq(TAppStandWork::getStandId, request.getStandId())); + if (standWorkList == null || standWorkList.isEmpty()) { + return WmsApiResponse.error("当前站台没有正在拣选的工作。", null); + } + TAppStandWork thisStandWork = standWorkList.getFirst(); + // 查询对应的dbs + List dbsList = appDbsService.list(new LambdaQueryWrapper() + .eq(TAppDbs::getWorkOrder, thisStandWork.getWorkOrder())); + if (dbsList == null || dbsList.isEmpty()) { + return WmsApiResponse.error("DBS数据异常:不存在工单" + thisStandWork.getWorkOrder() + "。", null); + } + TAppDbs thisDbs = dbsList.getFirst(); + // 计划产量 + int planProduction = thisDbs.getPlanProduction(); + // 结果集 + BoxSummary boxSummary = new BoxSummary(); + boxSummary.setWorkOrder(thisStandWork.getWorkOrder()); + boxSummary.setProductId(thisStandWork.getProductId()); + boxSummary.setSingleProductId(StringUtils.isEmpty(thisStandWork.getSingleProductId()) ? thisStandWork.getProductId() : thisStandWork.getSingleProductId()); + boxSummary.setBoxNo(thisStandWork.getBoxNo()); + // 设置打印标签相关的信息 + boxSummary.setProductIdOrigin(thisDbs.getProductIdOrigin()); + boxSummary.setKittingDate(thisDbs.getTestPlanStartDate()); + boxSummary.setProduceDate(thisDbs.getPntPlanStartDate()); + boxSummary.setTestNo(thisDbs.getTestNo()); + boxSummary.setProductionQty(planProduction); + List goodsLackSummary = new ArrayList<>(); + // 查询所有库存 + List stockList = appStockService.list(new LambdaQueryWrapper().gt(TAppStock::getRealNum, 0)); + // 生成物料数量map + Map goodsMap = new HashMap<>(); + for (TAppStock stock : stockList) { + if (goodsMap.containsKey(stock.getGoodsId())) { + goodsMap.replace(stock.getGoodsId(), goodsMap.get(stock.getGoodsId()) + stock.getRealNum()); + } else { + goodsMap.put(stock.getGoodsId(), stock.getRealNum()); + } + } + // 查询所有的库外物料信息 + List outGoodsList = appGoodsService.list(new LambdaQueryWrapper() + .notLike(TAppGoods::getPutArea, "ASRS")); + List outGoodsIds = outGoodsList.stream().map(TAppGoods::getGoodsId).distinct().toList(); + // 查询总成或者单片 + if (StringUtils.isNotEmpty(thisStandWork.getSingleProductId())) { + // 单片配料的是单片 + List singleProductList = appSingleProductService.list(new LambdaQueryWrapper() + .eq(TAppSingleProduct::getProductId, thisStandWork.getSingleProductId()) + .eq(TAppSingleProduct::getBoxNo, thisStandWork.getBoxNo())); + if (singleProductList == null || singleProductList.isEmpty()) { + return WmsApiResponse.error("单片数据异常:不存在单片" + thisStandWork.getSingleProductId() + ",料盒号:" + thisStandWork.getBoxNo() + "。", null); + } + // 最大料盒数量 + int maxBoxQty = 0; + for (TAppSingleProduct singleProduct : singleProductList) { + // 设置料盒数量 + int needNum = singleProduct.getQuantity1Pair() * planProduction; + int tempBoxQty = Math.ceilDiv(planProduction, singleProduct.getQuantityOfPair()); + if (tempBoxQty > maxBoxQty) { + maxBoxQty = tempBoxQty; + } + // 判断是否缺料 + if (!outGoodsIds.contains(singleProduct.getGoodsId()) + && (!goodsMap.containsKey(singleProduct.getGoodsId()) || goodsMap.get(singleProduct.getGoodsId()) < needNum)) { + // 缺料 + int stockNum = goodsMap.getOrDefault(singleProduct.getGoodsId(), 0); + goodsLackSummary.add(new GoodsLackSummary( + singleProduct.getGoodsId(), + needNum, + stockNum, + needNum - stockNum + )); + } + } + // 设置料盒数量 + boxSummary.setBoxQty(maxBoxQty); + } else { + // 配料的是总成 + List productList = appProductService.list(new LambdaQueryWrapper() + .eq(TAppProduct::getProductId, thisStandWork.getProductId()) + .eq(TAppProduct::getBoxNo, thisStandWork.getBoxNo())); + if (productList == null || productList.isEmpty()) { + return WmsApiResponse.error("总成数据异常:不存在总成" + thisStandWork.getProductId() + ",料盒号:" + thisStandWork.getBoxNo() + "。", null); + } + // 最大料盒数量 + int maxBoxQty = 0; + for (TAppProduct product : productList) { + // 设置料盒数量 + int needNum = product.getQuantity1Pair() * planProduction; + int tempBoxQty = Math.ceilDiv(planProduction, product.getQuantityOfPair()); + if (tempBoxQty > maxBoxQty) { + maxBoxQty = tempBoxQty; + } + // 判断是否缺料 + if (!outGoodsIds.contains(product.getGoodsId()) + && (!goodsMap.containsKey(product.getGoodsId()) || goodsMap.get(product.getGoodsId()) < needNum)) { + // 缺料 + int stockNum = goodsMap.getOrDefault(product.getGoodsId(), 0); + goodsLackSummary.add(new GoodsLackSummary( + product.getGoodsId(), + needNum, + stockNum, + needNum - stockNum + )); + } + } + // 设置料盒数量 + boxSummary.setBoxQty(maxBoxQty); + } + return WmsApiResponse.success("获取料盒信息成功。", new BoxDetailVo(boxSummary, goodsLackSummary)); + } + + /** + * 查询看板(分页)实现 + * + * @param kanbanQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryKanbanByPage(KanbanQuery kanbanQuery) { + Page page = kanbanQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kanbanQuery.getGoodsId()), TAppKanban::getGoodsId, kanbanQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(kanbanQuery.getKanbanId()), TAppKanban::getKanbanId, kanbanQuery.getKanbanId()) + .eq(kanbanQuery.getKanbanStatus() != null, TAppKanban::getKanbanStatus, kanbanQuery.getKanbanStatus()); + Page kanbanPage = appKanbanService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(kanbanPage, KanbanVo::ofPo); + return WmsApiResponse.success("查询看板数据成功", pageVo); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public BaseWmsApiResponse genClcKanbanRequirement(GenKanbanRequirementRequest genRequest) { + if (genRequest.getPlanStartDateFrom() == null || genRequest.getPlanStartDateTo() == null) { + return BaseWmsApiResponse.error("请选择开始时间和结束时间。"); + } + if (genRequest.getPlanStartDateFrom().isAfter(genRequest.getPlanStartDateTo())) { + return BaseWmsApiResponse.error("开始时间不能大于结束时间。"); + } + // 查找这个时间段内的所有dbs计划---未开始的 + List dbsList = appDbsService.list(new LambdaQueryWrapper() + .between(TAppDbs::getTestPlanStartDate, genRequest.getPlanStartDateFrom(), genRequest.getPlanStartDateTo()) + .lt(TAppDbs::getDbsStatus, 2)); + // 总的物料需求 + Map totalGoodsRequireMap = new HashMap<>(); + // 物料数量需求---根据总成号区分 + Map> goodsRequireByProductMap = new HashMap<>(); + // 迭代计划表,获取 + for (TAppDbs dbs : dbsList) { + Map goodsRequireMap; + // 获得物料需求 + if (dbs.getDbsStatus() == 0) { + if (goodsRequireByProductMap.containsKey(dbs.getProductId())) { + // 直接获得当前总成的物料需求 + goodsRequireMap = goodsRequireByProductMap.get(dbs.getProductId()); + } else { + // 获取这个总成的物料需求 + goodsRequireMap = getGoodsRequireMapOfProduct(dbs.getProductId()); + if (goodsRequireMap.isEmpty()) { + // 直接报错 + return BaseWmsApiResponse.error("总成" + dbs.getProductId() + "的物料需求为空,请检查数据。"); + } + // 添加这个总成的Map + goodsRequireByProductMap.put(dbs.getProductId(), goodsRequireMap); + } + // 需求*产量 + for (String goodsId : goodsRequireMap.keySet()) { + goodsRequireMap.replace(goodsId, goodsRequireMap.get(goodsId) * dbs.getPlanProduction()); + } + } else { + // 查询已经生成的工作清单里面的物料需求 + goodsRequireMap = getRemainRequireMapOfOrder(dbs.getWorkOrder()); + } + // 合并需求 + mergeRequire(totalGoodsRequireMap, goodsRequireMap); + } + // 获取需要的物料的基本信息 + List goodsIds = new ArrayList<>(totalGoodsRequireMap.keySet()); + if (goodsIds.isEmpty()) { + // 没有需求,将所有的看板需求置满 + appKanbanService.update(new LambdaUpdateWrapper() + .set(TAppKanban::getKanbanStatus, 1) + .set(TAppKanban::getLastUpdateTime, LocalDateTime.now()) + .set(TAppKanban::getLastUpdateUser, genRequest.getUserName())); + return BaseWmsApiResponse.error("所选时间段内没有工作需求。"); + } + // 所有的非库外料且看板维护的料 + List goodsList = appGoodsService.list(new LambdaQueryWrapper() + .in(TAppGoods::getGoodsId, goodsIds) + .eq(TAppGoods::getPutArea, "ASRS") + .eq(TAppGoods::getFeedingType, "Kanban")); + // 整合物料信息为map + Map filterGoodsMap = goodsList.stream().collect(Collectors.toMap(TAppGoods::getGoodsId, goods -> goods)); + // 获取筛选过的需要的物料的库存信息 + List stockList = appStockService.list(new LambdaQueryWrapper() + .in(TAppStock::getGoodsId, filterGoodsMap.keySet()) + .gt(TAppStock::getRealNum, 0)); + // 生成物料数量map + Map stockByGoodsMap = new HashMap<>(); + for (TAppStock stock : stockList) { + if (stockByGoodsMap.containsKey(stock.getGoodsId())) { + stockByGoodsMap.replace(stock.getGoodsId(), stockByGoodsMap.get(stock.getGoodsId()) + stock.getRealNum()); + } else { + stockByGoodsMap.put(stock.getGoodsId(), stock.getRealNum()); + } + } + // 生成看板需求 + List kanbanList = appKanbanService.list(new LambdaQueryWrapper() + .in(TAppKanban::getGoodsId, filterGoodsMap.keySet())); + // 更新后的看板需求 + List updateKanbanList = new ArrayList<>(); + for (String goodsId : filterGoodsMap.keySet()) { + TAppGoods thisGoods = filterGoodsMap.get(goodsId); + // 计算补货临界点 + int canFeedingNum = (thisGoods.getMaxBoxNum() - 1) * thisGoods.getBoxQty(); + // 需求数量 + int needNum = totalGoodsRequireMap.get(goodsId); + // 库存数量 + int stockNum = stockByGoodsMap.getOrDefault(goodsId, 0); + if (needNum > 0 && needNum > stockNum && stockNum <= canFeedingNum) { + // 剩余可补物料数量 + int remainKanbanGoodsNum = (thisGoods.getMaxBoxNum() * thisGoods.getBoxQty()) - stockNum; + // 剩余可补看板个数 + int remainKanbanQty = Math.floorDiv(remainKanbanGoodsNum, thisGoods.getBoxQty()); + // 可以补看板 + List thisGoodsKanbanList = kanbanList.stream() + .filter(kanban -> kanban.getGoodsId().equals(goodsId)).toList(); + for (TAppKanban kanban : thisGoodsKanbanList) { + if (remainKanbanQty == 0) { + break; + } + kanban.setKanbanStatus(0); + kanban.setLastUpdateTime(LocalDateTime.now()); + kanban.setLastUpdateUser(genRequest.getUserName()); + updateKanbanList.add(kanban); + // 可用看板个数-1 + remainKanbanQty--; + } + } + } + // 先置满所有看板需求 + appKanbanService.update(new LambdaUpdateWrapper() + .set(TAppKanban::getKanbanStatus, 1) + .set(TAppKanban::getLastUpdateTime, LocalDateTime.now()) + .set(TAppKanban::getLastUpdateUser, genRequest.getUserName())); + // 更新看板需求 + appKanbanService.updateBatchById(updateKanbanList); + return BaseWmsApiResponse.success("生成看板需求成功。"); + } + + /** + * 查询图纸---实现 + * + * @param imageQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> requestImageDetail(ImageQuery imageQuery) { + if (imageQuery == null) { + return WmsApiResponse.error("查询参数为空。", null); + } + // 查询图纸 + List imageList = appImageService.list(new LambdaQueryWrapper() + .eq(StringUtils.isNotEmpty(imageQuery.getProductId()), TAppImage::getProductId, imageQuery.getProductId()) + .eq(StringUtils.isNotEmpty(imageQuery.getBoxNo()), TAppImage::getBoxNo, imageQuery.getBoxNo()) + .eq(imageQuery.getImageType() != null, TAppImage::getImageType, imageQuery.getImageType())); + List imageVoList = new ArrayList<>(); + // 查询到存放图片的ip + String imageIp = getImageIp(); + for (TAppImage image : imageList) { + ImageVo imageVo = new ImageVo( + image.getImageId(), + image.getProductId(), + image.getBoxNo(), + imageIp, + image.getImagePath(), + image.getImageName(), + image.getImageDetail(), + image.getImageType()); + imageVoList.add(imageVo); + } + + return WmsApiResponse.success("查询图纸成功。", imageVoList); + } + + /** + * 查询DBS(分页)---实现 + * + * @param dbsQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryDbsByPage(DbsQuery dbsQuery) { + Page page = dbsQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(dbsQuery.getWorkOrder()), TAppDbs::getWorkOrder, dbsQuery.getWorkOrder()) + .like(StringUtils.isNotEmpty(dbsQuery.getProductId()), TAppDbs::getProductId, dbsQuery.getProductId()) + .eq(dbsQuery.getDbsStatus() != null, TAppDbs::getDbsStatus, dbsQuery.getDbsStatus()) + .eq(dbsQuery.getPlanStartDate() != null, TAppDbs::getTestPlanStartDate, dbsQuery.getPlanStartDate()); + Page pagePo = appDbsService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(pagePo, DbsVo::ofPo); + return WmsApiResponse.success("查询DBS数据成功", pageVo); + } + + /** + * 查询配料单列表(分页)---实现 + * + * @param kittingBomQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryKittingBomByPage(KittingBomQuery kittingBomQuery) { + if (kittingBomQuery == null || kittingBomQuery.getBomType() == null) { + return WmsApiResponse.error("查询参数为空,配料单类型必须。", null); + } + if (kittingBomQuery.getBomType() == 1) { + // 总成配料单 + Page page = kittingBomQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kittingBomQuery.getModel()), TAppProduct::getModel, kittingBomQuery.getModel()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getProductId()), TAppProduct::getProductId, kittingBomQuery.getProductId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getGoodsId()), TAppProduct::getGoodsId, kittingBomQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getBoxNo()), TAppProduct::getBoxNo, kittingBomQuery.getBoxNo()); + Page pagePo = appProductService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(pagePo, KittingBomVo::ofProduct); + return WmsApiResponse.success("查询总成配料单成功。", pageVo); + } else { + // 单片配料单 + Page page = kittingBomQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kittingBomQuery.getModel()), TAppSingleProduct::getModel, kittingBomQuery.getModel()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getProductId()), TAppSingleProduct::getProductId, kittingBomQuery.getProductId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getGoodsId()), TAppSingleProduct::getGoodsId, kittingBomQuery.getGoodsId()) + .like(StringUtils.isNotEmpty(kittingBomQuery.getBoxNo()), TAppSingleProduct::getBoxNo, kittingBomQuery.getBoxNo()); + Page pagePo = appSingleProductService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(pagePo, KittingBomVo::ofSingleProduct); + return WmsApiResponse.success("查询单片配料单成功。", pageVo); + } + } + + /** + * 配料单对应关系实现---分页 + * + * @param kittingBomRelationQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryKittingRelationByPage(KittingBomRelationQuery kittingBomRelationQuery) { + Page page = kittingBomRelationQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(kittingBomRelationQuery.getModel()), TAppProductExtend::getModel, kittingBomRelationQuery.getModel()) + .like(StringUtils.isNotEmpty(kittingBomRelationQuery.getProductId()), TAppProductExtend::getProductId, kittingBomRelationQuery.getProductId()) + .like(StringUtils.isNotEmpty(kittingBomRelationQuery.getSingleProductId()), TAppProductExtend::getSingleProductId, kittingBomRelationQuery.getSingleProductId()); + Page pagePo = appProductExtendService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(pagePo, KittingBomRelationVo::ofPo); + return WmsApiResponse.success("查询配对关系成功", pageVo); + } + + /** + * 获取当前总成号的物料需求 + * + * @param productId 总成号 + * @return 物料需求Map + */ + private Map getGoodsRequireMapOfProduct(String productId) { + Map goodsRequireMap = new HashMap<>(); + // 查询到所有的总成配料单信息 + List productList = appProductService.list(new LambdaQueryWrapper() + .eq(TAppProduct::getProductId, productId)); + for (TAppProduct product : productList) { + if (goodsRequireMap.containsKey(product.getGoodsId())) { + goodsRequireMap.replace(product.getGoodsId(), goodsRequireMap.get(product.getGoodsId()) + product.getQuantity1Pair()); + } else { + goodsRequireMap.put(product.getGoodsId(), product.getQuantity1Pair()); + } + } + // 判断是否包含单片 + List productExtendList = appProductExtendService.list(new LambdaQueryWrapper() + .eq(TAppProductExtend::getProductId, productId)); + if (productExtendList == null || productExtendList.isEmpty()) { + return goodsRequireMap; + } + // 查询对应的单片信息清单 + List singleProductIds = productExtendList.stream().map(TAppProductExtend::getSingleProductId).distinct().toList(); + List singleProductList = appSingleProductService.list(new LambdaQueryWrapper() + .in(TAppSingleProduct::getProductId, singleProductIds)); + for (TAppSingleProduct singleProduct : singleProductList) { + if (goodsRequireMap.containsKey(singleProduct.getGoodsId())) { + goodsRequireMap.replace(singleProduct.getGoodsId(), goodsRequireMap.get(singleProduct.getGoodsId()) + singleProduct.getQuantity1Pair()); + } else { + goodsRequireMap.put(singleProduct.getGoodsId(), singleProduct.getQuantity1Pair()); + } + } + return goodsRequireMap; + } + + /** + * 获得当前工单的剩余物料需求 + * + * @param workOrder 工单号 + * @return 物料需求Map + */ + private Map getRemainRequireMapOfOrder(String workOrder) { + Map goodsRequireMap = new HashMap<>(); + // 查找到这个工单下未完成的工作 + List workList = appWorkService.list(new LambdaQueryWrapper() + .eq(TAppWork::getWorkOrder, workOrder) + .ne(TAppWork::getWorkStatus, 2)); + if (workList == null || workList.isEmpty()) { + return goodsRequireMap; + } + for (TAppWork work : workList) { + if (goodsRequireMap.containsKey(work.getGoodsId())) { + goodsRequireMap.replace(work.getGoodsId(), goodsRequireMap.get(work.getGoodsId()) + work.getNeedNum() - work.getFinishNum()); + } else { + goodsRequireMap.put(work.getGoodsId(), work.getNeedNum() - work.getFinishNum()); + } + } + return goodsRequireMap; + } + + /** + * 合并需求 + * + * @param originRequireMap 原需求Map + * @param additionalRequireMap 额外需求Map + */ + private void mergeRequire(Map originRequireMap, Map additionalRequireMap) { + if (originRequireMap.isEmpty() || additionalRequireMap.isEmpty()) { + return; + } + // 迭代处理需求 + for (String key : additionalRequireMap.keySet()) { + if (originRequireMap.containsKey(key)) { + // 叠加替换 + originRequireMap.replace(key, originRequireMap.get(key) + additionalRequireMap.get(key)); + } else { + // 新增 + originRequireMap.put(key, additionalRequireMap.get(key)); + } + } + } + + /** + * 获得一条库外料工作 + * + * @param standId 站台号 + * @param thisStandWork 站台工作 + * @return 结果 + */ + private WorkConfirmVo getOutGoodsStandWork(String standId, TAppStandWork thisStandWork) { + // 查找对应的库内料工作---一次性只能拣配一种料,一个料盒(因为要覆盖到一张图纸) + List works = appWorkService.list(new LambdaQueryWrapper() + .eq(TAppWork::getIsOut, 1) + .eq(TAppWork::getWorkOrder, thisStandWork.getWorkOrder()) + .eq(TAppWork::getBoxNo, thisStandWork.getBoxNo()) + .eq(TAppWork::getWorkStand, standId) + .notIn(TAppWork::getWorkStatus, -1, 2)); + for (TAppWork work : works) { + if (work.getNeedNum() > work.getFinishNum()) { + // 当前工作剩余需求数量 + int thisNeedNum = work.getNeedNum() - work.getFinishNum(); + // 命中,开始设置返回数据 + OrderConfirmEntity orderConfirmVo = new OrderConfirmEntity( + work.getWorkOrder(), + work.getProductId(), + work.getSingleProductId(), + work.getGoodsId(), + work.getBoxNo(), + thisNeedNum, + thisNeedNum + ); + // 查找到这个库外料 + TAppGoods outGoods = new TAppGoods(); + try { + outGoods = appGoodsService.getOne(new LambdaQueryWrapper() + .eq(TAppGoods::getGoodsId, work.getGoodsId())); + } catch (Exception e) { + log.error("物料{}存在多个选项。", work.getGoodsId()); + } + StockConfirmEntity stockConfirmVo = new StockConfirmEntity( + "", + "库外料", + outGoods.getGoodsId(), + 0, + 0, + 1, + outGoods.getPutArea(), + 0 + ); + return new WorkConfirmVo(orderConfirmVo, stockConfirmVo); + } + } + return null; + } + + /** + * 更新工作信息 + * + * @param confirmWorkRequest 工作确认信息 + */ + private void updateWorkInfo(ConfirmWorkRequest confirmWorkRequest) { + // 判断请求是否为空 + if (confirmWorkRequest == null) { + return; + } + OrderConfirmEntity orderConfirm = confirmWorkRequest.getOrderConfirm(); + if (orderConfirm == null || StringUtils.isEmpty(orderConfirm.getWorkOrder()) || StringUtils.isEmpty(orderConfirm.getProductId()) + || StringUtils.isEmpty(orderConfirm.getGoodsId()) || StringUtils.isEmpty(orderConfirm.getBoxNo()) + || orderConfirm.getRealPickQty() == null) { + return; + } + // 查询对应的工作信息 + TAppWork work = appWorkService.getOne(new LambdaQueryWrapper() + .eq(TAppWork::getWorkOrder, orderConfirm.getWorkOrder()) + .eq(TAppWork::getProductId, orderConfirm.getProductId()) + .eq(StringUtils.isNotEmpty(orderConfirm.getSingleProductId()), TAppWork::getSingleProductId, orderConfirm.getSingleProductId()) + .eq(TAppWork::getGoodsId, orderConfirm.getGoodsId()) + .eq(TAppWork::getBoxNo, orderConfirm.getBoxNo()) + ); + if (work != null && orderConfirm.getRealPickQty() >= 0) { + work.setFinishNum(work.getFinishNum() + orderConfirm.getRealPickQty()); + if (work.getFinishNum() >= work.getNeedNum()) { + work.setWorkStatus(2); + work.setLackStatus(0); + work.setFinishTime(LocalDateTime.now()); + } + work.setWorkUser(confirmWorkRequest.getUserName()); + // 更新 + appWorkService.updateById(work); + } + // 清除当前站台的正在工作信息 + appStandWorkService.update(new LambdaUpdateWrapper() + .set(TAppStandWork::getGoodsId, "") + .set(TAppStandWork::getPlanPickQty, 0) + .set(TAppStandWork::getRealPickQty, 0) + .set(TAppStandWork::getStockId, "") + .set(TAppStandWork::getVehicleId, "") + .set(TAppStandWork::getPlanRemainQty, 0) + .set(TAppStandWork::getRealRemainQty, 0) + .set(TAppStandWork::getIsOut, 0) + .set(TAppStandWork::getPutArea, "") + .eq(TAppStandWork::getStandId, confirmWorkRequest.getStandId())); + // 同时修正库存剩余数量 + if (confirmWorkRequest.getStockConfirm() != null) { + if (!Objects.equals(orderConfirm.getRealPickQty(), orderConfirm.getPlanPickQty())) { + // 判断当前的库存确认中是不是库外料 + StockConfirmEntity stockConfirm = confirmWorkRequest.getStockConfirm(); + if (stockConfirm.getIsOut() != 1) { + // 修正剩余库存数量 + int change = orderConfirm.getRealPickQty() - orderConfirm.getPlanPickQty(); + stockConfirm.setRealRemainQty(stockConfirm.getRealRemainQty() + change); + confirmWorkRequest.setStockConfirm(stockConfirm); + } + } + } + } + + /** + * 设置站台信息 + * + * @param resultVo 结果视图 + * @param thisStandWork 当前站台工作信息 + */ + private void setStandWork(WorkConfirmVo resultVo, TAppStandWork thisStandWork) { + thisStandWork.setGoodsId(resultVo.getOrderConfirmVo().getGoodsId()); + thisStandWork.setPlanPickQty(resultVo.getOrderConfirmVo().getPlanPickQty()); + thisStandWork.setRealPickQty(resultVo.getOrderConfirmVo().getRealPickQty()); + thisStandWork.setStockId(resultVo.getStockConfirmVo().getStockId()); + thisStandWork.setVehicleId(resultVo.getStockConfirmVo().getVehicleId()); + thisStandWork.setPlanRemainQty(resultVo.getStockConfirmVo().getPlanRemainQty()); + thisStandWork.setRealRemainQty(resultVo.getStockConfirmVo().getRealRemainQty()); + thisStandWork.setIsOut(resultVo.getStockConfirmVo().getIsOut()); + thisStandWork.setPutArea(resultVo.getStockConfirmVo().getPutArea()); + } + + /** + * 获取imageIp + * + * @return 获取图纸ip + */ + private String getImageIp() { + String imageIp = ""; + try { + imageIp = appCommon.getConfigByKey(AppConfigKeyEnums.IMAGE_IP.getKey()); + } catch (Exception e) { + log.error("图纸存放ip不正确。"); + } + return imageIp; + } +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java new file mode 100644 index 0000000..5471837 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/LocationControllerServiceImpl.java @@ -0,0 +1,65 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.wms_main.dao.ITAppLocationService; +import com.wms_main.model.dto.query.LocationQuery; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.po.TAppLocation; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.controller.ILocationControllerService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import java.util.ArrayList; +import java.util.List; + +/** + * 库位控制类服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class LocationControllerServiceImpl implements ILocationControllerService { + private final ITAppLocationService appLocationService;// 库位服务 + + /** + * 实现 + * @param locationQuery 查询参数 + * @return 处理结果 + */ + @Override + @Transactional + public BaseWmsApiResponse genLocations(LocationQuery locationQuery) { + List newLocationList = new ArrayList<>(); + for (int row = 1; row <= 4; row++) { + for (int col = 1; col <= 42; col++) { + for (int layer = 1; layer <= 12; layer++) { + String locationId = "A" + StringUtils.padLeft(String.valueOf(row), "0", 2) + + "-" + StringUtils.padLeft(String.valueOf(col), "0", 2) + + "-" + StringUtils.padLeft(String.valueOf(layer), "0", 2); + TAppLocation newLocation = new TAppLocation( + locationId, + "", + 1, + layer == 2 ? 1 : 0, + 0, + 0, + (row + 1)/2, + (row + 1)/2, + row, + col, + layer, + 1, + "", + 1, + "" + ); + newLocationList.add(newLocation); + } + } + } + appLocationService.saveBatch(newLocationList); + return BaseWmsApiResponse.success("成功创建了" + newLocationList.size() + "个库位。"); + } +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java new file mode 100644 index 0000000..6de86c0 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/LoginControllerServiceImpl.java @@ -0,0 +1,176 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wms_main.constant.AppConstant; +import com.wms_main.dao.ITAppStandService; +import com.wms_main.dao.ITSysMenuService; +import com.wms_main.dao.ITSysUserService; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.po.TAppStand; +import com.wms_main.model.po.TSysMenu; +import com.wms_main.model.po.TSysUser; +import com.wms_main.model.vo.wms.*; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.controller.ILoginControllerService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +import java.util.Collections; +import java.util.LinkedList; +import java.util.List; + +import static com.wms_main.model.dto.response.wms.WmsApiResponse.error; +import static com.wms_main.model.dto.response.wms.WmsApiResponse.success; + +/** + * 登录控制类服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class LoginControllerServiceImpl implements ILoginControllerService { + private final ITSysUserService userService;// User服务 + private final ITSysMenuService menuService;// Menu服务 + private final ITAppStandService appStandService;// 站台服务 + + /** + * 实现 + * @param loginAccount 登录账户 + * @param loginPassword 登录密码 + * @param ip IP地址 + * @return 结果 + */ + @Override + public WmsApiResponse loginWithAuth(String loginAccount, String loginPassword, String ip) { + return genLoginResponse(loginAccount, loginPassword, ip, 1); + } + + /** + * 实现 + * @param loginAccount 登录账户 + * @param ip IP地址 + * @return 结果 + */ + @Override + public WmsApiResponse loginWithOutAuth(String loginAccount, String ip) { + return genLoginResponse(loginAccount, "", ip, 2); + } + + /** + * 处理登录 + * @param loginAccount 登录账户 + * @param loginPassword 登录密码 + * @param ip ip地址 + * @param loginType 登录类型;1:账号密码登录;2:免密登录 + * @return 结果 + */ + private WmsApiResponse genLoginResponse(String loginAccount, String loginPassword, String ip, int loginType) { + // 检验登录账号是否输入 + if(StringUtils.isEmpty(loginAccount)) { + return error("请输入账号。", null); + } + // 判断账号是否正确 + TSysUser user; + if (loginType == 1) { + user = userService.getUserWithAuth(loginAccount, loginPassword); + } else { + user = userService.getUserWithOutAuth(loginAccount); + } + if (user == null) { + return error("账号或密码不正确。", null); + } + // 开始设置登录返回信息 + UserLoginVo userLoginVo = new UserLoginVo(); + // 设置用户信息 + userLoginVo.setUser(UserVo.ofPo(user)); + // 通过角色获取到所有菜单选项 + userLoginVo.setMenuList(getMenuVoListByRoleId(user.getRoleId())); + // 根据请求的ip获取站台相关信息 + userLoginVo.setStand(getStandVoByLoginIp(ip)); + + return success("登录成功。", userLoginVo); + } + + /** + * 根据roleId获取到菜单列表 + * @param roleId 角色id + * @return 菜单列表 + */ + private List getMenuVoListByRoleId(String roleId) { + if (StringUtils.isEmpty(roleId)) { + return Collections.emptyList(); + } + List menuPoList; + if (roleId.equals(AppConstant.ADMIN_ID)) { + // 管理员获得所得菜单权限 + menuPoList = menuService.list(); + } else { + menuPoList = menuService.selMenuByRoleId(roleId); + } + List menuVoList = new LinkedList<>(); + // 查找一级菜单 + // TODO 这里可以用递归优化,减少代码量 + for (TSysMenu firstMenu : menuPoList) { + if (AppConstant.ROOT_MENU_ID.equals(firstMenu.getParentId())) {// 查找到所有的一级子菜单 + MenuVo tempFirstMenu = new MenuVo(); + tempFirstMenu.setId(firstMenu.getMenuId());// ID + tempFirstMenu.setLabelName(firstMenu.getLabelName());// 菜单显示名称 + tempFirstMenu.setIconValue(firstMenu.getIconValue());// 图标 + tempFirstMenu.setPath(firstMenu.getPath());// 路径 + // 设置二级菜单 + List tempFirstMenuChildren = new LinkedList<>(); + for (TSysMenu secondMenu : menuPoList) { + if (firstMenu.getMenuId().equals(secondMenu.getParentId())) { + MenuVo tempSecondMenu = new MenuVo(); + tempSecondMenu.setId(secondMenu.getMenuId());// ID + tempSecondMenu.setLabelName(secondMenu.getLabelName());// 菜单显示名称 + tempSecondMenu.setIconValue(secondMenu.getIconValue());// 图标 + tempSecondMenu.setPath(secondMenu.getPath());// 路径 + // 设置按钮 + List tempSecondMenuChildren = new LinkedList<>(); + for (TSysMenu thirdMenu : menuPoList) { + if (secondMenu.getMenuId().equals(thirdMenu.getParentId())) { + MenuVo tempThirdMenu = new MenuVo(); + tempSecondMenu.setId(thirdMenu.getMenuId());// ID + tempSecondMenu.setLabelName(thirdMenu.getLabelName());// 菜单显示名称 + tempSecondMenu.setIconValue(thirdMenu.getIconValue());// 图标 + tempSecondMenu.setPath(thirdMenu.getPath());// 路径 + // 添加按钮 + tempSecondMenuChildren.add(tempThirdMenu); + } + } + tempSecondMenu.setChildren(tempSecondMenuChildren); + // 添加二级菜单 + tempFirstMenuChildren.add(tempSecondMenu); + } + } + tempFirstMenu.setChildren(tempFirstMenuChildren); + // 添加一级菜单 + menuVoList.add(tempFirstMenu); + } + } + + return menuVoList; + } + + /** + * 根据登录IP获取站台信息 + * @param loginIp 登录ip + * @return 返回结果 + */ + private StandVo getStandVoByLoginIp(String loginIp) { + StandVo standVo = new StandVo(); + List standPoList = appStandService.list(new LambdaQueryWrapper().eq(TAppStand::getStandIp, loginIp)); + if (standPoList == null || standPoList.isEmpty()) { + // 非工作站台 + standVo.setStandId("非工作站台"); + standVo.setStandType(99); + } else { + // 多个选项只设置第一个 + standVo.setStandId(standPoList.getFirst().getStandId()); + standVo.setStandType(standPoList.getFirst().getStandType()); + } + return standVo; + } +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java new file mode 100644 index 0000000..dbc3114 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/StockControllerServiceImpl.java @@ -0,0 +1,51 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; +import com.wms_main.dao.ITAppStockService; +import com.wms_main.model.dto.query.StockQuery; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.po.TAppStock; +import com.wms_main.model.vo.wms.PageVo; +import com.wms_main.model.vo.wms.StockVo; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.controller.IStockControllerService; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; + +/** + * 库存控制类 服务实现 + */ +@Service +@RequiredArgsConstructor +public class StockControllerServiceImpl implements IStockControllerService { + private final ITAppStockService appStockService;// 库存服务 + + /** + * 查询库存---分页实现 + * + * @param stockQuery 查询参数 + * @return 查询结果 + */ + @Override + public WmsApiResponse> queryStocksByPage(StockQuery stockQuery) { + Page page = stockQuery.toMpPage(); + LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper() + .like(StringUtils.isNotEmpty(stockQuery.getVehicleId()), TAppStock::getVehicleId, stockQuery.getVehicleId()) + .like(StringUtils.isNotEmpty(stockQuery.getLocationId()), TAppStock::getLocationId, stockQuery.getLocationId()) + .like(StringUtils.isNotEmpty(stockQuery.getGoodsId()), TAppStock::getGoodsId, stockQuery.getGoodsId()) + .eq(stockQuery.getStockStatus() != null, TAppStock::getStockStatus, stockQuery.getStockStatus()) + .eq(stockQuery.getGoodsStatus() != null, TAppStock::getGoodsStatus, stockQuery.getGoodsStatus()); + if (stockQuery.getFromDate() != null) { + lambdaQueryWrapper.ge(TAppStock::getFirstInTime, stockQuery.getFromDate().atStartOfDay()); + } + if (stockQuery.getToDate() != null) { + // toDate + 1天的凌晨。 + lambdaQueryWrapper.lt(TAppStock::getFirstInTime, stockQuery.getToDate().plusDays(1).atStartOfDay()); + } + Page stockPage = appStockService.page(page, lambdaQueryWrapper); + + PageVo pageVo = PageVo.of(stockPage, StockVo::ofPo); + return WmsApiResponse.success("查询库存数据成功", pageVo); + } +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java new file mode 100644 index 0000000..730d83c --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/TaskControllerServiceImpl.java @@ -0,0 +1,655 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.app.AppCommon; +import com.wms_main.constant.AppConstant; +import com.wms_main.constant.enums.wcs.WcsStackerTaskStatusEnums; +import com.wms_main.constant.enums.wcs.WcsStackerTaskTypeEnums; +import com.wms_main.constant.enums.wms.*; +import com.wms_main.dao.*; +import com.wms_main.model.bo.wcs.WcsStackerTask; +import com.wms_main.model.bo.wms.GoodsInfoForTask; +import com.wms_main.model.bo.wms.StockConfirmEntity; +import com.wms_main.model.bo.wms.TaskConfirmEntity; +import com.wms_main.model.bo.wms.WmsPickTask; +import com.wms_main.model.dto.request.wcs.WcsBoxArriveRequest; +import com.wms_main.model.dto.request.wcs.WcsTaskResultRequest; +import com.wms_main.model.dto.request.wcs.WcsVehicleInRequest; +import com.wms_main.model.dto.request.wms.*; +import com.wms_main.model.dto.response.wcs.BaseWcsApiResponse; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; +import com.wms_main.model.dto.response.wms.BaseWmsApiResponse; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.model.po.*; +import com.wms_main.model.vo.wms.TaskConfirmVo; +import com.wms_main.model.vo.wms.WorkConfirmVo; +import com.wms_main.repository.utils.ConvertUtils; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.business.IConveyTaskService; +import com.wms_main.service.business.IStackerTaskService; +import com.wms_main.service.business.IStockDataService; +import com.wms_main.service.controller.ITaskControllerService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import java.time.LocalDateTime; +import java.util.*; + +/** + * 任务控制类 服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class TaskControllerServiceImpl implements ITaskControllerService { + private final ITAppWcsTaskService appWcsTaskService;// wcs任务服务 + private final ITAppWcsTaskBakService appWcsTaskBakService;// wcs任务备份服务 + private final ITAppTaskService appWmsTaskService;// wms任务服务 + private final IStackerTaskService stackerTaskService;// 堆垛机任务服务 + private final ITAppLocationService appLocationService;// 库位服务 + private final ITAppPickTaskService appPickTaskService;// 拣选任务服务 + private final ITAppVehicleService appVehicleService;// 载具服务 + private final ITAppStockService appStockService;// 库存服务 + private final IConveyTaskService conveyTaskService;// 输送线任务服务 + private final ITAppStandService appStandService;// 站台服务 + private final ITAppOutsService appOutsService;// 出库单服务 + private final IStockDataService stockDataService;// 库存数据服务 + private final ITAppOutsRecordService appOutsRecordService;// 出库单记录服务 + private final AppCommon appCommon; + + /** + * 实现 + * + * @param stockInRequest 请求信息 + * @return 响应结果 + */ + @Override + @Transactional + public BaseWmsApiResponse requireStockIn(StockInRequest stockInRequest) { + // 判断请求信息的正确性。 + if (stockInRequest == null || StringUtils.isEmpty(stockInRequest.getVehicleId())) { + return BaseWmsApiResponse.error("请求参数不完整,缺少载具号。"); + } + // 校验当前是否在库 + if (appVehicleService.exists(new LambdaQueryWrapper() + .eq(TAppVehicle::getVehicleId, stockInRequest.getVehicleId()) + .eq(TAppVehicle::getVehicleStatus, WmsVehicleStatusEnums.ON.getCode()))) { + return BaseWmsApiResponse.error("当前载具显示已在库中,无法再次入库。"); + } + // 判断这个箱子是否有其他的wcs任务 + if (appWcsTaskService.exists(new LambdaQueryWrapper() + .eq(TAppWcsTask::getVehicleId, stockInRequest.getVehicleId()))) { + return BaseWmsApiResponse.error("当前载具仍有未完成的WCS任务,无法创建新的入库任务。"); + } + // 判断这个箱子是否有其他的wms任务 + if (appWmsTaskService.exists(new LambdaQueryWrapper() + .eq(TAppTask::getVehicleId, stockInRequest.getVehicleId()))) { + return BaseWmsApiResponse.error("当前载具仍有未完成的WMS任务,无法创建新的入库任务。"); + } + // 非空载具入库,但是未包含物料信息,设置为空 + if (!stockInRequest.isEmptyTask() && (stockInRequest.getGoodsInfo() == null || stockInRequest.getGoodsInfo().isEmpty())) { + stockInRequest.setEmptyTask(true); + } + // 空载具入库但是请求包含物料信息,设置为非空 + if (stockInRequest.isEmptyTask() && stockInRequest.getGoodsInfo() != null && !stockInRequest.getGoodsInfo().isEmpty()) { + stockInRequest.setEmptyTask(false); + } + // 查询当前载具的库存信息 + List thisVehicleStocks = appStockService.list( + new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, stockInRequest.getVehicleId())); + if (stockInRequest.isEmptyTask()) { + // 创建空载具入库任务 + TAppTask task = new TAppTask( + UUIDUtils.getNewUUID(), + WmsTaskTypeEnums.IN.getCode(), + WmsStackerTaskStatusEnums.TEMP.getCode(), + 1, + stockInRequest.getVehicleId(), + stockInRequest.getOrigin(), + null, + null, + LocalDateTime.now(), + null, + AppConstant.EMPTY_GOODS_ID, + 0, + 0, + stockInRequest.getUserName(), + "", + stockInRequest.getStandId(), + "" + ); + try { + // 保存任务 + appWmsTaskService.save(task); + } catch (Exception e) { + return BaseWmsApiResponse.error("创建空载具入库任务失败。"); + } + } else { + Map goodsIdTaskMap = new HashMap<>(); + Map goodsMap = new HashMap<>(); + // 循环物料生成入库任务 + for (GoodsInfoForTask goodsInfoForTask : stockInRequest.getGoodsInfo()) { + if (goodsIdTaskMap.containsKey(goodsInfoForTask.getGoodsId())) { + // 如果同一物料,则数量叠加。 + TAppTask task = goodsIdTaskMap.get(goodsInfoForTask.getGoodsId()); + task.setOpNum(task.getOpNum() + goodsInfoForTask.getOpNum()); + goodsIdTaskMap.replace(goodsInfoForTask.getGoodsId(), task); + } else { + // 判断当前料号是否存在于立库信息中 + TAppGoods goods = appCommon.getInstantGoodsByGoodsId(goodsInfoForTask.getGoodsId()); + if (goods == null) { + return BaseWmsApiResponse.error("入库物料列表中有物料不在立库维护信息中。物料号:" + goodsInfoForTask.getGoodsId() + "。"); + } + if (!Objects.equals(goods.getPutArea(), "ASRS")) { + return BaseWmsApiResponse.error("非库内料不允许入库。物料号:" + goodsInfoForTask.getGoodsId() + "。"); + } + // 创建入库任务 + TAppTask task = new TAppTask( + UUIDUtils.getNewUUID(), + WmsTaskTypeEnums.IN.getCode(), + WmsStackerTaskStatusEnums.TEMP.getCode(), + 1, + stockInRequest.getVehicleId(), + stockInRequest.getOrigin(), + null, + null, + LocalDateTime.now(), + null, + goodsInfoForTask.getGoodsId(), + goodsInfoForTask.getOpNum(), + 0, + stockInRequest.getUserName(), + goodsInfoForTask.getRemark(), + stockInRequest.getStandId(), + goods.getGoodsDescription() + ); + goodsIdTaskMap.put(goodsInfoForTask.getGoodsId(), task); + goodsMap.put(goodsInfoForTask.getGoodsId(), goods); + } + if (goodsMap.containsKey(goodsInfoForTask.getGoodsId())) { + // 判断数量是否超载 + TAppGoods thisGoods = goodsMap.get(goodsInfoForTask.getGoodsId()); + int maxQty1Vehicle = thisGoods.getBoxQty() * thisGoods.getMaxBoxNum(); + int oldStockNum = 0; + if (thisVehicleStocks != null && !thisVehicleStocks.isEmpty()) { + // 计算出该物料的库存数量 + oldStockNum = thisVehicleStocks.stream() + .filter(stock -> stock.getGoodsId().equals(goodsInfoForTask.getGoodsId())) + .mapToInt(TAppStock::getRealNum) + .sum(); + } + if (goodsIdTaskMap.get(goodsInfoForTask.getGoodsId()).getOpNum() + oldStockNum > maxQty1Vehicle) { + return BaseWmsApiResponse.error("物料号:" + goodsInfoForTask.getGoodsId() + "数量超过阈值" + maxQty1Vehicle + ",不允许入库。"); + } + } + } + try { + appWmsTaskService.saveBatch(goodsIdTaskMap.values()); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("创建入库任务失败。"); + } + } + + return BaseWmsApiResponse.success("生成入库任务成功。"); + } + + /** + * 请求出库---实现 + * + * @param stockOutRequest 请求信息 + * @return 处理结果 + */ + @Override + @Transactional + public BaseWmsApiResponse requireStockOut(StockOutRequest stockOutRequest) { + // 保存 + if (stockOutRequest == null || stockOutRequest.getOutType() == null || stockOutRequest.getNeedNum() == null + || stockOutRequest.getNeedNum() <= 0 || StringUtils.isEmpty(stockOutRequest.getDestination())) { + return BaseWmsApiResponse.error("请求参数不完整。"); + } + // 判断终点对不对 + if (!appStandService.exists(new LambdaQueryWrapper().eq(TAppStand::getStandId, stockOutRequest.getDestination()))) { + return BaseWmsApiResponse.error("请求的终点站台不存在。"); + } + // 针对不同的出库类型验证请求 + if (stockOutRequest.getOutType().equals(WmsOutTypeEnums.EMPTY.getCode())) { + // 如果指定了载具号,则验证该载具是否为空载具 + if (StringUtils.isNotEmpty(stockOutRequest.getVehicleId())) { + // 查询这个载具号 + boolean haveThisEmptyVehicleFlag = appVehicleService.exists(new LambdaQueryWrapper() + .eq(TAppVehicle::getVehicleId, stockOutRequest.getVehicleId()) + .eq(TAppVehicle::getVehicleStatus, WmsVehicleStatusEnums.ON.getCode()) + .eq(TAppVehicle::getIsEmpty, 1) + ); + if (!haveThisEmptyVehicleFlag) { + return BaseWmsApiResponse.error("请求错误:目标不存在。"); + } + } else { + // 判断空载具数量够不够 + + } + } + // 添加任务 + TAppOuts task = new TAppOuts( + UUIDUtils.getNewUUID(), + stockOutRequest.getGoodsId(), + stockOutRequest.getVehicleId(), + stockOutRequest.getNeedNum(), + 0, + 0, + stockOutRequest.getOutType(), + stockOutRequest.getDestination(), + stockOutRequest.getUserName() + ); + try { + appOutsService.save(task); + return BaseWmsApiResponse.success("添加出库请求成功。"); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("添加出库请求失败。"); + } + } + + /** + * 实现 + * + * @param wcsTaskResultRequest 请求信息 + * @return 响应信息 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public BaseWcsApiResponse sendTaskResult(WcsTaskResultRequest wcsTaskResultRequest) { + if (StringUtils.isEmpty(wcsTaskResultRequest.getTaskId()) || wcsTaskResultRequest.getTaskStatus() == null) { + return BaseWcsApiResponse.error("请求缺少关键信息:任务号、任务状态。"); + } + // 查询对应的wcs任务 + TAppWcsTask wcsTask = appWcsTaskService.getOne( + new LambdaQueryWrapper() + .eq(TAppWcsTask::getWcsTaskId, wcsTaskResultRequest.getTaskId()) + ); + if (wcsTask == null) { + return BaseWcsApiResponse.error("未找到对应的wcs任务。"); + } + // 转换堆垛机任务状态 + int wmsTaskStatus = ConvertUtils.convertWcsStackerTaskStatusToWmsTaskStatus(wcsTaskResultRequest.getTaskStatus()); + if (wmsTaskStatus == -1) { + return BaseWcsApiResponse.error("反馈的任务状态值无效。"); + } + // 判断反馈的任务状态是否是「已完成」 + if (Objects.equals(wcsTaskResultRequest.getTaskStatus(), WcsStackerTaskStatusEnums.FINISH.getCode())) { + // 更新wms任务状态 + appWmsTaskService.update( + new LambdaUpdateWrapper() + .set(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.FINISH.getCode()) + .set(TAppTask::getFinishTime, LocalDateTime.now()) + .eq(TAppTask::getWcsTaskId, wcsTaskResultRequest.getTaskId()) + ); + // 移除wcs任务,并向wcs备份表添加记录 + TAppWcsTaskBak wcsTaskBak = new TAppWcsTaskBak( + wcsTask.getWcsTaskId(), + wcsTask.getWcsTaskStatus(), + wcsTask.getWcsTaskType(), + wcsTask.getTaskPriority(), + wcsTask.getVehicleId(), + wcsTask.getOrigin(), + wcsTask.getDestination(), + wcsTask.getCreateTime(), + wcsTask.getSendTime(), + wcsTask.getFinishTime(), + wcsTask.getRemark() + ); + appWcsTaskService.removeById(wcsTask.getWcsTaskId()); + appWcsTaskBakService.save(wcsTaskBak); + } else { + // 更新wms任务状态 + appWmsTaskService.update( + new LambdaUpdateWrapper() + .set(TAppTask::getTaskStatus, wmsTaskStatus) + .eq(TAppTask::getWcsTaskId, wcsTaskResultRequest.getTaskId()) + ); + // 更新wcs任务状态 + appWcsTaskService.update( + new LambdaUpdateWrapper() + .set(TAppWcsTask::getWcsTaskStatus, wcsTaskResultRequest.getTaskStatus()) + .eq(TAppWcsTask::getWcsTaskId, wcsTaskResultRequest.getTaskId()) + ); + } + return BaseWcsApiResponse.success("处理任务状态反馈成功。"); + } + + /** + * 实现 + * + * @param wcsVehicleInRequest 载具请求 + * @return 响应信息 + */ + @Override + @Transactional + public WcsApiResponse wcsRequestVehicleIn(WcsVehicleInRequest wcsVehicleInRequest) { + if (StringUtils.isEmpty(wcsVehicleInRequest.getVehicleNo())) { + return WcsApiResponse.error("请求缺少关键信息:载具号。", null); + } + // 查询该载具对应的wms任务 + List wmsTasks = appWmsTaskService.list( + new LambdaQueryWrapper() + .eq(TAppTask::getVehicleId, wcsVehicleInRequest.getVehicleNo()) + .eq(TAppTask::getTaskType, WmsTaskTypeEnums.IN.getCode()) + .eq(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.TEMP.getCode()) + ); + if (wmsTasks == null || wmsTasks.isEmpty()) { + return WcsApiResponse.error("当前载具不存在任务或者任务已经下发。", null); + } + // 查询是否已经有对应wcs任务 + List wcsTasks = appWcsTaskService.list( + new LambdaQueryWrapper() + .eq(TAppWcsTask::getVehicleId, wcsVehicleInRequest.getVehicleNo()) + .eq(TAppWcsTask::getWcsTaskType, WcsStackerTaskTypeEnums.IN.getCode()) + .ne(TAppWcsTask::getWcsTaskStatus, WcsStackerTaskStatusEnums.FINISH.getCode())); + if (wcsTasks != null && !wcsTasks.isEmpty()) { + WcsStackerTask wcsStackerTask = new WcsStackerTask( + wcsTasks.getFirst().getWcsTaskId(), + wcsTasks.getFirst().getWcsTaskType(), + wcsTasks.getFirst().getVehicleId(), + wcsTasks.getFirst().getOrigin(), + wcsTasks.getFirst().getDestination(), + "WMS" + ); + return WcsApiResponse.success("载具请求入库成功。", wcsStackerTask); + } + // 判断是否已经分配库位 + String locationId = ""; + List goodsIds = new ArrayList<>(); + for (TAppTask wmsTask : wmsTasks) { + if (StringUtils.isNotEmpty(wmsTask.getDestination())) { + locationId = wmsTask.getDestination(); + break; + } + if (!goodsIds.contains(wmsTask.getGoodsId())) { + goodsIds.add(wmsTask.getGoodsId()); + } + } + if (StringUtils.isEmpty(locationId)) { + // 如果只有一个料号,那么分配优先存放区域 + TAppLocation locationFilter = new TAppLocation(); + if (goodsIds.size() == 1) { + TAppGoods thisGoods = appCommon.getInstantGoodsByGoodsId(goodsIds.getFirst()); + if (thisGoods != null && StringUtils.isNotEmpty(thisGoods.getPutArea())) { + locationFilter.setSubArea(thisGoods.getPutArea()); + } + } + // 需要申请库位 + TAppLocation targetLocation = stackerTaskService.requestOneLocation(null, wcsVehicleInRequest.getVehicleNo()); + locationId = targetLocation.getLocationId(); + } + // 解析wms任务以获得wcs任务 + TAppWcsTask wcsInTask = new TAppWcsTask(); + wcsInTask.setWcsTaskId(UUIDUtils.getNewUUID()); + wcsInTask.setWcsTaskType(WcsStackerTaskTypeEnums.IN.getCode()); + wcsInTask.setWcsTaskStatus(WcsStackerTaskStatusEnums.WAIT.getCode()); + wcsInTask.setTaskPriority(wmsTasks.getFirst().getTaskPriority()); + wcsInTask.setOrigin(wmsTasks.getFirst().getOrigin()); + wcsInTask.setDestination(locationId); + wcsInTask.setVehicleId(wmsTasks.getFirst().getVehicleId()); + wcsInTask.setCreateTime(LocalDateTime.now()); + wcsInTask.setSendTime(LocalDateTime.now()); + // 实时返回的任务 + WcsStackerTask wcsStackerTask = new WcsStackerTask( + wcsInTask.getWcsTaskId(), + wcsInTask.getWcsTaskType(), + wcsInTask.getVehicleId(), + wcsInTask.getOrigin(), + wcsInTask.getDestination(), + "WMS" + ); + try { + // 载具设置状态入库中 + appVehicleService.update(new LambdaUpdateWrapper() + .set(TAppVehicle::getVehicleStatus, WmsVehicleStatusEnums.IN.getCode()) + .eq(TAppVehicle::getVehicleId, wcsVehicleInRequest.getVehicleNo())); + // 如果有库存的话,更新库存状态为回库中 + appStockService.update(new LambdaUpdateWrapper() + .set(TAppStock::getStockStatus, WmsStockStatusEnums.BACK.getCode()) + .eq(TAppStock::getVehicleId, wcsVehicleInRequest.getVehicleNo())); + // 更新wmsTask + appWmsTaskService.update( + new LambdaUpdateWrapper() + .set(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.SEND.getCode()) + .set(TAppTask::getWcsTaskId, wcsInTask.getWcsTaskId()) + .set(TAppTask::getDestination, locationId) + .eq(TAppTask::getVehicleId, wcsVehicleInRequest.getVehicleNo()) + .eq(TAppTask::getTaskType, WmsTaskTypeEnums.IN.getCode()) + .eq(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.TEMP.getCode()) + ); + // 存储wcsTask + appWcsTaskService.save(wcsInTask); + return WcsApiResponse.success("载具请求入库成功。", wcsStackerTask); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + // 恢复库位空闲 + appLocationService.update(new LambdaUpdateWrapper() + .set(TAppLocation::getIsOccupy, 0) + .set(TAppLocation::getVehicleId, "") + .eq(TAppLocation::getLocationId, locationId)); + return WcsApiResponse.error("载具请求入库发生异常。", null); + } + } + + /** + * 实现 + * + * @param boxArriveRequest 请求信息 + * @return 响应信息 + */ + @Override + public BaseWcsApiResponse boxArrive(WcsBoxArriveRequest boxArriveRequest) { + if (boxArriveRequest == null + || StringUtils.isEmpty(boxArriveRequest.getVehicleNo()) + || StringUtils.isEmpty(boxArriveRequest.getLocation())) { + return BaseWcsApiResponse.error("请求信息不完整,缺少载具号或者点位。"); + } + // 更新当前载具到达当前点位的拣选任务为已到达 + boolean isUpdateSuccess = appPickTaskService.update(new LambdaUpdateWrapper() + .set(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.ARRIVE.getCode()) + .set(TAppPickTask::getArriveTime, LocalDateTime.now()) + .eq(TAppPickTask::getVehicleId, boxArriveRequest.getVehicleNo()) + .eq(TAppPickTask::getPickStand, boxArriveRequest.getLocation()) + .ne(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.FOR_IN.getCode())); + if (isUpdateSuccess) { + // 更新成功,返回成功 + return BaseWcsApiResponse.success("处理成功。"); + } else { + // 更新失败,返回失败 + return BaseWcsApiResponse.error("处理失败。"); + } + } + + /** + * 取消拣选任务实现 + * + * @param pickTaskRequest 请求信息 + * @return 处理结果 + */ + @Override + @Transactional + public BaseWmsApiResponse cancelPickTasks(PickTaskRequest pickTaskRequest) { + if (pickTaskRequest == null || pickTaskRequest.getPickTasks() == null || pickTaskRequest.getPickTasks().isEmpty()) { + // 更新失败,返回失败 + return BaseWmsApiResponse.error("空请求。"); + } + // 获得需要取消的拣选任务列表 + Map vehicleStandMap = new HashMap<>(); + for (WmsPickTask pickTask : pickTaskRequest.getPickTasks()) { + String key = pickTask.getVehicleId() + "_" + pickTask.getPickStand(); + if (vehicleStandMap.containsKey(key)) { + continue; + } + vehicleStandMap.put(key, pickTask); + } + int successCount = 0; + int failCount = 0; + int exceptionCount = 0; + conveyTaskService.cancelPickTasks(vehicleStandMap, successCount, failCount, exceptionCount); + return BaseWmsApiResponse.success("取消拣选任务成功" + successCount + "条,失败" + failCount + "条,异常" + exceptionCount + "条。"); + } + + /** + * 获取当前站台任务---实现 + * + * @param wmsRequest 请求信息 + * @return 获取结果 + */ + @Override + @Transactional + public WmsApiResponse getCurrentTask(BaseWmsRequest wmsRequest) { + if (wmsRequest == null || StringUtils.isEmpty(wmsRequest.getStandId())) { + // 缺少站台号 + return WmsApiResponse.error("请求缺少信息,请输入站台号。", null); + } + // 查询当前站台的拣选任务 + List pickTasks = appPickTaskService.list(new LambdaQueryWrapper() + .eq(TAppPickTask::getPickStand, wmsRequest.getStandId()) + .eq(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.ARRIVE.getCode())); + if (pickTasks == null || pickTasks.isEmpty()) { + // 当前站台没有任务 + return WmsApiResponse.error("当前站台没有任务。", null); + } + TAppPickTask thisStandPickTask = pickTasks.getFirst(); + // 查找这个载具对应的库存信息:数量>0 + List thisVehicleStocks = appStockService.list(new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, thisStandPickTask.getVehicleId()) + .gt(TAppStock::getRealNum, 0)); + if (thisVehicleStocks == null || thisVehicleStocks.isEmpty()) { + return WmsApiResponse.instanceOf(WmsApiResponseCodeEnums.WARNING.getCode(), "当前箱子已经是空箱,请直接放行。", null); + } + // 判断是否有任务需求 + TaskConfirmVo confirmVo = conveyTaskService.getCurrentStandTask(thisStandPickTask); + if (confirmVo != null) { + return WmsApiResponse.success("请根据界面提示拣选。", confirmVo); + } + return WmsApiResponse.instanceOf(WmsApiResponseCodeEnums.WARNING.getCode(), "当前箱子没有拣选需求,请直接放行。", null); + } + + /** + * 确认当前站台任务---实现 + * + * @param confirmTaskRequest 请求信息 + * @return 确认结果 + */ + @Override + @Transactional(rollbackFor = Exception.class) + public BaseWmsApiResponse confirmCurrentTask(ConfirmTaskRequest confirmTaskRequest) { + if (confirmTaskRequest == null || StringUtils.isEmpty(confirmTaskRequest.getStandId())) { + return BaseWmsApiResponse.error("请求缺少信息,请输入站台号。"); + } + // 查询当前站台上的已到达的拣选任务 + List pickTaskList = appPickTaskService.list(new LambdaQueryWrapper() + .eq(TAppPickTask::getPickStand, confirmTaskRequest.getStandId()) + .eq(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.ARRIVE.getCode())); + if (pickTaskList == null || pickTaskList.isEmpty()) { + return BaseWmsApiResponse.error("当前站台没有箱子到达, 请检查。"); + } + if (pickTaskList.size() > 1) { + return BaseWmsApiResponse.error("当前站台有多个箱子到达,请检查。"); + } + // 当前站台到达的拣选任务 + TAppPickTask thisPickTask = pickTaskList.getFirst(); + // 更新工作信息 + updateTaskInfo(confirmTaskRequest); + // 更新库存信息 + stockDataService.updateStockInfo(confirmTaskRequest.getStockConfirm(), confirmTaskRequest.getStandId(), confirmTaskRequest.getUserName(), "出库拣选"); + // 查询库存获得当前载具中存储的库存列表 + LambdaQueryWrapper stockQueryWrapper = new LambdaQueryWrapper() + .eq(TAppStock::getVehicleId, thisPickTask.getVehicleId()) + .gt(TAppStock::getRealNum, 0); + List stockList = appStockService.list(stockQueryWrapper); + // 界面直接点击确认/放行 + if (!stockList.isEmpty()) { + // 判断还有没有当前站台的其他拣选任务 + TaskConfirmVo taskConfirmVo = conveyTaskService.getCurrentStandTask(thisPickTask); + if (taskConfirmVo != null) { + return BaseWmsApiResponse.warn("当前载具还有其他拣选任务,请根据界面信息进行拣配。"); + } + WorkConfirmVo resultVo = conveyTaskService.getCurrentStandWork(thisPickTask); + if (resultVo != null) { + return BaseWmsApiResponse.warn("当前载具还有工作,请切换到拣配界面进行拣配。"); + } + } else { + // 取消后续拣选任务 + conveyTaskService.cancelOtherStandPickTasks(thisPickTask.getVehicleId(), thisPickTask.getPickStand()); + } + // 放行 + if (conveyTaskService.releaseStandVehicle(thisPickTask)) { + return BaseWmsApiResponse.success("确认成功。"); + } else { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return BaseWmsApiResponse.error("释放箱子失败。"); + } + } + + /** + * 更新出库单信息 + * @param confirmTaskRequest 确认信息 + */ + private void updateTaskInfo(ConfirmTaskRequest confirmTaskRequest) { + if (confirmTaskRequest == null) { + return; + } + TaskConfirmEntity taskConfirm = confirmTaskRequest.getTaskConfirm(); + if (taskConfirm == null || StringUtils.isEmpty(taskConfirm.getTaskId())) { + return; + } + // 查询对应的任务 + TAppOuts outs = appOutsService.getOne(new LambdaQueryWrapper() + .eq(TAppOuts::getTaskId, taskConfirm.getTaskId())); + if (outs == null || taskConfirm.getRealPickQty() == null) { + return; + } + outs.setPickNum(outs.getPickNum() + taskConfirm.getRealPickQty()); + outs.setUserName(confirmTaskRequest.getUserName()); + if (Objects.equals(outs.getPickNum(), outs.getNeedNum())) { + // 生成记录 + TAppOutsRecord record = new TAppOutsRecord( + outs.getTaskId(), + outs.getGoodsId(), + outs.getVehicleId(), + outs.getNeedNum(), + outs.getDistributeNum(), + outs.getPickNum(), + outs.getOutType(), + outs.getDestination(), + outs.getUserName() + ); + // 删除出库单 + appOutsService.removeById(outs.getTaskId()); + // 添加记录 + appOutsRecordService.save(record); + } else { + // 更新出库单 + appOutsService.updateById(outs); + } + // 同时修正库存剩余数量 + if (confirmTaskRequest.getStockConfirm() != null) { + if (!Objects.equals(taskConfirm.getRealPickQty(), taskConfirm.getPlanPickQty())) { + // 判断当前的库存确认中是不是库外料 + StockConfirmEntity stockConfirm = confirmTaskRequest.getStockConfirm(); + if (stockConfirm.getIsOut() != 1) { + // 修正剩余库存数量 + int change = taskConfirm.getRealPickQty() - taskConfirm.getPlanPickQty(); + stockConfirm.setRealRemainQty(stockConfirm.getRealRemainQty() + change); + confirmTaskRequest.setStockConfirm(stockConfirm); + } + } + } + } +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/TestControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/TestControllerServiceImpl.java new file mode 100644 index 0000000..f9d0171 --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/TestControllerServiceImpl.java @@ -0,0 +1,60 @@ +package com.wms_main.service.controller.serviceImpl; + +import cn.hutool.core.bean.BeanUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wms_main.dao.ITAppImageService; +import com.wms_main.excel.easypoi.service.IExportExcelEasyPoi; +import com.wms_main.model.dto.request.wms.BaseWmsRequest; +import com.wms_main.model.dto.query.DbsQuery; +import com.wms_main.model.dto.request.wms.InitKateWorkRequest; +import com.wms_main.model.po.TAppImage; +import com.wms_main.model.vo.wms.ImageVo; +import com.wms_main.model.dto.response.wms.WmsApiResponse; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.controller.ITestControllerService; +import jakarta.servlet.http.HttpServletResponse; +import lombok.RequiredArgsConstructor; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Isolation; +import org.springframework.transaction.annotation.Propagation; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import java.io.IOException; +import java.util.List; + +/** + * TestController的实现 + */ +@Service +@RequiredArgsConstructor +public class TestControllerServiceImpl implements ITestControllerService { + private final ITAppImageService tAppImageService; + private final IExportExcelEasyPoi exportExcelEasyPoi; + + @Override + @Transactional(isolation = Isolation.REPEATABLE_READ, propagation = Propagation.REQUIRED) + public WmsApiResponse> testRequestImage(InitKateWorkRequest request) { + WmsApiResponse> response = new WmsApiResponse<>(); + try { + response.setCode(0); + response.setMessage("success"); + List tAppImageList = tAppImageService.list(new LambdaQueryWrapper() + .eq(StringUtils.isNotEmpty(request.getProductId()), TAppImage::getProductId, request.getProductId()) + .eq(StringUtils.isNotEmpty(request.getBoxNo()), TAppImage::getBoxNo, request.getBoxNo())); + List imageVoList = BeanUtil.copyToList(tAppImageList, ImageVo.class); + response.setData(imageVoList); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + response.setCode(99); + response.setMessage("error"); + } + return response; + } + + @Override + public void testExport(DbsQuery dbsQuery, HttpServletResponse response) throws IOException { + exportExcelEasyPoi.doExportDbs(dbsQuery, response); + } +} diff --git a/src/main/java/com/wms_main/service/controller/serviceImpl/UserControllerServiceImpl.java b/src/main/java/com/wms_main/service/controller/serviceImpl/UserControllerServiceImpl.java new file mode 100644 index 0000000..bf2597a --- /dev/null +++ b/src/main/java/com/wms_main/service/controller/serviceImpl/UserControllerServiceImpl.java @@ -0,0 +1,12 @@ +package com.wms_main.service.controller.serviceImpl; + +import com.wms_main.service.controller.IUserControllerService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; + +@Service +@Slf4j +@RequiredArgsConstructor +public class UserControllerServiceImpl implements IUserControllerService { +} diff --git a/src/main/java/com/wms_main/service/quartz_job/IJobService.java b/src/main/java/com/wms_main/service/quartz_job/IJobService.java new file mode 100644 index 0000000..6b1ca67 --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/IJobService.java @@ -0,0 +1,21 @@ +package com.wms_main.service.quartz_job; + +import com.wms_main.quartz.config.JobBean; + +/** + * 定时任务服务实现 + */ +public interface IJobService { + void createJob(JobBean jobBean); + + void deleteJob(String jobName); + + void modifyJob(JobBean jobBean); + + void pauseJob(String jobName); + + void resumeJob(String jobName); + + void runJobOnce(String jobName); + void initAllJobs(); +} diff --git a/src/main/java/com/wms_main/service/quartz_job/IOutsExecutorService.java b/src/main/java/com/wms_main/service/quartz_job/IOutsExecutorService.java new file mode 100644 index 0000000..a87a917 --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/IOutsExecutorService.java @@ -0,0 +1,23 @@ +package com.wms_main.service.quartz_job; + +public interface IOutsExecutorService { + /** + * 解析出库单 + */ + void executeOuts(); + + /** + * 解析订单并生成wms任务、拣选任务 + */ + void executeKateWorks(); + + /** + * 修复工作状态 + */ + void repairKateWorks(); + + /** + * 修复站台工作 + */ + void repairStandWorks(); +} diff --git a/src/main/java/com/wms_main/service/quartz_job/job_executor/DataSolver.java b/src/main/java/com/wms_main/service/quartz_job/job_executor/DataSolver.java new file mode 100644 index 0000000..d13dc71 --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/job_executor/DataSolver.java @@ -0,0 +1,27 @@ +package com.wms_main.service.quartz_job.job_executor; + +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.quartz.*; + +/** + * 数据处理定时器 + */ +@Slf4j +@PersistJobDataAfterExecution +@DisallowConcurrentExecution +@RequiredArgsConstructor +public class DataSolver implements Job { + /** + * 运行定时任务 + * + * @param jobExecutionContext 定时任务执行的环境(上下文) + */ + @Override + public void execute(JobExecutionContext jobExecutionContext) { + // 获取定时配置信息 + + // 获取各种需要处理的数据 + + } +} diff --git a/src/main/java/com/wms_main/service/quartz_job/job_executor/JobTest.java b/src/main/java/com/wms_main/service/quartz_job/job_executor/JobTest.java new file mode 100644 index 0000000..557c245 --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/job_executor/JobTest.java @@ -0,0 +1,30 @@ +package com.wms_main.service.quartz_job.job_executor; + +import lombok.RequiredArgsConstructor; +import org.quartz.*; + +/** + * 定时任务定义类 + */ +@PersistJobDataAfterExecution +@DisallowConcurrentExecution +@RequiredArgsConstructor +public class JobTest implements Job { + /** + * 运行定时任务 + * + * @param jobExecutionContext 定时任务执行的环境(上下文) + * @throws JobExecutionException 异常 + */ + @Override + public void execute(JobExecutionContext jobExecutionContext) throws JobExecutionException { + // TODO 需要增加定时器的全局异常捕获 + // 测试定时任务 + System.out.println("本次Test执行时间:" + jobExecutionContext.getFireTime()); + try { + Thread.sleep(3000); + } catch (InterruptedException e) { + throw new RuntimeException(e); + } + } +} diff --git a/src/main/java/com/wms_main/service/quartz_job/job_executor/OutsExecutor.java b/src/main/java/com/wms_main/service/quartz_job/job_executor/OutsExecutor.java new file mode 100644 index 0000000..ae65b0d --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/job_executor/OutsExecutor.java @@ -0,0 +1,55 @@ +package com.wms_main.service.quartz_job.job_executor; + +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.quartz_job.IOutsExecutorService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.quartz.DisallowConcurrentExecution; +import org.quartz.Job; +import org.quartz.JobExecutionContext; +import org.quartz.PersistJobDataAfterExecution; + +/** + * 定时任务定义类---出库单解析类 + */ +@Slf4j +@PersistJobDataAfterExecution +// 以下注解用于实现fixed_delay +@DisallowConcurrentExecution +@RequiredArgsConstructor +public class OutsExecutor implements Job { + private final IOutsExecutorService outsExecutorService;// 出库单解析服务 + + /** + * 运行定时任务 + * + * @param jobExecutionContext 定时任务执行的环境(上下文) + */ + @Override + public void execute(JobExecutionContext jobExecutionContext) { + // 修复站台工作StandWork + try { + outsExecutorService.repairStandWorks(); + } catch (Exception e) { + log.error("修复站台工作StandWork失败{}", StringUtils.objectToString(e)); + } + // 解析工作(配料) + try { + outsExecutorService.executeKateWorks(); + } catch (Exception e) { + log.error("解析工作(配料)失败{}", StringUtils.objectToString(e)); + } + // 自修复(配料) + try { + outsExecutorService.repairKateWorks(); + } catch (Exception e) { + log.error("自修复(配料)失败{}", StringUtils.objectToString(e)); + } + // 处理出库单 + try { + outsExecutorService.executeOuts(); + } catch (Exception e) { + log.error("处理出库单失败{}", StringUtils.objectToString(e)); + } + } +} diff --git a/src/main/java/com/wms_main/service/quartz_job/job_executor/WcsPickTaskSender.java b/src/main/java/com/wms_main/service/quartz_job/job_executor/WcsPickTaskSender.java new file mode 100644 index 0000000..b3e61bc --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/job_executor/WcsPickTaskSender.java @@ -0,0 +1,81 @@ +package com.wms_main.service.quartz_job.job_executor; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.constant.enums.wcs.WcsApiResponseCodeEnums; +import com.wms_main.constant.enums.wcs.WcsConveyTaskTypeEnums; +import com.wms_main.constant.enums.wms.WmsPickTaskStatusEnum; +import com.wms_main.dao.ITAppPickTaskService; +import com.wms_main.model.bo.wcs.WcsPickTask; +import com.wms_main.model.dto.request.wcs.WcsPickTaskRequest; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; +import com.wms_main.model.po.TAppPickTask; +import com.wms_main.service.api.IWcsApiService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.quartz.*; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * 定时任务定义类---发送拣选任务 + */ +@Slf4j +@PersistJobDataAfterExecution +// 以下注解用于实现fixed_delay +@DisallowConcurrentExecution +@RequiredArgsConstructor +public class WcsPickTaskSender implements Job { + /** + * 拣选任务服务 + */ + private final ITAppPickTaskService appPickTaskService; + /** + * Wcs接口服务 + */ + private final IWcsApiService wcsApiService; + + /** + * 运行定时任务 + * 向Wcs发送拣选任务 + * + * @param jobExecutionContext 定时任务执行的环境(上下文) + */ + @Override + public void execute(JobExecutionContext jobExecutionContext) { + // 获取到所有待下发的拣选任务 + List waitSendPickTaskList = appPickTaskService.list( + new LambdaQueryWrapper() + .eq(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.WAIT.getCode()) + ); + // 轮询发送任务 + for (TAppPickTask pickTask : waitSendPickTaskList) { + // 生成请求 + WcsPickTaskRequest request = new WcsPickTaskRequest( + pickTask.getPickId(), + pickTask.getVehicleId(), + WcsConveyTaskTypeEnums.CONVEY_TASK_TYPE_PICK.getCode(), + pickTask.getPickStand(), + "" + ); + try { + WcsApiResponse wcsResponse = wcsApiService.sendPickTask(request); + if (wcsResponse != null && WcsApiResponseCodeEnums.SUCCESS.getCode() == wcsResponse.getCode()) { + // 更新这个载具这个站台的拣选任务的状态 + appPickTaskService.update( + new LambdaUpdateWrapper() + .set(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.SEND.getCode()) + .set(TAppPickTask::getSendTime, LocalDateTime.now()) + .eq(TAppPickTask::getVehicleId, pickTask.getVehicleId()) + .eq(TAppPickTask::getPickStand, pickTask.getPickStand()) + ); + } + } catch (Exception e) { + log.error("拣选任务发送失败,任务号:{},载具号:{},拣选站台:{}。", request.getTaskId(), request.getVehicleNo(), request.getLocation()); + } + } + } + + +} diff --git a/src/main/java/com/wms_main/service/quartz_job/job_executor/WcsStackerTaskSender.java b/src/main/java/com/wms_main/service/quartz_job/job_executor/WcsStackerTaskSender.java new file mode 100644 index 0000000..8e6b6ec --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/job_executor/WcsStackerTaskSender.java @@ -0,0 +1,107 @@ +package com.wms_main.service.quartz_job.job_executor; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.constant.enums.wcs.WcsApiResponseCodeEnums; +import com.wms_main.constant.enums.wcs.WcsStackerTaskStatusEnums; +import com.wms_main.constant.enums.wms.WmsStackerTaskStatusEnums; +import com.wms_main.dao.ITAppTaskService; +import com.wms_main.dao.ITAppWcsTaskService; +import com.wms_main.model.bo.wcs.WcsStackerTask; +import com.wms_main.model.dto.request.wcs.WcsStackerTaskRequest; +import com.wms_main.model.dto.response.wcs.WcsApiResponse; +import com.wms_main.model.po.TAppTask; +import com.wms_main.model.po.TAppWcsTask; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.api.IWcsApiService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.quartz.*; + +import java.time.LocalDateTime; +import java.util.List; + +/** + * 定时任务定义类---发送堆垛机任务 + */ +@Slf4j +@PersistJobDataAfterExecution +// 以下注解用于实现fixed_delay +@DisallowConcurrentExecution +@RequiredArgsConstructor +public class WcsStackerTaskSender implements Job { + /** + * Wcs任务服务 + */ + private final ITAppWcsTaskService appWcsTaskService; + /** + * Wms任务服务 + */ + private final ITAppTaskService appTaskService; + /** + * Wcs接口服务 + */ + private final IWcsApiService wcsApiService; + + /** + * 运行定时任务 + * 向Wcs发送堆垛机任务 + * + * @param jobExecutionContext 定时任务执行的环境(上下文) + */ + @Override + public void execute(JobExecutionContext jobExecutionContext) { + // 查询到所有的待下发的wcsTask + List waitSendWcsTaskList = appWcsTaskService.list( + new LambdaQueryWrapper() + .eq(TAppWcsTask::getWcsTaskStatus, WcsStackerTaskStatusEnums.INIT.getCode()) + ); + // 发送任务 + for (TAppWcsTask wcsTask : waitSendWcsTaskList) { + // 生成请求 + WcsStackerTaskRequest request = new WcsStackerTaskRequest( + wcsTask.getWcsTaskId(), + wcsTask.getWcsTaskType(), + wcsTask.getTaskPriority(), + wcsTask.getOrigin(), + wcsTask.getDestination(), + wcsTask.getVehicleId() + ); + try { + WcsApiResponse wcsResponse = wcsApiService.sendWcsStackerTask(request); + if (wcsResponse != null && WcsApiResponseCodeEnums.SUCCESS.getCode() == wcsResponse.getCode()) { + // 更新当前的wcs任务状态为已发送 + appWcsTaskService.update( + new LambdaUpdateWrapper() + .set(TAppWcsTask::getWcsTaskStatus, WcsStackerTaskStatusEnums.WAIT.getCode()) + .set(TAppWcsTask::getSendTime, LocalDateTime.now()) + .eq(TAppWcsTask::getWcsTaskId, wcsTask.getWcsTaskId()) + ); + // 更新当前wcs任务对应的wms任务为已发送 + appTaskService.update( + new LambdaUpdateWrapper() + .set(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.SEND.getCode()) + .eq(TAppTask::getWcsTaskId, wcsTask.getWcsTaskId()) + ); + } else { + log.error("堆垛机任务发送失败,请求{},响应信息{}。", StringUtils.objectToString(request), StringUtils.objectToString(wcsResponse)); + // 更新当前的wcs任务状态为异常 + appWcsTaskService.update( + new LambdaUpdateWrapper() + .set(TAppWcsTask::getWcsTaskStatus, WcsStackerTaskStatusEnums.EXCEPTION.getCode()) + .set(TAppWcsTask::getSendTime, LocalDateTime.now()) + .eq(TAppWcsTask::getWcsTaskId, wcsTask.getWcsTaskId()) + ); + // 更新当前wcs任务对应的wms任务为异常 + appTaskService.update( + new LambdaUpdateWrapper() + .set(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.EXCEPTION.getCode()) + .eq(TAppTask::getWcsTaskId, wcsTask.getWcsTaskId()) + ); + } + } catch (Exception e) { + log.error("堆垛机任务发送失败,任务号:{},载具号:{},起点:{},终点:{}。", request.getTaskId(), request.getVehicleNo(), request.getOrigin(), request.getDestination()); + } + } + } +} diff --git a/src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskExecutor.java b/src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskExecutor.java new file mode 100644 index 0000000..2e2b793 --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskExecutor.java @@ -0,0 +1,185 @@ +package com.wms_main.service.quartz_job.job_executor; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wms_main.constant.enums.wcs.WcsStackerTaskStatusEnums; +import com.wms_main.constant.enums.wcs.WcsStackerTaskTypeEnums; +import com.wms_main.constant.enums.wms.WmsStackerTaskStatusEnums; +import com.wms_main.constant.enums.wms.WmsTaskTypeEnums; +import com.wms_main.dao.ITAppTaskService; +import com.wms_main.dao.ITAppWcsTaskService; +import com.wms_main.model.po.TAppTask; +import com.wms_main.model.po.TAppWcsTask; +import com.wms_main.repository.utils.ConvertUtils; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.business.IStackerTaskService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.quartz.*; + +import java.time.LocalDateTime; +import java.util.*; +import java.util.stream.Collectors; + +/** + * 定时任务定义类---堆垛机任务解析类 + */ +@Slf4j +@PersistJobDataAfterExecution +// 以下注解用于实现fixed_delay +@DisallowConcurrentExecution +@RequiredArgsConstructor +public class WmsTaskExecutor implements Job { + /** + * Wms任务服务 + */ + private final ITAppTaskService appTaskService; + /** + * Wcs任务服务 + */ + private final ITAppWcsTaskService appWcsTaskService; + /** + * 堆垛机任务服务 + */ + private final IStackerTaskService stackerTaskService; + /** + * 运行定时任务 + * 向Wcs发送堆垛机任务 + * + * @param jobExecutionContext 定时任务执行的环境(上下文) + */ + @Override + public void execute(JobExecutionContext jobExecutionContext) { + // 获取到所有待下发的任务 + List waitSendWmsTaskList = appTaskService.list( + new LambdaQueryWrapper() + .eq(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.WAIT.getCode()) + ); + // 筛选入库任务 + List stackerInTasks = waitSendWmsTaskList.stream() + .filter(task -> Objects.equals(WmsTaskTypeEnums.IN.getCode(), task.getTaskType())) + .toList(); + if (!stackerInTasks.isEmpty()) { + executeStackerInTask(stackerInTasks);// 解析入库任务 + } + // 筛选出库任务 + List stackerOutTasks = waitSendWmsTaskList.stream() + .filter(task -> Objects.equals(WmsTaskTypeEnums.OUT.getCode(), task.getTaskType())) + .toList(); + if (!stackerOutTasks.isEmpty()) { + executeStackerOutTask(stackerOutTasks);// 解析出库任务 + } + } + + /** + * 解析入库任务 实现 + * @param stackerInTasks 入库任务 + */ + public void executeStackerInTask(List stackerInTasks) { + // 查找到wcsTask表中所有的入库任务 + List wcsInTaskList = appWcsTaskService.list( + new LambdaQueryWrapper() + .eq(TAppWcsTask::getWcsTaskType, WcsStackerTaskTypeEnums.IN.getCode()) + ); + // 将上述入库任务列表转成map,键为载具号,值为请求 + Map wcsInTaskMap = wcsInTaskList.stream().collect(Collectors.toMap(TAppWcsTask::getVehicleId, appWcsTask -> appWcsTask)); + Map wcsInTaskMapThisTime = new HashMap<>(); + // 之前解析过的任务 + List executedBeforeTaskList = new ArrayList<>(); + for (TAppTask wmsTask : stackerInTasks) { + // 判断当前箱子是否已经解析成WCS任务并且已经存表 + if (wcsInTaskMap.containsKey(wmsTask.getVehicleId())) { + // 设置状态与wcsTaskId + wmsTask.setWcsTaskId(wcsInTaskMap.get(wmsTask.getVehicleId()).getWcsTaskId()); + wmsTask.setTaskStatus(ConvertUtils.convertWcsStackerTaskStatusToWmsTaskStatus(wcsInTaskMap.get(wmsTask.getVehicleId()).getWcsTaskStatus())); + executedBeforeTaskList.add(wmsTask); + continue; + } + // 判断当前箱子是不是已经在本次解析中已经解析完 + if (wcsInTaskMapThisTime.containsKey(wmsTask.getVehicleId())) { + continue; + } + if (StringUtils.isEmpty(wmsTask.getDestination())) { + continue; + } + // 生成新的wcs任务 + TAppWcsTask wcsInTask = new TAppWcsTask(); + wcsInTask.setWcsTaskId(UUIDUtils.getNewUUID()); + wcsInTask.setWcsTaskType(WcsStackerTaskTypeEnums.IN.getCode()); + wcsInTask.setWcsTaskStatus(WcsStackerTaskStatusEnums.INIT.getCode()); + wcsInTask.setTaskPriority(wmsTask.getTaskPriority()); + wcsInTask.setOrigin(wmsTask.getOrigin() != null ? wmsTask.getOrigin() : ""); + wcsInTask.setDestination(wmsTask.getDestination()); + wcsInTask.setVehicleId(wmsTask.getVehicleId()); + wcsInTask.setCreateTime(LocalDateTime.now()); + wcsInTaskMapThisTime.put(wmsTask.getVehicleId(), wcsInTask); + } + try { + // 更新已解析的入库任务列表 + appTaskService.updateBatchById(executedBeforeTaskList); + } catch (Exception e) { + log.error("更新已解析入库任务状态失败,任务列表:{}", executedBeforeTaskList.stream().map(TAppTask::getTaskId).toList()); + } + if (!wcsInTaskMapThisTime.isEmpty()) { + for (TAppWcsTask wcsInTask : wcsInTaskMapThisTime.values()) { + stackerTaskService.saveWcsTaskAndUpdateWmsTask(wcsInTask); + } + } + } + + /** + * 解析出库任务 实现 + * @param stackerOutTasks 出库任务 + */ + public void executeStackerOutTask(List stackerOutTasks) { + // 查找到wcsTask表中所有的入库任务 + List wcsOutTaskList = appWcsTaskService.list( + new LambdaQueryWrapper() + .eq(TAppWcsTask::getWcsTaskType, WcsStackerTaskTypeEnums.OUT.getCode()) + ); + // 将上述入库任务列表转成map,键为载具号,值为请求 + Map wcsOutTaskMap = wcsOutTaskList.stream().collect(Collectors.toMap(TAppWcsTask::getVehicleId, appWcsTask -> appWcsTask)); + Map wcsOutTaskMapThisTime = new HashMap<>(); + // 之前解析过的任务 + List executedBeforeTaskList = new ArrayList<>(); + for (TAppTask wmsTask : stackerOutTasks) { + // 判断当前箱子是否已经解析成WCS任务并且已经存表 + if (wcsOutTaskMap.containsKey(wmsTask.getVehicleId())) { + // 设置状态与wcsTaskId + wmsTask.setWcsTaskId(wcsOutTaskMap.get(wmsTask.getVehicleId()).getWcsTaskId()); + wmsTask.setTaskStatus(ConvertUtils.convertWcsStackerTaskStatusToWmsTaskStatus(wcsOutTaskMap.get(wmsTask.getVehicleId()).getWcsTaskStatus())); + executedBeforeTaskList.add(wmsTask); + continue; + } + // 判断当前箱子是不是已经在本次解析中已经解析完 + if (wcsOutTaskMapThisTime.containsKey(wmsTask.getVehicleId())) { + continue; + } + if (StringUtils.isEmpty(wmsTask.getOrigin())) { + continue; + } + // 生成新的wcs任务 + TAppWcsTask wcsOutTask = new TAppWcsTask(); + wcsOutTask.setWcsTaskId(UUIDUtils.getNewUUID()); + wcsOutTask.setWcsTaskType(WcsStackerTaskTypeEnums.OUT.getCode()); + wcsOutTask.setWcsTaskStatus(WcsStackerTaskStatusEnums.INIT.getCode()); + wcsOutTask.setTaskPriority(wmsTask.getTaskPriority()); + wcsOutTask.setOrigin(wmsTask.getOrigin()); + wcsOutTask.setDestination(wmsTask.getDestination() != null ? wmsTask.getDestination() : ""); + wcsOutTask.setVehicleId(wmsTask.getVehicleId()); + wcsOutTask.setCreateTime(LocalDateTime.now()); + wcsOutTaskMapThisTime.put(wmsTask.getVehicleId(), wcsOutTask); + } + try { + // 更新已解析的入库任务列表 + appTaskService.updateBatchById(executedBeforeTaskList); + } catch (Exception e) { + log.error("更新已解析出库任务状态失败,任务列表:{}", executedBeforeTaskList.stream().map(TAppTask::getTaskId).toList()); + } + if (!wcsOutTaskMapThisTime.isEmpty()) { + for (TAppWcsTask wcsOutTask : wcsOutTaskMapThisTime.values()) { + stackerTaskService.saveWcsTaskAndUpdateWmsTask(wcsOutTask); + } + } + } +} diff --git a/src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskFinisher.java b/src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskFinisher.java new file mode 100644 index 0000000..ce0330d --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/job_executor/WmsTaskFinisher.java @@ -0,0 +1,70 @@ +package com.wms_main.service.quartz_job.job_executor; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.wms_main.constant.enums.wms.WmsStackerTaskStatusEnums; +import com.wms_main.constant.enums.wms.WmsTaskTypeEnums; +import com.wms_main.dao.ITAppTaskService; +import com.wms_main.model.po.TAppTask; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.service.business.IStackerTaskService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.quartz.*; + +import java.util.*; + +/** + * 定时任务定义类---堆垛机任务完成类 + */ +@Slf4j +@PersistJobDataAfterExecution +// 以下注解用于实现fixed_delay +@DisallowConcurrentExecution +@RequiredArgsConstructor +public class WmsTaskFinisher implements Job { + /**ˉ + * Wms任务服务 + */ + private final ITAppTaskService appTaskService; + /** + * 堆垛机任务业务服务 + */ + private final IStackerTaskService stackerTaskService; + + /** + * 运行定时任务 + * 完成堆垛机任务 + * + * @param jobExecutionContext 定时任务执行的环境(上下文) + */ + @Override + public void execute(JobExecutionContext jobExecutionContext) { + // 获取到所有待下发的任务 + List waitFinishWmsTaskList = appTaskService.list( + new LambdaQueryWrapper() + .eq(TAppTask::getTaskStatus, WmsStackerTaskStatusEnums.FINISH.getCode()) + ); + // 筛选入库任务 + List stackerInTasks = waitFinishWmsTaskList.stream() + .filter(task -> Objects.equals(WmsTaskTypeEnums.IN.getCode(), task.getTaskType())) + .toList(); + if (!stackerInTasks.isEmpty()) { + try { + stackerTaskService.finishStackerInTasks(stackerInTasks);// 完成入库任务 + } catch (Exception e) { + log.error("堆垛机任务完成类-入库执行异常:{}", StringUtils.objectToString(e)); + } + } + // 筛选入库任务 + List stackerOutTasks = waitFinishWmsTaskList.stream() + .filter(task -> Objects.equals(WmsTaskTypeEnums.OUT.getCode(), task.getTaskType())) + .toList(); + if (!stackerOutTasks.isEmpty()) { + try { + stackerTaskService.finishStackerOutTasks(stackerOutTasks);// 完成出库任务 + } catch (Exception e) { + log.error("堆垛机任务完成类-出库执行异常:{}", StringUtils.objectToString(e)); + } + } + } +} diff --git a/src/main/java/com/wms_main/service/quartz_job/serviceImpl/JobServiceImpl.java b/src/main/java/com/wms_main/service/quartz_job/serviceImpl/JobServiceImpl.java new file mode 100644 index 0000000..f5193bb --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/serviceImpl/JobServiceImpl.java @@ -0,0 +1,99 @@ +package com.wms_main.service.quartz_job.serviceImpl; + +import com.wms_main.constant.enums.jobs.JobStatusEnums; +import com.wms_main.dao.ITAppJobsService; +import com.wms_main.model.po.TAppJobs; +import com.wms_main.quartz.JobUtils; +import com.wms_main.quartz.config.JobBean; +import com.wms_main.service.quartz_job.IJobService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.quartz.Scheduler; +import org.springframework.stereotype.Service; + +import java.util.List; + +/** + * 定时任务服务实现 + */ +@Service +@RequiredArgsConstructor +@Slf4j +public class JobServiceImpl implements IJobService { + private final Scheduler scheduler;// 调度器 + private final ITAppJobsService tAppJobsService;// Job服务 + + /** + * 创建任务 + * @param jobBean 任务信息 + */ + @Override + public void createJob(JobBean jobBean) { + log.info("创建定时任务:{}。", jobBean.getJobName()); + JobUtils.createJob(scheduler, jobBean); + } + + /** + * 删除定时任务 + * @param jobName 任务名 + */ + @Override + public void deleteJob(String jobName) { + log.info("删除定时任务:{}。", jobName); + JobUtils.deleteJob(scheduler, jobName); + } + + /** + * 修改定时任务 + * @param jobBean 任务信息 + */ + @Override + public void modifyJob(JobBean jobBean) { + log.info("修改定时任务:{}。", jobBean.getJobName()); + JobUtils.modifyJob(scheduler, jobBean); + } + + /** + * 暂停定时任务 + * @param jobName 任务名 + */ + @Override + public void pauseJob(String jobName) { + log.info("暂停定时任务:{}。", jobName); + JobUtils.pauseJob(scheduler, jobName); + } + + /** + * 恢复定时任务 + * @param jobName 任务名 + */ + @Override + public void resumeJob(String jobName) { + log.info("恢复定时任务:{}。", jobName); + JobUtils.resumeJob(scheduler, jobName); + } + + /** + * 立即执行一次任务 + * @param jobName 任务名 + */ + @Override + public void runJobOnce(String jobName) { + log.info("立即执行一次任务:{}。", jobName); + JobUtils.runJobOnce(scheduler, jobName); + } + + /** + * 初始化所有的定时任务 + * 只创建启用的 + */ + @Override + public void initAllJobs() { + log.info("开始初始化定时任务。"); + List jobBeans = tAppJobsService.getJobs(new TAppJobs(null, null, null, null, null, JobStatusEnums.RUN.getStatus())); + for (JobBean jobBean : jobBeans) { + createJob(jobBean); + } + log.info("初始化定时任务结束,已启动{}个任务。", jobBeans.size()); + } +} diff --git a/src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java b/src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java new file mode 100644 index 0000000..e2bc606 --- /dev/null +++ b/src/main/java/com/wms_main/service/quartz_job/serviceImpl/OutsExecutorServiceImpl.java @@ -0,0 +1,1027 @@ +package com.wms_main.service.quartz_job.serviceImpl; + +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; +import com.wms_main.app.AppCommon; +import com.wms_main.constant.AppConstant; +import com.wms_main.constant.enums.wms.*; +import com.wms_main.dao.*; +import com.wms_main.model.po.*; +import com.wms_main.repository.utils.StringUtils; +import com.wms_main.repository.utils.UUIDUtils; +import com.wms_main.service.quartz_job.IOutsExecutorService; +import lombok.RequiredArgsConstructor; +import lombok.extern.slf4j.Slf4j; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; +import org.springframework.transaction.interceptor.TransactionAspectSupport; + +import java.time.LocalDate; +import java.time.LocalDateTime; +import java.util.*; +import java.util.stream.Collectors; + +@Service +@RequiredArgsConstructor +@Slf4j +public class OutsExecutorServiceImpl implements IOutsExecutorService { + private final ITAppOutsService appOutsService;// 出库单服务 + private final ITAppStockService appStockService;// 库存服务 + private final ITAppPickTaskService appPickTaskService;// 拣选任务服务 + private final ITAppTaskService appTaskService;// 任务服务 + private final ITAppVehicleService appVehicleService;// 载具服务 + private final ITAppWorkService appWorkService;// 工作服务 + private final ITAppWorkRecordService appWorkRecordService;// 工作记录服务 + private final ITAppStandService appStandService;// 站台服务 + private final ITAppDbsService appDbsService;// dbs服务 + private final ITAppEquipmentService appEquipmentService;// 设备服务 + private final ITAppStandWorkService appStandWorkService;// 站台工作服务 + private final ITAppPickPlanService appPickPlanService;// 拣选计划服务 + private final AppCommon appCommon;// 应用共通数据 + + /** + * 解析出库单 实现 + */ + @Override + @Transactional + public void executeOuts() { + try { + // 查询到对应的出库单 + List appOutsList = appOutsService.list( + new LambdaQueryWrapper().orderByDesc(TAppOuts::getOutType) + ); + if (appOutsList == null || appOutsList.isEmpty()) { + return; + } + // 需要保存的信息 + List newOutWmsTasks = new ArrayList<>();// 新的出库任务 + List newPickTasks = new ArrayList<>();// 新的拣选任务 + List thisTimeOutVehicleIds = new ArrayList<>();// 本次出库载具 + List newPickPlans = new ArrayList<>();// 拣选计划 + // 拣选任务 + List pickTasks = appPickTaskService.list(); + // 查询库存,条件:剩余数量>0,回库中、锁定以外的库存状态。 + List allStocks = appStockService.list(new LambdaQueryWrapper() + .le(TAppStock::getStockStatus, WmsStockStatusEnums.OUTED.getCode()) + .gt(TAppStock::getRemainNum, 0) + .orderByAsc(TAppStock::getFirstInTime)); + List emptyVehicles = appVehicleService.list(new LambdaQueryWrapper() + .eq(TAppVehicle::getIsEmpty, 1) + .eq(TAppVehicle::getVehicleStatus, WmsVehicleStatusEnums.ON.getCode()) + .orderByAsc(TAppVehicle::getLastInTime));// 先进先出 + // 获取可用堆垛机 + List usableStackers = appEquipmentService.list(new LambdaQueryWrapper() + .eq(TAppEquipment::getEquipmentType, 1) + .eq(TAppEquipment::getEquipmentStatus, WmsUsableStatusEnums.USABLE.getCode())); + Map equipVehicleMap = new HashMap<>(); + getVehicleEquipMap("", true, equipVehicleMap, usableStackers); + for (TAppOuts appOuts : appOutsList) { + if (appOuts.getDistributeNum() >= appOuts.getNeedNum()) { + continue; + } + // 判断目前是否是空箱任务 + if (Objects.equals(appOuts.getOutType(), WmsOutTypeEnums.EMPTY.getCode())) { + solveEmpty(appOuts, emptyVehicles, equipVehicleMap, newOutWmsTasks, thisTimeOutVehicleIds); + } else if (Objects.equals(appOuts.getOutType(), WmsOutTypeEnums.FOR_IN.getCode())) { + solveOutForIn(equipVehicleMap, appOuts, allStocks, pickTasks, newOutWmsTasks, newPickTasks, thisTimeOutVehicleIds); + } else if (Objects.equals(appOuts.getOutType(), WmsOutTypeEnums.EMERGE.getCode())) { + // 紧急出库 + solveEmerge(equipVehicleMap, appOuts, allStocks, pickTasks, newOutWmsTasks, newPickTasks, thisTimeOutVehicleIds, newPickPlans); + } + } + // 保存出库单 + appOutsService.updateBatchById(appOutsList); + // 保存出库任务 + if (!newOutWmsTasks.isEmpty()) { + appTaskService.saveBatch(newOutWmsTasks); + } + // 保存拣选任务 + if (!newPickTasks.isEmpty()) { + appPickTaskService.saveBatch(newPickTasks); + } + // 合并拣选计划---箱号+料号+站台+类型+index进行数量叠加 + if (!newPickPlans.isEmpty()) { + appPickPlanService.saveOrUpdateBatch(mergedPickPlan(newPickPlans)); + } + // 更新库存信息 + appStockService.updateBatchById(allStocks); + // 更新载具信息 + if (!thisTimeOutVehicleIds.isEmpty()) { + appVehicleService.update(new LambdaUpdateWrapper() + .set(TAppVehicle::getVehicleStatus, WmsVehicleStatusEnums.OUT.getCode()) + .in(TAppVehicle::getVehicleId, thisTimeOutVehicleIds)); + } + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + log.error("解析出库单发生异常。{}", StringUtils.objectToString(e)); + } + } + + /** + * 处理空载具出库请求 + * + * @param appOuts 出库请求 + * @param emptyVehicles 所有的空载具 + * @param equipVehicleMap 载具与载具编号的映射 + * @param newOutWmsTasks 新的出库任务 + * @param thisTimeOutVehicleIds 本次出库的载具列表 + */ + private void solveEmpty(TAppOuts appOuts, List emptyVehicles, Map equipVehicleMap, List newOutWmsTasks, List thisTimeOutVehicleIds) { + int needNum = appOuts.getNeedNum() - appOuts.getDistributeNum(); + // 生成空箱出库任务 + for (TAppVehicle emptyVehicle : emptyVehicles) { + if (needNum <= 0) { + break; + } + if (Objects.equals(emptyVehicle.getIsLock(), 1) || !Objects.equals(emptyVehicle.getVehicleStatus(), WmsVehicleStatusEnums.ON.getCode())) { + continue; + } + // 当前库位无法生成空载具出库 + if (ifThisLocationCantOut(emptyVehicle.getLocationId(), equipVehicleMap)) { + continue; + } + // 如果指定了载具号 + if (StringUtils.isNotEmpty(appOuts.getVehicleId()) && !Objects.equals(emptyVehicle.getVehicleId(), appOuts.getVehicleId())) { + continue; + } + // 生成出库任务 + newOutWmsTasks.add(new TAppTask( + UUIDUtils.getNewUUID(), + WmsTaskTypeEnums.OUT.getCode(), + 0, + 1, + emptyVehicle.getVehicleId(), + emptyVehicle.getLocationId(), + null, + null, + LocalDateTime.now(), + null, + AppConstant.EMPTY_GOODS_ID, + 0, + 0, + appOuts.getUserName(), + "", + appOuts.getDestination(), + "" + )); + emptyVehicle.setVehicleStatus(WmsVehicleStatusEnums.OUT.getCode()); + thisTimeOutVehicleIds.add(emptyVehicle.getVehicleId()); + updateVehicleEquipMapByLocation(equipVehicleMap, emptyVehicle.getVehicleId(), emptyVehicle.getLocationId()); + needNum--; + } + } + + /** + * 处理出库(入库用)请求 + * @param equipVehicleMap 载具与载具编号的映射 + * @param appOuts 出库单 + * @param allStocks 所有库存 + * @param pickTasks 拣选任务 + * @param newOutWmsTasks 新的出库任务 + * @param newPickTasks 新的拣选任务 + * @param thisTimeOutVehicleIds 本次出库的载具列表 + */ + private void solveOutForIn(Map equipVehicleMap, TAppOuts appOuts, List allStocks, List pickTasks, List newOutWmsTasks, List newPickTasks, List thisTimeOutVehicleIds) { + // 根据箱号+料号 map一下数量 + Map goodsNumMap = new HashMap<>(); + for (TAppStock stock : allStocks) { + String key = stock.getVehicleId() + "_" + stock.getGoodsId(); + if (goodsNumMap.containsKey(key)) { + goodsNumMap.replace(key, goodsNumMap.get(key) + stock.getRealNum()); + } else { + goodsNumMap.put(key, stock.getRealNum()); + } + } + boolean alreadyOut = false; + for (TAppStock stock : allStocks) { + if (thisTimeOutVehicleIds.contains(stock.getVehicleId())) { + // 设置这个箱子的库存都为出库中 + stock.setStockStatus(WmsStockStatusEnums.OUTING.getCode()); + } + if (alreadyOut) { + // 已经有了,不需要再生成了 + continue; + } + if (!Objects.equals(appOuts.getGoodsId(), stock.getGoodsId())) { + // 不是这个料 + continue; + } + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OK.getCode()) && ifThisLocationCantOut(stock.getLocationId(), equipVehicleMap)) { + // 当前堆垛机已经无法生成新的出库任务了 + continue; + } + // 判断这个库存还能不能往里面放料 + TAppGoods appGoods = appCommon.getInstantGoodsByGoodsId(stock.getGoodsId()); + if (appGoods == null) { + continue; + } + String key = stock.getVehicleId() + "_" + stock.getGoodsId(); + int stockNum = goodsNumMap.getOrDefault(key, appGoods.getBoxQty() * appGoods.getMaxBoxNum()); + // 判断是否还能够入库用 + if (stockNum <= (appGoods.getMaxBoxNum() - 1) * appGoods.getBoxQty()) { + // 已有的拣选任务 + List oldPickTasks = new ArrayList<>(); + if (pickTasks != null) { + oldPickTasks = pickTasks.stream().filter(pickTask -> + Objects.equals(pickTask.getPickStand(), appOuts.getDestination()) + && pickTask.getVehicleId().equals(stock.getVehicleId()) + && Objects.equals(pickTask.getPickStatus(), WmsPickTaskStatusEnum.FOR_IN.getCode())).toList(); + } + // 新生成的拣选任务 + List newOldPickTasks = newPickTasks.stream().filter(pickTask -> pickTask.getVehicleId().equals(stock.getVehicleId()) + && Objects.equals(pickTask.getPickStand(), appOuts.getDestination()) + && Objects.equals(pickTask.getPickStatus(), WmsPickTaskStatusEnum.FOR_IN.getCode())).toList(); + // 生成拣选任务 + if (oldPickTasks.isEmpty() && newOldPickTasks.isEmpty()) { + newPickTasks.add(new TAppPickTask( + UUIDUtils.getNewUUID(), + appOuts.getDestination(), + stock.getVehicleId(), + WmsPickTaskStatusEnum.FOR_IN.getCode(), + LocalDateTime.now(), + null, null, null + )); + } + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OK.getCode())) { + // 需要生成出库任务 + newOutWmsTasks.add(new TAppTask( + UUIDUtils.getNewUUID(), + WmsTaskTypeEnums.OUT.getCode(), + 0, + 1, + stock.getVehicleId(), + stock.getLocationId(), + null, + null, + LocalDateTime.now(), + null, + AppConstant.EMPTY_GOODS_ID, + 0, + 0, + appOuts.getUserName(), + "", + appOuts.getDestination(), + "" + )); + stock.setStockStatus(WmsStockStatusEnums.OUTING.getCode()); + thisTimeOutVehicleIds.add(stock.getVehicleId()); + updateVehicleEquipMapByLocation(equipVehicleMap, stock.getVehicleId(), stock.getLocationId()); + // 这个料已经生成了一个出库的。 + alreadyOut = true; + } + } + } + } + + /** + * 处理紧急出库任务 + * + * @param equipVehicleMap 堆垛机与载具的映射 + * @param appOuts 出库单 + * @param allStocks 所有库存 + * @param pickTasks 所有拣选任务 + * @param newOutWmsTasks 新的出库任务 + * @param newPickTasks 新的拣选任务 + * @param thisTimeOutVehicleIds 本次出库载具 + * @param newPickPlans 新的拣选计划 + */ + private void solveEmerge(Map equipVehicleMap, TAppOuts appOuts, List allStocks, List pickTasks, List newOutWmsTasks, List newPickTasks, List thisTimeOutVehicleIds, List newPickPlans) { + // 查找 + for (TAppStock stock : allStocks) { + if (thisTimeOutVehicleIds.contains(stock.getVehicleId())) { + // 设置这个箱子的库存都为出库中 + stock.setStockStatus(WmsStockStatusEnums.OUTING.getCode()); + } + if (!Objects.equals(appOuts.getGoodsId(), stock.getGoodsId())) { + // 不是这个料 + continue; + } + if (stock.getRemainNum() <= 0) { + continue; + } + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OK.getCode()) && ifThisLocationCantOut(stock.getLocationId(), equipVehicleMap)) { + // 当前堆垛机已经无法生成新的出库任务了 + continue; + } + // 判断当前的这条库存,当前站台是否需要 + int originNum = stock.getRemainNum(); + int remainNum = stock.getRemainNum(); + int needNum = appOuts.getNeedNum() - appOuts.getDistributeNum(); + if (needNum < remainNum) { + appOuts.setDistributeNum(appOuts.getNeedNum()); + remainNum = remainNum - needNum; + } else { + appOuts.setDistributeNum(appOuts.getDistributeNum() + remainNum); + remainNum = 0; + } + if (remainNum == originNum) { + // 没用到这条库存 + continue; + } + // 生成拣选计划 + TAppPickPlan pickPlan = new TAppPickPlan( + UUIDUtils.getNewUUID(), + stock.getVehicleId(), + stock.getGoodsId(), + originNum - remainNum, + 2, + appOuts.getTaskId(), + appOuts.getDestination() + ); + newPickPlans.add(pickPlan); + // 库存变动了,需要更新库存信息 + stock.setRemainNum(remainNum); + // 拣选任务状态 + int pickTaskStatus = WmsPickTaskStatusEnum.TEMP.getCode(); + // 库存正常 + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OK.getCode())) { + // 需要生成出库任务 + newOutWmsTasks.add(new TAppTask( + UUIDUtils.getNewUUID(), + WmsTaskTypeEnums.OUT.getCode(), + 0, + 9, + stock.getVehicleId(), + stock.getLocationId(), + null, + null, + LocalDateTime.now(), + null, + AppConstant.EMPTY_GOODS_ID, + 0, + 0, + appOuts.getUserName(), + "", + appOuts.getDestination(), + "" + )); + stock.setStockStatus(WmsStockStatusEnums.OUTING.getCode()); + thisTimeOutVehicleIds.add(stock.getVehicleId()); + updateVehicleEquipMapByLocation(equipVehicleMap, stock.getVehicleId(), stock.getLocationId()); + } + // 如果是已经出库的库存 + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OUTED.getCode())) { + pickTaskStatus = WmsPickTaskStatusEnum.WAIT.getCode(); + } + // 已有的拣选任务 + List oldPickTasks = new ArrayList<>(); + if (pickTasks != null) { + oldPickTasks = pickTasks.stream().filter(pickTask -> + Objects.equals(pickTask.getPickStand(), appOuts.getDestination()) + && pickTask.getVehicleId().equals(stock.getVehicleId()) + && !Objects.equals(pickTask.getPickStatus(), WmsPickTaskStatusEnum.FOR_IN.getCode())).toList(); + } + // 新生成的拣选任务 + List newOldPickTasks = newPickTasks.stream().filter(pickTask -> pickTask.getVehicleId().equals(stock.getVehicleId()) + && Objects.equals(pickTask.getPickStand(), appOuts.getDestination()) + && !Objects.equals(pickTask.getPickStatus(), WmsPickTaskStatusEnum.FOR_IN.getCode())).toList(); + // 生成拣选任务 + if (oldPickTasks.isEmpty() && newOldPickTasks.isEmpty()) { + newPickTasks.add(new TAppPickTask( + UUIDUtils.getNewUUID(), + appOuts.getDestination(), + stock.getVehicleId(), + pickTaskStatus, + LocalDateTime.now(), + null, null, null + )); + } + } + } + + /** + * 解析工作 + * 实现 + */ + @Override + @Transactional + public void executeKateWorks() { + try { + // 查询所有的未完成的工作 + List allWorks = appWorkService.list(new LambdaQueryWrapper() + .notIn(TAppWork::getWorkStatus, -1, 2) + .ne(TAppWork::getIsOut, 1) + .apply("distribute_num < need_num")); + if (allWorks == null || allWorks.isEmpty()) { + // 没有未完成的工作 + return; + } + // 获取站台容量配置 + int standCapacity = 8; + try { + standCapacity = Integer.parseInt(appCommon.getConfigByKey(AppConfigKeyEnums.STAND_CAPACITY.getKey())); + } catch (Exception e) { + log.warn("获取站台容量失败,使用默认配置。"); + } + // 查找到所有的可用的拣选站台 + List standList = appStandService.list(new LambdaQueryWrapper() + .eq(TAppStand::getStandType, 1)); + if (standList == null || standList.isEmpty()) { + log.error("没有配置拣选站台,请添加站台数据。"); + return; + } + // 可用站台号列表 + List usableStandIds = standList.stream().filter(stand -> stand.getStandStatus() == WmsUsableStatusEnums.USABLE.getCode()).map(TAppStand::getStandId).toList(); + if (usableStandIds.isEmpty()) { + log.error("没有可用站台。"); + return; + } + // 获取可用堆垛机 + List usableStackers = appEquipmentService.list(new LambdaQueryWrapper() + .eq(TAppEquipment::getEquipmentType, 1) + .eq(TAppEquipment::getEquipmentStatus, WmsUsableStatusEnums.USABLE.getCode())); + // 查询库存,条件:剩余数量>0,回库中、锁定以外的库存状态。 + List allStocks = appStockService.list(new LambdaQueryWrapper() + .le(TAppStock::getStockStatus, WmsStockStatusEnums.OUTED.getCode()) + .gt(TAppStock::getRemainNum, 0) + .orderByAsc(TAppStock::getFirstInTime)); + if (allStocks == null || allStocks.isEmpty()) { + log.error("没有库存。"); + return; + } + // 需要保存的信息 + List newOutWmsTasks = new ArrayList<>(); + List newPickTasks = new ArrayList<>(); + List thisTimeOutVehicleIds = new ArrayList<>(); + List newPickPlans = new ArrayList<>();// 拣选计划 + for (TAppStand stand : standList) { + // 查询这个站台正在拣配的工作组合(除物料外) + List currentStandWorks = appStandWorkService.list(new LambdaQueryWrapper() + .eq(TAppStandWork::getStandId, stand.getStandId())); + if (currentStandWorks == null || currentStandWorks.isEmpty()) { + // 没有显示当前的拣选工作,跳过 + continue; + } + // 找到这个站台剩余工作中未完成且已分配数量小于需求数量的工作 + List works = allWorks.stream().filter(work -> { + boolean result = work.getWorkStand().equals(stand.getStandId()); + if (StringUtils.isNotEmpty(currentStandWorks.getFirst().getWorkOrder())) { + result = result && Objects.equals(work.getWorkOrder(), currentStandWorks.getFirst().getWorkOrder()); + } + if (StringUtils.isNotEmpty(currentStandWorks.getFirst().getProductId())) { + result = result && Objects.equals(work.getProductId(), currentStandWorks.getFirst().getProductId()); + } + if (StringUtils.isNotEmpty(currentStandWorks.getFirst().getSingleProductId())) { + result = result && Objects.equals(work.getSingleProductId(), currentStandWorks.getFirst().getSingleProductId()); + } + if (StringUtils.isNotEmpty(currentStandWorks.getFirst().getBoxNo())) { + result = result && Objects.equals(work.getBoxNo(), currentStandWorks.getFirst().getBoxNo()); + } + return result; + }).toList(); + if (works.isEmpty()) { + // 这个站台没有工作 + continue; + } + if (stand.getStandStatus() != WmsUsableStatusEnums.USABLE.getCode()) { + log.warn("{}不可用,跳过任务生成。", stand.getStandName()); + continue; + } + // 获取这个站台拣选任务 + List thisStandPickTasks = appPickTaskService.list(new LambdaQueryWrapper() + .eq(TAppPickTask::getPickStand, stand.getStandId()) + .ne(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.FOR_IN.getCode())); + // 数量太多,不允许下发。 + boolean allowNewVehicle = thisStandPickTasks == null || thisStandPickTasks.size() < standCapacity; + // 判断这个站台有没有紧急出库的任务未完成 + List thisStandEmergencyOuts = appOutsService.list(new LambdaQueryWrapper() + .eq(TAppOuts::getOutType, WmsOutTypeEnums.EMERGE.getCode()) + .eq(TAppOuts::getDestination, stand.getStandId()) + .apply("pick_num < need_num")); + if (!thisStandEmergencyOuts.isEmpty()) { + allowNewVehicle = false; + } + // 获得可用堆垛机 + Map equipVehicleMap = new HashMap<>(); + getVehicleEquipMap(stand.getStandId(), allowNewVehicle, equipVehicleMap, usableStackers); + for (TAppStock stock : allStocks) { + TAppLocation thisStockLocation = appCommon.getInstantLocationByLocationId(stock.getLocationId()); + if (thisTimeOutVehicleIds.contains(stock.getVehicleId())) { + // 设置这个箱子的库存都为出库中 + stock.setStockStatus(WmsStockStatusEnums.OUTING.getCode()); + } + // 库存没法分配了 + if (stock.getRemainNum() <= 0) { + continue; + } + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OK.getCode())) { + if (thisStockLocation == null || !StringUtils.isEmpty(equipVehicleMap.get(thisStockLocation.getEquipmentId())) + || !equipVehicleMap.containsKey(thisStockLocation.getEquipmentId())) { + // 不允许生成新箱子 + continue; + } + } + // 判断当前的这条库存,当前站台是否需要 + int originRemainNum = stock.getRemainNum(); + int remainNum = stock.getRemainNum(); + for (TAppWork thisWork : works) { + if (!Objects.equals(thisWork.getGoodsId(), stock.getGoodsId())) { + // 不是这个料 + continue; + } + if (remainNum == 0) { + break; + } + // 需求数量 + int remainNeedNum = thisWork.getNeedNum() - thisWork.getDistributeNum(); + if (remainNeedNum <= 0) { + // 不需要分配 + continue; + } + int thisTimePickNum; + if (remainNeedNum < remainNum) { + thisTimePickNum = remainNeedNum; + thisWork.setDistributeNum(thisWork.getNeedNum()); + remainNum = remainNum - thisTimePickNum; + } else { + thisTimePickNum = remainNum; + thisWork.setDistributeNum(thisWork.getDistributeNum() + thisTimePickNum); + remainNum = 0; + } + thisWork.setWorkStatus(1);// 正在做 + // 生成拣选计划 + TAppPickPlan pickPlan = new TAppPickPlan( + UUIDUtils.getNewUUID(), + stock.getVehicleId(), + stock.getGoodsId(), + thisTimePickNum, + 1, + thisWork.getWorkIndex(), + stand.getStandId() + ); + newPickPlans.add(pickPlan); + } + if (remainNum == originRemainNum) { + // 没用到这条库存 + continue; + } + // 库存变动了,需要更新库存信息 + stock.setRemainNum(remainNum); + // 拣选任务状态 + int pickTaskStatus = WmsPickTaskStatusEnum.TEMP.getCode(); + // 库存正常 + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OK.getCode())) { + // 需要生成出库任务 + newOutWmsTasks.add(new TAppTask( + UUIDUtils.getNewUUID(), + WmsTaskTypeEnums.OUT.getCode(), + 0, + 1, + stock.getVehicleId(), + stock.getLocationId(), + null, + null, + LocalDateTime.now(), + null, + AppConstant.EMPTY_GOODS_ID, + 0, + 0, + "wms_auto", + "", + stand.getStandId(), + "" + )); + // 更新信息 + if (thisStockLocation != null) { + equipVehicleMap.replace(thisStockLocation.getEquipmentId(), stock.getVehicleId()); + } + thisTimeOutVehicleIds.add(stock.getVehicleId()); + stock.setStockStatus(WmsStockStatusEnums.OUTING.getCode()); + } + // 如果是已经出库的库存 + if (Objects.equals(stock.getStockStatus(), WmsStockStatusEnums.OUTED.getCode())) { + pickTaskStatus = WmsPickTaskStatusEnum.WAIT.getCode(); + } + // 已有的拣选任务 + List oldPickTasks = new ArrayList<>(); + if (thisStandPickTasks != null) { + oldPickTasks = thisStandPickTasks.stream().filter(pickTask -> pickTask.getVehicleId().equals(stock.getVehicleId())).toList(); + } + // 新生成的拣选任务 + List newOldPickTasks = newPickTasks.stream().filter(pickTask -> pickTask.getVehicleId().equals(stock.getVehicleId()) + && Objects.equals(pickTask.getPickStand(), stand.getStandId())).toList(); + // 生成拣选任务 + if (oldPickTasks.isEmpty() && newOldPickTasks.isEmpty()) { + newPickTasks.add(new TAppPickTask( + UUIDUtils.getNewUUID(), + stand.getStandId(), + stock.getVehicleId(), + pickTaskStatus, + LocalDateTime.now(), + null, null, null + )); + } + } + // 更新工作状态 + appWorkService.updateBatchById(works); + } + // 保存出库任务 + if (!newOutWmsTasks.isEmpty()) { + appTaskService.saveBatch(newOutWmsTasks); + } + // 保存拣选任务 + if (!newPickTasks.isEmpty()) { + appPickTaskService.saveBatch(newPickTasks); + } + // 合并拣选计划---箱号+料号+站台+类型+index进行数量叠加 + if (!newPickPlans.isEmpty()) { + appPickPlanService.saveOrUpdateBatch(mergedPickPlan(newPickPlans)); + } + // 更新库存信息 + appStockService.updateBatchById(allStocks); + // 更新载具信息 + if (!thisTimeOutVehicleIds.isEmpty()) { + appVehicleService.update(new LambdaUpdateWrapper() + .set(TAppVehicle::getVehicleStatus, WmsVehicleStatusEnums.OUT.getCode()) + .in(TAppVehicle::getVehicleId, thisTimeOutVehicleIds)); + } + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + log.error("解析工作发生异常。{}", StringUtils.objectToString(e)); + } + } + + /** + * 修复工作 + * 实现 + */ + @Override + @Transactional + public void repairKateWorks() { + try { + // 查找非暂存的工作 + List allWorks = appWorkService.list(); + if (allWorks == null || allWorks.isEmpty()) { + return; + } + // 查询出库的库存 + List allStocks = appStockService.list(new LambdaQueryWrapper().orderByAsc(TAppStock::getFirstInTime)); + // 查询所有的拣选任务 + List allPickTasks = appPickTaskService.list(new LambdaQueryWrapper() + .ne(TAppPickTask::getPickStatus, WmsPickTaskStatusEnum.FOR_IN.getCode())); + // 根据工单map一下 + Map> worksMap = allWorks.stream().collect(Collectors.groupingBy(TAppWork::getWorkOrder)); + for (String workOrder : worksMap.keySet()) { + // 工作列表 + List works = worksMap.get(workOrder); + // 当前工单是否全部完成 + boolean ifAllFinished = true; + // 工作记录 + List workRecords = new ArrayList<>(); + for (TAppWork work : works) { + if (work.getWorkStatus() == -1) { + // 暂存工作,不算完成 + ifAllFinished = false; + continue; + } + if (work.getFinishNum() >= work.getNeedNum()) { + // 已经拣选完成的改成完成状态 + if (work.getWorkStatus() != 2) { + work.setWorkStatus(2); + work.setLackStatus(0); + } + // 添加记录 + workRecords.add(RecordOfWork(work)); + continue; + } + // 判断库内料分配的数量是否需要修正 + if (work.getIsOut() != 1) { + List thisGoodsOutStocks = allStocks.stream().filter(stock -> stock.getGoodsId().equals(work.getGoodsId())).toList(); + if (thisGoodsOutStocks.isEmpty()) { + // 缺料 + work.setWorkStatus(2); + work.setLackStatus(1); + work.setFinishTime(LocalDateTime.now()); + // 缺料不能关闭订单 + ifAllFinished = false; + continue; + } else { + // 没有出库中或者已出库的则修正已分配数量 + List outStocks = thisGoodsOutStocks.stream().filter(stock -> { + boolean result = stock.getStockStatus().equals(WmsStockStatusEnums.OUTING.getCode()) + || stock.getStockStatus().equals(WmsStockStatusEnums.OUTED.getCode()); + return result && stock.getGoodsId().equals(work.getGoodsId()); + }).toList(); + if (outStocks.isEmpty()) { + work.setWorkStatus(1); + work.setDistributeNum(work.getFinishNum()); + ifAllFinished = false; + continue; + } else { + List vehicleIds = outStocks.stream().map(TAppStock::getVehicleId).distinct().toList(); + // 查询这些载具到这个站台的拣选任务 + List pickTasks = allPickTasks.stream().filter(pickTask -> + vehicleIds.contains(pickTask.getVehicleId()) && Objects.equals(pickTask.getPickStand(), work.getWorkStand())).toList(); + if (pickTasks.isEmpty()) { + work.setWorkStatus(1); + work.setDistributeNum(work.getFinishNum()); + ifAllFinished = false; + continue; + } + } + } + } + if (work.getWorkStatus() == 2) { + // 未完成的状态要改为未完成 + work.setWorkStatus(1); + } + ifAllFinished = false; + } + + if (ifAllFinished) { + // 添加记录 + appWorkRecordService.saveBatch(workRecords); + // 移除 + appWorkService.removeBatchByIds(works); + // 将当前工单设置为完成状态 + appDbsService.update(new LambdaUpdateWrapper() + .set(TAppDbs::getDbsStatus, 2) + .set(TAppDbs::getFinishTime, LocalDateTime.now()) + .set(TAppDbs::getRealWorkDate, LocalDate.now()) + .eq(TAppDbs::getWorkOrder, workOrder)); + } else { + // 更新工作 + appWorkService.updateBatchById(works); + } + } + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + log.error("自动修复工作异常。{}", StringUtils.objectToString(e)); + } + } + + /** + * 修复站台工作--实现 + */ + @Override + @Transactional + public void repairStandWorks() { + // 查找到所有的可用的拣选站台 + List standList = appStandService.list(new LambdaQueryWrapper() + .eq(TAppStand::getStandType, 1) + .eq(TAppStand::getStandStatus, WmsUsableStatusEnums.USABLE.getCode())); + if (standList == null || standList.isEmpty()) { + log.error("没有可用的站台,跳过。"); + return; + } + // 可用站台号列表 + List usableStandIds = standList.stream().map(TAppStand::getStandId).distinct().toList(); + for (String usableStandId : usableStandIds) { + try { + repairStandWork(usableStandId); + } catch (Exception e) { + // 回滚事务 + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + log.error("构建站台工作(StandWork)失败。"); + } + } + } + + /** + * 转化记录 + * + * @param appWork 记录 + * @return 转化后的记录 + */ + private TAppWorkRecord RecordOfWork(TAppWork appWork) { + return new TAppWorkRecord( + appWork.getWorkIndex(), + appWork.getWorkOrder(), + appWork.getPlanStartDate(), + appWork.getProductId(), + appWork.getSingleProductId(), + appWork.getBoxNo(), + appWork.getGoodsId(), + appWork.getNeedNum(), + appWork.getFinishNum(), + appWork.getWorkStand(), + appWork.getWorkStatus(), + appWork.getWorkUser(), + appWork.getCreateTime(), + appWork.getFinishTime(), + appWork.getLackStatus(), + appWork.getIsOut() + ); + } + + /** + * 构建站台工作StandWork + * + * @param standId 站台号 + */ + private void repairStandWork(String standId) { + List allWorks = appWorkService.list(new LambdaQueryWrapper() + .eq(TAppWork::getWorkStand, standId)); + if (allWorks == null || allWorks.isEmpty()) { + return; + } + // 查询到当前站台的工作 + List standWorks = appStandWorkService.list(new LambdaQueryWrapper() + .eq(TAppStandWork::getStandId, standId)); + if (standWorks == null || standWorks.isEmpty()) { + // 构建新的StandWork + genNewStandWork(standId, allWorks); + } else { + // 判断当前选项的工作是否已经全部完成 + TAppStandWork currentStandWork = standWorks.getFirst(); + // 移除旧的并添加新的 + removeOldStandWork(standId, currentStandWork, allWorks); + } + } + + /** + * 创建一个新的StandWork + * + * @param standId 站台号 + * @param allWorks 当前站台所有工作 + */ + private void genNewStandWork(String standId, List allWorks) { + // 判断这个站台是否还有其他未完成的工作 + List works = allWorks.stream().filter(work -> !List.of(-1, 2).contains(work.getWorkStatus())).toList(); + if (works.isEmpty()) { + // 这个站台没有未完成的工作了 + return; + } + TAppWork targetWork = null; + // 进行中的工作 + List doingWorks = works.stream().filter(work -> work.getWorkStatus() == 1).toList(); + // 未开始的工作 + List waitWorks = works.stream().filter(work -> work.getWorkStatus() == 0).toList(); + if (!doingWorks.isEmpty()) { + targetWork = doingWorks.getFirst(); + } else if (!waitWorks.isEmpty()) { + targetWork = waitWorks.getFirst(); + } + // 没有工作 + if (targetWork == null) { + return; + } + // 添加standWork + TAppStandWork standWork = new TAppStandWork(); + standWork.setWorkId(UUIDUtils.getNewUUID()); + standWork.setStandId(standId); + standWork.setWorkOrder(targetWork.getWorkOrder()); + standWork.setProductId(targetWork.getProductId()); + if (StringUtils.isNotEmpty(targetWork.getSingleProductId())) { + standWork.setSingleProductId(targetWork.getSingleProductId()); + } + standWork.setBoxNo(targetWork.getBoxNo()); + appStandWorkService.save(standWork); + } + + /** + * 移除过期的StandWork并添加新的 + * + * @param standId 站台号 + * @param currentStandWork 现有的StandWork + * @param allWorks 当前站台所有工作 + */ + private void removeOldStandWork(String standId, TAppStandWork currentStandWork, List allWorks) { + boolean genNewStandWork = false; + if (currentStandWork == null || StringUtils.isEmpty(currentStandWork.getWorkOrder())) { + return; + } + List filterWorks = allWorks.stream().filter(work -> { + boolean result = Objects.equals(work.getWorkOrder(), currentStandWork.getWorkOrder()) + && Objects.equals(work.getProductId(), currentStandWork.getProductId()) + && Objects.equals(work.getBoxNo(), currentStandWork.getBoxNo()); + if (StringUtils.isNotEmpty(currentStandWork.getSingleProductId())) { + result = result && Objects.equals(work.getSingleProductId(), currentStandWork.getSingleProductId()); + } + return result; + }).toList(); + if (!filterWorks.isEmpty()) { + // 判断当前的工作中有没有未完成的 + List notFinishedWorks = filterWorks.stream().filter(work -> !List.of(-1, 2).contains(work.getWorkStatus())).toList(); + if (notFinishedWorks.isEmpty()) { + // 当前站台工作全部完成---移除当前的,并增加新的 + genNewStandWork = true; + } + } else { + genNewStandWork = true; + } + if (genNewStandWork) { + appStandWorkService.remove(new LambdaQueryWrapper().eq(TAppStandWork::getStandId, standId)); + genNewStandWork(standId, allWorks); + } + } + + /** + * 生成设备载具map + * + * @param standId 站台号 + * @param allowNewVehicle 是否允许新箱出库 + * @param equipVehicleMap 设备载具map + * @param usableStackers 可用堆垛机 + */ + private void getVehicleEquipMap(String standId, boolean allowNewVehicle, Map equipVehicleMap, List usableStackers) { + if (allowNewVehicle && !usableStackers.isEmpty()) { + usableStackers.forEach(equipment -> { + if (equipVehicleMap.containsKey(equipment.getEquipmentId())) { + return; + } + equipVehicleMap.put(equipment.getEquipmentId(), ""); + }); + } + // 获取这个站台请求过的出库任务 + List outTaskList = appTaskService.list(new LambdaQueryWrapper() + .eq(TAppTask::getTaskType, WmsTaskTypeEnums.OUT.getCode()) + .eq(StringUtils.isNotEmpty(standId), TAppTask::getCallStand, standId)); + if (outTaskList != null && !outTaskList.isEmpty()) { + // 当这个设备存在出库任务时,更新设备载具map + for (TAppTask outTask : outTaskList) { + TAppLocation originLocation = appCommon.getInstantLocationByLocationId(outTask.getOrigin()); + if (originLocation != null && equipVehicleMap.containsKey(originLocation.getEquipmentId())) { + equipVehicleMap.replace(originLocation.getEquipmentId(), outTask.getVehicleId()); + } + } + } + } + + /** + * 合并拣选计划列表 + * + * @param beforeMergePickPlanList 合并前的列表 + * @return 合并后的列表 + */ + private List mergedPickPlan(List beforeMergePickPlanList) { + Map mergedPickPlanMap = new HashMap<>(); + // 查询出目前已经存在的pickPlan + List existPickPlanList = appPickPlanService.list(); + // 循环merge + for (TAppPickPlan beforeMergePickPlan : beforeMergePickPlanList) { + // key:站台+箱号+料号+拣选类型+index + String key = beforeMergePickPlan.getStandId() + "_" + + beforeMergePickPlan.getVehicleId() + "_" + + beforeMergePickPlan.getGoodsId() + "_" + + beforeMergePickPlan.getPickType() + "_" + + beforeMergePickPlan.getWorkIndex(); + if (mergedPickPlanMap.containsKey(key)) { + // 之前已经合并过 + TAppPickPlan mergedPickPlan = mergedPickPlanMap.get(key); + mergedPickPlan.setPlanPickQty(mergedPickPlan.getPlanPickQty() + beforeMergePickPlan.getPlanPickQty()); + mergedPickPlanMap.replace(key, mergedPickPlan); + } else { + // 之前没有合并过 + TAppPickPlan existPickPlan = existPickPlanList.stream().filter(pickPlan -> Objects.equals(pickPlan.getStandId(), beforeMergePickPlan.getStandId()) + && Objects.equals(pickPlan.getVehicleId(), beforeMergePickPlan.getVehicleId()) + && Objects.equals(pickPlan.getGoodsId(), beforeMergePickPlan.getGoodsId()) + && Objects.equals(pickPlan.getPickType(), beforeMergePickPlan.getPickType()) + && Objects.equals(pickPlan.getWorkIndex(), beforeMergePickPlan.getWorkIndex())).findFirst().orElse(null); + if (existPickPlan != null) { + // 已经存过表 + existPickPlan.setPlanPickQty(existPickPlan.getPlanPickQty() + beforeMergePickPlan.getPlanPickQty()); + mergedPickPlanMap.put(key, existPickPlan); + } else { + // 没有存过表 + existPickPlan = new TAppPickPlan( + beforeMergePickPlan.getPlanId(), + beforeMergePickPlan.getVehicleId(), + beforeMergePickPlan.getGoodsId(), + beforeMergePickPlan.getPlanPickQty(), + beforeMergePickPlan.getPickType(), + beforeMergePickPlan.getWorkIndex(), + beforeMergePickPlan.getStandId() + ); + } + mergedPickPlanMap.put(key, existPickPlan); + } + } + return new ArrayList<>(mergedPickPlanMap.values()); + } + + /** + * 这个库位是否可以出库 + * + * @param locationId 库位号 + * @param equipVehicleMap 堆垛机与载具的映射 + * @return 结果true:可以出库,false:不可以出库 + */ + private boolean ifThisLocationCantOut(String locationId, Map equipVehicleMap) { + TAppLocation location = appCommon.getInstantLocationByLocationId(locationId); + if (location == null || location.getIsLock() == 1) { + return true; + } + return !equipVehicleMap.containsKey(location.getEquipmentId()) || !Objects.equals(equipVehicleMap.get(location.getEquipmentId()), ""); + } + + /** + * 更新载具设备map + * + * @param equipVehicleMap 载具设备map + * @param vehicleId 载具号 + * @param locationId 库位号 + */ + private void updateVehicleEquipMapByLocation(Map equipVehicleMap, String vehicleId, String locationId) { + TAppLocation location = appCommon.getInstantLocationByLocationId(locationId); + if (location == null) { + return; + } + if (equipVehicleMap.containsKey(location.getEquipmentId())) { + equipVehicleMap.replace(location.getEquipmentId(), vehicleId); + } + } +} diff --git a/src/main/resources/application.yml b/src/main/resources/application.yml new file mode 100644 index 0000000..03498f5 --- /dev/null +++ b/src/main/resources/application.yml @@ -0,0 +1,51 @@ +spring: + application: + name: wms_main + # 数据库配置 + datasource: + driver-class-name: com.mysql.cj.jdbc.Driver + # 公司网络 +# url: jdbc:mysql://112.4.208.194:3001/wms_kate_wuxi?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone=Asia/Shanghai +# username: developer +# password: developer + # 本地 + url: jdbc:mysql://localhost:3306/wms_yachi_nantong?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true + username: root + password: liangzhou + # 卡特服务器 +# url: jdbc:mysql://10.90.83.37:3306/wms_kate_wuxi?characterEncoding=utf8&serverTimezone=Asia/Shanghai&allowMultiQueries=true&rewriteBatchedStatements=true +# username: developer +# password: baokai + + profiles: + active: online + + servlet: + multipart: + max-file-size: 100MB #设置允许单个文件上传的大小 + max-request-size: 1000MB #设置允许上传的总的文件的大小 + +# 服务配置 +server: + port: 12315 + servlet: + context-path: / + +mybatis-plus: + mapper-locations: classpath*:mapper/*.xml # mapper.xml扫描包 + type-aliases-package: com.wms.entity.table # 实体类扫描包 + configuration: + map-underscore-to-camel-case: true # 开启驼峰映射 + cache-enabled: false # 是否开启二级缓存 + global-config: + db-config: + id-type: assign_id + update-strategy: not_null + +logging: + config: classpath:logback-spring.xml + + + + + diff --git a/src/main/resources/logback-spring.xml b/src/main/resources/logback-spring.xml new file mode 100644 index 0000000..1f019d9 --- /dev/null +++ b/src/main/resources/logback-spring.xml @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + ${LOG_HOME}/info/%d{yyyy-MM-dd}/%d{yyyy-MM-dd}.%i.log + 10MB + + 30 + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + + + INFO + ACCEPT + DENY + + + + + + ${LOG_HOME}/warning/%d{yyyy-MM-dd}/%d{yyyy-MM-dd}.%i.log + 10MB + + 30 + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + + + WARNING + ACCEPT + DENY + + + + + + ${LOG_HOME}/error/%d{yyyy-MM-dd}/%d{yyyy-MM-dd}.%i.log + 10MB + + 30 + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + + + ERROR + ACCEPT + DENY + + + + + + ${LOG_HOME}/debug/%d{yyyy-MM-dd}/%d{yyyy-MM-dd}.%i.log + 10MB + + 366 + + + + %d{yyyy-MM-dd HH:mm:ss.SSS} [%thread] %-5level %logger{50} - %msg%n + + + DEBUG + ACCEPT + DENY + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/mapper/AppConfigMapper.xml b/src/main/resources/mapper/AppConfigMapper.xml new file mode 100644 index 0000000..edb7c59 --- /dev/null +++ b/src/main/resources/mapper/AppConfigMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppDbsMapper.xml b/src/main/resources/mapper/AppDbsMapper.xml new file mode 100644 index 0000000..e1aeead --- /dev/null +++ b/src/main/resources/mapper/AppDbsMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppEquipmentMapper.xml b/src/main/resources/mapper/AppEquipmentMapper.xml new file mode 100644 index 0000000..5e7fee2 --- /dev/null +++ b/src/main/resources/mapper/AppEquipmentMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppGoodsMapper.xml b/src/main/resources/mapper/AppGoodsMapper.xml new file mode 100644 index 0000000..59879f3 --- /dev/null +++ b/src/main/resources/mapper/AppGoodsMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppImageMapper.xml b/src/main/resources/mapper/AppImageMapper.xml new file mode 100644 index 0000000..fe89acc --- /dev/null +++ b/src/main/resources/mapper/AppImageMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppJobsMapper.xml b/src/main/resources/mapper/AppJobsMapper.xml new file mode 100644 index 0000000..29ca284 --- /dev/null +++ b/src/main/resources/mapper/AppJobsMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppKanbanMapper.xml b/src/main/resources/mapper/AppKanbanMapper.xml new file mode 100644 index 0000000..b536930 --- /dev/null +++ b/src/main/resources/mapper/AppKanbanMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppLocationMapper.xml b/src/main/resources/mapper/AppLocationMapper.xml new file mode 100644 index 0000000..4b60a26 --- /dev/null +++ b/src/main/resources/mapper/AppLocationMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppOutsMapper.xml b/src/main/resources/mapper/AppOutsMapper.xml new file mode 100644 index 0000000..e844dae --- /dev/null +++ b/src/main/resources/mapper/AppOutsMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppOutsRecordMapper.xml b/src/main/resources/mapper/AppOutsRecordMapper.xml new file mode 100644 index 0000000..9679d32 --- /dev/null +++ b/src/main/resources/mapper/AppOutsRecordMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppPickPlanMapper.xml b/src/main/resources/mapper/AppPickPlanMapper.xml new file mode 100644 index 0000000..f8fe7f0 --- /dev/null +++ b/src/main/resources/mapper/AppPickPlanMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppPickTaskBakMapper.xml b/src/main/resources/mapper/AppPickTaskBakMapper.xml new file mode 100644 index 0000000..db5dea0 --- /dev/null +++ b/src/main/resources/mapper/AppPickTaskBakMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppPickTaskMapper.xml b/src/main/resources/mapper/AppPickTaskMapper.xml new file mode 100644 index 0000000..4500c73 --- /dev/null +++ b/src/main/resources/mapper/AppPickTaskMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppProductExtendMapper.xml b/src/main/resources/mapper/AppProductExtendMapper.xml new file mode 100644 index 0000000..a5cd6be --- /dev/null +++ b/src/main/resources/mapper/AppProductExtendMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppProductMapper.xml b/src/main/resources/mapper/AppProductMapper.xml new file mode 100644 index 0000000..4b7acd6 --- /dev/null +++ b/src/main/resources/mapper/AppProductMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppSingleProductMapper.xml b/src/main/resources/mapper/AppSingleProductMapper.xml new file mode 100644 index 0000000..17f6cf4 --- /dev/null +++ b/src/main/resources/mapper/AppSingleProductMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppStandMapper.xml b/src/main/resources/mapper/AppStandMapper.xml new file mode 100644 index 0000000..cd281dc --- /dev/null +++ b/src/main/resources/mapper/AppStandMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppStandWorkMapper.xml b/src/main/resources/mapper/AppStandWorkMapper.xml new file mode 100644 index 0000000..9e9d68f --- /dev/null +++ b/src/main/resources/mapper/AppStandWorkMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppStockMapper.xml b/src/main/resources/mapper/AppStockMapper.xml new file mode 100644 index 0000000..d537992 --- /dev/null +++ b/src/main/resources/mapper/AppStockMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppStockUpdateMapper.xml b/src/main/resources/mapper/AppStockUpdateMapper.xml new file mode 100644 index 0000000..766c074 --- /dev/null +++ b/src/main/resources/mapper/AppStockUpdateMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppTaskBakMapper.xml b/src/main/resources/mapper/AppTaskBakMapper.xml new file mode 100644 index 0000000..6501f9c --- /dev/null +++ b/src/main/resources/mapper/AppTaskBakMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppTaskMapper.xml b/src/main/resources/mapper/AppTaskMapper.xml new file mode 100644 index 0000000..e37fe47 --- /dev/null +++ b/src/main/resources/mapper/AppTaskMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppVehicleMapper.xml b/src/main/resources/mapper/AppVehicleMapper.xml new file mode 100644 index 0000000..38a6023 --- /dev/null +++ b/src/main/resources/mapper/AppVehicleMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppWcsTaskBakMapper.xml b/src/main/resources/mapper/AppWcsTaskBakMapper.xml new file mode 100644 index 0000000..d9fd027 --- /dev/null +++ b/src/main/resources/mapper/AppWcsTaskBakMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppWcsTaskMapper.xml b/src/main/resources/mapper/AppWcsTaskMapper.xml new file mode 100644 index 0000000..cbe0cf8 --- /dev/null +++ b/src/main/resources/mapper/AppWcsTaskMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppWorkMapper.xml b/src/main/resources/mapper/AppWorkMapper.xml new file mode 100644 index 0000000..fc2f32d --- /dev/null +++ b/src/main/resources/mapper/AppWorkMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/AppWorkRecordMapper.xml b/src/main/resources/mapper/AppWorkRecordMapper.xml new file mode 100644 index 0000000..07f01e1 --- /dev/null +++ b/src/main/resources/mapper/AppWorkRecordMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/SysMenuMapper.xml b/src/main/resources/mapper/SysMenuMapper.xml new file mode 100644 index 0000000..086bf7f --- /dev/null +++ b/src/main/resources/mapper/SysMenuMapper.xml @@ -0,0 +1,10 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/SysPermissionMapper.xml b/src/main/resources/mapper/SysPermissionMapper.xml new file mode 100644 index 0000000..e62d2c9 --- /dev/null +++ b/src/main/resources/mapper/SysPermissionMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/SysRoleMapper.xml b/src/main/resources/mapper/SysRoleMapper.xml new file mode 100644 index 0000000..51a91c6 --- /dev/null +++ b/src/main/resources/mapper/SysRoleMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/mapper/SysUserMapper.xml b/src/main/resources/mapper/SysUserMapper.xml new file mode 100644 index 0000000..e0daf28 --- /dev/null +++ b/src/main/resources/mapper/SysUserMapper.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/src/main/resources/sql/wms_kate_wuxi.sql b/src/main/resources/sql/wms_kate_wuxi.sql new file mode 100644 index 0000000..965dd2d --- /dev/null +++ b/src/main/resources/sql/wms_kate_wuxi.sql @@ -0,0 +1,4046 @@ +/* + Navicat Premium Dump SQL + + Source Server : 本地数据库 + Source Server Type : MySQL + Source Server Version : 80404 (8.4.4) + Source Host : localhost:3306 + Source Schema : wms_kate_wuxi + + Target Server Type : MySQL + Target Server Version : 80404 (8.4.4) + File Encoding : 65001 + + Date: 21/02/2025 08:19:52 +*/ + +SET NAMES utf8mb4; +SET FOREIGN_KEY_CHECKS = 0; + +-- ---------------------------- +-- Table structure for t_app_config +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_config`; +CREATE TABLE `t_app_config` ( + `config_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置id', + `config_key` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置键', + `config_value` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置值', + `config_type` int NOT NULL COMMENT '配置类型:1.输入框2.下拉多选3.开关', + `config_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置显示名称', + PRIMARY KEY (`config_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_config +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_config` (`config_id`, `config_key`, `config_value`, `config_type`, `config_name`) VALUES ('1', 'WcsPickTaskUrl', 'http://192.168.103.202:9980/api/wms/convey/conveyTask', 1, '发送拣选任务地址'); +INSERT INTO `t_app_config` (`config_id`, `config_key`, `config_value`, `config_type`, `config_name`) VALUES ('2', 'WcsStackerTaskUrl', 'http://192.168.103.202:9980/api/wms/wmsTask/setStackerTask', 1, '发送堆垛机任务地址'); +INSERT INTO `t_app_config` (`config_id`, `config_key`, `config_value`, `config_type`, `config_name`) VALUES ('3', 'WcsReleaseBoxUrl', 'http://192.168.103.202:9980/api/wms/convey/disposeVehicle', 1, '发送释放站台箱子地址'); +INSERT INTO `t_app_config` (`config_id`, `config_key`, `config_value`, `config_type`, `config_name`) VALUES ('4', 'WcsCancelPickTaskUrl', 'http://192.168.103.202:9980/api/wms/convey/cancel', 1, '发送取消拣选任务地址'); +INSERT INTO `t_app_config` (`config_id`, `config_key`, `config_value`, `config_type`, `config_name`) VALUES ('5', 'StandCapacity', '8', 1, '站台容量'); +INSERT INTO `t_app_config` (`config_id`, `config_key`, `config_value`, `config_type`, `config_name`) VALUES ('6', 'ImageIp', 'localhost:12315', 1, '存放图纸ip'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_dbs +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_dbs`; +CREATE TABLE `t_app_dbs` ( + `dbs_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键id', + `work_order` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '工单', + `product_id_origin` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'dbs原始未处理的零件号,成品号', + `product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '零件号,成品号', + `test_plan_start_date` date NOT NULL COMMENT 'TEST计划开始时间', + `test_plan_finish_date` date DEFAULT NULL COMMENT 'TEST计划完成时间', + `pnt_plan_start_date` date DEFAULT NULL COMMENT 'PNT计划开始时间', + `pnt_plan_finish_date` date DEFAULT NULL COMMENT 'PNT计划完成时间', + `plan_production` int NOT NULL COMMENT '计划产量/套', + `equipment_name` varchar(64) DEFAULT NULL COMMENT '设备名称', + `work_shift` varchar(16) DEFAULT NULL COMMENT '班次', + `family` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'Family', + `test_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'TestNo#', + `kitting_remark` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'K料备注', + `remark` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + `dbs_status` int NOT NULL COMMENT '状态---初始0', + `work_stand` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '工作站台', + `real_work_date` date DEFAULT NULL COMMENT '实际工作日期', + `finish_time` datetime DEFAULT NULL COMMENT '完成时间', + `first_import_time` datetime DEFAULT NULL COMMENT '初次导入时间', + `first_import_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '初次导入用户', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + PRIMARY KEY (`dbs_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_dbs +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010000', '110002140346', '4903958/HE-N', '4903958', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 20, '1#&4#&5#组装配', '早班', 'RCV', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010001', '110002140356', '4869861-A', '4869861', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 6, '1#&4#&5#组装配', '早班', 'LS', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010002', '110002147661', '6137644-A', '6137644', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 4, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010003', '110002140338', '4448048-A', '4448048', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 2, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010004', '110002140340', '4648501-A', '4648501', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 2, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010005', '110002147695', '4448048-A', '4448048', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 8, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010006', '110002140347', '4903958/HE-N', '4903958', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 30, '1#&4#&5#组装配', '早班', 'RCV', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010007', '110002147663', '9T5653-M', '9T5653', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 18, '1#&4#&5#组装配', '早班', 'QD3', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010008', '110002140399', '6137645-A', '6137645', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 12, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010009', '110002140395', '6125992-A', '6125992', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 5, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010010', '110002140339', '4448048-A', '4448048', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 4, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010011', '110002140348', '4903958/HE-N', '4903958', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 30, '1#&4#&5#组装配', '早班', 'RCV', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010012', '110002147667', '4648501-A', '4648501', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010013', '110002147668', '4948095-A', '4948095', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010014', '110002147669', '5090599-A', '5090599', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010015', '110002140341', '4648501-A', '4648501', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010016', '110002140350', '4948095-A', '4948095', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 10, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, '验证6件6164612 和8件6164614', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010017', '110002140381', '5090599-A', '5090599', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010018', '110002147706', '4948095-A', '4948095', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 4, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010019', '110002147718', '5090599-A', '5090599', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 4, '1#&4#&5#组装配', '早班', 'MB', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010020', '110002140355', '4903958/HE-N', '4903958', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 30, '1#&4#&5#组装配', '早班', 'RCV', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010021', '110002147672', '5973476-MA', '5973476', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 10, '1#&4#&5#组装配', '早班', 'HMS', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010022', '110002140333', '2906005-MA', '2906005', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 2, '1#&4#&5#组装配', '早班', 'WL50', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010023', '110002140351', '4T2747-MA', '4T2747', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 12, '1#&4#&5#组装配', '早班', 'WL50', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010024', '110002140320', '1334234-M', '1334234', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 1, '1#&4#&5#组装配', '早班', 'WL30', 'Test 04#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010025', '110002140393', '6063779-N', '6063779', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 20, '1#&4#&5#组装配', '早班', 'TRS', 'Test 05#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010026', '110002152076', '5013713-A', '5013713', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 18, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', '已K料', '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010027', '110002140352', '5013711-A', '5013711', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 6, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', '已K料', '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010028', '110002146548', '6497624-A', '6497624', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 9, '1#&4#&5#组装配', '早班', 'Fenix', 'Test 05#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010029', '110002147665', '5013712-A', '5013712', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 18, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', '已K料', '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010030', '110002147671', '5872375-MA', '5872375', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 5, '1#&4#&5#组装配', '早班', 'Fenix', 'Test 05#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010031', '110002147670', '6223020-MA', '6223020', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 1, '1#&4#&5#组装配', '早班', 'Fenix', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010032', '110002139336', '5872375-MA', '5872375', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 1, '1#&4#&5#组装配', '早班', 'Fenix', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010033', '110002147666', '5013713-A', '5013713', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010034', '110002140354', '5013712-A', '5013712', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 6, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010035', '110002147673', '5013711-A', '5013711', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 4, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010036', '110002147674', '5978192-A', '5978192', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 12, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010037', '110002140380', '5013713-A', '5013713', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 6, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010038', '110002147715', '5013713-A', '5013713', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 4, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010039', '110002147687', '3137668-MN', '3137668', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 54, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010040', '110002152078', '5013713-A', '5013713', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 6, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010041', '110002147712', '5013712-A', '5013712', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 6, '1#&4#&5#组装配', '早班', 'EH-Steering', 'Test 05#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010042', '110002147662', '5853920-A', '5853920', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 5, '6#组装配', '早班', 'QD1', 'Test 06#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010043', '110002140322', '1483530-A', '1483530', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 5, '6#组装配', '早班', 'QCT', 'Test 06#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010044', '110002152077', '1051583-MN', '1051583', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 10, '6#组装配', '早班', 'QCT', 'Test 06#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010045', '110002140324', '2176720-MN', '2176720', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 8, '6#组装配', '早班', 'QCT', 'Test 06#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010046', '110002140332', '2451669-MA', '2451669', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 1, '6#组装配', '早班', 'QCT', 'Test 06#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010047', '110002140330', '2451668-A', '2451668', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 6, '6#组装配', '早班', 'QCT', 'Test 06#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010048', '110002140392', '6055348-A', '6055348', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 3, '6#组装配', '早班', 'HMS', 'Test 06#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010049', '110002140323', '2130087-M', '2130087', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 7, '6#组装配', '早班', 'MTV', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010050', '110002140389', '5853920-A', '5853920', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 6, '6#组装配', '早班', 'QD1', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010051', '110002140388', '5585127-MA', '5585127', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 1, '6#组装配', '早班', 'QD1', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010052', '110002140239', '3402788', '3402788', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 6, '6#组装配', '早班', 'QD1', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010053', '110002140343', '4860999-A', '4860999', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 3, '6#组装配', '早班', 'QD1', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010054', '110002147675', '2451668-A', '2451668', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 1, '6#组装配', '早班', 'QCT', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010055', '110002147676', '6055348-A', '6055348', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 3, '6#组装配', '早班', 'HMS', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010056', '110002147682', '2343042-MA', '2343042', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 1, '6#组装配', '早班', 'QD1', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010057', '110002147681', '2343042-A', '2343042', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 12, '6#组装配', '早班', 'QD1', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010058', '110002147723', '5585127-A', '5585127', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 12, '6#组装配', '早班', 'QD1', 'Test 06#', NULL, '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010059', '110002147680', '2176720-MN', '2176720', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 10, '6#组装配', '早班', 'QCT', 'Test 06#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010060', '110002140665', '9T5957-A', '9T5957', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 2, '1#&4#&5#组装配', '早班', 'Combo', 'Test 01#', '已K料', '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010061', '110002140675', '5936452-A', '5936452', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 2, '1#&4#&5#组装配', '早班', 'Combo', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010062', '110002140594', '9T5957-MA', '9T5957', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 6, '1#&4#&5#组装配', '早班', 'Combo', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010063', '110002146587', '6457847-A', '6457847', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 1, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010064', '110002146588', '6457847-A', '6457847', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 6, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010065', '110002140666', '1494133-MA', '1494133', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 4, '1#&4#&5#组装配', '早班', 'BRK', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010066', '110002140674', '9T4769-M', '9T4769', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 1, '1#&4#&5#组装配', '早班', 'BRK', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010067', '110002140595', '5241514-A', '5241514', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 6, '1#&4#&5#组装配', '早班', 'WTS', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010068', '110002140669', '2224744-A', '2224744', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 2, '1#&4#&5#组装配', '早班', 'MTV', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010069', '110002140598', '4832252-A', '4832252', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 10, '1#&4#&5#组装配', '早班', 'MTV', 'Test 01#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010070', '110002140599', '4832252-A', '4832252', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 5, '1#&4#&5#组装配', '早班', 'MTV', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010071', '110002140676', '6128271-A', '6128271', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 5, '1#&4#&5#组装配', '早班', 'MTV', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010072', '110002140668', '1668495-MA', '1668495', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010073', '110002140670', '4413485-A', '4413485', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 3, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010074', '110002140671', '4413485-A', '4413485', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 1, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010075', '110002147785', '4413485-A', '4413485', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 10, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010076', '110002147786', '4413485-A', '4413485', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 2, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010077', '110002146599', '1275500-A', '1275500', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 2, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010078', '110002154045', '6457847-A', '6457847', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 4, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010079', '110002146589', '6457847-A', '6457847', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 6, '1#&4#&5#组装配', '早班', 'Steering', 'Test 01#', NULL, '验证7件6065745', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010080', '110002140667', '1494133-MA', '1494133', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 4, '1#&4#&5#组装配', '早班', 'BRK', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010081', '110002140662', '1131543-MA', '1131543', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 8, '1#&4#&5#组装配', '早班', 'BRK', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010082', '110002155059', '1131543-A', '1131543', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 6, '1#&4#&5#组装配', '早班', 'BRK', 'Test 01#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010083', '110002140450', '5757796-A', '5757796', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 3, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010084', '110002140587', '1303135-A', '1303135', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 1, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010085', '110002147815', '5757795-A', '5757795', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 2, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010086', '110002140443', '6E3037-MN', '6E3037', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 2, '2#&3#组装配', '早班', 'MG Segment', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010087', '110002140451', '5757796-A', '5757796', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 3, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010088', '110002140445', '6E3028-MN', '6E3028', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 2, '2#&3#组装配', '早班', 'MG Segment', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010089', '110002140444', '6E3037-MN', '6E3037', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 6, '2#&3#组装配', '早班', 'MG Segment', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010090', '110002140584', '1303118-A', '1303118', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 4, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010091', '110002140585', '1303118-A', '1303118', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 2, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', '已K料', '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010092', '110002147802', '1303116-A', '1303116', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 3, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', '已K料', '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010093', '110002147795', '6209758-A', '6209758', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 54, '2#&3#组装配', '早班', 'Lock', 'Test 02#', NULL, '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010094', '110002147796', '6209758-A', '6209758', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 6, '2#&3#组装配', '早班', 'Lock', 'Test 02#', NULL, '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010095', '110002147790', '6E3028-MN', '6E3028', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 3, '2#&3#组装配', '早班', 'MG Segment', 'Test 02#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010096', '110002140455', '1303116-A', '1303116', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 9, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', NULL, '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010097', '110002147805', '1303118-A', '1303118', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 3, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', NULL, '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010098', '110002147806', '1303118-A', '1303118', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 1, '2#&3#组装配', '早班', 'MG Stack', 'Test 02#', NULL, '发巴西', 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010099', '110002140441', '2965662-A', '2965662', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 40, '2#&3#组装配', '早班', 'NEU', 'Test 03#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010100', '110002140442', '2965662-A', '2965662', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 20, '2#&3#组装配', '早班', 'NEU', 'Test 03#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010101', '110002140436', '3215283-MA', '3215283', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 16, '2#&3#组装配', '早班', 'NEU', 'Test 03#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010102', '110002140434', '6E5566', '6E5566', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 40, '2#&3#组装配', '早班', 'SEL', 'Test 03#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010103', '110002140435', '6E5566', '6E5566', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 20, '2#&3#组装配', '早班', 'SEL', 'Test 03#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010104', '110002140439', '2965662-MA', '2965662', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 4, '2#&3#组装配', '早班', 'NEU', 'Test 03#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010105', '110002140437', '3215283-MA', '3215283', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 10, '2#&3#组装配', '早班', 'NEU', 'Test 03#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010106', '110002140418', '3612413-A', '3612413', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 5, '9#&10#组装配', '早班', 'B Stack', 'Test 09-10#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010107', '110002140419', '3612413-A', '3612413', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 1, '9#&10#组装配', '早班', 'B Stack', 'Test 09-10#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010108', '110002140424', '3706925-MN', '3706925', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 1, '9#&10#组装配', '早班', 'B Valve', 'Test 09-10#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010109', '110002140425', '3761235-MN', '3761235', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 1, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010110', '110002140426', '9T1781-MN', '9T1781', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 1, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010111', '110002140430', '4684126-M', '4684126', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 2, '9#&10#组装配', '早班', 'B Stack', 'Test 09-10#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010112', '110002140422', '1605951', '1605951', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 2, '9#&10#组装配', '早班', 'B Stack', 'Test 09-10#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010113', '110002140423', '1605951', '1605951', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 4, '9#&10#组装配', '早班', 'B Stack', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010114', '110002140431', '2350403-MN', '2350403', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 2, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010115', '110002140432', '2350404-MN', '2350404', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 6, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010116', '110002140433', '3086726-M', '3086726', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 6, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010117', '110002140428', '4755120-M', '4755120', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 2, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010118', '110002140427', '6E0485-MN', '6E0485', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 2, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010119', '110002140416', '9T8989-MN', '9T8989', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 1, '9#&10#组装配', '早班', 'B Segment', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010120', '110002147834', '5256743', '5256743', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 1, '9#&10#组装配', '早班', 'B Stack', 'Test 09-10#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010121', '110002140400', '5611790/HE-A', '5611790', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 8, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010122', '110002132893', '5775912/HE-A', '5775912', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 1, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010123', '110002140409', '5573856/HE-A', '5573856', '2025-02-05', '2025-02-06', '2025-02-06', '2025-02-07', 2, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010124', '110002140413', '5181312/HE-A', '5181312', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 6, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010125', '110002140406', '5181337/HE-A', '5181337', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 4, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010126', '110002140401', '5611790/HE-A', '5611790', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 8, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010127', '110002132897', '5772154/HE-A', '5772154', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 2, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010128', '110002132891', '6036775/HE-A', '6036775', '2025-02-06', '2025-02-07', '2025-02-07', '2025-02-08', 2, '11#装配台', '早班', 'Check Valve ', 'Test 11#', '已K料', NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010129', '110002132894', '5775912/HE-A', '5775912', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 3, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010130', '110002140414', '5181312/HE-A', '5181312', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 4, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010131', '110002140407', '5181337/HE-A', '5181337', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 3, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010132', '110002140410', '5573856/HE-A', '5573856', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 4, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010133', '110002140402', '5611790/HE-A', '5611790', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 8, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010134', '110002132898', '5772154/HE-A', '5772154', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 4, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010135', '110002132889', '5075967/HE-A', '5075967', '2025-02-07', '2025-02-08', '2025-02-08', '2025-02-10', 7, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010136', '110002132890', '5075967/HE-A', '5075967', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 29, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +INSERT INTO `t_app_dbs` (`dbs_id`, `work_order`, `product_id_origin`, `product_id`, `test_plan_start_date`, `test_plan_finish_date`, `pnt_plan_start_date`, `pnt_plan_finish_date`, `plan_production`, `equipment_name`, `work_shift`, `family`, `test_no`, `kitting_remark`, `remark`, `dbs_status`, `work_stand`, `real_work_date`, `finish_time`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874969009010137', '110002140403', '5611790/HE-A', '5611790', '2025-02-08', '2025-02-10', '2025-02-10', '2025-02-11', 4, '11#装配台', '早班', 'Check Valve ', 'Test 11#', NULL, NULL, 0, NULL, NULL, NULL, '2025-02-18 18:36:09', '管理员', NULL, NULL); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_equipment +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_equipment`; +CREATE TABLE `t_app_equipment` ( + `equipment_id` int NOT NULL COMMENT '设备号', + `equipment_type` int NOT NULL COMMENT '设备类型', + `equipment_status` int NOT NULL COMMENT '设备状态\n1: 启用\n0: 未启用', + `equipment_name` varchar(64) NOT NULL COMMENT '设备名称', + `equipment_desc` varchar(255) DEFAULT NULL COMMENT '设备描述', + `last_update_time` datetime DEFAULT NULL, + `last_update_user` varchar(64) DEFAULT NULL, + PRIMARY KEY (`equipment_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Records of t_app_equipment +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_equipment` (`equipment_id`, `equipment_type`, `equipment_status`, `equipment_name`, `equipment_desc`, `last_update_time`, `last_update_user`) VALUES (1, 1, 1, '1号堆垛机', '1号堆垛机', '2025-02-15 15:21:59', 'admin'); +INSERT INTO `t_app_equipment` (`equipment_id`, `equipment_type`, `equipment_status`, `equipment_name`, `equipment_desc`, `last_update_time`, `last_update_user`) VALUES (2, 1, 1, '2号堆垛机', '2号堆垛机', '2025-02-15 15:22:21', 'admin'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_goods +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_goods`; +CREATE TABLE `t_app_goods` ( + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料号', + `plant` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'plant', + `goods_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '描述', + `vendor_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '供应商名称', + `feeding_type` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '补料方式', + `max_box_num` int NOT NULL COMMENT '立库可放箱数', + `box_qty` int NOT NULL COMMENT '每盒数量', + `put_area` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '存放区域', + `is_sled` varchar(3) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '是否是SLED管理', + `sled_days` int DEFAULT NULL COMMENT 'SLED天数', + `hot_point` varchar(16) DEFAULT NULL COMMENT '热点分析', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + `first_import_time` datetime DEFAULT NULL COMMENT '初次导入时间', + `first_import_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '初次导入用户', + PRIMARY KEY (`goods_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_goods +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_goods` (`goods_id`, `plant`, `goods_description`, `vendor_name`, `feeding_type`, `max_box_num`, `box_qty`, `put_area`, `is_sled`, `sled_days`, `hot_point`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('2521631', 'WJ12', 'PLUG AS.', 'CATERPILLAR (SUZHOU) LOGISTICS', 'Kanban', 4, 200, 'ASRS', 'Y', 1825, 'A', NULL, NULL, '2025-02-18 18:36:30', '管理员'); +INSERT INTO `t_app_goods` (`goods_id`, `plant`, `goods_description`, `vendor_name`, `feeding_type`, `max_box_num`, `box_qty`, `put_area`, `is_sled`, `sled_days`, `hot_point`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('2935263', 'WJ12', 'SPRING', 'CATERPILLAR (SUZHOU) LOGISTICS', 'Kanban', 4, 175, 'ASRS', 'N', NULL, 'A', NULL, NULL, '2025-02-18 18:36:30', '管理员'); +INSERT INTO `t_app_goods` (`goods_id`, `plant`, `goods_description`, `vendor_name`, `feeding_type`, `max_box_num`, `box_qty`, `put_area`, `is_sled`, `sled_days`, `hot_point`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('3D2824', 'WJ12', 'SEAL-O-RING-STOR', 'CATERPILLAR (SUZHOU) LOGISTICS', 'Kanban', 4, 1000, 'ASRS', 'Y', 1825, 'A', NULL, NULL, '2025-02-18 18:36:30', '管理员'); +INSERT INTO `t_app_goods` (`goods_id`, `plant`, `goods_description`, `vendor_name`, `feeding_type`, `max_box_num`, `box_qty`, `put_area`, `is_sled`, `sled_days`, `hot_point`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('4475613', 'WJ12', 'SEAL-LIP TYPE', 'SHANGHAI KURIYAMA TRADING,', 'MRP', 2, 1000, 'DB01', 'Y', 1825, 'A', NULL, NULL, '2025-02-18 18:36:30', '管理员'); +INSERT INTO `t_app_goods` (`goods_id`, `plant`, `goods_description`, `vendor_name`, `feeding_type`, `max_box_num`, `box_qty`, `put_area`, `is_sled`, `sled_days`, `hot_point`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('6J4568', 'WJ12', 'BOOT', 'CATERPILLAR (SUZHOU) LOGISTICS', 'Kanban', 4, 70, 'ASRS', 'N', NULL, 'A', NULL, NULL, '2025-02-18 18:36:30', '管理员'); +INSERT INTO `t_app_goods` (`goods_id`, `plant`, `goods_description`, `vendor_name`, `feeding_type`, `max_box_num`, `box_qty`, `put_area`, `is_sled`, `sled_days`, `hot_point`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('9T8668', 'WJ12', 'ADAPTER', 'XU GUI (SHANGHAI) TRADING CO.,LTD F', 'MRP', 4, 63, 'ASRS', 'N', NULL, 'A', NULL, NULL, '2025-02-18 18:36:30', '管理员'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_image +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_image`; +CREATE TABLE `t_app_image` ( + `image_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '图纸id', + `product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成品号', + `box_no` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料盒号', + `image_path` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '图纸存储path', + `image_name` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '图纸名称', + `image_detail` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '图纸详情---可用', + `image_type` int NOT NULL COMMENT '区分总成图纸还是单片图纸', + `first_import_time` datetime DEFAULT NULL COMMENT '导入时间', + `first_import_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '导入人员', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + PRIMARY KEY (`image_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_image +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_image` (`image_id`, `product_id`, `box_no`, `image_path`, `image_name`, `image_detail`, `image_type`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974784010000', '2965662', 'A', './image/', '2965662_A.PNG', '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', 1, '2025-02-18 18:36:15', '管理员', NULL, NULL); +INSERT INTO `t_app_image` (`image_id`, `product_id`, `box_no`, `image_path`, `image_name`, `image_detail`, `image_type`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974789010000', '2965662', 'B', './image/', '2965662_B.PNG', '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', 1, '2025-02-18 18:36:15', '管理员', NULL, NULL); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_jobs +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_jobs`; +CREATE TABLE `t_app_jobs` ( + `job_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'jobName', + `job_class` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'jobClass', + `cron_expression` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT 'cron', + `timer` int DEFAULT NULL COMMENT 'timer', + `timer_type` int NOT NULL COMMENT '定时器类型', + `job_status` int NOT NULL COMMENT '定时器是否可用', + PRIMARY KEY (`job_name`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_jobs +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('DataSolver', 'com.wms_main.service.quartz_job.job_executor.DataSolver', '0/2 * * * * ? *', 2000, 1, 0); +INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('JobTest', 'com.wms_main.service.quartz_job.job_executor.JobTest', '0/2 * * * * ? *', 2000, 1, 0); +INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('KateWorkExecutor', 'com.wms_main.service.quartz_job.job_executor.KateWorkExecutor', '0/2 * * * * ? *', 2000, 1, 0); +INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WcsPickTaskSender', 'com.wms_main.service.quartz_job.job_executor.WcsPickTaskSender', '0/2 * * * * ? *', 2000, 1, 0); +INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WcsStackerTaskSender', 'com.wms_main.service.quartz_job.job_executor.WcsStackerTaskSender', '0/2 * * * * ? *', 2000, 1, 0); +INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WmsTaskExecutor', 'com.wms_main.service.quartz_job.job_executor.WmsTaskExecutor', '0/2 * * * * ? *', 2000, 1, 0); +INSERT INTO `t_app_jobs` (`job_name`, `job_class`, `cron_expression`, `timer`, `timer_type`, `job_status`) VALUES ('WmsTaskFinisher', 'com.wms_main.service.quartz_job.job_executor.WmsTaskFinisher', '0/2 * * * * ? *', 2000, 1, 0); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_kanban +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_kanban`; +CREATE TABLE `t_app_kanban` ( + `record_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '记录id:料号+看板id', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料号', + `kanban_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '看板', + `kanban_status` int NOT NULL COMMENT '看板状态。0:空,1:满。', + `last_full_time` datetime NOT NULL COMMENT '上次补满时间', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + `first_import_time` datetime DEFAULT NULL COMMENT '初次导入时间', + `first_import_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '初次导入用户', + PRIMARY KEY (`record_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_kanban +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010000', '0304605', '1336475', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010001', '0304605', '1336476', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010002', '0304606', '1336477', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010003', '0304606', '1338753', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010004', '0344160', '1338754', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010005', '0344160', '1338755', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010006', '0950707', '1338763', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010007', '0950707', '1338764', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010008', '0963044/HE', '1338770', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010009', '0963044/HE', '1338769', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010010', '0S1618', '1338790', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010011', '0S1618', '1338791', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010012', '1007000', '1338792', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010013', '1007000', '1338793', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010014', '1010509', '2812675', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010015', '1010509', '2812676', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010016', '1011973', '1338805', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010017', '1011973', '1338806', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010018', '1012862', '1338808', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010019', '1012862', '1338807', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010020', '1014845', '1338809', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010021', '1014845', '1338810', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010022', '1027365', '1338811', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010023', '1027365', '1338812', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010024', '1027412', '1338813', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010025', '1027412', '1338814', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010026', '1061791', '1338822', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010027', '1061791', '2089428', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010028', '1082187', '1338826', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010029', '1082187', '1338827', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010030', '1089402', '1338828', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010031', '1089402', '1338829', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010032', '1118233', '1338830', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010033', '1118233', '1338831', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010034', '1118234', '1338832', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010035', '1118234', '1338833', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010036', '1159977', '1338836', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010037', '1159977', '1338837', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010038', '1160014', '1338838', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010039', '1160014', '1338839', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010040', '1185086', '1668292', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010041', '1185086', '1668293', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010042', '1185087', '1553825', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010043', '1185087', '1553826', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010044', '1212051', '1338845', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010045', '1212051', '1338846', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010046', '1266104', '1338853', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010047', '1266104', '2154508', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010048', '1268473', '1338858', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010049', '1268473', '1338859', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010050', '1298222', '1338860', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010051', '1298222', '1338861', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010052', '1442894', '1338868', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010053', '1442894', '1338869', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010054', '1483483', '1338870', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010055', '1483483', '1338871', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010056', '1488336', '1338872', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010057', '1488336', '1338873', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010058', '1488356', '2509607', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010059', '1488356', '2509606', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010060', '1488378', '1338879', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010061', '1488378', '1338880', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010062', '1501285', '1338883', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010063', '1501285', '1338884', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010064', '1503065', '1879386', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010065', '1503065', '1879385', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010066', '1535276/HE', '1338889', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010067', '1535276/HE', '1338891', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010068', '1535276/HE', '1338906', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010069', '1535276/HE', '1338907', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010070', '1535276/HE', '1914730', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010071', '1535276/HE', '1338893', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010072', '1535276/HE', '1806621', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010073', '1535276/HE', '2517894', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010074', '1535276/HE', '1338895', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010075', '1535276/HE', '2517895', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010076', '1536976', '1338914', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010077', '1536976', '1338913', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010078', '1537067', '1338916', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010079', '1537067', '1338915', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010080', '1537549', '1338917', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010081', '1537549', '1338918', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010082', '1537550', '1338919', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010083', '1537550', '1338920', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010084', '1537551', '1338922', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010085', '1537551', '1338921', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010086', '1537553', '1338924', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010087', '1537553', '1338923', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010088', '1607578', '1699196', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010089', '1607578', '1699198', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010090', '1640938', '1338935', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010091', '1640938', '1338936', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010092', '1704001', '1338943', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010093', '1704001', '1338944', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010094', '1730515', '1338945', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993334010095', '1730515', '1338946', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010000', '1749194', '1338947', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010001', '1749194', '1338948', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010002', '1771405', '1338949', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010003', '1771405', '1338950', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010004', '1919247', '1338953', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010005', '1919247', '1338954', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010006', '1970199/HE', '1338955', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010007', '1970199/HE', '1338956', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010008', '1982914', '1668435', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010009', '1982914', '1668436', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010010', '1D4566', '1338959', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010011', '1D4566', '1338960', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010012', '1H1023', '1338961', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010013', '1H1023', '1338962', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010014', '1J9671', '1338965', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010015', '1J9671', '1338966', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010016', '1P3702', '1338967', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010017', '1P3702', '1338968', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010018', '1P3702', '1338970', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010019', '1P3702', '1338969', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010020', '1P3703', '1338971', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010021', '1P3703', '1338972', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010022', '1P3705', '1338973', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010023', '1P3705', '1338974', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010024', '1P3706', '1338976', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010025', '1P3706', '1338975', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010026', '1P3709', '1338977', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010027', '1P3709', '1338978', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010028', '1P4577', '2509587', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010029', '1P4577', '2509588', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010030', '1P4578', '1338984', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010031', '1P4578', '1338985', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010032', '1P4579', '2450449', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010033', '1P4579', '2450450', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010034', '1P4579', '2757682', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010035', '1P4579', '2757683', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010036', '1P4582', '1338996', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010037', '1P4582', '1591096', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010038', '1P5760', '2509589', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010039', '1P5760', '2509590', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010040', '1P6744', '2087555', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010041', '1P6744', '1954529', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010042', '1S1636', '1339006', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010043', '1S1636', '1339007', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010044', '1S3730', '1339012', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010045', '1S3730', '1339013', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010046', '1T0284', '1339014', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010047', '1T0284', '1339015', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010048', '1T0936', '1339020', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010049', '1T0936', '1339021', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010050', '2040814', '1699301', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010051', '2040814', '2227720', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010052', '2077434', '1339032', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010053', '2077434', '1339033', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010054', '2147568', '1408063', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010055', '2147568', '1408064', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010056', '2191891', '1631496', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010057', '2191891', '1631495', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010058', '2191893', '1339042', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010059', '2191893', '1339043', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010060', '2232204', '1668453', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010061', '2232204', '1668454', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010062', '2256948', '1339050', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010063', '2256948', '1339051', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010064', '2304011', '1339052', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010065', '2304011', '1339053', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010066', '2344869', '1339058', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010067', '2344869', '1339059', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010068', '2369832', '1339060', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010069', '2369832', '1339061', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010070', '2385078', '1339062', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010071', '2385078', '1339063', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010072', '2385082', '1339064', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010073', '2385082', '1339065', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010074', '2404695', '1339077', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010075', '2404695', '1339078', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010076', '2458472/X', '1339099', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010077', '2458472/X', '1339098', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010078', '2507531', '1339109', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010079', '2507531', '1339110', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010080', '2521631', '2096840', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010081', '2521631', '1339116', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010082', '2597513/HE', '1339119', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010083', '2597513/HE', '1339118', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010084', '2603053', '1339121', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010085', '2603053', '1339120', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010086', '2603055', '1668429', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010087', '2603055', '1668430', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010088', '2608590', '1339127', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010089', '2608590', '1339128', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010090', '2660531', '2456044', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010091', '2660531', '2493251', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010092', '2788966', '1339140', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010093', '2788966', '1339141', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010094', '2828827', '2451745', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010095', '2828827', '2451751', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010096', '2841010', '1339144', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010097', '2841010', '1339148', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010098', '2841010', '1629645', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010099', '2841010', '1339146', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010100', '2841011', '1339155', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010101', '2841011', '1339157', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010102', '2855628', '1985907', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010103', '2855628', '2300463', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010104', '2855628', '1339159', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010105', '2918148', '1339161', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010106', '2918148', '1339162', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010107', '2924792', '1339163', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010108', '2924792', '1339164', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010109', '2928061', '1339167', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010110', '2928061', '1339168', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010111', '2935263', '1339169', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010112', '2935263', '1339170', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010113', '2947687', '1339172', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010114', '2947687', '1339175', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010115', '2947687', '1339177', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010116', '2947687', '1339171', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010117', '2950993', '1668439', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010118', '2950993', '1668440', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010119', '2965987', '1339183', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010120', '2965987', '1339184', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010121', '2976291', '1339187', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010122', '2976291', '2300464', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010123', '2D0094', '1339193', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010124', '2D0094', '1339194', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010125', '2D6648', '1339195', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010126', '2D6648', '1339196', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010127', '2J2668', '1339197', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010128', '2J2668', '2268774', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010129', '2J2866', '1339199', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010130', '2J2866', '1339200', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010131', '2J5608', '1339201', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010132', '2J5608', '1339202', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010133', '2K8199', '1339203', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010134', '2K8199', '1339204', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010135', '2M9780', '1339205', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010136', '2M9780', '1339206', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010137', '2N7029', '2268789', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010138', '2N7029', '1339207', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010139', '2R1256', '1339211', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010140', '2R1256', '1339212', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010141', '2S4078', '1339217', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010142', '2S4078', '1339218', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010143', '2Y2347', '1699231', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010144', '2Y2347', '1699232', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010145', '3023809', '1339223', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010146', '3023809', '1533462', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010147', '3023813', '1339226', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010148', '3023813', '1339225', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010149', '3133966', '1854526', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010150', '3133966', '2300465', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010151', '3161438', '1339234', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010152', '3161438', '1339236', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010153', '3161438', '1339237', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010154', '3161438', '1448366', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010155', '3267680', '1339252', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010156', '3267680', '1339253', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010157', '3267680', '2916785', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010158', '3278527', '1339255', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010159', '3278527', '1879400', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010160', '3294603', '1339259', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010161', '3294603', '1339258', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010162', '3321985', '1629649', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010163', '3321985', '1629651', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010164', '3321986', '2477593', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010165', '3321986', '2477594', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010166', '3331701', '1339275', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010167', '3331701', '1339276', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010168', '3341673', '2058285', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010169', '3341673', '1879402', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010170', '3385495', '2509598', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010171', '3385495', '2509599', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010172', '3385495', '2700214', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010173', '3527057/HE', '1339304', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010174', '3527057/HE', '1339309', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010175', '3527057/HE', '1339314', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010176', '3527057/HE', '1339315', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010177', '3527057/HE', '1339318', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010178', '3527057/HE', '2268797', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010179', '3527057/HE', '2517902', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010180', '3527057/HE', '2517903', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010181', '3527057/HE', '1339305', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010182', '3527057/HE', '1339306', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010183', '3527058/HE', '1339320', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010184', '3527058/HE', '1339322', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010185', '3529954', '1976472', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010186', '3529954', '1339330', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010187', '3594661', '1339335', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010188', '3594661', '1339334', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010189', '3603679', '1339344', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010190', '3603679', '1339345', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010191', '3603681', '1339346', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010192', '3603681', '1339347', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010193', '3603688', '1339348', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010194', '3603688', '1339349', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010195', '3603690', '1339351', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010196', '3603690', '1339350', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010197', '3603692', '1339352', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010198', '3603692', '1339353', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010199', '3603693', '1339359', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010200', '3603693', '1339358', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010201', '3603695', '1744233', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010202', '3603695', '1744234', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010203', '3603696', '1339364', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010204', '3603696', '1339365', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010205', '3603697', '2435140', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010206', '3603697', '2435139', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010207', '3612426', '1699213', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010208', '3612426', '1699214', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010209', '3613549', '1339376', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010210', '3613549', '1339377', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010211', '3631610', '1339379', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010212', '3631610', '1339378', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010213', '3631613', '1339380', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010214', '3631613', '1339381', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010215', '3632692', '1339382', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010216', '3632692', '1339383', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010217', '3664972', '1339386', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010218', '3664972', '1339387', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010219', '3676001', '1339389', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010220', '3676001', '1339388', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010221', '3676002', '1339395', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010222', '3676002', '1339396', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010223', '3676003', '2268781', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010224', '3676003', '1339399', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010225', '3676003', '1339397', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010226', '3676003', '2268782', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010227', '3676003', '1339405', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010228', '3676003', '1339406', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010229', '3676003', '1339407', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010230', '3676003', '1339409', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010231', '3676003', '1339411', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010232', '3676003', '1621197', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010233', '3676003', '1621201', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010234', '3676003', '1621202', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010235', '3685096', '2087566', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010236', '3685096', '1441594', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010237', '3705764', '1339421', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010238', '3705764', '2359186', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010239', '3705764', '2359185', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010240', '3706936', '2227709', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010241', '3706936', '2227708', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010242', '3948568', '1339468', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010243', '3948568', '1854503', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993335010244', '3964852', '1339469', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010000', '3964852', '1339470', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010001', '3979397', '2096774', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010002', '3979397', '2096773', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010003', '3D2824', '1339487', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010004', '3D2824', '1339488', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010005', '3D4603', '1339489', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010006', '3D4603', '1339490', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010007', '3E3882', '1339491', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010008', '3E3882', '1339492', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010009', '3J1907', '1339493', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010010', '3J1907', '1339494', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010011', '3J3712', '1339495', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010012', '3J3712', '1339496', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010013', '3J5553', '1339497', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010014', '3J5553', '1339498', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010015', '3J5554', '1339500', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010016', '3J5554', '1339499', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010017', '3J7354', '1339501', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010018', '3J7354', '1339502', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010019', '3J9015', '1339505', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010020', '3J9015', '1339506', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010021', '3K0360', '1339507', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010022', '3K0360', '1339508', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010023', '3P1979', '1339509', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010024', '3P1979', '1339510', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010025', '3P9498', '1339511', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010026', '3P9498', '1339512', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010027', '3S9233', '1339513', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010028', '3S9233', '1339514', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010029', '3T8236', '1339515', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010030', '3T8236', '1339516', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010031', '4214353', '1339517', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010032', '4214353', '1339518', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010033', '4231787', '1339519', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010034', '4231787', '1339520', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010035', '4456109', '2056286', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010036', '4456109', '2268783', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010037', '4456109', '2301293', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010038', '4456109', '2305719', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010039', '4471704/HE', '1339550', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010040', '4471704/HE', '1339552', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010041', '4471704/HE', '1339557', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010042', '4471704/HE', '1339559', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010043', '4471704/HE', '1621203', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010044', '4471704/HE', '1621204', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010045', '4471704/HE', '1621205', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010046', '4471704/HE', '1621206', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010047', '4471704/HE', '2154949', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010048', '4471704/HE', '2154948', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010049', '4519131', '1339568', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010050', '4519131', '1339567', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010051', '4532843/HE', '1339570', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010052', '4532843/HE', '2227726', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010053', '4532843/HE', '1339569', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010054', '4532843/HE', '1339573', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010055', '4532843/HE', '1339572', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010056', '4532843/HE', '2227725', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010057', '4533432/HE', '1668457', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010058', '4533432/HE', '1668458', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010059', '4533440/HE', '1339585', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010060', '4533440/HE', '1339587', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010061', '4533440/HE', '2403690', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010062', '4533440/HE', '2403691', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010063', '4533440/HE', '2517891', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010064', '4533440/HE', '2517892', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010065', '4533454/HE', '2633861', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010066', '4533454/HE', '2493272', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010067', '4564624', '1339605', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010068', '4564624', '1339606', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010069', '4564633', '1339607', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010070', '4564633', '1339608', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010071', '4572451', '2227716', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010072', '4572451', '1339610', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010073', '4612544', '1976474', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010074', '4612544', '1339614', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010075', '4681136', '1339617', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010076', '4681136', '1339618', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010077', '4932479', '1879369', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010078', '4932479', '1879376', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010079', '4932479', '1879378', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010080', '4932479', '2058278', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010081', '4932479', '2645523', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010082', '4932479', '2645524', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010083', '4932479', '2645525', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010084', '4932479', '2645526', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010085', '4948090', '1339627', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010086', '4948090', '1339628', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010087', '4955300', '2023899', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010088', '4955300', '2509604', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010089', '4955300', '2757684', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010090', '4955300', '2758755', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010091', '4955302', '1339638', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010092', '4955302', '1339637', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010093', '4955303', '1339639', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010094', '4955303', '1339640', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010095', '4B4158', '1339641', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010096', '4B4158', '1339642', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010097', '4B4278', '1339644', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010098', '4B4278', '1339645', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010099', '4B9782', '1339646', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010100', '4B9782', '1339647', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010101', '4B9880', '1339648', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010102', '4B9880', '1339649', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010103', '4C8359', '1339650', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010104', '4C8359', '1339651', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010105', '4D0514', '1339657', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010106', '4D0514', '1339656', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010107', '4D9986', '1339658', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010108', '4D9986', '1339659', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010109', '4F4097', '1339660', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010110', '4F4097', '1339661', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010111', '4H5232', '1339662', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010112', '4H5232', '1339663', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010113', '4J0519', '1339666', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010114', '4J0519', '1339667', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010115', '4J0520', '1879368', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010116', '4J0520', '2089424', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010117', '4J0522', '1339671', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010118', '4J0522', '1339670', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010119', '4J0524', '1339674', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010120', '4J0524', '1339675', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010121', '4J0527', '1339680', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010122', '4J0527', '1339681', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010123', '4J2506', '1339683', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010124', '4J2506', '1339682', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010125', '4J5309', '1629606', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010126', '4J5309', '1975469', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010127', '4J5309', '1339689', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010128', '4J5309', '1339690', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010129', '4J5351', '1339692', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010130', '4J5351', '1339691', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010131', '4J7533', '1339699', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010132', '4J7533', '1339700', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010133', '4J8997', '1339705', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010134', '4J8997', '1339706', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010135', '4J9780', '1339712', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010136', '4J9780', '1339711', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010137', '4K1388', '1339713', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010138', '4K1388', '1339714', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010139', '4M2381', '1339715', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010140', '4M2381', '1339716', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010141', '4M6980', '1339717', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010142', '4M6980', '1339718', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010143', '4T0993', '1339721', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010144', '4T0993', '1339722', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010145', '4T1021', '1339723', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010146', '4T1021', '1339724', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010147', '4T1701', '1339725', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010148', '4T1701', '1339726', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010149', '4T1859', '2120992', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010150', '4T1859', '2120993', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010151', '4T4207', '1339733', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010152', '4T4207', '1339734', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010153', '4T4628', '1339737', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010154', '4T4628', '1339738', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010155', '4T4631', '1339739', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010156', '4T4631', '1339740', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010157', '4T4659', '1339741', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010158', '4T4659', '1339742', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010159', '4T5072', '1339743', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010160', '4T5072', '1339744', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010161', '4T5073', '1339745', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010162', '4T5073', '1339746', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010163', '4T5795', '1339749', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010164', '4T5795', '1339750', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010165', '5050058', '1854533', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010166', '5050058', '1854532', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010167', '5615574', '2517884', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010168', '5615574', '2517885', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010169', '5666473/HE', '1339761', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010170', '5666473/HE', '1339762', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010171', '5B9318', '1339765', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010172', '5B9318', '1339766', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010173', '5F4899', '1339768', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010174', '5F4899', '1339767', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010175', '5H3193', '1339769', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010176', '5H3193', '1339770', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010177', '5H4019', '1339774', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010178', '5H4019', '1339773', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010179', '5H4020', '1339776', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010180', '5H4020', '1339777', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010181', '5H6005', '1339778', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010182', '5H6005', '1339779', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010183', '5J2974', '1339784', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010184', '5J2974', '1339785', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010185', '5J4664', '1339786', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010186', '5J4664', '1339787', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010187', '5K0227', '1339788', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010188', '5K0227', '1339789', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010189', '5M2057', '1339792', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010190', '5M2057', '1339793', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010191', '5P0047', '1339801', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010192', '5P0047', '1339802', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010193', '5P2566', '1339810', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010194', '5P2566', '1668287', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010195', '5P6300', '1339816', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010196', '5P6300', '1339815', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010197', '5P8077', '1339818', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010198', '5P8077', '1339817', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010199', '5S7001', '1339820', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010200', '5S7001', '1339819', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010201', '5S7382', '1339823', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010202', '5S7382', '1339824', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010203', '5S7383', '1339825', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010204', '5S7383', '1339826', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010205', '6E1923', '1339832', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010206', '6E1923', '2023902', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010207', '6E1924', '1339833', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010208', '6E1924', '1339834', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010209', '6E1925', '1854514', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010210', '6E1925', '1854515', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010211', '6E2271/HE', '1339841', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010212', '6E2271/HE', '1339842', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010213', '6E2271/HE', '1483801', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010214', '6E2271/HE', '1483802', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010215', '6E2271/HE', '2517911', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010216', '6E2271/HE', '2517912', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010217', '6E2271/HE', '2517914', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010218', '6E2271/HE', '1339860', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010219', '6E2271/HE', '1339854', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010220', '6E2271/HE', '1339863', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010221', '6E2271/HE', '1339864', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010222', '6E2271/HE', '1483800', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010223', '6E2271/HE', '1339844', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010224', '6E2271/HE', '1339853', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010225', '6E2271/HE', '1339855', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010226', '6E2271/HE', '2517913', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010227', '6E3007', '1339874', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010228', '6E3007', '1339875', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010229', '6E4502', '1339876', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010230', '6E4502', '1339877', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010231', '6E5153', '1629660', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010232', '6E5153', '1629659', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010233', '6E5289', '1339882', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010234', '6E5289', '1339883', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010235', '6E5291', '1339884', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010236', '6E5291', '1339885', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010237', '6H2948', '1339888', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010238', '6H2948', '1339889', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010239', '6J2419', '1339891', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010240', '6J2419', '1339890', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010241', '6J3134', '1339893', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010242', '6J3134', '1339892', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010243', '6J3380', '2154042', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010244', '6J3380', '1985884', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010245', '6J4568', '1339900', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010246', '6J4568', '1339901', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010247', '6J4694', '1339902', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010248', '6J4694', '1339903', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010249', '6J5899', '1339904', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010250', '6J5899', '1339905', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010251', '6J6516', '1339908', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010252', '6J6516', '1339909', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010253', '6J6517', '1339911', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010254', '6J6517', '1339910', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010255', '6J8696', '1339912', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010256', '6J8696', '1339913', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010257', '6K0806', '1339914', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010258', '6K0806', '1339915', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010259', '6K6307', '1339916', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010260', '6K6307', '1339917', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010261', '6V0357', '1339926', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010262', '6V0357', '1339927', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010263', '6V0400', '1339928', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010264', '6V0400', '1339929', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010265', '6V0852', '2517881', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010266', '6V0852', '2517882', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010267', '6V1849', '1629665', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010268', '6V1849', '1629666', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010269', '6V3922', '1553830', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010270', '6V3922', '1553829', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010271', '6V3922', '1339946', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010272', '6V3922', '1339945', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010273', '6V3965', '1339952', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010274', '6V3965', '1352729', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010275', '6V4432', '1339953', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010276', '6V4432', '1339954', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010277', '6V5195', '1339957', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010278', '6V5195', '1339958', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010279', '6V5230', '1339961', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010280', '6V5230', '1339962', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010281', '6V5391', '1339963', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010282', '6V5391', '1339964', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010283', '6V5555', '1339965', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010284', '6V5555', '1339966', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010285', '6V5556', '1339967', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010286', '6V5556', '1339968', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010287', '6V5759', '1339969', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010288', '6V5759', '1339970', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010289', '6V6353', '1339973', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010290', '6V6353', '1339974', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010291', '6V7607', '1339975', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010292', '6V7607', '1339976', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010293', '6V8188', '1339981', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010294', '6V8188', '1339982', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010295', '6V8200', '2058280', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010296', '6V8200', '1408077', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010297', '6V8398', '1339989', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010298', '6V8398', '1339990', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010299', '6V8647', '1339991', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010300', '6V8647', '1339992', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010301', '6V8653', '1339994', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010302', '6V8653', '1339993', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010303', '6V8676', '1339995', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010304', '6V8676', '1339996', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010305', '6V9606', '2089421', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010306', '6V9606', '2089422', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010307', '6V9829', '1591105', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010308', '6V9829', '1591108', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010309', '6V9830', '1340008', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010310', '6V9830', '1340009', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010311', '6V9833', '1340011', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010312', '6V9833', '1340010', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010313', '6V9834', '1340013', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010314', '6V9834', '1340012', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010315', '6Y2584', '1340018', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010316', '6Y2584', '1340019', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010317', '6Y4538', '1340020', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010318', '6Y4538', '1340021', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010319', '6Y4638', '2268787', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010320', '6Y4638', '2268786', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010321', '6Y7267', '1340034', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010322', '6Y7267', '1340035', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010323', '6Y9692', '2517917', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010324', '6Y9692', '2517918', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010325', '6Y9692', '1340039', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010326', '7B8194', '1340042', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010327', '7B8194', '1340043', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010328', '7D8048', '1340044', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010329', '7D8048', '1340045', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010330', '7J0204', '1340046', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010331', '7J0204', '1340047', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010332', '7J1089', '1340048', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010333', '7J1089', '1340049', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010334', '7J7366', '1340052', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010335', '7J7366', '1340053', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010336', '7J9933', '1340062', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010337', '7J9933', '1340063', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010338', '7K0734', '1340066', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010339', '7K0734', '1340067', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010340', '7M1297', '1340070', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010341', '7M1297', '1340071', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010342', '7M8485', '1340073', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010343', '7M8485', '1340072', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010344', '7S0530', '1340074', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010345', '7S0530', '1340076', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010346', '7T6496', '1340078', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010347', '7T6496', '1340077', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010348', '7T8797', '1340079', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010349', '7T8797', '1340080', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010350', '7T8810', '1340081', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010351', '7T8810', '1340082', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010352', '7W7381', '1668346', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010353', '7W7381', '1668347', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010354', '7X0272', '1340086', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010355', '7X0272', '1340087', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010356', '7X0293', '1340090', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010357', '7X0293', '1340091', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010358', '7X0301', '1340092', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010359', '7X0301', '1340093', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010360', '7X0326', '1340094', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010361', '7X0326', '1340095', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010362', '7X0339', '2154043', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010363', '7X0339', '2154044', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010364', '7X0352', '1879407', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010365', '7X0352', '1879408', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010366', '7X0448', '1340104', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010367', '7X0448', '1340105', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010368', '7X2535', '1340106', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010369', '7X2535', '1340107', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010370', '7X2546', '1340110', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010371', '7X2546', '1340111', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010372', '7X7888', '1340114', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010373', '7X7888', '1340115', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010374', '7Y5219/HE', '1553847', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010375', '7Y5219/HE', '1553848', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010376', '7Y5219/HE', '1340123', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010377', '7Y5219/HE', '1340122', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010378', '8B4624', '1340124', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010379', '8B4624', '1340125', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010380', '8C3206', '1340134', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010381', '8C3206', '1954545', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010382', '8C3206', '2118764', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010383', '8C3206', '1340133', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010384', '8C3206', '1340135', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010385', '8C3206', '2227553', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010386', '8E6144', '1954523', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010387', '8E6144', '1954524', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010388', '8E8867', '1340149', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010389', '8E8867', '1408051', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010390', '8E8867', '2762725', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010391', '8F3469', '1340154', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010392', '8F3469', '1340155', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010393', '8F9206', '1340156', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010394', '8F9206', '1340157', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010395', '8J4398', '1340165', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010396', '8J4398', '1340164', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010397', '8J5893', '1340166', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010398', '8J5893', '1340167', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010399', '8J6815', '1340169', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010400', '8J6815', '1340168', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010401', '8M3175', '1340178', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010402', '8M3175', '1340179', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010403', '8M4437', '1340180', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010404', '8M4437', '1340181', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010405', '8T0342', '1914722', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010406', '8T0342', '2633862', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010407', '8T0342', '1914723', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010408', '8T0342', '2517893', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010409', '8T0343', '1340194', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010410', '8T0343', '1340195', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010411', '8T2396', '1340198', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010412', '8T2396', '1340199', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010413', '8T2501', '1340200', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010414', '8T2501', '1340201', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010415', '8T3844', '1340202', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010416', '8T3844', '1340203', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010417', '8T4121', '1340212', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010418', '8T4121', '1340213', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010419', '8T4132', '1340214', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010420', '8T4132', '1340215', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010421', '8T4140', '1340218', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010422', '8T4140', '1340219', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010423', '8T4172', '1340222', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010424', '8T4172', '1340223', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010425', '8T4182', '1340228', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010426', '8T4182', '1340229', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010427', '8T4184', '1340230', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010428', '8T4184', '1340231', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010429', '8T4186', '1340234', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010430', '8T4186', '1340235', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010431', '8T4189', '1340236', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010432', '8T4189', '1340237', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010433', '8T4194', '1340242', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010434', '8T4194', '1340243', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010435', '8T4196', '1340247', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010436', '8T4196', '2154576', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010437', '8T4223', '1340248', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010438', '8T4223', '1340249', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010439', '8T4224', '1340250', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010440', '8T4224', '1340251', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010441', '8T4776', '1340254', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010442', '8T4776', '1340255', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010443', '8T4896', '1340256', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010444', '8T4896', '1340257', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010445', '8T4956', '1340258', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010446', '8T4956', '1340259', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010447', '8T5005', '1340260', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010448', '8T5005', '1340261', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010449', '8T6408', '1340263', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010450', '8T6408', '1340262', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010451', '8T6850', '1340266', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010452', '8T6850', '1340267', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010453', '8T7811', '1340277', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010454', '8T7811', '2268792', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010455', '8T7811', '1340276', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010456', '8T7811', '1340279', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010457', '8T8737', '1340281', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010458', '8T8737', '1340280', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010459', '8T8987', '1340285', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010460', '8T8987', '1340284', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010461', '8T9383', '1340290', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010462', '8T9383', '1340291', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010463', '8T9535', '1340294', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010464', '8T9535', '1340295', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010465', '9D7884', '1340296', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010466', '9D7884', '1340297', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010467', '9F6705', '1340298', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010468', '9F6705', '1340299', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010469', '9J0403', '1340302', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010470', '9J0403', '1340303', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010471', '9J0477', '1340308', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010472', '9J0477', '1340309', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010473', '9J5754', '1340312', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010474', '9J5754', '1340313', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010475', '9J8126', '1340314', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010476', '9J8126', '1340315', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010477', '9L9068', '1340316', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010478', '9L9068', '1340317', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993336010479', '9N0869', '1340320', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010000', '9N0869', '1340321', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010001', '9N4049', '1340322', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010002', '9N4049', '1340323', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010003', '9P8217', '1340326', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010004', '9P8217', '1340327', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010005', '9S4180', '1340331', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010006', '9S4180', '1340332', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010007', '9S4181', '1340334', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010008', '9S4181', '1340333', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010009', '9S4182', '1340338', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010010', '9S4182', '1340339', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010011', '9S4183', '2509583', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010012', '9S4183', '2509582', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010013', '9S4185', '1340345', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010014', '9S4185', '1340346', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010015', '9S4188', '1340347', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010016', '9S4188', '1340348', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010017', '9S4189', '1340349', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010018', '9S4189', '1340350', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010019', '9S4190', '1340351', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010020', '9S4190', '1340352', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010021', '9S4191', '1340353', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010022', '9S4191', '1340354', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010023', '9S4684', '1340355', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010024', '9S4684', '1340356', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010025', '9S8001', '1340359', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010026', '9S8001', '1340360', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010027', '9S8002', '1340361', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010028', '9S8002', '1340362', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010029', '9S8003', '1340363', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010030', '9S8003', '1340364', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010031', '9S8004', '1340365', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010032', '9S8004', '1340367', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010033', '9S8004', '2517919', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010034', '9S8005', '1340375', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010035', '9S8005', '1376626', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010036', '9S8006', '1340376', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010037', '9S8006', '1340377', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010038', '9S8007', '1340378', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010039', '9S8007', '1340379', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010040', '9S8008', '1340380', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010041', '9S8008', '1340381', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010042', '9S8009', '1340382', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010043', '9S8009', '1340383', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010044', '9T2856', '1954539', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010045', '9T2856', '1954540', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010046', '9T4685', '1340399', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010047', '9T4685', '1340398', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010048', '9T4697', '1340400', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010049', '9T4697', '1340401', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010050', '9T7418', '1340402', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010051', '9T7418', '1340403', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010052', '9T7419', '1340404', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010053', '9T7419', '1340405', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010054', '9W7783', '1340408', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010055', '9W7783', '1340409', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010056', '9X2158', '1340414', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010057', '9X2158', '2268793', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010058', '9X2158', '1340413', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010059', '9X2158', '1954578', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010060', '9X6154', '1340416', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010061', '9X6154', '1340417', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010062', '9X6381', '1340418', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010063', '9X6381', '1340419', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010064', '9X8256', '1340420', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010065', '9X8256', '1340421', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010066', '9X8257', '1340422', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010067', '9X8257', '1340423', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010068', '8T0151', '1480742', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010069', '8T0151', '1480743', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010070', '1081847', '1480772', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010071', '1081847', '1480771', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010072', '2P5755', '1495571', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010073', '2P5755', '1495572', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010074', '4681135', '2509595', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010075', '4681135', '2509596', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010076', '4932480', '1495577', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010077', '4932480', '1495578', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010078', '1488346', '1495581', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010079', '1488346', '1495579', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010080', '5261837', '1699340', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010081', '5261837', '1699342', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010082', '3344979/HR', '1495594', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010083', '3344979/HR', '1495593', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010084', '1488338', '1495595', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010085', '1488338', '1495596', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010086', '6V3965', '1526952', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010087', '6V3965', '1526954', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010088', '3603679', '1744229', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010089', '3603679', '1744230', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010090', '3J1907', '1621183', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010091', '3J1907', '1621184', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010092', '3J7354', '1744187', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010093', '3J7354', '1744188', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010094', '4J7533', '1621188', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010095', '4J7533', '1744192', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010096', '9S8004', '1744178', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010097', '9S8004', '1744177', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010098', '2147568', '1621191', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010099', '2147568', '1621192', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010100', '4829841', '1649842', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010101', '4829841', '1649843', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010102', '5654632/HE', '1649844', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010103', '5654632/HE', '1650750', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010104', '8P0346', '1650751', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010105', '8P0346', '1650752', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010106', '7X5308', '1650753', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010107', '7X5308', '1650754', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010108', '7X5315', '1650865', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010109', '7X5315', '1650866', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010110', '3112888', '1755373', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010111', '3112888', '1755374', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010112', '3527058/HE', '1985929', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010113', '3527058/HE', '1985930', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010114', '3527057/HE', '2023915', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010115', '3527057/HE', '2023916', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010116', '4681133', '2292886', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010117', '4681133', '2292887', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010118', '4681134', '2292888', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010119', '4681134', '2296294', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010120', '1234750', '2397314', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010121', '1234750', '2397315', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010122', '1649869', '2424101', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010123', '1649869', '2424100', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010124', '3884493', '2426528', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010125', '3884493', '2426529', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010126', '4M8239', '2544042', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010127', '4M8239', '2544041', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010128', '0951599/HE', '2544044', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010129', '0951599/HE', '2544043', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010130', '5A3604', '2544045', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010131', '5A3604', '2544046', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010132', '2254804/HE', '2544048', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010133', '2254804/HE', '2544049', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010134', '2254804/HE', '2544050', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010135', '2254804/HE', '2544051', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010136', '2254804/HE', '2544052', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010137', '0951578/HE', '2544053', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010138', '0951578/HE', '2544054', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010139', '0951587/HE', '2544055', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010140', '0951587/HE', '2544056', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010141', '8J1752', '2567537', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010142', '8J1752', '2567538', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010143', '7L8695', '2700226', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010144', '7L8695', '2700227', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010145', '8T6759', '2598346', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010146', '8T6759', '2602822', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010147', '6Y2522', '2602903', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010148', '6Y2522', '2602904', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010149', '8C5176', '2695137', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010150', '8C5176', '2693651', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010151', '3706923', '2700195', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010152', '3706923', '2700196', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010153', '4T5073', '2774197', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010154', '4T5073', '2773001', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010155', '3664972', '2774199', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010156', '3664972', '2774198', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010157', '7X0272', '2774201', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010158', '7X0272', '2774200', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010159', '4D9986', '2774203', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010160', '4D9986', '2774202', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010161', '2385078', '2774205', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010162', '2385078', '2774204', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010163', '9S8007', '2774207', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010164', '9S8007', '2774206', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010165', '8F9206', '2774208', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010166', '8F9206', '2774209', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010167', '6V7607', '2774211', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010168', '6V7607', '2774210', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010169', '4471707/HE', '2782462', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010170', '4471707/HE', '2782461', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010171', '5H6005', '2801880', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010172', '5H6005', '2801879', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010173', '2D6648', '2801882', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010174', '2D6648', '2801881', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010175', '2385082', '2804384', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010176', '2385082', '2804383', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010177', '6V6353', '2804386', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010178', '6V6353', '2804385', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010179', '4T5072', '2804388', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010180', '4T5072', '2804387', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010181', '1537553', '2804390', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010182', '1537553', '2804389', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010183', '1118234', '2804392', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010184', '1118234', '2804391', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010185', '9J0403', '2804394', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010186', '9J0403', '2804393', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010187', '3964852', '2804396', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010188', '3964852', '2804395', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010189', '4231787', '2804398', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010190', '4231787', '2804397', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010191', '9W7783', '2804400', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010192', '9W7783', '2804399', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010193', '7T8797', '2804402', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010194', '7T8797', '2804401', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010195', '4342475', '2803121', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010196', '4342475', '2803122', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010197', '4533451/HE', '2805988', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +INSERT INTO `t_app_kanban` (`record_id`, `goods_id`, `kanban_id`, `kanban_status`, `last_full_time`, `last_update_time`, `last_update_user`, `first_import_time`, `first_import_user`) VALUES ('1739874993337010198', '4533451/HE', '2805989', 0, '2025-02-18 18:36:33', NULL, NULL, '2025-02-18 18:36:33', '管理员'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_location +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_location`; +CREATE TABLE `t_app_location` ( + `location_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库位id', + `outer_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '外部库位编号', + `location_type` int NOT NULL COMMENT '库位类型', + `is_lock` int NOT NULL COMMENT '锁定', + `is_occupy` int NOT NULL COMMENT '占用', + `is_working` int NOT NULL COMMENT '是否在工作中', + `equipment_id` int NOT NULL COMMENT '设备号', + `tunnel_id` int NOT NULL COMMENT '巷道号', + `l_row` int NOT NULL COMMENT '排', + `l_col` int NOT NULL COMMENT '列', + `l_layer` int NOT NULL COMMENT '层', + `l_depth` int NOT NULL COMMENT '深度', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '载具号', + `area_id` int NOT NULL COMMENT '区域号', + `sub_area` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '子区域', + PRIMARY KEY (`location_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_location +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-01', '', 1, 0, 1, 0, 1, 1, 1, 1, 1, 1, 'ASRS-1245', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-02', '', 1, 1, 0, 0, 1, 1, 1, 1, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-03', '', 1, 0, 1, 0, 1, 1, 1, 1, 3, 1, 'ASRS-0545', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-04', '', 1, 0, 1, 0, 1, 1, 1, 1, 4, 1, 'ASRS-1246', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-05', '', 1, 0, 1, 0, 1, 1, 1, 1, 5, 1, 'ASRS-1088', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-06', '', 1, 0, 0, 0, 1, 1, 1, 1, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-07', '', 1, 0, 0, 0, 1, 1, 1, 1, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-08', '', 1, 0, 0, 0, 1, 1, 1, 1, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-09', '', 1, 0, 0, 0, 1, 1, 1, 1, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-10', '', 1, 0, 0, 0, 1, 1, 1, 1, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-11', '', 1, 0, 0, 0, 1, 1, 1, 1, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-01-12', '', 1, 0, 0, 0, 1, 1, 1, 1, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-01', '', 1, 0, 0, 0, 1, 1, 1, 2, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-02', '', 1, 1, 0, 0, 1, 1, 1, 2, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-03', '', 1, 0, 0, 0, 1, 1, 1, 2, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-04', '', 1, 0, 0, 0, 1, 1, 1, 2, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-05', '', 1, 0, 0, 0, 1, 1, 1, 2, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-06', '', 1, 0, 0, 0, 1, 1, 1, 2, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-07', '', 1, 0, 0, 0, 1, 1, 1, 2, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-08', '', 1, 0, 0, 0, 1, 1, 1, 2, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-09', '', 1, 0, 0, 0, 1, 1, 1, 2, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-10', '', 1, 0, 0, 0, 1, 1, 1, 2, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-11', '', 1, 0, 0, 0, 1, 1, 1, 2, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-02-12', '', 1, 0, 0, 0, 1, 1, 1, 2, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-01', '', 1, 0, 0, 0, 2, 2, 1, 3, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-02', '', 1, 1, 0, 0, 2, 2, 1, 3, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-03', '', 1, 0, 0, 0, 2, 2, 1, 3, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-04', '', 1, 0, 0, 0, 2, 2, 1, 3, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-05', '', 1, 0, 0, 0, 2, 2, 1, 3, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-06', '', 1, 0, 0, 0, 2, 2, 1, 3, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-07', '', 1, 0, 0, 0, 2, 2, 1, 3, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-08', '', 1, 0, 0, 0, 2, 2, 1, 3, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-09', '', 1, 0, 0, 0, 2, 2, 1, 3, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-10', '', 1, 0, 0, 0, 2, 2, 1, 3, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-11', '', 1, 0, 0, 0, 2, 2, 1, 3, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-03-12', '', 1, 0, 0, 0, 2, 2, 1, 3, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-01', '', 1, 0, 0, 0, 2, 2, 1, 4, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-02', '', 1, 1, 0, 0, 2, 2, 1, 4, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-03', '', 1, 0, 0, 0, 2, 2, 1, 4, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-04', '', 1, 0, 0, 0, 2, 2, 1, 4, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-05', '', 1, 0, 0, 0, 2, 2, 1, 4, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-06', '', 1, 0, 0, 0, 2, 2, 1, 4, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-07', '', 1, 0, 0, 0, 2, 2, 1, 4, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-08', '', 1, 0, 0, 0, 2, 2, 1, 4, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-09', '', 1, 0, 0, 0, 2, 2, 1, 4, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-10', '', 1, 0, 0, 0, 2, 2, 1, 4, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-11', '', 1, 0, 0, 0, 2, 2, 1, 4, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-04-12', '', 1, 0, 0, 0, 2, 2, 1, 4, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-01', '', 1, 0, 0, 0, 3, 3, 1, 5, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-02', '', 1, 1, 0, 0, 3, 3, 1, 5, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-03', '', 1, 0, 0, 0, 3, 3, 1, 5, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-04', '', 1, 0, 0, 0, 3, 3, 1, 5, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-05', '', 1, 0, 0, 0, 3, 3, 1, 5, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-06', '', 1, 0, 0, 0, 3, 3, 1, 5, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-07', '', 1, 0, 0, 0, 3, 3, 1, 5, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-08', '', 1, 0, 0, 0, 3, 3, 1, 5, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-09', '', 1, 0, 0, 0, 3, 3, 1, 5, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-10', '', 1, 0, 0, 0, 3, 3, 1, 5, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-11', '', 1, 0, 0, 0, 3, 3, 1, 5, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-05-12', '', 1, 0, 0, 0, 3, 3, 1, 5, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-01', '', 1, 0, 0, 0, 3, 3, 1, 6, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-02', '', 1, 1, 0, 0, 3, 3, 1, 6, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-03', '', 1, 0, 0, 0, 3, 3, 1, 6, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-04', '', 1, 0, 0, 0, 3, 3, 1, 6, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-05', '', 1, 0, 0, 0, 3, 3, 1, 6, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-06', '', 1, 0, 0, 0, 3, 3, 1, 6, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-07', '', 1, 0, 0, 0, 3, 3, 1, 6, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-08', '', 1, 0, 0, 0, 3, 3, 1, 6, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-09', '', 1, 0, 0, 0, 3, 3, 1, 6, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-10', '', 1, 0, 0, 0, 3, 3, 1, 6, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-11', '', 1, 0, 0, 0, 3, 3, 1, 6, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-06-12', '', 1, 0, 0, 0, 3, 3, 1, 6, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-01', '', 1, 0, 0, 0, 4, 4, 1, 7, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-02', '', 1, 1, 0, 0, 4, 4, 1, 7, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-03', '', 1, 0, 0, 0, 4, 4, 1, 7, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-04', '', 1, 0, 0, 0, 4, 4, 1, 7, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-05', '', 1, 0, 0, 0, 4, 4, 1, 7, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-06', '', 1, 0, 0, 0, 4, 4, 1, 7, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-07', '', 1, 0, 0, 0, 4, 4, 1, 7, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-08', '', 1, 0, 0, 0, 4, 4, 1, 7, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-09', '', 1, 0, 0, 0, 4, 4, 1, 7, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-10', '', 1, 0, 0, 0, 4, 4, 1, 7, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-11', '', 1, 0, 0, 0, 4, 4, 1, 7, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-07-12', '', 1, 0, 0, 0, 4, 4, 1, 7, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-01', '', 1, 0, 0, 0, 4, 4, 1, 8, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-02', '', 1, 1, 0, 0, 4, 4, 1, 8, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-03', '', 1, 0, 0, 0, 4, 4, 1, 8, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-04', '', 1, 0, 0, 0, 4, 4, 1, 8, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-05', '', 1, 0, 0, 0, 4, 4, 1, 8, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-06', '', 1, 0, 0, 0, 4, 4, 1, 8, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-07', '', 1, 0, 0, 0, 4, 4, 1, 8, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-08', '', 1, 0, 0, 0, 4, 4, 1, 8, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-09', '', 1, 0, 0, 0, 4, 4, 1, 8, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-10', '', 1, 0, 0, 0, 4, 4, 1, 8, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-11', '', 1, 0, 0, 0, 4, 4, 1, 8, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-08-12', '', 1, 0, 0, 0, 4, 4, 1, 8, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-01', '', 1, 0, 0, 0, 5, 5, 1, 9, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-02', '', 1, 1, 0, 0, 5, 5, 1, 9, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-03', '', 1, 0, 0, 0, 5, 5, 1, 9, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-04', '', 1, 0, 0, 0, 5, 5, 1, 9, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-05', '', 1, 0, 0, 0, 5, 5, 1, 9, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-06', '', 1, 0, 0, 0, 5, 5, 1, 9, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-07', '', 1, 0, 0, 0, 5, 5, 1, 9, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-08', '', 1, 0, 0, 0, 5, 5, 1, 9, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-09', '', 1, 0, 0, 0, 5, 5, 1, 9, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-10', '', 1, 0, 0, 0, 5, 5, 1, 9, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-11', '', 1, 0, 0, 0, 5, 5, 1, 9, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-09-12', '', 1, 0, 0, 0, 5, 5, 1, 9, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-01', '', 1, 0, 0, 0, 5, 5, 1, 10, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-02', '', 1, 1, 0, 0, 5, 5, 1, 10, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-03', '', 1, 0, 0, 0, 5, 5, 1, 10, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-04', '', 1, 0, 0, 0, 5, 5, 1, 10, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-05', '', 1, 0, 0, 0, 5, 5, 1, 10, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-06', '', 1, 0, 0, 0, 5, 5, 1, 10, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-07', '', 1, 0, 0, 0, 5, 5, 1, 10, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-08', '', 1, 0, 0, 0, 5, 5, 1, 10, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-09', '', 1, 0, 0, 0, 5, 5, 1, 10, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-10', '', 1, 0, 0, 0, 5, 5, 1, 10, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-11', '', 1, 0, 0, 0, 5, 5, 1, 10, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-10-12', '', 1, 0, 0, 0, 5, 5, 1, 10, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-01', '', 1, 0, 0, 0, 6, 6, 1, 11, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-02', '', 1, 1, 0, 0, 6, 6, 1, 11, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-03', '', 1, 0, 0, 0, 6, 6, 1, 11, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-04', '', 1, 0, 0, 0, 6, 6, 1, 11, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-05', '', 1, 0, 0, 0, 6, 6, 1, 11, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-06', '', 1, 0, 0, 0, 6, 6, 1, 11, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-07', '', 1, 0, 0, 0, 6, 6, 1, 11, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-08', '', 1, 0, 0, 0, 6, 6, 1, 11, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-09', '', 1, 0, 0, 0, 6, 6, 1, 11, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-10', '', 1, 0, 0, 0, 6, 6, 1, 11, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-11', '', 1, 0, 0, 0, 6, 6, 1, 11, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-11-12', '', 1, 0, 0, 0, 6, 6, 1, 11, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-01', '', 1, 0, 0, 0, 6, 6, 1, 12, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-02', '', 1, 1, 0, 0, 6, 6, 1, 12, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-03', '', 1, 0, 0, 0, 6, 6, 1, 12, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-04', '', 1, 0, 0, 0, 6, 6, 1, 12, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-05', '', 1, 0, 0, 0, 6, 6, 1, 12, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-06', '', 1, 0, 0, 0, 6, 6, 1, 12, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-07', '', 1, 0, 0, 0, 6, 6, 1, 12, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-08', '', 1, 0, 0, 0, 6, 6, 1, 12, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-09', '', 1, 0, 0, 0, 6, 6, 1, 12, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-10', '', 1, 0, 0, 0, 6, 6, 1, 12, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-11', '', 1, 0, 0, 0, 6, 6, 1, 12, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-12-12', '', 1, 0, 0, 0, 6, 6, 1, 12, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-01', '', 1, 0, 0, 0, 7, 7, 1, 13, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-02', '', 1, 1, 0, 0, 7, 7, 1, 13, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-03', '', 1, 0, 0, 0, 7, 7, 1, 13, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-04', '', 1, 0, 0, 0, 7, 7, 1, 13, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-05', '', 1, 0, 0, 0, 7, 7, 1, 13, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-06', '', 1, 0, 0, 0, 7, 7, 1, 13, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-07', '', 1, 0, 0, 0, 7, 7, 1, 13, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-08', '', 1, 0, 0, 0, 7, 7, 1, 13, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-09', '', 1, 0, 0, 0, 7, 7, 1, 13, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-10', '', 1, 0, 0, 0, 7, 7, 1, 13, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-11', '', 1, 0, 0, 0, 7, 7, 1, 13, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-13-12', '', 1, 0, 0, 0, 7, 7, 1, 13, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-01', '', 1, 0, 0, 0, 7, 7, 1, 14, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-02', '', 1, 1, 0, 0, 7, 7, 1, 14, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-03', '', 1, 0, 0, 0, 7, 7, 1, 14, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-04', '', 1, 0, 0, 0, 7, 7, 1, 14, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-05', '', 1, 0, 0, 0, 7, 7, 1, 14, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-06', '', 1, 0, 0, 0, 7, 7, 1, 14, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-07', '', 1, 0, 0, 0, 7, 7, 1, 14, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-08', '', 1, 0, 0, 0, 7, 7, 1, 14, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-09', '', 1, 0, 0, 0, 7, 7, 1, 14, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-10', '', 1, 0, 0, 0, 7, 7, 1, 14, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-11', '', 1, 0, 0, 0, 7, 7, 1, 14, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-14-12', '', 1, 0, 0, 0, 7, 7, 1, 14, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-01', '', 1, 0, 0, 0, 8, 8, 1, 15, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-02', '', 1, 1, 0, 0, 8, 8, 1, 15, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-03', '', 1, 0, 0, 0, 8, 8, 1, 15, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-04', '', 1, 0, 0, 0, 8, 8, 1, 15, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-05', '', 1, 0, 0, 0, 8, 8, 1, 15, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-06', '', 1, 0, 0, 0, 8, 8, 1, 15, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-07', '', 1, 0, 0, 0, 8, 8, 1, 15, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-08', '', 1, 0, 0, 0, 8, 8, 1, 15, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-09', '', 1, 0, 0, 0, 8, 8, 1, 15, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-10', '', 1, 0, 0, 0, 8, 8, 1, 15, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-11', '', 1, 0, 0, 0, 8, 8, 1, 15, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-15-12', '', 1, 0, 0, 0, 8, 8, 1, 15, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-01', '', 1, 0, 0, 0, 8, 8, 1, 16, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-02', '', 1, 1, 0, 0, 8, 8, 1, 16, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-03', '', 1, 0, 0, 0, 8, 8, 1, 16, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-04', '', 1, 0, 0, 0, 8, 8, 1, 16, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-05', '', 1, 0, 0, 0, 8, 8, 1, 16, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-06', '', 1, 0, 0, 0, 8, 8, 1, 16, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-07', '', 1, 0, 0, 0, 8, 8, 1, 16, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-08', '', 1, 0, 0, 0, 8, 8, 1, 16, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-09', '', 1, 0, 0, 0, 8, 8, 1, 16, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-10', '', 1, 0, 0, 0, 8, 8, 1, 16, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-11', '', 1, 0, 0, 0, 8, 8, 1, 16, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-16-12', '', 1, 0, 0, 0, 8, 8, 1, 16, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-01', '', 1, 0, 0, 0, 9, 9, 1, 17, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-02', '', 1, 1, 0, 0, 9, 9, 1, 17, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-03', '', 1, 0, 0, 0, 9, 9, 1, 17, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-04', '', 1, 0, 0, 0, 9, 9, 1, 17, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-05', '', 1, 0, 0, 0, 9, 9, 1, 17, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-06', '', 1, 0, 0, 0, 9, 9, 1, 17, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-07', '', 1, 0, 0, 0, 9, 9, 1, 17, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-08', '', 1, 0, 0, 0, 9, 9, 1, 17, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-09', '', 1, 0, 0, 0, 9, 9, 1, 17, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-10', '', 1, 0, 0, 0, 9, 9, 1, 17, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-11', '', 1, 0, 0, 0, 9, 9, 1, 17, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-17-12', '', 1, 0, 0, 0, 9, 9, 1, 17, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-01', '', 1, 0, 0, 0, 9, 9, 1, 18, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-02', '', 1, 1, 0, 0, 9, 9, 1, 18, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-03', '', 1, 0, 0, 0, 9, 9, 1, 18, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-04', '', 1, 0, 0, 0, 9, 9, 1, 18, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-05', '', 1, 0, 0, 0, 9, 9, 1, 18, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-06', '', 1, 0, 0, 0, 9, 9, 1, 18, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-07', '', 1, 0, 0, 0, 9, 9, 1, 18, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-08', '', 1, 0, 0, 0, 9, 9, 1, 18, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-09', '', 1, 0, 0, 0, 9, 9, 1, 18, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-10', '', 1, 0, 0, 0, 9, 9, 1, 18, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-11', '', 1, 0, 0, 0, 9, 9, 1, 18, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-18-12', '', 1, 0, 0, 0, 9, 9, 1, 18, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-01', '', 1, 0, 0, 0, 10, 10, 1, 19, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-02', '', 1, 1, 0, 0, 10, 10, 1, 19, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-03', '', 1, 0, 0, 0, 10, 10, 1, 19, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-04', '', 1, 0, 0, 0, 10, 10, 1, 19, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-05', '', 1, 0, 0, 0, 10, 10, 1, 19, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-06', '', 1, 0, 0, 0, 10, 10, 1, 19, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-07', '', 1, 0, 0, 0, 10, 10, 1, 19, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-08', '', 1, 0, 0, 0, 10, 10, 1, 19, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-09', '', 1, 0, 0, 0, 10, 10, 1, 19, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-10', '', 1, 0, 0, 0, 10, 10, 1, 19, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-11', '', 1, 0, 0, 0, 10, 10, 1, 19, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-19-12', '', 1, 0, 0, 0, 10, 10, 1, 19, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-01', '', 1, 0, 0, 0, 10, 10, 1, 20, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-02', '', 1, 1, 0, 0, 10, 10, 1, 20, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-03', '', 1, 0, 0, 0, 10, 10, 1, 20, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-04', '', 1, 0, 0, 0, 10, 10, 1, 20, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-05', '', 1, 0, 0, 0, 10, 10, 1, 20, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-06', '', 1, 0, 0, 0, 10, 10, 1, 20, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-07', '', 1, 0, 0, 0, 10, 10, 1, 20, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-08', '', 1, 0, 0, 0, 10, 10, 1, 20, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-09', '', 1, 0, 0, 0, 10, 10, 1, 20, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-10', '', 1, 0, 0, 0, 10, 10, 1, 20, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-11', '', 1, 0, 0, 0, 10, 10, 1, 20, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-20-12', '', 1, 0, 0, 0, 10, 10, 1, 20, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-01', '', 1, 0, 0, 0, 11, 11, 1, 21, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-02', '', 1, 1, 0, 0, 11, 11, 1, 21, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-03', '', 1, 0, 0, 0, 11, 11, 1, 21, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-04', '', 1, 0, 0, 0, 11, 11, 1, 21, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-05', '', 1, 0, 0, 0, 11, 11, 1, 21, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-06', '', 1, 0, 0, 0, 11, 11, 1, 21, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-07', '', 1, 0, 0, 0, 11, 11, 1, 21, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-08', '', 1, 0, 0, 0, 11, 11, 1, 21, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-09', '', 1, 0, 0, 0, 11, 11, 1, 21, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-10', '', 1, 0, 0, 0, 11, 11, 1, 21, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-11', '', 1, 0, 0, 0, 11, 11, 1, 21, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-21-12', '', 1, 0, 0, 0, 11, 11, 1, 21, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-01', '', 1, 0, 0, 0, 11, 11, 1, 22, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-02', '', 1, 1, 0, 0, 11, 11, 1, 22, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-03', '', 1, 0, 0, 0, 11, 11, 1, 22, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-04', '', 1, 0, 0, 0, 11, 11, 1, 22, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-05', '', 1, 0, 0, 0, 11, 11, 1, 22, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-06', '', 1, 0, 0, 0, 11, 11, 1, 22, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-07', '', 1, 0, 0, 0, 11, 11, 1, 22, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-08', '', 1, 0, 0, 0, 11, 11, 1, 22, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-09', '', 1, 0, 0, 0, 11, 11, 1, 22, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-10', '', 1, 0, 0, 0, 11, 11, 1, 22, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-11', '', 1, 0, 0, 0, 11, 11, 1, 22, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-22-12', '', 1, 0, 0, 0, 11, 11, 1, 22, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-01', '', 1, 0, 0, 0, 12, 12, 1, 23, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-02', '', 1, 1, 0, 0, 12, 12, 1, 23, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-03', '', 1, 0, 0, 0, 12, 12, 1, 23, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-04', '', 1, 0, 0, 0, 12, 12, 1, 23, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-05', '', 1, 0, 0, 0, 12, 12, 1, 23, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-06', '', 1, 0, 0, 0, 12, 12, 1, 23, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-07', '', 1, 0, 0, 0, 12, 12, 1, 23, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-08', '', 1, 0, 0, 0, 12, 12, 1, 23, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-09', '', 1, 0, 0, 0, 12, 12, 1, 23, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-10', '', 1, 0, 0, 0, 12, 12, 1, 23, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-11', '', 1, 0, 0, 0, 12, 12, 1, 23, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-23-12', '', 1, 0, 0, 0, 12, 12, 1, 23, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-01', '', 1, 0, 0, 0, 12, 12, 1, 24, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-02', '', 1, 1, 0, 0, 12, 12, 1, 24, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-03', '', 1, 0, 0, 0, 12, 12, 1, 24, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-04', '', 1, 0, 0, 0, 12, 12, 1, 24, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-05', '', 1, 0, 0, 0, 12, 12, 1, 24, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-06', '', 1, 0, 0, 0, 12, 12, 1, 24, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-07', '', 1, 0, 0, 0, 12, 12, 1, 24, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-08', '', 1, 0, 0, 0, 12, 12, 1, 24, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-09', '', 1, 0, 0, 0, 12, 12, 1, 24, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-10', '', 1, 0, 0, 0, 12, 12, 1, 24, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-11', '', 1, 0, 0, 0, 12, 12, 1, 24, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-24-12', '', 1, 0, 0, 0, 12, 12, 1, 24, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-01', '', 1, 0, 0, 0, 13, 13, 1, 25, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-02', '', 1, 1, 0, 0, 13, 13, 1, 25, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-03', '', 1, 0, 0, 0, 13, 13, 1, 25, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-04', '', 1, 0, 0, 0, 13, 13, 1, 25, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-05', '', 1, 0, 0, 0, 13, 13, 1, 25, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-06', '', 1, 0, 0, 0, 13, 13, 1, 25, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-07', '', 1, 0, 0, 0, 13, 13, 1, 25, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-08', '', 1, 0, 0, 0, 13, 13, 1, 25, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-09', '', 1, 0, 0, 0, 13, 13, 1, 25, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-10', '', 1, 0, 0, 0, 13, 13, 1, 25, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-11', '', 1, 0, 0, 0, 13, 13, 1, 25, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-25-12', '', 1, 0, 0, 0, 13, 13, 1, 25, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-01', '', 1, 0, 0, 0, 13, 13, 1, 26, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-02', '', 1, 1, 0, 0, 13, 13, 1, 26, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-03', '', 1, 0, 0, 0, 13, 13, 1, 26, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-04', '', 1, 0, 0, 0, 13, 13, 1, 26, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-05', '', 1, 0, 0, 0, 13, 13, 1, 26, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-06', '', 1, 0, 0, 0, 13, 13, 1, 26, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-07', '', 1, 0, 0, 0, 13, 13, 1, 26, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-08', '', 1, 0, 0, 0, 13, 13, 1, 26, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-09', '', 1, 0, 0, 0, 13, 13, 1, 26, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-10', '', 1, 0, 0, 0, 13, 13, 1, 26, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-11', '', 1, 0, 0, 0, 13, 13, 1, 26, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-26-12', '', 1, 0, 0, 0, 13, 13, 1, 26, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-01', '', 1, 0, 0, 0, 14, 14, 1, 27, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-02', '', 1, 1, 0, 0, 14, 14, 1, 27, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-03', '', 1, 0, 0, 0, 14, 14, 1, 27, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-04', '', 1, 0, 0, 0, 14, 14, 1, 27, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-05', '', 1, 0, 0, 0, 14, 14, 1, 27, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-06', '', 1, 0, 0, 0, 14, 14, 1, 27, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-07', '', 1, 0, 0, 0, 14, 14, 1, 27, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-08', '', 1, 0, 0, 0, 14, 14, 1, 27, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-09', '', 1, 0, 0, 0, 14, 14, 1, 27, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-10', '', 1, 0, 0, 0, 14, 14, 1, 27, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-11', '', 1, 0, 0, 0, 14, 14, 1, 27, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-27-12', '', 1, 0, 0, 0, 14, 14, 1, 27, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-01', '', 1, 0, 0, 0, 14, 14, 1, 28, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-02', '', 1, 1, 0, 0, 14, 14, 1, 28, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-03', '', 1, 0, 0, 0, 14, 14, 1, 28, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-04', '', 1, 0, 0, 0, 14, 14, 1, 28, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-05', '', 1, 0, 0, 0, 14, 14, 1, 28, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-06', '', 1, 0, 0, 0, 14, 14, 1, 28, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-07', '', 1, 0, 0, 0, 14, 14, 1, 28, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-08', '', 1, 0, 0, 0, 14, 14, 1, 28, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-09', '', 1, 0, 0, 0, 14, 14, 1, 28, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-10', '', 1, 0, 0, 0, 14, 14, 1, 28, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-11', '', 1, 0, 0, 0, 14, 14, 1, 28, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-28-12', '', 1, 0, 0, 0, 14, 14, 1, 28, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-01', '', 1, 0, 0, 0, 15, 15, 1, 29, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-02', '', 1, 1, 0, 0, 15, 15, 1, 29, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-03', '', 1, 0, 0, 0, 15, 15, 1, 29, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-04', '', 1, 0, 0, 0, 15, 15, 1, 29, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-05', '', 1, 0, 0, 0, 15, 15, 1, 29, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-06', '', 1, 0, 0, 0, 15, 15, 1, 29, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-07', '', 1, 0, 0, 0, 15, 15, 1, 29, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-08', '', 1, 0, 0, 0, 15, 15, 1, 29, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-09', '', 1, 0, 0, 0, 15, 15, 1, 29, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-10', '', 1, 0, 0, 0, 15, 15, 1, 29, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-11', '', 1, 0, 0, 0, 15, 15, 1, 29, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-29-12', '', 1, 0, 0, 0, 15, 15, 1, 29, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-01', '', 1, 0, 0, 0, 15, 15, 1, 30, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-02', '', 1, 1, 0, 0, 15, 15, 1, 30, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-03', '', 1, 0, 0, 0, 15, 15, 1, 30, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-04', '', 1, 0, 0, 0, 15, 15, 1, 30, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-05', '', 1, 0, 0, 0, 15, 15, 1, 30, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-06', '', 1, 0, 0, 0, 15, 15, 1, 30, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-07', '', 1, 0, 0, 0, 15, 15, 1, 30, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-08', '', 1, 0, 0, 0, 15, 15, 1, 30, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-09', '', 1, 0, 0, 0, 15, 15, 1, 30, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-10', '', 1, 0, 0, 0, 15, 15, 1, 30, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-11', '', 1, 0, 0, 0, 15, 15, 1, 30, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-30-12', '', 1, 0, 0, 0, 15, 15, 1, 30, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-01', '', 1, 0, 0, 0, 16, 16, 1, 31, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-02', '', 1, 1, 0, 0, 16, 16, 1, 31, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-03', '', 1, 0, 0, 0, 16, 16, 1, 31, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-04', '', 1, 0, 0, 0, 16, 16, 1, 31, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-05', '', 1, 0, 0, 0, 16, 16, 1, 31, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-06', '', 1, 0, 0, 0, 16, 16, 1, 31, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-07', '', 1, 0, 0, 0, 16, 16, 1, 31, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-08', '', 1, 0, 0, 0, 16, 16, 1, 31, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-09', '', 1, 0, 0, 0, 16, 16, 1, 31, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-10', '', 1, 0, 0, 0, 16, 16, 1, 31, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-11', '', 1, 0, 0, 0, 16, 16, 1, 31, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-31-12', '', 1, 0, 0, 0, 16, 16, 1, 31, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-01', '', 1, 0, 0, 0, 16, 16, 1, 32, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-02', '', 1, 1, 0, 0, 16, 16, 1, 32, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-03', '', 1, 0, 0, 0, 16, 16, 1, 32, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-04', '', 1, 0, 0, 0, 16, 16, 1, 32, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-05', '', 1, 0, 0, 0, 16, 16, 1, 32, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-06', '', 1, 0, 0, 0, 16, 16, 1, 32, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-07', '', 1, 0, 0, 0, 16, 16, 1, 32, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-08', '', 1, 0, 0, 0, 16, 16, 1, 32, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-09', '', 1, 0, 0, 0, 16, 16, 1, 32, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-10', '', 1, 0, 0, 0, 16, 16, 1, 32, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-11', '', 1, 0, 0, 0, 16, 16, 1, 32, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-32-12', '', 1, 0, 0, 0, 16, 16, 1, 32, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-01', '', 1, 0, 0, 0, 17, 17, 1, 33, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-02', '', 1, 1, 0, 0, 17, 17, 1, 33, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-03', '', 1, 0, 0, 0, 17, 17, 1, 33, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-04', '', 1, 0, 0, 0, 17, 17, 1, 33, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-05', '', 1, 0, 0, 0, 17, 17, 1, 33, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-06', '', 1, 0, 0, 0, 17, 17, 1, 33, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-07', '', 1, 0, 0, 0, 17, 17, 1, 33, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-08', '', 1, 0, 0, 0, 17, 17, 1, 33, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-09', '', 1, 0, 0, 0, 17, 17, 1, 33, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-10', '', 1, 0, 0, 0, 17, 17, 1, 33, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-11', '', 1, 0, 0, 0, 17, 17, 1, 33, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-33-12', '', 1, 0, 0, 0, 17, 17, 1, 33, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-01', '', 1, 0, 0, 0, 17, 17, 1, 34, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-02', '', 1, 1, 0, 0, 17, 17, 1, 34, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-03', '', 1, 0, 0, 0, 17, 17, 1, 34, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-04', '', 1, 0, 0, 0, 17, 17, 1, 34, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-05', '', 1, 0, 0, 0, 17, 17, 1, 34, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-06', '', 1, 0, 0, 0, 17, 17, 1, 34, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-07', '', 1, 0, 0, 0, 17, 17, 1, 34, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-08', '', 1, 0, 0, 0, 17, 17, 1, 34, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-09', '', 1, 0, 0, 0, 17, 17, 1, 34, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-10', '', 1, 0, 0, 0, 17, 17, 1, 34, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-11', '', 1, 0, 0, 0, 17, 17, 1, 34, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-34-12', '', 1, 0, 0, 0, 17, 17, 1, 34, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-01', '', 1, 0, 0, 0, 18, 18, 1, 35, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-02', '', 1, 1, 0, 0, 18, 18, 1, 35, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-03', '', 1, 0, 0, 0, 18, 18, 1, 35, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-04', '', 1, 0, 0, 0, 18, 18, 1, 35, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-05', '', 1, 0, 0, 0, 18, 18, 1, 35, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-06', '', 1, 0, 0, 0, 18, 18, 1, 35, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-07', '', 1, 0, 0, 0, 18, 18, 1, 35, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-08', '', 1, 0, 0, 0, 18, 18, 1, 35, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-09', '', 1, 0, 0, 0, 18, 18, 1, 35, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-10', '', 1, 0, 0, 0, 18, 18, 1, 35, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-11', '', 1, 0, 0, 0, 18, 18, 1, 35, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-35-12', '', 1, 0, 0, 0, 18, 18, 1, 35, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-01', '', 1, 0, 0, 0, 18, 18, 1, 36, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-02', '', 1, 1, 0, 0, 18, 18, 1, 36, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-03', '', 1, 0, 0, 0, 18, 18, 1, 36, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-04', '', 1, 0, 0, 0, 18, 18, 1, 36, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-05', '', 1, 0, 0, 0, 18, 18, 1, 36, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-06', '', 1, 0, 0, 0, 18, 18, 1, 36, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-07', '', 1, 0, 0, 0, 18, 18, 1, 36, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-08', '', 1, 0, 0, 0, 18, 18, 1, 36, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-09', '', 1, 0, 0, 0, 18, 18, 1, 36, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-10', '', 1, 0, 0, 0, 18, 18, 1, 36, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-11', '', 1, 0, 0, 0, 18, 18, 1, 36, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-36-12', '', 1, 0, 0, 0, 18, 18, 1, 36, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-01', '', 1, 0, 0, 0, 19, 19, 1, 37, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-02', '', 1, 1, 0, 0, 19, 19, 1, 37, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-03', '', 1, 0, 0, 0, 19, 19, 1, 37, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-04', '', 1, 0, 0, 0, 19, 19, 1, 37, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-05', '', 1, 0, 0, 0, 19, 19, 1, 37, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-06', '', 1, 0, 0, 0, 19, 19, 1, 37, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-07', '', 1, 0, 0, 0, 19, 19, 1, 37, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-08', '', 1, 0, 0, 0, 19, 19, 1, 37, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-09', '', 1, 0, 0, 0, 19, 19, 1, 37, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-10', '', 1, 0, 0, 0, 19, 19, 1, 37, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-11', '', 1, 0, 0, 0, 19, 19, 1, 37, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-37-12', '', 1, 0, 0, 0, 19, 19, 1, 37, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-01', '', 1, 0, 0, 0, 19, 19, 1, 38, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-02', '', 1, 1, 0, 0, 19, 19, 1, 38, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-03', '', 1, 0, 0, 0, 19, 19, 1, 38, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-04', '', 1, 0, 0, 0, 19, 19, 1, 38, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-05', '', 1, 0, 0, 0, 19, 19, 1, 38, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-06', '', 1, 0, 0, 0, 19, 19, 1, 38, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-07', '', 1, 0, 0, 0, 19, 19, 1, 38, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-08', '', 1, 0, 0, 0, 19, 19, 1, 38, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-09', '', 1, 0, 0, 0, 19, 19, 1, 38, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-10', '', 1, 0, 0, 0, 19, 19, 1, 38, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-11', '', 1, 0, 0, 0, 19, 19, 1, 38, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-38-12', '', 1, 0, 0, 0, 19, 19, 1, 38, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-01', '', 1, 0, 0, 0, 20, 20, 1, 39, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-02', '', 1, 1, 0, 0, 20, 20, 1, 39, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-03', '', 1, 0, 0, 0, 20, 20, 1, 39, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-04', '', 1, 0, 0, 0, 20, 20, 1, 39, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-05', '', 1, 0, 0, 0, 20, 20, 1, 39, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-06', '', 1, 0, 0, 0, 20, 20, 1, 39, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-07', '', 1, 0, 0, 0, 20, 20, 1, 39, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-08', '', 1, 0, 0, 0, 20, 20, 1, 39, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-09', '', 1, 0, 0, 0, 20, 20, 1, 39, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-10', '', 1, 0, 0, 0, 20, 20, 1, 39, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-11', '', 1, 0, 0, 0, 20, 20, 1, 39, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-39-12', '', 1, 0, 0, 0, 20, 20, 1, 39, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-01', '', 1, 0, 0, 0, 20, 20, 1, 40, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-02', '', 1, 1, 0, 0, 20, 20, 1, 40, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-03', '', 1, 0, 0, 0, 20, 20, 1, 40, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-04', '', 1, 0, 0, 0, 20, 20, 1, 40, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-05', '', 1, 0, 0, 0, 20, 20, 1, 40, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-06', '', 1, 0, 0, 0, 20, 20, 1, 40, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-07', '', 1, 0, 0, 0, 20, 20, 1, 40, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-08', '', 1, 0, 0, 0, 20, 20, 1, 40, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-09', '', 1, 0, 0, 0, 20, 20, 1, 40, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-10', '', 1, 0, 0, 0, 20, 20, 1, 40, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-11', '', 1, 0, 0, 0, 20, 20, 1, 40, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-40-12', '', 1, 0, 0, 0, 20, 20, 1, 40, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-01', '', 1, 0, 0, 0, 21, 21, 1, 41, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-02', '', 1, 1, 0, 0, 21, 21, 1, 41, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-03', '', 1, 0, 0, 0, 21, 21, 1, 41, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-04', '', 1, 0, 0, 0, 21, 21, 1, 41, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-05', '', 1, 0, 0, 0, 21, 21, 1, 41, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-06', '', 1, 0, 0, 0, 21, 21, 1, 41, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-07', '', 1, 0, 0, 0, 21, 21, 1, 41, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-08', '', 1, 0, 0, 0, 21, 21, 1, 41, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-09', '', 1, 0, 0, 0, 21, 21, 1, 41, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-10', '', 1, 0, 0, 0, 21, 21, 1, 41, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-11', '', 1, 0, 0, 0, 21, 21, 1, 41, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-41-12', '', 1, 0, 0, 0, 21, 21, 1, 41, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-01', '', 1, 0, 0, 0, 21, 21, 1, 42, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-02', '', 1, 1, 0, 0, 21, 21, 1, 42, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-03', '', 1, 0, 0, 0, 21, 21, 1, 42, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-04', '', 1, 0, 0, 0, 21, 21, 1, 42, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-05', '', 1, 0, 0, 0, 21, 21, 1, 42, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-06', '', 1, 0, 0, 0, 21, 21, 1, 42, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-07', '', 1, 0, 0, 0, 21, 21, 1, 42, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-08', '', 1, 0, 0, 0, 21, 21, 1, 42, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-09', '', 1, 0, 0, 0, 21, 21, 1, 42, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-10', '', 1, 0, 0, 0, 21, 21, 1, 42, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-11', '', 1, 0, 0, 0, 21, 21, 1, 42, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A01-42-12', '', 1, 0, 0, 0, 21, 21, 1, 42, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-01', '', 1, 0, 0, 0, 1, 1, 2, 1, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-02', '', 1, 1, 0, 0, 1, 1, 2, 1, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-03', '', 1, 0, 0, 0, 1, 1, 2, 1, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-04', '', 1, 0, 0, 0, 1, 1, 2, 1, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-05', '', 1, 0, 0, 0, 1, 1, 2, 1, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-06', '', 1, 0, 0, 0, 1, 1, 2, 1, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-07', '', 1, 0, 0, 0, 1, 1, 2, 1, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-08', '', 1, 0, 0, 0, 1, 1, 2, 1, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-09', '', 1, 0, 0, 0, 1, 1, 2, 1, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-10', '', 1, 0, 0, 0, 1, 1, 2, 1, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-11', '', 1, 0, 0, 0, 1, 1, 2, 1, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-01-12', '', 1, 0, 0, 0, 1, 1, 2, 1, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-01', '', 1, 0, 0, 0, 1, 1, 2, 2, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-02', '', 1, 1, 0, 0, 1, 1, 2, 2, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-03', '', 1, 0, 0, 0, 1, 1, 2, 2, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-04', '', 1, 0, 0, 0, 1, 1, 2, 2, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-05', '', 1, 0, 0, 0, 1, 1, 2, 2, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-06', '', 1, 0, 0, 0, 1, 1, 2, 2, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-07', '', 1, 0, 0, 0, 1, 1, 2, 2, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-08', '', 1, 0, 0, 0, 1, 1, 2, 2, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-09', '', 1, 0, 0, 0, 1, 1, 2, 2, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-10', '', 1, 0, 0, 0, 1, 1, 2, 2, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-11', '', 1, 0, 0, 0, 1, 1, 2, 2, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-02-12', '', 1, 0, 0, 0, 1, 1, 2, 2, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-01', '', 1, 0, 0, 0, 2, 2, 2, 3, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-02', '', 1, 1, 0, 0, 2, 2, 2, 3, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-03', '', 1, 0, 0, 0, 2, 2, 2, 3, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-04', '', 1, 0, 0, 0, 2, 2, 2, 3, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-05', '', 1, 0, 0, 0, 2, 2, 2, 3, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-06', '', 1, 0, 0, 0, 2, 2, 2, 3, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-07', '', 1, 0, 0, 0, 2, 2, 2, 3, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-08', '', 1, 0, 0, 0, 2, 2, 2, 3, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-09', '', 1, 0, 0, 0, 2, 2, 2, 3, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-10', '', 1, 0, 0, 0, 2, 2, 2, 3, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-11', '', 1, 0, 0, 0, 2, 2, 2, 3, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-03-12', '', 1, 0, 0, 0, 2, 2, 2, 3, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-01', '', 1, 0, 0, 0, 2, 2, 2, 4, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-02', '', 1, 1, 0, 0, 2, 2, 2, 4, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-03', '', 1, 0, 0, 0, 2, 2, 2, 4, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-04', '', 1, 0, 0, 0, 2, 2, 2, 4, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-05', '', 1, 0, 0, 0, 2, 2, 2, 4, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-06', '', 1, 0, 0, 0, 2, 2, 2, 4, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-07', '', 1, 0, 0, 0, 2, 2, 2, 4, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-08', '', 1, 0, 0, 0, 2, 2, 2, 4, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-09', '', 1, 0, 0, 0, 2, 2, 2, 4, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-10', '', 1, 0, 0, 0, 2, 2, 2, 4, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-11', '', 1, 0, 0, 0, 2, 2, 2, 4, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-04-12', '', 1, 0, 0, 0, 2, 2, 2, 4, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-01', '', 1, 0, 0, 0, 3, 3, 2, 5, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-02', '', 1, 1, 0, 0, 3, 3, 2, 5, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-03', '', 1, 0, 0, 0, 3, 3, 2, 5, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-04', '', 1, 0, 0, 0, 3, 3, 2, 5, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-05', '', 1, 0, 0, 0, 3, 3, 2, 5, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-06', '', 1, 0, 0, 0, 3, 3, 2, 5, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-07', '', 1, 0, 0, 0, 3, 3, 2, 5, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-08', '', 1, 0, 0, 0, 3, 3, 2, 5, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-09', '', 1, 0, 0, 0, 3, 3, 2, 5, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-10', '', 1, 0, 0, 0, 3, 3, 2, 5, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-11', '', 1, 0, 0, 0, 3, 3, 2, 5, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-05-12', '', 1, 0, 0, 0, 3, 3, 2, 5, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-01', '', 1, 0, 0, 0, 3, 3, 2, 6, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-02', '', 1, 1, 0, 0, 3, 3, 2, 6, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-03', '', 1, 0, 0, 0, 3, 3, 2, 6, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-04', '', 1, 0, 0, 0, 3, 3, 2, 6, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-05', '', 1, 0, 0, 0, 3, 3, 2, 6, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-06', '', 1, 0, 0, 0, 3, 3, 2, 6, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-07', '', 1, 0, 0, 0, 3, 3, 2, 6, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-08', '', 1, 0, 0, 0, 3, 3, 2, 6, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-09', '', 1, 0, 0, 0, 3, 3, 2, 6, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-10', '', 1, 0, 0, 0, 3, 3, 2, 6, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-11', '', 1, 0, 0, 0, 3, 3, 2, 6, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-06-12', '', 1, 0, 0, 0, 3, 3, 2, 6, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-01', '', 1, 0, 0, 0, 4, 4, 2, 7, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-02', '', 1, 1, 0, 0, 4, 4, 2, 7, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-03', '', 1, 0, 0, 0, 4, 4, 2, 7, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-04', '', 1, 0, 0, 0, 4, 4, 2, 7, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-05', '', 1, 0, 0, 0, 4, 4, 2, 7, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-06', '', 1, 0, 0, 0, 4, 4, 2, 7, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-07', '', 1, 0, 0, 0, 4, 4, 2, 7, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-08', '', 1, 0, 0, 0, 4, 4, 2, 7, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-09', '', 1, 0, 0, 0, 4, 4, 2, 7, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-10', '', 1, 0, 0, 0, 4, 4, 2, 7, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-11', '', 1, 0, 0, 0, 4, 4, 2, 7, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-07-12', '', 1, 0, 0, 0, 4, 4, 2, 7, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-01', '', 1, 0, 0, 0, 4, 4, 2, 8, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-02', '', 1, 1, 0, 0, 4, 4, 2, 8, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-03', '', 1, 0, 0, 0, 4, 4, 2, 8, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-04', '', 1, 0, 0, 0, 4, 4, 2, 8, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-05', '', 1, 0, 0, 0, 4, 4, 2, 8, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-06', '', 1, 0, 0, 0, 4, 4, 2, 8, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-07', '', 1, 0, 0, 0, 4, 4, 2, 8, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-08', '', 1, 0, 0, 0, 4, 4, 2, 8, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-09', '', 1, 0, 0, 0, 4, 4, 2, 8, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-10', '', 1, 0, 0, 0, 4, 4, 2, 8, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-11', '', 1, 0, 0, 0, 4, 4, 2, 8, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-08-12', '', 1, 0, 0, 0, 4, 4, 2, 8, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-01', '', 1, 0, 0, 0, 5, 5, 2, 9, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-02', '', 1, 1, 0, 0, 5, 5, 2, 9, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-03', '', 1, 0, 0, 0, 5, 5, 2, 9, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-04', '', 1, 0, 0, 0, 5, 5, 2, 9, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-05', '', 1, 0, 0, 0, 5, 5, 2, 9, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-06', '', 1, 0, 0, 0, 5, 5, 2, 9, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-07', '', 1, 0, 0, 0, 5, 5, 2, 9, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-08', '', 1, 0, 0, 0, 5, 5, 2, 9, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-09', '', 1, 0, 0, 0, 5, 5, 2, 9, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-10', '', 1, 0, 0, 0, 5, 5, 2, 9, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-11', '', 1, 0, 0, 0, 5, 5, 2, 9, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-09-12', '', 1, 0, 0, 0, 5, 5, 2, 9, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-01', '', 1, 0, 0, 0, 5, 5, 2, 10, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-02', '', 1, 1, 0, 0, 5, 5, 2, 10, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-03', '', 1, 0, 0, 0, 5, 5, 2, 10, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-04', '', 1, 0, 0, 0, 5, 5, 2, 10, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-05', '', 1, 0, 0, 0, 5, 5, 2, 10, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-06', '', 1, 0, 0, 0, 5, 5, 2, 10, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-07', '', 1, 0, 0, 0, 5, 5, 2, 10, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-08', '', 1, 0, 0, 0, 5, 5, 2, 10, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-09', '', 1, 0, 0, 0, 5, 5, 2, 10, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-10', '', 1, 0, 0, 0, 5, 5, 2, 10, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-11', '', 1, 0, 0, 0, 5, 5, 2, 10, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-10-12', '', 1, 0, 0, 0, 5, 5, 2, 10, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-01', '', 1, 0, 0, 0, 6, 6, 2, 11, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-02', '', 1, 1, 0, 0, 6, 6, 2, 11, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-03', '', 1, 0, 0, 0, 6, 6, 2, 11, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-04', '', 1, 0, 0, 0, 6, 6, 2, 11, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-05', '', 1, 0, 0, 0, 6, 6, 2, 11, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-06', '', 1, 0, 0, 0, 6, 6, 2, 11, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-07', '', 1, 0, 0, 0, 6, 6, 2, 11, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-08', '', 1, 0, 0, 0, 6, 6, 2, 11, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-09', '', 1, 0, 0, 0, 6, 6, 2, 11, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-10', '', 1, 0, 0, 0, 6, 6, 2, 11, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-11', '', 1, 0, 0, 0, 6, 6, 2, 11, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-11-12', '', 1, 0, 0, 0, 6, 6, 2, 11, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-01', '', 1, 0, 0, 0, 6, 6, 2, 12, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-02', '', 1, 1, 0, 0, 6, 6, 2, 12, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-03', '', 1, 0, 0, 0, 6, 6, 2, 12, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-04', '', 1, 0, 0, 0, 6, 6, 2, 12, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-05', '', 1, 0, 0, 0, 6, 6, 2, 12, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-06', '', 1, 0, 0, 0, 6, 6, 2, 12, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-07', '', 1, 0, 0, 0, 6, 6, 2, 12, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-08', '', 1, 0, 0, 0, 6, 6, 2, 12, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-09', '', 1, 0, 0, 0, 6, 6, 2, 12, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-10', '', 1, 0, 0, 0, 6, 6, 2, 12, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-11', '', 1, 0, 0, 0, 6, 6, 2, 12, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-12-12', '', 1, 0, 0, 0, 6, 6, 2, 12, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-01', '', 1, 0, 0, 0, 7, 7, 2, 13, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-02', '', 1, 1, 0, 0, 7, 7, 2, 13, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-03', '', 1, 0, 0, 0, 7, 7, 2, 13, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-04', '', 1, 0, 0, 0, 7, 7, 2, 13, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-05', '', 1, 0, 0, 0, 7, 7, 2, 13, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-06', '', 1, 0, 0, 0, 7, 7, 2, 13, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-07', '', 1, 0, 0, 0, 7, 7, 2, 13, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-08', '', 1, 0, 0, 0, 7, 7, 2, 13, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-09', '', 1, 0, 0, 0, 7, 7, 2, 13, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-10', '', 1, 0, 0, 0, 7, 7, 2, 13, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-11', '', 1, 0, 0, 0, 7, 7, 2, 13, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-13-12', '', 1, 0, 0, 0, 7, 7, 2, 13, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-01', '', 1, 0, 0, 0, 7, 7, 2, 14, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-02', '', 1, 1, 0, 0, 7, 7, 2, 14, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-03', '', 1, 0, 0, 0, 7, 7, 2, 14, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-04', '', 1, 0, 0, 0, 7, 7, 2, 14, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-05', '', 1, 0, 0, 0, 7, 7, 2, 14, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-06', '', 1, 0, 0, 0, 7, 7, 2, 14, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-07', '', 1, 0, 0, 0, 7, 7, 2, 14, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-08', '', 1, 0, 0, 0, 7, 7, 2, 14, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-09', '', 1, 0, 0, 0, 7, 7, 2, 14, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-10', '', 1, 0, 0, 0, 7, 7, 2, 14, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-11', '', 1, 0, 0, 0, 7, 7, 2, 14, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-14-12', '', 1, 0, 0, 0, 7, 7, 2, 14, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-01', '', 1, 0, 0, 0, 8, 8, 2, 15, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-02', '', 1, 1, 0, 0, 8, 8, 2, 15, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-03', '', 1, 0, 0, 0, 8, 8, 2, 15, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-04', '', 1, 0, 0, 0, 8, 8, 2, 15, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-05', '', 1, 0, 0, 0, 8, 8, 2, 15, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-06', '', 1, 0, 0, 0, 8, 8, 2, 15, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-07', '', 1, 0, 0, 0, 8, 8, 2, 15, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-08', '', 1, 0, 0, 0, 8, 8, 2, 15, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-09', '', 1, 0, 0, 0, 8, 8, 2, 15, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-10', '', 1, 0, 0, 0, 8, 8, 2, 15, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-11', '', 1, 0, 0, 0, 8, 8, 2, 15, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-15-12', '', 1, 0, 0, 0, 8, 8, 2, 15, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-01', '', 1, 0, 0, 0, 8, 8, 2, 16, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-02', '', 1, 1, 0, 0, 8, 8, 2, 16, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-03', '', 1, 0, 0, 0, 8, 8, 2, 16, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-04', '', 1, 0, 0, 0, 8, 8, 2, 16, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-05', '', 1, 0, 0, 0, 8, 8, 2, 16, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-06', '', 1, 0, 0, 0, 8, 8, 2, 16, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-07', '', 1, 0, 0, 0, 8, 8, 2, 16, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-08', '', 1, 0, 0, 0, 8, 8, 2, 16, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-09', '', 1, 0, 0, 0, 8, 8, 2, 16, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-10', '', 1, 0, 0, 0, 8, 8, 2, 16, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-11', '', 1, 0, 0, 0, 8, 8, 2, 16, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-16-12', '', 1, 0, 0, 0, 8, 8, 2, 16, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-01', '', 1, 0, 0, 0, 9, 9, 2, 17, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-02', '', 1, 1, 0, 0, 9, 9, 2, 17, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-03', '', 1, 0, 0, 0, 9, 9, 2, 17, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-04', '', 1, 0, 0, 0, 9, 9, 2, 17, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-05', '', 1, 0, 0, 0, 9, 9, 2, 17, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-06', '', 1, 0, 0, 0, 9, 9, 2, 17, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-07', '', 1, 0, 0, 0, 9, 9, 2, 17, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-08', '', 1, 0, 0, 0, 9, 9, 2, 17, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-09', '', 1, 0, 0, 0, 9, 9, 2, 17, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-10', '', 1, 0, 0, 0, 9, 9, 2, 17, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-11', '', 1, 0, 0, 0, 9, 9, 2, 17, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-17-12', '', 1, 0, 0, 0, 9, 9, 2, 17, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-01', '', 1, 0, 0, 0, 9, 9, 2, 18, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-02', '', 1, 1, 0, 0, 9, 9, 2, 18, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-03', '', 1, 0, 0, 0, 9, 9, 2, 18, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-04', '', 1, 0, 0, 0, 9, 9, 2, 18, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-05', '', 1, 0, 0, 0, 9, 9, 2, 18, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-06', '', 1, 0, 0, 0, 9, 9, 2, 18, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-07', '', 1, 0, 0, 0, 9, 9, 2, 18, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-08', '', 1, 0, 0, 0, 9, 9, 2, 18, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-09', '', 1, 0, 0, 0, 9, 9, 2, 18, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-10', '', 1, 0, 0, 0, 9, 9, 2, 18, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-11', '', 1, 0, 0, 0, 9, 9, 2, 18, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-18-12', '', 1, 0, 0, 0, 9, 9, 2, 18, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-01', '', 1, 0, 0, 0, 10, 10, 2, 19, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-02', '', 1, 1, 0, 0, 10, 10, 2, 19, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-03', '', 1, 0, 0, 0, 10, 10, 2, 19, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-04', '', 1, 0, 0, 0, 10, 10, 2, 19, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-05', '', 1, 0, 0, 0, 10, 10, 2, 19, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-06', '', 1, 0, 0, 0, 10, 10, 2, 19, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-07', '', 1, 0, 0, 0, 10, 10, 2, 19, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-08', '', 1, 0, 0, 0, 10, 10, 2, 19, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-09', '', 1, 0, 0, 0, 10, 10, 2, 19, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-10', '', 1, 0, 0, 0, 10, 10, 2, 19, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-11', '', 1, 0, 0, 0, 10, 10, 2, 19, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-19-12', '', 1, 0, 0, 0, 10, 10, 2, 19, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-01', '', 1, 0, 0, 0, 10, 10, 2, 20, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-02', '', 1, 1, 0, 0, 10, 10, 2, 20, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-03', '', 1, 0, 0, 0, 10, 10, 2, 20, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-04', '', 1, 0, 0, 0, 10, 10, 2, 20, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-05', '', 1, 0, 0, 0, 10, 10, 2, 20, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-06', '', 1, 0, 0, 0, 10, 10, 2, 20, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-07', '', 1, 0, 0, 0, 10, 10, 2, 20, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-08', '', 1, 0, 0, 0, 10, 10, 2, 20, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-09', '', 1, 0, 0, 0, 10, 10, 2, 20, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-10', '', 1, 0, 0, 0, 10, 10, 2, 20, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-11', '', 1, 0, 0, 0, 10, 10, 2, 20, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-20-12', '', 1, 0, 0, 0, 10, 10, 2, 20, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-01', '', 1, 0, 0, 0, 11, 11, 2, 21, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-02', '', 1, 1, 0, 0, 11, 11, 2, 21, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-03', '', 1, 0, 0, 0, 11, 11, 2, 21, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-04', '', 1, 0, 0, 0, 11, 11, 2, 21, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-05', '', 1, 0, 0, 0, 11, 11, 2, 21, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-06', '', 1, 0, 0, 0, 11, 11, 2, 21, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-07', '', 1, 0, 0, 0, 11, 11, 2, 21, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-08', '', 1, 0, 0, 0, 11, 11, 2, 21, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-09', '', 1, 0, 0, 0, 11, 11, 2, 21, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-10', '', 1, 0, 0, 0, 11, 11, 2, 21, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-11', '', 1, 0, 0, 0, 11, 11, 2, 21, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-21-12', '', 1, 0, 0, 0, 11, 11, 2, 21, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-01', '', 1, 0, 0, 0, 11, 11, 2, 22, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-02', '', 1, 1, 0, 0, 11, 11, 2, 22, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-03', '', 1, 0, 0, 0, 11, 11, 2, 22, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-04', '', 1, 0, 0, 0, 11, 11, 2, 22, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-05', '', 1, 0, 0, 0, 11, 11, 2, 22, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-06', '', 1, 0, 0, 0, 11, 11, 2, 22, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-07', '', 1, 0, 0, 0, 11, 11, 2, 22, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-08', '', 1, 0, 0, 0, 11, 11, 2, 22, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-09', '', 1, 0, 0, 0, 11, 11, 2, 22, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-10', '', 1, 0, 0, 0, 11, 11, 2, 22, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-11', '', 1, 0, 0, 0, 11, 11, 2, 22, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-22-12', '', 1, 0, 0, 0, 11, 11, 2, 22, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-01', '', 1, 0, 0, 0, 12, 12, 2, 23, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-02', '', 1, 1, 0, 0, 12, 12, 2, 23, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-03', '', 1, 0, 0, 0, 12, 12, 2, 23, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-04', '', 1, 0, 0, 0, 12, 12, 2, 23, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-05', '', 1, 0, 0, 0, 12, 12, 2, 23, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-06', '', 1, 0, 0, 0, 12, 12, 2, 23, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-07', '', 1, 0, 0, 0, 12, 12, 2, 23, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-08', '', 1, 0, 0, 0, 12, 12, 2, 23, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-09', '', 1, 0, 0, 0, 12, 12, 2, 23, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-10', '', 1, 0, 0, 0, 12, 12, 2, 23, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-11', '', 1, 0, 0, 0, 12, 12, 2, 23, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-23-12', '', 1, 0, 0, 0, 12, 12, 2, 23, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-01', '', 1, 0, 0, 0, 12, 12, 2, 24, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-02', '', 1, 1, 0, 0, 12, 12, 2, 24, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-03', '', 1, 0, 0, 0, 12, 12, 2, 24, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-04', '', 1, 0, 0, 0, 12, 12, 2, 24, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-05', '', 1, 0, 0, 0, 12, 12, 2, 24, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-06', '', 1, 0, 0, 0, 12, 12, 2, 24, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-07', '', 1, 0, 0, 0, 12, 12, 2, 24, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-08', '', 1, 0, 0, 0, 12, 12, 2, 24, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-09', '', 1, 0, 0, 0, 12, 12, 2, 24, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-10', '', 1, 0, 0, 0, 12, 12, 2, 24, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-11', '', 1, 0, 0, 0, 12, 12, 2, 24, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-24-12', '', 1, 0, 0, 0, 12, 12, 2, 24, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-01', '', 1, 0, 0, 0, 13, 13, 2, 25, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-02', '', 1, 1, 0, 0, 13, 13, 2, 25, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-03', '', 1, 0, 0, 0, 13, 13, 2, 25, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-04', '', 1, 0, 0, 0, 13, 13, 2, 25, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-05', '', 1, 0, 0, 0, 13, 13, 2, 25, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-06', '', 1, 0, 0, 0, 13, 13, 2, 25, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-07', '', 1, 0, 0, 0, 13, 13, 2, 25, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-08', '', 1, 0, 0, 0, 13, 13, 2, 25, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-09', '', 1, 0, 0, 0, 13, 13, 2, 25, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-10', '', 1, 0, 0, 0, 13, 13, 2, 25, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-11', '', 1, 0, 0, 0, 13, 13, 2, 25, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-25-12', '', 1, 0, 0, 0, 13, 13, 2, 25, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-01', '', 1, 0, 0, 0, 13, 13, 2, 26, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-02', '', 1, 1, 0, 0, 13, 13, 2, 26, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-03', '', 1, 0, 0, 0, 13, 13, 2, 26, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-04', '', 1, 0, 0, 0, 13, 13, 2, 26, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-05', '', 1, 0, 0, 0, 13, 13, 2, 26, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-06', '', 1, 0, 0, 0, 13, 13, 2, 26, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-07', '', 1, 0, 0, 0, 13, 13, 2, 26, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-08', '', 1, 0, 0, 0, 13, 13, 2, 26, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-09', '', 1, 0, 0, 0, 13, 13, 2, 26, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-10', '', 1, 0, 0, 0, 13, 13, 2, 26, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-11', '', 1, 0, 0, 0, 13, 13, 2, 26, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-26-12', '', 1, 0, 0, 0, 13, 13, 2, 26, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-01', '', 1, 0, 0, 0, 14, 14, 2, 27, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-02', '', 1, 1, 0, 0, 14, 14, 2, 27, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-03', '', 1, 0, 0, 0, 14, 14, 2, 27, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-04', '', 1, 0, 0, 0, 14, 14, 2, 27, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-05', '', 1, 0, 0, 0, 14, 14, 2, 27, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-06', '', 1, 0, 0, 0, 14, 14, 2, 27, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-07', '', 1, 0, 0, 0, 14, 14, 2, 27, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-08', '', 1, 0, 0, 0, 14, 14, 2, 27, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-09', '', 1, 0, 0, 0, 14, 14, 2, 27, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-10', '', 1, 0, 0, 0, 14, 14, 2, 27, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-11', '', 1, 0, 0, 0, 14, 14, 2, 27, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-27-12', '', 1, 0, 0, 0, 14, 14, 2, 27, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-01', '', 1, 0, 0, 0, 14, 14, 2, 28, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-02', '', 1, 1, 0, 0, 14, 14, 2, 28, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-03', '', 1, 0, 0, 0, 14, 14, 2, 28, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-04', '', 1, 0, 0, 0, 14, 14, 2, 28, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-05', '', 1, 0, 0, 0, 14, 14, 2, 28, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-06', '', 1, 0, 0, 0, 14, 14, 2, 28, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-07', '', 1, 0, 0, 0, 14, 14, 2, 28, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-08', '', 1, 0, 0, 0, 14, 14, 2, 28, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-09', '', 1, 0, 0, 0, 14, 14, 2, 28, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-10', '', 1, 0, 0, 0, 14, 14, 2, 28, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-11', '', 1, 0, 0, 0, 14, 14, 2, 28, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-28-12', '', 1, 0, 0, 0, 14, 14, 2, 28, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-01', '', 1, 0, 0, 0, 15, 15, 2, 29, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-02', '', 1, 1, 0, 0, 15, 15, 2, 29, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-03', '', 1, 0, 0, 0, 15, 15, 2, 29, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-04', '', 1, 0, 0, 0, 15, 15, 2, 29, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-05', '', 1, 0, 0, 0, 15, 15, 2, 29, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-06', '', 1, 0, 0, 0, 15, 15, 2, 29, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-07', '', 1, 0, 0, 0, 15, 15, 2, 29, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-08', '', 1, 0, 0, 0, 15, 15, 2, 29, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-09', '', 1, 0, 0, 0, 15, 15, 2, 29, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-10', '', 1, 0, 0, 0, 15, 15, 2, 29, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-11', '', 1, 0, 0, 0, 15, 15, 2, 29, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-29-12', '', 1, 0, 0, 0, 15, 15, 2, 29, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-01', '', 1, 0, 0, 0, 15, 15, 2, 30, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-02', '', 1, 1, 0, 0, 15, 15, 2, 30, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-03', '', 1, 0, 0, 0, 15, 15, 2, 30, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-04', '', 1, 0, 0, 0, 15, 15, 2, 30, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-05', '', 1, 0, 0, 0, 15, 15, 2, 30, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-06', '', 1, 0, 0, 0, 15, 15, 2, 30, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-07', '', 1, 0, 0, 0, 15, 15, 2, 30, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-08', '', 1, 0, 0, 0, 15, 15, 2, 30, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-09', '', 1, 0, 0, 0, 15, 15, 2, 30, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-10', '', 1, 0, 0, 0, 15, 15, 2, 30, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-11', '', 1, 0, 0, 0, 15, 15, 2, 30, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-30-12', '', 1, 0, 0, 0, 15, 15, 2, 30, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-01', '', 1, 0, 0, 0, 16, 16, 2, 31, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-02', '', 1, 1, 0, 0, 16, 16, 2, 31, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-03', '', 1, 0, 0, 0, 16, 16, 2, 31, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-04', '', 1, 0, 0, 0, 16, 16, 2, 31, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-05', '', 1, 0, 0, 0, 16, 16, 2, 31, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-06', '', 1, 0, 0, 0, 16, 16, 2, 31, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-07', '', 1, 0, 0, 0, 16, 16, 2, 31, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-08', '', 1, 0, 0, 0, 16, 16, 2, 31, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-09', '', 1, 0, 0, 0, 16, 16, 2, 31, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-10', '', 1, 0, 0, 0, 16, 16, 2, 31, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-11', '', 1, 0, 0, 0, 16, 16, 2, 31, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-31-12', '', 1, 0, 0, 0, 16, 16, 2, 31, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-01', '', 1, 0, 0, 0, 16, 16, 2, 32, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-02', '', 1, 1, 0, 0, 16, 16, 2, 32, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-03', '', 1, 0, 0, 0, 16, 16, 2, 32, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-04', '', 1, 0, 0, 0, 16, 16, 2, 32, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-05', '', 1, 0, 0, 0, 16, 16, 2, 32, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-06', '', 1, 0, 0, 0, 16, 16, 2, 32, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-07', '', 1, 0, 0, 0, 16, 16, 2, 32, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-08', '', 1, 0, 0, 0, 16, 16, 2, 32, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-09', '', 1, 0, 0, 0, 16, 16, 2, 32, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-10', '', 1, 0, 0, 0, 16, 16, 2, 32, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-11', '', 1, 0, 0, 0, 16, 16, 2, 32, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-32-12', '', 1, 0, 0, 0, 16, 16, 2, 32, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-01', '', 1, 0, 0, 0, 17, 17, 2, 33, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-02', '', 1, 1, 0, 0, 17, 17, 2, 33, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-03', '', 1, 0, 0, 0, 17, 17, 2, 33, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-04', '', 1, 0, 0, 0, 17, 17, 2, 33, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-05', '', 1, 0, 0, 0, 17, 17, 2, 33, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-06', '', 1, 0, 0, 0, 17, 17, 2, 33, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-07', '', 1, 0, 0, 0, 17, 17, 2, 33, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-08', '', 1, 0, 0, 0, 17, 17, 2, 33, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-09', '', 1, 0, 0, 0, 17, 17, 2, 33, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-10', '', 1, 0, 0, 0, 17, 17, 2, 33, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-11', '', 1, 0, 0, 0, 17, 17, 2, 33, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-33-12', '', 1, 0, 0, 0, 17, 17, 2, 33, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-01', '', 1, 0, 0, 0, 17, 17, 2, 34, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-02', '', 1, 1, 0, 0, 17, 17, 2, 34, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-03', '', 1, 0, 0, 0, 17, 17, 2, 34, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-04', '', 1, 0, 0, 0, 17, 17, 2, 34, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-05', '', 1, 0, 0, 0, 17, 17, 2, 34, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-06', '', 1, 0, 0, 0, 17, 17, 2, 34, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-07', '', 1, 0, 0, 0, 17, 17, 2, 34, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-08', '', 1, 0, 0, 0, 17, 17, 2, 34, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-09', '', 1, 0, 0, 0, 17, 17, 2, 34, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-10', '', 1, 0, 0, 0, 17, 17, 2, 34, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-11', '', 1, 0, 0, 0, 17, 17, 2, 34, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-34-12', '', 1, 0, 0, 0, 17, 17, 2, 34, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-01', '', 1, 0, 0, 0, 18, 18, 2, 35, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-02', '', 1, 1, 0, 0, 18, 18, 2, 35, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-03', '', 1, 0, 0, 0, 18, 18, 2, 35, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-04', '', 1, 0, 0, 0, 18, 18, 2, 35, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-05', '', 1, 0, 0, 0, 18, 18, 2, 35, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-06', '', 1, 0, 0, 0, 18, 18, 2, 35, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-07', '', 1, 0, 0, 0, 18, 18, 2, 35, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-08', '', 1, 0, 0, 0, 18, 18, 2, 35, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-09', '', 1, 0, 0, 0, 18, 18, 2, 35, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-10', '', 1, 0, 0, 0, 18, 18, 2, 35, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-11', '', 1, 0, 0, 0, 18, 18, 2, 35, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-35-12', '', 1, 0, 0, 0, 18, 18, 2, 35, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-01', '', 1, 0, 0, 0, 18, 18, 2, 36, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-02', '', 1, 1, 0, 0, 18, 18, 2, 36, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-03', '', 1, 0, 0, 0, 18, 18, 2, 36, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-04', '', 1, 0, 0, 0, 18, 18, 2, 36, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-05', '', 1, 0, 0, 0, 18, 18, 2, 36, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-06', '', 1, 0, 0, 0, 18, 18, 2, 36, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-07', '', 1, 0, 0, 0, 18, 18, 2, 36, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-08', '', 1, 0, 0, 0, 18, 18, 2, 36, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-09', '', 1, 0, 0, 0, 18, 18, 2, 36, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-10', '', 1, 0, 0, 0, 18, 18, 2, 36, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-11', '', 1, 0, 0, 0, 18, 18, 2, 36, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-36-12', '', 1, 0, 0, 0, 18, 18, 2, 36, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-01', '', 1, 0, 0, 0, 19, 19, 2, 37, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-02', '', 1, 1, 0, 0, 19, 19, 2, 37, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-03', '', 1, 0, 0, 0, 19, 19, 2, 37, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-04', '', 1, 0, 0, 0, 19, 19, 2, 37, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-05', '', 1, 0, 0, 0, 19, 19, 2, 37, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-06', '', 1, 0, 0, 0, 19, 19, 2, 37, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-07', '', 1, 0, 0, 0, 19, 19, 2, 37, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-08', '', 1, 0, 0, 0, 19, 19, 2, 37, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-09', '', 1, 0, 0, 0, 19, 19, 2, 37, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-10', '', 1, 0, 0, 0, 19, 19, 2, 37, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-11', '', 1, 0, 0, 0, 19, 19, 2, 37, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-37-12', '', 1, 0, 0, 0, 19, 19, 2, 37, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-01', '', 1, 0, 0, 0, 19, 19, 2, 38, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-02', '', 1, 1, 0, 0, 19, 19, 2, 38, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-03', '', 1, 0, 0, 0, 19, 19, 2, 38, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-04', '', 1, 0, 0, 0, 19, 19, 2, 38, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-05', '', 1, 0, 0, 0, 19, 19, 2, 38, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-06', '', 1, 0, 0, 0, 19, 19, 2, 38, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-07', '', 1, 0, 0, 0, 19, 19, 2, 38, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-08', '', 1, 0, 0, 0, 19, 19, 2, 38, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-09', '', 1, 0, 0, 0, 19, 19, 2, 38, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-10', '', 1, 0, 0, 0, 19, 19, 2, 38, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-11', '', 1, 0, 0, 0, 19, 19, 2, 38, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-38-12', '', 1, 0, 0, 0, 19, 19, 2, 38, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-01', '', 1, 0, 0, 0, 20, 20, 2, 39, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-02', '', 1, 1, 0, 0, 20, 20, 2, 39, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-03', '', 1, 0, 0, 0, 20, 20, 2, 39, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-04', '', 1, 0, 0, 0, 20, 20, 2, 39, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-05', '', 1, 0, 0, 0, 20, 20, 2, 39, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-06', '', 1, 0, 0, 0, 20, 20, 2, 39, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-07', '', 1, 0, 0, 0, 20, 20, 2, 39, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-08', '', 1, 0, 0, 0, 20, 20, 2, 39, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-09', '', 1, 0, 0, 0, 20, 20, 2, 39, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-10', '', 1, 0, 0, 0, 20, 20, 2, 39, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-11', '', 1, 0, 0, 0, 20, 20, 2, 39, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-39-12', '', 1, 0, 0, 0, 20, 20, 2, 39, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-01', '', 1, 0, 0, 0, 20, 20, 2, 40, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-02', '', 1, 1, 0, 0, 20, 20, 2, 40, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-03', '', 1, 0, 0, 0, 20, 20, 2, 40, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-04', '', 1, 0, 0, 0, 20, 20, 2, 40, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-05', '', 1, 0, 0, 0, 20, 20, 2, 40, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-06', '', 1, 0, 0, 0, 20, 20, 2, 40, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-07', '', 1, 0, 0, 0, 20, 20, 2, 40, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-08', '', 1, 0, 0, 0, 20, 20, 2, 40, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-09', '', 1, 0, 0, 0, 20, 20, 2, 40, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-10', '', 1, 0, 0, 0, 20, 20, 2, 40, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-11', '', 1, 0, 0, 0, 20, 20, 2, 40, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-40-12', '', 1, 0, 0, 0, 20, 20, 2, 40, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-01', '', 1, 0, 0, 0, 21, 21, 2, 41, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-02', '', 1, 1, 0, 0, 21, 21, 2, 41, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-03', '', 1, 0, 0, 0, 21, 21, 2, 41, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-04', '', 1, 0, 0, 0, 21, 21, 2, 41, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-05', '', 1, 0, 0, 0, 21, 21, 2, 41, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-06', '', 1, 0, 0, 0, 21, 21, 2, 41, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-07', '', 1, 0, 0, 0, 21, 21, 2, 41, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-08', '', 1, 0, 0, 0, 21, 21, 2, 41, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-09', '', 1, 0, 0, 0, 21, 21, 2, 41, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-10', '', 1, 0, 0, 0, 21, 21, 2, 41, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-11', '', 1, 0, 0, 0, 21, 21, 2, 41, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-41-12', '', 1, 0, 0, 0, 21, 21, 2, 41, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-01', '', 1, 0, 0, 0, 21, 21, 2, 42, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-02', '', 1, 1, 0, 0, 21, 21, 2, 42, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-03', '', 1, 0, 0, 0, 21, 21, 2, 42, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-04', '', 1, 0, 0, 0, 21, 21, 2, 42, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-05', '', 1, 0, 0, 0, 21, 21, 2, 42, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-06', '', 1, 0, 0, 0, 21, 21, 2, 42, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-07', '', 1, 0, 0, 0, 21, 21, 2, 42, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-08', '', 1, 0, 0, 0, 21, 21, 2, 42, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-09', '', 1, 0, 0, 0, 21, 21, 2, 42, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-10', '', 1, 0, 0, 0, 21, 21, 2, 42, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-11', '', 1, 0, 0, 0, 21, 21, 2, 42, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A02-42-12', '', 1, 0, 0, 0, 21, 21, 2, 42, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-01', '', 1, 0, 0, 0, 1, 1, 3, 1, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-02', '', 1, 1, 0, 0, 1, 1, 3, 1, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-03', '', 1, 0, 0, 0, 1, 1, 3, 1, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-04', '', 1, 0, 0, 0, 1, 1, 3, 1, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-05', '', 1, 0, 0, 0, 1, 1, 3, 1, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-06', '', 1, 0, 0, 0, 1, 1, 3, 1, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-07', '', 1, 0, 0, 0, 1, 1, 3, 1, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-08', '', 1, 0, 0, 0, 1, 1, 3, 1, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-09', '', 1, 0, 0, 0, 1, 1, 3, 1, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-10', '', 1, 0, 0, 0, 1, 1, 3, 1, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-11', '', 1, 0, 0, 0, 1, 1, 3, 1, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-01-12', '', 1, 0, 0, 0, 1, 1, 3, 1, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-01', '', 1, 0, 0, 0, 1, 1, 3, 2, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-02', '', 1, 1, 0, 0, 1, 1, 3, 2, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-03', '', 1, 0, 0, 0, 1, 1, 3, 2, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-04', '', 1, 0, 0, 0, 1, 1, 3, 2, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-05', '', 1, 0, 0, 0, 1, 1, 3, 2, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-06', '', 1, 0, 0, 0, 1, 1, 3, 2, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-07', '', 1, 0, 0, 0, 1, 1, 3, 2, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-08', '', 1, 0, 0, 0, 1, 1, 3, 2, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-09', '', 1, 0, 0, 0, 1, 1, 3, 2, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-10', '', 1, 0, 0, 0, 1, 1, 3, 2, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-11', '', 1, 0, 0, 0, 1, 1, 3, 2, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-02-12', '', 1, 0, 0, 0, 1, 1, 3, 2, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-01', '', 1, 0, 0, 0, 2, 2, 3, 3, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-02', '', 1, 1, 0, 0, 2, 2, 3, 3, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-03', '', 1, 0, 0, 0, 2, 2, 3, 3, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-04', '', 1, 0, 0, 0, 2, 2, 3, 3, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-05', '', 1, 0, 0, 0, 2, 2, 3, 3, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-06', '', 1, 0, 0, 0, 2, 2, 3, 3, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-07', '', 1, 0, 0, 0, 2, 2, 3, 3, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-08', '', 1, 0, 0, 0, 2, 2, 3, 3, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-09', '', 1, 0, 0, 0, 2, 2, 3, 3, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-10', '', 1, 0, 0, 0, 2, 2, 3, 3, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-11', '', 1, 0, 0, 0, 2, 2, 3, 3, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-03-12', '', 1, 0, 0, 0, 2, 2, 3, 3, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-01', '', 1, 0, 0, 0, 2, 2, 3, 4, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-02', '', 1, 1, 0, 0, 2, 2, 3, 4, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-03', '', 1, 0, 0, 0, 2, 2, 3, 4, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-04', '', 1, 0, 0, 0, 2, 2, 3, 4, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-05', '', 1, 0, 0, 0, 2, 2, 3, 4, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-06', '', 1, 0, 0, 0, 2, 2, 3, 4, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-07', '', 1, 0, 0, 0, 2, 2, 3, 4, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-08', '', 1, 0, 0, 0, 2, 2, 3, 4, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-09', '', 1, 0, 0, 0, 2, 2, 3, 4, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-10', '', 1, 0, 0, 0, 2, 2, 3, 4, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-11', '', 1, 0, 0, 0, 2, 2, 3, 4, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-04-12', '', 1, 0, 0, 0, 2, 2, 3, 4, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-01', '', 1, 0, 0, 0, 3, 3, 3, 5, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-02', '', 1, 1, 0, 0, 3, 3, 3, 5, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-03', '', 1, 0, 0, 0, 3, 3, 3, 5, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-04', '', 1, 0, 0, 0, 3, 3, 3, 5, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-05', '', 1, 0, 0, 0, 3, 3, 3, 5, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-06', '', 1, 0, 0, 0, 3, 3, 3, 5, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-07', '', 1, 0, 0, 0, 3, 3, 3, 5, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-08', '', 1, 0, 0, 0, 3, 3, 3, 5, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-09', '', 1, 0, 0, 0, 3, 3, 3, 5, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-10', '', 1, 0, 0, 0, 3, 3, 3, 5, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-11', '', 1, 0, 0, 0, 3, 3, 3, 5, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-05-12', '', 1, 0, 0, 0, 3, 3, 3, 5, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-01', '', 1, 0, 0, 0, 3, 3, 3, 6, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-02', '', 1, 1, 0, 0, 3, 3, 3, 6, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-03', '', 1, 0, 0, 0, 3, 3, 3, 6, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-04', '', 1, 0, 0, 0, 3, 3, 3, 6, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-05', '', 1, 0, 0, 0, 3, 3, 3, 6, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-06', '', 1, 0, 0, 0, 3, 3, 3, 6, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-07', '', 1, 0, 0, 0, 3, 3, 3, 6, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-08', '', 1, 0, 0, 0, 3, 3, 3, 6, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-09', '', 1, 0, 0, 0, 3, 3, 3, 6, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-10', '', 1, 0, 0, 0, 3, 3, 3, 6, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-11', '', 1, 0, 0, 0, 3, 3, 3, 6, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-06-12', '', 1, 0, 0, 0, 3, 3, 3, 6, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-01', '', 1, 0, 0, 0, 4, 4, 3, 7, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-02', '', 1, 1, 0, 0, 4, 4, 3, 7, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-03', '', 1, 0, 0, 0, 4, 4, 3, 7, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-04', '', 1, 0, 0, 0, 4, 4, 3, 7, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-05', '', 1, 0, 0, 0, 4, 4, 3, 7, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-06', '', 1, 0, 0, 0, 4, 4, 3, 7, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-07', '', 1, 0, 0, 0, 4, 4, 3, 7, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-08', '', 1, 0, 0, 0, 4, 4, 3, 7, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-09', '', 1, 0, 0, 0, 4, 4, 3, 7, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-10', '', 1, 0, 0, 0, 4, 4, 3, 7, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-11', '', 1, 0, 0, 0, 4, 4, 3, 7, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-07-12', '', 1, 0, 0, 0, 4, 4, 3, 7, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-01', '', 1, 0, 0, 0, 4, 4, 3, 8, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-02', '', 1, 1, 0, 0, 4, 4, 3, 8, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-03', '', 1, 0, 0, 0, 4, 4, 3, 8, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-04', '', 1, 0, 0, 0, 4, 4, 3, 8, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-05', '', 1, 0, 0, 0, 4, 4, 3, 8, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-06', '', 1, 0, 0, 0, 4, 4, 3, 8, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-07', '', 1, 0, 0, 0, 4, 4, 3, 8, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-08', '', 1, 0, 0, 0, 4, 4, 3, 8, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-09', '', 1, 0, 0, 0, 4, 4, 3, 8, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-10', '', 1, 0, 0, 0, 4, 4, 3, 8, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-11', '', 1, 0, 0, 0, 4, 4, 3, 8, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-08-12', '', 1, 0, 0, 0, 4, 4, 3, 8, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-01', '', 1, 0, 0, 0, 5, 5, 3, 9, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-02', '', 1, 1, 0, 0, 5, 5, 3, 9, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-03', '', 1, 0, 0, 0, 5, 5, 3, 9, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-04', '', 1, 0, 0, 0, 5, 5, 3, 9, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-05', '', 1, 0, 0, 0, 5, 5, 3, 9, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-06', '', 1, 0, 0, 0, 5, 5, 3, 9, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-07', '', 1, 0, 0, 0, 5, 5, 3, 9, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-08', '', 1, 0, 0, 0, 5, 5, 3, 9, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-09', '', 1, 0, 0, 0, 5, 5, 3, 9, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-10', '', 1, 0, 0, 0, 5, 5, 3, 9, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-11', '', 1, 0, 0, 0, 5, 5, 3, 9, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-09-12', '', 1, 0, 0, 0, 5, 5, 3, 9, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-01', '', 1, 0, 0, 0, 5, 5, 3, 10, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-02', '', 1, 1, 0, 0, 5, 5, 3, 10, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-03', '', 1, 0, 0, 0, 5, 5, 3, 10, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-04', '', 1, 0, 0, 0, 5, 5, 3, 10, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-05', '', 1, 0, 0, 0, 5, 5, 3, 10, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-06', '', 1, 0, 0, 0, 5, 5, 3, 10, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-07', '', 1, 0, 0, 0, 5, 5, 3, 10, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-08', '', 1, 0, 0, 0, 5, 5, 3, 10, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-09', '', 1, 0, 0, 0, 5, 5, 3, 10, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-10', '', 1, 0, 0, 0, 5, 5, 3, 10, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-11', '', 1, 0, 0, 0, 5, 5, 3, 10, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-10-12', '', 1, 0, 0, 0, 5, 5, 3, 10, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-01', '', 1, 0, 0, 0, 6, 6, 3, 11, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-02', '', 1, 1, 0, 0, 6, 6, 3, 11, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-03', '', 1, 0, 0, 0, 6, 6, 3, 11, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-04', '', 1, 0, 0, 0, 6, 6, 3, 11, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-05', '', 1, 0, 0, 0, 6, 6, 3, 11, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-06', '', 1, 0, 0, 0, 6, 6, 3, 11, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-07', '', 1, 0, 0, 0, 6, 6, 3, 11, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-08', '', 1, 0, 0, 0, 6, 6, 3, 11, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-09', '', 1, 0, 0, 0, 6, 6, 3, 11, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-10', '', 1, 0, 0, 0, 6, 6, 3, 11, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-11', '', 1, 0, 0, 0, 6, 6, 3, 11, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-11-12', '', 1, 0, 0, 0, 6, 6, 3, 11, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-01', '', 1, 0, 0, 0, 6, 6, 3, 12, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-02', '', 1, 1, 0, 0, 6, 6, 3, 12, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-03', '', 1, 0, 0, 0, 6, 6, 3, 12, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-04', '', 1, 0, 0, 0, 6, 6, 3, 12, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-05', '', 1, 0, 0, 0, 6, 6, 3, 12, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-06', '', 1, 0, 0, 0, 6, 6, 3, 12, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-07', '', 1, 0, 0, 0, 6, 6, 3, 12, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-08', '', 1, 0, 0, 0, 6, 6, 3, 12, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-09', '', 1, 0, 0, 0, 6, 6, 3, 12, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-10', '', 1, 0, 0, 0, 6, 6, 3, 12, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-11', '', 1, 0, 0, 0, 6, 6, 3, 12, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-12-12', '', 1, 0, 0, 0, 6, 6, 3, 12, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-01', '', 1, 0, 0, 0, 7, 7, 3, 13, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-02', '', 1, 1, 0, 0, 7, 7, 3, 13, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-03', '', 1, 0, 0, 0, 7, 7, 3, 13, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-04', '', 1, 0, 0, 0, 7, 7, 3, 13, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-05', '', 1, 0, 0, 0, 7, 7, 3, 13, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-06', '', 1, 0, 0, 0, 7, 7, 3, 13, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-07', '', 1, 0, 0, 0, 7, 7, 3, 13, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-08', '', 1, 0, 0, 0, 7, 7, 3, 13, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-09', '', 1, 0, 0, 0, 7, 7, 3, 13, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-10', '', 1, 0, 0, 0, 7, 7, 3, 13, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-11', '', 1, 0, 0, 0, 7, 7, 3, 13, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-13-12', '', 1, 0, 0, 0, 7, 7, 3, 13, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-01', '', 1, 0, 0, 0, 7, 7, 3, 14, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-02', '', 1, 1, 0, 0, 7, 7, 3, 14, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-03', '', 1, 0, 0, 0, 7, 7, 3, 14, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-04', '', 1, 0, 0, 0, 7, 7, 3, 14, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-05', '', 1, 0, 0, 0, 7, 7, 3, 14, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-06', '', 1, 0, 0, 0, 7, 7, 3, 14, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-07', '', 1, 0, 0, 0, 7, 7, 3, 14, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-08', '', 1, 0, 0, 0, 7, 7, 3, 14, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-09', '', 1, 0, 0, 0, 7, 7, 3, 14, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-10', '', 1, 0, 0, 0, 7, 7, 3, 14, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-11', '', 1, 0, 0, 0, 7, 7, 3, 14, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-14-12', '', 1, 0, 0, 0, 7, 7, 3, 14, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-01', '', 1, 0, 0, 0, 8, 8, 3, 15, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-02', '', 1, 1, 0, 0, 8, 8, 3, 15, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-03', '', 1, 0, 0, 0, 8, 8, 3, 15, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-04', '', 1, 0, 0, 0, 8, 8, 3, 15, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-05', '', 1, 0, 0, 0, 8, 8, 3, 15, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-06', '', 1, 0, 0, 0, 8, 8, 3, 15, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-07', '', 1, 0, 0, 0, 8, 8, 3, 15, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-08', '', 1, 0, 0, 0, 8, 8, 3, 15, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-09', '', 1, 0, 0, 0, 8, 8, 3, 15, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-10', '', 1, 0, 0, 0, 8, 8, 3, 15, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-11', '', 1, 0, 0, 0, 8, 8, 3, 15, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-15-12', '', 1, 0, 0, 0, 8, 8, 3, 15, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-01', '', 1, 0, 0, 0, 8, 8, 3, 16, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-02', '', 1, 1, 0, 0, 8, 8, 3, 16, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-03', '', 1, 0, 0, 0, 8, 8, 3, 16, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-04', '', 1, 0, 0, 0, 8, 8, 3, 16, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-05', '', 1, 0, 0, 0, 8, 8, 3, 16, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-06', '', 1, 0, 0, 0, 8, 8, 3, 16, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-07', '', 1, 0, 0, 0, 8, 8, 3, 16, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-08', '', 1, 0, 0, 0, 8, 8, 3, 16, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-09', '', 1, 0, 0, 0, 8, 8, 3, 16, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-10', '', 1, 0, 0, 0, 8, 8, 3, 16, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-11', '', 1, 0, 0, 0, 8, 8, 3, 16, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-16-12', '', 1, 0, 0, 0, 8, 8, 3, 16, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-01', '', 1, 0, 0, 0, 9, 9, 3, 17, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-02', '', 1, 1, 0, 0, 9, 9, 3, 17, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-03', '', 1, 0, 0, 0, 9, 9, 3, 17, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-04', '', 1, 0, 0, 0, 9, 9, 3, 17, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-05', '', 1, 0, 0, 0, 9, 9, 3, 17, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-06', '', 1, 0, 0, 0, 9, 9, 3, 17, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-07', '', 1, 0, 0, 0, 9, 9, 3, 17, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-08', '', 1, 0, 0, 0, 9, 9, 3, 17, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-09', '', 1, 0, 0, 0, 9, 9, 3, 17, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-10', '', 1, 0, 0, 0, 9, 9, 3, 17, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-11', '', 1, 0, 0, 0, 9, 9, 3, 17, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-17-12', '', 1, 0, 0, 0, 9, 9, 3, 17, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-01', '', 1, 0, 0, 0, 9, 9, 3, 18, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-02', '', 1, 1, 0, 0, 9, 9, 3, 18, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-03', '', 1, 0, 0, 0, 9, 9, 3, 18, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-04', '', 1, 0, 0, 0, 9, 9, 3, 18, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-05', '', 1, 0, 0, 0, 9, 9, 3, 18, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-06', '', 1, 0, 0, 0, 9, 9, 3, 18, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-07', '', 1, 0, 0, 0, 9, 9, 3, 18, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-08', '', 1, 0, 0, 0, 9, 9, 3, 18, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-09', '', 1, 0, 0, 0, 9, 9, 3, 18, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-10', '', 1, 0, 0, 0, 9, 9, 3, 18, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-11', '', 1, 0, 0, 0, 9, 9, 3, 18, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-18-12', '', 1, 0, 0, 0, 9, 9, 3, 18, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-01', '', 1, 0, 0, 0, 10, 10, 3, 19, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-02', '', 1, 1, 0, 0, 10, 10, 3, 19, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-03', '', 1, 0, 0, 0, 10, 10, 3, 19, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-04', '', 1, 0, 0, 0, 10, 10, 3, 19, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-05', '', 1, 0, 0, 0, 10, 10, 3, 19, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-06', '', 1, 0, 0, 0, 10, 10, 3, 19, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-07', '', 1, 0, 0, 0, 10, 10, 3, 19, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-08', '', 1, 0, 0, 0, 10, 10, 3, 19, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-09', '', 1, 0, 0, 0, 10, 10, 3, 19, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-10', '', 1, 0, 0, 0, 10, 10, 3, 19, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-11', '', 1, 0, 0, 0, 10, 10, 3, 19, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-19-12', '', 1, 0, 0, 0, 10, 10, 3, 19, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-01', '', 1, 0, 0, 0, 10, 10, 3, 20, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-02', '', 1, 1, 0, 0, 10, 10, 3, 20, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-03', '', 1, 0, 0, 0, 10, 10, 3, 20, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-04', '', 1, 0, 0, 0, 10, 10, 3, 20, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-05', '', 1, 0, 0, 0, 10, 10, 3, 20, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-06', '', 1, 0, 0, 0, 10, 10, 3, 20, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-07', '', 1, 0, 0, 0, 10, 10, 3, 20, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-08', '', 1, 0, 0, 0, 10, 10, 3, 20, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-09', '', 1, 0, 0, 0, 10, 10, 3, 20, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-10', '', 1, 0, 0, 0, 10, 10, 3, 20, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-11', '', 1, 0, 0, 0, 10, 10, 3, 20, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-20-12', '', 1, 0, 0, 0, 10, 10, 3, 20, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-01', '', 1, 0, 0, 0, 11, 11, 3, 21, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-02', '', 1, 1, 0, 0, 11, 11, 3, 21, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-03', '', 1, 0, 0, 0, 11, 11, 3, 21, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-04', '', 1, 0, 0, 0, 11, 11, 3, 21, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-05', '', 1, 0, 0, 0, 11, 11, 3, 21, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-06', '', 1, 0, 0, 0, 11, 11, 3, 21, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-07', '', 1, 0, 0, 0, 11, 11, 3, 21, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-08', '', 1, 0, 0, 0, 11, 11, 3, 21, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-09', '', 1, 0, 0, 0, 11, 11, 3, 21, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-10', '', 1, 0, 0, 0, 11, 11, 3, 21, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-11', '', 1, 0, 0, 0, 11, 11, 3, 21, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-21-12', '', 1, 0, 0, 0, 11, 11, 3, 21, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-01', '', 1, 0, 0, 0, 11, 11, 3, 22, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-02', '', 1, 1, 0, 0, 11, 11, 3, 22, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-03', '', 1, 0, 0, 0, 11, 11, 3, 22, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-04', '', 1, 0, 0, 0, 11, 11, 3, 22, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-05', '', 1, 0, 0, 0, 11, 11, 3, 22, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-06', '', 1, 0, 0, 0, 11, 11, 3, 22, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-07', '', 1, 0, 0, 0, 11, 11, 3, 22, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-08', '', 1, 0, 0, 0, 11, 11, 3, 22, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-09', '', 1, 0, 0, 0, 11, 11, 3, 22, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-10', '', 1, 0, 0, 0, 11, 11, 3, 22, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-11', '', 1, 0, 0, 0, 11, 11, 3, 22, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-22-12', '', 1, 0, 0, 0, 11, 11, 3, 22, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-01', '', 1, 0, 0, 0, 12, 12, 3, 23, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-02', '', 1, 1, 0, 0, 12, 12, 3, 23, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-03', '', 1, 0, 0, 0, 12, 12, 3, 23, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-04', '', 1, 0, 0, 0, 12, 12, 3, 23, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-05', '', 1, 0, 0, 0, 12, 12, 3, 23, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-06', '', 1, 0, 0, 0, 12, 12, 3, 23, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-07', '', 1, 0, 0, 0, 12, 12, 3, 23, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-08', '', 1, 0, 0, 0, 12, 12, 3, 23, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-09', '', 1, 0, 0, 0, 12, 12, 3, 23, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-10', '', 1, 0, 0, 0, 12, 12, 3, 23, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-11', '', 1, 0, 0, 0, 12, 12, 3, 23, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-23-12', '', 1, 0, 0, 0, 12, 12, 3, 23, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-01', '', 1, 0, 0, 0, 12, 12, 3, 24, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-02', '', 1, 1, 0, 0, 12, 12, 3, 24, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-03', '', 1, 0, 0, 0, 12, 12, 3, 24, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-04', '', 1, 0, 0, 0, 12, 12, 3, 24, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-05', '', 1, 0, 0, 0, 12, 12, 3, 24, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-06', '', 1, 0, 0, 0, 12, 12, 3, 24, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-07', '', 1, 0, 0, 0, 12, 12, 3, 24, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-08', '', 1, 0, 0, 0, 12, 12, 3, 24, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-09', '', 1, 0, 0, 0, 12, 12, 3, 24, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-10', '', 1, 0, 0, 0, 12, 12, 3, 24, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-11', '', 1, 0, 0, 0, 12, 12, 3, 24, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-24-12', '', 1, 0, 0, 0, 12, 12, 3, 24, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-01', '', 1, 0, 0, 0, 13, 13, 3, 25, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-02', '', 1, 1, 0, 0, 13, 13, 3, 25, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-03', '', 1, 0, 0, 0, 13, 13, 3, 25, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-04', '', 1, 0, 0, 0, 13, 13, 3, 25, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-05', '', 1, 0, 0, 0, 13, 13, 3, 25, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-06', '', 1, 0, 0, 0, 13, 13, 3, 25, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-07', '', 1, 0, 0, 0, 13, 13, 3, 25, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-08', '', 1, 0, 0, 0, 13, 13, 3, 25, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-09', '', 1, 0, 0, 0, 13, 13, 3, 25, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-10', '', 1, 0, 0, 0, 13, 13, 3, 25, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-11', '', 1, 0, 0, 0, 13, 13, 3, 25, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-25-12', '', 1, 0, 0, 0, 13, 13, 3, 25, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-01', '', 1, 0, 0, 0, 13, 13, 3, 26, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-02', '', 1, 1, 0, 0, 13, 13, 3, 26, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-03', '', 1, 0, 0, 0, 13, 13, 3, 26, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-04', '', 1, 0, 0, 0, 13, 13, 3, 26, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-05', '', 1, 0, 0, 0, 13, 13, 3, 26, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-06', '', 1, 0, 0, 0, 13, 13, 3, 26, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-07', '', 1, 0, 0, 0, 13, 13, 3, 26, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-08', '', 1, 0, 0, 0, 13, 13, 3, 26, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-09', '', 1, 0, 0, 0, 13, 13, 3, 26, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-10', '', 1, 0, 0, 0, 13, 13, 3, 26, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-11', '', 1, 0, 0, 0, 13, 13, 3, 26, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-26-12', '', 1, 0, 0, 0, 13, 13, 3, 26, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-01', '', 1, 0, 0, 0, 14, 14, 3, 27, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-02', '', 1, 1, 0, 0, 14, 14, 3, 27, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-03', '', 1, 0, 0, 0, 14, 14, 3, 27, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-04', '', 1, 0, 0, 0, 14, 14, 3, 27, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-05', '', 1, 0, 0, 0, 14, 14, 3, 27, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-06', '', 1, 0, 0, 0, 14, 14, 3, 27, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-07', '', 1, 0, 0, 0, 14, 14, 3, 27, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-08', '', 1, 0, 0, 0, 14, 14, 3, 27, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-09', '', 1, 0, 0, 0, 14, 14, 3, 27, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-10', '', 1, 0, 0, 0, 14, 14, 3, 27, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-11', '', 1, 0, 0, 0, 14, 14, 3, 27, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-27-12', '', 1, 0, 0, 0, 14, 14, 3, 27, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-01', '', 1, 0, 0, 0, 14, 14, 3, 28, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-02', '', 1, 1, 0, 0, 14, 14, 3, 28, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-03', '', 1, 0, 0, 0, 14, 14, 3, 28, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-04', '', 1, 0, 0, 0, 14, 14, 3, 28, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-05', '', 1, 0, 0, 0, 14, 14, 3, 28, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-06', '', 1, 0, 0, 0, 14, 14, 3, 28, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-07', '', 1, 0, 0, 0, 14, 14, 3, 28, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-08', '', 1, 0, 0, 0, 14, 14, 3, 28, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-09', '', 1, 0, 0, 0, 14, 14, 3, 28, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-10', '', 1, 0, 0, 0, 14, 14, 3, 28, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-11', '', 1, 0, 0, 0, 14, 14, 3, 28, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-28-12', '', 1, 0, 0, 0, 14, 14, 3, 28, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-01', '', 1, 0, 0, 0, 15, 15, 3, 29, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-02', '', 1, 1, 0, 0, 15, 15, 3, 29, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-03', '', 1, 0, 0, 0, 15, 15, 3, 29, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-04', '', 1, 0, 0, 0, 15, 15, 3, 29, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-05', '', 1, 0, 0, 0, 15, 15, 3, 29, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-06', '', 1, 0, 0, 0, 15, 15, 3, 29, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-07', '', 1, 0, 0, 0, 15, 15, 3, 29, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-08', '', 1, 0, 0, 0, 15, 15, 3, 29, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-09', '', 1, 0, 0, 0, 15, 15, 3, 29, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-10', '', 1, 0, 0, 0, 15, 15, 3, 29, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-11', '', 1, 0, 0, 0, 15, 15, 3, 29, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-29-12', '', 1, 0, 0, 0, 15, 15, 3, 29, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-01', '', 1, 0, 0, 0, 15, 15, 3, 30, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-02', '', 1, 1, 0, 0, 15, 15, 3, 30, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-03', '', 1, 0, 0, 0, 15, 15, 3, 30, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-04', '', 1, 0, 0, 0, 15, 15, 3, 30, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-05', '', 1, 0, 0, 0, 15, 15, 3, 30, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-06', '', 1, 0, 0, 0, 15, 15, 3, 30, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-07', '', 1, 0, 0, 0, 15, 15, 3, 30, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-08', '', 1, 0, 0, 0, 15, 15, 3, 30, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-09', '', 1, 0, 0, 0, 15, 15, 3, 30, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-10', '', 1, 0, 0, 0, 15, 15, 3, 30, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-11', '', 1, 0, 0, 0, 15, 15, 3, 30, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-30-12', '', 1, 0, 0, 0, 15, 15, 3, 30, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-01', '', 1, 0, 0, 0, 16, 16, 3, 31, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-02', '', 1, 1, 0, 0, 16, 16, 3, 31, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-03', '', 1, 0, 0, 0, 16, 16, 3, 31, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-04', '', 1, 0, 0, 0, 16, 16, 3, 31, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-05', '', 1, 0, 0, 0, 16, 16, 3, 31, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-06', '', 1, 0, 0, 0, 16, 16, 3, 31, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-07', '', 1, 0, 0, 0, 16, 16, 3, 31, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-08', '', 1, 0, 0, 0, 16, 16, 3, 31, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-09', '', 1, 0, 0, 0, 16, 16, 3, 31, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-10', '', 1, 0, 0, 0, 16, 16, 3, 31, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-11', '', 1, 0, 0, 0, 16, 16, 3, 31, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-31-12', '', 1, 0, 0, 0, 16, 16, 3, 31, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-01', '', 1, 0, 0, 0, 16, 16, 3, 32, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-02', '', 1, 1, 0, 0, 16, 16, 3, 32, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-03', '', 1, 0, 0, 0, 16, 16, 3, 32, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-04', '', 1, 0, 0, 0, 16, 16, 3, 32, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-05', '', 1, 0, 0, 0, 16, 16, 3, 32, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-06', '', 1, 0, 0, 0, 16, 16, 3, 32, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-07', '', 1, 0, 0, 0, 16, 16, 3, 32, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-08', '', 1, 0, 0, 0, 16, 16, 3, 32, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-09', '', 1, 0, 0, 0, 16, 16, 3, 32, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-10', '', 1, 0, 0, 0, 16, 16, 3, 32, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-11', '', 1, 0, 0, 0, 16, 16, 3, 32, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-32-12', '', 1, 0, 0, 0, 16, 16, 3, 32, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-01', '', 1, 0, 0, 0, 17, 17, 3, 33, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-02', '', 1, 1, 0, 0, 17, 17, 3, 33, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-03', '', 1, 0, 0, 0, 17, 17, 3, 33, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-04', '', 1, 0, 0, 0, 17, 17, 3, 33, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-05', '', 1, 0, 0, 0, 17, 17, 3, 33, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-06', '', 1, 0, 0, 0, 17, 17, 3, 33, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-07', '', 1, 0, 0, 0, 17, 17, 3, 33, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-08', '', 1, 0, 0, 0, 17, 17, 3, 33, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-09', '', 1, 0, 0, 0, 17, 17, 3, 33, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-10', '', 1, 0, 0, 0, 17, 17, 3, 33, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-11', '', 1, 0, 0, 0, 17, 17, 3, 33, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-33-12', '', 1, 0, 0, 0, 17, 17, 3, 33, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-01', '', 1, 0, 0, 0, 17, 17, 3, 34, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-02', '', 1, 1, 0, 0, 17, 17, 3, 34, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-03', '', 1, 0, 0, 0, 17, 17, 3, 34, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-04', '', 1, 0, 0, 0, 17, 17, 3, 34, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-05', '', 1, 0, 0, 0, 17, 17, 3, 34, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-06', '', 1, 0, 0, 0, 17, 17, 3, 34, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-07', '', 1, 0, 0, 0, 17, 17, 3, 34, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-08', '', 1, 0, 0, 0, 17, 17, 3, 34, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-09', '', 1, 0, 0, 0, 17, 17, 3, 34, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-10', '', 1, 0, 0, 0, 17, 17, 3, 34, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-11', '', 1, 0, 0, 0, 17, 17, 3, 34, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-34-12', '', 1, 0, 0, 0, 17, 17, 3, 34, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-01', '', 1, 0, 0, 0, 18, 18, 3, 35, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-02', '', 1, 1, 0, 0, 18, 18, 3, 35, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-03', '', 1, 0, 0, 0, 18, 18, 3, 35, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-04', '', 1, 0, 0, 0, 18, 18, 3, 35, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-05', '', 1, 0, 0, 0, 18, 18, 3, 35, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-06', '', 1, 0, 0, 0, 18, 18, 3, 35, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-07', '', 1, 0, 0, 0, 18, 18, 3, 35, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-08', '', 1, 0, 0, 0, 18, 18, 3, 35, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-09', '', 1, 0, 0, 0, 18, 18, 3, 35, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-10', '', 1, 0, 0, 0, 18, 18, 3, 35, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-11', '', 1, 0, 0, 0, 18, 18, 3, 35, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-35-12', '', 1, 0, 0, 0, 18, 18, 3, 35, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-01', '', 1, 0, 0, 0, 18, 18, 3, 36, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-02', '', 1, 1, 0, 0, 18, 18, 3, 36, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-03', '', 1, 0, 0, 0, 18, 18, 3, 36, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-04', '', 1, 0, 0, 0, 18, 18, 3, 36, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-05', '', 1, 0, 0, 0, 18, 18, 3, 36, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-06', '', 1, 0, 0, 0, 18, 18, 3, 36, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-07', '', 1, 0, 0, 0, 18, 18, 3, 36, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-08', '', 1, 0, 0, 0, 18, 18, 3, 36, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-09', '', 1, 0, 0, 0, 18, 18, 3, 36, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-10', '', 1, 0, 0, 0, 18, 18, 3, 36, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-11', '', 1, 0, 0, 0, 18, 18, 3, 36, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-36-12', '', 1, 0, 0, 0, 18, 18, 3, 36, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-01', '', 1, 0, 0, 0, 19, 19, 3, 37, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-02', '', 1, 1, 0, 0, 19, 19, 3, 37, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-03', '', 1, 0, 0, 0, 19, 19, 3, 37, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-04', '', 1, 0, 0, 0, 19, 19, 3, 37, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-05', '', 1, 0, 0, 0, 19, 19, 3, 37, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-06', '', 1, 0, 0, 0, 19, 19, 3, 37, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-07', '', 1, 0, 0, 0, 19, 19, 3, 37, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-08', '', 1, 0, 0, 0, 19, 19, 3, 37, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-09', '', 1, 0, 0, 0, 19, 19, 3, 37, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-10', '', 1, 0, 0, 0, 19, 19, 3, 37, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-11', '', 1, 0, 0, 0, 19, 19, 3, 37, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-37-12', '', 1, 0, 0, 0, 19, 19, 3, 37, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-01', '', 1, 0, 0, 0, 19, 19, 3, 38, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-02', '', 1, 1, 0, 0, 19, 19, 3, 38, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-03', '', 1, 0, 0, 0, 19, 19, 3, 38, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-04', '', 1, 0, 0, 0, 19, 19, 3, 38, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-05', '', 1, 0, 0, 0, 19, 19, 3, 38, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-06', '', 1, 0, 0, 0, 19, 19, 3, 38, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-07', '', 1, 0, 0, 0, 19, 19, 3, 38, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-08', '', 1, 0, 0, 0, 19, 19, 3, 38, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-09', '', 1, 0, 0, 0, 19, 19, 3, 38, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-10', '', 1, 0, 0, 0, 19, 19, 3, 38, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-11', '', 1, 0, 0, 0, 19, 19, 3, 38, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-38-12', '', 1, 0, 0, 0, 19, 19, 3, 38, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-01', '', 1, 0, 0, 0, 20, 20, 3, 39, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-02', '', 1, 1, 0, 0, 20, 20, 3, 39, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-03', '', 1, 0, 0, 0, 20, 20, 3, 39, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-04', '', 1, 0, 0, 0, 20, 20, 3, 39, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-05', '', 1, 0, 0, 0, 20, 20, 3, 39, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-06', '', 1, 0, 0, 0, 20, 20, 3, 39, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-07', '', 1, 0, 0, 0, 20, 20, 3, 39, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-08', '', 1, 0, 0, 0, 20, 20, 3, 39, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-09', '', 1, 0, 0, 0, 20, 20, 3, 39, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-10', '', 1, 0, 0, 0, 20, 20, 3, 39, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-11', '', 1, 0, 0, 0, 20, 20, 3, 39, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-39-12', '', 1, 0, 0, 0, 20, 20, 3, 39, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-01', '', 1, 0, 0, 0, 20, 20, 3, 40, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-02', '', 1, 1, 0, 0, 20, 20, 3, 40, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-03', '', 1, 0, 0, 0, 20, 20, 3, 40, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-04', '', 1, 0, 0, 0, 20, 20, 3, 40, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-05', '', 1, 0, 0, 0, 20, 20, 3, 40, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-06', '', 1, 0, 0, 0, 20, 20, 3, 40, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-07', '', 1, 0, 0, 0, 20, 20, 3, 40, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-08', '', 1, 0, 0, 0, 20, 20, 3, 40, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-09', '', 1, 0, 0, 0, 20, 20, 3, 40, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-10', '', 1, 0, 0, 0, 20, 20, 3, 40, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-11', '', 1, 0, 0, 0, 20, 20, 3, 40, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-40-12', '', 1, 0, 0, 0, 20, 20, 3, 40, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-01', '', 1, 0, 0, 0, 21, 21, 3, 41, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-02', '', 1, 1, 0, 0, 21, 21, 3, 41, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-03', '', 1, 0, 0, 0, 21, 21, 3, 41, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-04', '', 1, 0, 0, 0, 21, 21, 3, 41, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-05', '', 1, 0, 0, 0, 21, 21, 3, 41, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-06', '', 1, 0, 0, 0, 21, 21, 3, 41, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-07', '', 1, 0, 0, 0, 21, 21, 3, 41, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-08', '', 1, 0, 0, 0, 21, 21, 3, 41, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-09', '', 1, 0, 0, 0, 21, 21, 3, 41, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-10', '', 1, 0, 0, 0, 21, 21, 3, 41, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-11', '', 1, 0, 0, 0, 21, 21, 3, 41, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-41-12', '', 1, 0, 0, 0, 21, 21, 3, 41, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-01', '', 1, 0, 0, 0, 21, 21, 3, 42, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-02', '', 1, 1, 0, 0, 21, 21, 3, 42, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-03', '', 1, 0, 0, 0, 21, 21, 3, 42, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-04', '', 1, 0, 0, 0, 21, 21, 3, 42, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-05', '', 1, 0, 0, 0, 21, 21, 3, 42, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-06', '', 1, 0, 0, 0, 21, 21, 3, 42, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-07', '', 1, 0, 0, 0, 21, 21, 3, 42, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-08', '', 1, 0, 0, 0, 21, 21, 3, 42, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-09', '', 1, 0, 0, 0, 21, 21, 3, 42, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-10', '', 1, 0, 0, 0, 21, 21, 3, 42, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-11', '', 1, 0, 0, 0, 21, 21, 3, 42, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A03-42-12', '', 1, 0, 0, 0, 21, 21, 3, 42, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-01', '', 1, 0, 0, 0, 1, 1, 4, 1, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-02', '', 1, 1, 0, 0, 1, 1, 4, 1, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-03', '', 1, 0, 0, 0, 1, 1, 4, 1, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-04', '', 1, 0, 0, 0, 1, 1, 4, 1, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-05', '', 1, 0, 0, 0, 1, 1, 4, 1, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-06', '', 1, 0, 0, 0, 1, 1, 4, 1, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-07', '', 1, 0, 0, 0, 1, 1, 4, 1, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-08', '', 1, 0, 0, 0, 1, 1, 4, 1, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-09', '', 1, 0, 0, 0, 1, 1, 4, 1, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-10', '', 1, 0, 0, 0, 1, 1, 4, 1, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-11', '', 1, 0, 0, 0, 1, 1, 4, 1, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-01-12', '', 1, 0, 0, 0, 1, 1, 4, 1, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-01', '', 1, 0, 0, 0, 1, 1, 4, 2, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-02', '', 1, 1, 0, 0, 1, 1, 4, 2, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-03', '', 1, 0, 0, 0, 1, 1, 4, 2, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-04', '', 1, 0, 0, 0, 1, 1, 4, 2, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-05', '', 1, 0, 0, 0, 1, 1, 4, 2, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-06', '', 1, 0, 0, 0, 1, 1, 4, 2, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-07', '', 1, 0, 0, 0, 1, 1, 4, 2, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-08', '', 1, 0, 0, 0, 1, 1, 4, 2, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-09', '', 1, 0, 0, 0, 1, 1, 4, 2, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-10', '', 1, 0, 0, 0, 1, 1, 4, 2, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-11', '', 1, 0, 0, 0, 1, 1, 4, 2, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-02-12', '', 1, 0, 0, 0, 1, 1, 4, 2, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-01', '', 1, 0, 0, 0, 2, 2, 4, 3, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-02', '', 1, 1, 0, 0, 2, 2, 4, 3, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-03', '', 1, 0, 0, 0, 2, 2, 4, 3, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-04', '', 1, 0, 0, 0, 2, 2, 4, 3, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-05', '', 1, 0, 0, 0, 2, 2, 4, 3, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-06', '', 1, 0, 0, 0, 2, 2, 4, 3, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-07', '', 1, 0, 0, 0, 2, 2, 4, 3, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-08', '', 1, 0, 0, 0, 2, 2, 4, 3, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-09', '', 1, 0, 0, 0, 2, 2, 4, 3, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-10', '', 1, 0, 0, 0, 2, 2, 4, 3, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-11', '', 1, 0, 0, 0, 2, 2, 4, 3, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-03-12', '', 1, 0, 0, 0, 2, 2, 4, 3, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-01', '', 1, 0, 0, 0, 2, 2, 4, 4, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-02', '', 1, 1, 0, 0, 2, 2, 4, 4, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-03', '', 1, 0, 0, 0, 2, 2, 4, 4, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-04', '', 1, 0, 0, 0, 2, 2, 4, 4, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-05', '', 1, 0, 0, 0, 2, 2, 4, 4, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-06', '', 1, 0, 0, 0, 2, 2, 4, 4, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-07', '', 1, 0, 0, 0, 2, 2, 4, 4, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-08', '', 1, 0, 0, 0, 2, 2, 4, 4, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-09', '', 1, 0, 0, 0, 2, 2, 4, 4, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-10', '', 1, 0, 0, 0, 2, 2, 4, 4, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-11', '', 1, 0, 0, 0, 2, 2, 4, 4, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-04-12', '', 1, 0, 0, 0, 2, 2, 4, 4, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-01', '', 1, 0, 0, 0, 3, 3, 4, 5, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-02', '', 1, 1, 0, 0, 3, 3, 4, 5, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-03', '', 1, 0, 0, 0, 3, 3, 4, 5, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-04', '', 1, 0, 0, 0, 3, 3, 4, 5, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-05', '', 1, 0, 0, 0, 3, 3, 4, 5, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-06', '', 1, 0, 0, 0, 3, 3, 4, 5, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-07', '', 1, 0, 0, 0, 3, 3, 4, 5, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-08', '', 1, 0, 0, 0, 3, 3, 4, 5, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-09', '', 1, 0, 0, 0, 3, 3, 4, 5, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-10', '', 1, 0, 0, 0, 3, 3, 4, 5, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-11', '', 1, 0, 0, 0, 3, 3, 4, 5, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-05-12', '', 1, 0, 0, 0, 3, 3, 4, 5, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-01', '', 1, 0, 0, 0, 3, 3, 4, 6, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-02', '', 1, 1, 0, 0, 3, 3, 4, 6, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-03', '', 1, 0, 0, 0, 3, 3, 4, 6, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-04', '', 1, 0, 0, 0, 3, 3, 4, 6, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-05', '', 1, 0, 0, 0, 3, 3, 4, 6, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-06', '', 1, 0, 0, 0, 3, 3, 4, 6, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-07', '', 1, 0, 0, 0, 3, 3, 4, 6, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-08', '', 1, 0, 0, 0, 3, 3, 4, 6, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-09', '', 1, 0, 0, 0, 3, 3, 4, 6, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-10', '', 1, 0, 0, 0, 3, 3, 4, 6, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-11', '', 1, 0, 0, 0, 3, 3, 4, 6, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-06-12', '', 1, 0, 0, 0, 3, 3, 4, 6, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-01', '', 1, 0, 0, 0, 4, 4, 4, 7, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-02', '', 1, 1, 0, 0, 4, 4, 4, 7, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-03', '', 1, 0, 0, 0, 4, 4, 4, 7, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-04', '', 1, 0, 0, 0, 4, 4, 4, 7, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-05', '', 1, 0, 0, 0, 4, 4, 4, 7, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-06', '', 1, 0, 0, 0, 4, 4, 4, 7, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-07', '', 1, 0, 0, 0, 4, 4, 4, 7, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-08', '', 1, 0, 0, 0, 4, 4, 4, 7, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-09', '', 1, 0, 0, 0, 4, 4, 4, 7, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-10', '', 1, 0, 0, 0, 4, 4, 4, 7, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-11', '', 1, 0, 0, 0, 4, 4, 4, 7, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-07-12', '', 1, 0, 0, 0, 4, 4, 4, 7, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-01', '', 1, 0, 0, 0, 4, 4, 4, 8, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-02', '', 1, 1, 0, 0, 4, 4, 4, 8, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-03', '', 1, 0, 0, 0, 4, 4, 4, 8, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-04', '', 1, 0, 0, 0, 4, 4, 4, 8, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-05', '', 1, 0, 0, 0, 4, 4, 4, 8, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-06', '', 1, 0, 0, 0, 4, 4, 4, 8, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-07', '', 1, 0, 0, 0, 4, 4, 4, 8, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-08', '', 1, 0, 0, 0, 4, 4, 4, 8, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-09', '', 1, 0, 0, 0, 4, 4, 4, 8, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-10', '', 1, 0, 0, 0, 4, 4, 4, 8, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-11', '', 1, 0, 0, 0, 4, 4, 4, 8, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-08-12', '', 1, 0, 0, 0, 4, 4, 4, 8, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-01', '', 1, 0, 0, 0, 5, 5, 4, 9, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-02', '', 1, 1, 0, 0, 5, 5, 4, 9, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-03', '', 1, 0, 0, 0, 5, 5, 4, 9, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-04', '', 1, 0, 0, 0, 5, 5, 4, 9, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-05', '', 1, 0, 0, 0, 5, 5, 4, 9, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-06', '', 1, 0, 0, 0, 5, 5, 4, 9, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-07', '', 1, 0, 0, 0, 5, 5, 4, 9, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-08', '', 1, 0, 0, 0, 5, 5, 4, 9, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-09', '', 1, 0, 0, 0, 5, 5, 4, 9, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-10', '', 1, 0, 0, 0, 5, 5, 4, 9, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-11', '', 1, 0, 0, 0, 5, 5, 4, 9, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-09-12', '', 1, 0, 0, 0, 5, 5, 4, 9, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-01', '', 1, 0, 0, 0, 5, 5, 4, 10, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-02', '', 1, 1, 0, 0, 5, 5, 4, 10, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-03', '', 1, 0, 0, 0, 5, 5, 4, 10, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-04', '', 1, 0, 0, 0, 5, 5, 4, 10, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-05', '', 1, 0, 0, 0, 5, 5, 4, 10, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-06', '', 1, 0, 0, 0, 5, 5, 4, 10, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-07', '', 1, 0, 0, 0, 5, 5, 4, 10, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-08', '', 1, 0, 0, 0, 5, 5, 4, 10, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-09', '', 1, 0, 0, 0, 5, 5, 4, 10, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-10', '', 1, 0, 0, 0, 5, 5, 4, 10, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-11', '', 1, 0, 0, 0, 5, 5, 4, 10, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-10-12', '', 1, 0, 0, 0, 5, 5, 4, 10, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-01', '', 1, 0, 0, 0, 6, 6, 4, 11, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-02', '', 1, 1, 0, 0, 6, 6, 4, 11, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-03', '', 1, 0, 0, 0, 6, 6, 4, 11, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-04', '', 1, 0, 0, 0, 6, 6, 4, 11, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-05', '', 1, 0, 0, 0, 6, 6, 4, 11, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-06', '', 1, 0, 0, 0, 6, 6, 4, 11, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-07', '', 1, 0, 0, 0, 6, 6, 4, 11, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-08', '', 1, 0, 0, 0, 6, 6, 4, 11, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-09', '', 1, 0, 0, 0, 6, 6, 4, 11, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-10', '', 1, 0, 0, 0, 6, 6, 4, 11, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-11', '', 1, 0, 0, 0, 6, 6, 4, 11, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-11-12', '', 1, 0, 0, 0, 6, 6, 4, 11, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-01', '', 1, 0, 0, 0, 6, 6, 4, 12, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-02', '', 1, 1, 0, 0, 6, 6, 4, 12, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-03', '', 1, 0, 0, 0, 6, 6, 4, 12, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-04', '', 1, 0, 0, 0, 6, 6, 4, 12, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-05', '', 1, 0, 0, 0, 6, 6, 4, 12, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-06', '', 1, 0, 0, 0, 6, 6, 4, 12, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-07', '', 1, 0, 0, 0, 6, 6, 4, 12, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-08', '', 1, 0, 0, 0, 6, 6, 4, 12, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-09', '', 1, 0, 0, 0, 6, 6, 4, 12, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-10', '', 1, 0, 0, 0, 6, 6, 4, 12, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-11', '', 1, 0, 0, 0, 6, 6, 4, 12, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-12-12', '', 1, 0, 0, 0, 6, 6, 4, 12, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-01', '', 1, 0, 0, 0, 7, 7, 4, 13, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-02', '', 1, 1, 0, 0, 7, 7, 4, 13, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-03', '', 1, 0, 0, 0, 7, 7, 4, 13, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-04', '', 1, 0, 0, 0, 7, 7, 4, 13, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-05', '', 1, 0, 0, 0, 7, 7, 4, 13, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-06', '', 1, 0, 0, 0, 7, 7, 4, 13, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-07', '', 1, 0, 0, 0, 7, 7, 4, 13, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-08', '', 1, 0, 0, 0, 7, 7, 4, 13, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-09', '', 1, 0, 0, 0, 7, 7, 4, 13, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-10', '', 1, 0, 0, 0, 7, 7, 4, 13, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-11', '', 1, 0, 0, 0, 7, 7, 4, 13, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-13-12', '', 1, 0, 0, 0, 7, 7, 4, 13, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-01', '', 1, 0, 0, 0, 7, 7, 4, 14, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-02', '', 1, 1, 0, 0, 7, 7, 4, 14, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-03', '', 1, 0, 0, 0, 7, 7, 4, 14, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-04', '', 1, 0, 0, 0, 7, 7, 4, 14, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-05', '', 1, 0, 0, 0, 7, 7, 4, 14, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-06', '', 1, 0, 0, 0, 7, 7, 4, 14, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-07', '', 1, 0, 0, 0, 7, 7, 4, 14, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-08', '', 1, 0, 0, 0, 7, 7, 4, 14, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-09', '', 1, 0, 0, 0, 7, 7, 4, 14, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-10', '', 1, 0, 0, 0, 7, 7, 4, 14, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-11', '', 1, 0, 0, 0, 7, 7, 4, 14, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-14-12', '', 1, 0, 0, 0, 7, 7, 4, 14, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-01', '', 1, 0, 0, 0, 8, 8, 4, 15, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-02', '', 1, 1, 0, 0, 8, 8, 4, 15, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-03', '', 1, 0, 0, 0, 8, 8, 4, 15, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-04', '', 1, 0, 0, 0, 8, 8, 4, 15, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-05', '', 1, 0, 0, 0, 8, 8, 4, 15, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-06', '', 1, 0, 0, 0, 8, 8, 4, 15, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-07', '', 1, 0, 0, 0, 8, 8, 4, 15, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-08', '', 1, 0, 0, 0, 8, 8, 4, 15, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-09', '', 1, 0, 0, 0, 8, 8, 4, 15, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-10', '', 1, 0, 0, 0, 8, 8, 4, 15, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-11', '', 1, 0, 0, 0, 8, 8, 4, 15, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-15-12', '', 1, 0, 0, 0, 8, 8, 4, 15, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-01', '', 1, 0, 0, 0, 8, 8, 4, 16, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-02', '', 1, 1, 0, 0, 8, 8, 4, 16, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-03', '', 1, 0, 0, 0, 8, 8, 4, 16, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-04', '', 1, 0, 0, 0, 8, 8, 4, 16, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-05', '', 1, 0, 0, 0, 8, 8, 4, 16, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-06', '', 1, 0, 0, 0, 8, 8, 4, 16, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-07', '', 1, 0, 0, 0, 8, 8, 4, 16, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-08', '', 1, 0, 0, 0, 8, 8, 4, 16, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-09', '', 1, 0, 0, 0, 8, 8, 4, 16, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-10', '', 1, 0, 0, 0, 8, 8, 4, 16, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-11', '', 1, 0, 0, 0, 8, 8, 4, 16, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-16-12', '', 1, 0, 0, 0, 8, 8, 4, 16, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-01', '', 1, 0, 0, 0, 9, 9, 4, 17, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-02', '', 1, 1, 0, 0, 9, 9, 4, 17, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-03', '', 1, 0, 0, 0, 9, 9, 4, 17, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-04', '', 1, 0, 0, 0, 9, 9, 4, 17, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-05', '', 1, 0, 0, 0, 9, 9, 4, 17, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-06', '', 1, 0, 0, 0, 9, 9, 4, 17, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-07', '', 1, 0, 0, 0, 9, 9, 4, 17, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-08', '', 1, 0, 0, 0, 9, 9, 4, 17, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-09', '', 1, 0, 0, 0, 9, 9, 4, 17, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-10', '', 1, 0, 0, 0, 9, 9, 4, 17, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-11', '', 1, 0, 0, 0, 9, 9, 4, 17, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-17-12', '', 1, 0, 0, 0, 9, 9, 4, 17, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-01', '', 1, 0, 0, 0, 9, 9, 4, 18, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-02', '', 1, 1, 0, 0, 9, 9, 4, 18, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-03', '', 1, 0, 0, 0, 9, 9, 4, 18, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-04', '', 1, 0, 0, 0, 9, 9, 4, 18, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-05', '', 1, 0, 0, 0, 9, 9, 4, 18, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-06', '', 1, 0, 0, 0, 9, 9, 4, 18, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-07', '', 1, 0, 0, 0, 9, 9, 4, 18, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-08', '', 1, 0, 0, 0, 9, 9, 4, 18, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-09', '', 1, 0, 0, 0, 9, 9, 4, 18, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-10', '', 1, 0, 0, 0, 9, 9, 4, 18, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-11', '', 1, 0, 0, 0, 9, 9, 4, 18, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-18-12', '', 1, 0, 0, 0, 9, 9, 4, 18, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-01', '', 1, 0, 0, 0, 10, 10, 4, 19, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-02', '', 1, 1, 0, 0, 10, 10, 4, 19, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-03', '', 1, 0, 0, 0, 10, 10, 4, 19, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-04', '', 1, 0, 0, 0, 10, 10, 4, 19, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-05', '', 1, 0, 0, 0, 10, 10, 4, 19, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-06', '', 1, 0, 0, 0, 10, 10, 4, 19, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-07', '', 1, 0, 0, 0, 10, 10, 4, 19, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-08', '', 1, 0, 0, 0, 10, 10, 4, 19, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-09', '', 1, 0, 0, 0, 10, 10, 4, 19, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-10', '', 1, 0, 0, 0, 10, 10, 4, 19, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-11', '', 1, 0, 0, 0, 10, 10, 4, 19, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-19-12', '', 1, 0, 0, 0, 10, 10, 4, 19, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-01', '', 1, 0, 0, 0, 10, 10, 4, 20, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-02', '', 1, 1, 0, 0, 10, 10, 4, 20, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-03', '', 1, 0, 0, 0, 10, 10, 4, 20, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-04', '', 1, 0, 0, 0, 10, 10, 4, 20, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-05', '', 1, 0, 0, 0, 10, 10, 4, 20, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-06', '', 1, 0, 0, 0, 10, 10, 4, 20, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-07', '', 1, 0, 0, 0, 10, 10, 4, 20, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-08', '', 1, 0, 0, 0, 10, 10, 4, 20, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-09', '', 1, 0, 0, 0, 10, 10, 4, 20, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-10', '', 1, 0, 0, 0, 10, 10, 4, 20, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-11', '', 1, 0, 0, 0, 10, 10, 4, 20, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-20-12', '', 1, 0, 0, 0, 10, 10, 4, 20, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-01', '', 1, 0, 0, 0, 11, 11, 4, 21, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-02', '', 1, 1, 0, 0, 11, 11, 4, 21, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-03', '', 1, 0, 0, 0, 11, 11, 4, 21, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-04', '', 1, 0, 0, 0, 11, 11, 4, 21, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-05', '', 1, 0, 0, 0, 11, 11, 4, 21, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-06', '', 1, 0, 0, 0, 11, 11, 4, 21, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-07', '', 1, 0, 0, 0, 11, 11, 4, 21, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-08', '', 1, 0, 0, 0, 11, 11, 4, 21, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-09', '', 1, 0, 0, 0, 11, 11, 4, 21, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-10', '', 1, 0, 0, 0, 11, 11, 4, 21, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-11', '', 1, 0, 0, 0, 11, 11, 4, 21, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-21-12', '', 1, 0, 0, 0, 11, 11, 4, 21, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-01', '', 1, 0, 0, 0, 11, 11, 4, 22, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-02', '', 1, 1, 0, 0, 11, 11, 4, 22, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-03', '', 1, 0, 0, 0, 11, 11, 4, 22, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-04', '', 1, 0, 0, 0, 11, 11, 4, 22, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-05', '', 1, 0, 0, 0, 11, 11, 4, 22, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-06', '', 1, 0, 0, 0, 11, 11, 4, 22, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-07', '', 1, 0, 0, 0, 11, 11, 4, 22, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-08', '', 1, 0, 0, 0, 11, 11, 4, 22, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-09', '', 1, 0, 0, 0, 11, 11, 4, 22, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-10', '', 1, 0, 0, 0, 11, 11, 4, 22, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-11', '', 1, 0, 0, 0, 11, 11, 4, 22, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-22-12', '', 1, 0, 0, 0, 11, 11, 4, 22, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-01', '', 1, 0, 0, 0, 12, 12, 4, 23, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-02', '', 1, 1, 0, 0, 12, 12, 4, 23, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-03', '', 1, 0, 0, 0, 12, 12, 4, 23, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-04', '', 1, 0, 0, 0, 12, 12, 4, 23, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-05', '', 1, 0, 0, 0, 12, 12, 4, 23, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-06', '', 1, 0, 0, 0, 12, 12, 4, 23, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-07', '', 1, 0, 0, 0, 12, 12, 4, 23, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-08', '', 1, 0, 0, 0, 12, 12, 4, 23, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-09', '', 1, 0, 0, 0, 12, 12, 4, 23, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-10', '', 1, 0, 0, 0, 12, 12, 4, 23, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-11', '', 1, 0, 0, 0, 12, 12, 4, 23, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-23-12', '', 1, 0, 0, 0, 12, 12, 4, 23, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-01', '', 1, 0, 0, 0, 12, 12, 4, 24, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-02', '', 1, 1, 0, 0, 12, 12, 4, 24, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-03', '', 1, 0, 0, 0, 12, 12, 4, 24, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-04', '', 1, 0, 0, 0, 12, 12, 4, 24, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-05', '', 1, 0, 0, 0, 12, 12, 4, 24, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-06', '', 1, 0, 0, 0, 12, 12, 4, 24, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-07', '', 1, 0, 0, 0, 12, 12, 4, 24, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-08', '', 1, 0, 0, 0, 12, 12, 4, 24, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-09', '', 1, 0, 0, 0, 12, 12, 4, 24, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-10', '', 1, 0, 0, 0, 12, 12, 4, 24, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-11', '', 1, 0, 0, 0, 12, 12, 4, 24, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-24-12', '', 1, 0, 0, 0, 12, 12, 4, 24, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-01', '', 1, 0, 0, 0, 13, 13, 4, 25, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-02', '', 1, 1, 0, 0, 13, 13, 4, 25, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-03', '', 1, 0, 0, 0, 13, 13, 4, 25, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-04', '', 1, 0, 0, 0, 13, 13, 4, 25, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-05', '', 1, 0, 0, 0, 13, 13, 4, 25, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-06', '', 1, 0, 0, 0, 13, 13, 4, 25, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-07', '', 1, 0, 0, 0, 13, 13, 4, 25, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-08', '', 1, 0, 0, 0, 13, 13, 4, 25, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-09', '', 1, 0, 0, 0, 13, 13, 4, 25, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-10', '', 1, 0, 0, 0, 13, 13, 4, 25, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-11', '', 1, 0, 0, 0, 13, 13, 4, 25, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-25-12', '', 1, 0, 0, 0, 13, 13, 4, 25, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-01', '', 1, 0, 0, 0, 13, 13, 4, 26, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-02', '', 1, 1, 0, 0, 13, 13, 4, 26, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-03', '', 1, 0, 0, 0, 13, 13, 4, 26, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-04', '', 1, 0, 0, 0, 13, 13, 4, 26, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-05', '', 1, 0, 0, 0, 13, 13, 4, 26, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-06', '', 1, 0, 0, 0, 13, 13, 4, 26, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-07', '', 1, 0, 0, 0, 13, 13, 4, 26, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-08', '', 1, 0, 0, 0, 13, 13, 4, 26, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-09', '', 1, 0, 0, 0, 13, 13, 4, 26, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-10', '', 1, 0, 0, 0, 13, 13, 4, 26, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-11', '', 1, 0, 0, 0, 13, 13, 4, 26, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-26-12', '', 1, 0, 0, 0, 13, 13, 4, 26, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-01', '', 1, 0, 0, 0, 14, 14, 4, 27, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-02', '', 1, 1, 0, 0, 14, 14, 4, 27, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-03', '', 1, 0, 0, 0, 14, 14, 4, 27, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-04', '', 1, 0, 0, 0, 14, 14, 4, 27, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-05', '', 1, 0, 0, 0, 14, 14, 4, 27, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-06', '', 1, 0, 0, 0, 14, 14, 4, 27, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-07', '', 1, 0, 0, 0, 14, 14, 4, 27, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-08', '', 1, 0, 0, 0, 14, 14, 4, 27, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-09', '', 1, 0, 0, 0, 14, 14, 4, 27, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-10', '', 1, 0, 0, 0, 14, 14, 4, 27, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-11', '', 1, 0, 0, 0, 14, 14, 4, 27, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-27-12', '', 1, 0, 0, 0, 14, 14, 4, 27, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-01', '', 1, 0, 0, 0, 14, 14, 4, 28, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-02', '', 1, 1, 0, 0, 14, 14, 4, 28, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-03', '', 1, 0, 0, 0, 14, 14, 4, 28, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-04', '', 1, 0, 0, 0, 14, 14, 4, 28, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-05', '', 1, 0, 0, 0, 14, 14, 4, 28, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-06', '', 1, 0, 0, 0, 14, 14, 4, 28, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-07', '', 1, 0, 0, 0, 14, 14, 4, 28, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-08', '', 1, 0, 0, 0, 14, 14, 4, 28, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-09', '', 1, 0, 0, 0, 14, 14, 4, 28, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-10', '', 1, 0, 0, 0, 14, 14, 4, 28, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-11', '', 1, 0, 0, 0, 14, 14, 4, 28, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-28-12', '', 1, 0, 0, 0, 14, 14, 4, 28, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-01', '', 1, 0, 0, 0, 15, 15, 4, 29, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-02', '', 1, 1, 0, 0, 15, 15, 4, 29, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-03', '', 1, 0, 0, 0, 15, 15, 4, 29, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-04', '', 1, 0, 0, 0, 15, 15, 4, 29, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-05', '', 1, 0, 0, 0, 15, 15, 4, 29, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-06', '', 1, 0, 0, 0, 15, 15, 4, 29, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-07', '', 1, 0, 0, 0, 15, 15, 4, 29, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-08', '', 1, 0, 0, 0, 15, 15, 4, 29, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-09', '', 1, 0, 0, 0, 15, 15, 4, 29, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-10', '', 1, 0, 0, 0, 15, 15, 4, 29, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-11', '', 1, 0, 0, 0, 15, 15, 4, 29, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-29-12', '', 1, 0, 0, 0, 15, 15, 4, 29, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-01', '', 1, 0, 0, 0, 15, 15, 4, 30, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-02', '', 1, 1, 0, 0, 15, 15, 4, 30, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-03', '', 1, 0, 0, 0, 15, 15, 4, 30, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-04', '', 1, 0, 0, 0, 15, 15, 4, 30, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-05', '', 1, 0, 0, 0, 15, 15, 4, 30, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-06', '', 1, 0, 0, 0, 15, 15, 4, 30, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-07', '', 1, 0, 0, 0, 15, 15, 4, 30, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-08', '', 1, 0, 0, 0, 15, 15, 4, 30, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-09', '', 1, 0, 0, 0, 15, 15, 4, 30, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-10', '', 1, 0, 0, 0, 15, 15, 4, 30, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-11', '', 1, 0, 0, 0, 15, 15, 4, 30, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-30-12', '', 1, 0, 0, 0, 15, 15, 4, 30, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-01', '', 1, 0, 0, 0, 16, 16, 4, 31, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-02', '', 1, 1, 0, 0, 16, 16, 4, 31, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-03', '', 1, 0, 0, 0, 16, 16, 4, 31, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-04', '', 1, 0, 0, 0, 16, 16, 4, 31, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-05', '', 1, 0, 0, 0, 16, 16, 4, 31, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-06', '', 1, 0, 0, 0, 16, 16, 4, 31, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-07', '', 1, 0, 0, 0, 16, 16, 4, 31, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-08', '', 1, 0, 0, 0, 16, 16, 4, 31, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-09', '', 1, 0, 0, 0, 16, 16, 4, 31, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-10', '', 1, 0, 0, 0, 16, 16, 4, 31, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-11', '', 1, 0, 0, 0, 16, 16, 4, 31, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-31-12', '', 1, 0, 0, 0, 16, 16, 4, 31, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-01', '', 1, 0, 0, 0, 16, 16, 4, 32, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-02', '', 1, 1, 0, 0, 16, 16, 4, 32, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-03', '', 1, 0, 0, 0, 16, 16, 4, 32, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-04', '', 1, 0, 0, 0, 16, 16, 4, 32, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-05', '', 1, 0, 0, 0, 16, 16, 4, 32, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-06', '', 1, 0, 0, 0, 16, 16, 4, 32, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-07', '', 1, 0, 0, 0, 16, 16, 4, 32, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-08', '', 1, 0, 0, 0, 16, 16, 4, 32, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-09', '', 1, 0, 0, 0, 16, 16, 4, 32, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-10', '', 1, 0, 0, 0, 16, 16, 4, 32, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-11', '', 1, 0, 0, 0, 16, 16, 4, 32, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-32-12', '', 1, 0, 0, 0, 16, 16, 4, 32, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-01', '', 1, 0, 0, 0, 17, 17, 4, 33, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-02', '', 1, 1, 0, 0, 17, 17, 4, 33, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-03', '', 1, 0, 0, 0, 17, 17, 4, 33, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-04', '', 1, 0, 0, 0, 17, 17, 4, 33, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-05', '', 1, 0, 0, 0, 17, 17, 4, 33, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-06', '', 1, 0, 0, 0, 17, 17, 4, 33, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-07', '', 1, 0, 0, 0, 17, 17, 4, 33, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-08', '', 1, 0, 0, 0, 17, 17, 4, 33, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-09', '', 1, 0, 0, 0, 17, 17, 4, 33, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-10', '', 1, 0, 0, 0, 17, 17, 4, 33, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-11', '', 1, 0, 0, 0, 17, 17, 4, 33, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-33-12', '', 1, 0, 0, 0, 17, 17, 4, 33, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-01', '', 1, 0, 0, 0, 17, 17, 4, 34, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-02', '', 1, 1, 0, 0, 17, 17, 4, 34, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-03', '', 1, 0, 0, 0, 17, 17, 4, 34, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-04', '', 1, 0, 0, 0, 17, 17, 4, 34, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-05', '', 1, 0, 0, 0, 17, 17, 4, 34, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-06', '', 1, 0, 0, 0, 17, 17, 4, 34, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-07', '', 1, 0, 0, 0, 17, 17, 4, 34, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-08', '', 1, 0, 0, 0, 17, 17, 4, 34, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-09', '', 1, 0, 0, 0, 17, 17, 4, 34, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-10', '', 1, 0, 0, 0, 17, 17, 4, 34, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-11', '', 1, 0, 0, 0, 17, 17, 4, 34, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-34-12', '', 1, 0, 0, 0, 17, 17, 4, 34, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-01', '', 1, 0, 0, 0, 18, 18, 4, 35, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-02', '', 1, 1, 0, 0, 18, 18, 4, 35, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-03', '', 1, 0, 0, 0, 18, 18, 4, 35, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-04', '', 1, 0, 0, 0, 18, 18, 4, 35, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-05', '', 1, 0, 0, 0, 18, 18, 4, 35, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-06', '', 1, 0, 0, 0, 18, 18, 4, 35, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-07', '', 1, 0, 0, 0, 18, 18, 4, 35, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-08', '', 1, 0, 0, 0, 18, 18, 4, 35, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-09', '', 1, 0, 0, 0, 18, 18, 4, 35, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-10', '', 1, 0, 0, 0, 18, 18, 4, 35, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-11', '', 1, 0, 0, 0, 18, 18, 4, 35, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-35-12', '', 1, 0, 0, 0, 18, 18, 4, 35, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-01', '', 1, 0, 0, 0, 18, 18, 4, 36, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-02', '', 1, 1, 0, 0, 18, 18, 4, 36, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-03', '', 1, 0, 0, 0, 18, 18, 4, 36, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-04', '', 1, 0, 0, 0, 18, 18, 4, 36, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-05', '', 1, 0, 0, 0, 18, 18, 4, 36, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-06', '', 1, 0, 0, 0, 18, 18, 4, 36, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-07', '', 1, 0, 0, 0, 18, 18, 4, 36, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-08', '', 1, 0, 0, 0, 18, 18, 4, 36, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-09', '', 1, 0, 0, 0, 18, 18, 4, 36, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-10', '', 1, 0, 0, 0, 18, 18, 4, 36, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-11', '', 1, 0, 0, 0, 18, 18, 4, 36, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-36-12', '', 1, 0, 0, 0, 18, 18, 4, 36, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-01', '', 1, 0, 0, 0, 19, 19, 4, 37, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-02', '', 1, 1, 0, 0, 19, 19, 4, 37, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-03', '', 1, 0, 0, 0, 19, 19, 4, 37, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-04', '', 1, 0, 0, 0, 19, 19, 4, 37, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-05', '', 1, 0, 0, 0, 19, 19, 4, 37, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-06', '', 1, 0, 0, 0, 19, 19, 4, 37, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-07', '', 1, 0, 0, 0, 19, 19, 4, 37, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-08', '', 1, 0, 0, 0, 19, 19, 4, 37, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-09', '', 1, 0, 0, 0, 19, 19, 4, 37, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-10', '', 1, 0, 0, 0, 19, 19, 4, 37, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-11', '', 1, 0, 0, 0, 19, 19, 4, 37, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-37-12', '', 1, 0, 0, 0, 19, 19, 4, 37, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-01', '', 1, 0, 0, 0, 19, 19, 4, 38, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-02', '', 1, 1, 0, 0, 19, 19, 4, 38, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-03', '', 1, 0, 0, 0, 19, 19, 4, 38, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-04', '', 1, 0, 0, 0, 19, 19, 4, 38, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-05', '', 1, 0, 0, 0, 19, 19, 4, 38, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-06', '', 1, 0, 0, 0, 19, 19, 4, 38, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-07', '', 1, 0, 0, 0, 19, 19, 4, 38, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-08', '', 1, 0, 0, 0, 19, 19, 4, 38, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-09', '', 1, 0, 0, 0, 19, 19, 4, 38, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-10', '', 1, 0, 0, 0, 19, 19, 4, 38, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-11', '', 1, 0, 0, 0, 19, 19, 4, 38, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-38-12', '', 1, 0, 0, 0, 19, 19, 4, 38, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-01', '', 1, 0, 0, 0, 20, 20, 4, 39, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-02', '', 1, 1, 0, 0, 20, 20, 4, 39, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-03', '', 1, 0, 0, 0, 20, 20, 4, 39, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-04', '', 1, 0, 0, 0, 20, 20, 4, 39, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-05', '', 1, 0, 0, 0, 20, 20, 4, 39, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-06', '', 1, 0, 0, 0, 20, 20, 4, 39, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-07', '', 1, 0, 0, 0, 20, 20, 4, 39, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-08', '', 1, 0, 0, 0, 20, 20, 4, 39, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-09', '', 1, 0, 0, 0, 20, 20, 4, 39, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-10', '', 1, 0, 0, 0, 20, 20, 4, 39, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-11', '', 1, 0, 0, 0, 20, 20, 4, 39, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-39-12', '', 1, 0, 0, 0, 20, 20, 4, 39, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-01', '', 1, 0, 0, 0, 20, 20, 4, 40, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-02', '', 1, 1, 0, 0, 20, 20, 4, 40, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-03', '', 1, 0, 0, 0, 20, 20, 4, 40, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-04', '', 1, 0, 0, 0, 20, 20, 4, 40, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-05', '', 1, 0, 0, 0, 20, 20, 4, 40, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-06', '', 1, 0, 0, 0, 20, 20, 4, 40, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-07', '', 1, 0, 0, 0, 20, 20, 4, 40, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-08', '', 1, 0, 0, 0, 20, 20, 4, 40, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-09', '', 1, 0, 0, 0, 20, 20, 4, 40, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-10', '', 1, 0, 0, 0, 20, 20, 4, 40, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-11', '', 1, 0, 0, 0, 20, 20, 4, 40, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-40-12', '', 1, 0, 0, 0, 20, 20, 4, 40, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-01', '', 1, 0, 0, 0, 21, 21, 4, 41, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-02', '', 1, 1, 0, 0, 21, 21, 4, 41, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-03', '', 1, 0, 0, 0, 21, 21, 4, 41, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-04', '', 1, 0, 0, 0, 21, 21, 4, 41, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-05', '', 1, 0, 0, 0, 21, 21, 4, 41, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-06', '', 1, 0, 0, 0, 21, 21, 4, 41, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-07', '', 1, 0, 0, 0, 21, 21, 4, 41, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-08', '', 1, 0, 0, 0, 21, 21, 4, 41, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-09', '', 1, 0, 0, 0, 21, 21, 4, 41, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-10', '', 1, 0, 0, 0, 21, 21, 4, 41, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-11', '', 1, 0, 0, 0, 21, 21, 4, 41, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-41-12', '', 1, 0, 0, 0, 21, 21, 4, 41, 12, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-01', '', 1, 0, 0, 0, 21, 21, 4, 42, 1, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-02', '', 1, 1, 0, 0, 21, 21, 4, 42, 2, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-03', '', 1, 0, 0, 0, 21, 21, 4, 42, 3, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-04', '', 1, 0, 0, 0, 21, 21, 4, 42, 4, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-05', '', 1, 0, 0, 0, 21, 21, 4, 42, 5, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-06', '', 1, 0, 0, 0, 21, 21, 4, 42, 6, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-07', '', 1, 0, 0, 0, 21, 21, 4, 42, 7, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-08', '', 1, 0, 0, 0, 21, 21, 4, 42, 8, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-09', '', 1, 0, 0, 0, 21, 21, 4, 42, 9, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-10', '', 1, 0, 0, 0, 21, 21, 4, 42, 10, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-11', '', 1, 0, 0, 0, 21, 21, 4, 42, 11, 1, '', 1, ''); +INSERT INTO `t_app_location` (`location_id`, `outer_id`, `location_type`, `is_lock`, `is_occupy`, `is_working`, `equipment_id`, `tunnel_id`, `l_row`, `l_col`, `l_layer`, `l_depth`, `vehicle_id`, `area_id`, `sub_area`) VALUES ('A04-42-12', '', 1, 0, 0, 0, 21, 21, 4, 42, 12, 1, '', 1, ''); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_outs +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_outs`; +CREATE TABLE `t_app_outs` ( + `task_id` varchar(64) NOT NULL COMMENT 'id', + `goods_id` varchar(64) DEFAULT NULL COMMENT '料号', + `vehicle_id` varchar(64) DEFAULT NULL COMMENT '载具号', + `need_num` int NOT NULL COMMENT '需求数量', + `distribute_num` int DEFAULT NULL COMMENT '分配数量', + `pick_num` int DEFAULT NULL COMMENT '已拣数量', + `out_type` int NOT NULL COMMENT '出库类型', + `destination` varchar(64) NOT NULL COMMENT '终点', + `user_name` varchar(64) DEFAULT NULL COMMENT '呼叫用户', + PRIMARY KEY (`task_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Records of t_app_outs +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_outs_record +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_outs_record`; +CREATE TABLE `t_app_outs_record` ( + `task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'id', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '料号', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '载具号', + `need_num` int NOT NULL COMMENT '需求数量', + `distribute_num` int DEFAULT NULL COMMENT '分配数量', + `pick_num` int DEFAULT NULL COMMENT '已拣数量', + `out_type` int NOT NULL COMMENT '出库类型', + `destination` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '终点', + `user_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '呼叫用户', + PRIMARY KEY (`task_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Records of t_app_outs_record +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_pick_task +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_pick_task`; +CREATE TABLE `t_app_pick_task` ( + `pick_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '拣选任务号', + `pick_stand` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '拣选终点', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号', + `pick_status` int NOT NULL COMMENT '任务状态', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `send_time` datetime DEFAULT NULL COMMENT '下发时间', + `arrive_time` datetime DEFAULT NULL COMMENT '到达时间', + `leave_time` datetime DEFAULT NULL COMMENT '离开时间', + PRIMARY KEY (`pick_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_pick_task +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_pick_task_bak +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_pick_task_bak`; +CREATE TABLE `t_app_pick_task_bak` ( + `pick_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '拣选任务号', + `pick_stand` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '拣选终点', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号', + `pick_status` int NOT NULL COMMENT '任务状态', + `create_time` datetime DEFAULT NULL COMMENT '创建时间', + `send_time` datetime DEFAULT NULL COMMENT '下发时间', + `arrive_time` datetime DEFAULT NULL COMMENT '到达时间', + `leave_time` datetime DEFAULT NULL COMMENT '离开时间', + PRIMARY KEY (`pick_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_pick_task_bak +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_a', 'P1', 'ASRS-1245', 4, '2025-02-13 09:45:05', '2025-02-13 11:11:11', '2025-02-13 11:12:31', '2025-02-13 12:05:49'); +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_aa', 'P1', 'ASRS-1245', 5, '2025-02-13 09:45:05', '2025-02-13 13:39:42', '2025-02-13 13:52:54', '2025-02-13 13:52:54'); +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_b', 'P1', 'ASRS-1245', 4, '2025-02-13 09:45:05', '2025-02-13 12:16:57', '2025-02-13 12:17:44', '2025-02-13 12:18:06'); +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_bb', 'P2', 'ASRS-1245', 4, '2025-02-13 09:45:05', '2025-02-13 13:39:42', '2025-02-13 13:41:08', '2025-02-13 13:53:29'); +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_c', 'P2', 'ASRS-1245', 4, '2025-02-13 09:45:05', '2025-02-13 12:22:58', '2025-02-13 12:23:39', '2025-02-13 12:23:46'); +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_cc', 'P3', 'ASRS-1245', 4, '2025-02-13 09:45:05', '2025-02-13 13:39:43', '2025-02-13 13:40:21', '2025-02-13 13:40:52'); +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_d', 'P3', 'ASRS-1245', 4, '2025-02-13 09:45:05', '2025-02-13 12:35:37', '2025-02-13 12:37:11', '2025-02-13 12:37:19'); +INSERT INTO `t_app_pick_task_bak` (`pick_id`, `pick_stand`, `vehicle_id`, `pick_status`, `create_time`, `send_time`, `arrive_time`, `leave_time`) VALUES ('pick_e', 'P1', 'ASRS-1245', 4, '2025-02-13 09:45:05', '2025-02-13 12:41:51', '2025-02-13 12:42:44', '2025-02-13 12:42:57'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_product +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_product`; +CREATE TABLE `t_app_product` ( + `template_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键id', + `model` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '机型', + `product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成品号--dbs零件号', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料号', + `goods_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料物料描述', + `quantity_1_pair` int NOT NULL COMMENT '单套数量', + `box_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料盒号', + `quantity_of_pair` int NOT NULL COMMENT '套数', + `first_import_time` datetime DEFAULT NULL COMMENT '初次导入时间', + `first_import_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '初次导入用户', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + PRIMARY KEY (`template_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_product +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_product` (`template_id`, `model`, `product_id`, `goods_id`, `goods_description`, `quantity_1_pair`, `box_no`, `quantity_of_pair`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974778010000', 'Neu', '2965662', '9T8668', '堵头', 1, 'A', 10, '2025-02-18 18:36:15', '管理员', NULL, NULL); +INSERT INTO `t_app_product` (`template_id`, `model`, `product_id`, `goods_id`, `goods_description`, `quantity_1_pair`, `box_no`, `quantity_of_pair`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974778010001', 'Neu', '2965662', '3D2824', 'O型圈', 1, 'A', 10, '2025-02-18 18:36:15', '管理员', NULL, NULL); +INSERT INTO `t_app_product` (`template_id`, `model`, `product_id`, `goods_id`, `goods_description`, `quantity_1_pair`, `box_no`, `quantity_of_pair`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974778010002', 'Neu', '2965662', '2935263', '弹簧', 1, 'A', 10, '2025-02-18 18:36:15', '管理员', NULL, NULL); +INSERT INTO `t_app_product` (`template_id`, `model`, `product_id`, `goods_id`, `goods_description`, `quantity_1_pair`, `box_no`, `quantity_of_pair`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974778010003', 'Neu', '2965662', '4475613', '唇形密封', 1, 'A', 10, '2025-02-18 18:36:15', '管理员', NULL, NULL); +INSERT INTO `t_app_product` (`template_id`, `model`, `product_id`, `goods_id`, `goods_description`, `quantity_1_pair`, `box_no`, `quantity_of_pair`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974778010004', 'Neu', '2965662', '6J4568', '保护套', 1, 'B', 10, '2025-02-18 18:36:15', '管理员', NULL, NULL); +INSERT INTO `t_app_product` (`template_id`, `model`, `product_id`, `goods_id`, `goods_description`, `quantity_1_pair`, `box_no`, `quantity_of_pair`, `first_import_time`, `first_import_user`, `last_update_time`, `last_update_user`) VALUES ('1739874974778010005', 'Neu', '2965662', '2521631', '堵头', 3, 'B', 10, '2025-02-18 18:36:15', '管理员', NULL, NULL); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_product_extend +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_product_extend`; +CREATE TABLE `t_app_product_extend` ( + `record_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'id', + `product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '总成号', + `single_product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '单片号', + `model` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '机型', + `first_import_time` datetime DEFAULT NULL COMMENT '导入时间', + `first_import_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '导入人员', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + PRIMARY KEY (`record_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_product_extend +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_single_product +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_single_product`; +CREATE TABLE `t_app_single_product` ( + `single_template_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键id', + `model` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '机型', + `product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成品号--dbs零件号', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料号', + `goods_description` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料物料描述', + `quantity_1_pair` int NOT NULL COMMENT '单套数量', + `box_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料盒号', + `quantity_of_pair` int NOT NULL COMMENT '套数', + `first_import_time` datetime DEFAULT NULL COMMENT '初次导入时间', + `first_import_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '初次导入用户', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + PRIMARY KEY (`single_template_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_single_product +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_stand +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_stand`; +CREATE TABLE `t_app_stand` ( + `stand_id` varchar(64) NOT NULL COMMENT '站台号', + `stand_type` int NOT NULL COMMENT '站台类型', + `stand_status` int NOT NULL COMMENT '站台状态', + `stand_ip` varchar(16) DEFAULT NULL COMMENT '站台电脑的ip', + `stand_name` varchar(64) NOT NULL COMMENT '站台名称', + `stand_desc` varchar(255) DEFAULT NULL COMMENT '站台描述', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) DEFAULT NULL COMMENT '上次更新用户', + PRIMARY KEY (`stand_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Records of t_app_stand +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('P1', 1, 1, '127.0.0.1', '1号拣选站台', '1号拣选站台', '2025-02-15 15:23:08', 'admin'); +INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('P2', 1, 1, 'xxx.xxx.xxx.xxx', '2号拣选站台', '2号拣选站台', '2025-02-15 15:23:41', 'admin'); +INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('P3', 1, 1, 'xxx.xxx.xxx.xxx', '3号拣选站台', '3号拣选站台', '2025-02-15 15:26:25', 'admin'); +INSERT INTO `t_app_stand` (`stand_id`, `stand_type`, `stand_status`, `stand_ip`, `stand_name`, `stand_desc`, `last_update_time`, `last_update_user`) VALUES ('R1', 2, 1, 'xxx.xxx.xxx.xxx', '1号入库站台', '1号入库站台', '2025-02-15 15:28:10', 'admin'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_stand_work +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_stand_work`; +CREATE TABLE `t_app_stand_work` ( + `work_id` varchar(64) NOT NULL COMMENT 'id', + `stand_id` varchar(64) NOT NULL COMMENT '站台号', + `work_order` varchar(64) NOT NULL COMMENT '工单', + `product_id` varchar(64) NOT NULL COMMENT '成品号', + `single_product_id` varchar(64) DEFAULT NULL COMMENT '单片号', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '料号', + `box_no` varchar(64) NOT NULL COMMENT '料盒号', + `plan_pick_qty` int DEFAULT NULL COMMENT '计划拣选数量', + `real_pick_qty` int DEFAULT NULL COMMENT '实际拣选数量', + `stock_id` varchar(64) DEFAULT NULL COMMENT '库存id', + `vehicle_id` varchar(64) DEFAULT NULL COMMENT '载具号', + `plan_remain_qty` int DEFAULT NULL COMMENT '计划剩余数量', + `real_remain_qty` int DEFAULT NULL COMMENT '实际剩余数量', + `is_out` int DEFAULT NULL COMMENT '是否是库外料', + `put_area` varchar(64) DEFAULT NULL COMMENT '存放位置', + PRIMARY KEY (`work_id`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Records of t_app_stand_work +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_stand_work` (`work_id`, `stand_id`, `work_order`, `product_id`, `single_product_id`, `goods_id`, `box_no`, `plan_pick_qty`, `real_pick_qty`, `stock_id`, `vehicle_id`, `plan_remain_qty`, `real_remain_qty`, `is_out`, `put_area`) VALUES ('1', 'P1', '110002140441', '2965662', NULL, '9T8668', 'AC', 1, 1, NULL, NULL, NULL, NULL, 1, '库外'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_stock +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_stock`; +CREATE TABLE `t_app_stock` ( + `stock_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库存id', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '容器编号', + `location_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '库位编号', + `stock_status` int NOT NULL COMMENT '库存状态', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '物料编号', + `goods_status` int NOT NULL COMMENT '物料状态', + `first_in_time` datetime DEFAULT NULL COMMENT '初次入库时间', + `first_in_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '初次入库用户', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + `total_num` int NOT NULL COMMENT '总数量', + `remain_num` int NOT NULL COMMENT '剩余数量', + `real_num` int NOT NULL COMMENT '库存实际数量', + PRIMARY KEY (`stock_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_stock +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_task +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_task`; +CREATE TABLE `t_app_task` ( + `task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '任务号', + `task_type` int NOT NULL COMMENT '任务类型', + `task_status` int NOT NULL COMMENT '任务状态', + `task_priority` int NOT NULL COMMENT '任务优先级,默认为1', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号', + `origin` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起点', + `destination` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '终点', + `wcs_task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '发送给wcs的任务号', + `create_time` datetime NOT NULL COMMENT '创建时间', + `finish_time` datetime DEFAULT NULL COMMENT '完成时间', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '物料编号', + `op_num` int DEFAULT NULL COMMENT '操作数量', + `stock_num` int DEFAULT NULL COMMENT '库存数量', + `op_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作用户', + `pre_task` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '前置任务', + `remark` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + `call_stand` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '请求的站台', + PRIMARY KEY (`task_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_task +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_task_bak +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_task_bak`; +CREATE TABLE `t_app_task_bak` ( + `task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '任务号', + `task_type` int NOT NULL COMMENT '任务类型', + `task_status` int NOT NULL COMMENT '任务状态', + `task_priority` int NOT NULL COMMENT '任务优先级,默认为1', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号', + `origin` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '起点', + `destination` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '终点', + `wcs_task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '发送给wcs的任务号', + `create_time` datetime NOT NULL COMMENT '创建时间', + `finish_time` datetime DEFAULT NULL COMMENT '完成时间', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '物料编号', + `op_num` int DEFAULT NULL COMMENT '操作数量', + `stock_num` int DEFAULT NULL COMMENT '库存数量', + `op_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '操作用户', + `pre_task` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '前置任务', + `remark` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注', + `call_stand` varchar(64) NOT NULL COMMENT '请求的站台', + PRIMARY KEY (`task_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_task_bak +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('a1', 2, 4, 1, 'ASRS-1245', 'A01-01-01', '', 'WCS_1739420528143010000', '2025-02-13 09:44:15', '2025-02-13 12:22:52', '000000000', 0, 0, NULL, NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('a2', 2, 4, 1, 'ASRS-1245', 'A01-01-03', '', 'WCS_1739421136043010000', '2025-02-13 09:44:15', '2025-02-13 12:32:56', '000000000', 0, 0, NULL, NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('a3', 2, 4, 1, 'ASRS-1245', 'A01-01-01', '', 'WCS_1739421667070010000', '2025-02-13 09:44:15', '2025-02-13 12:41:48', '000000000', 0, 0, NULL, NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('aa1', 2, 4, 1, 'ASRS-1245', 'A01-01-01', '', 'WCS_1739425137729010000', '2025-02-13 09:44:15', '2025-02-13 13:39:38', '000000000', 0, 0, NULL, NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('abcd', 2, 4, 1, 'ASRS-1245', 'A01-01-01', '', 'WCS_1739411656187010000', '2025-02-13 09:44:15', '2025-02-13 10:29:38', '000000000', 0, 0, NULL, NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('abcde', 2, 4, 1, 'ASRS-1245', 'A01-01-03', '', 'WCS_1739420169126010000', '2025-02-13 09:44:15', '2025-02-13 12:16:50', '000000000', 0, 0, NULL, NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('BACK_1739419548807010000', 1, 4, 1, 'ASRS-1245', 'P1', 'A01-01-03', 'WCS_1739419564483010000', '2025-02-13 12:05:49', '2025-02-13 12:06:56', '000000000', 0, 0, 'wms_auto', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('BACK_1739420285551010000', 1, 4, 1, 'ASRS-1245', 'P1', 'A01-01-01', 'WCS_1739420299647010000', '2025-02-13 12:18:06', '2025-02-13 12:19:13', '000000000', 0, 0, 'wms_auto', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('BACK_1739420625899010000', 1, 4, 1, 'ASRS-1245', 'P2', 'A01-01-03', 'WCS_1739420645174010000', '2025-02-13 12:23:46', '2025-02-13 12:24:57', '000000000', 0, 0, 'wms_auto', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('BACK_1739421438722010000', 1, 4, 1, 'ASRS-1245', 'P3', 'A01-01-01', 'WCS_1739421464995010000', '2025-02-13 12:37:19', '2025-02-13 12:38:37', '000000000', 0, 0, 'wms_auto', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('BACK_1739421777423010000', 1, 4, 1, 'ASRS-1245', 'P1', 'A01-01-01', 'WCS_1739421792045010000', '2025-02-13 12:42:57', '2025-02-13 12:44:03', '000000000', 0, 0, 'wms_auto', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('BACK_1739426009339010000', 1, 4, 1, 'ASRS-1245', 'P2', 'A01-01-01', 'WCS_1739426029425010000', '2025-02-13 13:53:29', '2025-02-13 13:54:40', '000000000', 0, 0, 'wms_auto', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('IN_EMPTY_1739407142409010000', 1, 4, 1, 'ASRS-1245', '', 'A01-01-01', 'WCS_1739410844980010000', '2025-02-13 08:39:02', '2025-02-13 09:42:25', '000000000', 0, 0, '', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('IN_EMPTY_1739426287407010000', 1, 4, 1, 'ASRS-0545', '', 'A01-01-03', 'WCS_1739426305775010000', '2025-02-13 13:58:07', '2025-02-13 13:59:21', '000000000', 0, 0, '', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('IN_EMPTY_1739426335785010000', 1, 4, 1, 'ASRS-1088', '', 'A01-01-05', 'WCS_1739426366194010000', '2025-02-13 13:58:56', '2025-02-13 14:01:01', '000000000', 0, 0, '', NULL, '', ''); +INSERT INTO `t_app_task_bak` (`task_id`, `task_type`, `task_status`, `task_priority`, `vehicle_id`, `origin`, `destination`, `wcs_task_id`, `create_time`, `finish_time`, `goods_id`, `op_num`, `stock_num`, `op_user`, `pre_task`, `remark`, `call_stand`) VALUES ('IN_EMPTY_1739426340807010000', 1, 4, 1, 'ASRS-1246', '', 'A01-01-04', 'WCS_1739426363078010000', '2025-02-13 13:59:01', '2025-02-13 14:00:17', '000000000', 0, 0, '', NULL, '', ''); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_vehicle +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_vehicle`; +CREATE TABLE `t_app_vehicle` ( + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号', + `is_empty` int NOT NULL COMMENT '是否空载具', + `vehicle_status` int NOT NULL COMMENT '载具状态', + `vehicle_type` varchar(16) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '料箱类型', + `is_lock` int DEFAULT NULL COMMENT '载具是否锁定', + `location_id` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '载具存放库位', + `last_in_time` datetime DEFAULT NULL COMMENT '上次入库时间', + PRIMARY KEY (`vehicle_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_vehicle +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-0545', 1, 2, '', 0, 'A01-01-03', '2025-02-13 13:59:22'); +INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-1088', 1, 2, '', 0, 'A01-01-05', '2025-02-13 14:01:02'); +INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-1245', 1, 2, '', 0, 'A01-01-01', '2025-02-13 13:54:41'); +INSERT INTO `t_app_vehicle` (`vehicle_id`, `is_empty`, `vehicle_status`, `vehicle_type`, `is_lock`, `location_id`, `last_in_time`) VALUES ('ASRS-1246', 1, 2, '', 0, 'A01-01-04', '2025-02-13 14:00:18'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_wcs_task +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_wcs_task`; +CREATE TABLE `t_app_wcs_task` ( + `wcs_task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'wcs任务号', + `wcs_task_status` int NOT NULL COMMENT 'wcs任务状态', + `wcs_task_type` int NOT NULL COMMENT '任务类型', + `task_priority` int NOT NULL COMMENT '任务优先级', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号', + `origin` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '起点', + `destination` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '终点', + `create_time` datetime NOT NULL COMMENT '创建时间', + `send_time` datetime DEFAULT NULL COMMENT '下发时间', + `finish_time` datetime DEFAULT NULL COMMENT '完成时间', + `remark` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注信息', + PRIMARY KEY (`wcs_task_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_wcs_task +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_wcs_task_bak +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_wcs_task_bak`; +CREATE TABLE `t_app_wcs_task_bak` ( + `wcs_task_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT 'wcs任务号', + `wcs_task_status` int NOT NULL COMMENT 'wcs任务状态', + `wcs_task_type` int NOT NULL COMMENT '任务类型', + `task_priority` int NOT NULL COMMENT '任务优先级', + `vehicle_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '载具号', + `origin` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '起点', + `destination` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '终点', + `create_time` datetime NOT NULL COMMENT '创建时间', + `send_time` datetime DEFAULT NULL COMMENT '下发时间', + `finish_time` datetime DEFAULT NULL COMMENT '完成时间', + `remark` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '备注信息', + PRIMARY KEY (`wcs_task_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_app_wcs_task_bak +-- ---------------------------- +BEGIN; +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739410844980010000', 2, 1, 1, 'ASRS-1245', '', 'A01-01-01', '2025-02-13 09:40:45', '2025-02-13 09:40:45', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739411656187010000', 2, 2, 1, 'ASRS-1245', 'A01-01-01', '', '2025-02-13 09:54:16', '2025-02-13 10:28:25', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739419564483010000', 2, 1, 1, 'ASRS-1245', 'P1', 'A01-01-03', '2025-02-13 12:06:04', '2025-02-13 12:06:04', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739420169126010000', 2, 2, 1, 'ASRS-1245', 'A01-01-03', '', '2025-02-13 12:16:09', '2025-02-13 12:16:11', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739420299647010000', 2, 1, 1, 'ASRS-1245', 'P1', 'A01-01-01', '2025-02-13 12:18:20', '2025-02-13 12:18:20', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739420528143010000', 2, 2, 1, 'ASRS-1245', 'A01-01-01', '', '2025-02-13 12:22:08', '2025-02-13 12:22:10', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739420645174010000', 2, 1, 1, 'ASRS-1245', 'P2', 'A01-01-03', '2025-02-13 12:24:05', '2025-02-13 12:24:05', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739421136043010000', 2, 2, 1, 'ASRS-1245', 'A01-01-03', '', '2025-02-13 12:32:16', '2025-02-13 12:32:18', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739421464995010000', 2, 1, 1, 'ASRS-1245', 'P3', 'A01-01-01', '2025-02-13 12:37:45', '2025-02-13 12:37:45', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739421667070010000', 2, 2, 1, 'ASRS-1245', 'A01-01-01', '', '2025-02-13 12:41:07', '2025-02-13 12:41:10', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739421792045010000', 2, 1, 1, 'ASRS-1245', 'P1', 'A01-01-01', '2025-02-13 12:43:12', '2025-02-13 12:43:12', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739425137729010000', 2, 2, 1, 'ASRS-1245', 'A01-01-01', '', '2025-02-13 13:38:58', '2025-02-13 13:39:00', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739426029425010000', 2, 1, 1, 'ASRS-1245', 'P2', 'A01-01-01', '2025-02-13 13:53:49', '2025-02-13 13:53:49', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739426305775010000', 2, 1, 1, 'ASRS-0545', '', 'A01-01-03', '2025-02-13 13:58:26', '2025-02-13 13:58:26', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739426363078010000', 2, 1, 1, 'ASRS-1246', '', 'A01-01-04', '2025-02-13 13:59:23', '2025-02-13 13:59:23', NULL, NULL); +INSERT INTO `t_app_wcs_task_bak` (`wcs_task_id`, `wcs_task_status`, `wcs_task_type`, `task_priority`, `vehicle_id`, `origin`, `destination`, `create_time`, `send_time`, `finish_time`, `remark`) VALUES ('WCS_1739426366194010000', 2, 1, 1, 'ASRS-1088', '', 'A01-01-05', '2025-02-13 13:59:26', '2025-02-13 13:59:26', NULL, NULL); +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_work +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_work`; +CREATE TABLE `t_app_work` ( + `work_index` varchar(255) NOT NULL COMMENT '主键,用于确认唯一一条数据。', + `work_order` varchar(64) NOT NULL COMMENT '工单', + `plan_start_date` date NOT NULL COMMENT '计划开工日期', + `product_id` varchar(64) NOT NULL COMMENT '成品号', + `single_product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '单片号', + `box_no` varchar(64) NOT NULL COMMENT '料盒号', + `goods_id` varchar(64) NOT NULL COMMENT '原材料号', + `need_num` int NOT NULL COMMENT '需求数量', + `distribute_num` int NOT NULL COMMENT '已分配数量', + `finish_num` int NOT NULL COMMENT '已完成数量', + `work_stand` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '工作站台', + `work_status` int NOT NULL COMMENT '工作状态', + `work_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '工作用户', + `create_time` datetime NOT NULL COMMENT '创建时间', + `finish_time` datetime DEFAULT NULL COMMENT '完成时间', + `lack_status` int DEFAULT NULL COMMENT '缺料状态', + `is_out` int DEFAULT NULL COMMENT '是否是库外料', + PRIMARY KEY (`work_index`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Records of t_app_work +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_app_work_record +-- ---------------------------- +DROP TABLE IF EXISTS `t_app_work_record`; +CREATE TABLE `t_app_work_record` ( + `work_index` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键,用于确认唯一一条数据。', + `work_order` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '工单', + `plan_start_date` date NOT NULL COMMENT '计划开工日期', + `product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '成品号', + `single_product_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '单片号', + `box_no` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '料盒号', + `goods_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '原材料号', + `need_num` int NOT NULL COMMENT '需求数量', + `finish_num` int NOT NULL COMMENT '已完成数量', + `work_stand` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '工作站台', + `work_status` int NOT NULL COMMENT '工作状态', + `work_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '工作用户', + `create_time` datetime NOT NULL COMMENT '创建时间', + `finish_time` datetime NOT NULL COMMENT '完成时间', + `lack_status` int NOT NULL COMMENT '缺料状态', + `is_out` int NOT NULL COMMENT '是否是库外料', + PRIMARY KEY (`work_index`) +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci; + +-- ---------------------------- +-- Records of t_app_work_record +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_sys_menu +-- ---------------------------- +DROP TABLE IF EXISTS `t_sys_menu`; +CREATE TABLE `t_sys_menu` ( + `menu_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '菜单id', + `label_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '菜单名称', + `icon_value` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '图标名称', + `path` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '菜单地址', + `parent_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '父菜单编号', + PRIMARY KEY (`menu_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_sys_menu +-- ---------------------------- +BEGIN; +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231780010000', '操作', 'Operation', '', '0'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231782010000', '数据 ', 'Histogram', '', '0'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231782010001', '系统', 'Setting', '', '0'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231782010002', '测试', 'Lock', '', '0'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231782010003', '入库', '', '/goodsIn', '1733384231780010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010000', '出库', '', '/goodsOut', '1733384231780010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010001', '配料', '', '/kitting', '1733384231780010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010004', '盘点', '', '/inventory', '1733384231780010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010006', '需求看板', '', '/clcKanban', '1733384231780010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010007', '库存信息', '', '/stock', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010008', '库存更新记录', '', '/stockUpdateRecord', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010009', '物料信息', '', '/goods', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010010', '入库记录', '', '/inTaskRecord', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010011', '出库记录', '', '/outTaskRecord', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010012', '盘点记录', '', '/inventoryRecord', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010013', '任务监控', '', '/taskMonitor', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010014', '拣选任务', '', '/pickTask', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010016', '工作流', '', '/workFlow', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010017', '库位监控', '', '/location', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010019', '站台监控', '', '/standSettings', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010020', '料箱监控', '', '/vehicles', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010021', '接口日志', '', '/wmsLog', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010022', '工作总结', '', '/workSummary', '1733384231782010000'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010023', '系统配置', '', '/config', '1733384231782010001'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010025', '上传DBS', '', '/uploadDbs', '1733384231782010001'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010026', '上传工单', '', '/uploadOrders', '1733384231782010001'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231783010028', '用户列表', '', '/roleUser', '1733384231782010001'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231784010000', '角色列表', '', '/rolePermission', '1733384231782010001'); +INSERT INTO `t_sys_menu` (`menu_id`, `label_name`, `icon_value`, `path`, `parent_id`) VALUES ('1733384231784011111', '测试', '', '/test', '1733384231782010002'); +COMMIT; + +-- ---------------------------- +-- Table structure for t_sys_permission +-- ---------------------------- +DROP TABLE IF EXISTS `t_sys_permission`; +CREATE TABLE `t_sys_permission` ( + `permission_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '主键', + `role_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '角色id', + `menu_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '菜单id', + PRIMARY KEY (`permission_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_sys_permission +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_sys_role +-- ---------------------------- +DROP TABLE IF EXISTS `t_sys_role`; +CREATE TABLE `t_sys_role` ( + `role_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '角色id', + `role_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '角色名', + `role_desc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '角色描述', + `leader_role` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '上级角色id', + `role_status` int DEFAULT NULL COMMENT '角色状态', + `add_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人', + `add_time` datetime DEFAULT NULL COMMENT '创建时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + PRIMARY KEY (`role_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_sys_role +-- ---------------------------- +BEGIN; +INSERT INTO `t_sys_role` (`role_id`, `role_name`, `role_desc`, `leader_role`, `role_status`, `add_user`, `add_time`, `last_update_user`, `last_update_time`) VALUES ('0', '管理员', '管理员', '0', NULL, '', '2024-12-05 15:32:06', NULL, NULL); +COMMIT; + +-- ---------------------------- +-- Table structure for t_sys_setting +-- ---------------------------- +DROP TABLE IF EXISTS `t_sys_setting`; +CREATE TABLE `t_sys_setting` ( + `setting_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '设置id', + `setting_key` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置键', + `setting_value` varchar(1024) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置值', + `setting_type` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置类型:1.输入框2.下拉多选3.开关', + `setting_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '配置显示名称', + PRIMARY KEY (`setting_id`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_sys_setting +-- ---------------------------- +BEGIN; +COMMIT; + +-- ---------------------------- +-- Table structure for t_sys_user +-- ---------------------------- +DROP TABLE IF EXISTS `t_sys_user`; +CREATE TABLE `t_sys_user` ( + `login_account` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '登录账号', + `login_password` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '登录密码', + `user_name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '用户名---显示用', + `role_id` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '角色id', + `login_status` int DEFAULT NULL COMMENT '登录状态', + `account_status` int DEFAULT NULL COMMENT '账号状态', + `last_login_device` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次登录设备', + `last_login_time` datetime DEFAULT NULL COMMENT '上次登录时间', + `add_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '创建人', + `add_time` datetime DEFAULT NULL COMMENT '创建时间', + `last_update_user` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '上次更新用户', + `last_update_time` datetime DEFAULT NULL COMMENT '上次更新时间', + PRIMARY KEY (`login_account`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci ROW_FORMAT=DYNAMIC; + +-- ---------------------------- +-- Records of t_sys_user +-- ---------------------------- +BEGIN; +INSERT INTO `t_sys_user` (`login_account`, `login_password`, `user_name`, `role_id`, `login_status`, `account_status`, `last_login_device`, `last_login_time`, `add_user`, `add_time`, `last_update_user`, `last_update_time`) VALUES ('admin', '21232F40A8D484C349B21948A7B055815E760A02D821A52D5376778C931DF35D6D4074442DEEE5AC6A90508727871B51F5CADB297A57A5A743894A0E4A801FC374D839D98630E280DF752E8939454A6BBB7FF6177EE612EF9DC6ACD3A9EA7EA9E7EC48F7ADB381FD3EAF34432D987EA6368947B562FC76640457410E9DF1952', '管理员', '0', NULL, NULL, NULL, NULL, '开发者', '2024-12-05 15:38:57', NULL, NULL); +COMMIT; + +SET FOREIGN_KEY_CHECKS = 1; diff --git a/src/test/java/com/wms_main/DevWmsServeApplicationTests.java b/src/test/java/com/wms_main/DevWmsServeApplicationTests.java new file mode 100644 index 0000000..eae01e1 --- /dev/null +++ b/src/test/java/com/wms_main/DevWmsServeApplicationTests.java @@ -0,0 +1,13 @@ +package com.wms_main; + +import org.junit.jupiter.api.Test; +import org.springframework.boot.test.context.SpringBootTest; + +@SpringBootTest +class DevWmsServeApplicationTests { + + @Test + void contextLoads() { + } + +}