fix:修复三明治加盟非加盟合同签约金额错误的问题

This commit is contained in:
wangff
2025-11-12 14:17:41 +08:00
parent 4a08933e36
commit 2e719bd15e
5 changed files with 47 additions and 20 deletions

View File

@@ -1,9 +1,9 @@
package com.cool.store.request.xgj; package com.cool.store.request.xgj;
import com.cool.store.entity.FranchiseFeeDO; import com.cool.store.entity.FranchiseFeeDO;
import com.cool.store.enums.FranchiseBrandEnum;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import org.apache.commons.lang3.StringUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
@@ -52,22 +52,18 @@ public class PushFranchiseFeeRequest {
private Integer joinBrand; private Integer joinBrand;
public PushFranchiseFeeRequest(){} public PushFranchiseFeeRequest(){}
public PushFranchiseFeeRequest(Long shopId, String partnerName, FranchiseFeeDO franchiseFeeDO, String brand){ public PushFranchiseFeeRequest(Long shopId, String partnerName, FranchiseFeeDO franchiseFeeDO){
this.setShopId(shopId); this.setShopId(shopId);
this.setPartnerName(partnerName); this.setPartnerName(partnerName);
this.setBillId(franchiseFeeDO.getId().intValue()); this.setBillId(franchiseFeeDO.getId().intValue());
if (Integer.valueOf(brand).equals(FranchiseBrandEnum.ZXSMZ.getCode())) {
this.setFranchiseFee(convertToBig(franchiseFeeDO.getCashierFee()));
this.setBond(convertToBig(franchiseFeeDO.getLoanMargin()));
this.setFirstYearManageFee(BigDecimal.ZERO);
this.setFirstYearFee(BigDecimal.ZERO);
this.setDesignFee(convertToBig(franchiseFeeDO.getPerformanceBond()));
} else {
this.setFranchiseFee(convertToBig(franchiseFeeDO.getYearFranchiseFee())); this.setFranchiseFee(convertToBig(franchiseFeeDO.getYearFranchiseFee()));
this.setBond(convertToBig(franchiseFeeDO.getLoanMargin())); this.setBond(convertToBig(franchiseFeeDO.getLoanMargin()));
this.setFirstYearManageFee(convertToBig(franchiseFeeDO.getFirstYearManageFee())); this.setFirstYearManageFee(convertToBig(franchiseFeeDO.getFirstYearManageFee()));
this.setFirstYearFee(convertToBig(franchiseFeeDO.getFirstYearFee())); this.setFirstYearFee(convertToBig(franchiseFeeDO.getFirstYearFee()));
this.setDesignFee(convertToBig(franchiseFeeDO.getPerformanceBond())); this.setDesignFee(convertToBig(franchiseFeeDO.getPerformanceBond()));
// 三明治收银费
if (StringUtils.isNotBlank(franchiseFeeDO.getCashierFee())) {
this.setFranchiseFee(convertToBig(franchiseFeeDO.getCashierFee()));
} }
this.setTotalFee(this.getBond() this.setTotalFee(this.getBond()
.add(this.getFranchiseFee()) .add(this.getFranchiseFee())

View File

@@ -75,6 +75,13 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService {
if (!shopStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_70.getShopSubStageStatus())){ if (!shopStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_70.getShopSubStageStatus())){
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE); 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(); FranchiseFeeDO franchiseFeeDO = request.toFranchiseFeeDO();
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_71); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_71);
if (request.getId() != null) { if (request.getId() != null) {
@@ -89,11 +96,10 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService {
franchiseFeeDO.setCreateTime(new Date()); franchiseFeeDO.setCreateTime(new Date());
franchiseFeeMapper.insertSelective(franchiseFeeDO); franchiseFeeMapper.insertSelective(franchiseFeeDO);
} }
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(request.getShopId());
LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(shopInfoDO.getLineId()); LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(shopInfoDO.getLineId());
commonService.sendSms(lineInfoDO.getMobile(), SMSMsgEnum.PAY_FRANCHISE_FEES); commonService.sendSms(lineInfoDO.getMobile(), SMSMsgEnum.PAY_FRANCHISE_FEES);
//推送加盟费信息到新管家 //推送加盟费信息到新管家
PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO, shopInfoDO.getFranchiseBrand()); PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO);
feeRequest.setJoinBrand(Integer.valueOf(shopInfoDO.getFranchiseBrand())); feeRequest.setJoinBrand(Integer.valueOf(shopInfoDO.getFranchiseBrand()));
pushService.pushFranchiseFeeToXGJ(feeRequest); pushService.pushFranchiseFeeToXGJ(feeRequest);
return true; return true;
@@ -116,7 +122,7 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService {
LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(shopInfoDO.getLineId()); LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(shopInfoDO.getLineId());
//推送加盟费信息到新管家 //推送加盟费信息到新管家
franchiseFeeDO.setCreateTime(franchiseFeeDO1.getCreateTime()); franchiseFeeDO.setCreateTime(franchiseFeeDO1.getCreateTime());
PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO, shopInfoDO.getFranchiseBrand()); PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO);
feeRequest.setJoinBrand(Integer.valueOf(shopInfoDO.getFranchiseBrand())); feeRequest.setJoinBrand(Integer.valueOf(shopInfoDO.getFranchiseBrand()));
pushService.pushFranchiseFeeToXGJ(feeRequest); pushService.pushFranchiseFeeToXGJ(feeRequest);
return true; return true;

View File

@@ -559,7 +559,8 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
.add(convertToBig(franchiseFeeDO.getLoanMargin())) .add(convertToBig(franchiseFeeDO.getLoanMargin()))
.add(convertToBig(franchiseFeeDO.getFirstYearFee())) .add(convertToBig(franchiseFeeDO.getFirstYearFee()))
.add(convertToBig(franchiseFeeDO.getFirstYearManageFee())) .add(convertToBig(franchiseFeeDO.getFirstYearManageFee()))
.add(convertToBig(franchiseFeeDO.getPerformanceBond())); .add(convertToBig(franchiseFeeDO.getPerformanceBond()))
.add(convertToBig(franchiseFeeDO.getCashierFee()));
addSignFranchiseResponse.setContractAmount(total.toString()); addSignFranchiseResponse.setContractAmount(total.toString());
} }
addSignFranchiseResponse.setMobile(lineInfoDO.getMobile()); addSignFranchiseResponse.setMobile(lineInfoDO.getMobile());

View File

@@ -390,7 +390,7 @@ public class PCTestController {
FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(shopId); FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(shopId);
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(shopId); ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(shopId);
LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId()); LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId());
PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO, shopInfoDO.getFranchiseBrand()); PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO);
pushService.pushFranchiseFeeToXGJ(feeRequest); pushService.pushFranchiseFeeToXGJ(feeRequest);
return ResponseResult.success(Boolean.TRUE); return ResponseResult.success(Boolean.TRUE);
} }
@@ -418,7 +418,7 @@ public class PCTestController {
FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(x.getShopId()); FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(x.getShopId());
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(x.getShopId()); ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(x.getShopId());
LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId()); LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId());
PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO, shopInfoDO.getFranchiseBrand()); PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO);
pushService.pushFranchiseFeeToXGJ(feeRequest); pushService.pushFranchiseFeeToXGJ(feeRequest);
} catch (Exception e) { } catch (Exception e) {
log.error("推送数据失败 shopId {},异常信息:{}",x,e.getMessage()); log.error("推送数据失败 shopId {},异常信息:{}",x,e.getMessage());
@@ -434,7 +434,7 @@ public class PCTestController {
FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(x.getShopId()); FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(x.getShopId());
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(x.getShopId()); ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(x.getShopId());
LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId()); LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId());
PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO, shopInfoDO.getFranchiseBrand()); PushFranchiseFeeRequest feeRequest = new PushFranchiseFeeRequest(shopInfoDO.getId(), lineInfoDO.getUsername(), franchiseFeeDO);
pushService.pushFranchiseFeeToXGJ(feeRequest); pushService.pushFranchiseFeeToXGJ(feeRequest);
List<LinePayDO> franchiseFeePayInfoByShopId = linePayDAO.getFranchiseFeePayInfoByShopId(x.getShopId()); List<LinePayDO> franchiseFeePayInfoByShopId = linePayDAO.getFranchiseFeePayInfoByShopId(x.getShopId());
franchiseFeePayInfoByShopId.forEach(y->{ franchiseFeePayInfoByShopId.forEach(y->{

View File

@@ -20,6 +20,8 @@ import com.cool.store.job.XxlJobHandler;
import com.cool.store.mapper.HyOpenAreaInfoMapper; import com.cool.store.mapper.HyOpenAreaInfoMapper;
import com.cool.store.request.ShopListSuccessOpenRequest; import com.cool.store.request.ShopListSuccessOpenRequest;
import com.cool.store.request.xfsgFirstOrderListRequest; import com.cool.store.request.xfsgFirstOrderListRequest;
import com.cool.store.request.xgj.FranchiseFeeCallBackRequest;
import com.cool.store.request.xgj.ReceiptCallBackRequest;
import com.cool.store.response.MiniShopsResponse; import com.cool.store.response.MiniShopsResponse;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
import com.cool.store.response.caipin.StoreUserResponse; import com.cool.store.response.caipin.StoreUserResponse;
@@ -39,6 +41,7 @@ import org.springframework.web.multipart.MultipartFile;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.ByteArrayOutputStream; import java.io.ByteArrayOutputStream;
import java.math.BigDecimal;
import java.time.LocalDate; import java.time.LocalDate;
import java.time.LocalTime; import java.time.LocalTime;
import java.time.temporal.ChronoUnit; import java.time.temporal.ChronoUnit;
@@ -85,6 +88,27 @@ public class TestController {
ThirdFoodService thirdFoodService; ThirdFoodService thirdFoodService;
@Autowired @Autowired
StoreService storeService; StoreService storeService;
@Resource
LinePayDAO linePayDAO;
@Resource
OpenApiService openApiService;
@PostMapping("/testXgjCallback")
public ResponseResult<Boolean> testXgjCallback(Long linePayId) {
LinePayDO linePayDO = linePayDAO.getById(linePayId);
ReceiptCallBackRequest receiptRequest = new ReceiptCallBackRequest();
receiptRequest.setReceiptId(linePayDO.getPaymentReceiptCode());
receiptRequest.setClaimStatus(1);
openApiService.changeReceiptStatus(receiptRequest);
FranchiseFeeCallBackRequest franchiseRequest = new FranchiseFeeCallBackRequest();
franchiseRequest.setShopId(linePayDO.getShopId());
franchiseRequest.setPayableFee(linePayDO.getAmount());
franchiseRequest.setPaidFees(linePayDO.getAmount());
franchiseRequest.setRemainingFee(BigDecimal.ZERO);
franchiseRequest.setPaymentStatus(2);
openApiService.changePaymentStatus(franchiseRequest);
return ResponseResult.success(true);
}
@PostMapping("/getFirstOrders") @PostMapping("/getFirstOrders")
public ResponseResult<xfsgFirstOderListResponse> getFirstOrders(@RequestBody xfsgFirstOrderListRequest storeCodeList) { public ResponseResult<xfsgFirstOderListResponse> getFirstOrders(@RequestBody xfsgFirstOrderListRequest storeCodeList) {