生成规则
生成规则为“AA+时间到天+四位数自增序列号”,如AA202005190001
代码展示
/**
* 自动生成协议号
* 生成规则为“AA+时间到天+四位数自增序列号”,如SA202005190001
* @return
*/
private String generateAgreementCode(Long entId) {
String agreementPrefix = "AA";
String currentLocalDateTime = LocalDateTimeUtil.getCurrentLocalDateTime("yyyyMMdd");
String code = serviceAgreementDao.selectLatestAgreementCode(entId);
String agreementSuffix;
if (code == null) {
agreementSuffix = formatNumber(1L);
} else {
String substring = code.substring(code.length() - 4);
agreementSuffix = formatNumber(Long.parseLong(substring) + 1);
}
return StringUtil.concat(agreementPrefix, currentLocalDateTime, agreementSuffix);
}
public String formatNumber(Long id) {
NumberFormat numberFormat = NumberFormat.getInstance();
//设置是否使用分组
numberFormat.setGroupingUsed(false);
//设置最小整数位数
numberFormat.setMinimumIntegerDigits(4);
// 设置最大整数位数
//numberFormat.setMaximumIntegerDigits(4);
//输出测试语句
return numberFormat.format(id);
}