加盟商资质审核发起流程走通
This commit is contained in:
@@ -227,7 +227,7 @@
|
||||
or id = #{record.id}
|
||||
</if>
|
||||
<if test="record.partnerLineId != null">
|
||||
or partner_id_line_id = #{record.partnerLineId}
|
||||
or partner_line_id = #{record.partnerLineId}
|
||||
</if>
|
||||
</where>
|
||||
</update>
|
||||
|
||||
@@ -47,7 +47,7 @@
|
||||
|
||||
<sql id="Base_Column_List">
|
||||
id, status, partner_line_id, interview_plan_id, partner_id, deadline, interviewer,
|
||||
recorder, process_info, record_time, summary, auth_code, qualify_verify_id, pass_file_url, expiry_date,
|
||||
recorder, process_info, record_time, summary, auth_code, pass_pdf_url, pass_image_url, expiry_date,
|
||||
latest_log_message, pass_reason, certify_file, create_time, update_time, approve_time,
|
||||
partner_enter_time, interviewer_enter_time
|
||||
</sql>
|
||||
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.cool.store.entity;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class FraSourceDO {
|
||||
|
||||
@ApiModelProperty("key")
|
||||
private String key;
|
||||
|
||||
@ApiModelProperty("text")
|
||||
private String text;
|
||||
|
||||
}
|
||||
@@ -1,87 +0,0 @@
|
||||
package com.cool.store.request;
|
||||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
|
||||
/**
|
||||
* @Author: young.yu
|
||||
* @Date: 2023-06-14 15:06
|
||||
* @Description:
|
||||
*/
|
||||
public class RpcCreateQualifyVerfyReq {
|
||||
@ApiModelProperty(value = "意向签约时间", required = true)
|
||||
private String intendedSignDate;
|
||||
|
||||
@ApiModelProperty(value = "请求来源", required = true)
|
||||
private String fraSource;
|
||||
|
||||
@ApiModelProperty(value = "保证金(元)", required = true, example = "5000")
|
||||
private int amtDeposit;
|
||||
|
||||
@ApiModelProperty(value = "授权码", required = true)
|
||||
private String authCode;
|
||||
|
||||
@ApiModelProperty(value = "意向签约人", required = true)
|
||||
private String intendedSigner;
|
||||
|
||||
@ApiModelProperty(value = "手机号", required = true)
|
||||
private String intendedSignerTel;
|
||||
|
||||
@ApiModelProperty(value = "钉钉用户id", required = true)
|
||||
private String dingUserId;
|
||||
|
||||
public String getIntendedSignDate() {
|
||||
return intendedSignDate;
|
||||
}
|
||||
|
||||
public void setIntendedSignDate(String intendedSignDate) {
|
||||
this.intendedSignDate = intendedSignDate;
|
||||
}
|
||||
|
||||
public String getFraSource() {
|
||||
return fraSource;
|
||||
}
|
||||
|
||||
public void setFraSource(String fraSource) {
|
||||
this.fraSource = fraSource;
|
||||
}
|
||||
|
||||
public int getAmtDeposit() {
|
||||
return amtDeposit;
|
||||
}
|
||||
|
||||
public void setAmtDeposit(int amtDeposit) {
|
||||
this.amtDeposit = amtDeposit;
|
||||
}
|
||||
|
||||
public String getAuthCode() {
|
||||
return authCode;
|
||||
}
|
||||
|
||||
public void setAuthCode(String authCode) {
|
||||
this.authCode = authCode;
|
||||
}
|
||||
|
||||
public String getIntendedSigner() {
|
||||
return intendedSigner;
|
||||
}
|
||||
|
||||
public void setIntendedSigner(String intendedSigner) {
|
||||
this.intendedSigner = intendedSigner;
|
||||
}
|
||||
|
||||
public String getIntendedSignerTel() {
|
||||
return intendedSignerTel;
|
||||
}
|
||||
|
||||
public void setIntendedSignerTel(String intendedSignerTel) {
|
||||
this.intendedSignerTel = intendedSignerTel;
|
||||
}
|
||||
|
||||
public String getDingUserId() {
|
||||
return dingUserId;
|
||||
}
|
||||
|
||||
public void setDingUserId(String dingUserId) {
|
||||
this.dingUserId = dingUserId;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
package com.cool.store.request;
|
||||
|
||||
import com.cool.store.entity.FraSourceDO;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
/**
|
||||
* @Author: young.yu
|
||||
* @Date: 2023-06-14 15:06
|
||||
* @Description:
|
||||
*/
|
||||
@Data
|
||||
public class RpcCreateQualifyVerifyReq {
|
||||
|
||||
@lombok.Data
|
||||
public class Data {
|
||||
@ApiModelProperty(value = "意向签约时间", required = true)
|
||||
private String intendedSignDate;
|
||||
|
||||
@ApiModelProperty(value = "请求来源", required = true)
|
||||
private FraSourceDO fraSource;
|
||||
|
||||
@ApiModelProperty(value = "保证金(元)", required = true, example = "5000")
|
||||
private int amtDeposit;
|
||||
|
||||
@ApiModelProperty(value = "授权码", required = true)
|
||||
private String authCode;
|
||||
|
||||
@ApiModelProperty(value = "意向签约人", required = true)
|
||||
private String intendedSigner;
|
||||
|
||||
@ApiModelProperty(value = "手机号", required = true)
|
||||
private String intendedSignerTel;
|
||||
|
||||
}
|
||||
|
||||
@ApiModelProperty(value = "数据体", required = true)
|
||||
private Data data;
|
||||
|
||||
@ApiModelProperty(value = "钉钉用户id", required = true)
|
||||
private String dingUserId;
|
||||
}
|
||||
@@ -2,7 +2,6 @@ package com.cool.store.service.impl;
|
||||
|
||||
import cn.hutool.core.date.DateTime;
|
||||
import cn.hutool.core.date.DateUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.alibaba.fastjson.TypeReference;
|
||||
@@ -21,25 +20,23 @@ import com.cool.store.mapper.HyPartnerLineInfoMapper;
|
||||
import com.cool.store.oss.OSSServer;
|
||||
import com.cool.store.request.CreateQualifyVerifyReq;
|
||||
import com.cool.store.request.QualificationCallbackReq;
|
||||
import com.cool.store.request.RpcCreateQualifyVerfyReq;
|
||||
import com.cool.store.request.RpcCreateQualifyVerifyReq;
|
||||
import com.cool.store.request.RpcGetMdmTokenReq;
|
||||
import com.cool.store.service.FlowService;
|
||||
import com.cool.store.utils.PDFUtils;
|
||||
import com.cool.store.utils.PassLetterUtils;
|
||||
import com.cool.store.utils.RedisUtilPool;
|
||||
import com.cool.store.utils.RestTemplateUtil;
|
||||
import com.cool.store.vo.PartnerPassLetterDetailVO;
|
||||
import lombok.Data;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.apache.commons.lang3.StringUtils;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
import org.springframework.http.ResponseEntity;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.io.ByteArrayInputStream;
|
||||
import java.io.ByteArrayOutputStream;
|
||||
import java.io.IOException;
|
||||
import java.util.Date;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
@@ -54,8 +51,15 @@ import java.util.Objects;
|
||||
@Service
|
||||
public class FlowServiceImpl implements FlowService {
|
||||
|
||||
// @Value("${hs.mdm.baseUrl}")
|
||||
@Value("${hs.mdm.baseUrl}")
|
||||
private String mdmBaseUrl;
|
||||
|
||||
@Value("${hs.mdm.appkey}")
|
||||
private String mdmAppKey;
|
||||
|
||||
@Value("${hs.mdm.appsec}")
|
||||
private String mdmAppSec;
|
||||
|
||||
@Autowired
|
||||
private RedisUtilPool redisUtilPool;
|
||||
|
||||
@@ -81,14 +85,18 @@ public class FlowServiceImpl implements FlowService {
|
||||
@Transactional
|
||||
public void createQualifyVerify(CreateQualifyVerifyReq request) throws ApiException {
|
||||
//1.发起加盟商资质审核
|
||||
RpcCreateQualifyVerfyReq rpcRequest = new RpcCreateQualifyVerfyReq();
|
||||
rpcRequest.setIntendedSignDate(request.getWantSignTime());
|
||||
rpcRequest.setFraSource("HSAYPartner");
|
||||
rpcRequest.setAmtDeposit(Integer.valueOf(request.getSecurityFund()));
|
||||
RpcCreateQualifyVerifyReq rpcRequest = new RpcCreateQualifyVerifyReq();
|
||||
RpcCreateQualifyVerifyReq.Data data = new RpcCreateQualifyVerifyReq().new Data();
|
||||
rpcRequest.setData(data);
|
||||
FraSourceDO fraSourceDO = new FraSourceDO();
|
||||
fraSourceDO.setKey("HSAYPartner");
|
||||
fraSourceDO.setText("沪上阿姨合伙人");
|
||||
data.setFraSource(fraSourceDO);
|
||||
data.setAmtDeposit(Integer.valueOf(request.getSecurityFund()));
|
||||
|
||||
//获取授权码
|
||||
String authCode = null;
|
||||
if (StringUtils.isBlank(request.getLineId())) {
|
||||
if (!StringUtils.isBlank(request.getLineId())) {
|
||||
//根据线索id获取线索信息
|
||||
HyPartnerLineInfoDO hyPartnerLineInfoDO = hyPartnerLineInfoMapper.selectByPrimaryKeySelective(Long.valueOf(request.getLineId()));
|
||||
if (!Objects.isNull(hyPartnerLineInfoDO)) {
|
||||
@@ -103,13 +111,13 @@ public class FlowServiceImpl implements FlowService {
|
||||
}
|
||||
rpcRequest.setDingUserId(dingdingUserDO.getUserid());
|
||||
authCode = generateAuthCode(jobNumber);
|
||||
rpcRequest.setAuthCode(authCode);
|
||||
data.setAuthCode(authCode);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
rpcRequest.setIntendedSigner(request.getIntentionSignerUsername());
|
||||
rpcRequest.setIntendedSignerTel(request.getIntentionSignerMobile());
|
||||
data.setIntendedSigner(request.getIntentionSignerUsername());
|
||||
data.setIntendedSignerTel(request.getIntentionSignerMobile());
|
||||
|
||||
//通过 rpc 请求审核系统获取返回数据
|
||||
Map<String, String> qualifyVerifyRespData = JSON.parseObject(createQualifyVerify(rpcRequest), new TypeReference<HashMap<String,String>>() {});
|
||||
@@ -196,16 +204,17 @@ public class FlowServiceImpl implements FlowService {
|
||||
}
|
||||
|
||||
|
||||
public String createQualifyVerify(RpcCreateQualifyVerfyReq rpcRequest) throws ApiException{
|
||||
public String createQualifyVerify(RpcCreateQualifyVerifyReq rpcRequest) throws ApiException{
|
||||
String url = mdmBaseUrl + "/api/openapi/runtime/form/startFraQualExamWithData";
|
||||
ResponseEntity<MDMResultDTO> responseEntity = null;
|
||||
try {
|
||||
RpcGetMdmTokenReq rpcGetMDMTokenReq = new RpcGetMdmTokenReq();
|
||||
// TODO set appKey 与 appSecret
|
||||
rpcGetMDMTokenReq.setAppKey(mdmAppKey);
|
||||
rpcGetMDMTokenReq.setAppSecret(mdmAppSec);
|
||||
Map<String, String> headers = new HashMap<>();
|
||||
headers.put("Authorization", getMdmAccessToken(rpcGetMDMTokenReq));
|
||||
responseEntity = RestTemplateUtil.post(url, headers, rpcRequest, MDMResultDTO.class);
|
||||
log.info("url:{}, response:{}", url, JSONObject.toJSONString(responseEntity));
|
||||
log.info("url:{}, header:{}, request:{} response:{}", url, JSONObject.toJSONString(headers), JSONObject.toJSONString(rpcRequest), JSONObject.toJSONString(responseEntity));
|
||||
if (Objects.nonNull(responseEntity.getBody()) && responseEntity.getBody().isSuccess()) {
|
||||
return JSONObject.toJSONString(responseEntity.getBody().getData());
|
||||
}
|
||||
|
||||
@@ -58,8 +58,10 @@ weixin.appSecret=245a483747e6e9f8762d3e8539cf0318
|
||||
|
||||
signKey=77fea013c3a6459685b83c21a2fc3411
|
||||
|
||||
#八佰流程配置
|
||||
hs.mdm.baseUrl=http://172.35.37.52:8080
|
||||
#MDM
|
||||
hs.mdm.baseUrl=http://10.56.21.30/
|
||||
hs.mdm.appkey = HSAYPartner
|
||||
hs.mdm.appsec = ab39fedb886fa3587c7f517551976de8b2606f5511fd8f8675266825d74c5cd3
|
||||
|
||||
#xxljob配置
|
||||
xxl.job.admin.addresses = https://djob.coolstore.cn/xxl-job-admin
|
||||
|
||||
@@ -64,6 +64,11 @@ weixin.appSecret=245a483747e6e9f8762d3e8539cf0318
|
||||
|
||||
signKey=77fea013c3a6459685b83c21a2fc3411
|
||||
|
||||
#MDM
|
||||
hs.mdm.baseUrl=http://10.56.21.30/
|
||||
hs.mdm.appkey = HSAYPartner
|
||||
hs.mdm.appsec = ab39fedb886fa3587c7f517551976de8b2606f5511fd8f8675266825d74c5cd3
|
||||
|
||||
xxl.job.admin.addresses =
|
||||
xxl.job.executor.appname = ${spring.application.name}
|
||||
xxl.job.executor.ip =
|
||||
|
||||
@@ -57,3 +57,8 @@ weixin.appId=wxb2a0addf956ad4b7
|
||||
weixin.appSecret=77abdcae754add92889566b543e5ad79
|
||||
|
||||
signKey=77fea013c3a6459685b83c21a2fc3411
|
||||
|
||||
#MDM
|
||||
hs.mdm.baseUrl=http://10.56.21.30/
|
||||
hs.mdm.appkey = HSAYPartner
|
||||
hs.mdm.appsec = ab39fedb886fa3587c7f517551976de8b2606f5511fd8f8675266825d74c5cd3
|
||||
|
||||
@@ -64,3 +64,8 @@ weixin.appId=wxb2a0addf956ad4b7
|
||||
weixin.appSecret=77abdcae754add92889566b543e5ad79
|
||||
|
||||
signKey=77fea013c3a6459685b83c21a2fc3411
|
||||
|
||||
#MDM
|
||||
hs.mdm.baseUrl=http://10.56.21.30/
|
||||
hs.mdm.appkey = HSAYPartner
|
||||
hs.mdm.appsec = ab39fedb886fa3587c7f517551976de8b2606f5511fd8f8675266825d74c5cd3
|
||||
|
||||
Reference in New Issue
Block a user