ludc
2024-03-10 5677cf19400eca6985fb9cd5d501b35691cdf193
集成相关代码更改
已修改10个文件
129 ■■■■ 文件已修改
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSystemConfigVO.java 26 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/Scheduling/SearchDataSyncForERPScheduling.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplyOrgPersonController.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmSearchItemCodeProvider.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeDuckingSyncService.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java 57 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/UBCS/ubcs-service-api/ubcs-code-api/src/main/java/com/vci/ubcs/code/vo/pagemodel/DockingSystemConfigVO.java
@@ -1,6 +1,7 @@
package com.vci.ubcs.code.vo.pagemodel;
import com.vci.ubcs.starter.revision.model.BaseModel;
import io.swagger.annotations.ApiModelProperty;
import java.util.List;
@@ -62,22 +63,20 @@
     */
    private String description;
    /**
     * 接口类型
     */
    private String interfaceType;
    /**
     * 接口类型显示文本
     */
    private String interfaceTypeText;
    /**
     * 参数类型
     */
    private String paramType;
    /**
     * 参数类型显示文本
@@ -88,11 +87,11 @@
     */
    private String requestMethod;
    /**
     * 请求方式显示文本
     */
    private String requestMethodText;
    /**
     * 分类oid
     */
@@ -123,17 +122,16 @@
     */
    private String requestUrl;
    /**
     * 返回值类型
     */
    private String returnType;
    /**
     * 返回值类型显示文本
     */
    private String returnTypeText;
    /**
     * 来源系统主键
     */
@@ -237,14 +235,30 @@
     * 分类名称
     */
    private String classifyName;
    /***
     * 集团码是否参与申请/更新/发送
     */
    private String isGroupCodeFlag;
    /**
     * 内容类型
     */
    private String contentType;
    public void setContentType(String contentType) {
        this.contentType = contentType;
    }
    public String getContentType() {
        return contentType;
    }
    /***
     * 参数信息对象
     */
    private List<DockingSysIntParamVO> sysIntParamVOs;
    /***
     * header信息对象
     */
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/Scheduling/SearchDataSyncForERPScheduling.java
@@ -1,5 +1,6 @@
package com.vci.ubcs.code.Scheduling;
import com.alibaba.nacos.shaded.com.google.protobuf.ServiceException;
import com.vci.ubcs.code.service.ICodeDuckingSyncService;
import com.vci.ubcs.code.service.UniversalInterfaceI;
import com.vci.ubcs.starter.web.enumpck.BooleanEnum;
@@ -31,11 +32,11 @@
    @Value("${erp.item.isStart:false}")
    public boolean ERP_ITEM_ISSTARE;
    /**
     * 是否初始化完成了
     */
    public static volatile String FINISH_INIT = "false";
    /**
     * 在初始化完成后执行
     */
@@ -46,7 +47,7 @@
    //默认每十分钟执行方法
    @Scheduled(cron = "${erp.item.cronTime:0 0/10 * * * ?}")
    public void scheduled() {
    public void scheduled() throws ServiceException {
        log.info("执行从ERP项目代号/型号代号数据 start:");
        log.info("执行主数据集成数据推送 end: "+ "开关是否开启:" +ERP_ITEM_ISSTARE);
        if(ERP_ITEM_ISSTARE && BooleanEnum.TRUE.getValue().equalsIgnoreCase(FINISH_INIT)) {
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeApplyOrgPersonController.java
@@ -9,6 +9,8 @@
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.servlet.http.HttpServletRequest;
/**
 * 申请人员部门控制器
 *
@@ -18,15 +20,18 @@
@RestController
@RequestMapping("/codeApplyOrgPersonController")
public class CodeApplyOrgPersonController {
    /**
     * 日志
     */
    private Logger logger = LoggerFactory.getLogger(getClass());
    /**
     * 接口集成服务
     */
    @Autowired
    private UniversalInterfaceI universalInterfaceI;
    /****
     * 人员数据同步
     * @param personData
@@ -34,7 +39,8 @@
     * @throws Throwable
     */
    @PostMapping("/syncDataForPerson")
    public ResultOrgData syncDataForPerson(@RequestBody PersonData personData)  {
    public ResultOrgData syncDataForPerson(@RequestBody PersonData personData, HttpServletRequest request)  {
        this.setHttpToThreadLocal(request);
        String result="";
        try {
            return universalInterfaceI.syncDataForPerson(personData);
@@ -52,7 +58,8 @@
     * @throws Throwable
     */
    @PostMapping("/syncDataForOrg")
    public ResultOrgData syncDataForOrg(@RequestBody OrgData orgData)  {
    public ResultOrgData syncDataForOrg(@RequestBody OrgData orgData, HttpServletRequest request)  {
        this.setHttpToThreadLocal(request);
        String result="";
        try {
            return universalInterfaceI.syncDataForOrg(orgData);
@@ -62,4 +69,15 @@
            return new ResultOrgData();
        }
    }
    /**
     * 设置request,到ThreadLocal中
     * @param request
     */
    public void setHttpToThreadLocal(HttpServletRequest request){
        ThreadLocal<HttpServletRequest> threadLocal = new ThreadLocal<>();
        threadLocal.set(request);
        universalInterfaceI.setThreadLocal(threadLocal);
    }
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/CodeSyncUniversalController.java
@@ -156,7 +156,6 @@
        return result;
    }
    /****
     * 人员集成接口
     * @param personData 数据信息
@@ -186,7 +185,6 @@
        threadLocal.set(request);
        universalInterfaceI.setThreadLocal(threadLocal);
    }
    /***
     *
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/controller/DockingManagementController.java
@@ -41,6 +41,7 @@
@RequestMapping("/dockingManagement")
@Api(value = "接口管理", tags = "编码相关接口管理信息")
public class DockingManagementController {
    /***
     * 集成系统管理服务
     */
@@ -50,6 +51,7 @@
     * 集成接口配置服务
     */
    private  final IDockingSystemConfigService dockingSystemConfigService;
    /***
     * 待集管理配置服务
     */
@@ -93,7 +95,6 @@
        return  R.status(res);
    }
    /**
     * 修改 系统集成的系统信息
     * @param dockingSystemDTO 系统集成的系统信息数据传输对象
@@ -104,7 +105,6 @@
        DockingSystemVO dockingSystemVO = dockingSystemService.editSave(dockingSystemDTO);
        return R.data(dockingSystemVO);
    }
    /**
     * 删除系统集成的系统信息
@@ -120,6 +120,7 @@
        }
        return R.success("操作成功");
    }
    /**
     * 系统集成基础信息列表
     * @param queryObject 基础查询对象,包含查询条件,分页,排序等
@@ -169,6 +170,7 @@
            return R.fail("保存失败!");
        }
    }
    /**
     * 删除系统集成系统配置信息
     * @param oids 系统集成基础信息数据传输对象,oid和ts需要传输
@@ -183,6 +185,7 @@
        }
        return R.success("操作成功");
    }
    /***
     * 接口信息是否启用/停用
     * @param sysInfoStatusDTO
@@ -222,7 +225,6 @@
        IPage<DockingDataVO> pages = dokingSysManaentService.gridDockingData(condtionMap,query);
        return R.data(pages);
    }
    /**
     * data列表
@@ -311,6 +313,7 @@
    }
    /**
     *批量处理
     * 必须要有分类oid和dataoid
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/feign/MdmSearchItemCodeProvider.java
@@ -29,6 +29,6 @@
     * @param searchItemParam
     * @return 执行结果
     */
    @PostMapping(value = "/getppModelByElem",headers = {"Authorization=${erp.item.bearer:bearer: Bearer 7fc32939-0a59-da71-a6e6-6b0d37b53e8a}","X-ECC-Current-Tenant=10000","Content-Type=application/json","Accept-Language=zh-CHS"})
    @PostMapping(value = "/getppModelByElem",headers = {"Authorization=${erp.item.bearer:Bearer 7fc32939-0a59-da71-a6e6-6b0d37b53e8a}","X-ECC-Current-Tenant=10000","Content-Type=application/json","Accept-Language=zh-CHS"})
    String getppModelByElem(@RequestBody SearchItemParam searchItemParam);
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/ICodeDuckingSyncService.java
@@ -1,6 +1,7 @@
package com.vci.ubcs.code.service;
import com.alibaba.nacos.shaded.com.google.protobuf.ServiceException;
import org.springblade.core.tool.api.R;
import javax.servlet.http.HttpServletRequest;
@@ -49,6 +50,6 @@
     */
    R sendData(String oids);
    void saveItemDataSyncScheduing(String endDate);
    void saveItemDataSyncScheduing(String endDate) throws ServiceException;
}
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/IDockingSystemConfigService.java
@@ -6,7 +6,6 @@
import com.vci.ubcs.code.dto.UpdateSysInfoStatusDTO;
import com.vci.ubcs.code.entity.DockingSystemConfig;
import com.vci.ubcs.code.vo.pagemodel.DockingSystemConfigVO;
import com.vci.ubcs.code.vo.pagemodel.DockingSystemVO;
import com.vci.ubcs.starter.exception.VciBaseException;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/CodeDuckingSyncServiceImpl.java
@@ -3,6 +3,7 @@
import com.alibaba.cloud.commons.lang.StringUtils;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.nacos.shaded.com.google.protobuf.ServiceException;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.thoughtworks.xstream.XStream;
@@ -50,6 +51,7 @@
import com.vci.ubcs.starter.web.util.BeanUtilForVCI;
import com.vci.ubcs.starter.web.util.VciBaseUtil;
import com.vci.ubcs.starter.web.util.WebUtil;
import com.xkcoding.http.support.Http;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.map.CaseInsensitiveMap;
import org.springblade.core.redis.cache.BladeRedis;
@@ -59,6 +61,7 @@
import org.springblade.core.tool.utils.Func;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpMethod;
import org.springframework.http.MediaType;
import org.springframework.mock.web.MockHttpServletRequest;
import org.springframework.stereotype.Service;
@@ -111,34 +114,53 @@
    @Value("${erp.item.btmName:XHDH}")
    public String btmName;
    @Value("${erp.item.bearer:bearer: Bearer 7fc32939-0a59-da71-a6e6-6b0d37b53e8a}")
    private String ERPXHDHAUTH;
    @Value("${erp.item.url:http://127.0.0.1:8080/api/pp/pp/v1.0}")
    private String ERPXHDHURL;
    @Value("${erp.item.tenant:10000}")
    private String ERPXHDHTENANT;
    /**
     * 业务类型的服务
     */
    @Autowired
    private IBtmTypeClient btmTypeClient;
    /**
     * 通用查询
     */
    @Resource
    private CommonsMapper commonsMapper;
    @Resource
    private  MdmEngineService  mdmEngineServiceI;
    /**
     * 批量处理的服务
     */
    @Resource
    private MdmIOService mdmIOService;
    @Resource
    private IPasswordFreeLoginService passwordFreeLoginService;
    @Resource
    private IDockingLogeService dockingLogeService;
    @Resource
    private IDockingDataService dockingDataService;
    @Resource
    private IDockingTaskService dockingTaskService;
    @Resource
    private IDockingSystemConfigService dockingSystemConfigService;
    @Resource
    private ICodeClassifyService codeClassifyService;
@@ -269,7 +291,7 @@
     * 同步型号代号
     */
    @Override
    public void saveItemDataSyncScheduing(String endDate) {
    public void saveItemDataSyncScheduing(String endDate) throws ServiceException {
        String paramString="";
        String backString="成功";
        String msg="成功";
@@ -293,17 +315,15 @@
        Map<String,String>searchDataMap=  VciBaseUtil.objectToMapString(searchItemParam);
        try {
            paramString=JSONObject.toJSON(searchItemParam).toString();
            String res= mdmSearchItemCodeProvider.getppModelByElem(searchItemParam);
            SearchItemVO searchItemVO  = JSONObject.toJavaObject(JSONObject.parseObject(res), SearchItemVO.class);
            /**SearchItemVO searchItemVO=new SearchItemVO();
            List<SearchItemDataVO> data=new ArrayList<>();
            SearchItemDataVO searchItemDataVO1=initData("1","","pro-00001");
            SearchItemDataVO searchItemDataVO2=initData("0","item-00001","");
            data.add(searchItemDataVO1);
            data.add(searchItemDataVO2);
            //searchItemVO.setData(data);
            searchItemVO.setCode("200");**/
            //searchItemVO.setMsg("");
            // TODO: 改为使用HttpUtils方式进行申请,因为现在申请用之前的方式会报错
            LinkedMultiValueMap<String, String> headers = new LinkedMultiValueMap<>();
            headers.add("Authorization",ERPXHDHAUTH);
            headers.add("X-ECC-Current-Tenant",ERPXHDHTENANT);
            headers.add("Accept-Language","zh-CHS");
            headers.add("Content-Type",MediaType.APPLICATION_JSON.toString());
            String res = HttpUtils.request(ERPXHDHURL+"/getppModelByElem",paramString,headers, HttpMethod.POST,MediaType.APPLICATION_JSON);
            // String res= mdmSearchItemCodeProvider.getppModelByElem(searchItemParam);
            SearchItemVO searchItemVO = JSONObject.toJavaObject(JSONObject.parseObject(res), SearchItemVO.class);
            if (searchItemVO != null) {
                BladeUser finalUser;
                paramString = JSONObject.toJSON(searchItemVO).toString();
@@ -449,7 +469,6 @@
                    }
                } catch (Throwable e) {
                    e.printStackTrace();
                    ;
                    log.error("查询失败--->" + e);
                    success = false;
                    backString = "查询失败--->" + e;
@@ -466,7 +485,7 @@
                    }
                }
            }else{
                throw  new Throwable("接口未返回信息");
                throw new Throwable("接口未返回信息");
            }
        }catch (Throwable e1){
            e1.printStackTrace();
@@ -481,8 +500,9 @@
            } catch (Throwable e) {
                e.printStackTrace();
                log.error(e.getMessage());
                throw new VciBaseException(e.getMessage());
                throw new ServiceException(e.getMessage());
            }
            throw new ServiceException(e1.getMessage());
        }
    }
@@ -1079,7 +1099,12 @@
                    for (DockingSysIntHeader dockingSysIntHeader : dockingSysIntHeaderList) {
                        headers.add(dockingSysIntHeader.getHeaderKey(), dockingSysIntHeader.getHeaderValue());
                    }
                    backString = HttpUtils.postByMediaType(url, params, headers,MediaType.valueOf(dockingSystemConfig.getContentType()));
                    backString = HttpUtils.postByMediaType(
                        url,
                        params,
                        headers,
                        Func.isNotBlank(dockingSystemConfig.getContentType()) ? MediaType.valueOf(dockingSystemConfig.getContentType()):MediaType.APPLICATION_FORM_URLENCODED
                    );
                }
                if(backString.startsWith("\"")){
                    backString=backString.substring(backString.indexOf("\"")+1);
Source/UBCS/ubcs-service/ubcs-code/src/main/java/com/vci/ubcs/code/service/impl/DockingSystemConfigServiceImpl.java
@@ -544,7 +544,7 @@
     * @param dockingSystemConfigDTO
     * @throws Throwable
     */
    private void callInterface(String  sendString , DockingSystemConfigDTO dockingSystemConfigDTO) throws  Throwable{
    private void callInterface(String  sendString , DockingSystemConfigDTO dockingSystemConfigDTO) throws Throwable{
        String paramString = "";
        String backString = "";