From b5ef65d0103a71dc7af2b9be6d2ac43aca5bb726 Mon Sep 17 00:00:00 2001
From: 无关风月 <443237572@qq.com>
Date: 星期二, 27 八月 2024 08:59:57 +0800
Subject: [PATCH] 代码提交 bug解决

---
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionRkgInfoVO.java              |    9 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionCkQuery.java  |    2 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java         |   14 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionZyglCodeQuery.java         |   17 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java                             |    2 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java                  |   46 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionZygl.java                    |    2 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDCKGLDTO.java                            |    3 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionCkService.java              |    1 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementServiceImpl.java        |   89 ++
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/AddSlVolumeProductionCkDTO.java            |    2 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java            |   32 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/InventoriesSuppliesInfoService.java           |    3 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ConservatorQueryA.java                             |   21 
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml                                       |    2 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ResetPwdDTO.java                                   |    9 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java                                  |    8 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementController.java           |    7 
 ruoyi-modules/ruoyi-system/src/main/resources/mybatis-config.xml                                                        |    2 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateQrCodeNumDTO.java                    |   13 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateZyQrCodeDTO.java                     |   17 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/InventoriesSuppliesMapper.java                 |    3 
 .idea/jarRepositories.xml                                                                                               |   10 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysOperlogController.java                          |    3 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAudit.java                                   |    4 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java              |    1 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/getVolumeProductionRkgCodeVO.java           |   14 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionRkgCodeQuery.java          |    3 
 ruoyi-modules/ruoyi-management/src/main/resources/bootstrap.yml                                                         |   12 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionzZyglVO.java                |    2 
 ruoyi-gateway/src/main/resources/bootstrap.yml                                                                          |   14 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java      |   47 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/ScanCodesController.java                   |    2 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionCkglInfoVO.java             |    8 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/goodsMaterialsNmVO.java                     |    4 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyServiceImpl.java     |  111 ++
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/OssController.java                         |    1 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java  |   64 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkController.java        |   21 
 ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/SlGoodsMaterialsMapper.xml                          |   18 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/DeleteCKDTO.java                           |   21 
 ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java          |    6 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionZyglInfoVO.java             |    6 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java   |  149 +++-
 ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml                                                             |   20 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/HomeStatisticsServiceImpl.java           |   14 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java        |    6 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyController.java        |   36 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAuditRecord.java                             |    6 
 ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/InventoriesSuppliesMapper.xml                       |    5 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkglController.java      |    7 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementService.java                 |    3 
 ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml                                                               |    4 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/InventoriesSuppliesInfoVO.java              |    2 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java                                       |    4 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysOperLog.java                                    |   56 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/ManagementimgVolumeProductionCkVO.java      |    5 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java   |   20 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDPdDTO.java                              |   16 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlRegionController.java                    |    8 
 ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml                                           |    3 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/GetNumberAndShelfVO.java                    |   20 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRk.java                      |   13 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java |   12 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRkVO.java                    |   96 ++
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java             |    2 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkglServiceImpl.java   |   69 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java              |   44 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementImgController.java        |    4 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementImgServiceImpl.java     |    5 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/SlGoodsShelfVO.java                         |    2 
 ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java                            |    1 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyglController.java      |  165 ++++
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java     |   28 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/websocket/WebSocketUsers.java                                 |    3 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlEquipmentController.java                 |    5 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlEquipmentService.java                       |    3 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementImgService.java              |    2 
 ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java                                                    |    6 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/GetMaterialsByManagementIdQuery.java       |    4 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/PdInfoVO.java                               |   20 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionZyVO.java     |   12 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java     |  126 +++
 ruoyi-auth/src/main/resources/bootstrap.yml                                                                             |    4 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/SlGoodsMaterialsMapper.java                    |    2 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysDeptController.java                             |    6 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/InventoriesSuppliesInfoController.java     |   50 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionZyglService.java            |    4 
 /dev/null                                                                                                               |   74 --
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkglController.java      |   11 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java                             |   49 +
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java                          |    9 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlGoodsMaterialsController.java            |   38 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/InventoriesSuppliesInfoDTO.java            |    4 
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ZyRkDTO.java                               |   14 
 ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java                          |   33 
 96 files changed, 1,587 insertions(+), 393 deletions(-)

diff --git a/.idea/jarRepositories.xml b/.idea/jarRepositories.xml
index c48ef6b..7857c3e 100644
--- a/.idea/jarRepositories.xml
+++ b/.idea/jarRepositories.xml
@@ -17,9 +17,19 @@
       <option name="url" value="https://repo1.maven.org/maven2" />
     </remote-repository>
     <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Central Repository" />
+      <option name="url" value="http://maven.aliyun.com/nexus/content/groups/public" />
+    </remote-repository>
+    <remote-repository>
       <option name="id" value="jboss.community" />
       <option name="name" value="JBoss Community repository" />
       <option name="url" value="https://repository.jboss.org/nexus/content/repositories/public/" />
     </remote-repository>
+    <remote-repository>
+      <option name="id" value="central" />
+      <option name="name" value="Central Repository" />
+      <option name="url" value="https://maven.aliyun.com/repository/public" />
+    </remote-repository>
   </component>
 </project>
\ No newline at end of file
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysOperLog.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysOperLog.java
index f8def5f..7c04b64 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysOperLog.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysOperLog.java
@@ -2,7 +2,6 @@
 
 import java.util.Date;
 
-import com.baomidou.mybatisplus.annotation.FieldFill;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.common.core.annotation.Excel;
@@ -12,7 +11,7 @@
 
 /**
  * 操作日志记录表 oper_log
- * 
+ *
  * @author ruoyi
  */
 @Data
@@ -22,33 +21,74 @@
 
     /** 日志主键 */
     @Excel(name = "操作序号", cellType = ColumnType.NUMERIC)
-    @TableField(value = "oper_id")
     private Long operId;
 
     /** 操作模块 */
     @Excel(name = "操作模块")
     private String title;
 
+    /** 业务类型(0其它 1新增 2修改 3删除) */
+    @Excel(name = "业务类型", readConverterExp = "0=其它,1=新增,2=修改,3=删除,4=授权,5=导出,6=导入,7=强退,8=生成代码,9=清空数据")
+    private Integer businessType;
+
+    /** 业务类型数组 */
+    @TableField(exist = false)
+    private Integer[] businessTypes;
+
+    /** 请求方法 */
+    @Excel(name = "请求方法")
+    private String method;
+
+    /** 请求方式 */
+    @Excel(name = "请求方式")
+    private String requestMethod;
+
+    /** 操作类别(0其它 1后台用户 2手机端用户) */
+    @Excel(name = "操作类别", readConverterExp = "0=其它,1=后台用户,2=手机端用户")
+    private Integer operator_type;
+
     /** 操作人员 */
     @Excel(name = "操作人员")
-    @TableField(value = "oper_name")
     private String operName;
 
     /** 部门名称 */
     @Excel(name = "部门名称")
-    @TableField(value = "dept_name")
     private String deptName;
+
+    /** 请求url */
+    @Excel(name = "请求地址")
+    private String operUrl;
+
+    /** 操作地址 */
+    @Excel(name = "操作地址")
+    private String operIp;
+
+    /** 请求参数 */
+    @Excel(name = "请求参数")
+    private String operParam;
+
+    /** 返回参数 */
+    @Excel(name = "返回参数")
+    private String jsonResult;
+
+    /** 操作状态(0正常 1异常) */
+    @Excel(name = "状态", readConverterExp = "0=正常,1=异常")
+    private Integer status;
+
+    /** 错误消息 */
+    @Excel(name = "错误消息")
+    private String errorMsg;
 
     /** 操作时间 */
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
     @Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
-    @TableField(value = "oper_time")
     private Date operTime;
 
+    /** 消耗时间 */
+    @Excel(name = "消耗时间", suffix = "毫秒")
+    private Long costTime;
 
     @Excel(name = "电话")
     private String phone;
-
-
 
 }
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java
index 363bb5a..d4c8d9b 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/domain/SysUser.java
@@ -130,15 +130,19 @@
      *
      */
     @ApiModelProperty(value = "角色类型  1=平台 2=省级 3=市州级 4=市县级,5 乡镇级,6 经营单位", hidden = true)
+    @TableField("roleType")
     private Integer roleType;
 
     @Excel(name = "密码修改时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss", type = Type.EXPORT)
+    @TableField("passWordUpdate")
     private Date passWordUpdate;
 
     @ApiModelProperty(value = "对象ID")
+    @TableField("objectId")
     private Integer objectId;
 
     @ApiModelProperty(value = "备注")
+    @TableField("remark")
     private String remark;
 
     @ApiModelProperty(value = "角色名称")
diff --git a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java
index a0622da..4b297bc 100644
--- a/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java
+++ b/ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/feignClient/SysUserClient.java
@@ -26,7 +26,6 @@
     R<Boolean>  updateSysUser(@RequestBody SysUser sysUser);
 
 
-
     @PostMapping("/user/getUserSupplierList")
     R<List<SysUser>> getUserSupplierList(@RequestBody getVolumeProductionRkQuery getVolumeProductionRkQuery);
 
diff --git a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java
index 15f71b3..1f49d12 100644
--- a/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java
+++ b/ruoyi-auth/src/main/java/com/ruoyi/auth/service/SysLoginService.java
@@ -106,9 +106,9 @@
             recordLogService.recordLogininfor(username, Constants.LOGIN_FAIL, "用户已停用,请联系管理员");
             throw new ServiceException("对不起,您的账号:" + username + " 已停用");
         }
-        if (user.getUserType().equals("02")){
-            throw new ServiceException("登录失败,登录账号权限不足");
-        }
+//        if (user.getUserType().equals("02")){
+//            throw new ServiceException("登录失败,登录账号权限不足");
+//        }
 
         if (org.springframework.util.StringUtils.hasLength(seBei) && user.getUserType().equals("03")){
             SeBei se=new SeBei();
diff --git a/ruoyi-auth/src/main/resources/bootstrap.yml b/ruoyi-auth/src/main/resources/bootstrap.yml
index 4c628be..9746f8d 100644
--- a/ruoyi-auth/src/main/resources/bootstrap.yml
+++ b/ruoyi-auth/src/main/resources/bootstrap.yml
@@ -17,13 +17,13 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 127.0.0.1:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
       config:
         # 配置中心地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 127.0.0.1:8848
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
         group: DEFAULT_GROUP
         name: ${spring.application.name}
diff --git a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java
index a9cb1b7..5c7979e 100644
--- a/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java
+++ b/ruoyi-common/ruoyi-common-security/src/main/java/com/ruoyi/common/security/handler/GlobalExceptionHandler.java
@@ -33,10 +33,6 @@
 {
     private static final Logger log = LoggerFactory.getLogger(GlobalExceptionHandler.class);
 
-    @Value("${spring.servlet.multipart.max-file-size:4MB}")
-    private String maxFileSize;
-    @Value("${spring.servlet.multipart.max-request-size:100MB}")
-    private String maxRequestSize;
 
 
     /**
@@ -149,6 +145,6 @@
     @ExceptionHandler(MaxUploadSizeExceededException.class)
     public AjaxResult fileUpLoad(MaxUploadSizeExceededException e) {
         log.error("上传文件异常 => : {}", e.getMessage());
-        return AjaxResult.error("文件识别大小超出限制,允许的大小在" + maxFileSize);
+        return AjaxResult.error("文件识别大小超出限制,允许的大小在" + "500MB");
     }
 }
diff --git a/ruoyi-gateway/src/main/resources/bootstrap.yml b/ruoyi-gateway/src/main/resources/bootstrap.yml
index a30630f..5fa7cbf 100644
--- a/ruoyi-gateway/src/main/resources/bootstrap.yml
+++ b/ruoyi-gateway/src/main/resources/bootstrap.yml
@@ -8,6 +8,12 @@
   profiles:
     # 环境配置
     active: dev
+  #maxFileSize 单个数据大小
+  servlet:
+    multipart:
+      max-file-size: 500MB
+      #maxRequestSize 是总数据大小
+      max-request-size: 500MB
 ---
 spring:
   config:
@@ -17,13 +23,13 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
       config:
         # 配置中心地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
         group: DEFAULT_GROUP
         name: ${spring.application.name}
@@ -37,12 +43,12 @@
       eager: true
       transport:
         # 控制台地址
-        dashboard: 192.168.110.188:8718
+        dashboard: 192.168.110.64:8718
       # nacos配置持久化
       datasource:
         ds1:
           nacos:
-            server-addr: 192.168.110.235:8848
+            server-addr: 192.168.110.64:8848
             dataId: sentinel-ruoyi-gateway
             groupId: DEFAULT_GROUP
             data-type: json
diff --git a/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml
index d50644a..059ab87 100644
--- a/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml
+++ b/ruoyi-modules/ruoyi-file/src/main/resources/bootstrap.yml
@@ -23,13 +23,13 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
       config:
         # 配置中心地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
         group: DEFAULT_GROUP
         name: ${spring.application.name}
diff --git a/ruoyi-modules/ruoyi-file/target/classes/banner.txt b/ruoyi-modules/ruoyi-file/target/classes/banner.txt
deleted file mode 100644
index 27cacb9..0000000
--- a/ruoyi-modules/ruoyi-file/target/classes/banner.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-Spring Boot Version: ${spring-boot.version}
-Spring Application Name: ${spring.application.name}
-                            _           __  _  _       
-                           (_)         / _|(_)| |      
- _ __  _   _   ___   _   _  _  ______ | |_  _ | |  ___ 
-| '__|| | | | / _ \ | | | || ||______||  _|| || | / _ \
-| |   | |_| || (_) || |_| || |        | |  | || ||  __/
-|_|    \__,_| \___/  \__, ||_|        |_|  |_||_| \___|
-                      __/ |                            
-                     |___/                             
\ No newline at end of file
diff --git a/ruoyi-modules/ruoyi-file/target/classes/logback.xml b/ruoyi-modules/ruoyi-file/target/classes/logback.xml
deleted file mode 100644
index ed6c17d..0000000
--- a/ruoyi-modules/ruoyi-file/target/classes/logback.xml
+++ /dev/null
@@ -1,74 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<configuration scan="true" scanPeriod="60 seconds" debug="false">
-    <!-- 日志存放路径 -->
-	<property name="log.path" value="logs/ruoyi-file" />
-   <!-- 日志输出格式 -->
-	<property name="log.pattern" value="%d{HH:mm:ss.SSS} [%thread] %-5level %logger{20} - [%method,%line] - %msg%n" />
-
-    <!-- 控制台输出 -->
-	<appender name="console" class="ch.qos.logback.core.ConsoleAppender">
-		<encoder>
-			<pattern>${log.pattern}</pattern>
-		</encoder>
-	</appender>
-
-    <!-- 系统日志输出 -->
-	<appender name="file_info" class="ch.qos.logback.core.rolling.RollingFileAppender">
-	    <file>${log.path}/info.log</file>
-        <!-- 循环政策:基于时间创建日志文件 -->
-		<rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 日志文件名格式 -->
-			<fileNamePattern>${log.path}/info.%d{yyyy-MM-dd}.log</fileNamePattern>
-			<!-- 日志最大的历史 60天 -->
-			<maxHistory>60</maxHistory>
-		</rollingPolicy>
-		<encoder>
-			<pattern>${log.pattern}</pattern>
-		</encoder>
-		<filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <!-- 过滤的级别 -->
-            <level>INFO</level>
-            <!-- 匹配时的操作:接收(记录) -->
-            <onMatch>ACCEPT</onMatch>
-            <!-- 不匹配时的操作:拒绝(不记录) -->
-            <onMismatch>DENY</onMismatch>
-        </filter>
-	</appender>
-
-    <appender name="file_error" class="ch.qos.logback.core.rolling.RollingFileAppender">
-	    <file>${log.path}/error.log</file>
-        <!-- 循环政策:基于时间创建日志文件 -->
-        <rollingPolicy class="ch.qos.logback.core.rolling.TimeBasedRollingPolicy">
-            <!-- 日志文件名格式 -->
-            <fileNamePattern>${log.path}/error.%d{yyyy-MM-dd}.log</fileNamePattern>
-			<!-- 日志最大的历史 60天 -->
-			<maxHistory>60</maxHistory>
-        </rollingPolicy>
-        <encoder>
-            <pattern>${log.pattern}</pattern>
-        </encoder>
-        <filter class="ch.qos.logback.classic.filter.LevelFilter">
-            <!-- 过滤的级别 -->
-            <level>ERROR</level>
-			<!-- 匹配时的操作:接收(记录) -->
-            <onMatch>ACCEPT</onMatch>
-			<!-- 不匹配时的操作:拒绝(不记录) -->
-            <onMismatch>DENY</onMismatch>
-        </filter>
-    </appender>
-
-    <!-- 系统模块日志级别控制  -->
-	<logger name="com.ruoyi" level="info" />
-	<!-- Spring日志级别控制  -->
-	<logger name="org.springframework" level="warn" />
-
-	<root level="info">
-		<appender-ref ref="console" />
-	</root>
-	
-	<!--系统操作日志-->
-    <root level="info">
-        <appender-ref ref="file_info" />
-        <appender-ref ref="file_error" />
-    </root>
-</configuration>
\ No newline at end of file
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/InventoriesSuppliesInfoController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/InventoriesSuppliesInfoController.java
index d36a316..16b76ab 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/InventoriesSuppliesInfoController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/InventoriesSuppliesInfoController.java
@@ -3,23 +3,26 @@
 
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.management.domain.InventoriesSupplies;
 import com.ruoyi.management.domain.InventoriesSuppliesInfo;
-import com.ruoyi.management.domain.dto.InventoriesSuppDTO;
-import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoDTO;
-import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoQuery;
-import com.ruoyi.management.domain.dto.InventoriesSuppliesQuery;
+import com.ruoyi.management.domain.SlStoreManagement;
+import com.ruoyi.management.domain.dto.*;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesInfoVO;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesVO;
+import com.ruoyi.management.domain.vo.PdInfoVO;
+import com.ruoyi.management.mapper.SlVolumeProductionRkMapper;
 import com.ruoyi.management.service.InventoriesSuppliesInfoService;
+import com.ruoyi.management.service.InventoriesSuppliesService;
+import com.ruoyi.management.service.SlGoodsMaterialsService;
+import com.ruoyi.management.service.SlStoreManagementService;
+import com.ruoyi.system.api.feignClient.SysUserClient;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
 import java.util.List;
 
 /**
@@ -34,9 +37,30 @@
 @RequestMapping("/inventories-supplies-info")
 @Api(value = "物资盘点详情接口", tags = "物资盘点详情接口", description = "物资盘点详情接口")
 public class InventoriesSuppliesInfoController {
+    @Resource
+    private SysUserClient sysUserClient;
 
+    @Autowired
+    private SlGoodsMaterialsService slGoodsMaterialsService;
     @Resource
     private InventoriesSuppliesInfoService inventoriesSuppliesInfoService;
+    @Resource
+    private InventoriesSuppliesService inventoriesSuppliesService;
+    @Autowired
+    private SlStoreManagementService slStoreManagementService;
+    @GetMapping("/getInfoById")
+    @ApiOperation(value = "根据盘点id获取盘点信息")
+    public R<PdInfoVO> inventoriesSuppliesInfoService(Long id) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        InventoriesSupplies byId = inventoriesSuppliesService.getById(id);
+        String format = simpleDateFormat.format(byId.getPdTime());
+        SlStoreManagement byId1 = slStoreManagementService.getById(byId.getMaterialsId());
+        PdInfoVO pdInfoVO = new PdInfoVO();
+        pdInfoVO.setManagementName(byId1.getStoreManagementName());
+        pdInfoVO.setPdName(byId.getPdrName());
+        pdInfoVO.setPdTime(format);
+        return R.ok(pdInfoVO);
+    }
     @PostMapping("/getInventoriesSuppliesInfoList")
     @ApiOperation(value = "分页获物资盘点详情")
     public R<PageDTO<InventoriesSuppliesInfoVO>> inventoriesSuppliesInfoService(@RequestBody InventoriesSuppliesInfoQuery inventoriesSuppliesInfoQuery) {
@@ -58,13 +82,13 @@
 
     @PostMapping("/submitInventoriesSuppliesInfo")
     @ApiOperation(value = "提交物资盘点数据")
-    public R submitInventoriesSuppliesInfo(@RequestBody InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO) {
-        inventoriesSuppliesInfoService.submitInventoriesSuppliesInfo(inventoriesSuppliesInfoDTO);
-        return R.ok();
+    public R submitInventoriesSuppliesInfo(@RequestBody ADDPdDTO dto) {
+
+        return R.ok(inventoriesSuppliesInfoService.submitInventoriesSuppliesInfo(dto));
     }
 
     @PostMapping("/accomplishInventoriesSuppliesInfo")
-    @ApiOperation(value = "完成物资盘点数据")
+    @ApiOperation(value = "完成物资盘点数据--更新库存")
     public R accomplishInventoriesSuppliesInfo(@RequestBody InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO) {
         inventoriesSuppliesInfoService.accomplishInventoriesSuppliesInfo(inventoriesSuppliesInfoDTO);
         return R.ok();
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/OssController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/OssController.java
index bc2f249..5c7180f 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/OssController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/OssController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.management.controller;
 
 
+import com.ruoyi.common.core.domain.R;
 import com.ruoyi.management.util.ObsUploadUtil;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/ScanCodesController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/ScanCodesController.java
index 3a5bd48..b76a5d0 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/ScanCodesController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/ScanCodesController.java
@@ -21,7 +21,7 @@
 
     @GetMapping("/scanCodes")
     @ApiOperation(value = "安卓扫描传输数据")
-    public R scanCodes(String rkNumber) {
+    public R scanCodes(String rkNumber,String code) {
         inventoriesSuppliesService.scanCodes(rkNumber);
         return R.ok();
     }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlEquipmentController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlEquipmentController.java
index 447f8aa..5e9fc94 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlEquipmentController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlEquipmentController.java
@@ -3,6 +3,7 @@
 
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.management.domain.SlEquipment;
 import com.ruoyi.management.domain.dto.InventoriesSuppDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesQuery;
@@ -43,9 +44,9 @@
 
     @PostMapping("/addSlEquipment")
     @ApiOperation(value = "添加设备管理")
-    public R addSlEquipment(@RequestBody SlEquipmentDTO slEquipmentDTO) {
+    public AjaxResult addSlEquipment(@RequestBody SlEquipmentDTO slEquipmentDTO) {
         slEquipmentService.addSlEquipment(slEquipmentDTO);
-        return R.ok();
+        return slEquipmentService.addSlEquipment(slEquipmentDTO);
     }
 
     @ApiOperation("删除设备管理")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlGoodsMaterialsController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlGoodsMaterialsController.java
index b902be0..7583bed 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlGoodsMaterialsController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlGoodsMaterialsController.java
@@ -2,6 +2,7 @@
 
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.bean.BeanUtils;
@@ -15,8 +16,12 @@
 import com.ruoyi.management.domain.vo.SlGoodsShelfVO;
 import com.ruoyi.management.domain.vo.StoreManagementGoodSmaterialsVO;
 import com.ruoyi.management.mapper.ManagementGoodsMaterialsMapper;
+import com.ruoyi.management.mapper.SlVolumeProductionCkMapper;
+import com.ruoyi.management.mapper.SlVolumeProductionRkMapper;
+import com.ruoyi.management.mapper.SlVolumeProductionZyMapper;
 import com.ruoyi.management.service.ManagementGoodsMaterialsService;
 import com.ruoyi.management.service.SlGoodsMaterialsService;
+import com.ruoyi.management.service.SlStoreManagementService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -37,11 +42,7 @@
 @RequestMapping("/sl-goods-materials")
 @Api(value = "物资管理接口", tags = "物资管理接口", description = "物资管理接口")
 public class SlGoodsMaterialsController {
-    @Resource
-    private SlGoodsMaterialsService slGoodsMaterialsService;
 
-    @Resource
-    private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
 
     @PostMapping("/getGoodSmaterialsList")
     @ApiOperation(value = "分页获物资管理")
@@ -55,11 +56,40 @@
         slGoodsMaterialsService.addSlGoodsShelf(slGoodsMaterialsDTO);
         return R.ok();
     }
+    @Resource
+    private SlGoodsMaterialsService slGoodsMaterialsService;
 
+    @Resource
+    private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
+    @Resource
+    private SlVolumeProductionRkMapper slVolumeProductionRkMapper;
+    @Resource
+    private SlVolumeProductionCkMapper slVolumeProductionCkMapper;
+    @Resource
+    private SlVolumeProductionZyMapper slVolumeProductionZyMapper;
+    @Resource
+    private SlStoreManagementService storeManagementService;
     @ApiOperation("删除物资管理")
     @DeleteMapping("/{id}")
     public R<?> delStoreManagement(
             @ApiParam(name = "id", value = "货架管理id", required = true) @PathVariable("id") Long id) {
+        // 判断当前物资有没有存在于入库 出库 转移记录 和库存
+        List<ManagementGoodsMaterials> goodsMaterialsId = managementGoodsMaterialsMapper.selectList(new QueryWrapper<ManagementGoodsMaterials>()
+                .eq("goods_materials_id", id)
+                .eq("del_flag",0));
+
+        if (!goodsMaterialsId.isEmpty()){
+            StringBuilder stringBuilder = new StringBuilder();
+            for (ManagementGoodsMaterials managementGoodsMaterials : goodsMaterialsId) {
+                if (managementGoodsMaterials.getManagementId() != null) {
+                    SlStoreManagement byId1 = storeManagementService.getById(managementGoodsMaterials.getManagementId());
+                    stringBuilder.append(byId1.getStoreManagementName()).append(",");
+                }
+            }
+            // 去除最后一位字符
+            stringBuilder.deleteCharAt(stringBuilder.length() - 1);
+            return R.fail("删除失败," + stringBuilder + "仓库还有当前物资");
+        }
         SlGoodsMaterials byId = slGoodsMaterialsService.getById(id);
         byId.setDelFlag("1");
         slGoodsMaterialsService.updateById(byId);
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlRegionController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlRegionController.java
index 54a57cf..889467f 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlRegionController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlRegionController.java
@@ -8,11 +8,7 @@
 import com.ruoyi.management.service.SlRegionService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-
-import org.springframework.web.bind.annotation.RestController;
+import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
 import javax.imageio.spi.RegisterableService;
@@ -39,7 +35,7 @@
     }
 
 
-    @PostMapping("/getcityRegione")
+    @GetMapping("/getcityRegione")
     @ApiOperation(value = "获取城市")
     public R<List<SlRegion>> getcityRegione(RegionQuery regionQuery) {
         return R.ok(regionService.getcityRegione(regionQuery));
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementController.java
index d579ac1..5838772 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementController.java
@@ -3,6 +3,7 @@
 
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.management.domain.SlStoreManagement;
 import com.ruoyi.management.domain.dto.QStoreManagementQuery;
 import com.ruoyi.management.domain.dto.StoreManagementDTO;
@@ -39,9 +40,9 @@
 
     @PostMapping("/addStoreManagement")
     @ApiOperation(value = "添加/修改仓库管理")
-    public R addStoreManagement(@RequestBody StoreManagementDTO storeManagementDTO) {
-        slStoreManagementService.addStoreManagement(storeManagementDTO);
-        return R.ok();
+    public AjaxResult addStoreManagement(@RequestBody StoreManagementDTO storeManagementDTO) {
+
+         return slStoreManagementService.addStoreManagement(storeManagementDTO);
     }
 
     @ApiOperation("删除仓库管理")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementImgController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementImgController.java
index db4adf0..d0fed7d 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementImgController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlStoreManagementImgController.java
@@ -35,8 +35,8 @@
     @PostMapping("/addStoreManagementimg")
     @ApiOperation(value = "添加/修改仓库管理平面圖")
     public R addStoreManagementimg(@RequestBody StoreManagementimgDTO storeManagementimgDTO) {
-        slStoreManagementImgService.addStoreManagementimg(storeManagementimgDTO);
-        return R.ok();
+
+        return R.ok(slStoreManagementImgService.addStoreManagementimg(storeManagementimgDTO));
     }
 
     @PostMapping("/getStoreManagementimgOne")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkController.java
index fcd96c2..46f6bfa 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkController.java
@@ -4,16 +4,19 @@
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.management.domain.SlVolumeProductionCk;
+import com.ruoyi.management.domain.SlVolumeProductionCkgl;
 import com.ruoyi.management.domain.dto.*;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesInfoVO;
 import com.ruoyi.management.domain.vo.ManagementimgSlVolumeProductionCkVO;
 import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionCkVO;
 import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionRkVO;
 import com.ruoyi.management.service.SlVolumeProductionCkService;
+import com.ruoyi.management.service.SlVolumeProductionCkglService;
 import com.ruoyi.management.service.impl.SlVolumeProductionCkServiceImpl;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -59,6 +62,24 @@
         slVolumeProductionCkService.updSlVolumeProductionCk(addckgldto.getAddSlVolumeProductionCkDTO());
         return R.ok();
     }
+    @Autowired
+    private SlVolumeProductionCkglService ckglService;
+    @GetMapping("/auditAgain")
+    @ApiOperation(value = "出库管理重新审核")
+    public R auditAgain(Long ckglId) {
+        SlVolumeProductionCkgl byId1 = ckglService.getById(ckglId);
+        byId1.setAuditStatus(1);
+        byId1.setPresentState(1);
+        byId1.setReasonsRefusal("");
+        ckglService.updateById(byId1);
+        return R.ok();
+    }
+    @PostMapping("/updSlVolumeProductionCk1")
+    @ApiOperation(value = "修改出库 不变更状态")
+    public R updSlVolumeProductionCk1(@RequestBody ADDCKGLDTO addckgldto ) {
+        slVolumeProductionCkService.updSlVolumeProductionCk1(addckgldto.getAddSlVolumeProductionCkDTO());
+        return R.ok();
+    }
 
    @PostMapping("/getSlVolumeProductionCkList")
     @ApiOperation(value = "分页获取通过出库管理ID当前出库的物资")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkglController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkglController.java
index 9fffc82..d1413d8 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkglController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionCkglController.java
@@ -2,10 +2,12 @@
 
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.management.domain.SlAudit;
+import com.ruoyi.management.domain.SlAuditRecord;
 import com.ruoyi.management.domain.SlVolumeProductionCkgl;
 import com.ruoyi.management.domain.SlVolumeProductionRkgl;
 import com.ruoyi.management.domain.dto.VolumeProductionCkglDTO;
@@ -13,6 +15,7 @@
 import com.ruoyi.management.domain.dto.getslVolumeProductionCkglQuery;
 import com.ruoyi.management.domain.vo.*;
 import com.ruoyi.management.mapper.SlAuditMapper;
+import com.ruoyi.management.mapper.SlAuditRecordMapper;
 import com.ruoyi.management.service.SlVolumeProductionCkglService;
 import com.ruoyi.system.api.domain.getVolumeProductionRkQuery;
 import io.swagger.annotations.Api;
@@ -41,6 +44,8 @@
 
     @Resource
     private SlAuditMapper slAuditMapper;
+    @Resource
+    private SlAuditRecordMapper slAuditRecordMapper;
 
     @PostMapping("/getslVolumeProductionCkglList")
     @ApiOperation(value = "分页获取出库管理")
@@ -95,6 +100,8 @@
         wrapper.eq(SlAudit::getRkId,id);
         SlAudit slAudit = slAuditMapper.selectOne(wrapper);
         slAudit.setState(6);
+        slAuditRecordMapper.delete(new QueryWrapper<SlAuditRecord>()
+                .eq("audit_id",slAudit.getId()));
         return R.ok();
     }
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java
index b87567c..6067978 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java
@@ -84,6 +84,12 @@
 
         return R.ok(slVolumeProductionRkService.codeInfo(id));
     }
+    @PostMapping("/codeInfo1")
+    @ApiOperation(value = "转移数据获取二维码样式")
+    public R<List<QRCodeVO>> codeInfo( Long id,Long zyglId) throws Exception {
+
+        return R.ok(slVolumeProductionRkService.codeInfo1(id,zyglId));
+    }
 
     @PostMapping("/getSlvolumeVolumeProductionRkList")
     @ApiOperation(value = "分页获取通过入库管理ID当前批次入库的物资")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkglController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkglController.java
index a6cdd2f..2f69ea2 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkglController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkglController.java
@@ -2,10 +2,12 @@
 
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.management.domain.SlAudit;
+import com.ruoyi.management.domain.SlAuditRecord;
 import com.ruoyi.management.domain.SlVolumeProductionRkgl;
 import com.ruoyi.management.domain.dto.SlGoodsShelfDTO;
 import com.ruoyi.management.domain.dto.SupplierVolumeProductionRkglQuery;
@@ -14,6 +16,7 @@
 import com.ruoyi.management.domain.vo.VolumeProductionRkgInfoVO;
 import com.ruoyi.management.domain.vo.VolumeProductionRkgInventoryVO;
 import com.ruoyi.management.mapper.SlAuditMapper;
+import com.ruoyi.management.mapper.SlAuditRecordMapper;
 import com.ruoyi.management.service.SlVolumeProductionRkglService;
 import com.ruoyi.system.api.domain.getVolumeProductionRkQuery;
 import io.swagger.annotations.Api;
@@ -42,6 +45,8 @@
 
     @Resource
     private SlAuditMapper slAuditMapper;
+    @Resource
+    private SlAuditRecordMapper slAuditRecordMapper;
 
 
 
@@ -68,8 +73,8 @@
     @PostMapping("/addVolumeProductionRkgl")
     @ApiOperation(value = "添加/修改入库管理")
     public R<Long> addVolumeProductionRkgl(@RequestBody VolumeProductionRkglDTO volumeProductionRkglDTO) {
-        slVolumeProductionRkglService.addVolumeProductionRkgl(volumeProductionRkglDTO);
-        return R.ok();
+
+        return R.ok(slVolumeProductionRkglService.addVolumeProductionRkgl(volumeProductionRkglDTO));
     }
 
     @ApiOperation("取消入库管理")
@@ -89,6 +94,8 @@
         if (slAudit!=null){
             slAudit.setState(6);
             slAuditMapper.updateById(slAudit);
+            slAuditRecordMapper.delete(new QueryWrapper<SlAuditRecord>()
+                    .eq("audit_id",slAudit.getId()));
         }
         return R.ok();
     }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyController.java
index 39f0544..c063e3c 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyController.java
@@ -1,16 +1,22 @@
 package com.ruoyi.management.controller;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.google.common.collect.Lists;
 
 
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.management.domain.SlGoodsShelf;
 import com.ruoyi.management.domain.SlVolumeProductionZy;
 import com.ruoyi.management.domain.dto.*;
 import com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO;
 import com.ruoyi.management.domain.vo.*;
+import com.ruoyi.management.service.SlGoodsShelfService;
+import com.ruoyi.management.service.SlStoreManagementService;
 import com.ruoyi.management.service.SlVolumeProductionZyService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
@@ -31,11 +37,26 @@
 
     @Resource
     private SlVolumeProductionZyService slVolumeProductionZyService;
+    @Autowired
+    private SlGoodsShelfService slGoodsShelfService;
+    @Autowired
+    private SlStoreManagementService storeManagementService;
 
     @PostMapping("/getNumberAndShelfByManagementId")
     @ApiOperation(value = "根据仓库id 查询楼层和货架")
     public R<NumberAndShelfVO> getNumberAndShelfByManagementId(@RequestBody QueryDTO dto) {
         return R.ok(slVolumeProductionZyService.getNumberAndShelfByManagementId(dto));
+    }
+    @GetMapping("/getNumberAndShelf")
+    @ApiOperation(value = "根据仓库Id 获取楼层数量和所有货架数组")
+    public R<GetNumberAndShelfVO> getNumberAndShelf(Long managementId) {
+        GetNumberAndShelfVO getNumberAndShelfVO = new GetNumberAndShelfVO();
+        getNumberAndShelfVO.setManagementNumber(storeManagementService.getById(managementId).getStoreManagementNumber());
+        List<SlGoodsShelf> list = slGoodsShelfService.list(new QueryWrapper<SlGoodsShelf>()
+                .eq("del_flag", 0)
+                .eq("store_management_id", managementId));
+        getNumberAndShelfVO.setList(list);
+        return R.ok(getNumberAndShelfVO);
     }
     @PostMapping("/getVolumeProductionzyCode")
     @ApiOperation(value = "获取转移管理二维码")
@@ -49,6 +70,21 @@
         slVolumeProductionZyService.addSlVolumeProductionZy(addzydto);
         return R.ok();
     }
+    @PostMapping("/deleteSlVolumeProductionZyUpdate")
+    @ApiOperation(value = "编辑时删除转移数据")
+    public R addSlVolumeProductionZy(@RequestBody DeleteCKDTO dto) {
+        QueryWrapper<SlVolumeProductionZy> slVolumeProductionZyQueryWrapper = new QueryWrapper<>();
+        slVolumeProductionZyQueryWrapper.eq("del_flag","0");
+        slVolumeProductionZyQueryWrapper.eq("rk_id",dto.getRkId());
+        slVolumeProductionZyQueryWrapper.eq("zygl_id",dto.getId());
+        slVolumeProductionZyQueryWrapper.eq("shelf_id",dto.getShelfId());
+        slVolumeProductionZyQueryWrapper.eq("store_management_number",dto.getStoreManagementNumber());
+        SlVolumeProductionZy one = slVolumeProductionZyService.getOne(slVolumeProductionZyQueryWrapper);
+        if (one!=null){
+            slVolumeProductionZyService.removeById(one.getId());
+        }
+        return R.ok();
+    }
 
     @PostMapping("/updSlVolumeProductionZy")
     @ApiOperation(value = "修改转移")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyglController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyglController.java
index 040d95b..509dfb2 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyglController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionZyglController.java
@@ -2,26 +2,30 @@
 
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.utils.page.PageDTO;
-import com.ruoyi.management.domain.SlAudit;
-import com.ruoyi.management.domain.SlVolumeProductionCk;
-import com.ruoyi.management.domain.SlVolumeProductionRkgl;
-import com.ruoyi.management.domain.SlVolumeProductionZygl;
+import com.ruoyi.management.domain.*;
 import com.ruoyi.management.domain.dto.*;
 import com.ruoyi.management.domain.vo.*;
+import com.ruoyi.management.mapper.ManagementGoodsMaterialsMapper;
 import com.ruoyi.management.mapper.SlAuditMapper;
-import com.ruoyi.management.service.SlVolumeProductionZyService;
-import com.ruoyi.management.service.SlVolumeProductionZyglService;
+import com.ruoyi.management.service.*;
 import com.ruoyi.management.service.impl.SlVolumeProductionZyServiceImpl;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
+import io.swagger.annotations.Authorization;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.*;
 
 import javax.annotation.Resource;
+import java.util.ArrayList;
+import java.util.Date;
 import java.util.List;
+import java.util.stream.Collectors;
 
 /**
  * <p>
@@ -41,6 +45,85 @@
 
     @Resource
     private SlVolumeProductionZyglService slVolumeProductionZyglService;
+    @Resource
+    private SlVolumeProductionZyService slVolumeProductionZyService;
+    @Autowired
+    private SlVolumeProductionRkService slVolumeProductionRkService;
+    @Autowired
+    private SlGoodsMaterialsService slGoodsMaterialsService;
+    @Resource
+    private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
+    @PostMapping("/getVolumeProductionZyglCode")
+    @ApiOperation(value = "获取转移管理打印二维码列表")
+    public R<PageDTO<getVolumeProductionRkgCodeVO>> getVolumeProductionRkgCode(@RequestBody VolumeProductionZyglCodeQuery volumeProductionRkgCodeQuery) {
+        // 通过转移管理获取 转移列表 获取入库id
+        Page<SlVolumeProductionZy> page = new Page<>(volumeProductionRkgCodeQuery.getPageCurr(), volumeProductionRkgCodeQuery.getPageSize());
+        LambdaQueryWrapper< SlVolumeProductionZy> wrapper1= Wrappers.lambdaQuery();
+        wrapper1.eq(SlVolumeProductionZy::getZyglId,volumeProductionRkgCodeQuery.getVolumeProductionZyglId());
+        wrapper1.eq( SlVolumeProductionZy::getDelFlag,"0");
+        if (volumeProductionRkgCodeQuery.getManagementNumber() != null){
+            wrapper1.eq(SlVolumeProductionZy::getShelfId,volumeProductionRkgCodeQuery.getShelfId());
+        }
+        if (volumeProductionRkgCodeQuery.getManagementNumber() != null){
+            wrapper1.eq(SlVolumeProductionZy::getStoreManagementNumber,volumeProductionRkgCodeQuery.getManagementNumber());
+        }
+        wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime);
+        Page<SlVolumeProductionZy> page2 = slVolumeProductionZyService.page(page, wrapper1);
+        PageDTO<getVolumeProductionRkgCodeVO> SlGoodsShelfDTO = PageDTO.of(page2, getVolumeProductionRkgCodeVO.class);
+        List<getVolumeProductionRkgCodeVO> list2 = SlGoodsShelfDTO.getList();
+        for(getVolumeProductionRkgCodeVO list:list2) {
+            SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsService.getById(list.getMaterialsId());
+            list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName());
+            list.setIsConsume(slGoodsMaterials.getIsConsume());
+            list.setErwmNum(slVolumeProductionRkService.getById(list.getScrkId()).getErwmNum());
+        }
+        // 将list2中的数据 如果字段erwmNum为空 优先展示在前面
+        list2.sort((o1, o2) -> {
+            if (o1.getErwmNum() == null) {
+                return -1;
+            }
+            if (o2.getErwmNum() == null) {
+                return 1;
+            }
+            return 0;
+        });
+        return R.ok(SlGoodsShelfDTO);
+    }
+    @PostMapping("/updateQrCodeNum")
+    @ApiOperation(value = "批量修改转移二维码生成数量")
+    public R updateQrCodeNum(@RequestBody UpdateZyQrCodeDTO dto) {
+        for (UpdateQrCodeNumDTO updateQrCodeNumDTO : dto.getList()) {
+            SlVolumeProductionZy byId = slVolumeProductionZyService.getById(updateQrCodeNumDTO.getId());
+            if (byId == null){
+                continue;
+            }
+            Long scrkId = byId.getScrkId();
+            SlVolumeProductionRk byId1 = slVolumeProductionRkService.getById(scrkId);
+            if (byId1 == null){
+                continue;
+            }
+            byId1.setErwmNum(updateQrCodeNumDTO.getErwmNum());
+            byId1.setRkModel(getLetter(updateQrCodeNumDTO.getErwmNum()));
+            slVolumeProductionRkService.updateById(byId1);
+        }
+
+        return R.ok();
+    }
+    public static String getLetter(int num) {
+        String[] str = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
+        // 如果num大于26 那么往后叠加对应的字母 比如27 那么就是AA
+        if (num > 26) {
+            int a = num / 26;
+            int b = num % 26;
+            if (b == 0) {
+                a = a - 1;
+                b = 26;
+            }
+            return getLetter(a) + getLetter(b);
+        }
+
+        return str[num - 1];
+    }
     @PostMapping("/getVolumeProductionzZyglList")
     @ApiOperation(value = "分页获取转移管理")
     public R<PageDTO<VolumeProductionzZyglVO>> getVolumeProductionzZyglList(@RequestBody SlVolumeProductionZyQuery slVolumeProductionZyQuery) {
@@ -54,7 +137,7 @@
         return R.ok(slVolumeProductionZyglService.addsVolumeProductionzZygl(slVolumeProductionZyDTO));
     }
 
-    @GetMapping("/getVolumeProductionzZyglnfo")
+    @PostMapping("/getVolumeProductionzZyglnfo")
     @ApiOperation(value = "获取转移管理详情")
     public R<VolumeProductionZyglInfoVO> getVolumeProductionzZyglnfo(@RequestBody ManagementimgVolumeProductionZyQuery managementimgVolumeProductionZyQuery) {
         return R.ok(slVolumeProductionZyglService.getVolumeProductionzZyglnfo(managementimgVolumeProductionZyQuery));
@@ -62,34 +145,88 @@
 
     @GetMapping("/getVolumeProductionZyglnventory/{id}")
     @ApiOperation(value = "获取转移管理打印清单")
-    public R<VolumeProductionZyglInventoryVO> getVolumeProductionZyglnventory(@ApiParam(name = "id", value = "转移管理id", required = true) @PathVariable("id") Integer id) {
+    public R<VolumeProductionZyglInventoryVO> getVolumeProductionZyglnventory(@ApiParam(name = "id", value = "转移管理id", required = true) @PathVariable("id") String id) {
         return R.ok(slVolumeProductionZyglService.getVolumeProductionZyglnventory(id));
     }
 
 
-    @ApiOperation("取转移管理")
+    @ApiOperation("取消转移管理")
     @GetMapping("/{id}")
     public R<?> delStoreManagement(
-            @ApiParam(name = "id", value = "转移管理id", required = true) @PathVariable("id") Integer id) {
+            @ApiParam(name = "id", value = "转移管理id", required = true) @PathVariable("id") Long id) {
         SlVolumeProductionZygl byId = slVolumeProductionZyglService.getById(id);
         byId.setPresentState(5);
         byId.setAuditStatus(7);
         slVolumeProductionZyglService.updateById(byId);
 
         LambdaQueryWrapper<SlAudit> wrapper= Wrappers.lambdaQuery();
-        wrapper.eq(SlAudit::getType,1);
+        wrapper.eq(SlAudit::getType,3);
         wrapper.eq( SlAudit::getDelFlag,0);
         wrapper.eq(SlAudit::getRkId,id);
         SlAudit slAudit = slAuditMapper.selectOne(wrapper);
         slAudit.setState(6);
+        List<SlVolumeProductionZy> list = slVolumeProductionZyService.list(new QueryWrapper<SlVolumeProductionZy>()
+                .eq("zygl_id", id)
+                .eq("del_flag", "0"));
+        List<Long> collect = list.stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList());
+        // 回滚入库记录库存
+        for (SlVolumeProductionZy slVolumeProductionZy : list) {
+            SlVolumeProductionRk byId1 = slVolumeProductionRkService.getById(slVolumeProductionZy.getRkId());
+            byId1.setRepertoryZhai(byId1.getRepertoryZhai()+slVolumeProductionZy.getZyNum());
+            slVolumeProductionRkService.updateById(byId1);
+            // 回滚中间表记录库存
+            LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
+            wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,slVolumeProductionZy.getMaterialsId());
+            wrapper2.eq(ManagementGoodsMaterials::getManagementId,byId.getBmanagementId());
+            wrapper2.eq(ManagementGoodsMaterials::getDelFlag, 0);
+            ManagementGoodsMaterials managementGoodsMaterials = managementGoodsMaterialsMapper.selectOne(wrapper2);
+            if (managementGoodsMaterials!=null){
+                Long repertorySum = managementGoodsMaterials.getRepertorySum();
+                Long repertoryZhai = managementGoodsMaterials.getRepertoryZhai();
+                Long re=repertorySum+Long.valueOf(slVolumeProductionZy.getZyNum());
+                Long re1=repertoryZhai+Long.valueOf(slVolumeProductionZy.getZyNum());
+                managementGoodsMaterials.setRepertorySum(re);
+                managementGoodsMaterials.setRepertoryZhai(re1);
+                managementGoodsMaterials.setRepertoryChu(0);
+                managementGoodsMaterialsMapper.updateById(managementGoodsMaterials);
+            }else{
+                ManagementGoodsMaterials managementGoodsMaterials1=new ManagementGoodsMaterials();
+                managementGoodsMaterials1.setManagementId(byId.getBmanagementId());
+                managementGoodsMaterials1.setGoodsMaterialsId(slVolumeProductionZy.getMaterialsId());
+                managementGoodsMaterials1.setRepertoryZhai(Long.valueOf(slVolumeProductionZy.getZyNum()));
+                managementGoodsMaterials1.setRepertorySum(Long.valueOf(slVolumeProductionZy.getZyNum()));
+                managementGoodsMaterials1.setRepertoryChu(slVolumeProductionZy.getZyNum());
+                managementGoodsMaterials1.setCreateTime(new Date());
+                managementGoodsMaterialsMapper.insert(managementGoodsMaterials1);
+            }
+        }
+
+        List<SlVolumeProductionRk> list1 = slVolumeProductionRkService.list(new QueryWrapper<SlVolumeProductionRk>()
+                .in("id",collect)
+                .eq("del_flag","0"));
+
+        // 删除入库记录
+        slVolumeProductionRkService.remove(new QueryWrapper<SlVolumeProductionRk>().in("id",collect));
+        // 取消后删除转移记录
+        QueryWrapper<SlVolumeProductionZy> wrapper1 = new QueryWrapper<>();
+        wrapper1.eq("zygl_id",id);
+        slVolumeProductionZyService.remove(wrapper1);
 
         return R.ok();
     }
 
     @ApiOperation("转移管理入库")
-    @GetMapping("/zy/{id}")
-    public R<?> zy(@ApiParam(name = "id", value = "转移管理id", required = true) @PathVariable("id") Integer id) {
-        slVolumeProductionZyglService.zy(id);
+    @PostMapping("/zy")
+    public R<?> zy(@RequestBody ZyRkDTO dto) {
+        slVolumeProductionZyglService.zy(dto.getCkglId(),dto.getAuthorizationUrl());
         return R.ok();
     }
+    @Autowired
+    private SlAuditService slAuditRecordService;
+    @ApiOperation("查询审核拒绝原因")
+    @GetMapping("/getRefuseReason")
+    public R<?> getRefuseReason(Long auditId) {
+        SlAudit byId = slAuditRecordService.getById(auditId);
+        return R.ok(byId.getCause());
+    }
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAudit.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAudit.java
index db78053..f28f0b4 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAudit.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAudit.java
@@ -79,6 +79,10 @@
     @TableField("zymanagement_id")
     private Long zymanagementId;
 
+    @ApiModelProperty("点击审核的人id")
+    @TableField("audit_user_id")
+    private String auditUserId;
+
 
 
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAuditRecord.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAuditRecord.java
index ed616a8..df78a14 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAuditRecord.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlAuditRecord.java
@@ -72,6 +72,12 @@
     @ApiModelProperty("审核人名称")
     @TableField("shenh_name")
     private String shenhName;
+    @ApiModelProperty("审核这条数据的人是否是平台管理员")
+    @TableField(exist = false)
+    private Integer isPlatform;
+    @ApiModelProperty("如果审核被拒 返回拒绝理由")
+    @TableField(exist = false)
+    private String refuseReason;
 
 
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRk.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRk.java
index 824ecba..adf1aa8 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRk.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRk.java
@@ -102,5 +102,16 @@
     @ApiModelProperty("判断是不是新增的数据")
     private String newAddTime;
 
-
+    @ApiModelProperty("物资名称")
+    @TableField(exist = false)
+    private String goodsMaterialsName;
+    @ApiModelProperty("物资类型")
+    @TableField(exist = false)
+    private Integer isConsume;
+    @ApiModelProperty("应放楼层")
+    @TableField(exist = false)
+    private Integer managementNumber;
+    @ApiModelProperty("应放货架")
+    @TableField(exist = false)
+    private String shelfName;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRkVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRkVO.java
new file mode 100644
index 0000000..83084a5
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionRkVO.java
@@ -0,0 +1,96 @@
+package com.ruoyi.management.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.math.BigDecimal;
+import java.util.Date;
+
+/**
+ * <p>
+ * 发起入库管理
+ * </p>
+ *
+ * @author hjl
+ * @since 2024-06-25
+ */
+@Getter
+@Setter
+@ApiModel(value = "SlVolumeProductionRk返回对象", description = "发起入库管理")
+public class SlVolumeProductionRkVO {
+
+    @TableId(value = "id", type = IdType.ASSIGN_ID)
+    private String id;
+
+    @ApiModelProperty("入管理主表id")
+    private String VolumeProductionRkglId;
+
+    @ApiModelProperty("物资id")
+    private String materialsId;
+
+    @ApiModelProperty("入库数量")
+    private Long rkNum;
+
+
+    @ApiModelProperty("入库编号")
+    private String rkNumber;
+
+
+    @ApiModelProperty("入库型号")
+    private String rkModel;
+
+    @ApiModelProperty("入库价格")
+    private BigDecimal rkPice;
+
+    @ApiModelProperty("在库存的")
+    private Long repertoryZhai;
+
+    @ApiModelProperty("仓库层数 1代表一层,2代表两层,3代表三层")
+    private Integer storeManagementNumber;
+
+    @ApiModelProperty("货架id")
+    private String shelfId;
+
+    @ApiModelProperty("删除标志(0代表存在 2代表删除)")
+    private String delFlag;
+
+    @ApiModelProperty("创建者")
+    private String createBy;
+
+    @ApiModelProperty("创建时间")
+    private Date createTime;
+
+    @ApiModelProperty("更新者")
+    private String updateBy;
+
+    @ApiModelProperty("更新时间")
+    private Date updateTime;
+
+    @ApiModelProperty("二维码数量")
+    private Integer erwmNum;
+
+    @ApiModelProperty("扫描二维码数量")
+    private Integer smerwmNum;
+
+
+    @ApiModelProperty("仓库ID")
+    private String managementId;
+
+    @ApiModelProperty("判断是不是新增的数据")
+    private String newAddTime;
+
+    @ApiModelProperty("物资名称")
+    private String goodsMaterialsName;
+    @ApiModelProperty("物资类型")
+    private Integer isConsume;
+    @ApiModelProperty("应放楼层")
+    private Integer managementNumber;
+    @ApiModelProperty("应放货架")
+    private String shelfName;
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionZygl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionZygl.java
index f30b904..5891aa4 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionZygl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/SlVolumeProductionZygl.java
@@ -35,7 +35,7 @@
     @TableField("management_id")
     private Long managementId;
 
-    @ApiModelProperty("被转移仓库ID")
+    @ApiModelProperty("被转移入仓库ID")
     @TableField("bmanagement_id")
     private Long bmanagementId;
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDCKGLDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDCKGLDTO.java
index 2e4d12a..9642a11 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDCKGLDTO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDCKGLDTO.java
@@ -1,12 +1,13 @@
 package com.ruoyi.management.domain.dto;
 
 import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 
 import java.util.List;
 
 @Data
-@ApiModel("添加出库DTO")
+@ApiModel("修改出库DTO")
 public class ADDCKGLDTO {
     private List<AddSlVolumeProductionCkDTO> addSlVolumeProductionCkDTO;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDPdDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDPdDTO.java
new file mode 100644
index 0000000..2619897
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ADDPdDTO.java
@@ -0,0 +1,16 @@
+package com.ruoyi.management.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel("添加盘点数据DTO")
+public class ADDPdDTO {
+    private List<InventoriesSuppliesInfoDTO> list;
+
+    @ApiModelProperty(value = "仓库id")
+    private Long managementId;
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/AddSlVolumeProductionCkDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/AddSlVolumeProductionCkDTO.java
index de5768b..7ce379a 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/AddSlVolumeProductionCkDTO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/AddSlVolumeProductionCkDTO.java
@@ -10,7 +10,7 @@
 @Data
 @ApiModel("添加出库库批次数据传输对象")
 public class AddSlVolumeProductionCkDTO {
-    @ApiModelProperty("出库管理id")
+    @ApiModelProperty("出库id")
     private Long ckgl_id;
 
     @ApiModelProperty("入库批次")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/DeleteCKDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/DeleteCKDTO.java
new file mode 100644
index 0000000..a225a79
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/DeleteCKDTO.java
@@ -0,0 +1,21 @@
+package com.ruoyi.management.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel("添加出库DTO")
+public class DeleteCKDTO {
+    @ApiModelProperty("出库管理id")
+    private Long id;
+    @ApiModelProperty("入库id")
+    private Long rkId;
+    @ApiModelProperty("shelfId")
+    private Long shelfId;
+    @ApiModelProperty("楼层")
+    private Integer storeManagementNumber;
+
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/GetMaterialsByManagementIdQuery.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/GetMaterialsByManagementIdQuery.java
index 5249647..13e1506 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/GetMaterialsByManagementIdQuery.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/GetMaterialsByManagementIdQuery.java
@@ -14,4 +14,8 @@
     private String materialsName;
     @ApiModelProperty("物资类型 1消耗 2非消耗")
     private Integer isConsume;
+    @ApiModelProperty("仓库层数 1代表一层,2代表两层,3代表三层")
+    private Integer storeManagementNumber;
+    @ApiModelProperty("货架id")
+    private Long shelfId;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/InventoriesSuppliesInfoDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/InventoriesSuppliesInfoDTO.java
index cfdac89..71543c4 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/InventoriesSuppliesInfoDTO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/InventoriesSuppliesInfoDTO.java
@@ -18,6 +18,10 @@
 
     @ApiModelProperty(" 盘点数量")
     private Long suppliesNum;
+    @ApiModelProperty(" 在库数量")
+    private Long zkNum;
+    @ApiModelProperty(" 仓库id")
+    private Long managementId;
 
 
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionCkQuery.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionCkQuery.java
index 2d52bab..50f73c8 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionCkQuery.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionCkQuery.java
@@ -9,6 +9,6 @@
 @ApiModel("通过出库管理拿出库记录的数据取对象")
 public class ManagementimgVolumeProductionCkQuery extends BasePage {
 
-    @ApiModelProperty("入管理主表id")
+    @ApiModelProperty("出库管理主表id")
     private Long VolumeProductionCKglId;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionZyVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionZyVO.java
index 5a38ca9..a2fc46c 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionZyVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ManagementimgVolumeProductionZyVO.java
@@ -11,6 +11,10 @@
 
     @ApiModelProperty("物资名称")
     private String goodsMaterialsName;
+    @ApiModelProperty("货架Id")
+    private Long shelfId;
+    @ApiModelProperty("物资Id")
+    private Long materialsId;
 
     @ApiModelProperty("货架名称")
     private String goodsShelfName;
@@ -28,14 +32,18 @@
     @ApiModelProperty("入库批次")
     private Long rkId;
 
-    @ApiModelProperty("入库编号")
+    @ApiModelProperty("入库批次")
     private String rkNumber;
+    @ApiModelProperty("转移批次")
+    private String zyNumber;
 
-    @ApiModelProperty("转移入库批次")
+    @ApiModelProperty("转移入库批次id")
     private Long scrkId;
 
     @ApiModelProperty("转移入库编号")
     private String zyrkNumber;
+    @ApiModelProperty("在库存的")
+    private Long zkNum;
 
     @ApiModelProperty("1 是非消耗,2是消耗 ")
     private Integer isConsume;
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateQrCodeNumDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateQrCodeNumDTO.java
new file mode 100644
index 0000000..02d433b
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateQrCodeNumDTO.java
@@ -0,0 +1,13 @@
+package com.ruoyi.management.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+@Data
+@ApiModel("修改转移库批次数据传输对象")
+public class UpdateQrCodeNumDTO {
+    // 入库id
+    private Long id;
+    // 二维码生成数量
+    private Integer erwmNum;
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateZyQrCodeDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateZyQrCodeDTO.java
new file mode 100644
index 0000000..db70b70
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/UpdateZyQrCodeDTO.java
@@ -0,0 +1,17 @@
+package com.ruoyi.management.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.management.domain.SlVolumeProductionZy;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel("修改转移生成二维码数量")
+public class UpdateZyQrCodeDTO {
+
+    private List<UpdateQrCodeNumDTO> list;
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionRkgCodeQuery.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionRkgCodeQuery.java
index 1195911..4d4bdad 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionRkgCodeQuery.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionRkgCodeQuery.java
@@ -10,4 +10,7 @@
 public class VolumeProductionRkgCodeQuery extends BasePage {
     @ApiModelProperty("入库管理主表id")
     private Long VolumeProductionRkglId;
+    @ApiModelProperty("物资名称")
+    private String goodsMaterialsName;
+
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionZyglCodeQuery.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionZyglCodeQuery.java
new file mode 100644
index 0000000..b51f822
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/VolumeProductionZyglCodeQuery.java
@@ -0,0 +1,17 @@
+package com.ruoyi.management.domain.dto;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel("转移管理二维码生成查询传输对象")
+public class VolumeProductionZyglCodeQuery extends BasePage {
+    @ApiModelProperty("转移管理主表id")
+    private Long VolumeProductionZyglId;
+    @ApiModelProperty("楼层")
+    private Integer managementNumber;
+    @ApiModelProperty("货架id")
+    private Long shelfId;
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ZyRkDTO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ZyRkDTO.java
new file mode 100644
index 0000000..09b6c88
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/ZyRkDTO.java
@@ -0,0 +1,14 @@
+package com.ruoyi.management.domain.dto;
+
+import io.swagger.annotations.ApiModel;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel("添加出库DTO")
+public class ZyRkDTO {
+private Long ckglId;
+private String authorizationUrl;
+
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/GetNumberAndShelfVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/GetNumberAndShelfVO.java
new file mode 100644
index 0000000..6161012
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/GetNumberAndShelfVO.java
@@ -0,0 +1,20 @@
+package com.ruoyi.management.domain.vo;
+
+import com.ruoyi.management.domain.SlGoodsShelf;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel(value = "根据仓库获取楼层数量和所有货架数组", description = " 根据仓库获取楼层数量和所有货架数组")
+public class GetNumberAndShelfVO {
+    @ApiModelProperty("楼层1 代表有一层 2代表有 一层 和二层")
+    private Integer managementNumber;
+
+    @ApiModelProperty("物资名称")
+    private List<SlGoodsShelf> list;
+
+
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/InventoriesSuppliesInfoVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/InventoriesSuppliesInfoVO.java
index c42e90d..16ad9ba 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/InventoriesSuppliesInfoVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/InventoriesSuppliesInfoVO.java
@@ -36,7 +36,7 @@
     @ApiModelProperty("在库数量")
     private Long zkNum;
 
-    @ApiModelProperty("是否匹配 1未匹配,已匹配")
+    @ApiModelProperty("是否匹配 1匹配,2未匹配")
     private Integer type;
 
     @ApiModelProperty("货架名称")
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/ManagementimgVolumeProductionCkVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/ManagementimgVolumeProductionCkVO.java
index 2a50795..40c6010 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/ManagementimgVolumeProductionCkVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/ManagementimgVolumeProductionCkVO.java
@@ -7,6 +7,7 @@
 
 import javax.annotation.Resource;
 import java.math.BigDecimal;
+import java.util.Date;
 
 @Data
 @ApiModel(value = "通过出库管理拿出库物资的数据对象", description = "通过出库管理拿出库物资的数据对象")
@@ -41,6 +42,10 @@
 
     @ApiModelProperty("归还数量")
     private Integer guihNum;
+    @ApiModelProperty("归还时间")
+    private Date ghTime;
+    @ApiModelProperty("是否归还 1否2是")
+    private Integer isGh;
 
     @ApiModelProperty("是否匹配 1未匹配,已匹配")
     private String type;
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/PdInfoVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/PdInfoVO.java
new file mode 100644
index 0000000..86c4f76
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/PdInfoVO.java
@@ -0,0 +1,20 @@
+package com.ruoyi.management.domain.vo;
+
+import com.ruoyi.management.domain.SlGoodsShelf;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel(value = "根据盘点id获取盘点信息", description = " 根据盘点id获取盘点信息")
+public class PdInfoVO {
+    @ApiModelProperty("仓库名称")
+    private String managementName;
+    @ApiModelProperty("盘点人")
+    private String pdName;
+    @ApiModelProperty("盘点时间")
+    private String pdTime;
+
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/SlGoodsShelfVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/SlGoodsShelfVO.java
index a16f7dd..04c634b 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/SlGoodsShelfVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/SlGoodsShelfVO.java
@@ -59,4 +59,6 @@
     /** 所属街道code */
     @ApiModelProperty("所属街道code")
     private String townCode;
+    @ApiModelProperty("仓库等级")
+    private Integer grade;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionCkglInfoVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionCkglInfoVO.java
index 87bcdd5..a46ea75 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionCkglInfoVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionCkglInfoVO.java
@@ -38,7 +38,15 @@
 
     @ApiModelProperty("1.待审核,2 已拒绝,3 审核通过,4 已完成,5 已取消")
     private Integer presentState;
+    @ApiModelProperty("拒绝理由")
+    private String reasonsRefusal;
 
     @ApiModelProperty("1 待管理员审核,2 待主管审核,3 待主任审核,4 待出库,5 待从重新提交,6 已出库, 7已完成, 8,已取消")
     private Integer auditStatus;
+    @ApiModelProperty("主任id 逗号分割")
+    private String zhuren;
+    @ApiModelProperty("管理员id 逗号分割")
+    private String guanliyuan;
+    @ApiModelProperty("主管id 逗号分割")
+    private String zhuguan;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionRkgInfoVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionRkgInfoVO.java
index 0e521db..4e2532a 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionRkgInfoVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionRkgInfoVO.java
@@ -55,5 +55,14 @@
 
     @ApiModelProperty("审批单")
     private String authorization;
+    @ApiModelProperty("拒绝理由")
+    private String reason;
+
+    @ApiModelProperty("主任id 逗号分割")
+    private String zhuren;
+    @ApiModelProperty("管理员id 逗号分割")
+    private String guanliyuan;
+    @ApiModelProperty("主管id 逗号分割")
+    private String zhuguan;
 
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionZyglInfoVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionZyglInfoVO.java
index 9848f63..72e2824 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionZyglInfoVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionZyglInfoVO.java
@@ -63,4 +63,10 @@
     private List<String> number;
     @ApiModelProperty("货架列表")
     private List<SlGoodsShelf> goodsShelfList;
+    @ApiModelProperty("主任id 逗号分割")
+    private String zhuren;
+    @ApiModelProperty("管理员id 逗号分割")
+    private String guanliyuan;
+    @ApiModelProperty("主管id 逗号分割")
+    private String zhuguan;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionzZyglVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionzZyglVO.java
index e6410e4..c5e8aa5 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionzZyglVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/VolumeProductionzZyglVO.java
@@ -19,7 +19,7 @@
     @JsonInclude(JsonInclude.Include.ALWAYS)
     private String phonenumber;
 
-    private Integer id;
+    private String id;
 
     @ApiModelProperty("仓库名称")
     @JsonInclude(JsonInclude.Include.ALWAYS)
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/getVolumeProductionRkgCodeVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/getVolumeProductionRkgCodeVO.java
index ddce5c1..f9258a5 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/getVolumeProductionRkgCodeVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/getVolumeProductionRkgCodeVO.java
@@ -1,9 +1,12 @@
 package com.ruoyi.management.domain.vo;
 
 import com.baomidou.mybatisplus.annotation.TableField;
+import com.ruoyi.management.domain.SlGoodsShelf;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
+
+import java.util.List;
 
 @Data
 @ApiModel(value = "二维码生成数量", description = "二维码生成数量")
@@ -17,13 +20,18 @@
     @ApiModelProperty("1 是非消耗,2是消耗 ")
     private Integer isConsume;
 
-    @ApiModelProperty("入库数量")
-    private Long rkNum;
+    @ApiModelProperty("转移数量")
+    private Long zyNum;
 
-    @ApiModelProperty("二维码数量")
+    @ApiModelProperty("生成二维码数量")
     @TableField("erwm_num")
     private Integer erwmNum;
 
     @ApiModelProperty("物资id")
     private Long materialsId;
+    @ApiModelProperty("转移管理新生成入库编号")
+    private Long  scrkId;
+    @ApiModelProperty("入库数量")
+    private Integer  rkNum;
+
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/goodsMaterialsNmVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/goodsMaterialsNmVO.java
index 183edc2..fcee571 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/goodsMaterialsNmVO.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/goodsMaterialsNmVO.java
@@ -9,7 +9,9 @@
 public class goodsMaterialsNmVO {
     @ApiModelProperty("物资名称")
     private String goodsMaterialsName;
+    @ApiModelProperty("物资id")
+    private Long goodsMaterialsId;
 
     @ApiModelProperty("物资数")
-    private Long goodsMaterialsNum;
+    private Integer goodsMaterialsNum;
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/InventoriesSuppliesMapper.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/InventoriesSuppliesMapper.java
index 4888e25..2cc080d 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/InventoriesSuppliesMapper.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/InventoriesSuppliesMapper.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ruoyi.management.domain.InventoriesSupplies;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -15,4 +16,6 @@
 @Mapper
 public interface InventoriesSuppliesMapper extends BaseMapper<InventoriesSupplies> {
 
+    InventoriesSupplies getById1(@Param("id") Long suppliesId);
+
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/SlGoodsMaterialsMapper.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/SlGoodsMaterialsMapper.java
index 74438ba..90a6b05 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/SlGoodsMaterialsMapper.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/mapper/SlGoodsMaterialsMapper.java
@@ -3,6 +3,7 @@
 import com.ruoyi.management.domain.SlGoodsMaterials;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
 
 /**
  * <p>
@@ -15,4 +16,5 @@
 @Mapper
 public interface SlGoodsMaterialsMapper extends BaseMapper<SlGoodsMaterials> {
 
+    void update1(@Param("req") SlGoodsMaterials byId);
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/InventoriesSuppliesInfoService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/InventoriesSuppliesInfoService.java
index 28b408e..645dc32 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/InventoriesSuppliesInfoService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/InventoriesSuppliesInfoService.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.common.core.utils.page.PageDTO;
 import com.ruoyi.management.domain.InventoriesSuppliesInfo;
+import com.ruoyi.management.domain.dto.ADDPdDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoQuery;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesInfoVO;
@@ -26,7 +27,7 @@
 
     InventoriesSuppliesInfo getInventoriesSuppliesInfo(InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO);
 
-    void submitInventoriesSuppliesInfo(@RequestBody InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO);
+    String submitInventoriesSuppliesInfo(@RequestBody ADDPdDTO dto);
 
     void accomplishInventoriesSuppliesInfo(@RequestBody InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO);
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlEquipmentService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlEquipmentService.java
index 0f519db..e4e197c 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlEquipmentService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlEquipmentService.java
@@ -1,6 +1,7 @@
 package com.ruoyi.management.service;
 
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.management.domain.SlEquipment;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.management.domain.dto.SlEquipmentDTO;
@@ -20,7 +21,7 @@
 public interface SlEquipmentService extends IService<SlEquipment> {
     PageDTO<SlEquipmentVO> getSlEquipmentList(@RequestBody SlEquipmentQuery slEquipmentQuery);
 
-   void addSlEquipment(@RequestBody SlEquipmentDTO slEquipmentDTO);
+   AjaxResult addSlEquipment(@RequestBody SlEquipmentDTO slEquipmentDTO);
 
     SlEquipmentVO getSlEquipmentOne(@RequestBody SlEquipmentDTO slEquipmentDTO);
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementImgService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementImgService.java
index 8ac43bd..9d8fbb0 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementImgService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementImgService.java
@@ -15,7 +15,7 @@
  * @since 2024-06-25
  */
 public interface SlStoreManagementImgService extends IService<SlStoreManagementImg> {
-   void addStoreManagementimg(@RequestBody StoreManagementimgDTO storeManagementimgDTO);
+   String addStoreManagementimg(@RequestBody StoreManagementimgDTO storeManagementimgDTO);
 
    SlStoreManagementImg getStoreManagementimgOne(@RequestBody StoreManagementimgQuery storeManagementimgQuery);
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementService.java
index 9ed29d3..7ea5dc3 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlStoreManagementService.java
@@ -1,6 +1,7 @@
 package com.ruoyi.management.service;
 
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.management.domain.SlStoreManagement;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.ruoyi.management.domain.dto.QStoreManagementQuery;
@@ -23,7 +24,7 @@
 
     PageDTO<SlStoreManagement> getStoreManagementList(StoreManagementQuery storeManagementQuery);
 
-   void addStoreManagement(StoreManagementDTO storeManagementDTO);
+    AjaxResult addStoreManagement(StoreManagementDTO storeManagementDTO);
 
     List<SlStoreManagement> QueryStoreManagementList(QStoreManagementQuery StoreManagementQuery);
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionCkService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionCkService.java
index 12ce214..384486c 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionCkService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionCkService.java
@@ -24,6 +24,7 @@
     PageDTO<ManagementimgSlVolumeProductionCkVO> getManagementimgSlVolumeProductionCkList(SlGoodsMaterialsSlVolumeProductionRkQuery slGoodsMaterialsSlVolumeProductionRkQuery);
 
     void updSlVolumeProductionCk(List<AddSlVolumeProductionCkDTO>slVolumeProductionCkDTO);
+    void updSlVolumeProductionCk1(List<AddSlVolumeProductionCkDTO>slVolumeProductionCkDTO);
     void addSlVolumeProductionCk(List<AddSlVolumeProductionCkDTO> addSlVolumeProductionCkDTO);
 
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java
index e0b7974..2ed4ffa 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java
@@ -34,6 +34,7 @@
 
     PageDTO<getVolumeProductionRkgCodeVO> getVolumeProductionRkgCode(VolumeProductionRkgCodeQuery volumeProductionRkgCodeQuery);
     List<QRCodeVO> codeInfo(Long id) throws Exception;
+    List<QRCodeVO> codeInfo1(Long id,Long zyglId) throws Exception;
 
     PageDTO<ManagementimgVolumeProductionRkVO> getroductionRkList(umeProductionRkQuery meProductionRkQuery);
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionZyglService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionZyglService.java
index 6f40f4a..4d29fe2 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionZyglService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionZyglService.java
@@ -28,7 +28,7 @@
 
     VolumeProductionZyglInfoVO getVolumeProductionzZyglnfo(ManagementimgVolumeProductionZyQuery managementimgVolumeProductionZyQuery);
 
-    VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory( Integer id);
+    VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory( String id);
 
-    void zy(Integer id);
+    void zy(Long id,String authorizationUrl);
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/HomeStatisticsServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/HomeStatisticsServiceImpl.java
index 6a91647..dc0b0b2 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/HomeStatisticsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/HomeStatisticsServiceImpl.java
@@ -154,14 +154,15 @@
             goodsMaterialsNmVO goodsMaterialsNmVO=new goodsMaterialsNmVO();
             String key = entry.getKey();
             goodsMaterialsNmVO.setGoodsMaterialsName(key);
+            goodsMaterialsNmVO.setGoodsMaterialsId(entry.getValue().get(0).getId());
             List<homeVO> value = entry.getValue();
             // 处理键和值
-            Long a=0L;
+            int a=0;
             for (homeVO vo : value) {
                 if (vo.getGoodsMaterialsNum()== null){
                     vo.setGoodsMaterialsNum(0L);
                 }
-                a=a+vo.getGoodsMaterialsNum();
+                a=a+vo.getGoodsMaterialsNum().intValue();
             }
             goodsMaterialsNmVO.setGoodsMaterialsNum(a);
             goodsMaterialsNmVOS.add(goodsMaterialsNmVO);
@@ -176,21 +177,20 @@
             goodsMaterialsNmVO goodsMaterialsNmVO1=new goodsMaterialsNmVO();
             String key = entry.getKey();
             goodsMaterialsNmVO1.setGoodsMaterialsName(key);
+            goodsMaterialsNmVO1.setGoodsMaterialsId(entry.getValue().get(0).getId());
             List<homeVO> value = entry.getValue();
             // 处理键和值
-            Long a=0L;
+            int a=0;
             for (homeVO vo : value) {
                 if (vo.getGoodsMaterialsNum()== null){
                     vo.setGoodsMaterialsNum(0L);
                 }
-                a=a+vo.getGoodsMaterialsNum();
+                a=a+vo.getGoodsMaterialsNum().intValue();
             }
             goodsMaterialsNmVO1.setGoodsMaterialsNum(a);
             goodsMaterialsNmVOS1.add(goodsMaterialsNmVO1);
         }
-
-        homeStatisticsVO.setGoodsMaterialsxiaohao(goodsMaterialsNmVOS);
-
+        homeStatisticsVO.setGoodsMaterialsxiaohao(goodsMaterialsNmVOS1);
         return homeStatisticsVO;
     }
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java
index a133ae4..8fcf25b 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesInfoServiceImpl.java
@@ -3,17 +3,23 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.management.domain.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.management.domain.dto.ADDPdDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesInfoQuery;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesInfoVO;
 import com.ruoyi.management.domain.vo.InventoriesSuppliesVO;
 import com.ruoyi.management.mapper.*;
 import com.ruoyi.management.service.InventoriesSuppliesInfoService;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.model.LoginUser;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.security.Security;
 import java.util.*;
 
 /**
@@ -39,14 +45,14 @@
 
     @Resource
     private SlGoodsShelfMapper slGoodsShelfMapper;
+    @Autowired
+    private InventoriesSuppliesServiceImpl inventoriesSuppliesService;
     @Override
     public PageDTO<InventoriesSuppliesInfoVO> inventoriesSuppliesInfoService(InventoriesSuppliesInfoQuery inventoriesSuppliesInfoQuery) {
-
         Page<InventoriesSuppliesInfo> page = new Page<>(inventoriesSuppliesInfoQuery.getPageCurr(), inventoriesSuppliesInfoQuery.getPageSize());
         LambdaQueryWrapper< InventoriesSuppliesInfo> wrapper1= Wrappers.lambdaQuery();
         wrapper1.eq(InventoriesSuppliesInfo::getSuppliesId, inventoriesSuppliesInfoQuery.getSuppliesId());
-        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,0);
-        wrapper1.orderByDesc(InventoriesSuppliesInfo::getCreateTime);
+
         wrapper1.orderByDesc(InventoriesSuppliesInfo::getType);
         Page<InventoriesSuppliesInfo> page2 = this.page(page, wrapper1);
         PageDTO<InventoriesSuppliesInfoVO> slGoodsMaterialsVO = PageDTO.of(page2, InventoriesSuppliesInfoVO.class);
@@ -83,7 +89,6 @@
             InventoriesSuppliesInfo byId = this.getById(m.getId());
             byId.setSuppliesNum(m.getSuppliesNum());
             this.updateById(byId);
-
         }
     }
 
@@ -98,40 +103,63 @@
     }
 
     @Override
-    public void submitInventoriesSuppliesInfo(InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO) {
-        LambdaQueryWrapper< InventoriesSuppliesInfo> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.eq(InventoriesSuppliesInfo::getSuppliesId, inventoriesSuppliesInfoDTO.getSuppliesId());
-        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,0);
-        List<InventoriesSuppliesInfo> page2 = this.list(wrapper1);
-        for (InventoriesSuppliesInfo page:page2){
-            if (page.getZkNum()!=page.getSuppliesNum()){
-                page.setType(2);
+    public String submitInventoriesSuppliesInfo(ADDPdDTO dto) {
+        LoginUser loginUser = SecurityUtils.getLoginUser();
+        // 添加主表
+        InventoriesSupplies inventoriesSupplies = new InventoriesSupplies();
+        inventoriesSupplies.setMaterialsId(dto.getManagementId());
+        inventoriesSupplies.setPdrId(loginUser.getUserid());
+        inventoriesSupplies.setPdTime(new Date());
+        inventoriesSupplies.setPdrName(loginUser.getUsername());
+        inventoriesSupplies.setCreateTime(new Date());
+        inventoriesSupplies.setDelFlag("2");
+        inventoriesSuppliesService.save(inventoriesSupplies);
+        for (InventoriesSuppliesInfoDTO temp : dto.getList()) {
+            InventoriesSuppliesInfo res = new InventoriesSuppliesInfo();
+            res.setRkId(temp.getRkId());
+            res.setSuppliesId(inventoriesSupplies.getId());
+            res.setSuppliesNum(temp.getSuppliesNum());
+            res.setZkNum(temp.getZkNum());
+            res.setCreateTime(new Date());
+            if (!Objects.equals(temp.getZkNum(), temp.getSuppliesNum())){
+                res.setType(2);
+            }else{
+                res.setType(1);
             }
-            this.updateById(page);
+            this.save(res);
+            return inventoriesSupplies.getId().toString();
         }
+        return null;
     }
 
     @Override
     public void accomplishInventoriesSuppliesInfo(InventoriesSuppliesInfoDTO inventoriesSuppliesInfoDTO) {
 
+        InventoriesSupplies byId = inventoriesSuppliesService.getById1(inventoriesSuppliesInfoDTO.getSuppliesId());
+        byId.setDelFlag("0");
+        inventoriesSuppliesService.updateById(byId);
         LambdaQueryWrapper< InventoriesSuppliesInfo> wrapper1= Wrappers.lambdaQuery();
         wrapper1.eq(InventoriesSuppliesInfo::getSuppliesId, inventoriesSuppliesInfoDTO.getSuppliesId());
-        wrapper1.eq(InventoriesSuppliesInfo::getType, 2);
-        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,0);
+        wrapper1.eq( InventoriesSuppliesInfo::getDelFlag,"0");
+        wrapper1.orderByDesc(InventoriesSuppliesInfo::getType);
         List<InventoriesSuppliesInfo> page2 = this.list(wrapper1);
         for (InventoriesSuppliesInfo page:page2){
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(page.getRkId());
             slVolumeProductionRk.setRepertoryZhai(page.getSuppliesNum());
             slVolumeProductionRkMapper.updateById(slVolumeProductionRk);
-
-
             LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
             wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,slVolumeProductionRk.getMaterialsId());
             wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId());
             wrapper2.eq(ManagementGoodsMaterials::getDelFlag, 0);
             ManagementGoodsMaterials managementGoodsMaterials = managementGoodsMaterialsMapper.selectOne(wrapper2);
             if (managementGoodsMaterials!=null){
-                managementGoodsMaterials.setRepertoryZhai(page.getSuppliesNum());
+                long l = page.getZkNum() - page.getSuppliesNum();
+                if (l>0){
+                    managementGoodsMaterials.setRepertoryZhai(page.getSuppliesNum());
+                }else if (l<0){
+                    managementGoodsMaterials.setRepertoryYishi(Integer.valueOf(String.valueOf(l)));
+                }
+                managementGoodsMaterials.setCheckNum(Integer.valueOf(String.valueOf(page.getSuppliesNum())));
                 managementGoodsMaterialsMapper.updateById(managementGoodsMaterials);
             }
         }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java
index f0438ff..0527763 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/InventoriesSuppliesServiceImpl.java
@@ -9,11 +9,8 @@
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.enums.ClientTypeEnum;
 import com.ruoyi.common.core.utils.page.PageDTO;
-import com.ruoyi.management.domain.InventoriesSupplies;
+import com.ruoyi.management.domain.*;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
-import com.ruoyi.management.domain.SlGoodsShelf;
-import com.ruoyi.management.domain.SlStoreManagement;
-import com.ruoyi.management.domain.SlVolumeProductionRk;
 import com.ruoyi.management.domain.dto.InventoriesSuppDTO;
 import com.ruoyi.management.domain.dto.InventoriesSuppliesQuery;
 import com.ruoyi.management.domain.dto.ScanCodesDTO;
@@ -24,12 +21,16 @@
 import com.ruoyi.management.mapper.SlStoreManagementMapper;
 import com.ruoyi.management.mapper.SlVolumeProductionRkMapper;
 import com.ruoyi.management.service.InventoriesSuppliesService;
+import com.ruoyi.management.service.SlGoodsMaterialsService;
+import com.ruoyi.management.service.SlGoodsShelfService;
 import com.ruoyi.management.service.SlVolumeProductionRkService;
 import com.ruoyi.system.api.constants.NotificationTypeConstant;
 import com.ruoyi.system.api.domain.SysUser;
 import com.ruoyi.system.api.domain.WebsocketMessageDTO;
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import io.swagger.models.auth.In;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -56,7 +57,12 @@
 
     @Resource
     private SlVolumeProductionRkMapper slVolumeProductionRkMapper;
-
+    @Autowired
+    private SlGoodsMaterialsService slGoodsMaterialsService;
+    @Autowired
+    private SlGoodsShelfService slGoodsShelfService;
+    @Autowired
+    private InventoriesSuppliesMapper inventoriesSuppliesMapper;
     private static final ObjectMapper objectMapper = new ObjectMapper();
 
     @Override
@@ -125,17 +131,31 @@
     public void scanCodes(String rkNumber) {
         LambdaQueryWrapper< SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery();
         wrapper1.eq(SlVolumeProductionRk::getRkNumber,rkNumber);
-        wrapper1.eq(SlVolumeProductionRk::getDelFlag,0);
+        wrapper1.eq(SlVolumeProductionRk::getDelFlag,"0");
         wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
         SlVolumeProductionRk page2 = slVolumeProductionRkMapper.selectOne(wrapper1);
-        if (page2.getSmerwmNum()>0){
-            Integer i=page2.getSmerwmNum()-1;
-            page2.setSmerwmNum(i);
-            slVolumeProductionRkMapper.updateById(page2);
-        }
+//        if (page2.getSmerwmNum()<page2.getErwmNum()){
+//            Integer i=page2.getSmerwmNum()+1;
+//            page2.setSmerwmNum(i);
+//            slVolumeProductionRkMapper.updateById(page2);
+//        }
+        SlGoodsMaterials byId = slGoodsMaterialsService.getById(page2.getMaterialsId());
+
+        page2.setGoodsMaterialsName(byId.getGoodsMaterialsName());
+        page2.setIsConsume(byId.getIsConsume());
+        page2.setManagementNumber(page2.getStoreManagementNumber());
+        page2.setShelfName(slGoodsShelfService.getById(page2.getShelfId()).getGoodsShelfName());
+        SlVolumeProductionRkVO slVolumeProductionRkVO = new SlVolumeProductionRkVO();
+        BeanUtils.copyProperties(page2,slVolumeProductionRkVO);
+        slVolumeProductionRkVO.setId(page2.getId().toString());
+//        slVolumeProductionRkVO.setVolumeProductionRkglId(page2.getVolumeProductionRkglId().toString());
+        slVolumeProductionRkVO.setMaterialsId(page2.getMaterialsId().toString());
+        slVolumeProductionRkVO.setManagementId(page2.getManagementId().toString());
+        slVolumeProductionRkVO.setShelfId(page2.getShelfId().toString());
+
         Map<String, Object> map = new ConcurrentHashMap<>();
         map.put("notification_type", NotificationTypeConstant.SCANCODES);
-        map.put("SlVolumeProductionRk",page2);
+        map.put("SlVolumeProductionRk",slVolumeProductionRkVO);
         String msg = null;
         try {
             msg = objectMapper.writeValueAsString(map);
@@ -145,4 +165,7 @@
     }
 
 
+    public InventoriesSupplies getById1(Long suppliesId) {
+        return inventoriesSuppliesMapper.getById1(suppliesId);
+    }
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java
index c7fcd92..aa61c7d 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/ManagementGoodsMaterialsServiceImpl.java
@@ -50,6 +50,9 @@
         if (managementGoodsMaterialsQuery.getStoreManagementName()!=null&&managementGoodsMaterialsQuery.getStoreManagementName()!=""){
             wrapper.like(SlStoreManagement::getStoreManagementName,managementGoodsMaterialsQuery.getStoreManagementName());
         }
+        if (managementGoodsMaterialsQuery.getStoreManagementGrade()!=null){
+            wrapper.eq(SlStoreManagement::getStoreManagementGrade,managementGoodsMaterialsQuery.getStoreManagementGrade());
+        }
         if (managementGoodsMaterialsQuery.getStoreManagementNo()!=null&&managementGoodsMaterialsQuery.getStoreManagementNo()!=""){
             wrapper.eq(SlStoreManagement::getStoreManagementNo,managementGoodsMaterialsQuery.getStoreManagementNo());
         }
@@ -78,7 +81,6 @@
         SlGoodsMaterialsList = slGoodsMaterials.stream().map(SlGoodsMaterials::getId)
                 .collect(Collectors.toSet());
 
-
         Page<ManagementGoodsMaterials> page = new Page<>(managementGoodsMaterialsQuery.getPageCurr(), managementGoodsMaterialsQuery.getPageSize());
         LambdaQueryWrapper< ManagementGoodsMaterials> wrapper3= Wrappers.lambdaQuery();
 
@@ -87,7 +89,7 @@
         }else{
             slVolumeProductionIdList=new HashSet<>();
             slVolumeProductionIdList.add(0L);
-            wrapper3.in(ManagementGoodsMaterials::getGoodsMaterialsId,slVolumeProductionIdList);
+            wrapper3.in(ManagementGoodsMaterials::getManagementId,slVolumeProductionIdList);
         }
         if (SlGoodsMaterialsList.size()>0){
             wrapper3.in(ManagementGoodsMaterials::getGoodsMaterialsId,SlGoodsMaterialsList);
@@ -96,8 +98,8 @@
             SlGoodsMaterialsList.add(0L);
             wrapper3.in(ManagementGoodsMaterials::getGoodsMaterialsId,SlGoodsMaterialsList);
         }
-        wrapper3.apply("repertory_zhai<repertory");
-        wrapper3.eq( ManagementGoodsMaterials::getDelFlag,0);
+        wrapper3.apply("repertory_zhai <repertory");
+        wrapper3.eq(ManagementGoodsMaterials::getDelFlag,0);
         wrapper3.orderByDesc(ManagementGoodsMaterials::getCreateTime);
         Page<ManagementGoodsMaterials> page1 = this.page(page, wrapper3);
         PageDTO<ManagementGoodsMaterialsVO> storeManagementGoodSmaterialsVOPageDTO = PageDTO.of(page1, ManagementGoodsMaterialsVO.class);
@@ -106,8 +108,6 @@
             SlGoodsMaterials slGoodsMaterials1 = slGoodsMaterialsMapper.selectById(li.getGoodsMaterialsId());
             li.setGoodsMaterialsName(slGoodsMaterials1.getGoodsMaterialsName());
             li.setIsConsume(slGoodsMaterials1.getIsConsume());
-            li.setRepertory(slGoodsMaterials1.getRepertory());
-
             SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(li.getManagementId());
             li.setProvinceCode(slStoreManagement.getProvinceCode());
             li.setStoreManagementName(slStoreManagement.getStoreManagementName());
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java
index 3dbba56..5610585 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditRecordServiceImpl.java
@@ -3,6 +3,7 @@
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.management.domain.*;
 
@@ -14,6 +15,7 @@
 import com.ruoyi.system.api.domain.SysUser;
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import javax.annotation.Resource;
 import java.util.Date;
@@ -52,6 +54,30 @@
         wrapper.eq( SlAuditRecord::getDelFlag,0);
         wrapper.orderByAsc(SlAuditRecord::getType);
         List<SlAuditRecord> page1 = this.list(wrapper);
+        for (int i = 0; i < page1.size(); i++) {
+            page1.get(i).setIsPlatform(0);
+            SlAudit slAudit = slAuditMapper.selectById(page1.get(i).getAuditId());
+            if (slAudit!=null){
+                String shenhId = slAudit.getAuditUserId();
+                if (StringUtils.hasLength(shenhId)){
+                    String[] split = shenhId.split(",");
+                    // 取最后一个
+                    shenhId = split[split.length - 1];
+                    SysUser data = sysUserClient.getSysUser(Long.valueOf(shenhId)).getData();
+                    if (data!=null){
+                        // 判断当前审核人是不是平台管理员
+                        if (data.getUserType().equals("00")){
+                            page1.get(i).setIsPlatform(1);
+                        }
+                    }
+                }
+            }
+            if (page1.get(i).getState() == 3){
+                assert slAudit != null;
+                page1.get(i).setRefuseReason(slAudit.getCause());
+            }
+        }
+
         return page1;
     }
 
@@ -61,6 +87,12 @@
         SlAuditRecord byId = this.getOne(new QueryWrapper<SlAuditRecord>()
                 .eq("type", auditRecordDTO.getType())
                 .eq("audit_id", auditRecordDTO.getAuditId()));
+        String auditUserId = slAudit.getAuditUserId();
+        if (StringUtils.hasLength(auditUserId)){
+            slAudit.setAuditUserId(slAudit.getAuditUserId()+","+SecurityUtils.getUserId());
+        }else{
+            slAudit.setAuditUserId(SecurityUtils.getUserId()+"");
+        }
         Long userid = SecurityUtils.getUserId();
         SysUser data = sysUserClient.getSysUser(userid).getData();
         if (auditRecordDTO.getState()==2){
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java
index 1ddad21..ca23b4d 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlAuditServiceImpl.java
@@ -1,6 +1,7 @@
 package com.ruoyi.management.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.utils.page.PageDTO;
@@ -54,6 +55,10 @@
 
     @Override
     public PageDTO<SlAuditVO> getslAuditList(AuditRecordListQuery auditRecordListQuery) {
+        List<Long> rkglIds = new ArrayList<>();
+        List<Long> ckglIds = new ArrayList<>();
+        List<Long> zyglIds = new ArrayList<>();
+        List<Long> auditIds = new ArrayList<>();
         Long userid = SecurityUtils.getUserId();
         SysUser data = sysUserClient.getSysUser(userid).getData();
         getVolumeProductionRkQuery getVolumeProductionRkQuer=new getVolumeProductionRkQuery();
@@ -73,13 +78,50 @@
             goodsSkuIdList1.add(0L);
             wrapper.in(SlAudit::getSysId,goodsSkuIdList1);
         }
-        if (!data.getUserType().equals("00")){
-            wrapper.in(SlAudit::getShenhId,userid);
+
+        switch (auditRecordListQuery.getType()){
+            case 1:
+                rkglIds = slVolumeProductionRkglMapper.selectList(new QueryWrapper<SlVolumeProductionRkgl>()
+                        .ne("audit_status", 7)).stream().map(SlVolumeProductionRkgl::getId).collect(Collectors.toList());
+                wrapper.in(SlAudit::getRkId,rkglIds);
+                if (!data.getUserType().equals("00")){
+                    // 只查询相关的审核
+                    auditIds = slAuditRecordMapper.selectList(new QueryWrapper<SlAuditRecord>()
+                            .like("shenh_id", data.getUserId())).stream().map(SlAuditRecord::getAuditId).collect(Collectors.toList());
+                    wrapper.in(SlAudit::getId,auditIds);
+                }
+
+                break;
+            case 2:
+                ckglIds = slVolumeProductionCKglMapper.selectList(new QueryWrapper<SlVolumeProductionCkgl>()
+                        .ne("audit_status", 8)).stream().map(SlVolumeProductionCkgl::getId).collect(Collectors.toList());
+                wrapper.in(SlAudit::getRkId,ckglIds);
+                if (!data.getUserType().equals("00")){
+                    // 只查询相关的审核
+                    auditIds = slAuditRecordMapper.selectList(new QueryWrapper<SlAuditRecord>()
+                            .like("shenh_id", data.getUserId())).stream().map(SlAuditRecord::getAuditId).collect(Collectors.toList());
+                    wrapper.in(SlAudit::getId,auditIds);
+                }
+
+                break;
+            case 3:
+                zyglIds = slVolumeProductionZyglMapper.selectList(new QueryWrapper<SlVolumeProductionZygl>()
+                        .ne("audit_status", 7)).stream().map(SlVolumeProductionZygl::getId).collect(Collectors.toList());
+                wrapper.in(SlAudit::getRkId,zyglIds);
+                if (!data.getUserType().equals("00")){
+                    // 只查询相关的审核
+                    auditIds = slAuditRecordMapper.selectList(new QueryWrapper<SlAuditRecord>()
+                            .like("shenh_id", data.getUserId())).stream().map(SlAuditRecord::getAuditId).collect(Collectors.toList());
+                    wrapper.in(SlAudit::getId,auditIds);
+                }
+
+                break;
         }
         wrapper.eq(SlAudit::getType,auditRecordListQuery.getType());
         wrapper.eq(SlAudit::getDelFlag,0);
         wrapper.orderByDesc(SlAudit::getCreateTime);
         Page<SlAudit> page1 = this.page(page, wrapper);
+
         PageDTO<SlAuditVO> slEquipmentVOPageDTO = PageDTO.of(page1, SlAuditVO.class);
         List<SlAuditVO> list = slEquipmentVOPageDTO.getList();
         for (SlAuditVO sl:list){
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java
index 9fbdf4c..b55157a 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlEquipmentServiceImpl.java
@@ -1,9 +1,11 @@
 package com.ruoyi.management.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.management.domain.SlEquipment;
 import com.ruoyi.management.domain.SlGoodsMaterials;
 import com.ruoyi.management.domain.SlStoreManagement;
@@ -19,10 +21,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
-import java.util.ArrayList;
-import java.util.HashSet;
-import java.util.List;
-import java.util.Set;
+import java.util.*;
 
 /**
  * <p>
@@ -45,7 +44,7 @@
         if(slEquipmentQuery.getEquipmentName()!=null&&slEquipmentQuery.getEquipmentName()!=""){
             wrapper.like(SlEquipment::getEquipmentName,slEquipmentQuery.getEquipmentName());
         }
-        if(slEquipmentQuery.getEquipmentName()!=null&&slEquipmentQuery.getType()!=0){
+        if(slEquipmentQuery.getType()!=null&&slEquipmentQuery.getType()!=0){
         wrapper.eq(SlEquipment::getType,slEquipmentQuery.getType());
         }
         wrapper.eq( SlEquipment::getDelFlag,0);
@@ -69,8 +68,15 @@
     }
 
     @Override
-    public void addSlEquipment(SlEquipmentDTO slEquipmentDTO) {
+    public AjaxResult addSlEquipment(SlEquipmentDTO slEquipmentDTO) {
+
         if (slEquipmentDTO.getId()==null){
+            List<SlEquipment> list = this.list(new QueryWrapper<SlEquipment>()
+                    .eq("type", slEquipmentDTO.getType())
+                    .eq("equipment_num", slEquipmentDTO.getEquipmentNum()));
+            if (!list.isEmpty()){
+                return AjaxResult.error("当前设备已存在相同设备编号");
+            }
             SlEquipment slEquipment=new SlEquipment();
             slEquipment.setEquipmentName(slEquipmentDTO.getEquipmentName());
             slEquipment.setEquipmentNum(slEquipmentDTO.getEquipmentNum());
@@ -79,6 +85,13 @@
             this.save(slEquipment);
         }else{
             SlEquipment byId = this.getById(slEquipmentDTO.getId());
+            List<SlEquipment> list = this.list(new QueryWrapper<SlEquipment>()
+                    .eq("type", slEquipmentDTO.getType())
+                    .ne("id",slEquipmentDTO.getId())
+                    .eq("equipment_num", slEquipmentDTO.getEquipmentNum()));
+            if (!list.isEmpty()){
+                return AjaxResult.error("当前设备已存在相同设备编号");
+            }
             if (slEquipmentDTO.getEquipmentName()!=null){
                 byId.setEquipmentName(slEquipmentDTO.getEquipmentName());
             }
@@ -93,6 +106,7 @@
             }
             this.updateById(byId);
         }
+        return AjaxResult.success();
     }
 
     @Override
@@ -124,24 +138,30 @@
 
         List<Long> arr=new ArrayList<>();
         wrapper.eq(SlStoreManagement::getDelFlag,0);
-        wrapper.eq(SlStoreManagement::getAdministratorId,seBei.getUserId());
         List<SlStoreManagement> page = slStoreManagementMapper.selectList(wrapper);
         for (SlStoreManagement a:page){
-            arr.add(a.getId());
+            List<String> list = Arrays.asList(a.getAdministratorId().split(","));
+            if (list.contains(seBei.getUserId().toString())){
+                arr.add(a.getId());
+            }
         }
         LambdaQueryWrapper< SlStoreManagement> wrapper1= Wrappers.lambdaQuery();
         wrapper1.eq(SlStoreManagement::getDelFlag,0);
-        wrapper1.eq(SlStoreManagement::getCompetentId,seBei.getUserId());
         List<SlStoreManagement> page1 = slStoreManagementMapper.selectList(wrapper1);
         for (SlStoreManagement a1:page1){
-            arr.add(a1.getId());
+            List<String> list = Arrays.asList(a1.getCompetentId().split(","));
+            if (list.contains(seBei.getUserId().toString())){
+                arr.add(a1.getId());
+            }
         }
         LambdaQueryWrapper< SlStoreManagement> wrapper2= Wrappers.lambdaQuery();
         wrapper2.eq(SlStoreManagement::getDelFlag,0);
-        wrapper2.eq(SlStoreManagement::getDirectorId,seBei.getUserId());
         List<SlStoreManagement> page2 = slStoreManagementMapper.selectList(wrapper2);
         for (SlStoreManagement a2:page2){
-            arr.add(a2.getId());
+            List<String> list = Arrays.asList(a2.getDirectorId().split(","));
+            if (list.contains(seBei.getUserId().toString())){
+                arr.add(a2.getId());
+            }
         }
         Set<Long> set = new HashSet<>(arr);
         arr.clear();
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java
index acce94f..4fd7c83 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsMaterialsServiceImpl.java
@@ -23,9 +23,11 @@
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.management.service.SlVolumeProductionRkService;
 import io.micrometer.core.instrument.binder.BaseUnits;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.util.Date;
 import java.util.List;
 import java.util.Set;
 import java.util.stream.Collectors;
@@ -79,10 +81,19 @@
             if (slGoodsMaterialsDTO.getIsConsume()!=null){
                 byId.setIsConsume(slGoodsMaterialsDTO.getIsConsume());
             }
-            this.updateById(byId);
+            byId.setId(slGoodsMaterialsDTO.getId());
+            byId.setGoodsMaterialsName(slGoodsMaterialsDTO.getGoodsMaterialsName());
+            byId.setIsConsume(slGoodsMaterialsDTO.getIsConsume());
+            byId.setRepertory(slGoodsMaterialsDTO.getRepertory());
+            byId.setGoodsMaterialsNo(slGoodsMaterialsDTO.getGoodsMaterialsNo());
+            byId.setUpdateTime(new Date());
+            // 手动update
+            slGoodsMaterialsMapper.update1(byId);
         }
     }
 
+    @Autowired
+    private SlGoodsMaterialsMapper slGoodsMaterialsMapper;
     @Override
     public PageDTO<SlGoodsMaterialsVO> getGoodSmaterialsList(SlGoodsMaterialsQuery slGoodsMaterialsQuery) {
         Page<SlGoodsMaterials> page = new Page<>(slGoodsMaterialsQuery.getPageCurr(), slGoodsMaterialsQuery.getPageSize());
@@ -152,6 +163,7 @@
         LambdaQueryWrapper< ManagementGoodsMaterials> wrapper= Wrappers.lambdaQuery();
         wrapper.eq(ManagementGoodsMaterials::getGoodsMaterialsId,storeManagementGoodSmaterialsQuery.getGoodsMaterialsId());
         wrapper.eq( ManagementGoodsMaterials::getDelFlag,0);
+        wrapper.eq( ManagementGoodsMaterials::getManagementId,storeManagementGoodSmaterialsQuery.getStoreManagementId());
         wrapper.orderByDesc(ManagementGoodsMaterials::getCreateTime);
         ManagementGoodsMaterials page1 = managementGoodsMaterialsService.getOne(wrapper);
         StoreManagementGoodSmaterialsVO storeManagementGoodSmaterialsVO = BeanUtils.copyBean(page1, StoreManagementGoodSmaterialsVO.class);
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java
index 51e6a5f..aad0664 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlGoodsShelfServiceImpl.java
@@ -151,7 +151,7 @@
         slGoodsShelfVO.setCountyCode(byId.getCountyCode());
         slGoodsShelfVO.setTownCode(byId.getTownCode());
         slGoodsShelfVO.setTownName(byId.getTownName());
-
+        slGoodsShelfVO.setGrade(byId.getStoreManagementGrade());
         return slGoodsShelfVO;
     }
 
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementImgServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementImgServiceImpl.java
index 4e17b2f..f25f7b5 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementImgServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementImgServiceImpl.java
@@ -25,13 +25,14 @@
 public class SlStoreManagementImgServiceImpl extends ServiceImpl<SlStoreManagementImgMapper, SlStoreManagementImg> implements SlStoreManagementImgService {
 
     @Override
-    public void addStoreManagementimg(StoreManagementimgDTO storeManagementimgDTO) {
+    public String addStoreManagementimg(StoreManagementimgDTO storeManagementimgDTO) {
             if (storeManagementimgDTO.getId()==null){
                 SlStoreManagementImg slStoreManagementImg=new SlStoreManagementImg();
                 slStoreManagementImg.setStoreManagementId(storeManagementimgDTO.getStoreManagementId());
                 slStoreManagementImg.setStoreManagementNumber(storeManagementimgDTO.getStoreManagementNumber());
                 slStoreManagementImg.setImgUrl(storeManagementimgDTO.getImgUrl());
                 this.save(slStoreManagementImg);
+                return slStoreManagementImg.getId().toString();
             }else {
                 SlStoreManagementImg slStoreManagementImg = this.getById(storeManagementimgDTO.getId());
                 if (storeManagementimgDTO.getStoreManagementId()!=null){
@@ -44,7 +45,9 @@
                     slStoreManagementImg.setImgUrl(storeManagementimgDTO.getImgUrl());
                 }
                 this.updateById(slStoreManagementImg);
+                return slStoreManagementImg.getId().toString();
             }
+
     }
 
     @Override
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementServiceImpl.java
index bfd86d5..88eb02f 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlStoreManagementServiceImpl.java
@@ -1,9 +1,13 @@
 package com.ruoyi.management.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.utils.page.PageDTO;
+import com.ruoyi.common.core.web.domain.AjaxResult;
+import com.ruoyi.common.security.service.TokenService;
+import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.management.domain.ManagementGoodsMaterials;
 import com.ruoyi.management.domain.SlStoreManagement;
 
@@ -20,6 +24,10 @@
 import com.ruoyi.management.mapper.SlVolumeProductionRkMapper;
 import com.ruoyi.management.mapper.SlVolumeProductionRkglMapper;
 import com.ruoyi.management.service.SlStoreManagementService;
+import com.ruoyi.system.api.domain.SysUser;
+import com.ruoyi.system.api.feignClient.SysUserClient;
+import org.apache.catalina.security.SecurityUtil;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
@@ -67,8 +75,15 @@
     }
 
     @Override
-    public void addStoreManagement(StoreManagementDTO storeManagementDTO) {
+    public AjaxResult addStoreManagement(StoreManagementDTO storeManagementDTO) {
         if (storeManagementDTO.getId()==null){
+            List<SlStoreManagement> list = this.list(new QueryWrapper<SlStoreManagement>()
+                    .eq("store_management_grade", storeManagementDTO.getStoreManagementGrade())
+                            .eq("store_management_no", storeManagementDTO.getStoreManagementNo())
+                    .eq("del_flag", 0));
+            if (!list.isEmpty()){
+                return AjaxResult.error("当前仓库等级已有相同编号仓库");
+            }
             SlStoreManagement slStoreManagement=new SlStoreManagement();
             slStoreManagement.setStoreManagementNo(storeManagementDTO.getStoreManagementNo());
             slStoreManagement.setStoreManagementAdder(storeManagementDTO.getStoreManagementAdder());
@@ -90,6 +105,14 @@
             this.save(slStoreManagement);
         }else {
             SlStoreManagement slStoreManagement = this.getById(storeManagementDTO.getId());
+            List<SlStoreManagement> list = this.list(new QueryWrapper<SlStoreManagement>()
+                    .eq("store_management_grade", storeManagementDTO.getStoreManagementGrade())
+                    .eq("store_management_no", storeManagementDTO.getStoreManagementNo())
+                    .ne("id",slStoreManagement.getId())
+                    .eq("del_flag", 0));
+            if (!list.isEmpty()){
+                return AjaxResult.error("当前仓库等级已有相同编号仓库");
+            }
             if (storeManagementDTO.getStoreManagementNo()!=null){
                 slStoreManagement.setStoreManagementNo(storeManagementDTO.getStoreManagementNo());
             }
@@ -143,35 +166,83 @@
             }
             this.updateById(slStoreManagement);
         }
-
+        return AjaxResult.success();
     }
 
+    @Autowired
+    private TokenService tokenService;
+    @Resource
+    private SysUserClient sysUserClient;
     @Override
     public List<SlStoreManagement> QueryStoreManagementList(QStoreManagementQuery StoreManagementQuery) {
         LambdaQueryWrapper< SlStoreManagement> wrapper= Wrappers.lambdaQuery();
-        if (StoreManagementQuery.getCityCode()!="" && StoreManagementQuery.getCityCode()!=null){
-        wrapper.eq(SlStoreManagement::getCityCode,StoreManagementQuery.getCityCode());
+        if (StoreManagementQuery.getCityCode()!=null && StoreManagementQuery.getCityCode()!=""){
+                wrapper.eq(SlStoreManagement::getCityCode,StoreManagementQuery.getCityCode());
         }
-        if (StoreManagementQuery.getCountyCode()!="" && StoreManagementQuery.getCountyCode()!=null){
+        if (StoreManagementQuery.getCountyCode()!=null && StoreManagementQuery.getCountyCode()!=""){
         wrapper.eq(SlStoreManagement::getCountyCode,StoreManagementQuery.getCountyCode());
         }
-        if (StoreManagementQuery.getStoreManagementGrade()!=null&&StoreManagementQuery.getStoreManagementGrade()!=0  ){
+        if (StoreManagementQuery.getTownCode()!=null && StoreManagementQuery.getTownCode()!=""){
+        wrapper.eq(SlStoreManagement::getTownCode,StoreManagementQuery.getTownCode());
+        }
+        if (StoreManagementQuery.getStoreManagementGrade()!=null&&StoreManagementQuery.getStoreManagementGrade()!=0){
             wrapper.eq(SlStoreManagement::getStoreManagementGrade,StoreManagementQuery.getStoreManagementGrade());
         }
-
-        wrapper.eq( SlStoreManagement::getDelFlag,0);
+        wrapper.eq(SlStoreManagement::getDelFlag,0);
         wrapper.orderByDesc(SlStoreManagement::getCreateTime);
+        Long userid = tokenService.getLoginUser().getUserid();
+        SysUser data = sysUserClient.getSysUser(userid).getData();
+        if (data!=null){
+            if (!data.getUserType().equals("00")){
+                // 仓库管理员 根据仓库管理员的等级查询对应的仓库
+                switch (data.getRoleType()){
+                    case 3:
+                        wrapper.ge(SlStoreManagement::getStoreManagementGrade,3);
+                        break;
+                    case 4:
+                        wrapper.ge(SlStoreManagement::getStoreManagementGrade,4);
+                        break;
+                    case 5:
+                        wrapper.ge(SlStoreManagement::getStoreManagementGrade,5);
+                        break;
+                    case 6:
+                        wrapper.eq(SlStoreManagement::getStoreManagementGrade,6);
+                        break;
+                }
+
+            }
+
+        }
         List<SlStoreManagement> page1 = this.list(wrapper);
         return page1;
     }
 
     @Override
     public PageDTO<SlStoreManagementInventoryVO> getManagementInventoryList(StoreManagementQuery storeManagementQuery) {
+        Long userId = SecurityUtils.getUserId();
+        SysUser data = sysUserClient.getSysUser(userId).getData();
 
         Page<SlStoreManagement> page = new Page<>(storeManagementQuery.getPageCurr(), storeManagementQuery.getPageSize());
         LambdaQueryWrapper< SlStoreManagement> wrapper= Wrappers.lambdaQuery();
         if (storeManagementQuery.getStoreManagementName()!=null){
-            wrapper.eq(SlStoreManagement::getStoreManagementName,storeManagementQuery.getStoreManagementName());
+            wrapper.like(SlStoreManagement::getStoreManagementName,storeManagementQuery.getStoreManagementName());
+        }
+        if (!data.getUserType().equals("00")){
+            // 不是平台账号 根据角色类型查询对应的仓库
+            switch (data.getRoleType()){
+                case 3:
+                    wrapper.ge(SlStoreManagement::getStoreManagementGrade,3);
+                    break;
+                case 4:
+                    wrapper.ge(SlStoreManagement::getStoreManagementGrade,4);
+                    break;
+                case 5:
+                    wrapper.ge(SlStoreManagement::getStoreManagementGrade,5);
+                    break;
+                case 6:
+                    wrapper.eq(SlStoreManagement::getStoreManagementGrade,6);
+                    break;
+            }
         }
         if (storeManagementQuery.getStoreManagementNo()!=null){
         wrapper.eq(SlStoreManagement::getStoreManagementNo,storeManagementQuery.getStoreManagementNo());
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java
index c030fff..0e04574 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkServiceImpl.java
@@ -18,6 +18,7 @@
 import com.ruoyi.management.service.ManagementGoodsMaterialsService;
 import com.ruoyi.management.service.SlVolumeProductionCkService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.management.service.SlVolumeProductionCkglService;
 import com.ruoyi.management.service.SlVolumeProductionRkService;
 import com.ruoyi.system.api.domain.SysUser;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -43,6 +44,8 @@
 
     @Resource
     private SlVolumeProductionRkMapper  slVolumeProductionRkMapper;
+    @Autowired
+    private SlVolumeProductionCkglService ckglService;
 
     @Resource
     private SlGoodsMaterialsMapper slGoodsMaterialsMapper;
@@ -77,9 +80,24 @@
                byId.setCkNum(c.getCkNum());
                byId.setGuihNum(c.getGuihNum());
                this.updateById(byId);
+
            }
+    }
+    @Override
+    public void updSlVolumeProductionCk1(List<AddSlVolumeProductionCkDTO> slVolumeProductionCkDTO) {
+           for (AddSlVolumeProductionCkDTO c:slVolumeProductionCkDTO){
+               SlVolumeProductionCk byId = this.getById(c.getCkgl_id());
+               byId.setCkNum(c.getCkNum());
+               byId.setGuihNum(c.getGuihNum());
+               byId.setIsGh(2);
+               this.updateById(byId);
+//               Long ckglId = byId.getCkglId();
+//               SlVolumeProductionCkgl byId1 = ckglService.getById(ckglId);
+//               byId1.setAuditStatus(1);
+//               byId1.setPresentState(1);
+//               ckglService.updateById(byId1);
 
-
+           }
     }
 
     @Override
@@ -110,8 +128,8 @@
 
         PageDTO<ManagementimgVolumeProductionCkVO> SlGoodsShelfDTO = PageDTO.of(page2, ManagementimgVolumeProductionCkVO.class);
         List<ManagementimgVolumeProductionCkVO> list2 = SlGoodsShelfDTO.getList();
-        for(ManagementimgVolumeProductionCkVO list:list2) {{
-
+        for(ManagementimgVolumeProductionCkVO list:list2) {
+            {
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
             list.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber());
             list.setRkNumber(slVolumeProductionRk.getRkNumber());
@@ -159,7 +177,6 @@
     @Override
     public PageDTO<InventoriesSuppliesInfoVO> getMaterialByManagementIdList(GetMaterialsByManagementIdQuery query) {
         List<InventoriesSuppliesInfoVO> res = new ArrayList<>();
-
         Page<SlVolumeProductionRk> page = new Page<>(query.getPageCurr(), query.getPageSize());
         QueryWrapper<ManagementGoodsMaterials> wrapper1 = new QueryWrapper<>();
         wrapper1.eq("del_flag","0");
@@ -174,10 +191,13 @@
             wrapper2.eq("is_consume",query.getIsConsume());
         }
         wrapper2.eq("del_flag","0");
+        if (collect.isEmpty())collect.add(-1L);
         wrapper2.in("id",collect);
         List<Long> collect1 = slGoodsMaterialsMapper.selectList(wrapper2).stream().map(SlGoodsMaterials::getId).collect(Collectors.toList());
         QueryWrapper<SlVolumeProductionRk> wrapper = new QueryWrapper<>();
+        if (collect1.isEmpty())collect1.add(-1L);
         wrapper.in("materials_id",collect1);
+        wrapper.eq("management_id",query.getManagementId());
         wrapper.eq("del_flag","0");
 
         Page<SlVolumeProductionRk> page2 = slVolumeProductionRkService.page(page, wrapper);
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java
index 920c0a4..8a664ee 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionCkglServiceImpl.java
@@ -132,14 +132,20 @@
 
     @Override
     public VolumeProductionCkglInfoVO getVolumeProductionCkglnfo(Long id) {
-
         SlVolumeProductionCkgl byId = this.getById(id);
         VolumeProductionCkglInfoVO v= BeanUtils.copyBean(byId, VolumeProductionCkglInfoVO.class);
+        v.setAuthorization(byId.getAuthorizationUrl());
         SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId());
         v.setStoreManagementName(slStoreManagement.getStoreManagementName());
+        v.setZhuren(slStoreManagement.getDirectorId());
+        v.setZhuguan(slStoreManagement.getCompetentId());
+        v.setGuanliyuan(slStoreManagement.getAdministratorId());
+        v.setReasonsRefusal(byId.getReasonsRefusal());
         SysUser data1 = sysUserClient.getSysUser(Long.valueOf(byId.getSysId())).getData();
-        v.setSysName(data1.getNickName());
-        v.setSysPhone(data1.getPhonenumber());
+        if (data1!=null){
+            v.setSysName(data1.getNickName());
+            v.setSysPhone(data1.getPhonenumber());
+        }
         return v;
     }
 
@@ -147,7 +153,7 @@
     public VolumeProductionCkglInventoryVO getVolumeProductionCkglInventory(Long id) {
         SlVolumeProductionCkgl byId = this.getById(id);
         VolumeProductionCkglInventoryVO vo = new VolumeProductionCkglInventoryVO();
-        SysUser data = sysUserClient.getSysUser(byId.getId()).getData();
+        SysUser data = sysUserClient.getSysUser(byId.getSysId()).getData();
         vo.setSysPhone(data.getPhonenumber());
         vo.setSysName(data.getNickName());
         vo.setStartiTime(byId.getStartiTime());
@@ -221,11 +227,12 @@
         wrapper1.orderByDesc(SlVolumeProductionCk::getCreateTime);
         List<SlVolumeProductionCk> page2 = slVolumeProductionCkMapper.selectList(wrapper1);
         for (SlVolumeProductionCk list : page2) {
+            list.setCkTime(new Date());
+            slVolumeProductionCkMapper.updateById(list);
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
             Long num =slVolumeProductionRk.getRepertoryZhai()-Long.valueOf(list.getCkNum());
             slVolumeProductionRk.setRepertoryZhai(num);
             slVolumeProductionRkMapper.updateById(slVolumeProductionRk);
-
             LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
             wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId());
             wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId());
@@ -256,13 +263,12 @@
         List<SlVolumeProductionCk> page2 = slVolumeProductionCkMapper.selectList(wrapper1);
         for (SlVolumeProductionCk list : page2) {
             list.setIsGh(2);
+            list.setGhTime(new Date());
             slVolumeProductionCkMapper.updateById(list);
-
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
             Long num =slVolumeProductionRk.getRepertoryZhai()+Long.valueOf(list.getGuihNum());
             slVolumeProductionRk.setRepertoryZhai(num);
             slVolumeProductionRkMapper.updateById(slVolumeProductionRk);
-
             LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
             wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId());
             wrapper2.eq(ManagementGoodsMaterials::getManagementId,slVolumeProductionRk.getManagementId());
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java
index 0fd00f0..a6c2f62 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java
@@ -3,6 +3,7 @@
 import com.alibaba.fastjson2.util.UUIDUtils;
 import com.alibaba.nacos.common.utils.UuidUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.ruoyi.common.core.utils.page.PageDTO;
@@ -14,6 +15,7 @@
 import com.ruoyi.management.service.SlVolumeProductionRkService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import com.ruoyi.management.service.SlVolumeProductionRkglService;
+import com.ruoyi.management.service.SlVolumeProductionZyService;
 import com.ruoyi.management.util.ObsUploadUtil;
 import com.ruoyi.management.util.QRCodeUtil;
 import com.ruoyi.management.util.UUIDUtil;
@@ -21,9 +23,11 @@
 import com.ruoyi.system.api.feignClient.SysUserClient;
 import org.apache.logging.log4j.core.util.UuidUtil;
 import org.apache.tomcat.util.http.fileupload.ByteArrayOutputStream;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.core.io.ByteArrayResource;
 import org.springframework.mock.web.MockMultipartFile;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 import org.springframework.web.multipart.MultipartFile;
 
 import javax.annotation.Resource;
@@ -64,8 +68,11 @@
 
     @Resource
     private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
+    @Autowired
+    private SlVolumeProductionZyService slVolumeProductionZyService;
 
-
+    @Autowired
+    private SlVolumeProductionZyService slVolumeProductionZyglService;
 
 
     @Override
@@ -86,7 +93,9 @@
             SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(list.getMaterialsId());
             list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName());
             list.setIsConsume(slGoodsMaterials.getIsConsume());
-            list.setSupplierName(data.getNickName());
+            if (data!=null){
+                list.setSupplierName(data.getNickName());
+            }
             SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId());
             if (slGoodsShelf!=null){
                 list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName());
@@ -123,7 +132,9 @@
             SlVolumeProductionRkgl byId = slVolumeProductionRkglMapper.selectById(list.getVolumeProductionRkglId());
             if (byId!=null){
                 SysUser data = sysUserClient.getSysUser(byId.getSupplierId()).getData();
-                list.setSupplierName(data.getNickName());
+                if (data!=null){
+                    list.setSupplierName(data.getNickName());
+                }
             }
 
 
@@ -139,13 +150,13 @@
 
     @Override
     public void addVolumeProductionRkgl(List<SlVolumeProductionRkListDTO> slVolumeProductionRkListDTO) {
-        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS");
         for (SlVolumeProductionRkListDTO m:slVolumeProductionRkListDTO){
             SlVolumeProductionRk slVolumeProductionRk=new SlVolumeProductionRk();
             slVolumeProductionRk.setVolumeProductionRkglId(m.getVolumeProductionRkglId());
             slVolumeProductionRk.setMaterialsId(m.getMaterialsId());
             slVolumeProductionRk.setManagementId(m.getManagementId());
-            slVolumeProductionRk.setRkNumber("CD-"+simpleDateFormat.format(new Date()));
+            slVolumeProductionRk.setRkNumber("CD-"+simpleDateFormat.format(new Date())+UUIDUtil.getNumberRandom(2));
             slVolumeProductionRk.setNewAddTime(m.getNewAddTime());
             if ( m.getErwmNum()!=null){
                 slVolumeProductionRk.setErwmNum( m.getErwmNum());
@@ -160,7 +171,7 @@
             }if ( m.getStoreManagementNumber()!=null){
                 slVolumeProductionRk.setStoreManagementNumber( m.getStoreManagementNumber());
             }if ( m.getRkNumber()!=null){
-                slVolumeProductionRk.setRkNumber( m.getRkNumber());
+                slVolumeProductionRk.setRkNumber(m.getRkNumber());
             }
             slVolumeProductionRk.setCreateTime(new Date());
             slVolumeProductionRk.setRepertoryZhai(m.getRkNum());
@@ -173,6 +184,7 @@
     public void uplSlVolumeProductionRk(List<SlVolumeProductionRkDTO> SlVolumeProductionRkDTO) {
         for (SlVolumeProductionRkDTO a:SlVolumeProductionRkDTO){
             SlVolumeProductionRk byId = this.getById(a.getId());
+            byId.setSmerwmNum(0);
             if (a.getErwmNum()!=null){
                 byId.setErwmNum(a.getErwmNum());
             }if (a.getRkPice()!=null){
@@ -196,10 +208,21 @@
 
     @Override
     public PageDTO<getVolumeProductionRkgCodeVO> getVolumeProductionRkgCode(VolumeProductionRkgCodeQuery volumeProductionRkgCodeQuery) {
+        QueryWrapper<SlGoodsMaterials> slGoodsMaterialsQueryWrapper = new QueryWrapper<>();
+        slGoodsMaterialsQueryWrapper.eq("del_flag", 0);
+        if (StringUtils.hasLength(volumeProductionRkgCodeQuery.getGoodsMaterialsName())){
+            slGoodsMaterialsQueryWrapper.like("goods_materials_name", volumeProductionRkgCodeQuery.getGoodsMaterialsName());
+        }
+        List<Long> collect = slGoodsMaterialsMapper.selectList(slGoodsMaterialsQueryWrapper)
+                .stream().map(SlGoodsMaterials::getId).collect(Collectors.toList());
+        if (collect.isEmpty()){
+            collect.add(-1L);
+        }
         Page<SlVolumeProductionRk> page = new Page<>(volumeProductionRkgCodeQuery.getPageCurr(), volumeProductionRkgCodeQuery.getPageSize());
         LambdaQueryWrapper< SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.like(SlVolumeProductionRk::getVolumeProductionRkglId,volumeProductionRkgCodeQuery.getVolumeProductionRkglId());
+        wrapper1.eq(SlVolumeProductionRk::getVolumeProductionRkglId,volumeProductionRkgCodeQuery.getVolumeProductionRkglId());
         wrapper1.eq( SlVolumeProductionRk::getDelFlag,0);
+        wrapper1.in( SlVolumeProductionRk::getMaterialsId,collect);
         wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
         Page<SlVolumeProductionRk> page2 = this.page(page, wrapper1);
         PageDTO<getVolumeProductionRkgCodeVO> SlGoodsShelfDTO = PageDTO.of(page2, getVolumeProductionRkgCodeVO.class);
@@ -214,16 +237,16 @@
 
     @Override
     public List<QRCodeVO> codeInfo(Long id) throws Exception {
-        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmss");
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS");
         List<QRCodeVO> res = new ArrayList<>();
         LambdaQueryWrapper< SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery();
-        wrapper1.like(SlVolumeProductionRk::getVolumeProductionRkglId,id);
+        wrapper1.eq(SlVolumeProductionRk::getId,id);
         wrapper1.eq( SlVolumeProductionRk::getDelFlag,0);
         wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
         List<SlVolumeProductionRk> list = this.list(wrapper1);
         for (SlVolumeProductionRk byId : list) {
             // 根据生成二维码数量 复制
-            for (int i = 0; i < byId.getErwmNum(); i++) {
+            for (int i = 1; i <= byId.getErwmNum(); i++) {
                 String blueS = "{\"rkNumber\": "+byId.getRkNumber()+"}";
                 BufferedImage blueImage = QRCodeUtil.createImage(blueS);
                 MultipartFile blueFile = convert(blueImage, new Date().getTime() + UUIDUtil.getRandomCode(3) + ".PNG");
@@ -236,7 +259,55 @@
                 vo.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName());
                 SlVolumeProductionRkgl byId1 = slVolumeProductionRkglMapper.selectById(byId.getVolumeProductionRkglId());
                 SysUser data = sysUserClient.getSysUser(byId1.getSupplierId()).getData();
-                vo.setSupplierName(data.getNickName());
+                if (data!=null){
+                    vo.setSupplierName(data.getNickName());
+                }
+                vo.setMaterialsNum(byId.getRkNum());
+                Long materialsId = byId.getMaterialsId();
+                // 查询物资缩写
+                vo.setMaterials(byId.getRkNumber());
+                SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId());
+                vo.setStoreManagementName(slStoreManagement.getStoreManagementName());
+                vo.setQrCode(s);
+                res.add(vo);
+            }
+
+        }
+
+
+        return res;
+    }
+    @Override
+    public List<QRCodeVO> codeInfo1(Long id,Long zyId) throws Exception {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS");
+        List<QRCodeVO> res = new ArrayList<>();
+        LambdaQueryWrapper< SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery();
+        wrapper1.eq(SlVolumeProductionRk::getId,id);
+        wrapper1.eq( SlVolumeProductionRk::getDelFlag,0);
+        wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
+        List<SlVolumeProductionRk> list = this.list(wrapper1);
+        for (SlVolumeProductionRk byId : list) {
+            // 根据生成二维码数量 复制
+            for (int i = 1; i <= byId.getErwmNum(); i++) {
+                String blueS = "{\"rkNumber\": "+byId.getRkNumber()+"}";
+                BufferedImage blueImage = QRCodeUtil.createImage(blueS);
+                MultipartFile blueFile = convert(blueImage, new Date().getTime() + UUIDUtil.getRandomCode(3) + ".PNG");
+                // 生成的二维码连接
+                String s = ObsUploadUtil.obsUpload(blueFile);
+                QRCodeVO vo=new QRCodeVO();
+                String letter = getLetter(i);
+                vo.setCategory(letter);
+                SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(byId.getMaterialsId());
+                vo.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName());
+
+                SlVolumeProductionZy byId1 = slVolumeProductionZyService.getById(zyId);
+                if (byId1.getSupplierId()!=null){
+                    SysUser data = sysUserClient.getSysUser(byId1.getSupplierId().longValue()).getData();
+                    if (data!=null){
+                        vo.setSupplierName(data.getNickName());
+
+                    }
+                }
                 vo.setMaterialsNum(byId.getRkNum());
                 Long materialsId = byId.getMaterialsId();
                 // 查询物资缩写
@@ -254,12 +325,15 @@
     }
 
     public static void main(String[] args) throws Exception {
-        String blueS = "{\"rkNumber\": CD-1721989472748"+"}";
-        BufferedImage blueImage = QRCodeUtil.createImage(blueS);
-        MultipartFile blueFile = convert(blueImage, new Date().getTime() + UUIDUtil.getRandomCode(3) + ".PNG");
-        // 生成的二维码连接
-        String s = ObsUploadUtil.obsUpload(blueFile);
-        System.err.println(s);
+//        String blueS = "{\"rkNumber\": CD-1721989472748"+"}";
+//        BufferedImage blueImage = QRCodeUtil.createImage(blueS);
+//        MultipartFile blueFile = convert(blueImage, new Date().getTime() + UUIDUtil.getRandomCode(3) + ".PNG");
+//        // 生成的二维码连接
+//        String s = ObsUploadUtil.obsUpload(blueFile);
+//        System.err.println(s);
+//        String letter = getLetter(27);
+//        System.err.println(letter);
+
     }
     public static MultipartFile convert(BufferedImage bufferedImage, String fileName) throws IOException {
         // 将 BufferedImage 转换为字节数组
@@ -283,7 +357,7 @@
     // 根据传入数字是几 返回对应的字母
     public static String getLetter(int num) {
         String[] str = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
-        // 如果num大于26 那么往后叠加对应的字母
+        // 如果num大于26 那么往后叠加对应的字母 比如27 那么就是AA
         if (num > 26) {
             int a = num / 26;
             int b = num % 26;
@@ -293,8 +367,11 @@
             }
             return getLetter(a) + getLetter(b);
         }
+
         return str[num - 1];
     }
+
+
     @Override
     public PageDTO<ManagementimgVolumeProductionRkVO> getroductionRkList(umeProductionRkQuery meProductionRkQuery) {
 
@@ -302,7 +379,7 @@
         if (meProductionRkQuery.getGoodsMaterialsName()!=null&&meProductionRkQuery.getGoodsMaterialsName()!=""){
             wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,meProductionRkQuery.getGoodsMaterialsName());
         }
-        if (meProductionRkQuery.getIsConsume()!=0){
+        if (meProductionRkQuery.getIsConsume()!=null && meProductionRkQuery.getIsConsume()!=0){
             wrapper.eq(SlGoodsMaterials::getIsConsume,meProductionRkQuery.getIsConsume());
         }
         wrapper.eq( SlGoodsMaterials::getDelFlag,0);
@@ -338,7 +415,9 @@
 
             list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName());
             list.setIsConsume(slGoodsMaterials.getIsConsume());
-            list.setSupplierName(data.getNickName());
+            if (data!=null){
+                list.setSupplierName(data.getNickName());
+            }
             SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId());
             list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName());
         }
@@ -351,7 +430,6 @@
         if (gethuojRkQuery.getGoodsMaterialsName()!=null&&gethuojRkQuery.getGoodsMaterialsName()!=""){
             wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,gethuojRkQuery.getGoodsMaterialsName());
         }
-
         wrapper.eq( SlGoodsMaterials::getDelFlag,0);
         List<SlGoodsMaterials> page1 = slGoodsMaterialsMapper.selectList(wrapper);
 
@@ -372,6 +450,8 @@
         }
         wrapper1.eq(SlVolumeProductionRk::getShelfId,gethuojRkQuery.getGoodsShelid());
         wrapper1.eq( SlVolumeProductionRk::getDelFlag,0);
+        // 该字段用于标记是否入库
+        wrapper1.isNotNull(SlVolumeProductionRk::getNewAddTime);
         wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
         Page<SlVolumeProductionRk> page2 = this.page(page, wrapper1);
         PageDTO<gethuojRkVO> SlGoodsShelfDTO = PageDTO.of(page2, gethuojRkVO.class);
@@ -395,7 +475,9 @@
             SlVolumeProductionRkgl byId = slVolumeProductionRkglMapper.selectById(list.getVolumeProductionRkglId());
             if (byId!=null){
                 SysUser data = sysUserClient.getSysUser(byId.getSupplierId()).getData();
-                list.setSupplierName(data.getNickName());
+                if (data!=null){
+                    list.setSupplierName(data.getNickName());
+                }
             }
 
             if (slGoodsMaterials!=null){
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkglServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkglServiceImpl.java
index b8448b4..4b51b73 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkglServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkglServiceImpl.java
@@ -85,17 +85,30 @@
     @Override
     public VolumeProductionRkgInfoVO getVolumeProductionRkgInfo(Long id) {
         SlVolumeProductionRkgl byId = this.getById(id);
+        // 根据仓库id 查询仓库管理员
         VolumeProductionRkgInfoVO v=BeanUtils.copyBean(byId, VolumeProductionRkgInfoVO.class);
         SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId());
+        v.setZhuren(slStoreManagement.getDirectorId());
+        v.setZhuguan(slStoreManagement.getCompetentId());
+        v.setGuanliyuan(slStoreManagement.getAdministratorId());
         v.setStoreManagementName(slStoreManagement.getStoreManagementName());
-        SysUser data = sysUserClient.getSysUser(Long.valueOf(byId.getSupplierId())).getData();
+        if (byId.getSupplierId()!=null){
+            SysUser data = sysUserClient.getSysUser(Long.valueOf(byId.getSupplierId())).getData();
+            if (data!=null){
+                v.setSupplierName(data.getNickName());
+                v.setSupplierPhone(data.getPhonenumber());
+            }
+        }
         v.setSupplierId(byId.getSupplierId());
-        v.setSupplierName(data.getNickName());
-        v.setSupplierPhone(data.getPhonenumber());
-        SysUser data1 = sysUserClient.getSysUser(Long.valueOf(byId.getSysId())).getData();
-        v.setSysName(data1.getNickName());
-        v.setSysPhone(data1.getPhonenumber());
+        if (byId.getSysId()!=null){
+            SysUser data1 = sysUserClient.getSysUser(Long.valueOf(byId.getSysId())).getData();
+            if (data1!=null){
+                v.setSysName(data1.getNickName());
+                v.setSysPhone(data1.getPhonenumber());
+            }
+        }
         v.setAuthorization(byId.getAuthorizationUrl());
+        v.setReason(byId.getReasonsRefusal());
         return v;
     }
 
@@ -123,9 +136,8 @@
             wrapper1.in(SlVolumeProductionRkgl::getSysId,goodsSkuIdList);
         }
         wrapper1.eq( SlVolumeProductionRkgl::getDelFlag,0);
-        wrapper1.orderByDesc(SlVolumeProductionRkgl::getCreateTime);
+        wrapper1.orderByDesc(SlVolumeProductionRkgl::getStartiTime);
         Page<SlVolumeProductionRkgl> page2 = this.page(page, wrapper1);
-
         PageDTO<SupplierVolumeProductionRkglVO> SlGoodsShelfDTO = PageDTO.of(page2, SupplierVolumeProductionRkglVO.class);
         List<SupplierVolumeProductionRkglVO> list2 = SlGoodsShelfDTO.getList();
         for(SupplierVolumeProductionRkglVO list:list2){
@@ -142,20 +154,41 @@
 
     @Override
     public Long addVolumeProductionRkgl(VolumeProductionRkglDTO volumeProductionRkglDTO) {
+        SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(volumeProductionRkglDTO.getManagementId());
+        String directorId = slStoreManagement.getDirectorId();
+        String competentId = slStoreManagement.getCompetentId();
+        String administratorId = slStoreManagement.getAdministratorId();
         Long userid = SecurityUtils.getUserId();
+        List<String> list1 = Arrays.asList(administratorId.split(","));
+        List<String> list2 = Arrays.asList(competentId.split(","));
+        List<String> list3 = Arrays.asList(directorId.split(","));
         SlVolumeProductionRkgl slVolumeProductionRkgl=null;
         if (volumeProductionRkglDTO.getId()==null){
-            new  SlVolumeProductionRkgl();
+            slVolumeProductionRkgl = new  SlVolumeProductionRkgl();
             slVolumeProductionRkgl.setAttachmentUrl(volumeProductionRkglDTO.getAttachmentUrl());
             slVolumeProductionRkgl.setAuthorizationUrl(volumeProductionRkglDTO.getAuthorization());
-            slVolumeProductionRkgl.setAuditStatus(1);
             slVolumeProductionRkgl.setManagementId(volumeProductionRkglDTO.getManagementId());
+            slVolumeProductionRkgl.setAuditStatus(1);
             slVolumeProductionRkgl.setPresentState(1);
             slVolumeProductionRkgl.setSupplierId(volumeProductionRkglDTO.getSupplierId());
             slVolumeProductionRkgl.setSource(volumeProductionRkglDTO.getSource());
             slVolumeProductionRkgl.setStartiTime(new Date());
             slVolumeProductionRkgl.setSysId(userid);
             slVolumeProductionRkgl.setRemark(volumeProductionRkglDTO.getRemark());
+            // 如果发起人是主任 主管 或 管理员
+            if (list1.contains(userid.toString())){
+                slVolumeProductionRkgl.setAuditStatus(1);
+                slVolumeProductionRkgl.setPresentState(2);
+            }
+            if (list2.contains(userid.toString())){
+                slVolumeProductionRkgl.setAuditStatus(1);
+                slVolumeProductionRkgl.setPresentState(3);
+            }
+            if (list3.contains(userid.toString())){
+                slVolumeProductionRkgl.setAuditStatus(1);
+                slVolumeProductionRkgl.setPresentState(4);
+            }
+
             this.save(slVolumeProductionRkgl);
         }else{
             slVolumeProductionRkgl = this.getById(volumeProductionRkglDTO.getId());
@@ -175,6 +208,19 @@
             }
             if (volumeProductionRkglDTO.getAuthorization()!=null){
                 slVolumeProductionRkgl.setAuthorizationUrl(volumeProductionRkglDTO.getAuthorization());
+            }
+            // 如果发起人是主任 主管 或 管理员
+            if (list1.contains(userid.toString())){
+                slVolumeProductionRkgl.setAuditStatus(1);
+                slVolumeProductionRkgl.setPresentState(2);
+            }
+            if (list2.contains(userid.toString())){
+                slVolumeProductionRkgl.setAuditStatus(1);
+                slVolumeProductionRkgl.setPresentState(3);
+            }
+            if (list3.contains(userid.toString())){
+                slVolumeProductionRkgl.setAuditStatus(1);
+                slVolumeProductionRkgl.setPresentState(4);
             }
             this.updateById(slVolumeProductionRkgl);
 
@@ -260,6 +306,8 @@
         wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
         List<SlVolumeProductionRk> page2 = slVolumeProductionRkMapper.selectList(wrapper1);
         for (SlVolumeProductionRk list : page2) {
+            list.setNewAddTime("1");
+            list.setSmerwmNum(list.getErwmNum());
             LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
             wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId());
             wrapper2.eq(ManagementGoodsMaterials::getManagementId,list.getManagementId());
@@ -287,6 +335,7 @@
                 managementGoodsMaterials1.setRepertory(slGoodsMaterials.getRepertory());
                 managementGoodsMaterialsMapper.insert(managementGoodsMaterials1);
             }
+            slVolumeProductionRkMapper.updateById(list);
         }
         SlVolumeProductionRkgl byId = this.getById(id);
         byId.setPresentState(4);
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyServiceImpl.java
index 9f1925c..c7977d7 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyServiceImpl.java
@@ -16,6 +16,7 @@
 import com.ruoyi.management.service.SlStoreManagementService;
 import com.ruoyi.management.service.SlVolumeProductionZyService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.management.util.UUIDUtil;
 import com.ruoyi.system.api.domain.SysUser;
 import com.ruoyi.system.api.domain.getVolumeProductionRkQuery;
 import com.ruoyi.system.api.feignClient.SysUserClient;
@@ -23,6 +24,7 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
@@ -96,11 +98,18 @@
     private SlAuditService slAuditService;
     @Resource
     private SlAuditRecordService slAuditRecordService;
+    @Resource
+    private SlVolumeProductionZyMapper slVolumeProductionZyMapper;
+
+    @Resource
+    private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
+
     @Override
     public void addSlVolumeProductionZy(ADDZYDTO addaddSlVolumeProductionZyDTO) {
+        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHHmmssSSS");
+        Long userid = SecurityUtils.getUserId();
         if (addaddSlVolumeProductionZyDTO.getId()==null){
-            // 新增转移管理
-                Long userid = SecurityUtils.getUserId();
+                // 新增转移管理
                 SlVolumeProductionZygl slVolumeProductionZygl=new SlVolumeProductionZygl();
                 slVolumeProductionZygl.setAttachmentUrl(addaddSlVolumeProductionZyDTO.getAttachmentUrl());
                 slVolumeProductionZygl.setAuthorizationUrl(addaddSlVolumeProductionZyDTO.getAuthorization());
@@ -118,9 +127,8 @@
             List<AddZYIdsDTO> rkId = addaddSlVolumeProductionZyDTO.getAddZYIdsDTOS();
             for (AddZYIdsDTO m:rkId){
                 SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(m.getRkId());
-                // todo 目前还不知道转移管理存不存供应商id
-//            Long volumeProductionRkglId = slVolumeProductionRk.getVolumeProductionRkglId();
-//            SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(volumeProductionRkglId);
+            Long volumeProductionRkglId = slVolumeProductionRk.getVolumeProductionRkglId();
+            SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(volumeProductionRkglId);
                 SlVolumeProductionZy slVolumeProductionZy=new SlVolumeProductionZy();
                 slVolumeProductionZy.setRkId(m.getRkId());
                 slVolumeProductionZy.setZyglId(slVolumeProductionZygl.getId());
@@ -130,9 +138,38 @@
                 slVolumeProductionZy.setCreateTime(new Date());
                 slVolumeProductionZy.setStoreManagementNumber(m.getStoreManagementNumber());
                 slVolumeProductionZy.setShelfId(m.getShelfId());
+                slVolumeProductionZy.setSysId(userid);
                 slVolumeProductionZy.setRkId(m.getRkId());
-//            slVolumeProductionZy.setSupplierId(slVolumeProductionRkgl.getSupplierId());
+                if (slVolumeProductionRkgl!=null){
+                    if (slVolumeProductionRkgl.getSupplierId()!=null){
+                        slVolumeProductionZy.setSupplierId(Integer.valueOf(slVolumeProductionRkgl.getSupplierId().toString()));
+
+                    }
+                }
+
                 this.save(slVolumeProductionZy);
+            }
+            LambdaQueryWrapper<SlVolumeProductionZy> wrapper1 = Wrappers.lambdaQuery();
+            wrapper1.eq(SlVolumeProductionZy::getZyglId, slVolumeProductionZygl.getId());
+            wrapper1.eq(SlVolumeProductionZy::getDelFlag, 0);
+            wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime);
+            List<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectList(wrapper1);
+            for (SlVolumeProductionZy zy:page2){
+                SlVolumeProductionRk slVolumeProductionRk=new SlVolumeProductionRk();
+                slVolumeProductionRk.setMaterialsId(zy.getMaterialsId());
+                slVolumeProductionRk.setStoreManagementNumber(zy.getStoreManagementNumber());
+                slVolumeProductionRk.setManagementId(slVolumeProductionZygl.getBmanagementId());
+                slVolumeProductionRk.setRkNumber("CD-"+simpleDateFormat.format(new Date())+ UUIDUtil.getNumberRandom(2));
+                slVolumeProductionRk.setRkNum(Long.valueOf(zy.getZyNum()));
+                SlVolumeProductionRk slVolumeProductionRk2 = slVolumeProductionRkMapper.selectById(zy.getRkId());
+                slVolumeProductionRk.setRkPice(slVolumeProductionRk2.getRkPice());
+                if (slVolumeProductionRk2!=null)slVolumeProductionRk.setRkModel(slVolumeProductionRk2.getRkModel());
+                slVolumeProductionRk.setShelfId(zy.getShelfId());
+                slVolumeProductionRk.setRepertoryZhai(Long.valueOf(zy.getZyNum()));
+                slVolumeProductionRk.setCreateTime(new Date());
+                slVolumeProductionRkMapper.insert(slVolumeProductionRk);
+                zy.setScrkId(slVolumeProductionRk.getId());
+                slVolumeProductionZyMapper.updateById(zy);
             }
         }else{
             // 修改
@@ -147,16 +184,39 @@
                 byId.setAuthorizationUrl(addaddSlVolumeProductionZyDTO.getAuthorization());
             }
             slVolumeProductionZyglMapper.updateById(byId);
-            for (AddZYIdsDTO z:addaddSlVolumeProductionZyDTO.getAddZYIdsDTOS()){
-                QueryWrapper<SlVolumeProductionZy> slVolumeProductionZyQueryWrapper = new QueryWrapper<>();
-                slVolumeProductionZyQueryWrapper.eq("zygl_id",addaddSlVolumeProductionZyDTO.getId());
-                slVolumeProductionZyQueryWrapper.eq("rk_id",z.getRkId());
-                SlVolumeProductionZy one = this.getOne(slVolumeProductionZyQueryWrapper);
-                if (one!=null){
-                    one.setZyNum(z.getZyNum());
+            QueryWrapper<SlVolumeProductionZy> slVolumeProductionZyQueryWrapper = new QueryWrapper<>();
+            slVolumeProductionZyQueryWrapper.eq("zygl_id",addaddSlVolumeProductionZyDTO.getId());
+            this.remove(slVolumeProductionZyQueryWrapper);
+            for (AddZYIdsDTO m:addaddSlVolumeProductionZyDTO.getAddZYIdsDTOS()){
+                SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(m.getRkId());
+                slVolumeProductionRk.setRkPice(slVolumeProductionRk.getRkPice());
+                // todo 目前还不知道转移管理存不存供应商id
+                Long volumeProductionRkglId = slVolumeProductionRk.getVolumeProductionRkglId();
+                SlVolumeProductionRkgl slVolumeProductionRkgl = slVolumeProductionRkglMapper.selectById(volumeProductionRkglId);
+                SlVolumeProductionZy slVolumeProductionZy=new SlVolumeProductionZy();
+                slVolumeProductionZy.setRkId(m.getRkId());
+                slVolumeProductionZy.setZyglId(addaddSlVolumeProductionZyDTO.getId());
+                slVolumeProductionZy.setState(1);
+                slVolumeProductionZy.setMaterialsId(slVolumeProductionRk.getMaterialsId());
+                slVolumeProductionZy.setZyNum(m.getZyNum());
+                slVolumeProductionZy.setCreateTime(new Date());
+                slVolumeProductionZy.setStoreManagementNumber(m.getStoreManagementNumber());
+                slVolumeProductionZy.setShelfId(m.getShelfId());
+                slVolumeProductionZy.setSysId(userid);
+                slVolumeProductionZy.setRkId(m.getRkId());
+            slVolumeProductionZy.setSupplierId(Integer.parseInt(slVolumeProductionRkgl.getSupplierId().toString()));
+                this.save(slVolumeProductionZy);
+//                slVolumeProductionZyQueryWrapper.eq("rk_id",z.getRkId());
+//                slVolumeProductionZyQueryWrapper.eq("del_flag","0");
+//                slVolumeProductionZyQueryWrapper.eq("shelf_id",z.getShelfId());
+//                slVolumeProductionZyQueryWrapper.eq("store_management_number",z.getStoreManagementNumber());
 
-                }
-                this.updateById(one);
+//                SlVolumeProductionZy one = this.getOne(slVolumeProductionZyQueryWrapper);
+//                if (one!=null){
+//                    one.setZyNum(z.getZyNum());
+//
+//                }
+//                this.updateById(one);
             }
         }
         // 添加/修改审核记录
@@ -187,6 +247,9 @@
             slAudit.setSysId(slVolumeProductionZygl.getSysId());
             slAudit.setManagementId(slVolumeProductionZygl.getManagementId());
             slAudit.setZymanagementId(slVolumeProductionZygl.getBmanagementId());
+            slVolumeProductionZygl.setPresentState(1);
+            slVolumeProductionZygl.setAuditStatus(1);
+            slVolumeProductionZyglMapper.updateById(slVolumeProductionZygl);
             SlStoreManagement byId = slStoreManagementService.getById(slVolumeProductionZygl.getManagementId());
             slAudit.setShenhId(byId.getAdministratorId());
             slAuditService.save(slAudit);
@@ -214,6 +277,21 @@
             slAuditRecord2.setCreateTime(new Date());
             slAuditRecordService.save(slAuditRecord2);
         }
+    }
+    public static String getLetter(int num) {
+        String[] str = {"A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"};
+        // 如果num大于26 那么往后叠加对应的字母 比如27 那么就是AA
+        if (num > 26) {
+            int a = num / 26;
+            int b = num % 26;
+            if (b == 0) {
+                a = a - 1;
+                b = 26;
+            }
+            return getLetter(a) + getLetter(b);
+        }
+
+        return str[num - 1];
     }
     @Resource
     private SlStoreManagementService slStoreManagementService;
@@ -292,6 +370,9 @@
             }
         }
         numberAndShelfVO.setNumber(number);
+        if (dto.getManagementNumber() == null){
+            dto.setManagementNumber(1);
+        }
         QueryWrapper<SlGoodsShelf> eq = new QueryWrapper<SlGoodsShelf>()
                 .eq("del_flag", "0")
                 .eq("store_management_id", dto.getManagementId())
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java
index b01513e..9da41b0 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionZyglServiceImpl.java
@@ -18,7 +18,9 @@
 import com.ruoyi.system.api.domain.SysUser;
 import com.ruoyi.system.api.domain.getVolumeProductionRkQuery;
 import com.ruoyi.system.api.feignClient.SysUserClient;
+import com.sun.org.apache.bcel.internal.generic.NEW;
 import org.springframework.stereotype.Service;
+import org.springframework.util.StringUtils;
 
 import javax.annotation.Resource;
 import java.util.*;
@@ -68,7 +70,6 @@
         Set<Long> goodsSkuIdList = null;
         goodsSkuIdList = data1.stream().map(SysUser::getUserId)
                 .collect(Collectors.toSet());
-
         LambdaQueryWrapper< SlVolumeProductionZygl> wrapper1= Wrappers.lambdaQuery();
         if (slVolumeProductionZyQuery.getPresentState()!=null){
             wrapper1.eq(SlVolumeProductionZygl::getPresentState,slVolumeProductionZyQuery.getPresentState());
@@ -81,7 +82,8 @@
             wrapper1.in(SlVolumeProductionZygl::getSysId,goodsSkuIdList);
         }
         wrapper1.eq( SlVolumeProductionZygl::getDelFlag,0);
-        wrapper1.orderByDesc(SlVolumeProductionZygl::getCreateTime);
+//        wrapper1.ne(SlVolumeProductionZygl::getAuditStatus,7);
+        wrapper1.orderByDesc(SlVolumeProductionZygl::getStartiTime);
         Page<SlVolumeProductionZygl> page2 = this.page(page, wrapper1);
 
         PageDTO<VolumeProductionzZyglVO> SlGoodsShelfDTO = PageDTO.of(page2, VolumeProductionzZyglVO .class);
@@ -136,6 +138,10 @@
     public VolumeProductionZyglInfoVO getVolumeProductionzZyglnfo(ManagementimgVolumeProductionZyQuery managementimgVolumeProductionZyQuery) {
         SlVolumeProductionZygl byId = this.getById(managementimgVolumeProductionZyQuery.getVolumeProductionzyglId());
         VolumeProductionZyglInfoVO v= BeanUtils.copyBean(byId, VolumeProductionZyglInfoVO.class);
+        SlStoreManagement slStoreManagement2 = slStoreManagementMapper.selectById(byId.getManagementId());
+        v.setZhuren(slStoreManagement2.getDirectorId());
+        v.setZhuguan(slStoreManagement2.getCompetentId());
+        v.setGuanliyuan(slStoreManagement2.getAdministratorId());
         SlStoreManagement slStoreManagement = slStoreManagementMapper.selectById(byId.getManagementId());
         v.setStoreManagementName(slStoreManagement.getStoreManagementName());
         SlStoreManagement bslStoreManagement = slStoreManagementMapper.selectById(byId.getBmanagementId());
@@ -144,7 +150,7 @@
         v.setSysName(data1.getNickName());
         v.setSysPhone(data1.getPhonenumber());
         // 查询楼层数据
-        SlStoreManagement slStoreManagement1 = slStoreManagementMapper.selectById(byId.getManagementId());
+        SlStoreManagement slStoreManagement1 = slStoreManagementMapper.selectById(byId.getBmanagementId());
         List<String> number = new ArrayList<>();
         for (Integer i = 1; i <= slStoreManagement1.getStoreManagementNumber(); i++) {
             switch (i){
@@ -160,23 +166,49 @@
             }
         }
         v.setNumber(number);
-
+        if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){
+            managementimgVolumeProductionZyQuery.setStoreManagementNumber(1);
+        }
         QueryWrapper<SlGoodsShelf> eq = new QueryWrapper<SlGoodsShelf>()
                 .eq("del_flag", "0")
-                .eq("store_management_id", byId.getManagementId())
+                .eq("store_management_id", byId.getBmanagementId())
                 .eq("store_management_number",managementimgVolumeProductionZyQuery.getStoreManagementNumber());
         List<SlGoodsShelf> slGoodsShelves = slGoodsShelfMapper.selectList(eq);
         v.setGoodsShelfList(slGoodsShelves);
-        // 查询物资列表
-        LambdaQueryWrapper<SlVolumeProductionRk> wrapper2= Wrappers.lambdaQuery();
-        wrapper2.eq(SlVolumeProductionRk::getManagementId,byId.getBmanagementId());
-        if (managementimgVolumeProductionZyQuery.getShelfId() == null){
-            managementimgVolumeProductionZyQuery.setShelfId(slGoodsShelves.get(0).getId());
+        // 根据转移id 查询转移数据 收集入库ids
+        LambdaQueryWrapper<SlVolumeProductionZy> wrapper = Wrappers.lambdaQuery();
+        wrapper.eq(SlVolumeProductionZy::getZyglId, byId.getId());
+        wrapper.eq(SlVolumeProductionZy::getDelFlag, 0);
+        if (managementimgVolumeProductionZyQuery.getShelfId()==null){
+            if (!slGoodsShelves.isEmpty()){
+                wrapper.eq(SlVolumeProductionZy::getShelfId,slGoodsShelves.get(0).getId());
+            }
+        }else{
+            wrapper.eq(SlVolumeProductionZy::getShelfId,managementimgVolumeProductionZyQuery.getShelfId());
         }
         if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){
-            wrapper2.eq(SlVolumeProductionRk::getStoreManagementNumber,1);
+            wrapper.eq(SlVolumeProductionZy::getStoreManagementNumber,1);
+        }else{
+            wrapper.eq(SlVolumeProductionZy::getStoreManagementNumber,managementimgVolumeProductionZyQuery.getStoreManagementNumber());
         }
-        wrapper2.eq(SlVolumeProductionRk::getShelfId,managementimgVolumeProductionZyQuery.getShelfId());
+        List<Long> collect = new ArrayList<>();
+
+        if (StringUtils.hasLength(byId.getAuthorizationUrl())){
+            collect = slVolumeProductionZyMapper.selectList(wrapper)
+                    .stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList());
+        }else{
+            collect = slVolumeProductionZyMapper.selectList(wrapper)
+                    .stream().map(SlVolumeProductionZy::getRkId).collect(Collectors.toList());
+        }
+        // 入库ids
+
+        if (collect.isEmpty()){
+            // 如果为空 那么插入-1 不查询数据
+            collect.add(-1L);
+        }
+        // 查询物资列表
+        LambdaQueryWrapper<SlVolumeProductionRk> wrapper2= Wrappers.lambdaQuery();
+        wrapper2.in(SlVolumeProductionRk::getId,collect);
         wrapper2.eq( SlVolumeProductionRk::getDelFlag,0);
         wrapper2.orderByDesc(SlVolumeProductionRk::getCreateTime);
         List<SlVolumeProductionRk> page1 = slVolumeProductionRkMapper.selectList(wrapper2);
@@ -186,15 +218,39 @@
                 .collect(Collectors.toSet());
         Page<SlVolumeProductionZy> page = new Page<>(managementimgVolumeProductionZyQuery.getPageCurr(), managementimgVolumeProductionZyQuery.getPageSize());
         LambdaQueryWrapper< SlVolumeProductionZy> wrapper1= Wrappers.lambdaQuery();
+        wrapper1.eq(SlVolumeProductionZy::getDelFlag,0);
         wrapper1.eq(SlVolumeProductionZy::getZyglId,managementimgVolumeProductionZyQuery.getVolumeProductionzyglId());
-        if (goodsSkuIdList.size()>0&&goodsSkuIdList!=null){
-            wrapper1.in(SlVolumeProductionZy::getScrkId,goodsSkuIdList);
+        if (managementimgVolumeProductionZyQuery.getShelfId()==null){
+            if (!slGoodsShelves.isEmpty()) {
+                wrapper1.eq(SlVolumeProductionZy::getShelfId, slGoodsShelves.get(0).getId());
+            }
+        }else{
+            wrapper1.eq(SlVolumeProductionZy::getShelfId,managementimgVolumeProductionZyQuery.getShelfId());
         }
+        if (managementimgVolumeProductionZyQuery.getStoreManagementNumber()==null){
+            wrapper1.eq(SlVolumeProductionZy::getStoreManagementNumber,1);
+        }else{
+            wrapper1.eq(SlVolumeProductionZy::getStoreManagementNumber,managementimgVolumeProductionZyQuery.getStoreManagementNumber());
+        }
+
+        if (goodsSkuIdList.isEmpty()){
+            goodsSkuIdList.add(-1L);
+        }
+        // 已经确认了转移
+        if (StringUtils.hasLength(byId.getAuthorizationUrl())){
+            wrapper1.in(SlVolumeProductionZy::getScrkId,goodsSkuIdList);
+
+        }else{
+            wrapper1.in(SlVolumeProductionZy::getRkId,goodsSkuIdList);
+
+        }
+
+
         wrapper1.eq( SlVolumeProductionZy::getDelFlag,0);
         wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime);
         Page<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectPage(page, wrapper1);
-        PageDTO<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> SlGoodsShelfDTO = PageDTO.of(page2, com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO.class);
-        List<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> list2 = SlGoodsShelfDTO.getList();
+        PageDTO<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> sl = PageDTO.of(page2, com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO.class);
+        List<com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO> list2 = sl.getList();
         for(com.ruoyi.management.domain.dto.ManagementimgVolumeProductionZyVO list:list2) {
             SlVolumeProductionRk slVolumeProductionRk = slVolumeProductionRkMapper.selectById(list.getRkId());
             list.setStoreManagementNumber(slVolumeProductionRk.getStoreManagementNumber());
@@ -203,24 +259,28 @@
             SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(slVolumeProductionRk.getMaterialsId());
             list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName());
             list.setIsConsume(slGoodsMaterials.getIsConsume());
-            SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(slVolumeProductionRk.getShelfId());
+            SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId());
             list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName());
+            list.setShelfId(slGoodsShelf.getId());
             if(list.getScrkId()!=null){
                 SlVolumeProductionRk slVolumeProductionRk1 = slVolumeProductionRkMapper.selectById(list.getScrkId());
                 list.setStoreManagementNumber(slVolumeProductionRk1.getStoreManagementNumber());
-                list.setRkNumber(slVolumeProductionRk1.getRkNumber());
+                list.setZyNumber(slVolumeProductionRk1.getRkNumber());
             }
+            list.setZkNum(list.getRepertoryZhai());
         }
-        v.setList(SlGoodsShelfDTO);
+        v.setList(sl);
 
         return v;
     }
 
     @Override
-    public VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory(Integer id) {
+    public VolumeProductionZyglInventoryVO getVolumeProductionZyglnventory(String id) {
         SlVolumeProductionZygl byId = this.getById(id);
         VolumeProductionZyglInventoryVO vo = new VolumeProductionZyglInventoryVO();
-        SysUser data = sysUserClient.getSysUser(byId.getId()).getData();
+
+
+        SysUser data = sysUserClient.getSysUser(byId.getSysId()).getData();
         vo.setSysPhone(data.getPhonenumber());
         vo.setSysName(data.getNickName());
         vo.setStartiTime(byId.getStartiTime());
@@ -289,26 +349,26 @@
     }
 
     @Override
-    public void zy(Integer id) {
+    public void zy(Long id,String authorizationUrl) {
         SlVolumeProductionZygl byId = this.getById(id);
+        byId.setAuthorizationUrl(authorizationUrl);
+        byId.setAuditStatus(6);
+        byId.setPresentState(4);
+        byId.setEndTime(new Date());
+        this.updateById(byId);
         LambdaQueryWrapper<SlVolumeProductionZy> wrapper1 = Wrappers.lambdaQuery();
         wrapper1.eq(SlVolumeProductionZy::getZyglId, id);
         wrapper1.eq(SlVolumeProductionZy::getDelFlag, 0);
         wrapper1.orderByDesc(SlVolumeProductionZy::getCreateTime);
         List<SlVolumeProductionZy> page2 = slVolumeProductionZyMapper.selectList(wrapper1);
-        for (SlVolumeProductionZy zy:page2){
-            SlVolumeProductionRk slVolumeProductionRk=new SlVolumeProductionRk();
-            slVolumeProductionRk.setMaterialsId(zy.getMaterialsId());
-            slVolumeProductionRk.setStoreManagementNumber(zy.getStoreManagementNumber());
-            slVolumeProductionRk.setManagementId(byId.getBmanagementId());
-            slVolumeProductionRk.setRkNumber("CD-"+new Date().getTime());
-            slVolumeProductionRk.setRkNum(Long.valueOf(zy.getZyNum()));
-            slVolumeProductionRk.setShelfId(zy.getShelfId());
-            slVolumeProductionRk.setRepertoryZhai(Long.valueOf(zy.getZyNum()));
-            slVolumeProductionRk.setCreateTime(new Date());
-            slVolumeProductionRkMapper.insert(slVolumeProductionRk);
-            zy.setScrkId(slVolumeProductionRk.getId());
-            slVolumeProductionZyMapper.updateById(zy);
+        // 新入库ids
+        List<Long> collect = page2.stream().map(SlVolumeProductionZy::getScrkId).collect(Collectors.toList());
+        for (SlVolumeProductionZy zy : page2) {
+            // 确认转移之后扣库存
+            SlVolumeProductionRk slVolumeProductionRk1 = slVolumeProductionRkMapper.selectById(zy.getRkId());
+            slVolumeProductionRk1.setRepertoryZhai(slVolumeProductionRk1.getRepertoryZhai()-Long.valueOf(zy.getZyNum()));
+            slVolumeProductionRkMapper.updateById(slVolumeProductionRk1);
+            // 给被转移入仓库加库存数量
             LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
             wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,zy.getMaterialsId());
             wrapper2.eq(ManagementGoodsMaterials::getManagementId,byId.getBmanagementId());
@@ -321,6 +381,7 @@
                 Long re1=repertoryZhai+Long.valueOf(zy.getZyNum());
                 managementGoodsMaterials.setRepertorySum(re);
                 managementGoodsMaterials.setRepertoryZhai(re1);
+                managementGoodsMaterials.setRepertoryChu(0);
                 managementGoodsMaterialsMapper.updateById(managementGoodsMaterials);
             }else{
                 ManagementGoodsMaterials managementGoodsMaterials1=new ManagementGoodsMaterials();
@@ -328,9 +389,27 @@
                 managementGoodsMaterials1.setGoodsMaterialsId(zy.getMaterialsId());
                 managementGoodsMaterials1.setRepertoryZhai(Long.valueOf(zy.getZyNum()));
                 managementGoodsMaterials1.setRepertorySum(Long.valueOf(zy.getZyNum()));
+                managementGoodsMaterials1.setRepertoryChu(0);
                 managementGoodsMaterials1.setCreateTime(new Date());
                 managementGoodsMaterialsMapper.insert(managementGoodsMaterials1);
             }
+            // 给转移仓库减去库存数量
+            LambdaQueryWrapper<ManagementGoodsMaterials> wrapper3 = Wrappers.lambdaQuery();
+            wrapper3.eq(ManagementGoodsMaterials::getGoodsMaterialsId,zy.getMaterialsId());
+            wrapper3.eq(ManagementGoodsMaterials::getManagementId,byId.getManagementId());
+            wrapper3.eq(ManagementGoodsMaterials::getDelFlag, 0);
+            ManagementGoodsMaterials managementGoodsMaterials1 = managementGoodsMaterialsMapper.selectOne(wrapper3);
+            if (managementGoodsMaterials1!=null){
+                Long repertorySum = managementGoodsMaterials1.getRepertorySum();
+                Long repertoryZhai = managementGoodsMaterials1.getRepertoryZhai();
+                Long re=repertorySum-Long.valueOf(zy.getZyNum());
+                Long re1=repertoryZhai-Long.valueOf(zy.getZyNum());
+//                managementGoodsMaterials1.setRepertorySum(re);
+                managementGoodsMaterials1.setRepertoryZhai(re1);
+                managementGoodsMaterials1.setRepertoryChu(managementGoodsMaterials1.getRepertoryChu()+zy.getZyNum());
+                managementGoodsMaterialsMapper.updateById(managementGoodsMaterials1);
+            }
         }
+
     }
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-management/src/main/resources/bootstrap.yml
index 95f5dfa..45dc279 100644
--- a/ruoyi-modules/ruoyi-management/src/main/resources/bootstrap.yml
+++ b/ruoyi-modules/ruoyi-management/src/main/resources/bootstrap.yml
@@ -17,13 +17,13 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
       config:
         # 配置中心地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
         group: DEFAULT_GROUP
         name: ${spring.application.name}
@@ -41,13 +41,13 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 127.0.0.1:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
         namespace: 3452d750-b08d-4485-a1e9-4fb0548f1fc2
       config:
         # 配置中心地址
-        server-addr: 192.168.110.188:8848
+        server-addr: 127.0.0.1:8848
         namespace: 3452d750-b08d-4485-a1e9-4fb0548f1fc2
         group: DEFAULT_GROUP
         name: ${spring.application.name}
@@ -65,13 +65,13 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.188:8848
+        server-addr: 127.0.0.1:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
         namespace: 96712c7a-480b-4f40-b783-39f00f3b33ce
       config:
         # 配置中心地址
-        server-addr: 192.168.110.188:8848
+        server-addr: 127.0.0.1:8848
         namespace: 96712c7a-480b-4f40-b783-39f00f3b33ce
         group: DEFAULT_GROUP
         name: ${spring.application.name}
diff --git a/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/InventoriesSuppliesMapper.xml b/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/InventoriesSuppliesMapper.xml
index 892a50a..d11be59 100644
--- a/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/InventoriesSuppliesMapper.xml
+++ b/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/InventoriesSuppliesMapper.xml
@@ -15,5 +15,10 @@
         <result column="update_by" property="updateBy" />
         <result column="update_time" property="updateTime" />
     </resultMap>
+    <select id="getById1" resultType="com.ruoyi.management.domain.InventoriesSupplies">
+        select * from inventories_supplies
+        where inventories_supplies.id=#{id}
+
+    </select>
 
 </mapper>
diff --git a/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/SlGoodsMaterialsMapper.xml b/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/SlGoodsMaterialsMapper.xml
index 1f589d4..3ac5b55 100644
--- a/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/SlGoodsMaterialsMapper.xml
+++ b/ruoyi-modules/ruoyi-management/src/main/resources/mapper/management/SlGoodsMaterialsMapper.xml
@@ -3,4 +3,22 @@
 <mapper namespace="com.ruoyi.management.mapper.SlGoodsMaterialsMapper">
 
 
+    <update id="update1">
+        update sl_goods_materials
+        <set>
+            <if test="req.goodsMaterialsName != null and req.goodsMaterialsName != ''">
+                goods_materials_name = #{req.goodsMaterialsName},
+            </if>
+            <if test="req.goodsMaterialsNo != null and req.goodsMaterialsNo != ''">
+                goods_materials_no = #{req.goodsMaterialsNo},
+            </if>
+            <if test="req.isConsume != null and req.isConsume != ''">
+                is_consume = #{req.isConsume},
+            </if>
+            <if test="req.repertory != null and req.repertory != ''">
+                repertory = #{req.repertory},
+            </if>
+        </set>
+        WHERE id = #{req.id}
+    </update>
 </mapper>
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysDeptController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysDeptController.java
index e14672b..d067ba4 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysDeptController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysDeptController.java
@@ -43,7 +43,6 @@
     /**
      * 获取部门列表
      */
-    @RequiresPermissions("system:dept:list")
     @GetMapping("/list")
     @ApiOperation("获取部门列表")
     public AjaxResult list(SysDept dept)
@@ -52,7 +51,6 @@
         return success(depts);
     }
 
-    @RequiresPermissions("system:dept:list")
     @GetMapping("/pagelist")
     @ApiOperation("分页获取部门列表")
     public AjaxResult pagelist(deptQuery dept)
@@ -72,7 +70,6 @@
     /**
      * 根据部门编号获取详细信息
      */
-    @RequiresPermissions("system:dept:query")
     @GetMapping(value = "/{deptId}")
     @ApiOperation("根据部门编号获取详细信息")
     public AjaxResult getInfo(@PathVariable Long deptId)
@@ -84,7 +81,6 @@
     /**
      * 新增部门
      */
-    @RequiresPermissions("system:dept:add")
     @ApiOperation("新增部门")
     @Log(title = "部门管理", businessType = BusinessType.INSERT)
     @PostMapping
@@ -97,7 +93,6 @@
     /**
      * 修改部门
      */
-    @RequiresPermissions("system:dept:edit")
     @Log(title = "部门管理", businessType = BusinessType.UPDATE)
     @ApiOperation("修改部门")
     @PutMapping
@@ -112,7 +107,6 @@
     /**
      * 删除部门
      */
-    @RequiresPermissions("system:dept:remove")
     @Log(title = "部门管理", businessType = BusinessType.DELETE)
     @DeleteMapping("/{deptId}")
     @ApiOperation("删除部门管理")
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysOperlogController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysOperlogController.java
index 96c93bc..b2f021a 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysOperlogController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysOperlogController.java
@@ -92,8 +92,7 @@
         if(gy.getEndTime()!=null){
             wrapper.gt(SysOperLog::getOperTime, gy.getEndTime());
         }
-
-
+        wrapper.orderByDesc(SysOperLog::getOperTime);
         Page<SysOperLog> sysOperLogPage = operLogService.selectPage(page, wrapper);
         return R.ok(sysOperLogPage);
     }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
index 0103917..baf35a3 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysRoleController.java
@@ -136,7 +136,7 @@
         if(CollectionUtils.isEmpty(menuIds1)){
             return AjaxResult.error("菜单id不能为空");
         }
-        role.setMenuIds(dto.getMenuIds().toArray(new Long[0]));
+        role.setMenuIds(dto.getMenuIds().toArray((new Long[dto.getMenuIds().size()])));
         // 添加角色
         role.setCreateBy(SecurityUtils.getUsername());
         role.setCreateTime(new Date());
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
index 7913af9..db45f67 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/controller/SysUserController.java
@@ -1,6 +1,7 @@
 package com.ruoyi.system.controller;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.ruoyi.common.core.domain.R;
 import com.ruoyi.common.core.exception.ServiceException;
@@ -114,7 +115,8 @@
     public AjaxResult add(@Validated(InsertGroup.class) @RequestBody SysUserDTO dto) {
         SysUser user = BeanUtils.copyBean(dto, SysUser.class);
         user.setUserId(null);
-        user.setUserType("01");
+        // 添加为平台管理员
+        user.setUserType("00");
         user.setUserName(user.getPhonenumber());
         if(!org.springframework.util.StringUtils.hasLength(user.getNickName())){
             user.setNickName(user.getPhonenumber());
@@ -211,6 +213,11 @@
         SysRole byId = roleService.selectRoleById(dto.getRoleId());
         user.setRoleName(byId.getRoleName());
         user.setRoleId(dto.getRoleId());
+        // 原来的role
+        SysUserRole one = userRoleService.getOne(new LambdaQueryWrapper<SysUserRole>().eq(SysUserRole::getUserId,dto.getUserId() ));
+        one.setRoleId(dto.getRoleId());
+        //更新新的role
+        userRoleService.updateSysUserRole(one);
         return toAjax(userService.updateById(user));
     }
 
@@ -300,7 +307,6 @@
 
 
     @Log(title = "用户管理", businessType = BusinessType.EXPORT)
-    @RequiresPermissions("system:user:export")
     @PostMapping("/export")
     public void export(HttpServletResponse response, SysUser user) {
         List<SysUser> list = userService.selectUserList(user);
@@ -315,7 +321,6 @@
     }
 
     @Log(title = "用户管理", businessType = BusinessType.IMPORT)
-    @RequiresPermissions("system:user:import")
     @PostMapping("/importData")
     public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exception {
         ExcelUtil<SysUser> util = new ExcelUtil<SysUser>(SysUser.class);
@@ -394,7 +399,6 @@
     /**
      * 重置密码
      */
-    @RequiresPermissions("system:user:edit")
     @ApiOperation("重置密码")
     @Log(title = "用户管理", businessType = BusinessType.UPDATE)
     @PostMapping("/resetPwd")
@@ -404,14 +408,32 @@
         if (StringUtils.isNull(user)) {
             throw new ServiceException("账号不存在");
         }
-
         userService.checkUserAllowed(user);
         userService.checkUserDataScope(user.getUserId());
-        user.setPassword(SecurityUtils.encryptPassword(dto.getPassword()));
+        user.setPassword(SecurityUtils.encryptPassword("a123456"));
         user.setUpdateBy(SecurityUtils.getUsername());
         return toAjax(userService.resetPwd(user));
     }
 
+    @ApiOperation("修改密码")
+    @PostMapping("/updatePwd")
+    public AjaxResult updatePwd(@RequestBody ResetPwdDTO dto) {
+        // 判断旧密码是否和当前密码是否匹配
+        SysUser one = userService.getOne(new QueryWrapper<SysUser>()
+                .eq("phonenumber", dto.getPhonenumber())
+                .eq("del_flag", 0));
+        if (one == null){
+            return AjaxResult.error("账号不存在");
+        }
+        if (SecurityUtils.matchesPassword(dto.getPassword(),one.getPassword())) {
+            return AjaxResult.error("新密码不能和旧密码一致");
+        }
+        if (SecurityUtils.matchesPassword(dto.getOldPassword(),one.getPassword())){
+            return AjaxResult.error("旧密码错误");
+        }
+        userService.updateById(one);
+        return AjaxResult.success();
+    }
     /**
      * 获取当前用户信息
      */
@@ -433,7 +455,6 @@
     /**
      * 状态修改
      */
-    @RequiresPermissions("system:user:edit")
     @Log(title = "用户管理", businessType = BusinessType.UPDATE)
     @PutMapping("/changeStatus")
     public AjaxResult changeStatus(@RequestBody SysUser user) {
@@ -446,7 +467,6 @@
     /**
      * 根据用户编号获取授权角色
      */
-    @RequiresPermissions("system:user:query")
     @GetMapping("/authRole/{userId}")
     public AjaxResult authRole(@PathVariable("userId") Long userId) {
         AjaxResult ajax = AjaxResult.success();
@@ -460,7 +480,6 @@
     /**
      * 用户授权角色
      */
-    @RequiresPermissions("system:user:edit")
     @Log(title = "用户管理", businessType = BusinessType.GRANT)
     @PutMapping("/authRole")
     public AjaxResult insertAuthRole(Long userId, Long[] roleIds) {
@@ -472,7 +491,6 @@
     /**
      * 获取部门树列表
      */
-    @RequiresPermissions("system:user:list")
     @GetMapping("/deptTree")
     public AjaxResult deptTree(SysDept dept) {
         return success(deptService.selectDeptTreeList(dept));
@@ -610,11 +628,16 @@
     public R<PageDTO<ConservatorVO>> getConservatorPage(@Validated @RequestBody ConservatorQuery query) {
         return R.ok(userService.getConservatorPage(query));
     }
+    @ApiOperation(value = "根据仓库等级和所在地获取管理员列表--不分页", notes = "获取仓库管理分页列表")
+    @PostMapping("/conservator-page2")
+    public R<List<SysUser>> getConservatorPage2(@RequestBody ConservatorQueryA query) {
+        return R.ok(userService.getConservatorPage2(query));
+    }
 
     @ApiOperation(value = "获取仓库管理员不分页列表", notes = "获取仓库管理分页列表")
-    @PostMapping("/conservator-page1")
-    public R<List<SysUser>> getConservatorPage1() {
-        return R.ok(userService.getConservatorPage1());
+    @GetMapping("/conservator-page1/{grade}")
+    public R<List<SysUser>> getConservatorPage1(@PathVariable("grade") String grade) {
+        return R.ok(userService.getConservatorPage1(grade));
     }
 
     /**
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ConservatorQueryA.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ConservatorQueryA.java
new file mode 100644
index 0000000..6c9c041
--- /dev/null
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ConservatorQueryA.java
@@ -0,0 +1,21 @@
+package com.ruoyi.system.domain.dto;
+
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel("查询管理员列表DTO")
+public class ConservatorQueryA  {
+
+    @ApiModelProperty(value = "2省 3市州 4市县 5乡镇 6经营单位")
+    private Integer grade;
+    @ApiModelProperty(value = "市州code")
+    private String cityCode;
+    @ApiModelProperty(value = "市县code")
+    private String countyCode;
+    @ApiModelProperty(value = "乡镇code")
+    private String townCode;
+
+}
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ResetPwdDTO.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ResetPwdDTO.java
index 9e50468..6214b89 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ResetPwdDTO.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/domain/dto/ResetPwdDTO.java
@@ -12,16 +12,21 @@
  * @date 2024/6/19
  */
 @Data
-@ApiModel("重置密码")
+@ApiModel("重置/修改密码")
 public class ResetPwdDTO implements Serializable {
 
     private static final long serialVersionUID = -4349599620340762098L;
     
     @ApiModelProperty(value = "账号id")
-    @NotNull(message = "账号ID不能为空")
     private Long userId;
 
     @ApiModelProperty(value = "新密码")
     @NotBlank(message = "新密码不能为空")
     private String password;
+    @ApiModelProperty(value = "旧密码")
+    @NotBlank(message = "旧密码不能为空")
+    private String oldPassword;
+    @ApiModelProperty(value = "账号/手机号")
+    @NotBlank(message = "手机号不能为空")
+    private String phonenumber;
 }
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
index 7d37b4b..3fb3c18 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/ISysUserService.java
@@ -5,10 +5,7 @@
 import com.ruoyi.common.core.web.domain.AjaxResult;
 import com.ruoyi.common.core.web.page.PageInfo;
 import com.ruoyi.system.api.domain.SysUser;
-import com.ruoyi.system.domain.dto.ConservatorDTO;
-import com.ruoyi.system.domain.dto.ConservatorQuery;
-import com.ruoyi.system.domain.dto.SupplierDTO;
-import com.ruoyi.system.domain.dto.SupplierQuery;
+import com.ruoyi.system.domain.dto.*;
 import com.ruoyi.system.domain.vo.ConservatorVO;
 import com.ruoyi.system.domain.vo.SupplierVO;
 import org.springframework.validation.annotation.Validated;
@@ -254,8 +251,9 @@
     void deleteSupplier(Long id);
 
     PageDTO<ConservatorVO> getConservatorPage(ConservatorQuery query);
+    List<SysUser> getConservatorPage2(ConservatorQueryA query);
 
-    List<SysUser> getConservatorPage1();
+    List<SysUser> getConservatorPage1(String grade);
 
     void saveConservator(ConservatorDTO dto);
 
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
index e6fbbde..cfe8785 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysRoleServiceImpl.java
@@ -301,15 +301,6 @@
         for (Long menuId : menuIds) {
             longs.add(menuId);
         }
-        if(!longs.contains(1061L)){
-            longs.add(1061L);
-            longs.add(1062L);
-            longs.add(1065L);
-            longs.add(1073L);
-            longs.add(1161L);
-            longs.add(1203L);
-        }
-
         for (Long menuId : longs)
         {
             SysRoleMenu rm = new SysRoleMenu();
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
index aa3e777..5d9aac9 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/service/impl/SysUserServiceImpl.java
@@ -22,10 +22,7 @@
 import com.ruoyi.system.domain.SysPost;
 import com.ruoyi.system.domain.SysUserPost;
 import com.ruoyi.system.domain.SysUserRole;
-import com.ruoyi.system.domain.dto.ConservatorDTO;
-import com.ruoyi.system.domain.dto.ConservatorQuery;
-import com.ruoyi.system.domain.dto.SupplierDTO;
-import com.ruoyi.system.domain.dto.SupplierQuery;
+import com.ruoyi.system.domain.dto.*;
 import com.ruoyi.system.domain.vo.ConservatorVO;
 import com.ruoyi.system.domain.vo.SupplierVO;
 import com.ruoyi.system.mapper.SysPostMapper;
@@ -680,12 +677,31 @@
 
         return PageDTO.of(page1, ConservatorVO.class);
     }
+    @Override
+    public List<SysUser> getConservatorPage2(ConservatorQueryA query) {
+
+        LambdaQueryWrapper<SysUser> wrapper1= Wrappers.lambdaQuery();
+        wrapper1.eq(SysUser::getUserType, "03");
+        wrapper1.eq(SysUser::getDelFlag,"0");
+        if (org.springframework.util.StringUtils.hasLength(query.getTownCode())){
+            wrapper1.eq(SysUser::getTownCode,query.getTownCode());
+        }else if (org.springframework.util.StringUtils.hasLength(query.getCountyCode())){
+            wrapper1.eq(SysUser::getCountyCode,query.getCountyCode());
+        }else if (org.springframework.util.StringUtils.hasLength(query.getCityCode())){
+            wrapper1.eq(SysUser::getCityCode,query.getCityCode());
+        }
+        List<SysUser> list = this.list(wrapper1);
+        return list;
+    }
 
     @Override
-    public List<SysUser> getConservatorPage1() {
+    public List<SysUser> getConservatorPage1(String grade) {
         QueryWrapper<SysUser> sysUserQueryWrapper = new QueryWrapper<>();
         sysUserQueryWrapper.eq("del_flag",0);
         sysUserQueryWrapper.eq("user_type","03");
+        if (grade!=null){
+            sysUserQueryWrapper.eq("roleType",grade);
+        }
         List<SysUser> page1 = this.list(sysUserQueryWrapper);
 
         return page1;
@@ -694,7 +710,6 @@
     @Override
     public void saveConservator(ConservatorDTO dto) {
         SysUser user = BeanUtils.copyBean(dto, SysUser.class);
-
         // 添加
         if (StringUtils.isNull(dto.getUserId())) {
             boolean b = checkPhoneUnique(user);
@@ -705,7 +720,7 @@
             user.setUserName(dto.getPhonenumber());
             user.setUserType("03");
             user.setCreateTime(new Date());
-            user.setPassword(SecurityUtils.encryptPassword("123456"));
+            user.setPassword(SecurityUtils.encryptPassword("a123456"));
             user.setCreateBy(SecurityUtils.getUsername());
             user.setProvinceName(dto.getProvinceName());
             user.setProvinceCode(dto.getProvinceCode());
@@ -723,6 +738,10 @@
             if (StringUtils.isNull(user)) {
                 throw new ServiceException("管理员不存在");
             }
+            boolean b = checkPhoneUnique(user);
+            if (!b) {
+                throw new ServiceException("该手机号已存在");
+            }
             user.setNickName(dto.getNickName());
             user.setPhonenumber(dto.getPhonenumber());
             user.setUserName(dto.getPhonenumber());
diff --git a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/websocket/WebSocketUsers.java b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/websocket/WebSocketUsers.java
index 9b162c2..8ab720b 100644
--- a/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/websocket/WebSocketUsers.java
+++ b/ruoyi-modules/ruoyi-system/src/main/java/com/ruoyi/system/websocket/WebSocketUsers.java
@@ -80,8 +80,7 @@
     public static void sendMessageToUsersByText(String message)
     {
         Collection<Session> values = USERS.values();
-        for (Session value : values)
-        {
+        for (Session value : values) {
             sendMessageToUserByText(value, message);
         }
     }
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml
index d1aede2..de120d3 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/bootstrap.yml
@@ -17,13 +17,13 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
       config:
         # 配置中心地址
-        server-addr: 192.168.110.235:8848
+        server-addr: 192.168.110.64:8848
         namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
         group: DEFAULT_GROUP
         name: ${spring.application.name}
@@ -41,14 +41,14 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.188:8848
+        server-addr: 192.168.110.64:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
-        namespace: 3452d750-b08d-4485-a1e9-4fb0548f1fc2
+        namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
       config:
         # 配置中心地址
-        server-addr: 192.168.110.188:8848
-        namespace: 3452d750-b08d-4485-a1e9-4fb0548f1fc2
+        server-addr: 192.168.110.64:8848
+        namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
         group: DEFAULT_GROUP
         name: ${spring.application.name}
         # 配置文件格式
@@ -65,14 +65,14 @@
     nacos:
       discovery:
         # 服务注册地址
-        server-addr: 192.168.110.188:8848
+        server-addr: 192.168.110.64:8848
         service: ${spring.application.name}
         group: DEFAULT_GROUP
-        namespace: 96712c7a-480b-4f40-b783-39f00f3b33ce
+        namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
       config:
         # 配置中心地址
-        server-addr: 192.168.110.188:8848
-        namespace: 96712c7a-480b-4f40-b783-39f00f3b33ce
+        server-addr: 192.168.110.64:8848
+        namespace: 689e0f09-d102-460c-ac5c-5ea50a3174be
         group: DEFAULT_GROUP
         name: ${spring.application.name}
         # 配置文件格式
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml
index 8a9a12d..5583bb3 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysRoleMenuMapper.xml
@@ -23,7 +23,7 @@
  			#{roleId}
         </foreach> 
  	</delete>
-	
+
 	<insert id="batchRoleMenu">
 		insert into sys_role_menu(role_id, menu_id) values
 		<foreach item="item" index="index" collection="list" separator=",">
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
index 4bccefb..a6d456a 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mapper/system/SysUserMapper.xml
@@ -84,7 +84,7 @@
     </sql>
     
     <select id="selectUserList" parameterType="com.ruoyi.system.api.domain.SysUser" resultMap="SysUserResult">
-		select u.user_id, u.dept_id,u.contacts, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name, d.leader from sys_user u
+		select u.user_id, u.dept_id,u.contacts, u.nick_name, u.user_name, u.email, u.avatar, u.phonenumber, u.sex, u.status, u.del_flag, u.login_ip, u.login_date, u.create_by, u.create_time, u.remark, d.dept_name from sys_user u
 		left join sys_dept d on u.dept_id = d.dept_id
 		where u.del_flag = '0'
 		<if test="phonenumber != null and phonenumber != ''">
@@ -146,6 +146,7 @@
 		from sys_user
 		where phonenumber = #{phonenumber}
 			and del_flag = '0'
+			and user_type != '02'
 		limit 1
 	</select>
 	
diff --git a/ruoyi-modules/ruoyi-system/src/main/resources/mybatis-config.xml b/ruoyi-modules/ruoyi-system/src/main/resources/mybatis-config.xml
index 7d487eb..53c5587 100644
--- a/ruoyi-modules/ruoyi-system/src/main/resources/mybatis-config.xml
+++ b/ruoyi-modules/ruoyi-system/src/main/resources/mybatis-config.xml
@@ -10,7 +10,7 @@
         <setting name="cacheEnabled" value="true"/>
         <!-- 延迟加载的全局开关。当开启时,所有关联对象都会延迟加载。默认 false  -->
         <!-- <setting name="lazyLoadingEnabled" value="true"/> -->
-        <setting name="mapUnderscoreToCamelCase" value="false"/><!--是否将map下划线方式转为驼峰式命名-->
+        <setting name="mapUnderscoreToCamelCase" value="true"/><!--是否将map下划线方式转为驼峰式命名-->
         <!-- 当开启时,任何方法的调用都会加载该对象的所有属性。默认 false,可通过select标签的 fetchType来覆盖-->
         <!-- <setting name="aggressiveLazyLoading" value="false"/>-->
         <!--  Mybatis 创建具有延迟加载能力的对象所用到的代理工具,默认JAVASSIST -->

--
Gitblit v1.7.1