From 2e23c295f2feec0ca476fda91d5a940542ec8e78 Mon Sep 17 00:00:00 2001 From: "xiaodong.hu" <1075471126@qq.com> Date: Mon, 25 Sep 2023 18:14:11 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=94=B9800=E8=AF=B7=E6=B1=82?= =?UTF-8?q?=E6=9D=A5=E6=BA=90=E7=9B=B4=E6=8E=A5=E8=B0=83=E7=94=A8=EF=BC=9B?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D800=E5=9B=9E=E8=B0=83=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../mapper/HyPartnerFraSourceMapper.java | 26 --- .../mapper/HyPartnerFraSourceMapper.xml | 190 ------------------ .../request/RpcCreateQualifyVerifyReq.java | 3 + .../com/cool/store/http/MDMHttpRequest.java | 23 +++ .../com/cool/store/job/FraSourceSyncJob.java | 122 ----------- .../store/service/impl/FlowServiceImpl.java | 29 +-- 6 files changed, 43 insertions(+), 350 deletions(-) delete mode 100644 coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerFraSourceMapper.java delete mode 100644 coolstore-partner-dao/src/main/resources/mapper/HyPartnerFraSourceMapper.xml delete mode 100644 coolstore-partner-service/src/main/java/com/cool/store/job/FraSourceSyncJob.java diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerFraSourceMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerFraSourceMapper.java deleted file mode 100644 index 8fe52fa43..000000000 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/HyPartnerFraSourceMapper.java +++ /dev/null @@ -1,26 +0,0 @@ -package com.cool.store.mapper; - -import com.cool.store.entity.HyPartnerFraSourceDO; -import org.apache.ibatis.annotations.Mapper; -import org.apache.ibatis.annotations.Param; - -import java.util.List; - -@Mapper -public interface HyPartnerFraSourceMapper { - int deleteByPrimaryKey(Long id); - - int insert(HyPartnerFraSourceDO record); - - int insertSelective(HyPartnerFraSourceDO record); - - HyPartnerFraSourceDO selectByPrimaryKey(Long id); - - int updateByPrimaryKeySelective(HyPartnerFraSourceDO record); - - int updateByPrimaryKey(HyPartnerFraSourceDO record); - - List selectAllFraSourceList(); - - int batchInsertSelective(@Param("insertList") List collect); -} \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerFraSourceMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/HyPartnerFraSourceMapper.xml deleted file mode 100644 index d20aa6582..000000000 --- a/coolstore-partner-dao/src/main/resources/mapper/HyPartnerFraSourceMapper.xml +++ /dev/null @@ -1,190 +0,0 @@ - - - - - - - - - - - - - - - - id, `name`, code, dict_id, source_id, enabled, create_time, update_time, remark - - - - - delete from hy_partner_fra_source - where id = #{id,jdbcType=BIGINT} - - - insert into hy_partner_fra_source (`name`, code, dict_id, - source_id, enabled, create_time, - update_time, remark) - values (#{name,jdbcType=VARCHAR}, #{code,jdbcType=VARCHAR}, #{dictId,jdbcType=VARCHAR}, - #{sourceId,jdbcType=VARCHAR}, #{enabled,jdbcType=BOOLEAN}, #{createTime,jdbcType=TIMESTAMP}, - #{updateTime,jdbcType=TIMESTAMP}, #{remark,jdbcType=VARCHAR}) - - - insert into hy_partner_fra_source - - - `name`, - - - code, - - - dict_id, - - - source_id, - - - enabled, - - - create_time, - - - update_time, - - - remark, - - - - - #{name,jdbcType=VARCHAR}, - - - #{code,jdbcType=VARCHAR}, - - - #{dictId,jdbcType=VARCHAR}, - - - #{sourceId,jdbcType=VARCHAR}, - - - #{enabled,jdbcType=BOOLEAN}, - - - #{createTime,jdbcType=TIMESTAMP}, - - - #{updateTime,jdbcType=TIMESTAMP}, - - - #{remark,jdbcType=VARCHAR}, - - - - - - insert into hy_partner_fra_source - - - `name`, - - - `code`, - - - dict_id, - - - source_id, - - - enabled, - - - create_time, - - - remark, - - - - - #{record.name,jdbcType=VARCHAR}, - - - #{record.code,jdbcType=VARCHAR}, - - - #{record.dictId,jdbcType=VARCHAR}, - - - #{record.sourceId,jdbcType=VARCHAR}, - - - #{record.enabled,jdbcType=BOOLEAN}, - - - #{record.createTime,jdbcType=TIMESTAMP}, - - - #{record.remark,jdbcType=VARCHAR}, - - - ON DUPLICATE KEY UPDATE update_time = now(), enabled = values(enabled), `name` = values(`name`), `code` = values(`code`), dict_id = values(dict_id) - - - - update hy_partner_fra_source - - - `name` = #{name,jdbcType=VARCHAR}, - - - code = #{code,jdbcType=VARCHAR}, - - - dict_id = #{dictId,jdbcType=VARCHAR}, - - - source_id = #{sourceId,jdbcType=VARCHAR}, - - - enabled = #{enabled,jdbcType=BOOLEAN}, - - - create_time = #{createTime,jdbcType=TIMESTAMP}, - - - update_time = #{updateTime,jdbcType=TIMESTAMP}, - - - remark = #{remark,jdbcType=VARCHAR}, - - - where id = #{id,jdbcType=BIGINT} - - - update hy_partner_fra_source - set `name` = #{name,jdbcType=VARCHAR}, - code = #{code,jdbcType=VARCHAR}, - dict_id = #{dictId,jdbcType=VARCHAR}, - source_id = #{sourceId,jdbcType=VARCHAR}, - enabled = #{enabled,jdbcType=BOOLEAN}, - create_time = #{createTime,jdbcType=TIMESTAMP}, - update_time = #{updateTime,jdbcType=TIMESTAMP}, - remark = #{remark,jdbcType=VARCHAR} - where id = #{id,jdbcType=BIGINT} - - \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/RpcCreateQualifyVerifyReq.java b/coolstore-partner-model/src/main/java/com/cool/store/request/RpcCreateQualifyVerifyReq.java index b572000fd..dedabe8d5 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/RpcCreateQualifyVerifyReq.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/RpcCreateQualifyVerifyReq.java @@ -37,6 +37,9 @@ public class RpcCreateQualifyVerifyReq { @ApiModelProperty(value = "意向签约人手机号", required = true) private String intendedSignerTel; + @ApiModelProperty(value = "系统来源", required = false) + private String systemsource; + @ApiModelProperty(value = "合作关系", required = true) private KeyText partnership; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/http/MDMHttpRequest.java b/coolstore-partner-service/src/main/java/com/cool/store/http/MDMHttpRequest.java index d3ac8b362..5a53404b6 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/http/MDMHttpRequest.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/http/MDMHttpRequest.java @@ -17,6 +17,7 @@ import org.springframework.stereotype.Service; import org.springframework.util.LinkedMultiValueMap; import org.springframework.util.MultiValueMap; +import java.util.HashMap; import java.util.Map; import java.util.Objects; @@ -86,6 +87,28 @@ public class MDMHttpRequest { } } + + public ResponseEntity getDictList() throws ApiException { + String url = mdmBaseUrl + "/api/openapi/dict/api/dictListByCode?code=mdFraSource"; + ResponseEntity responseEntity = null; + try { + RpcGetMdmTokenReq rpcGetMDMTokenReq = new RpcGetMdmTokenReq(); + rpcGetMDMTokenReq.setAppKey(mdmAppKey); + rpcGetMDMTokenReq.setAppSecret(mdmAppSec); + Map headers = new HashMap<>(1); + headers.put("Authorization",getMdmAccessToken()); + responseEntity = RestTemplateUtil.get(url, headers, MDMResultDTO.class); + log.info("url:{}, header:{}, response:{}", url, JSONObject.toJSONString(headers), JSONObject.toJSONString(responseEntity)); + if (Objects.nonNull(responseEntity.getBody()) && responseEntity.getBody().isSuccess()) { + return responseEntity; + } + } catch (Exception e) { + log.info("调用MDM接口出错 url{}, e{}", url, e); + throw new ApiException(e.getMessage()); + } + return null; + } + /** * 获取 mdm 所有业务区域 * @param headers headers diff --git a/coolstore-partner-service/src/main/java/com/cool/store/job/FraSourceSyncJob.java b/coolstore-partner-service/src/main/java/com/cool/store/job/FraSourceSyncJob.java deleted file mode 100644 index c2ef6c0f5..000000000 --- a/coolstore-partner-service/src/main/java/com/cool/store/job/FraSourceSyncJob.java +++ /dev/null @@ -1,122 +0,0 @@ -package com.cool.store.job; - -import cn.hutool.core.bean.BeanUtil; -import cn.hutool.core.util.ObjectUtil; -import com.alibaba.fastjson.JSON; -import com.alibaba.fastjson.JSONObject; -import com.alibaba.fastjson.TypeReference; -import com.cool.store.dto.mdm.AccessTokenDTO; -import com.cool.store.dto.response.DictResultDTO; -import com.cool.store.dto.response.MDMResultDTO; -import com.cool.store.entity.HyPartnerFraSourceDO; -import com.cool.store.exception.ApiException; -import com.cool.store.exception.ServiceException; -import com.cool.store.mapper.HyPartnerFraSourceMapper; -import com.cool.store.request.RpcGetMdmTokenReq; -import com.cool.store.utils.RestTemplateUtil; -import com.xxl.job.core.context.XxlJobHelper; -import com.xxl.job.core.handler.annotation.XxlJob; -import lombok.extern.slf4j.Slf4j; -import org.apache.commons.lang3.StringUtils; -import org.springframework.beans.factory.annotation.Value; -import org.springframework.http.ResponseEntity; -import org.springframework.stereotype.Component; - -import javax.annotation.Resource; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; -import java.util.stream.Collectors; - -/** - * @author hxd - */ -@Slf4j -@Component -public class FraSourceSyncJob { - - - @Value("${hs.mdm.baseUrl:null}") - private String mdmBaseUrl; - - @Value("${hs.mdm.appkey:null}") - private String mdmAppKey; - - @Value("${hs.mdm.appsec:null}") - private String mdmAppSec; - - @Resource - private HyPartnerFraSourceMapper hyPartnerFraSourceMapper; - - @XxlJob("FraSourceSyncJob") - public void fraSourceSyncJob() { - XxlJobHelper.log("-------------------------------定时同步800请求来源开始-------------------------------"); - execute(); - XxlJobHelper.log("-------------------------------定时同步800请求来源结束-------------------------------"); - XxlJobHelper.handleSuccess(); - } - - private void execute() { - DictResultDTO dictResultDTO = null; - try { - dictResultDTO = JSON.parseObject(getDictList(), new TypeReference() { - }); - } catch (ApiException e) { - log.error("请求800获取字典报错:" + JSONObject.toJSONString(e)); - } - if (ObjectUtil.isNull(dictResultDTO)) { - return; - } - List configList = dictResultDTO.getConfigList(); - List collect = configList.stream().map(item -> { - HyPartnerFraSourceDO hyPartnerFraSourceDO = new HyPartnerFraSourceDO(); - BeanUtil.copyProperties(item, hyPartnerFraSourceDO); - hyPartnerFraSourceDO.setSourceId(item.getId()); - return hyPartnerFraSourceDO; - }).collect(Collectors.toList()); - hyPartnerFraSourceMapper.batchInsertSelective(collect); - } - - public String getDictList() throws ApiException { - String url = mdmBaseUrl + "/api/openapi/dict/api/dictListByCode?code=mdFraSource"; - ResponseEntity responseEntity = null; - try { - RpcGetMdmTokenReq rpcGetMDMTokenReq = new RpcGetMdmTokenReq(); - rpcGetMDMTokenReq.setAppKey(mdmAppKey); - rpcGetMDMTokenReq.setAppSecret(mdmAppSec); - Map headers = new HashMap<>(1); - headers.put("Authorization", getMdmAccessToken(rpcGetMDMTokenReq)); - responseEntity = RestTemplateUtil.get(url, headers, MDMResultDTO.class); - log.info("url:{}, header:{}, response:{}", url, JSONObject.toJSONString(headers), JSONObject.toJSONString(responseEntity)); - if (Objects.nonNull(responseEntity.getBody()) && responseEntity.getBody().isSuccess()) { - return JSONObject.toJSONString(responseEntity.getBody().getData()); - } - } catch (Exception e) { - log.info("调用MDM接口出错 url{}, e{}", url, e); - throw new ApiException(e.getMessage()); - } - return null; - } - - public String getMdmAccessToken(RpcGetMdmTokenReq rpcGetMDMTokenReq) throws ApiException { - String url = mdmBaseUrl + "/api/oauth2/accessToken"; - ResponseEntity responseEntity = null; - try { - responseEntity = RestTemplateUtil.post(url, rpcGetMDMTokenReq, MDMResultDTO.class); - log.info("url:{}, response:{}", url, JSONObject.toJSONString(responseEntity)); - if (Objects.nonNull(responseEntity.getBody()) && responseEntity.getBody().isSuccess()) { - AccessTokenDTO accessTokenDTO = JSONObject.parseObject(JSONObject.toJSONString(responseEntity.getBody().getData()), AccessTokenDTO.class); - if (accessTokenDTO == null || StringUtils.isBlank(accessTokenDTO.getAccessToken())) { - throw new ServiceException("获取Mdm token失败!"); - } - return accessTokenDTO.getAccessToken(); - } - } catch (Exception e) { - log.info("获取MDM Token 出错 url:\t{}, e:\t{}", url, e); - throw new ApiException(e.getMessage()); - } - return null; - } - -} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java index 3ab876f1d..ccf4182cb 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FlowServiceImpl.java @@ -14,6 +14,7 @@ import com.cool.store.dao.HyPartnerBaseInfoDAO; import com.cool.store.dto.log.CreateQualifyVerifyDTO; import com.cool.store.dto.log.LogBasicDTO; import com.cool.store.dto.mdm.AccessTokenDTO; +import com.cool.store.dto.response.DictResultDTO; import com.cool.store.dto.response.MDMResultDTO; import com.cool.store.entity.*; import com.cool.store.enums.*; @@ -27,6 +28,7 @@ import com.cool.store.request.data.flow.KeyText; import com.cool.store.request.data.flow.SkrRelshipProve; import com.cool.store.service.*; import com.cool.store.utils.*; +import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; @@ -42,6 +44,7 @@ import java.io.ByteArrayInputStream; import java.io.ByteArrayOutputStream; import java.io.IOException; import java.util.*; +import java.util.stream.Collectors; /** * @Author: young.yu @@ -52,14 +55,6 @@ import java.util.*; @Service public class FlowServiceImpl implements FlowService { - @Value("${hs.mdm.baseUrl:null}") - private String mdmBaseUrl; - - @Value("${hs.mdm.appkey:null}") - private String mdmAppKey; - - @Value("${hs.mdm.appsec:null}") - private String mdmAppSec; @Autowired private RedisUtilPool redisUtilPool; @@ -101,8 +96,8 @@ public class FlowServiceImpl implements FlowService { @Autowired private WechatMiniAppService wechatMiniAppService; - @Autowired - private HyPartnerFraSourceMapper hyPartnerFraSourceMapper; + @Value("${hs.mdm.appkey:null}") + private String mdmAppKey; @Autowired private MDMHttpRequest mdmHttpRequest; @@ -141,6 +136,7 @@ public class FlowServiceImpl implements FlowService { dataBody.setAmtJoin(request.getPartnerFee()); dataBody.setAmtTechSer(request.getTechnicalServiceFee()); dataBody.setAmtIntended(request.getIntentionMoney()); + dataBody.setSystemsource(mdmAppKey); rpcRequest.setData(dataBody); //获取授权码 @@ -269,7 +265,6 @@ public class FlowServiceImpl implements FlowService { if (hyPartnerInterviewDO == null || hyPartnerInterviewDO.getInterviewPlanId() == null) { throw new ServiceException(ErrorCodeEnum.INTERVIEW_NOT_EXIST); } - String interviewId = hyPartnerInterviewDO.getId().toString(); String interviewPlanId = hyPartnerInterviewDO.getInterviewPlanId().toString(); Long partnerLineId = hyPartnerInterviewDO.getPartnerLineId(); //审核通过 @@ -304,9 +299,19 @@ public class FlowServiceImpl implements FlowService { } } + @SneakyThrows @Override public List getDictList() { - return hyPartnerFraSourceMapper.selectAllFraSourceList(); + String s = JSONObject.toJSONString(mdmHttpRequest.getDictList().getBody().getData()); + DictResultDTO dictResultDTO = JSON.parseObject(s, new TypeReference() { + }); + List collect = dictResultDTO.getConfigList().stream().map(item -> { + HyPartnerFraSourceDO hyPartnerFraSourceDO = new HyPartnerFraSourceDO(); + BeanUtil.copyProperties(item, hyPartnerFraSourceDO); + hyPartnerFraSourceDO.setSourceId(item.getId()); + return hyPartnerFraSourceDO; + }).collect(Collectors.toList()); + return collect; } private List OSSFileToMDMFile(Map headers, List fileUrlList) throws ApiException, IOException {