yuxc
2023-11-28 88321ac7b2586106950e2baeaeac5102eedebbb0
1、处理流水码的最大值问题更新,插入。
已修改6个文件
171 ■■■■■ 文件已修改
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeAllCodeController.java 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeClassifyController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeAllCodeMapper.java 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java 62 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeALlCodeMapper.xml 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeAllCodeController.java
@@ -33,7 +33,12 @@
import org.springblade.core.tool.utils.Func;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.validation.Valid;
import java.rmi.ServerException;
import java.util.HashMap;
import java.util.Map;
/**
 * 全部码值 控制器
@@ -59,6 +64,76 @@
        CodeAllCode detail = CodeAllcodeService.getOne(Condition.getQueryWrapper(CodeAllcode));
        return R.data(CodeAllcodeWrapper.build().entityVO(detail));
    }
    @GetMapping("/testdata")
    @ResponseBody
    public Map test(String clientId,String clientSecret) throws Exception {
        Map<Object,Object> test = new HashMap<>();
        test.put("success",true);
        test.put("message","");
        test.put("show",true);
        test.put("code",200);
        Map<Object,Object> test2 = new HashMap<>();
        test2.put("access_token","168a31ad-6540-4f45-98d9-ec241959c3e4");
        test2.put("refresh_token","cc554d4c-66ec-469d-9baf-799e579214ff");
        test2.put("openid","181****6777");
        test2.put("userNo","zhangsan");
        test2.put("token_type","bearer");
        test2.put("expires_in",2801);
        test2.put("userCode","1fsdsff");
        test2.put("adUserNo","zhangsan1");
        test.put("data",test2);
//        Map<Object,Object> test = new HashMap<>();
//        test.put("success",true);
//        test.put("message","");
//        test.put("show",true);
//        test.put("code",200);
//        Map<Object,Object> test2 = new HashMap<>();
//        test2.put("token","168a31ad-6540-4f45-98d9-ec241959c3e4");
//        test2.put("expire","3600");
//        test.put("data",test2);
        return test;
    }
    @PostMapping("/todoAdd")
    @ResponseBody
    public Map todoAdd(@RequestHeader("token")String token,@RequestBody Map<String,String> map) throws Exception {
//        Map<Object,Object> test = new HashMap<>();
//        test.put("success",true);
//        test.put("message","");
//        test.put("show",true);
//        test.put("code",200);
//        Map<Object,Object> test2 = new HashMap<>();
//        test2.put("access_token","168a31ad-6540-4f45-98d9-ec241959c3e4");
//        test2.put("refresh_token","cc554d4c-66ec-469d-9baf-799e579214ff");
//        test2.put("openid","181****6777");
//        test2.put("userNo","zhangsan");
//        test2.put("token_type","bearer");
//        test2.put("expires_in",2801);
//        test2.put("userCode","1");
//        test2.put("adUserNo","zhangsan1");
//        test.put("data",test2);
//        Map<Object,Object> test = new HashMap<>();
//        test.put("success",true);
//        test.put("message","");
//        test.put("show",true);
//        test.put("code",200);
//        Map<Object,Object> test2 = new HashMap<>();
//        test2.put("token","168a31ad-6540-4f45-98d9-ec241959c3e4");
//        test2.put("expire","3600");
//        test.put("data",test2);
        Map<Object,Object> test = new HashMap<>();
        test.put("success",true);
        test.put("message","");
        test.put("show",true);
        test.put("code",200);
        Map<Object,Object> test2 = new HashMap<>();
        test2.put("mid","78b57ce0-2222-46b8-81c4-0f661254db97");
        test2.put("id","437");
        test.put("data",test2);
        return test;
    }
    /**
     * 全部码值 分页
     */
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeClassifyController.java
@@ -358,4 +358,11 @@
        CodeClassifyVO codeClassifyVO = codeClassifyService.getObjectByClsfNamePath(clsfNamePath);
        return R.data(codeClassifyVO);
    }
    /**
     * 流水依赖生成
     */
    @GetMapping("/flowingDependencyGen")
    public R flowingDependencyGen(String classifyOid)  {
        return codeClassifyService.flowingDependencyGen(classifyOid);
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/mapper/CodeAllCodeMapper.java
@@ -20,9 +20,11 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.vci.ubcs.code.entity.CodeAllCode;
import com.vci.ubcs.code.vo.pagemodel.CodeAllCodeVO;
import org.apache.ibatis.annotations.MapKey;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
 * 全部码值 Mapper 接口
@@ -41,5 +43,14 @@
     */
    List<CodeAllCodeVO> selectCodeAllCodePage(IPage page, CodeAllCodeVO codeAllCode);
    /**
     * 分组统计最大流水值
     *
     * @param codeClassifyOid
     * @return
     */
//    @MapKey("OID")
    List<CodeAllCode> selectGroupByClassify(@Param("codeClassifyOid") String codeClassifyOid,@Param("replaceString") String replaceString);
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeClassifyService.java
@@ -305,4 +305,8 @@
     */
    String selectLeafByParentClassifyOid(String topOid, String currentOid);
    /**
     * 流水依赖生成
     */
    R flowingDependencyGen(String classifyOid);
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeClassifyServiceImpl.java
@@ -9,17 +9,16 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.baomidou.mybatisplus.extension.toolkit.SqlHelper;
import com.sun.org.apache.bcel.internal.generic.NEW;
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.entity.CodeClassify;
import com.vci.ubcs.code.entity.CodeClassifyTemplate;
import com.vci.ubcs.code.entity.*;
import com.vci.ubcs.code.enumpack.FrameworkDataLCStatus;
import com.vci.ubcs.code.mapper.CodeClassifyMapper;
import com.vci.ubcs.code.mapper.CodeClassifyTemplateMapper;
import com.vci.ubcs.code.mapper.CommonsMapper;
import com.vci.ubcs.code.mapper.*;
import com.vci.ubcs.code.po.CodeClassifyPO;
import com.vci.ubcs.code.service.ICodeClassifyService;
import com.vci.ubcs.code.service.ICodeKeyAttrRepeatService;
import com.vci.ubcs.code.service.ICodeRuleService;
import com.vci.ubcs.code.vo.pagemodel.CodeAllCodeVO;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyVO;
import com.vci.ubcs.code.vo.pagemodel.CodeKeyAttrRepeatRuleVO;
import com.vci.ubcs.code.vo.pagemodel.CodeRuleVO;
@@ -61,6 +60,7 @@
import org.springblade.core.tool.utils.Func;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
@@ -105,6 +105,15 @@
    @Resource
    private ICodeKeyAttrRepeatService iCodeKeyattrrepeatService;
    @Resource
    private CodeAllCodeMapper codeAllCodeMapper;
    @Resource
    private CodeSerialValueMapper codeSerialValueMapper;
    @Resource
    private CodeBasicSecMapper codeBasicSecMapper;
    /**
     * 上级节点的属性名称
     */
@@ -678,6 +687,49 @@
        return oids;
    }
    /**
     * 流水依赖生成
     */
    @Override
    public R flowingDependencyGen(String classifyOid) {
        //查询此分类下面的所有分类
        List<CodeClassify>  codeClassifyList=codeClassifyMapper.selectAllClassifyByOid(classifyOid,AuthUtil.getTenantId(),null);
        //查询码值表,获取最大流水
        List<CodeAllCode> codeAllCodeVOS = codeAllCodeMapper.selectGroupByClassify("'" + codeClassifyList.stream()
            .map(classfiy -> classfiy.getOid()).collect(Collectors.joining("','")) + "'","'${sav}'");
        //往流水表里面加数据,有则更新,无则添加数据。
        for (CodeAllCode codeAllCodeVO : codeAllCodeVOS) {
            QueryWrapper<CodeBasicSec> secWrapper = new QueryWrapper<>();
            secWrapper.eq("PKCODERULE",codeAllCodeVO.getCodeRuleOid());
            secWrapper.eq("SECTYPE","codeserialsec");
            CodeBasicSec codeBasicSec = codeBasicSecMapper.selectOne(secWrapper);
            QueryWrapper<CodeSerialValue> wrapper = new QueryWrapper<>();
            wrapper.eq("codeRuleOid",codeAllCodeVO.getCodeRuleOid());
            wrapper.eq("serialUnit",codeAllCodeVO.getSerialUnit());
            wrapper.eq("codeSecOid",codeBasicSec.getOid());
            CodeSerialValue codeSerialValue = codeSerialValueMapper.selectOne(wrapper);
            if(codeSerialValue == null){
                CodeSerialValue newSerialValue = new CodeSerialValue();
                DefaultAttrAssimtUtil.addDefaultAttrAssimt(newSerialValue,"codeserialvalue");
                newSerialValue.setCodeRuleOid(codeAllCodeVO.getCodeRuleOid());
                newSerialValue.setCodeSecOid(codeBasicSec.getOid());
                newSerialValue.setSerialUnit(codeAllCodeVO.getSerialUnit());
                newSerialValue.setMaxSerial(codeAllCodeVO.getUnFillSerial());
                newSerialValue.setLctid("defaultLC");
                newSerialValue.setLcStatus("Exist");
                codeSerialValueMapper.insert(newSerialValue);
            }else{
                codeSerialValue.setMaxSerial(codeAllCodeVO.getUnFillSerial());
                codeSerialValue.setLastModifyTime(new Date());
                codeSerialValue.setLastModifier(String.valueOf(AuthUtil.getUser().getUserId()));
                codeSerialValue.setTs(new Date());
                codeSerialValueMapper.updateById(codeSerialValue);
            }
        }
        return R.success("操作成功!");
    }
    /***
     * 根据分类描述备注和库节点查询分类信息
     * @param desc
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CodeALlCodeMapper.xml
@@ -9,5 +9,17 @@
    <select id="selectCodeAllCodePage" resultMap="CodeAllcodeResultMap">
        select * from PL_CODE_ALLCODE
    </select>
    <select id="selectGroupByClassify" resultMap="CodeAllcodeResultMap">
        select codeClassifyOid,
               codeRuleOid,
               serialUnit,
               max(unFillSerial) unFillSerial
        from (select codeClassifyOid,
                     codeRuleOid,
                     serialUnit,
                     to_number(replace(unFillSerial, ${replaceString}, '')) unFillSerial
              from PL_CODE_ALLCODE where codeClassifyOid in (${codeClassifyOid}))
        group by codeClassifyOid, codeRuleOid, serialUnit
    </select>
</mapper>