Merge #50 into master from cc_20260306_hqt_push

fix:修改红圈通推送时机,推送字段新增

* cc_20260306_hqt_push: (1 commits squashed)

  - fix:修改红圈通推送时机,推送字段新增

Signed-off-by: 王非凡 <accounts_67eba0c5fee9c49c80c8e2b4@mail.teambition.com>
Merged-by: 正新 <accounts_6964c7bcd2a2c377c5bbd01b@mail.teambition.com>

CR-link: https://codeup.aliyun.com/692ea314dec569489f6f167c/hangzhou/java/custom_zxjp/change/50
This commit is contained in:
王非凡
2026-03-09 09:06:27 +00:00
committed by 正新
parent edd5d9e010
commit 5c49337e1f
7 changed files with 47 additions and 2 deletions

View File

@@ -292,6 +292,11 @@ public class RedisConstant {
public static final String BIG_REGION_EMAIL = "big_region_email";
/**
* 招商大区老总邮箱
*/
public static final String INVEST_BIG_REGION_EMAIL = "invest_big_region_email";
/**
* 钱包开通失败/打标失败原因 wallet_open_fail:storeId:1/2 1平安/2网商
*/

View File

@@ -7,6 +7,7 @@ import com.cool.store.entity.decoration.ShopDecorationAssignDO;
import com.cool.store.mapper.decoration.ShopDecorationAssignMapper;
import com.cool.store.request.decoration.DecorationListRequest;
import org.springframework.stereotype.Repository;
import tk.mybatis.mapper.entity.Example;
import javax.annotation.Resource;
import java.util.List;
@@ -67,5 +68,9 @@ public class ShopDecorationAssignDAO {
return shopDecorationAssignMapper.listByCondition(request);
}
public ShopDecorationAssignDO getByShopId(Long shopId) {
Example example = new Example(ShopDecorationAssignDO.class);
example.createCriteria().andEqualTo("shopId", shopId);
return shopDecorationAssignMapper.selectOneByExample(example);
}
}

View File

@@ -56,6 +56,9 @@ public class HqtBuildRequest {
//负责人邮箱
private String email;
//招商大区负责人邮箱
private String investRegionEmail;
public Boolean check(){
if (StringUtils.isAnyBlank(shopName,hqtRegionCode,hqtRegionName,supervisorName,
partnershipSignatoryFirst,partnershipSignatoryFirstMobile,shopAddress)){

View File

@@ -115,6 +115,12 @@ public class HqtBuildAPIRequest {
@JsonProperty("负责人邮箱")
private String field191__c;
/**
* 招商大区负责人邮箱
*/
@JsonProperty("field197__c")
private String field197__c;
/**
* 特殊情况说明
*/

View File

@@ -29,6 +29,7 @@ import com.cool.store.service.HqtAPIService;
import com.cool.store.service.SignFranchiseService;
import com.cool.store.utils.RedisUtilPool;
import com.cool.store.utils.StringUtil;
import com.cool.store.utils.poi.StringUtils;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
@@ -177,7 +178,8 @@ public class DecorationHandleServiceImpl implements DecorationHandleService {
}
//配置的系统是红圈通 且不是加盟公司自有店 则推送数据 也就是配置了crm或者是加盟公司自有店 走crm流程
//2026开始 自有店也开始走红圈通
if (teamInfo.getUseSystem().equals(DecorationUseSystemEnum.HQT.getCode())){
// 已分配运营顾问的情况下推送
if (teamInfo.getUseSystem().equals(DecorationUseSystemEnum.HQT.getCode()) && StringUtils.isNotBlank(shopInfoDO.getOperationsConsultant())){
hqtAPIService.pushHqtBuild(signFranchiseService.getHqtBuildRequest(shopInfoDO.getId()));
}
shopDecorationAssign.setDecorationDescStatus(DecorationDescStatus.ASSIGNED.getCode());

View File

@@ -224,6 +224,7 @@ public class HqtAPIServiceImpl implements HqtAPIService {
hqtBuildAPIRequest.setField190__c(request.getOperationsConsultant());
hqtBuildAPIRequest.setField188__c(request.getInvestRegionName());
hqtBuildAPIRequest.setField191__c(request.getEmail());
hqtBuildAPIRequest.setField197__c(request.getInvestRegionEmail());
}
private HqtBuildAPIRequest.Field123__c getField123__c(HqtBuildRequest request) {

View File

@@ -20,6 +20,7 @@ import com.cool.store.entity.decoration.ShopDecorationAssignDO;
import com.cool.store.entity.decoration.TeamAreaMappingDO;
import com.cool.store.enums.*;
import com.cool.store.enums.Decoration.DecorationDescStatus;
import com.cool.store.enums.Decoration.DecorationUseSystemEnum;
import com.cool.store.enums.point.ShopSubStageEnum;
import com.cool.store.enums.point.ShopSubStageStatusEnum;
import com.cool.store.exception.ServiceException;
@@ -157,6 +158,8 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
private OperationsConsultantAssignDAO operationsConsultantAssignDAO;
@Resource
private DictService dictService;
@Resource
private SignFranchiseService signFranchiseService;
@Override
@@ -799,6 +802,10 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
if (StringUtils.isNotEmpty(email)){
request.setEmail(email);
}
String investReginMail = redisUtilPool.hashGet(RedisConstant.INVEST_BIG_REGION_EMAIL, String.valueOf(shopInfo.getInvestRegionId()));
if (StringUtils.isNotBlank(investReginMail)) {
request.setInvestRegionEmail(investReginMail);
}
request.setShopId(shopId);
request.setShopCode(shopInfo.getShopCode());
request.setShopName(shopInfo.getShopName());
@@ -852,6 +859,22 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
//分配之后 开始以下阶段
preparationService.contractAndBuildStoreCompletion(request.getShopId());
// 推送红圈通
if (StringUtils.isBlank(shopInfo.getHqtShopId())) {
try {
ShopDecorationAssignDO assignDO = shopDecorationAssignDAO.getByShopId(shopInfo.getId());
if (Objects.nonNull(assignDO)) {
DecorationTeamConfigDO teamInfo = decorationTeamConfigDAO.getById(assignDO.getDecorationTeamId());
if (Objects.nonNull(teamInfo) && DecorationUseSystemEnum.HQT.getCode().equals(teamInfo.getUseSystem())) {
hqtAPIService.pushHqtBuild(signFranchiseService.getHqtBuildRequest(shopInfo.getId()));
}
}
} catch (Exception e) {
log.error("推送红圈通失败", e);
}
}
return Boolean.TRUE;
}