Merge branch 'refs/heads/master' into cc_20251112_wallet
# Conflicts: # coolstore-partner-web/src/main/resources/application-ab.properties # coolstore-partner-web/src/main/resources/application-test.properties
This commit is contained in:
@@ -213,6 +213,7 @@ public class BuildInformationServiceImpl implements BuildInformationService {
|
||||
response.setReceivingMsBankAccount(orderSysInfoDO.getReceivingMsBankAccount());
|
||||
response.setReceivingMsBankBranch(orderSysInfoDO.getReceivingMsBankBranch());
|
||||
response.setBankUnionPayAccount(orderSysInfoDO.getBankUnionPayAccount());
|
||||
response.setOrderType(orderSysInfoDO.getOrderType());
|
||||
WarehouseInfoDO warehouseInfoDO = warehouseInfoMapper.getByCode(orderSysInfoDO.getDeclareGoodsLogisticsWarehouse());
|
||||
if (Objects.nonNull(warehouseInfoDO)) {
|
||||
response.setDeclareGoodsLogisticsWarehouseName(warehouseInfoDO.getWarehouseName());
|
||||
|
||||
@@ -75,6 +75,13 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService {
|
||||
if (!shopStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_70.getShopSubStageStatus())){
|
||||
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
}
|
||||
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(request.getShopId());
|
||||
// 三明治前端没有改这块代码,还是会传这三个字段,因此后端这三个字段置空
|
||||
if (Integer.valueOf(shopInfoDO.getFranchiseBrand()).equals(FranchiseBrandEnum.ZXSMZ.getCode())) {
|
||||
request.setFirstYearManageFee("0");
|
||||
request.setFirstYearFee("0");
|
||||
request.setYearFranchiseFee("0");
|
||||
}
|
||||
FranchiseFeeDO franchiseFeeDO = request.toFranchiseFeeDO();
|
||||
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_71);
|
||||
if (request.getId() != null) {
|
||||
@@ -89,11 +96,11 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService {
|
||||
franchiseFeeDO.setCreateTime(new Date());
|
||||
franchiseFeeMapper.insertSelective(franchiseFeeDO);
|
||||
}
|
||||
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(request.getShopId());
|
||||
LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(shopInfoDO.getLineId());
|
||||
commonService.sendSms(lineInfoDO.getMobile(), SMSMsgEnum.PAY_FRANCHISE_FEES);
|
||||
//推送加盟费信息到新管家
|
||||
PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO);
|
||||
feeRequest.setJoinBrand(Integer.valueOf(shopInfoDO.getFranchiseBrand()));
|
||||
pushService.pushFranchiseFeeToXGJ(feeRequest);
|
||||
return true;
|
||||
}
|
||||
@@ -116,6 +123,7 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService {
|
||||
//推送加盟费信息到新管家
|
||||
franchiseFeeDO.setCreateTime(franchiseFeeDO1.getCreateTime());
|
||||
PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO);
|
||||
feeRequest.setJoinBrand(Integer.valueOf(shopInfoDO.getFranchiseBrand()));
|
||||
pushService.pushFranchiseFeeToXGJ(feeRequest);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -308,6 +308,10 @@ public class LinePayServiceImpl implements LinePayService {
|
||||
public Boolean pushPayInfo(Long shopId, LinePayDO linePayDO) {
|
||||
FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(shopId);
|
||||
ReceiptRequest receiptRequest = new ReceiptRequest(shopId, franchiseFeeDO.getId().intValue(), linePayDO);
|
||||
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(shopId);
|
||||
if (Objects.nonNull(shopInfoDO)) {
|
||||
receiptRequest.setJoinBrand(Integer.valueOf(shopInfoDO.getFranchiseBrand()));
|
||||
}
|
||||
//推送缴费单数据到新管家
|
||||
pushService.pushReceiptToXGJ(receiptRequest);
|
||||
return Boolean.TRUE;
|
||||
|
||||
@@ -143,6 +143,7 @@ public class OrderSysInfoServiceImpl implements OrderSysInfoService {
|
||||
orderSysInfoDO.setReceivingMsBankAccount(request.getReceivingMsBankAccount());
|
||||
orderSysInfoDO.setReceivingMsBankBranch(request.getReceivingMsBankBranch());
|
||||
orderSysInfoDO.setBankUnionPayAccount(request.getBankUnionPayAccount());
|
||||
orderSysInfoDO.setOrderType(request.getOrderType());
|
||||
if (shopSubStageInfo.getShopSubStageStatus().equals(SHOP_SUB_STAGE_STATUS_152.getShopSubStageStatus())) {
|
||||
if (orderSysInfoDO.getReceivingCreateTime() == null) {
|
||||
orderSysInfoDO.setReceivingCreateTime(new Date());
|
||||
|
||||
@@ -519,6 +519,14 @@ public class PointServiceImpl implements PointService {
|
||||
if (AuditStatusEnum.REJECT.equals(auditStatus)) {
|
||||
return auditRejectDeal(pointInfo, request.getReason());
|
||||
}
|
||||
// 如果是三明治,将地址写入门店信息表
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(pointInfo.getShopId());
|
||||
if (Objects.nonNull(shopInfo) && Integer.valueOf(shopInfo.getFranchiseBrand()).equals(FranchiseBrandEnum.ZXSMZ.getCode())) {
|
||||
ShopInfoDO updateShopInfo = new ShopInfoDO();
|
||||
updateShopInfo.setId(pointInfo.getShopId());
|
||||
updateShopInfo.setDetailAddress(pointInfo.getAddress());
|
||||
shopInfoDAO.updateShopInfo(updateShopInfo);
|
||||
}
|
||||
//处理下一节点任务及更新point状态
|
||||
return dealNextAuditRecord(pointInfo, pointAuditRecordMap, pointTodo.getNodeNo());
|
||||
}
|
||||
|
||||
@@ -146,7 +146,7 @@ public class ShopServiceImpl implements ShopService {
|
||||
}
|
||||
shopInfoDAO.batchAddShop(addShopList);
|
||||
List<Long> shopIds = addShopList.stream().map(ShopInfoDO::getId).collect(Collectors.toList());
|
||||
Integer result = shopStageInfoDAO.initShopStageInfo(lineInfo.getId(), shopIds, true);
|
||||
Integer result = shopStageInfoDAO.initShopStageInfo(lineInfo.getId(), addShopList, true);
|
||||
//初始化平台账号
|
||||
HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(lineInfo.getPartnerId());
|
||||
shopAccountDAO.initShopAccount(hyPartnerUserInfoDO, shopIds);
|
||||
@@ -298,7 +298,7 @@ public class ShopServiceImpl implements ShopService {
|
||||
}
|
||||
shopInfoDAO.batchAddShop(addShopList);
|
||||
List<Long> shopIds = addShopList.stream().map(ShopInfoDO::getId).collect(Collectors.toList());
|
||||
shopStageInfoDAO.initShopStageInfo(lineInfo.getId(), shopIds, true);
|
||||
shopStageInfoDAO.initShopStageInfo(lineInfo.getId(), addShopList, true);
|
||||
return 1L;
|
||||
}
|
||||
|
||||
@@ -356,7 +356,7 @@ public class ShopServiceImpl implements ShopService {
|
||||
shopInfoDO.setCreateUserId(userId);
|
||||
Long shopId = shopInfoDAO.addShopInfo(shopInfoDO);
|
||||
if (lineInfo.getWorkflowSubStageStatus().equals(WorkflowSubStageStatusEnum.SIGN_INTENT_AGREEMENT_125.getCode())) {
|
||||
shopStageInfoDAO.initShopStageInfo(request.getLineId(), Collections.singletonList(shopId), true);
|
||||
shopStageInfoDAO.initShopStageInfo(request.getLineId(), Collections.singletonList(shopInfoDO), true);
|
||||
HashMap<String, String> map = new HashMap<>();
|
||||
map.put("partnerUsername", lineInfo.getUsername());
|
||||
map.put("partnerMobile", lineInfo.getMobile());
|
||||
@@ -381,7 +381,7 @@ public class ShopServiceImpl implements ShopService {
|
||||
MessageEnum.MESSAGE_21,
|
||||
map);
|
||||
} else {
|
||||
shopStageInfoDAO.initShopStageInfo(request.getLineId(), Collections.singletonList(shopId), false);
|
||||
shopStageInfoDAO.initShopStageInfo(request.getLineId(), Collections.singletonList(shopInfoDO), false);
|
||||
}
|
||||
//初始化平台账号
|
||||
HyPartnerUserInfoDO hyPartnerUserInfoDO = hyPartnerUserInfoDAO.selectByPartnerId(lineInfo.getPartnerId());
|
||||
|
||||
@@ -36,6 +36,7 @@ import java.util.stream.Collectors;
|
||||
|
||||
import static com.cool.store.enums.UserRoleEnum.*;
|
||||
import static com.cool.store.enums.point.ShopSubStageStatusEnum.*;
|
||||
import static com.cool.store.utils.CommonUtil.convertToBig;
|
||||
|
||||
@Service
|
||||
@Slf4j
|
||||
@@ -554,11 +555,12 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
||||
|
||||
} else {
|
||||
if (Objects.nonNull(franchiseFeeDO)) {
|
||||
BigDecimal total = new BigDecimal(franchiseFeeDO.getYearFranchiseFee())
|
||||
.add(new BigDecimal(franchiseFeeDO.getLoanMargin()))
|
||||
.add(new BigDecimal(franchiseFeeDO.getFirstYearFee()))
|
||||
.add(new BigDecimal(franchiseFeeDO.getFirstYearManageFee()))
|
||||
.add(new BigDecimal(franchiseFeeDO.getPerformanceBond()));
|
||||
BigDecimal total = convertToBig(franchiseFeeDO.getYearFranchiseFee())
|
||||
.add(convertToBig(franchiseFeeDO.getLoanMargin()))
|
||||
.add(convertToBig(franchiseFeeDO.getFirstYearFee()))
|
||||
.add(convertToBig(franchiseFeeDO.getFirstYearManageFee()))
|
||||
.add(convertToBig(franchiseFeeDO.getPerformanceBond()))
|
||||
.add(convertToBig(franchiseFeeDO.getCashierFee()));
|
||||
addSignFranchiseResponse.setContractAmount(total.toString());
|
||||
}
|
||||
addSignFranchiseResponse.setMobile(lineInfoDO.getMobile());
|
||||
@@ -611,9 +613,9 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
||||
|
||||
if (Objects.nonNull(franchiseFeeDO)) {
|
||||
addSignFranchiseResponse.setYearFranchiseFee(franchiseFeeDO.getYearFranchiseFee());
|
||||
addSignFranchiseResponse.setBigYearFranchiseFee(Convert.digitToChinese(new BigDecimal(franchiseFeeDO.getYearFranchiseFee())));
|
||||
addSignFranchiseResponse.setBigYearFranchiseFee(Convert.digitToChinese(convertToBig(franchiseFeeDO.getYearFranchiseFee())));
|
||||
addSignFranchiseResponse.setLoanMargin(franchiseFeeDO.getLoanMargin());
|
||||
addSignFranchiseResponse.setBigLoanMargin(Convert.digitToChinese(new BigDecimal(franchiseFeeDO.getLoanMargin())));
|
||||
addSignFranchiseResponse.setBigLoanMargin(Convert.digitToChinese(convertToBig(franchiseFeeDO.getLoanMargin())));
|
||||
addSignFranchiseResponse.setFirstYearStartTime(franchiseFeeDO.getFirstYearStartTime());
|
||||
addSignFranchiseResponse.setFirstYearEndTime(franchiseFeeDO.getFirstYearEndTime());
|
||||
addSignFranchiseResponse.setFirstYearFee(franchiseFeeDO.getFirstYearFee());
|
||||
@@ -625,7 +627,9 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
||||
addSignFranchiseResponse.setThirdYearEndTime(franchiseFeeDO.getThirdYearEndTime());
|
||||
addSignFranchiseResponse.setThirdYearFee(franchiseFeeDO.getThirdYearFee());
|
||||
addSignFranchiseResponse.setPerformanceBond(franchiseFeeDO.getPerformanceBond());
|
||||
addSignFranchiseResponse.setBigPerformanceBond(Convert.digitToChinese(new BigDecimal(franchiseFeeDO.getPerformanceBond())));
|
||||
addSignFranchiseResponse.setBigPerformanceBond(Convert.digitToChinese(convertToBig(franchiseFeeDO.getPerformanceBond())));
|
||||
addSignFranchiseResponse.setCashierFee(franchiseFeeDO.getCashierFee());
|
||||
addSignFranchiseResponse.setBigCashierFee(Convert.digitToChinese(convertToBig(franchiseFeeDO.getCashierFee())));
|
||||
}
|
||||
return addSignFranchiseResponse;
|
||||
}
|
||||
|
||||
@@ -23,8 +23,10 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
import javax.annotation.PostConstruct;
|
||||
import javax.annotation.Resource;
|
||||
import java.io.IOException;
|
||||
import java.net.SocketTimeoutException;
|
||||
import java.text.MessageFormat;
|
||||
import java.util.*;
|
||||
import java.util.concurrent.TimeUnit;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
@@ -68,6 +70,12 @@ public class XinFaDeviceService {
|
||||
|
||||
private final Map<String, HuoMaAccountDTO> accountMap = new HashMap<>();
|
||||
|
||||
private final OkHttpClient httpClient = new OkHttpClient.Builder()
|
||||
.connectTimeout(10, TimeUnit.SECONDS)
|
||||
.readTimeout(30, TimeUnit.SECONDS)
|
||||
.writeTimeout(30, TimeUnit.SECONDS)
|
||||
.build();
|
||||
|
||||
@PostConstruct
|
||||
public void initAccountMap() {
|
||||
accountMap.put("restaurant", new HuoMaAccountDTO(huoMaRestaurantStoresAccount, huoMaRestaurantStoresPassword));
|
||||
@@ -102,7 +110,7 @@ public class XinFaDeviceService {
|
||||
public List<StoreEquipmentDTO> getStoreEquipmentDataByStoreNumList(List<String> storeNumList, String token) {
|
||||
Map<String,List<String>> requestBody = new HashMap<>();
|
||||
requestBody.put("codeList", storeNumList);
|
||||
String responseBody = sendPostRequestByToken(JSONObject.toJSONString(requestBody), huoMaGetPointTerminalUrl,token);
|
||||
String responseBody = sendPostRequestNoRetryByToken(JSONObject.toJSONString(requestBody), huoMaGetPointTerminalUrl,token);
|
||||
try{
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
JsonNode rootNode = mapper.readTree(responseBody);
|
||||
@@ -127,7 +135,7 @@ public class XinFaDeviceService {
|
||||
}
|
||||
}
|
||||
StoreRequestDTO requestBody = new StoreRequestDTO("point_report", 0, 10, storeNum);
|
||||
String responseBody = sendPostRequestByToken(JSONObject.toJSONString(requestBody), huoMaGetStoreIdUrl,token);
|
||||
String responseBody = sendPostRequestNoRetryByToken(JSONObject.toJSONString(requestBody), huoMaGetStoreIdUrl,token);
|
||||
try{
|
||||
Integer storeId = extractIdsFromResponse(responseBody);
|
||||
redisUtilPool.hashSet(RedisConstant.HUO_MA_STORE_ID, storeNum, storeId.toString());
|
||||
@@ -186,7 +194,7 @@ public class XinFaDeviceService {
|
||||
TagDTO tagDTO = new TagDTO("DEFAULT", 0, 30,"program");
|
||||
String responseBody = null;
|
||||
try{
|
||||
responseBody = sendPostRequestByToken(JSONObject.toJSONString(tagDTO), huoMaGetTagUrl,token);
|
||||
responseBody = sendPostRequestNoRetryByToken(JSONObject.toJSONString(tagDTO), huoMaGetTagUrl,token);
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
JsonNode rootNode = mapper.readTree(responseBody);
|
||||
|
||||
@@ -238,7 +246,7 @@ public class XinFaDeviceService {
|
||||
String token = getStoreToken(huoMaAccountDTO.getAccount(), huoMaAccountDTO.getPassword());
|
||||
String responseBody = null;
|
||||
try{
|
||||
responseBody = sendPostRequestByToken(JSONObject.toJSONString(programReqDTO), huoMaGetProgramUrl,token);
|
||||
responseBody = sendPostRequestNoRetryByToken(JSONObject.toJSONString(programReqDTO), huoMaGetProgramUrl,token);
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
JsonNode rootNode = mapper.readTree(responseBody);
|
||||
|
||||
@@ -270,7 +278,7 @@ public class XinFaDeviceService {
|
||||
String token = getStoreToken(huoMaAccountDTO.getAccount(), huoMaAccountDTO.getPassword());
|
||||
String responseBody = null;
|
||||
try{
|
||||
responseBody = sendPostRequestByToken(JSONObject.toJSONString(publishDTO), huoMaGetPublishUrl,token);
|
||||
responseBody = sendPostRequestNoRetryByToken(JSONObject.toJSONString(publishDTO), huoMaGetPublishUrl,token);
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
JsonNode rootNode = mapper.readTree(responseBody);
|
||||
int code = rootNode.get("code").asInt();
|
||||
@@ -294,7 +302,7 @@ public class XinFaDeviceService {
|
||||
StoreXinFaDetailRequestDTO storeXinFaDetailRequestDTO = new StoreXinFaDetailRequestDTO(0, 10, pointId);
|
||||
String responseBody = null;
|
||||
try{
|
||||
responseBody = sendPostRequestByToken(JSONObject.toJSONString(storeXinFaDetailRequestDTO), huoMaGetStoreXinFaDeviceDetailUrl,token);
|
||||
responseBody = sendPostRequestNoRetryByToken(JSONObject.toJSONString(storeXinFaDetailRequestDTO), huoMaGetStoreXinFaDeviceDetailUrl,token);
|
||||
ObjectMapper mapper = new ObjectMapper();
|
||||
JsonNode rootNode = mapper.readTree(responseBody);
|
||||
|
||||
@@ -502,8 +510,8 @@ public class XinFaDeviceService {
|
||||
}
|
||||
|
||||
@NotNull
|
||||
private static String sendPost(String requestUrl, Request request) {
|
||||
try (Response response = new OkHttpClient().newCall(request).execute()) {
|
||||
private String sendPost(String requestUrl, Request request) {
|
||||
try (Response response = httpClient.newCall(request).execute()) {
|
||||
log.info("发起请求 time:{}", System.currentTimeMillis());
|
||||
if (!response.isSuccessful()) {
|
||||
log.info("HTTP请求失败,msg: " + response.message());
|
||||
@@ -513,6 +521,9 @@ public class XinFaDeviceService {
|
||||
String responseBody = response.body().string();
|
||||
log.info("请求成功responseBody:{}", JSONObject.toJSONString(responseBody));
|
||||
return responseBody;
|
||||
} catch (SocketTimeoutException e) {
|
||||
log.error("API调用超时 - URL: {}, 错误: {}", requestUrl, e.getMessage(), e);
|
||||
throw new ServiceException(ErrorCodeEnum.THIRD_API_ERROR, "接口调用超时: " + e.getMessage());
|
||||
} catch (ServiceException e) {
|
||||
throw e;
|
||||
} catch (Exception e) {
|
||||
|
||||
Reference in New Issue
Block a user