Browse Source

优化调整模拟物资领取归还

车车 9 months ago
parent
commit
3fb4160dc2

+ 2 - 2
ktg-iscs/src/main/java/com/ktg/iscs/controller/IsMaterialsController.java

@@ -9,7 +9,7 @@ import com.ktg.common.enums.BusinessType;
 import com.ktg.common.pojo.CommonResult;
 import com.ktg.common.utils.poi.ExcelUtil;
 import com.ktg.iscs.domain.IsMaterials;
-import com.ktg.iscs.domain.dto.materials.LoanMaterialDTO;
+import com.ktg.iscs.domain.dto.hardwareApi.LoanParamDTO;
 import com.ktg.iscs.domain.dto.materials.MaterialBindingDTO;
 import com.ktg.iscs.domain.dto.materials.MaterialsPageDTO;
 import com.ktg.iscs.domain.vo.materials.ImportMaterialsVO;
@@ -111,7 +111,7 @@ public class IsMaterialsController extends BaseController
     @PreAuthorize("@ss.hasPermi('iscs:materials:loan')")
     @Log(title = "借出/归还物资", businessType = BusinessType.UPDATE)
     @PostMapping("/updateIsMaterialById")
-    public CommonResult<Boolean> updateIsMaterialById(@RequestBody @Parameter(name = "isMaterials", description = "修改数据类,放到body") LoanMaterialDTO dto)
+    public CommonResult<Boolean> updateIsMaterialById(@RequestBody @Parameter(name = "dto", description = "修改数据类,放到body") LoanParamDTO dto)
     {
         return CommonResult.success(isMaterialsService.updateIsMaterialById(dto));
     }

+ 21 - 0
ktg-iscs/src/main/java/com/ktg/iscs/domain/dto/hardwareApi/LoanParamDTO.java

@@ -0,0 +1,21 @@
+package com.ktg.iscs.domain.dto.hardwareApi;
+
+import com.ktg.iscs.domain.dto.materials.LoanMaterialDTO;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * UpdateTicketLockDTO
+ *
+ * @author cgj
+ * @date 2024-10-16
+ */
+@Data
+public class LoanParamDTO {
+
+    @ApiModelProperty(value = "传参数据")
+    private List<LoanMaterialDTO> list;
+
+}

+ 2 - 2
ktg-iscs/src/main/java/com/ktg/iscs/service/IIsMaterialsService.java

@@ -4,7 +4,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.ktg.iscs.domain.IsMaterials;
-import com.ktg.iscs.domain.dto.materials.LoanMaterialDTO;
+import com.ktg.iscs.domain.dto.hardwareApi.LoanParamDTO;
 import com.ktg.iscs.domain.dto.materials.MaterialBindingDTO;
 import com.ktg.iscs.domain.dto.materials.MaterialsPageDTO;
 import com.ktg.iscs.domain.vo.materials.ImportMaterialsVO;
@@ -74,7 +74,7 @@ public interface IIsMaterialsService extends IService<IsMaterials>
      */
     Page<MaterialsPageVO> getIsMaterialsPage(Page<IsMaterials> page, MaterialsPageDTO dto) throws JsonProcessingException;
 
-    Boolean updateIsMaterialById(LoanMaterialDTO dto);
+    Boolean updateIsMaterialById(LoanParamDTO dto);
 
     String importMaterials(List<ImportMaterialsVO> itemList, boolean updateSupport, String operName) throws JsonProcessingException;
 

+ 30 - 25
ktg-iscs/src/main/java/com/ktg/iscs/service/impl/IsMaterialsServiceImpl.java

@@ -12,6 +12,7 @@ import com.ktg.common.exception.ServiceException;
 import com.ktg.common.utils.DateUtils;
 import com.ktg.common.utils.bean.BeanUtils;
 import com.ktg.iscs.domain.*;
+import com.ktg.iscs.domain.dto.hardwareApi.LoanParamDTO;
 import com.ktg.iscs.domain.dto.materials.LoanMaterialDTO;
 import com.ktg.iscs.domain.dto.materials.MaterialBindingDTO;
 import com.ktg.iscs.domain.dto.materials.MaterialsPageDTO;
@@ -178,31 +179,35 @@ public class IsMaterialsServiceImpl extends ServiceImpl<IsMaterialsMapper, IsMat
 
     @Transactional
     @Override
-    public Boolean updateIsMaterialById(LoanMaterialDTO dto) {
-        // 1.断言判断
-        Assert.notNull(dto.getMaterialsId(), "请告诉我需要借出/归还的物资!");
-        Assert.isFalse(StringUtils.isBlank(dto.getLoanState()), "请告诉我是借出还是归还!");
-        // 2.开始更新物资状态
-        update(Wrappers.<IsMaterials>lambdaUpdate().eq(IsMaterials::getMaterialsId, dto.getMaterialsId()).set(IsMaterials::getLoanState, dto.getLoanState()).set(IsMaterials::getUpdateTime, new Date()));
-        // 3.物资信息
-        IsMaterials materials = getById(dto.getMaterialsId());
-        Assert.notNull(materials, "该物资不存在!");
-        // 4.开始更新借出表信息
-        if ("0".equals(dto.getLoanState())) {
-            Assert.notNull(dto.getLoanUserId(), "请告诉我借取人员信息!");
-            // 4.1开始新增记录表
-            AddLoanDTO addMaterialsLoan = new AddLoanDTO();
-            addMaterialsLoan.setMaterialsId(dto.getMaterialsId());
-            addMaterialsLoan.setLoanUserId(dto.getLoanUserId());
-            iIsMaterialsLoanService.insertIsMaterialsLoan(addMaterialsLoan);
-        } else if ("1".equals(dto.getLoanState())) {
-            Assert.notNull(dto.getRestitutionUserId(), "请告诉我归还人员信息!");
-            // 4.2开始更新记录表
-            ReturnLoanDTO returnLoanDTO = new ReturnLoanDTO();
-            returnLoanDTO.setMaterialsId(dto.getMaterialsId());
-            returnLoanDTO.setRestitutionUserId(dto.getRestitutionUserId());
-            returnLoanDTO.setRestitutionToId(dto.getRestitutionToId());
-            iIsMaterialsLoanService.returnIsMaterialsLoan(returnLoanDTO);
+    public Boolean updateIsMaterialById(LoanParamDTO loanParamDTO) {
+        if (!loanParamDTO.getList().isEmpty()) {
+            for (LoanMaterialDTO dto : loanParamDTO.getList()) {
+                // 1.断言判断
+                Assert.notNull(dto.getMaterialsId(), "请告诉我需要借出/归还的物资!");
+                Assert.isFalse(StringUtils.isBlank(dto.getLoanState()), "请告诉我是借出还是归还!");
+                // 2.开始更新物资状态
+                update(Wrappers.<IsMaterials>lambdaUpdate().eq(IsMaterials::getMaterialsId, dto.getMaterialsId()).set(IsMaterials::getLoanState, dto.getLoanState()).set(IsMaterials::getUpdateTime, new Date()));
+                // 3.物资信息
+                IsMaterials materials = getById(dto.getMaterialsId());
+                Assert.notNull(materials, "该物资不存在!");
+                // 4.开始更新借出表信息
+                if ("0".equals(dto.getLoanState())) {
+                    Assert.notNull(dto.getLoanUserId(), "请告诉我借取人员信息!");
+                    // 4.1开始新增记录表
+                    AddLoanDTO addMaterialsLoan = new AddLoanDTO();
+                    addMaterialsLoan.setMaterialsId(dto.getMaterialsId());
+                    addMaterialsLoan.setLoanUserId(dto.getLoanUserId());
+                    iIsMaterialsLoanService.insertIsMaterialsLoan(addMaterialsLoan);
+                } else if ("1".equals(dto.getLoanState())) {
+                    Assert.notNull(dto.getRestitutionUserId(), "请告诉我归还人员信息!");
+                    // 4.2开始更新记录表
+                    ReturnLoanDTO returnLoanDTO = new ReturnLoanDTO();
+                    returnLoanDTO.setMaterialsId(dto.getMaterialsId());
+                    returnLoanDTO.setRestitutionUserId(dto.getRestitutionUserId());
+                    returnLoanDTO.setRestitutionToId(dto.getRestitutionToId());
+                    iIsMaterialsLoanService.returnIsMaterialsLoan(returnLoanDTO);
+                }
+            }
         }
         return true;
     }

+ 1 - 0
ktg-iscs/src/main/resources/mapper/IsBlacklistMapper.xml

@@ -28,6 +28,7 @@
             sys_user u
         <where>
             u.user_id NOT IN (SELECT b.user_id FROM is_blacklist b)
+            and u.del_flag = '0'
             <if test="dto.nickName != null and dto.nickName.trim != ''">
                 and (u.user_name like concat('%',#{dto.nickName},'%') or u.nick_name like concat('%',#{dto.nickName},'%'))
             </if>