规则:
- 1.code = InsertCodeUtil.getIncrSerial(字母所写+ORG+租户id+"-"+组织id);
注:根据key获取Redis自增流水 - 2.如果code是"0001"
count = 当前租户+组织下数据的条数
code = InsertCodeUtil.getIncrSerial(字母所写+ORG+租户id+"-"+组织id,count); - 3.dateCode = 字母缩写+当前时间(yyyyMMdd)
- 4.code = dateCode + code
代码:
String code = InsertCodeUtil.getIncrSerial(BusinessConstant.ZF+CommonConstant.ORG+user.getTenantId()+"_"+couponAbandonSaveVO.getMarketingOrganizationId());
if (CommonConstant.CODE.equals(code)) {
MutipleCondition where = new MutipleCondition();
where.add(new SingleCondition().setField(CouponAbandonDao.tenantId).setOperator(CompareOperator.EQUAL).setIntegers(user.getTenantId()));
where.add(new SingleCondition().setField(CouponAbandonDao.marketingOrganizationId).setOperator(CompareOperator.IS_NULL));
Long count = couponAbandonDao.count(where);
code = InsertCodeUtil.getIncrSerial(BusinessConstant.ZF+CommonConstant.TENANT+user.getTenantId()+"_"+couponAbandonSaveVO.getMarketingOrganizationId(), count);
}
String dateCode = commonService.createCode(BusinessConstant.ZF);
code = dateCode+code;
couponAbandon.setCode(code);
//生成券码的方法
public String createCode(String type) {
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyyMMdd");
String date = LocalDateTime.now().format(formatter);
return type+date;
}