ludc
2024-04-13 becbe54034f5803eee6540f533be9eb35ef8b86e
内网开发环境代码合并
已修改7个文件
87 ■■■■ 文件已修改
Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feign/IMdmInterJtClient.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/BaseMdodelWrapper.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-deploy/src/main/java/com/vci/ubcs/deploy/controller/DeployAppsController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feign/IMdmInterJtClient.java
@@ -1,6 +1,5 @@
package com.vci.ubcs.code.applyjtcodeservice.feign;
import com.vci.ubcs.code.applyjtcodeservice.vo.DockingClassifyModelAttrVO;
import com.vci.ubcs.code.applyjtcodeservice.vo.DockingPreAttrMappingVO;
import com.vci.ubcs.code.applyjtcodeservice.vo.DockingReturnStoreVO;
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java
@@ -141,10 +141,11 @@
                    log.info("申请集团码数据格式:->"+resultStr);
                    DockingResultVO resultDataObject = new DockingResultVO();
                    resultDataObject = mdmApplyGroupCodeProvider.receiveAddApply(dockingGroupDataVO);
                    log.info("申请集团码返回结果:->"+JSONObject.toJSONString(resultDataObject));
                    code = resultDataObject.getCode();
                    msg = resultDataObject.getMsg();
                    boolean res=false;
                    if ("1".equals(code)) {
                    if("1".equals(code)) {
                        //结果正确的情况
                        List<DockingDataVO> dataObjectVOList = resultDataObject.getData();
                        res=true;
@@ -154,7 +155,7 @@
                            DockingMainDataVO data2 = dataObject.getData();
                            String applyId = data2.getApplyId();//申请单id
                            BaseModel baseModel = baseModelMap.get(applyId);
                            String customCoding = StringUtils.isBlank(data2.getCustomCoding()) ? "" : data2.getCustomCoding();//集团码段
                            String customCoding = StringUtils.isBlank(data2.getCustomCoding()) ? "" : data2.getCustomCoding();
                            msg = dataObject.getMsg();
                            if (code2.equals("1")) {//结果正确的情况
                                if (!"".equals(customCoding)) {
@@ -183,9 +184,9 @@
                                } catch (JsonProcessingException e) {
                                }
                                Date date = new Date();
                                baseModel.setLastModifyTime(date);
                                baseModel.setTs(date);
                                baseModel.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                dockingPreApplyForm.setLastModifyTime(date);
                                dockingPreApplyForm.setTs(date);
                                dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                            }
                            //新增的申请单数据
@@ -205,17 +206,17 @@
                                Date date = new Date();
                                dockingPreApplyForm.setCreateTime(date);
                                dockingPreApplyForm.setLastModifyTime(date);
                                dockingPreApplyForm.setTs(date);
                                dockingPreApplyForm.setBtmname(MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                                dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                dockingPreApplyForm.setCreator(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                dockingPreApplyForm.setBtmname(MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                                dockingPreApplyForm.setTs(date);
                                // DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            }
                            //如果有集团码则更新数据
                            if (isEditDatas) {
                                if (baseModelMap.containsKey(applyId)) {
                                    baseModel = baseModelMap.get(applyId);
                                    Map<String,String> dataValueMap=new CaseInsensitiveMap<>(baseModel.getData());
                                    //Map<String,String> dataValueMap=new CaseInsensitiveMap<>(baseModel.getData());
                                    /*String classOid=baseModel.getId();
                                    if(partCode.equals(classOid)){
                                        baseModel.setId(10+customCoding);
@@ -234,15 +235,18 @@
                        });
                    } else {
                        res=false;
                        Date date = new Date();
                        editDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
                            dockingPreApplyForm.setCode("2");
                            dockingPreApplyForm.setMsg("申请:" + msg);
                            dockingPreApplyForm.setContent("");
                            dockingPreApplyForm.setGroupCode("");
                            Date date = new Date();
                            dockingPreApplyForm.setCreateTime(date);
                            dockingPreApplyForm.setLastModifyTime(date);
                            dockingPreApplyForm.setTs(date);
                            dockingPreApplyForm.setBtmname(MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            dockingPreApplyForm.setCreator(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            dockingPreApplyForm.setTs(date);
                            //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                        });
                        addDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
@@ -250,13 +254,12 @@
                            dockingPreApplyForm.setMsg("申请:" + msg);
                            dockingPreApplyForm.setContent("");
                            dockingPreApplyForm.setGroupCode("");
                            Date date = new Date();
                            dockingPreApplyForm.setCreateTime(date);
                            dockingPreApplyForm.setLastModifyTime(date);
                            dockingPreApplyForm.setTs(date);
                            dockingPreApplyForm.setBtmname(MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            dockingPreApplyForm.setCreator(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            dockingPreApplyForm.setBtmname(MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            dockingPreApplyForm.setTs(date);
                            //DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                        });
                    }
@@ -275,7 +278,7 @@
                }
                return R.success("申请接口调用成功");
            } catch (VciBaseException e) {
                return R.fail("申请接口调用失败" + e);
                return R.fail("申请接口调用失败" + e.getMessage());
            }
        }else{
            return R.fail("申请接口开关已关闭,不申请集团码");
@@ -372,8 +375,8 @@
                            Date date = new Date();
                            dockingPreApplyForm.setCreateTime(date);
                            dockingPreApplyForm.setLastModifyTime(date);
                            dockingPreApplyForm.setTs(date);
                            dockingPreApplyForm.setBtmname(MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            dockingPreApplyForm.setTs(date);
                            dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            dockingPreApplyForm.setCreator(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            //DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
@@ -391,8 +394,8 @@
                                baseModel.setLastModifyTime(date);
                                baseModel.setTs(date);
                                baseModel.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                //    baseModel.setId(customCoding);
                                //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                //baseModel.setId(customCoding);
                                baseModel.getData().put("GROUPCODE", customCoding);
                                updateCbos.add(baseModel);//更新数据集团code
                            }
@@ -555,7 +558,7 @@
                        dockingPreClassify.setVersionValue(version);
                        dockingPreClassifyList.add(dockingPreClassify);
                    });
                    boolean res=    dockingPreClassifyService.saveOrUpdateBatch(dockingPreClassifyList);
                    boolean res = dockingPreClassifyService.saveOrUpdateBatch(dockingPreClassifyList);
                    if(res){
                        R.success(message);
                    }else{
@@ -670,7 +673,7 @@
        VciBaseUtil.alertNotNull(operationType,"集成操作类型");
        try {
            if(operationType.equals("all")){
                return    queryMdmModel();
                return queryMdmModel();
            }else{
                VciBaseUtil.alertNotNull(classifyId,"集团分类主键");
                return queryClassModel(classifyId);
@@ -926,7 +929,7 @@
     * @return
     * @throws VciBaseException
     */
    private DockingGroupDataVO queryApplycodeDataObjects(int optationtype,List<BaseModel>  codeWupins,Map<String,DockingPreApplyForm> addDockingPreApplyFormMap,Map<String,DockingPreApplyForm>  editDockingPreApplyFormMap,Map<String,BaseModel>  codeWupinMap) throws VciBaseException{
    private DockingGroupDataVO queryApplycodeDataObjects(int optationtype,List<BaseModel> codeWupins,Map<String,DockingPreApplyForm> addDockingPreApplyFormMap,Map<String,DockingPreApplyForm>  editDockingPreApplyFormMap,Map<String,BaseModel>  codeWupinMap) throws VciBaseException{
        try {
            // TODO:主数据推送过来的数据是拿不到可以申请集团码的用户信息的,并且这一块儿的逻辑也还没敲定,所以这儿采用配置的用户来申请集团码
            String curUserName = Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount();
@@ -961,7 +964,8 @@
                    addDockingPreApplyFormMap.put(applyCode, dockingPreApplyForm);//申请单和申请单对象关系
                //    }
                codeWupinMap.put(applyCode, dataBusinessObject);//申请单和对应数据关系
                //申请单和对应数据关系
                codeWupinMap.put(applyCode, dataBusinessObject);
                // conditionsMap = new HashMap<String, String>();
                // conditionsMap.put("jtargetclsfid", codeclsfid);//视图oid
@@ -982,13 +986,16 @@
                    dockingPreApplyForm.setGroupCode(groucode);
                    mainData.setCustomCoding(groucode);
                }
                mainData.setSecretLevel("内部");//密级,默认为内部
                mainData.setViewInfos(getviewInfos(optationtype,dockingPreClassify, dataBusinessObject));//获取视图模型
                //密级,默认为内部
                mainData.setSecretLevel("内部");
                //获取视图模型
                mainData.setViewInfos(getviewInfos(optationtype,dockingPreClassify, dataBusinessObject));
                mainDataList.add(mainData);
            }
            //根据数据模型,组织所需要数据
            DockingGroupDataVO postParameters=new DockingGroupDataVO();
            postParameters.setSysName(dockingApplySysName);//系统标识
            DockingGroupDataVO postParameters = new DockingGroupDataVO();
            //系统标识
            postParameters.setSysName(dockingApplySysName);
            postParameters.setMainData(mainDataList);//
            return postParameters;
        } catch (Throwable e) {
@@ -1058,7 +1065,7 @@
            String jenglishname=dockingPreMetaAttr.getEnglishName();////集团配置属性
            if(jintegmappconfigMap.containsKey(jenglishname)){
                DockingPreAttrMapping dockingPreAttrMapping=jintegmappconfigMap.get(jenglishname);
                String attrId = dockingPreAttrMapping.getTargetAttrId();//编码属性id
                // String attrId = dockingPreAttrMapping.getTargetAttrId();//编码属性id
                String jtargetattrkey = dockingPreAttrMapping.getTargetAttrKey();//编码属性id
                Object newVaue=null;
                if(StringUtils.isNotBlank(jtargetattrkey)){
@@ -1077,7 +1084,7 @@
                }else{
                    newVaue = getVaue(dockingPreMetaAttr, "");
                }
                if(newVaue==null||"".equals(newVaue)){
                if(newVaue==null || "".equals(newVaue)){
                    newVaue= dockingPreMetaAttr.getDefaultValue();
                }
                //newVaue= Func.isNotEmpty(newVaue)?newVaue:"";
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
@@ -1,6 +1,5 @@
package com.vci.ubcs.code.controller;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.nacos.common.utils.StringUtils;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -33,11 +32,9 @@
import java.io.File;
import java.io.IOException;
import java.nio.charset.StandardCharsets;
import java.rmi.ServerException;
import java.util.*;
@RestController
//@AllArgsConstructor
@RequestMapping("/mdmEngineController")
@Api(value = "编码数据管理", tags = "编码数据管理")
public class MdmEngineController {
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
@@ -2,6 +2,7 @@
import com.alibaba.cloud.commons.lang.StringUtils;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.nacos.shaded.com.google.protobuf.ServiceException;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
@@ -9,7 +10,6 @@
import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;
import com.vci.ubcs.code.bo.CodeClassifyFullInfoBO;
import com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant;
import com.vci.ubcs.code.constant.MdmDuckingConstant;
import com.vci.ubcs.code.dto.CodeOrderDTO;
import com.vci.ubcs.code.dto.CodeOrderSecDTO;
@@ -80,6 +80,7 @@
import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors;
import static com.vci.ubcs.code.constant.FrameWorkDefaultValueConstant.FRAMEWORK_RELEASE_TAKEBACK;
import static com.vci.ubcs.code.constant.MdmDuckingConstant.*;
import static com.vci.ubcs.code.constant.MdmEngineConstant.DEFAULT_SYNC_ATTR_LIST;
import static com.vci.ubcs.code.enumpack.CodeSecTypeEnum.CODE_CLASSIFY_SEC;
@@ -966,11 +967,12 @@
                //表示是主数据
                CodeClassifyTemplateVO codeClassifyTemplateVO = mdmEngineServiceI.getUsedTemplateByClassifyOid(classifyoid);
                R<List<Map<String, String>>> r = mdmEngineServiceI.getDataByOid(btmoid, codeClassifyTemplateVO.getOid());
                List<CodeClassifyTemplateAttrVO> attrVOS = codeClassifyTemplateVO.getAttributes();
                Map<String/**英文名称**/, String/**中文名称**/> attrIdNameMap = attrVOS.stream().collect(Collectors.toMap(s -> s.getId().toLowerCase(Locale.ROOT), t -> t.getName(), (o1, o2) -> o2));
                Map<String, String> data = new HashMap<>();
                // TODO: 回收编码的情况,会出现数据已经回收,但是事务还未执行的情况,
                //  所以这儿缓存就得按照啥时候回收的推送成功了啥时候才能清空指定的缓存
                //  导致取不到码值,所以这儿通过查询码值表中存储的已回收的业务数据信息,解析出来
                if (!r.isSuccess() || Func.isEmpty(r.getData())) {
                    List<CodeAllCode> codeAllCodes = codeAllCodeService.selectByWrapper(Wrappers.<CodeAllCode>query().lambda().eq(CodeAllCode::getId, dockingTask.getId()));
                    CodeAllCode codeAllCode = codeAllCodes.get(0);
@@ -978,7 +980,7 @@
                    Map<String, Object> objectMap = VciBaseUtil.objectToMap(baseModel);
                    for (Map.Entry<String,Object> entry : objectMap.entrySet()){
                        if(entry.getKey().equals("data") && Func.isNotEmpty(entry.getValue())){
                            Map<String, Object> dataMap = ((JSONObject) entry.getValue());
                            Map<String, Object> dataMap = (Map<String,Object>)((JSONObject) entry.getValue());
                            for(Map.Entry<String,Object> dataEntry : dataMap.entrySet()){
                                String v = String.valueOf(dataEntry.getValue());
                                data.put(dataEntry.getKey().toLowerCase(Locale.ROOT), v == null ? "" : v);
@@ -986,7 +988,7 @@
                        }else{
                            String key = entry.getKey().toLowerCase(Locale.ROOT);
                            String value = String.valueOf(entry.getValue());
                            data.put(key, value == null ? "":value);
                            data.put(key, value == null ? "" : value);
                        }
                    }
                    /*JSONObject josni = bladeRedis.get(DOCKING_CACHE2_DELETE + btmoid);
@@ -1023,7 +1025,7 @@
                    if(StringUtils.isBlank(code)) {
                        //如果是推送集团码,没有领取到集团码则任务不结束等待集团码申请后再通过定时器调用集团码段
                        dockingTask.setDescription("等待集团申请集团码");
                        // TODO:可能会出现未获取到集团码,就被点了回收,这时候
                        // TODO:可能会出现未获取到集团码,但是又立马执行了回收,此时这条任务就永远无法结束,所以这儿判断只要是集团码为空,并且是回收的就关闭推送这条任务
                        dockingTask.setSendFlag(MdmDuckingConstant.SEND_FLAG_FALSE);
                        dockingTask.setLastModifyTime(new Date());
                        dockingTaskService.updateById(dockingTask);
@@ -1250,6 +1252,7 @@
        queryWrapper.addQueryMap("sendFlag",MdmDuckingConstant.SEND_FLAG_FALSE);
        queryWrapper.addQueryMap("btmId",DOCKING_DEFAULT_CLASSIFY.toUpperCase(Locale.ROOT));
        List<DockingTaskDO> dockingTaskDOS = dockingTaskDaoI.selectByWrapper(queryWrapper);*/
        //根据类型去查询需要集成的分类或者数据
        LambdaQueryWrapper<DockingTask> queryWrapper = Wrappers.<DockingTask>lambdaQuery();
        queryWrapper.eq(DockingTask::getSendFlag,MdmDuckingConstant.SEND_FLAG_FALSE);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/wrapper/BaseMdodelWrapper.java
@@ -7,7 +7,6 @@
import com.vci.ubcs.starter.revision.model.BaseModel;
import org.springblade.core.mp.support.BaseEntityWrapper;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.core.tool.utils.Func;
import java.util.List;
import java.util.Objects;
Source/UBCS/ubcs-service/ubcs-code/src/main/resources/mapper/CommonsMapper.xml
@@ -2,7 +2,6 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.vci.ubcs.code.mapper.CommonsMapper">
    <select id="selectByCount" resultType="java.util.Map">
        select COUNT(w.OID) count
        from ${tableName} w
Source/UBCS/ubcs-service/ubcs-deploy/src/main/java/com/vci/ubcs/deploy/controller/DeployAppsController.java
@@ -4,24 +4,17 @@
import com.vci.ubcs.deploy.entity.DeployApps;
import com.vci.ubcs.deploy.service.IDeployAppsService;
import com.vci.ubcs.deploy.vo.DeployAppsVO;
import com.vci.ubcs.starter.util.LocalFileUtil;
import com.vci.ubcs.starter.web.util.ControllerUtil;
import com.vci.ubcs.starter.web.util.LangBaseUtil;
import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.auth.AuthenticationException;
import org.springblade.core.tenant.annotation.NonDS;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springframework.http.ResponseEntity;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.ServletRequest;
import java.io.File;
import java.util.List;
/**