ludc
2024-04-12 f21bdede8546a348e2b16ffc3bbe292df7eeba76
集成相关代码修改
已修改11个文件
684 ■■■■■ 文件已修改
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-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/OrgMasterData.java 117 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonDataVO.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonMasterData.java 156 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java 166 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java 94 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java 129 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-applyjtcodeservice-api/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feign/IMdmInterJtClient.java
@@ -1,7 +1,6 @@
package com.vci.ubcs.code.applyjtcodeservice.feign;
import com.alibaba.nacos.shaded.com.google.protobuf.ServiceException;
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-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/OrgMasterData.java
@@ -5,116 +5,152 @@
    /**
     * 隶属单位代码
     */
    private  String company_code;
    private String company_code;
    /**
     * 隶属单位名称/所属公司
     */
    private  String  company_name;
    private String company_name;
    /**
     * 部门编码
     */
    private String department_code;
    /**
     * 部门名称
     */
    private String department_name;
    /**
     * 部门类型 1=普通部门,2=决策部门
     */
    private String department_type;
    /**
     * 上级部门编码 所屋上级部门,引用部门主数据,集团命名“上级部门代码
     */
    private String  parent_department_code;
    private String parent_department_code;
    /**
     * 上级部门名称
     */
    private String  parent_department_name;
    private String parent_department_name;
    /**
     * 部门负责人
     */
    private String  department_head;
    private String department_head;
    /***
     * 负责人编码
     */
    private String department_head_code;
    /***
     * 电话
     */
    private String telephone_number;
    /***
     * 排序号
     */
    private  String sort_order;
    /**
     *启用状态 1=未启用,2=已启用,3e已停用
     */
    private int enable_datus;
    private int enable_status;
    /**
     * 部门层级
     */
    private String department_level;
    /***
     * 是香虚拟部门
     */
    private String is_virtual;
    /***
     * 部门状态,有效、作度
     */
    private  String department_status;
    /***
     * 部门显示状态,显示、不显示
     */
    private String diplay_status;
    private String display_status;
    /***
     * 部门ID路径
     */
    private String id_route;
    /***
     *部门名称路径
     */
    private String name_route;
    /***
     *节点类型,当前新加节点的类别,部门,企业(法人单位),默认
     */
    private String node_type;
    /***
     * 部门原编码,记录该部门的原有编码,作为换号时的对解
     */
    private String onginal_code;
    private String original_code;
    /**
     * 创建者
     */
    private String creator;
    /***
     * 创建时间
     */
    private String createtime;
    /***
     * 修改者
     */
    private  String modifier;
    /**
     * 修改时间
     */
    private String modifytime;
    private String mdm_parentcode;
    private  int mdm_workflow_status;
    private String  mdm_datastatus;
    private String mdm_cleanstatus;
    private String  link_fieldvalue;
    private String floy_middatastatus;
    private String originalcode;
    private String flow_middatastatus;
    private String pk_mdm;
    private String mdm_duplicate;
    private String mdm_code;
    private String mdm_version;
    private String original_nane;
    private String original_name;
    private String ts;
    /***
     *0:正常,1数据被删除,默认为0;
     */
    private int dr;
    private String dr_ndm_code;
    public String getCompany_code() {
@@ -205,12 +241,12 @@
        this.sort_order = sort_order;
    }
    public int getEnable_datus() {
        return enable_datus;
    public int getEnable_status() {
        return enable_status;
    }
    public void setEnable_datus(int enable_datus) {
        this.enable_datus = enable_datus;
    public void setEnable_status(int enable_status) {
        this.enable_status = enable_status;
    }
    public String getDepartment_level() {
@@ -237,12 +273,12 @@
        this.department_status = department_status;
    }
    public String getDiplay_status() {
        return diplay_status;
    public String getDisplay_status() {
        return display_status;
    }
    public void setDiplay_status(String diplay_status) {
        this.diplay_status = diplay_status;
    public void setDisplay_status(String display_status) {
        this.display_status = display_status;
    }
    public String getId_route() {
@@ -269,12 +305,12 @@
        this.node_type = node_type;
    }
    public String getOnginal_code() {
        return onginal_code;
    public String getOriginal_code() {
        return original_code;
    }
    public void setOnginal_code(String onginal_code) {
        this.onginal_code = onginal_code;
    public void setOriginal_code(String original_code) {
        this.original_code = original_code;
    }
    public String getCreator() {
@@ -349,20 +385,12 @@
        this.link_fieldvalue = link_fieldvalue;
    }
    public String getFloy_middatastatus() {
        return floy_middatastatus;
    public String getFlow_middatastatus() {
        return flow_middatastatus;
    }
    public void setFloy_middatastatus(String floy_middatastatus) {
        this.floy_middatastatus = floy_middatastatus;
    }
    public String getOriginalcode() {
        return originalcode;
    }
    public void setOriginalcode(String originalcode) {
        this.originalcode = originalcode;
    public void setFlow_middatastatus(String flow_middatastatus) {
        this.flow_middatastatus = flow_middatastatus;
    }
    public String getPk_mdm() {
@@ -397,12 +425,12 @@
        this.mdm_version = mdm_version;
    }
    public String getOriginal_nane() {
        return original_nane;
    public String getOriginal_name() {
        return original_name;
    }
    public void setOriginal_nane(String original_nane) {
        this.original_nane = original_nane;
    public void setOriginal_name(String original_name) {
        this.original_name = original_name;
    }
    public String getTs() {
@@ -443,15 +471,14 @@
            ", department_head_code='" + department_head_code + '\'' +
            ", telephone_number='" + telephone_number + '\'' +
            ", sort_order='" + sort_order + '\'' +
            ", enable_datus=" + enable_datus +
            ", enable_status=" + enable_status +
            ", department_level='" + department_level + '\'' +
            ", is_virtual='" + is_virtual + '\'' +
            ", department_status='" + department_status + '\'' +
            ", diplay_status='" + diplay_status + '\'' +
            ", display_status='" + display_status + '\'' +
            ", id_route='" + id_route + '\'' +
            ", name_route='" + name_route + '\'' +
            ", node_type='" + node_type + '\'' +
            ", onginal_code='" + onginal_code + '\'' +
            ", creator='" + creator + '\'' +
            ", createtime='" + createtime + '\'' +
            ", modifier='" + modifier + '\'' +
@@ -461,13 +488,13 @@
            ", mdm_datastatus='" + mdm_datastatus + '\'' +
            ", mdm_cleanstatus='" + mdm_cleanstatus + '\'' +
            ", link_fieldvalue='" + link_fieldvalue + '\'' +
            ", floy_middatastatus='" + floy_middatastatus + '\'' +
            ", originalcode='" + originalcode + '\'' +
            ", floy_middatastatus='" + flow_middatastatus + '\'' +
            ", original_code='" + original_code + '\'' +
            ", pk_mdm='" + pk_mdm + '\'' +
            ", mdm_duplicate='" + mdm_duplicate + '\'' +
            ", mdm_code='" + mdm_code + '\'' +
            ", mdm_version='" + mdm_version + '\'' +
            ", original_nane='" + original_nane + '\'' +
            ", original_name='" + original_name + '\'' +
            ", ts='" + ts + '\'' +
            ", dr=" + dr +
            ", dr_ndm_code='" + dr_ndm_code + '\'' +
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonDataVO.java
@@ -2,8 +2,6 @@
import lombok.Data;
import java.util.List;
/**
 * @author ludc
 * @date 2024/3/20 16:39
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/webserviceModel/person/PersonMasterData.java
@@ -15,51 +15,62 @@
     * 集团员工编号
     */
    private String group_code;
    /***
     * 员工姓名
     */
    private String name;
    /**
     * 主数据编码
     */
    private String mdm_code;
    /***
     *0:正常,1数据被删除,默认为0;
     */
    private int dr;
    /***
     * 行政区域化
     */
    private String admin_division;
    /***
     * 行政区域化号码
     */
    private String admin_division_code;
    /**
     * 出生日期(yyyy-MM-dd)
     */
    private String birthday;
    /**
     * 出生地
     */
    private String birthplace;
    /***
     * 籍贯
     */
    private String cittizenship;
    private String citiizenship;
    /**
     * 国家/地区
     */
    private String country;
    /***
     * 部门
     */
    private String dept_type;
    /***
     * 部门名称
     */
    private String deptName;
    private String dept_name;
    /***
     * 学历
     */
@@ -69,28 +80,32 @@
     * 任职单位编码
     */
    private String employer_code;
    /***
     * 用工形式
     */
    private String employment_form;
    /**
     * 身份证编号
     */
    private String id_number;
    /***
     * 证件类型
     */
    private String id_type;
    /***
     * 是否主职
     */
    private String is_keyposion;
    /**
     * 婚姻状况
     */
    private String marital_status;
    /**
     * 手机号码
     */
@@ -100,6 +115,7 @@
     * 名族
     */
    private String nationality;
    /**
     * 办公电话
     */
@@ -114,6 +130,7 @@
     *上级门编码
     */
    private String parent_dept_code;
    /***
     *上级门名称
     */
@@ -123,6 +140,7 @@
     *政治面貌
     */
    private String politiccountenance;
    /***
     * 岗位
     */
@@ -132,10 +150,16 @@
     * 职称
     */
    private String work_title;
    /***
     * 人员类别
     */
    private String worker_category;
    /***
     * 人员类别编码
     */
    private String worker_category_code;
    /***
     * 职务
@@ -153,6 +177,31 @@
    private String worker_level;
    /***
     * 职级编码
     */
    private String worker_level_code;
    /**
     * 国密等级编码
     */
    private String country_level_code;
    /**
     * 国密等级名称
     */
    private String country_level_name;
    /**
     * 商密等级编码
     */
    private String business_level_code;
    /**
     * 商密等级编码
     */
    private String business_level_name;
    /***
     * 人员密级
     */
    private String worker_security_level;
@@ -161,44 +210,62 @@
     * 流程状态
     */
    private int mdm_workflow;
    /***
     * 修改者
     */
    private String modifier;
    /***
     * 修改时间
     */
    private String modifytime;
    /***
     * 创建者
     */
    private String creator;
    /***
     * 创建时间
     */
    private String createtime;
    /**
     * 数据状态
     */
    private int mdm_datastatus;
    private String link_fieldvalue;
    private String flow_middatastatus;
    private String employer;
    private int mdm_duplicate;
    private EnumerableData gender_entity;
    private EnumerableData employment_type_entity;
    private String gerder;
    private String gender;
    private  String employment_type;
    private String employment_type_nane;
    private String mdm_cleanstatus;
    private String mdm_parentcode;
    private String mdm_yersion;
    private String dr_mdm_code;
    private String pk_mdm;
    private String gender_name;
    private String ts;
    public String getId() {
@@ -281,12 +348,12 @@
        this.birthplace = birthplace;
    }
    public String getCittizenship() {
        return cittizenship;
    public String getCitiizenship() {
        return citiizenship;
    }
    public void setCittizenship(String cittizenship) {
        this.cittizenship = cittizenship;
    public void setCitiizenship(String citiizenship) {
        this.citiizenship = citiizenship;
    }
    public String getCountry() {
@@ -305,12 +372,12 @@
        this.dept_type = dept_type;
    }
    public String getDeptName() {
        return deptName;
    public String getDept_name() {
        return dept_name;
    }
    public void setDeptName(String deptName) {
        this.deptName = deptName;
    public void setDept_name(String dept_name) {
        this.dept_name = dept_name;
    }
    public String getEducation() {
@@ -469,6 +536,54 @@
        return worker_level;
    }
    public String getWorker_category_code() {
        return worker_category_code;
    }
    public String getWorker_level_code() {
        return worker_level_code;
    }
    public String getCountry_level_code() {
        return country_level_code;
    }
    public String getCountry_level_name() {
        return country_level_name;
    }
    public String getBusiness_level_code() {
        return business_level_code;
    }
    public String getBusiness_level_name() {
        return business_level_name;
    }
    public void setWorker_category_code(String worker_category_code) {
        this.worker_category_code = worker_category_code;
    }
    public void setWorker_level_code(String worker_level_code) {
        this.worker_level_code = worker_level_code;
    }
    public void setCountry_level_code(String country_level_code) {
        this.country_level_code = country_level_code;
    }
    public void setCountry_level_name(String country_level_name) {
        this.country_level_name = country_level_name;
    }
    public void setBusiness_level_code(String business_level_code) {
        this.business_level_code = business_level_code;
    }
    public void setBusiness_level_name(String business_level_name) {
        this.business_level_name = business_level_name;
    }
    public void setWorker_level(String worker_level) {
        this.worker_level = worker_level;
    }
@@ -577,12 +692,12 @@
        this.employment_type_entity = employment_type_entity;
    }
    public String getGerder() {
        return gerder;
    public String getGender() {
        return gender;
    }
    public void setGerder(String gerder) {
        this.gerder = gerder;
    public void setGender(String gender) {
        this.gender = gender;
    }
    public String getEmployment_type() {
@@ -670,10 +785,10 @@
            ", admin_division_code='" + admin_division_code + '\'' +
            ", birthday='" + birthday + '\'' +
            ", birthplace='" + birthplace + '\'' +
            ", cittizenship='" + cittizenship + '\'' +
            ", citiizenship='" + citiizenship + '\'' +
            ", country='" + country + '\'' +
            ", dept_type='" + dept_type + '\'' +
            ", deptName='" + deptName + '\'' +
            ", dept_name='" + dept_name + '\'' +
            ", education='" + education + '\'' +
            ", employer_code='" + employer_code + '\'' +
            ", employment_form='" + employment_form + '\'' +
@@ -707,7 +822,7 @@
            ", mdm_duplicate=" + mdm_duplicate +
            ", gender_entity=" + gender_entity +
            ", employment_type_entity=" + employment_type_entity +
            ", gerder='" + gerder + '\'' +
            ", gender='" + gender + '\'' +
            ", employment_type='" + employment_type + '\'' +
            ", employment_type_nane='" + employment_type_nane + '\'' +
            ", mdm_cleanstatus='" + mdm_cleanstatus + '\'' +
@@ -719,4 +834,5 @@
            ", ts='" + ts + '\'' +
            '}';
    }
}
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/feigh/MdmInterJtClient.java
@@ -28,6 +28,7 @@
import org.springframework.web.bind.annotation.RestController;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletRequest;
import java.util.*;
import java.util.stream.Collectors;
@@ -172,7 +173,7 @@
                } else if ("9".equals(formState)) {
                    msg = "审核中";
                }
                msg = Func.isNotBlank(mainData.getExamineOpinion()) ? mainData.getExamineOpinion():msg;
                msg = Func.isNotBlank(mainData.getExamineOpinion()) ? msg+",意见:"+mainData.getExamineOpinion():msg;
                jcontent.put("applyId", applyId);
                jcontent.put("formState", formState);
                jcontent.put("customCoding", customCoding);
@@ -185,6 +186,7 @@
                DockingPreApplyForm dockingPreApplyForm = oldDockingPreApplyFormList.get(0);
                dockingPreApplyForm.setMsg(msg);
                dockingPreApplyForm.setCode("1");
                dockingPreApplyForm.setLastModifyTime(new Date());
                if (res) {
                    dockingPreApplyForm.setGroupCode(customCoding);
                }
Source/UBCS/ubcs-service/ubcs-applyjtcodeservice/src/main/java/com/vci/ubcs/code/applyjtcodeservice/service/impl/GroupMdmInterServiceImpl.java
@@ -6,14 +6,10 @@
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.vci.ubcs.code.applyjtcodeservice.service.*;
import com.vci.ubcs.code.feign.IMdmEngineClient;
import com.vci.ubcs.code.applyjtcodeservice.entity.*;
import com.vci.ubcs.code.applyjtcodeservice.service.IGroupMdmInterService;
import com.vci.ubcs.code.applyjtcodeservice.vo.*;
import com.vci.ubcs.code.vo.pagemodel.CodeClassifyTemplateAttrVO;
import com.vci.ubcs.code.vo.webserviceModel.apply.ApplyDataVO;
import com.vci.ubcs.code.vo.webserviceModel.apply.InterParameterVO;
import com.vci.ubcs.code.vo.webserviceModel.result.xml.XMLResultDataObjectDetailDO;
import com.vci.ubcs.starter.util.MdmBtmTypeConstant;
import com.vci.ubcs.code.applyjtcodeservice.feign.MdmApplyGroupCodeProvider;
import com.vci.ubcs.code.applyjtcodeservice.mapper.DockingPreAttrMappingMapper;
@@ -50,7 +46,7 @@
    private String msg="";
    @Value("${docking.apply.partCode:101}")
    public String partCoe;
    public String partCode;
    @Value("${docking.apply.usedFlag:false}")
    public boolean usedFlag;
@@ -61,6 +57,9 @@
    @Value("${docking.apply.sysName:410-MDM}")
    public String dockingApplySysName;
    @Value("${docking.apply.personUserAccount:28201728}")
    public String applyCodeUserAccount;
    @Autowired(required = false)
    private MdmApplyGroupCodeProvider mdmApplyGroupCodeProvider;
@@ -68,36 +67,37 @@
     * 集团分类服务
     */
    @Autowired(required = false)
    private com.vci.ubcs.code.applyjtcodeservice.service.IDockingPreClassifyService dockingPreClassifyService;
    private IDockingPreClassifyService dockingPreClassifyService;
    /***
     * 申请单服务
     */
    @Autowired(required = false)
    private com.vci.ubcs.code.applyjtcodeservice.service.IDockingPreApplyFormService dockingPreApplyFormService;
    private IDockingPreApplyFormService dockingPreApplyFormService;
    /***
     * 模型视图单服务
     */
    @Autowired(required = false)
    private com.vci.ubcs.code.applyjtcodeservice.service.IDockingPreViewModelService dockingPreViewModelService;
    private IDockingPreViewModelService dockingPreViewModelService;
    /***
     * 集团分类属性属性映射配置服务
     */
    @Autowired(required = false)
    private DockingPreAttrMappingMapper dockingPreAttrMappingMapper;
    /***
     * 属性取值范围服务
     */
    @Autowired(required = false)
    private com.vci.ubcs.code.applyjtcodeservice.service.IDockingPreAttrRangeService dockingPreAttrRangeService;
    private IDockingPreAttrRangeService dockingPreAttrRangeService;
    /***
     * 集团属性服务
     */
    @Autowired(required = false)
    private com.vci.ubcs.code.applyjtcodeservice.service.IDockingPreMetaAttrService dockingPreMetaAttrService;
    private IDockingPreMetaAttrService dockingPreMetaAttrService;
    @Autowired(required = false)
    private IMdmEngineClient mdmEngineClient;
@@ -109,8 +109,8 @@
     * @return 返回结果信息
     * @throws Exception
     */
    @Transactional(rollbackFor = VciBaseException.class)
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R applyGroupCode(String oids, String btmName) throws VciBaseException {
        if(usedFlag) {
            try {
@@ -144,7 +144,8 @@
                    code = resultDataObject.getCode();
                    msg = resultDataObject.getMsg();
                    boolean res=false;
                    if ("1".equals(resultDataObject.getCode())) {//结果正确的情况
                    if ("1".equals(code)) {
                        //结果正确的情况
                        List<DockingDataVO> dataObjectVOList = resultDataObject.getData();
                        res=true;
                        dataObjectVOList.stream().forEach(dataObject -> {
@@ -164,7 +165,7 @@
                            if (editDockingPreApplyFormMap.containsKey(applyId)) {
                                DockingPreApplyForm dockingPreApplyForm = editDockingPreApplyFormMap.get(applyId);
                                dockingPreApplyForm.setCode(code2);
                                //dockingPreApplyForm.setDescription(baseModel.getId());
                                dockingPreApplyForm.setDescription(baseModel.getId());
                                dockingPreApplyForm.setMsg("申请:" + msg);
                                if(StringUtils.isBlank(dockingPreApplyForm.getGroupCode())) {
                                    dockingPreApplyForm.setGroupCode(customCoding);
@@ -181,7 +182,11 @@
                                    dockingPreApplyForm.setContent(writeValueAsString);
                                } catch (JsonProcessingException e) {
                                }
                                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                                Date date = new Date();
                                baseModel.setLastModifyTime(date);
                                baseModel.setTs(date);
                                baseModel.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                            }
                            //新增的申请单数据
                            if (addDockingPreApplyFormMap.containsKey(applyId)) {
@@ -197,7 +202,14 @@
                                    dockingPreApplyForm.setContent(writeValueAsString);
                                } catch (JsonProcessingException e) {
                                }
                                DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                                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());
                                // DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            }
                            //如果有集团码则更新数据
                            if (isEditDatas) {
@@ -205,13 +217,16 @@
                                    baseModel = baseModelMap.get(applyId);
                                    Map<String,String> dataValueMap=new CaseInsensitiveMap<>(baseModel.getData());
                                    /*String classOid=baseModel.getId();
                                    if(partCoe.equals(classOid)){
                                    if(partCode.equals(classOid)){
                                        baseModel.setId(10+customCoding);
                                        customCoding=10+customCoding;
                                    }*/
                                    BeanUtilForVCI.copyDeclaredIgnoreCase(baseModel, baseModel);
                                    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                //    DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                    Date date = new Date();
                                    baseModel.setLastModifyTime(date);
                                    baseModel.setTs(date);
                                    baseModel.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                    //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                    baseModel.getData().put("GROUPCODE",customCoding);
                                    updateCbos.add(baseModel);//更新数据集团code
                                }
@@ -224,14 +239,25 @@
                            dockingPreApplyForm.setMsg("申请:" + msg);
                            dockingPreApplyForm.setContent("");
                            dockingPreApplyForm.setGroupCode("");
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                            Date date = new Date();
                            dockingPreApplyForm.setLastModifyTime(date);
                            dockingPreApplyForm.setTs(date);
                            dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                        });
                        addDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
                            dockingPreApplyForm.setCode("2");
                            dockingPreApplyForm.setMsg("申请:" + msg);
                            dockingPreApplyForm.setContent("");
                            dockingPreApplyForm.setGroupCode("");
                            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            Date date = new Date();
                            dockingPreApplyForm.setCreateTime(date);
                            dockingPreApplyForm.setLastModifyTime(date);
                            dockingPreApplyForm.setTs(date);
                            dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            dockingPreApplyForm.setCreator(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            dockingPreApplyForm.setBtmname(MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            //DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                        });
                    }
                    if (editDockingPreApplyFormMap.size() > 0) {
@@ -263,8 +289,8 @@
     * @return 返回结果信息
     * @throws Throwable
     */
    @Transactional(rollbackFor = VciBaseException.class)
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R receiveEditApply(String oids, String btmName) throws VciBaseException {
        if(!usedFlag) {
            log.info("更新接口功能已关闭!->"+usedFlag);
@@ -322,7 +348,11 @@
                                dockingPreApplyForm.setContent(writeValueAsString);
                            } catch (JsonProcessingException e) {
                            }
                            DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                            Date date = new Date();
                            dockingPreApplyForm.setLastModifyTime(date);
                            dockingPreApplyForm.setTs(date);
                            dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                            //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                        }
                        //新增的申请单数据
                        if (addDockingPreApplyFormMap.containsKey(applyId)) {
@@ -339,7 +369,14 @@
                                dockingPreApplyForm.setContent(writeValueAsString);
                            } catch (JsonProcessingException e) {
                            }
                            DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                            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());
                            //DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                        }
                        //如果有集团码则更新数据
                        if (isEditDatas) {
@@ -347,9 +384,13 @@
                                BaseModel baseModel = baseModelMap.get(applyId);
                                //BeanUtilForVCI.copyDeclaredIgnoreCase(baseModelVO, baseModel);
                                /*String classOid=baseModel.getData().getOrDefault("CODECLSFID","");
                                if(partCoe.equals(classOid)){
                                if(partCode.equals(classOid)){
                                    baseModel.setId(10+customCoding);
                                }*/
                                Date date = new Date();
                                baseModel.setLastModifyTime(date);
                                baseModel.setTs(date);
                                baseModel.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                                DefaultAttrAssimtUtil.updateDefaultAttrAssimt(baseModel);
                                //    baseModel.setId(customCoding);
                                baseModel.getData().put("GROUPCODE", customCoding);
@@ -363,14 +404,25 @@
                        dockingPreApplyForm.setMsg("修改:" + msg);
                        dockingPreApplyForm.setContent("");
                        dockingPreApplyForm.setGroupCode("");
                        DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                        Date date = new Date();
                        dockingPreApplyForm.setLastModifyTime(date);
                        dockingPreApplyForm.setTs(date);
                        dockingPreApplyForm.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                        //DefaultAttrAssimtUtil.updateDefaultAttrAssimt(dockingPreApplyForm);
                    });
                    addDockingPreApplyFormMap.forEach((key, dockingPreApplyForm) -> {
                        dockingPreApplyForm.setCode("2");
                        dockingPreApplyForm.setMsg("修改:" + msg);
                        dockingPreApplyForm.setContent("");
                        dockingPreApplyForm.setGroupCode("");
                        DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                        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());
                        //DefaultAttrAssimtUtil.addDefaultAttrAssimt(dockingPreApplyForm, MdmBtmTypeConstant.DOCKING_PRE_JAPPLYFORM);
                    });
                }
                if (editDockingPreApplyFormMap.size() > 0) {
@@ -558,6 +610,11 @@
            dockingModelQueryVO.setSysName(dockingApplySysName);
            DockingApplyFormQueryStatusVO dockingApplyFormQueryStatusVO = mdmApplyGroupCodeProvider.queryApplyState(dockingModelQueryVO);
            if(Func.isEmpty(dockingApplyFormQueryStatusVO)){
                log.error("获取申请单为空!");
                return R.fail("没有获取到相关数据信息!");
            }
            int code=dockingApplyFormQueryStatusVO.getCode();
            String mesg=dockingApplyFormQueryStatusVO.getMsg();
            if(code==1){
@@ -591,7 +648,7 @@
            e.printStackTrace();
            //message=""+e;
            log.error("获取申请单状态失败"+e);
            throw  new VciBaseException(e.getMessage());
            throw new VciBaseException(e.getMessage());
        }
        log.info("查询申请单状态接口end");
        return R.success(message);
@@ -861,10 +918,18 @@
    /**
     * 组织数据
     * */
    private DockingGroupDataVO queryApplycodeDataObjects(int optationtype,List<BaseModel>  codeWupins,Map<String,DockingPreApplyForm>   addDockingPreApplyFormMap,Map<String,DockingPreApplyForm>  editDockingPreApplyFormMap,Map<String,BaseModel>  codeWupinMap) throws VciBaseException{
     * @param optationtype
     * @param codeWupins
     * @param addDockingPreApplyFormMap
     * @param editDockingPreApplyFormMap
     * @param codeWupinMap
     * @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{
        try {
            String curUserName =AuthUtil.getUser().getUserName();
            // TODO:主数据推送过来的数据是拿不到可以申请集团码的用户信息的,并且这一块儿的逻辑也还没敲定,所以这儿采用配置的用户来申请集团码
            String curUserName = Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount();
            //申请的数据
            List<DockingMainData> mainDataList=new ArrayList<DockingMainData>();
            for (BaseModel dataBusinessObject : codeWupins) {
@@ -876,29 +941,29 @@
                String oid = dataBusinessObject.getOid();
                DockingPreApplyForm dockingPreApplyForm = new DockingPreApplyForm();
                String dataOid = dataBusinessObject.getOid();
                Map<String, String> conditionsMap = new HashMap<String, String>();
                //List<DockingPreApplyForm> applyFormObjects = dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().eq(DockingPreApplyForm::getDataOid, dataOid).eq(DockingPreApplyForm::getOperationType, optationtype));
            //    DockingPreApplyForm dockingPreApplyForm=new DockingPreApplyForm();
                String apllyCode = "";
                // String dataOid = dataBusinessObject.getOid();
                // Map<String, String> conditionsMap = new HashMap<String, String>();
                // List<DockingPreApplyForm> applyFormObjects = dockingPreApplyFormService.list(Wrappers.<DockingPreApplyForm>query().lambda().eq(DockingPreApplyForm::getDataOid, dataOid).eq(DockingPreApplyForm::getOperationType, optationtype));
                // DockingPreApplyForm dockingPreApplyForm=new DockingPreApplyForm();
                String applyCode = "";
                /*if (!CollectionUtils.isEmpty(applyFormObjects)) {
                    dockingPreApplyForm = applyFormObjects.get(0);
                    apllyCode = dockingPreApplyForm.getId();
                    editDockingPreApplyFormMap.put(apllyCode, dockingPreApplyForm);//申请单和申请单对象关系
                    applyCode = dockingPreApplyForm.getId();
                    editDockingPreApplyFormMap.put(applyCode, dockingPreApplyForm);//申请单和申请单对象关系
                } else {*/
                    apllyCode = dockingApplyUnitCode + "-" + format;
                    dockingPreApplyForm.setId(apllyCode);
                    applyCode = dockingApplyUnitCode + "-" + format;
                    dockingPreApplyForm.setId(applyCode);
                    dockingPreApplyForm.setName("");
                    dockingPreApplyForm.setOperationType(optationtype+"");
                    dockingPreApplyForm.setDescription(dataBusinessObject.getId());//获取数据描述信息
                    dockingPreApplyForm.setDataOid(oid);
                    dockingPreApplyForm.setDataBtmName(btmName);
                    addDockingPreApplyFormMap.put(apllyCode, dockingPreApplyForm);//申请单和申请单对象关系
            //    }
                    addDockingPreApplyFormMap.put(applyCode, dockingPreApplyForm);//申请单和申请单对象关系
                //    }
                codeWupinMap.put(apllyCode, dataBusinessObject);//申请单和对应数据关系
                conditionsMap = new HashMap<String, String>();
                conditionsMap.put("jtargetclsfid", codeclsfid);//视图oid
                codeWupinMap.put(applyCode, dataBusinessObject);//申请单和对应数据关系
                // conditionsMap = new HashMap<String, String>();
                // conditionsMap.put("jtargetclsfid", codeclsfid);//视图oid
                List<DockingPreAttrMapping> dockingPreAttrMappingList = dockingPreAttrMappingMapper.selectList(Wrappers.<DockingPreAttrMapping>query().lambda().eq(DockingPreAttrMapping::getTargetClassifyId, codeclsfid));
                if (CollectionUtils.isEmpty(dockingPreAttrMappingList)) {
@@ -909,7 +974,7 @@
                DockingPreClassify dockingPreClassify = dockingPreClassifyService.getById(jsourceclsfid);
                DockingMainData mainData = new DockingMainData();
                mainData.setApplyEntId(dockingApplyUnitCode);//申请单位代码
                mainData.setApplyId(apllyCode);//申请单号
                mainData.setApplyId(applyCode);//申请单号
                mainData.setClassName(dockingPreClassify.getNodeLinkName());//分类名称
                mainData.setCreateBy(curUserName);//
                if(optationtype==2) {
@@ -928,7 +993,7 @@
            return postParameters;
        } catch (Throwable e) {
            // TODO Auto-generated catch block
            throw new VciBaseException("查询数据出错"+e);
            throw new VciBaseException("查询数据出错,原因:"+e.getMessage());
        }
    }
@@ -1035,14 +1100,15 @@
        if(attrRangeMap.containsKey(jmetalistoid)) {
            return;
        }
        Map<String,String>conditionsMap=new HashMap<String, String>();
        conditionsMap.put("jmetalistid", jmetalistoid);//视图oid
        // Map<String,String>conditionsMap=new HashMap<String, String>();
        // conditionsMap.put("jmetalistid", jmetalistoid);//视图oid
        List<DockingPreAttrRange> dockingPreAttrRangeList = dockingPreAttrRangeService.selectByWrapper(Wrappers.<DockingPreAttrRange>query().lambda().eq(DockingPreAttrRange::getMetaListId, jmetalistoid));
        if (CollectionUtils.isEmpty(dockingPreAttrRangeList)) {
            return;
        }
        Map<String, DockingPreAttrRange> rangeMap = new HashMap<String, DockingPreAttrRange>();
        rangeMap = dockingPreAttrRangeList.stream().collect(Collectors.toMap(s -> s.getNumTextValue(), t -> t, (o1, o2) -> o2));
        // TODO: 这儿存内部存储值,无法在后续进行转换
        rangeMap = dockingPreAttrRangeList.stream().collect(Collectors.toMap(s -> s.getTargetNumText(), t -> t, (o1, o2) -> o2));
        attrRangeMap.put(jmetalistoid, rangeMap);
    }
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/MdmEngineController.java
@@ -358,7 +358,7 @@
     * @param baseModelDTO 数据传输对象
     * @return 执行结果
     */
    @PostMapping("changeStatus")
    @PostMapping("/changeStatus")
    public R changeStatus(@RequestBody BaseModelDTO baseModelDTO) {
        engineService.changeStatus(baseModelDTO);
        return R.success("操作成功!");
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/UniversalInterfaceI.java
@@ -2,12 +2,9 @@
import com.vci.ubcs.code.vo.webserviceModel.person.OrgData;
import com.vci.ubcs.code.vo.webserviceModel.person.PersonData;
import com.vci.ubcs.code.vo.webserviceModel.person.ResultOrgData;
import org.springframework.web.bind.annotation.RequestParam;
import javax.jws.WebService;
import javax.servlet.ServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.ws.rs.core.Context;
/**
 * 统一接口
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmEngineServiceImpl.java
@@ -146,7 +146,9 @@
     * 系列流水
     */
    @Value("${bzApply.seriesFlow:seriesFlow}")
    private String seriesFlow;
    /***
     * 是否变更系列
     */
@@ -316,6 +318,12 @@
    public static final String BTM_NAME = "btm:name";
    /**
     * 配置的用来申请集团码的用户
     */
    @Value("${docking.apply.personUserAccount:28201728}")
    public String applyCodeUserAccount;
    /**
     * 密级的字段
     */
    public static final String SECRET_FILED = "secretgrade";
@@ -451,7 +459,7 @@
                }
                R r = updateBatchByBaseModel(baseModelDTO.getBtmname(), baseModels);
                if (!r.isSuccess()) {
                    throw new VciBaseException("更新数据出错,重试!" + r.getMsg());
                    throw new VciBaseException("更新数据出错,请重试!" + r.getMsg());
                }
            }
            // 刚好顺序是一致的,所以直接按照codeallcode的顺序来拿业务数据
@@ -3468,19 +3476,19 @@
            cbos.add(data);
        });
//        List<ClientBusinessObject> cbos = boService.queryByOnlySql(sqlBO.getSqlUnPage());
        // List<ClientBusinessObject> cbos = boService.queryByOnlySql(sqlBO.getSqlUnPage());
        if (CollectionUtils.isEmpty(cbos)) {
            throw new VciBaseException("数据在系统中不存在,是否因为修改过业务类型?");
            return R.fail("数据在系统中不存在,是否因为修改过业务类型?");
        }
//        Map<String, String> data = new HashMap<>();
        // Map<String, String> data = new HashMap<>();
        Map<String, String> cbo = cbos.get(0);
//        WebUtil.copyValueToMapFromCbos(cbo, data);
        // WebUtil.copyValueToMapFromCbos(cbo, data);
        List<Map<String, String>> dataList = new ArrayList<>();
        dataList.add(cbo);
        wrapperData(dataList, templateVO, sqlBO.getSelectFieldList(), true);
        R<List<Map<String, String>>> result = R.data(Collections.singletonList(cbo));
        if(templateVO.getAttributes().isEmpty()){
            throw new ServiceException(String.format("主键为:{}的模板下,模板属性配置为空!",templateVO.getOid()));
            return R.fail(String.format("主键为:%s的模板下,模板属性配置为空!",templateVO.getOid()));
        }
        //处理返回数据与模板数据配置的字段不一样问题
        templateVO.getAttributes().stream().forEach(e -> {
@@ -3493,42 +3501,42 @@
        });
        //我们要看是否不是升版的,升版的话,需要对比不相等的属性
/*        String copy = cbo.get("copyfromversion");
//        if (StringUtils.isBlank(copy)) {
//            copy = cbo.getAttributeValue("copyfromversion");
//        }
        if (StringUtils.isNotBlank(copy)) {
            //说明有变更的内容
        /*        String copy = cbo.get("copyfromversion");
        //        if (StringUtils.isBlank(copy)) {
        //            copy = cbo.getAttributeValue("copyfromversion");
        //        }
                if (StringUtils.isNotBlank(copy)) {
                    //说明有变更的内容
            CodeTemplateAttrSqlBO oldSqlBO = getSqlByTemplateVO(btmId, templateVO, WebUtil.getOidQuery(copy), new PageHelper(-1));
            //我们使用和业务类型的来查询
//            List<Map> cbos = commonsMapper.selectBySql(sqlBO.getSqlUnPage());
            List<Map> oldCbos = commonsMapper.selectBySql(oldSqlBO.getSqlUnPage());
            if (!CollectionUtils.isEmpty(oldCbos)) {
//                Map<String, String> newData = new HashMap<>();
//                WebUtil.copyValueToMapFromCbos(cbo, newData);
                Map<String, String> oldData = new HashMap<>();
                oldData = oldCbos.get(0);
                Map<String, String> difFieldMap = new HashMap<>();
                Map<String, String> finalOldData = oldData;
                cbo.forEach((key, value) -> {
                    // 这儿oldmap中的全是大写,而cbo中的全是小写所以会拿不到只,这儿直接处理成小写拿不到就用大写拿
                    String oldValue = String.valueOf(finalOldData.getOrDefault(key.toUpperCase(Locale.ROOT), finalOldData.getOrDefault(key, "")));
                    if (value == null || value == "null") {
                        value = "";
                    }
                    if (oldValue == null || oldValue == "null") {
                        oldValue = "";
                    }
                    if (!value.equalsIgnoreCase(oldValue)) {
                        difFieldMap.put(key, oldValue);
                    }
                });
                List<Map<String, String>> difFieldList = new ArrayList<>();
                difFieldList.add(difFieldMap);
                result.setData(difFieldList);
            }
        }*/
                    CodeTemplateAttrSqlBO oldSqlBO = getSqlByTemplateVO(btmId, templateVO, WebUtil.getOidQuery(copy), new PageHelper(-1));
                    //我们使用和业务类型的来查询
        //            List<Map> cbos = commonsMapper.selectBySql(sqlBO.getSqlUnPage());
                    List<Map> oldCbos = commonsMapper.selectBySql(oldSqlBO.getSqlUnPage());
                    if (!CollectionUtils.isEmpty(oldCbos)) {
        //                Map<String, String> newData = new HashMap<>();
        //                WebUtil.copyValueToMapFromCbos(cbo, newData);
                        Map<String, String> oldData = new HashMap<>();
                        oldData = oldCbos.get(0);
                        Map<String, String> difFieldMap = new HashMap<>();
                        Map<String, String> finalOldData = oldData;
                        cbo.forEach((key, value) -> {
                            // 这儿oldmap中的全是大写,而cbo中的全是小写所以会拿不到只,这儿直接处理成小写拿不到就用大写拿
                            String oldValue = String.valueOf(finalOldData.getOrDefault(key.toUpperCase(Locale.ROOT), finalOldData.getOrDefault(key, "")));
                            if (value == null || value == "null") {
                                value = "";
                            }
                            if (oldValue == null || oldValue == "null") {
                                oldValue = "";
                            }
                            if (!value.equalsIgnoreCase(oldValue)) {
                                difFieldMap.put(key, oldValue);
                            }
                        });
                        List<Map<String, String>> difFieldList = new ArrayList<>();
                        difFieldList.add(difFieldMap);
                        result.setData(difFieldList);
                    }
        }*/
        return result;
    }
@@ -4399,8 +4407,8 @@
                    if (cboMap.containsKey(oid)) {
                        CodeAllCode codeAllCode = cboMap.get(oid);
                        codeAllCode.setId(baseModel.getId());
                        // codeAllCode.setLastModifier(AuthUtil.getUser().getUserName());
                        codeAllCode.setLastModifier(AuthUtil.getUser().getAccount());
                        // 主数据推送形式,是拿不到用户信息的
                        codeAllCode.setLastModifier(Func.isBlank(AuthUtil.getUserAccount()) ? applyCodeUserAccount:AuthUtil.getUserAccount());
                        codeAllCode.setLastModifyTime(new Date());
                        codeAllCode.setLcStatus(baseModel.getLcStatus());
                        newCodeAllCodeList.add(codeAllCode);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/MdmIOServiceImpl.java
@@ -68,6 +68,7 @@
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.xml.bind.ValidationEvent;
import java.beans.BeanInfo;
import java.beans.Introspector;
@@ -2826,9 +2827,9 @@
        List<CodeAllCode> codeAllCodeList = new ArrayList<>();
        List<String> deleteList = new ArrayList<>();
        CodeClassifyTemplateVO firstTemplateVO = templateService.getObjectHasAttrByOid(orderDTOMap.values().stream().findFirst().get().getTemplateOid());
        // CodeClassifyTemplateVO firstTemplateVO = templateService.getObjectHasAttrByOid(orderDTOMap.values().stream().findFirst().get().getTemplateOid());
        Map<String, ClientBusinessObject> cboMap = cboList.stream().filter(cbo -> cbo != null).collect(Collectors.toList()).stream().collect(Collectors.toMap(s -> s.getId(), t -> t));
        //  boolean finalIsProcess = isProcess;
        // boolean finalIsProcess = isProcess;
        orderDTOMap.keySet().stream().forEach(code -> {
            CodeOrderDTO orderDTO = orderDTOMap.get(code);
            ClientBusinessObject cbo = cboMap.get(code);
@@ -2981,9 +2982,6 @@
                //是否调用集团接口申请接口
                if(isCodeOrGroupCode){
                    List<String> IdList=resultDataObjectDetailDOs.stream().filter(xMLResultDataObjectDetailDO-> com.alibaba.cloud.commons.lang.StringUtils.isNotBlank(xMLResultDataObjectDetailDO.getId())).map(XMLResultDataObjectDetailDO::getId).distinct().collect(Collectors.toList());
                    if(!CollectionUtils.isEmpty(IdList)) {
                        this.sendApplyGroupcode(IdList, classifyFullInfo.getTopClassifyVO().getBtmTypeId(),sysIntegrationPushTypeEnum.ACCPET_EDITCODE.getValue());
                    }
@@ -5286,8 +5284,8 @@
     * @param file
     * @return
     */
    @Transactional(rollbackFor = VciBaseException.class)
    @Override
    @Transactional(rollbackFor = Exception.class)
    public String importGroupCode(String codeClassifyOid, File file) throws Throwable {
        VciBaseUtil.alertNotNull(codeClassifyOid,"分类的主键");
        ReadExcelOption reo = new ReadExcelOption();
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/UniversalInterfaceImpl.java
@@ -73,6 +73,7 @@
import java.io.StringWriter;
import java.util.*;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.concurrent.ForkJoinPool;
import java.util.concurrent.atomic.AtomicBoolean;
import java.util.function.Function;
import java.util.stream.Collectors;
@@ -114,11 +115,13 @@
     */
    @Value("${bzApply.seriesFlow:seriesFlow}")
    private String seriesFlow;
    /***
     * 是否变更系列
     */
    @Value("${bzApply.isEditSeries:isEditSeries}")
    private String isEditSeries;
    /***
     * 控制是否写入值的码段名称
     */
@@ -130,7 +133,6 @@
     */
    @Value("${bzApply.yearSecName:年代号}")
    private String yearSecName;
    @Value("${code.universalinterface.checkSystemConfig:true}")
    public boolean CODE_CHECKCONFIG;
@@ -203,8 +205,14 @@
     */
    @Resource
    private IDockingLogeService dockingLogeService;
    @Resource
    private IPasswordFreeLoginService passwordFreeLoginService;
    /**
     * 自定义并发ForkJoinPool
     */
    private static final ForkJoinPool customForkJoinPool = new ForkJoinPool(Runtime.getRuntime().availableProcessors() - 1);
    private  static String separator="##VCI##";
    private  String errorid="0";
@@ -290,14 +298,14 @@
                throw new Throwable("用户鉴权失败.");
            }
            List<ClassfyVO> classVOList = classfysVO.getClassify();
            InterParameterVO finalInterParameterVO = interParameterVO;
            //InterParameterVO finalInterParameterVO = interParameterVO;
            //这是账号信息
            SessionInfo sessionInfo = new SessionInfo();
            sessionInfo.setUserId(userVo.getUserName());
            sessionInfo.setUserName(userVo.getTrueName());
            sessionInfo.setIp(userVo.getIp());
            VciBaseUtil.setCurrentUserSessionInfo(sessionInfo);
//            List<XMLResultDataObjectDetailDO> allResultDataObjectDetailDOS=new ArrayList<>();
            //List<XMLResultDataObjectDetailDO> allResultDataObjectDetailDOS=new ArrayList<>();
            String finalSystemId = systemId;
            classVOList.stream().forEach(classVO -> {
                log.info("参数:分类COde:" + classVO.getClassCode());
@@ -451,7 +459,6 @@
     */
    @Override
    public ResultOrgData syncDataForPerson(PersonData personData) {
        boolean isUsedFlag= personAndDeptConfig.isUsedFlag();
        ResultOrgData resultOrgData=new ResultOrgData();
@@ -618,7 +625,8 @@
                        throw  new Throwable("编码规则");
                    }
                    List<XMLResultDataObjectDetailDO> xDOs=new CopyOnWriteArrayList<>();
                    dataObjectVO.getRowData().parallelStream().forEach(rowData->{
                    final List<RowDatas> rowDatas = dataObjectVO.getRowData();
                    rowDatas.parallelStream().forEach(rowData->{
                        String mesg="";
                        try {
                            CodeOrderDTO orderDTO = new CodeOrderDTO();
@@ -681,16 +689,19 @@
                    resultDataObjectDetailDOs.addAll(xDOs);
                    boolean finalSuccess1 = success.get();
                    String finalMessage1 = message;
                    resultDataObjectDetailDOs.stream().forEach(resultDataObjectDetailDO->{
                        ResultMdMapping resultMdMapping=new ResultMdMapping();
                        resultMdMapping.setBusiDataId(resultDataObjectDetailDO.getId());
                        resultMdMapping.setSuccess(finalSuccess1);
                        resultMdMapping.setEntityCode(" ");
                        resultMdMapping.setMdmCode(resultDataObjectDetailDO.getCode());
                        resultMdMapping.setMessage(finalMessage1);
                        resultMdMapping.setSubMdMappings(null);
                        resultMdMappingList.add(resultMdMapping);
                    });
                    // 限制线程并行数量
                    customForkJoinPool.submit(()->{
                        resultDataObjectDetailDOs.stream().forEach(resultDataObjectDetailDO->{
                            ResultMdMapping resultMdMapping=new ResultMdMapping();
                            resultMdMapping.setBusiDataId(resultDataObjectDetailDO.getId());
                            resultMdMapping.setSuccess(finalSuccess1);
                            resultMdMapping.setEntityCode(" ");
                            resultMdMapping.setMdmCode(resultDataObjectDetailDO.getCode());
                            resultMdMapping.setMessage(finalMessage1);
                            resultMdMapping.setSubMdMappings(null);
                            resultMdMappingList.add(resultMdMapping);
                        });
                    }).join();
                    log.info("end:申请获取完毕");
                }
            }catch (Throwable e){
@@ -738,7 +749,7 @@
    public ResultOrgData syncDataForOrg(OrgData orgData) {
        boolean isUsedFlag= personAndDeptConfig.isUsedFlag();
        ResultOrgData resultOrgData=new ResultOrgData();
        boolean isPersonApplyGroupCode= personAndDeptConfig.isDeptApplyGroupCode();
        //boolean isPersonApplyGroupCode= personAndDeptConfig.isDeptApplyGroupCode();
        List<ResultMdMapping> resultMdMappingList=new ArrayList<>();
        AtomicBoolean success= new AtomicBoolean(true);
        String message="";
@@ -783,7 +794,6 @@
                List<CodeClassifyTemplateAttrVO> attrVOS = templateVO.getAttributes().stream().filter(s -> !DEFAULT_SYNC_ATTR_LIST.contains(s.getId()) &&
                    ((Func.isNotEmpty(s.getClassifyInvokeAttr()) || Func.isNotEmpty(s.getClassifyInvokeAttrName())) || VciBaseUtil.getBoolean(s.getFormDisplayFlag()))
                ).collect(Collectors.toList());
                List<Map> dataList=new ArrayList<>();
                List<String> codeList=new ArrayList<>();
                List<ApplyDataVO> applyDataVOList=new ArrayList<>();
                List<ApplyDataVO> deleteDataVOList=new ArrayList<>();
@@ -882,7 +892,7 @@
                    DataObjectVO dataObjectVO = new DataObjectVO();
                    this.getConfigDatas(systemCode, deptLibrary, editDatasVO, attrVOS, dataObjectVO);
                    log.info("start:修改数据执行完毕");
                    boolean  personApplyGroupCode =personAndDeptConfig.isPersonApplyGroupCode();
                    boolean  personApplyGroupCode = personAndDeptConfig.isPersonApplyGroupCode();
                    mdmIOService.batchSyncEditDatas(codeClassifyVO,dataObjectVO, resultDataObjectDetailDOs,personApplyGroupCode);
                    log.info("end:修改数据执行完毕");
                }
@@ -896,32 +906,34 @@
                        throw  new Throwable("编码规则");
                    }
                    List<XMLResultDataObjectDetailDO> xDOs=new CopyOnWriteArrayList<>();
                    dataObjectVO.getRowData().parallelStream().forEach(rowData->{
                        String mesg="";
                        try {
                            CodeOrderDTO orderDTO = new CodeOrderDTO();
                            List<CodeOrderSecDTO> codeOrderSecDTOList=new ArrayList<>();
                            orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//分类主键
                            orderDTO.setTemplateOid(templateVO.getOid());
                            orderDTO.setCreator(rowData.getCreator());
                            orderDTO.setLastModifier(rowData.getEditor());
                            orderDTO.setLcStatus(rowData.getStatus());
                            if(!CollectionUtils.isEmpty(ruleVO.getSecVOList())) {
                                ruleVO.getSecVOList().stream().forEach(codeBasicSecVO -> {
                                    if (codeBasicSecVO.getSecType().equals("codevariablesec")) {//规则之定义为可变码段存储主数据传递过来的数据
                                        CodeOrderSecDTO CodeOrderSecDTO = new CodeOrderSecDTO();
                                        CodeOrderSecDTO.setSecOid(codeBasicSecVO.getOid());
                                        CodeOrderSecDTO.setSecValue(rowData.getCode());
                                        codeOrderSecDTOList.add(CodeOrderSecDTO);
                                    }
                                });
                            }
                            orderDTO.setCodeRuleOid(ruleVO.getOid());
                            orderDTO.setSecDTOList(codeOrderSecDTOList);//存储编码
                            orderDTO.setData(rowData.getFiledValue());
                            String code=engineService.addSaveCodeNotauthUser(orderDTO,false);
                            if(StringUtils.isNotBlank(code)) {
                    //限制线程并行数量
                    customForkJoinPool.submit(()->{
                        dataObjectVO.getRowData().parallelStream().forEach(rowData->{
                            String mesg="";
                            try {
                                CodeOrderDTO orderDTO = new CodeOrderDTO();
                                List<CodeOrderSecDTO> codeOrderSecDTOList=new ArrayList<>();
                                orderDTO.setCodeClassifyOid(codeClassifyVO.getOid());//分类主键
                                orderDTO.setTemplateOid(templateVO.getOid());
                                orderDTO.setCreator(rowData.getCreator());
                                orderDTO.setLastModifier(rowData.getEditor());
                                orderDTO.setLcStatus(rowData.getStatus());
                                if(!CollectionUtils.isEmpty(ruleVO.getSecVOList())) {
                                    ruleVO.getSecVOList().stream().forEach(codeBasicSecVO -> {
                                        if (codeBasicSecVO.getSecType().equals("codevariablesec")) {
                                            //规则之定义为可变码段存储主数据传递过来的数据
                                            CodeOrderSecDTO CodeOrderSecDTO = new CodeOrderSecDTO();
                                            CodeOrderSecDTO.setSecOid(codeBasicSecVO.getOid());
                                            CodeOrderSecDTO.setSecValue(rowData.getOid());
                                            codeOrderSecDTOList.add(CodeOrderSecDTO);
                                        }
                                    });
                                }
                                orderDTO.setCodeRuleOid(ruleVO.getOid());
                                orderDTO.setSecDTOList(codeOrderSecDTOList);//存储编码
                                orderDTO.setData(rowData.getFiledValue());
                                String code = engineService.addSaveCodeNotauthUser(orderDTO,false);
                            /*if(StringUtils.isNotBlank(code)) {
                                //rowData.setCode(code);
                                StringBuffer sqlsb = new StringBuffer();
                                sqlsb.append(" select * from ");
@@ -943,20 +955,21 @@
                                        mesg = "数据保存成功,等待申请集团码";
                                    }
                                }
                            }*/
                            } catch (Exception e) {
                                mesg=e.getMessage();
                                e.printStackTrace();
                                throw new ServiceException(e.getMessage());
                            }finally {
                                XMLResultDataObjectDetailDO x=new XMLResultDataObjectDetailDO();
                                x.setId(rowData.getOid());
                                x.setCode(rowData.getCode());
                                x.setMsg(mesg);
                                x.setErrorid("1");
                                xDOs.add(x);
                            }
                        } catch (Exception e) {
                            mesg=e.getMessage();
                            e.printStackTrace();
                            throw new ServiceException(e.getMessage());
                        }finally {
                            XMLResultDataObjectDetailDO x=new XMLResultDataObjectDetailDO();
                            x.setId(rowData.getOid());
                            x.setCode(rowData.getCode());
                            x.setMsg(mesg);
                            x.setErrorid("1");
                            xDOs.add(x);
                        }
                    });
                        });
                    }).join();
                    resultDataObjectDetailDOs.addAll(xDOs);
                    boolean finalSuccess1 = success.get();
                    String finalMessage1 = message;
@@ -1059,7 +1072,7 @@
                throw new Throwable("用户鉴权失败");
            }
            List<ClassfyVO> classVOList = classfysVO.getClassify();
            InterParameterVO finalInterParameterVO = interParameterVO;
            //InterParameterVO finalInterParameterVO = interParameterVO;
            //这是账号信息
            SessionInfo sessionInfo = new SessionInfo();
            sessionInfo.setUserId(userVo.getUserName());