1.分销员添加结算银行信息

2.电话校验支持手机号
This commit is contained in:
lifenlong 2021-06-30 12:02:35 +08:00
parent 46f216c191
commit 800437473d
7 changed files with 89 additions and 24 deletions

View File

@ -5,6 +5,7 @@ import cn.lili.common.security.context.UserContext;
import cn.lili.common.vo.ResultMessage;
import cn.lili.modules.distribution.entity.dos.Distribution;
import cn.lili.modules.distribution.entity.dos.DistributionOrder;
import cn.lili.modules.distribution.entity.dto.DistributionApplyDTO;
import cn.lili.modules.distribution.entity.vos.DistributionOrderSearchParams;
import cn.lili.modules.distribution.service.DistributionOrderService;
import cn.lili.modules.distribution.service.DistributionService;
@ -41,13 +42,9 @@ public class DistributionBuyerController {
//申请分销员
@ApiOperation(value = "申请分销员")
@ApiImplicitParams({
@ApiImplicitParam(name = "name", value = "姓名", required = true, paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "idNumber", value = "身份证号", required = true, paramType = "query", dataType = "String")
})
@PostMapping
public ResultMessage<Object> applyDistribution(@RequestParam String name, @RequestParam String idNumber) {
return ResultUtil.data(distributionService.applyDistribution(name, idNumber));
public ResultMessage<Object> applyDistribution(DistributionApplyDTO distributionApplyDTO) {
return ResultUtil.data(distributionService.applyDistribution(distributionApplyDTO));
}
@ApiOperation(value = "获取分销员分页订单列表")

View File

@ -8,26 +8,30 @@ import javax.validation.ConstraintValidatorContext;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
/**
* 电话校验
* 支持手机号+电话同时校验
*/
public class MobileValidator implements ConstraintValidator<Mobile, String> {
@Override
public boolean isValid(String value, ConstraintValidatorContext constraintValidatorContext) {
Pattern p1 = null,p2 = null;
Pattern p1 = null, p2 = null, p3 = null;
Matcher m = null;
boolean b = false;
p1 = Pattern.compile("^[0][1-9]{2,3}-[0-9]{5,10}$"); // 验证带区号的
p1 = Pattern.compile("0\\d{2,3}[-]?\\d{7,8}|0\\d{2,3}\\s?\\d{7,8}|13[0-9]\\d{8}|15[1089]\\d{8}"); // 验证带区号的
p2 = Pattern.compile("^[1-9]{1}[0-9]{5,8}$"); // 验证没有区号的
if(value.length() >9)
{ m = p1.matcher(value);
b = m.matches();
}else{
p3 = Pattern.compile("^0?(13[0-9]|14[0-9]|15[0-9]|16[0-9]|17[0-9]|18[0-9]|19[0-9])[0-9]{8}$");// 验证手机号
if (value.length() == 11) {
m = p3.matcher(value);
} else if (value.length() > 9) {
m = p1.matcher(value);
} else {
m = p2.matcher(value);
b = m.matches();
}
return b;
return m.matches();
}
@Override
public void initialize(Mobile constraintAnnotation) {

View File

@ -1,6 +1,8 @@
package cn.lili.modules.distribution.entity.dos;
import cn.lili.base.BaseEntity;
import cn.lili.common.utils.BeanUtil;
import cn.lili.modules.distribution.entity.dto.DistributionApplyDTO;
import cn.lili.modules.distribution.entity.enums.DistributionStatusEnum;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.annotations.ApiModel;
@ -10,6 +12,8 @@ import lombok.NoArgsConstructor;
import javax.persistence.Entity;
import javax.persistence.Table;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
/**
* 分销员对象
@ -28,13 +32,12 @@ public class Distribution extends BaseEntity {
private static final long serialVersionUID = -4878132663540847325L;
public Distribution(String memberId, String memberName, String name, String idNumber) {
public Distribution(String memberId, String memberName, DistributionApplyDTO distributionApplyDTO) {
this.memberId = memberId;
this.memberName = memberName;
this.name = name;
this.idNumber = idNumber;
distributionOrderCount=0;
this.distributionStatus = DistributionStatusEnum.APPLY.name();
BeanUtil.copyProperties(distributionApplyDTO, this);
}
@ApiModelProperty(value = "会员id")
@ -67,4 +70,19 @@ public class Distribution extends BaseEntity {
@ApiModelProperty(value = "分销员状态", required = true)
private String distributionStatus;
@Size(min = 1, max = 200, message = "结算银行开户行名称长度为1-200位")
@NotBlank(message = "结算银行开户行名称不能为空")
@ApiModelProperty(value = "结算银行开户行名称")
private String settlementBankAccountName;
@Size(min = 1, max = 200, message = "结算银行开户账号长度为1-200位")
@NotBlank(message = "结算银行开户账号不能为空")
@ApiModelProperty(value = "结算银行开户账号")
private String settlementBankAccountNum;
@Size(min = 1, max = 200, message = "结算银行开户支行名称长度为1-200位")
@NotBlank(message = "结算银行开户支行名称不能为空")
@ApiModelProperty(value = "结算银行开户支行名称")
private String settlementBankBranchName;
}

View File

@ -0,0 +1,40 @@
package cn.lili.modules.distribution.entity.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.Size;
/**
* 分销员申请DTO
* @author Bulbasaur
* @date: 2021/6/30 11:07 上午
*
*/
@Data
public class DistributionApplyDTO {
@NotBlank(message = "姓名不能为空")
@ApiModelProperty(value = "会员姓名")
private String name;
@NotBlank(message = "身份证号不能为空")
@ApiModelProperty(value = "身份证号")
private String idNumber;
@Size(min = 1, max = 200, message = "结算银行开户行名称长度为1-200位")
@NotBlank(message = "结算银行开户行名称不能为空")
@ApiModelProperty(value = "结算银行开户行名称")
private String settlementBankAccountName;
@Size(min = 1, max = 200, message = "结算银行开户账号长度为1-200位")
@NotBlank(message = "结算银行开户账号不能为空")
@ApiModelProperty(value = "结算银行开户账号")
private String settlementBankAccountNum;
@Size(min = 1, max = 200, message = "结算银行开户支行名称长度为1-200位")
@NotBlank(message = "结算银行开户支行名称不能为空")
@ApiModelProperty(value = "结算银行开户支行名称")
private String settlementBankBranchName;
}

View File

@ -2,6 +2,7 @@ package cn.lili.modules.distribution.service;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.distribution.entity.dos.Distribution;
import cn.lili.modules.distribution.entity.dto.DistributionApplyDTO;
import cn.lili.modules.distribution.entity.dto.DistributionSearchParams;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
@ -36,7 +37,7 @@ public interface DistributionService extends IService<Distribution> {
*
* @return
*/
Distribution applyDistribution(String name, String idNumber);
Distribution applyDistribution(DistributionApplyDTO distributionApplyDTO);
/**
* 审核分销申请

View File

@ -6,9 +6,11 @@ import cn.lili.common.cache.CachePrefix;
import cn.lili.common.enums.ResultCode;
import cn.lili.common.exception.ServiceException;
import cn.lili.common.security.context.UserContext;
import cn.lili.common.utils.BeanUtil;
import cn.lili.common.utils.PageUtil;
import cn.lili.common.vo.PageVO;
import cn.lili.modules.distribution.entity.dos.Distribution;
import cn.lili.modules.distribution.entity.dto.DistributionApplyDTO;
import cn.lili.modules.distribution.entity.dto.DistributionSearchParams;
import cn.lili.modules.distribution.entity.enums.DistributionStatusEnum;
import cn.lili.modules.distribution.mapper.DistributionMapper;
@ -64,7 +66,7 @@ public class DistributionServiceImpl extends ServiceImpl<DistributionMapper, Dis
}
@Override
public Distribution applyDistribution(String name, String idNumber) {
public Distribution applyDistribution(DistributionApplyDTO distributionApplyDTO) {
//检查分销开关
checkDistributionSetting();
@ -78,8 +80,7 @@ public class DistributionServiceImpl extends ServiceImpl<DistributionMapper, Dis
throw new ServiceException(ResultCode.DISTRIBUTION_IS_APPLY);
}else if(distribution.getDistributionStatus().equals(DistributionStatusEnum.REFUSE.name())){
distribution.setDistributionStatus(DistributionStatusEnum.APPLY.name());
distribution.setName(name);
distribution.setIdNumber(idNumber);
BeanUtil.copyProperties(distributionApplyDTO,distribution);
this.updateById(distribution);
return distribution;
}
@ -88,7 +89,7 @@ public class DistributionServiceImpl extends ServiceImpl<DistributionMapper, Dis
//获取当前登录用户
Member member = memberService.getUserInfo();
//新建分销员
distribution = new Distribution(member.getId(), member.getUsername(), name, idNumber);
distribution = new Distribution(member.getId(), member.getNickName(), distributionApplyDTO);
//添加分销员
this.save(distribution);

View File

@ -0,0 +1,4 @@
/** 添加分销员结算信息**/
ALTER TABLE li_distribution ADD settlement_bank_account_name varchar ( 200 );
ALTER TABLE li_distribution ADD settlement_bank_account_num varchar ( 200 );
ALTER TABLE li_distribution ADD settlement_bank_branch_name varchar ( 200 );