ludc
2023-10-20 782540f8ba18e4cf6e56f94b2b97c5b5afa17c9f
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeBasicSecController.java
@@ -4,6 +4,7 @@
import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
import com.vci.ubcs.code.dto.CodeBasicSecDTO;
import com.vci.ubcs.code.dto.CodeOrderDTO;
import com.vci.ubcs.code.dto.CodeOrderSecDTO;
import com.vci.ubcs.code.dto.CodeRuleDTO;
import com.vci.ubcs.code.entity.CodeBasicSec;
import com.vci.ubcs.code.service.ICodeBasicSecService;
@@ -15,17 +16,21 @@
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springblade.core.log.exception.ServiceException;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.rmi.ServerException;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
import java.util.Map;
/**
@@ -221,8 +226,6 @@
      return R.data(codeBasicSecService.getSerialNumberDepend(ruleOid));
   }
   /**
    * 设置最大流水号
    * @param codeOrderDTO 编码申请传输对象
@@ -237,13 +240,25 @@
   /***
    *  根据流水依赖获取最大流水号
    * @param codeOrderDTO
    * @param secMap
    * @return
    */
   @GetMapping("/getMaxSerialNumberForCodeRule")
   @ApiOperationSupport(order = 15)
   @ApiOperation(value = "查询编码规则的所有流水依赖的最大流水", notes = "传入oid")
   public R getMaxSerialNumberForCodeRule(@RequestBody CodeOrderDTO codeOrderDTO){
   public R getMaxSerialNumberForCodeRule(@RequestParam Map<String,String> secMap){
      if (secMap.isEmpty() && Func.isBlank(secMap.get("codeRuleOid"))) {
         throw new ServiceException("最大流水号的流水依赖不能为空!");
      }
      CodeOrderDTO codeOrderDTO = new CodeOrderDTO();
      codeOrderDTO.setCodeRuleOid(secMap.get("codeRuleOid"));
      secMap.remove("codeRuleOid");
      List<CodeOrderSecDTO> secDTOList = new ArrayList<>();
      secMap.entrySet().stream().forEach(item->{
         secDTOList.add(new CodeOrderSecDTO(item.getKey(),item.getValue()));
      });
      codeOrderDTO.setSecDTOList(secDTOList);
      return R.data(codeBasicSecService.getMaxSerialNumberForCodeRule(codeOrderDTO));
   }
}