1.取最新的数据库编号 sql如下:
select * from T_CASE_PUNISH_MATTER order by create_time desc LIMIT 1
2.具体实现如下:
//执法领域编号 LawEnforcement lawEnforcement = lawEnforcementService.getLawEnforcement(enforceId); if(lawEnforcement!=null){ PunishMatter pmUum = pmService.getPmUum(); if(pmUum!=null&& org.apache.commons.lang.StringUtils.isNotBlank(pmUum.getPmNum())){ //截取后四位 String num = pmUum.getPmNum().substring(pmUum.getPmNum().length() - 4, pmUum.getPmNum().length()); Integer pmNum1 = Integer.parseInt(num)+1; String newPmNum =""; if(String.valueOf(pmNum1).length()==1){ newPmNum = "A"+lawEnforcement.getEnforceNum()+"000"+pmNum1; } if(String.valueOf(pmNum1).length()==2){ newPmNum = "A"+lawEnforcement.getEnforceNum()+"00"+pmNum1; } if(String.valueOf(pmNum1).length()==3){ newPmNum = "A"+lawEnforcement.getEnforceNum()+"0"+pmNum1; } if(String.valueOf(pmNum1).length()==4){ newPmNum = "A"+lawEnforcement.getEnforceNum()+pmNum1; } pm.setPmNum(newPmNum); }else{ String newPmNum = "A"+lawEnforcement.getEnforceNum()+"0001"; pm.setPmNum(newPmNum); } }
3.由于我们项目组中编号是有A+执法领域编号+四位流水编号组成 所以只能截取后四位 然后进行相应判断 添加位数