feat:正新
This commit is contained in:
@@ -292,6 +292,7 @@ public enum ErrorCodeEnum {
|
|||||||
PRODUCTS_DISCARDED(1511034,"产品已报销,无法操作",null),
|
PRODUCTS_DISCARDED(1511034,"产品已报销,无法操作",null),
|
||||||
PRODUCTS_SALES_COMPLETED(1511034,"含有销售完成的产品,无法批量报销",null),
|
PRODUCTS_SALES_COMPLETED(1511034,"含有销售完成的产品,无法批量报销",null),
|
||||||
STORE_IS_EXIST(1511035,"该门店已存在",null),
|
STORE_IS_EXIST(1511035,"该门店已存在",null),
|
||||||
|
FEE_NOT_CONSISTENT(1511036,"合同金额与缴费账单金额不一致,请确定!",null),
|
||||||
|
|
||||||
|
|
||||||
MESSAGE_TEMPLATE_NOT_SUPPORT_EDIT(1610001,"当前消息已发布,不支持编辑!",null),
|
MESSAGE_TEMPLATE_NOT_SUPPORT_EDIT(1610001,"当前消息已发布,不支持编辑!",null),
|
||||||
|
|||||||
@@ -1,14 +1,8 @@
|
|||||||
package com.cool.store.dto;
|
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 io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.math.BigDecimal;
|
|
||||||
import java.util.Date;
|
|
||||||
import java.util.List;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @Author suzhuhong
|
* @Author suzhuhong
|
||||||
@@ -46,4 +40,40 @@ public class ContractInformationDTO {
|
|||||||
@ApiModelProperty("合同编号")
|
@ApiModelProperty("合同编号")
|
||||||
private String contractNo;
|
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")
|
@Column(name = "old_shop_code")
|
||||||
private String oldShopCode;
|
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;
|
package com.cool.store.request;
|
||||||
|
|
||||||
import com.cool.store.entity.SignFranchiseDO;
|
import com.cool.store.entity.SignFranchiseDO;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
import io.swagger.annotations.ApiModel;
|
import io.swagger.annotations.ApiModel;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
@@ -151,6 +152,82 @@ public class AddSignFranchiseRequest {
|
|||||||
@ApiModelProperty("老店编码 签约类型选择老店转加盟时有")
|
@ApiModelProperty("老店编码 签约类型选择老店转加盟时有")
|
||||||
private String oldShopCode;
|
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() {
|
public SignFranchiseDO toSignFranchiseDO() {
|
||||||
@@ -184,6 +261,18 @@ public class AddSignFranchiseRequest {
|
|||||||
signFranchiseDO.setIntroductionAward(this.introductionAward);
|
signFranchiseDO.setIntroductionAward(this.introductionAward);
|
||||||
signFranchiseDO.setPartnershipSignatoryFirstWhichStore(this.partnershipSignatoryFirstWhichStore);
|
signFranchiseDO.setPartnershipSignatoryFirstWhichStore(this.partnershipSignatoryFirstWhichStore);
|
||||||
signFranchiseDO.setUnifiedManagement(this.unifiedManagement);
|
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;
|
return signFranchiseDO;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -185,6 +185,10 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
|||||||
if (Objects.isNull(request.getShopId())) {
|
if (Objects.isNull(request.getShopId())) {
|
||||||
throw new ServiceException(ErrorCodeEnum.SHOP_ID_NOT_EXIST);
|
throw new ServiceException(ErrorCodeEnum.SHOP_ID_NOT_EXIST);
|
||||||
}
|
}
|
||||||
|
//校验金额
|
||||||
|
if (!feeCheck(request)){
|
||||||
|
throw new ServiceException(ErrorCodeEnum.FEE_NOT_CONSISTENT);
|
||||||
|
}
|
||||||
SignFranchiseDO isExist = signFranchiseMapper.selectByShopId(request.getShopId());
|
SignFranchiseDO isExist = signFranchiseMapper.selectByShopId(request.getShopId());
|
||||||
if (Objects.nonNull(isExist) && Objects.isNull(request.getId())) {
|
if (Objects.nonNull(isExist) && Objects.isNull(request.getId())) {
|
||||||
throw new ServiceException(ErrorCodeEnum.DUPLICATE_SUBMISSION);
|
throw new ServiceException(ErrorCodeEnum.DUPLICATE_SUBMISSION);
|
||||||
@@ -268,6 +272,10 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
|||||||
if (Objects.isNull(request.getShopId())) {
|
if (Objects.isNull(request.getShopId())) {
|
||||||
throw new ServiceException(ErrorCodeEnum.SHOP_ID_NOT_EXIST);
|
throw new ServiceException(ErrorCodeEnum.SHOP_ID_NOT_EXIST);
|
||||||
}
|
}
|
||||||
|
//校验金额
|
||||||
|
if (!feeCheck(request)){
|
||||||
|
throw new ServiceException(ErrorCodeEnum.FEE_NOT_CONSISTENT);
|
||||||
|
}
|
||||||
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(request.getShopId());
|
ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(request.getShopId());
|
||||||
PointInfoDO pointInfoById = pointInfoDAO.getPointInfoById(shopInfoDO.getPointId());
|
PointInfoDO pointInfoById = pointInfoDAO.getPointInfoById(shopInfoDO.getPointId());
|
||||||
SignFranchiseDO signFranchiseDO = request.toSignFranchiseDO();
|
SignFranchiseDO signFranchiseDO = request.toSignFranchiseDO();
|
||||||
@@ -298,6 +306,39 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
|||||||
return Boolean.TRUE;
|
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) {
|
private void updateShopAndPoint(AddSignFranchiseRequest request, ShopInfoDO shopInfoDO, PointInfoDO pointInfoById) {
|
||||||
//店铺信息
|
//店铺信息
|
||||||
shopInfoDO.setManagerRegionId(request.getManagerRegionId());
|
shopInfoDO.setManagerRegionId(request.getManagerRegionId());
|
||||||
@@ -506,6 +547,21 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu
|
|||||||
contractInformationDTO.setFirstYearManagementFee(franchiseFeeDO.getFirstYearManageFee());
|
contractInformationDTO.setFirstYearManagementFee(franchiseFeeDO.getFirstYearManageFee());
|
||||||
contractInformationDTO.setYearFranchiseFee(franchiseFeeDO.getYearFranchiseFee());
|
contractInformationDTO.setYearFranchiseFee(franchiseFeeDO.getYearFranchiseFee());
|
||||||
contractInformationDTO.setPerformanceBond(franchiseFeeDO.getPerformanceBond());
|
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())){
|
if (SignTypeEnum.DIRECT_SALES_TO_JOINING.getCode().equals(signFranchiseDO.getSignType())){
|
||||||
contractInformationDTO.setOldShopCode(signFranchiseDO.getOldShopCode());
|
contractInformationDTO.setOldShopCode(signFranchiseDO.getOldShopCode());
|
||||||
|
|||||||
Reference in New Issue
Block a user