feat:正新
This commit is contained in:
@@ -292,6 +292,7 @@ public enum ErrorCodeEnum {
|
||||
PRODUCTS_DISCARDED(1511034,"产品已报销,无法操作",null),
|
||||
PRODUCTS_SALES_COMPLETED(1511034,"含有销售完成的产品,无法批量报销",null),
|
||||
STORE_IS_EXIST(1511035,"该门店已存在",null),
|
||||
FEE_NOT_CONSISTENT(1511036,"合同金额与缴费账单金额不一致,请确定!",null),
|
||||
|
||||
|
||||
MESSAGE_TEMPLATE_NOT_SUPPORT_EDIT(1610001,"当前消息已发布,不支持编辑!",null),
|
||||
|
||||
@@ -1,14 +1,8 @@
|
||||
package com.cool.store.dto;
|
||||
|
||||
import com.cool.store.dto.contract.PushContractDTO;
|
||||
import com.cool.store.vo.BaseInfoVO;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import java.math.BigDecimal;
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* @Author suzhuhong
|
||||
@@ -46,4 +40,40 @@ public class ContractInformationDTO {
|
||||
@ApiModelProperty("合同编号")
|
||||
private String contractNo;
|
||||
|
||||
@ApiModelProperty(name = "合同加盟费")
|
||||
private String contractFranchiseFee;
|
||||
|
||||
@ApiModelProperty(name = "合同管理费")
|
||||
private String contractManageFee;
|
||||
|
||||
@ApiModelProperty(name = "合同品牌使用费")
|
||||
private String contractBrandUseFee;
|
||||
|
||||
@ApiModelProperty(name = "合同设计费")
|
||||
private String contractPerformanceBond;
|
||||
|
||||
@ApiModelProperty(name = "合同保证金")
|
||||
private String contractLoanMargin;
|
||||
|
||||
@ApiModelProperty(name = "合同系统使用费")
|
||||
private String contractSysUserFee;
|
||||
|
||||
@ApiModelProperty(name = "加盟来源")
|
||||
private String joinSource;
|
||||
|
||||
@ApiModelProperty(name = "签约形式")
|
||||
private String signModality;
|
||||
|
||||
@ApiModelProperty(name = "加盟费频率")
|
||||
private Integer franchiseFeeFrequency;
|
||||
|
||||
@ApiModelProperty(name = "品牌使用费频率")
|
||||
private Integer brandUseFeeFrequency;
|
||||
|
||||
@ApiModelProperty(name = "管理费频率")
|
||||
private Integer manageFeeFrequency;
|
||||
|
||||
@ApiModelProperty(name = "管理费频率")
|
||||
private String discountAmount;
|
||||
|
||||
}
|
||||
|
||||
@@ -99,4 +99,76 @@ public class SignFranchiseDO {
|
||||
|
||||
@Column(name = "old_shop_code")
|
||||
private String oldShopCode;
|
||||
|
||||
/**
|
||||
* 合同加盟费
|
||||
*/
|
||||
@Column(name = "contract_franchise_fee")
|
||||
private String contractFranchiseFee;
|
||||
|
||||
/**
|
||||
* 合同管理费
|
||||
*/
|
||||
@Column(name = "contract_manage_fee")
|
||||
private String contractManageFee;
|
||||
|
||||
/**
|
||||
* 合同品牌使用费
|
||||
*/
|
||||
@Column(name = "contract_brand_use_fee")
|
||||
private String contractBrandUseFee;
|
||||
|
||||
/**
|
||||
* 合同设计费
|
||||
*/
|
||||
@Column(name = "contract_performance_bond")
|
||||
private String contractPerformanceBond;
|
||||
|
||||
/**
|
||||
* 合同保证金
|
||||
*/
|
||||
@Column(name = "contract_loan_margin")
|
||||
private String contractLoanMargin;
|
||||
|
||||
/**
|
||||
* 合同系统使用费
|
||||
*/
|
||||
@Column(name = "contract_sys_user_fee")
|
||||
private String contractSysUserFee;
|
||||
|
||||
/**
|
||||
* 加盟来源
|
||||
*/
|
||||
@Column(name = "join_source")
|
||||
private String joinSource;
|
||||
|
||||
/**
|
||||
* 签约形式
|
||||
*/
|
||||
@Column(name = "sign_modality")
|
||||
private String signModality;
|
||||
|
||||
/**
|
||||
* 加盟费频率
|
||||
*/
|
||||
@Column(name = "franchise_fee_frequency")
|
||||
private Integer franchiseFeeFrequency;
|
||||
|
||||
/**
|
||||
* 品牌使用费频率
|
||||
*/
|
||||
@Column(name = "brand_use_fee_frequency")
|
||||
private Integer brandUseFeeFrequency;
|
||||
|
||||
/**
|
||||
* 管理费频率
|
||||
*/
|
||||
@Column(name = "manage_fee_frequency")
|
||||
private Integer manageFeeFrequency;
|
||||
|
||||
/**
|
||||
* 加盟费折扣金额
|
||||
*/
|
||||
@Column(name = "discount_amount")
|
||||
private String discountAmount;
|
||||
}
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
package com.cool.store.request;
|
||||
|
||||
import com.cool.store.entity.SignFranchiseDO;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiModel;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
@@ -151,6 +152,82 @@ public class AddSignFranchiseRequest {
|
||||
@ApiModelProperty("老店编码 签约类型选择老店转加盟时有")
|
||||
private String oldShopCode;
|
||||
|
||||
@ApiModelProperty("合同加盟费")
|
||||
@NotBlank(message = "合同加盟费不能为空")
|
||||
private String contractFranchiseFee;
|
||||
|
||||
/**
|
||||
* 合同管理费
|
||||
*/
|
||||
@ApiModelProperty("合同管理费")
|
||||
@NotBlank(message = "合同管理费不能为空")
|
||||
private String contractManageFee;
|
||||
|
||||
/**
|
||||
* 合同品牌使用费
|
||||
*/
|
||||
@ApiModelProperty("合同品牌使用费")
|
||||
@NotBlank(message = "合同品牌使用费不能为空")
|
||||
private String contractBrandUseFee;
|
||||
|
||||
/**
|
||||
* 合同设计费
|
||||
*/
|
||||
@ApiModelProperty("合同设计费")
|
||||
@NotBlank(message = "合同设计费不能为空")
|
||||
private String contractPerformanceBond;
|
||||
|
||||
/**
|
||||
* 合同保证金
|
||||
*/
|
||||
@ApiModelProperty("合同保证金")
|
||||
@NotBlank(message = "合同保证金不能为空")
|
||||
private String contractLoanMargin;
|
||||
|
||||
/**
|
||||
* 合同系统使用费
|
||||
*/
|
||||
@ApiModelProperty("合同系统使用费")
|
||||
@NotBlank(message = "合同系统使用费不能为空")
|
||||
private String contractSysUserFee;
|
||||
|
||||
/**
|
||||
* 加盟来源
|
||||
*/
|
||||
@ApiModelProperty("加盟来源")
|
||||
private String joinSource;
|
||||
|
||||
/**
|
||||
* 签约形式
|
||||
*/
|
||||
@ApiModelProperty("签约形式")
|
||||
private String signModality;
|
||||
|
||||
/**
|
||||
* 加盟费频率
|
||||
*/
|
||||
@ApiModelProperty("加盟费频率")
|
||||
private Integer franchiseFeeFrequency;
|
||||
|
||||
/**
|
||||
* 品牌使用费频率
|
||||
*/
|
||||
@ApiModelProperty("品牌使用费频率")
|
||||
private Integer brandUseFeeFrequency;
|
||||
|
||||
/**
|
||||
* 管理费频率
|
||||
*/
|
||||
@ApiModelProperty("管理费频率")
|
||||
private Integer manageFeeFrequency;
|
||||
|
||||
/**
|
||||
* 加盟费折扣金额
|
||||
*/
|
||||
@ApiModelProperty("加盟费折扣金额")
|
||||
private String discountAmount;
|
||||
|
||||
|
||||
|
||||
|
||||
public SignFranchiseDO toSignFranchiseDO() {
|
||||
@@ -184,6 +261,18 @@ public class AddSignFranchiseRequest {
|
||||
signFranchiseDO.setIntroductionAward(this.introductionAward);
|
||||
signFranchiseDO.setPartnershipSignatoryFirstWhichStore(this.partnershipSignatoryFirstWhichStore);
|
||||
signFranchiseDO.setUnifiedManagement(this.unifiedManagement);
|
||||
signFranchiseDO.setContractFranchiseFee(this.contractFranchiseFee);
|
||||
signFranchiseDO.setContractManageFee(this.contractManageFee);
|
||||
signFranchiseDO.setContractBrandUseFee(this.contractBrandUseFee);
|
||||
signFranchiseDO.setContractPerformanceBond(this.contractPerformanceBond);
|
||||
signFranchiseDO.setContractLoanMargin(this.contractLoanMargin);
|
||||
signFranchiseDO.setContractSysUserFee(this.contractSysUserFee);
|
||||
signFranchiseDO.setJoinSource(this.joinSource);
|
||||
signFranchiseDO.setSignModality(this.signModality);
|
||||
signFranchiseDO.setFranchiseFeeFrequency(this.franchiseFeeFrequency);
|
||||
signFranchiseDO.setBrandUseFeeFrequency(this.brandUseFeeFrequency);
|
||||
signFranchiseDO.setManageFeeFrequency(this.manageFeeFrequency);
|
||||
signFranchiseDO.setDiscountAmount(this.discountAmount);
|
||||
return signFranchiseDO;
|
||||
}
|
||||
|
||||
|
||||
@@ -185,6 +185,10 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
||||
if (Objects.isNull(request.getShopId())) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_ID_NOT_EXIST);
|
||||
}
|
||||
//校验金额
|
||||
if (!feeCheck(request)){
|
||||
throw new ServiceException(ErrorCodeEnum.FEE_NOT_CONSISTENT);
|
||||
}
|
||||
SignFranchiseDO isExist = signFranchiseMapper.selectByShopId(request.getShopId());
|
||||
if (Objects.nonNull(isExist) && Objects.isNull(request.getId())) {
|
||||
throw new ServiceException(ErrorCodeEnum.DUPLICATE_SUBMISSION);
|
||||
@@ -268,6 +272,10 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
||||
if (Objects.isNull(request.getShopId())) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_ID_NOT_EXIST);
|
||||
}
|
||||
//校验金额
|
||||
if (!feeCheck(request)){
|
||||
throw new ServiceException(ErrorCodeEnum.FEE_NOT_CONSISTENT);
|
||||
}
|
||||
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(request.getShopId());
|
||||
PointInfoDO pointInfoById = pointInfoDAO.getPointInfoById(shopInfoDO.getPointId());
|
||||
SignFranchiseDO signFranchiseDO = request.toSignFranchiseDO();
|
||||
@@ -298,6 +306,39 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
/**
|
||||
* 费用校验
|
||||
* @param request
|
||||
* @return
|
||||
*/
|
||||
private Boolean feeCheck(AddSignFranchiseRequest request){
|
||||
//查询账单金额
|
||||
FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(request.getShopId());
|
||||
if (!request.getContractFranchiseFee().equals(franchiseFeeDO.getYearFranchiseFee())){
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
//合同设计费
|
||||
if (!request.getContractPerformanceBond().equals(franchiseFeeDO.getPerformanceBond())){
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
//品牌使用费
|
||||
if (!request.getContractBrandUseFee().equals(franchiseFeeDO.getFirstYearFee())){
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
//合同保证金
|
||||
if (!request.getContractLoanMargin().equals(franchiseFeeDO.getLoanMargin())){
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
//合同管理费
|
||||
if (!request.getContractManageFee().equals(franchiseFeeDO.getFirstYearManageFee())){
|
||||
return Boolean.FALSE;
|
||||
}
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
private void updateShopAndPoint(AddSignFranchiseRequest request, ShopInfoDO shopInfoDO, PointInfoDO pointInfoById) {
|
||||
//店铺信息
|
||||
shopInfoDO.setManagerRegionId(request.getManagerRegionId());
|
||||
@@ -506,6 +547,21 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
||||
contractInformationDTO.setFirstYearManagementFee(franchiseFeeDO.getFirstYearManageFee());
|
||||
contractInformationDTO.setYearFranchiseFee(franchiseFeeDO.getYearFranchiseFee());
|
||||
contractInformationDTO.setPerformanceBond(franchiseFeeDO.getPerformanceBond());
|
||||
|
||||
contractInformationDTO.setContractFranchiseFee(signFranchiseDO.getContractFranchiseFee());
|
||||
contractInformationDTO.setContractManageFee(signFranchiseDO.getContractManageFee());
|
||||
contractInformationDTO.setContractBrandUseFee(signFranchiseDO.getContractBrandUseFee());
|
||||
contractInformationDTO.setContractPerformanceBond(signFranchiseDO.getContractPerformanceBond());
|
||||
contractInformationDTO.setContractLoanMargin(signFranchiseDO.getContractLoanMargin());
|
||||
contractInformationDTO.setContractSysUserFee(signFranchiseDO.getContractSysUserFee());
|
||||
contractInformationDTO.setSignModality(signFranchiseDO.getSignModality());
|
||||
contractInformationDTO.setFranchiseFeeFrequency(signFranchiseDO.getFranchiseFeeFrequency());
|
||||
contractInformationDTO.setBrandUseFeeFrequency(signFranchiseDO.getBrandUseFeeFrequency());
|
||||
contractInformationDTO.setJoinSource(signFranchiseDO.getJoinSource());
|
||||
contractInformationDTO.setManageFeeFrequency(signFranchiseDO.getManageFeeFrequency());
|
||||
contractInformationDTO.setDiscountAmount(signFranchiseDO.getDiscountAmount());
|
||||
|
||||
|
||||
//老店转加盟(也叫直营转加盟)
|
||||
if (SignTypeEnum.DIRECT_SALES_TO_JOINING.getCode().equals(signFranchiseDO.getSignType())){
|
||||
contractInformationDTO.setOldShopCode(signFranchiseDO.getOldShopCode());
|
||||
|
||||
Reference in New Issue
Block a user