| | |
| | | public String getNewCode(Map<String, String> map) { |
| | | SysCodeRule codeRule = baseDao.getCodeRule(map); |
| | | String newCodeTemplet = codeRule.getCodeRule(); |
| | | if (map.get("projectId")!=null){ |
| | | String projectIdentity = baseDao.getProjectIdentity(map.get("projectId")); |
| | | newCodeTemplet = newCodeTemplet.replace("[项目编号]",projectIdentity); |
| | | } |
| | | SimpleDateFormat sdf = new SimpleDateFormat("yyyy"); |
| | | String year = sdf.format(new Date()); |
| | | if (map.get("year")!=null){ |
| | | year = map.get("year"); |
| | | } |
| | | if (map.get("projectId")!=null){ |
| | | Map<String, String> mapProject = baseDao.getMapProjectIdentity(map.get("projectId")); |
| | | newCodeTemplet = newCodeTemplet.replace("[项目编号]",mapProject.get("software_identity")); |
| | | year = mapProject.get("year"); |
| | | } |
| | | newCodeTemplet = newCodeTemplet.replace("[年份]",year); |
| | | |
| | | String xhTemplet = StringUtils.substring("__________",0,codeRule.getNoByteNum()); |
| | | newCodeTemplet = newCodeTemplet.replace("[序号]",xhTemplet); |
| | | int xhStartPosition = newCodeTemplet.indexOf(xhTemplet); |
| | | |
| | | String maxCode = baseDao.getMaxCode(codeRule.getTableName(),newCodeTemplet); |
| | | String maxCode = baseDao.getMaxCode(codeRule.getTableName(),codeRule.getCodeFieldName(),newCodeTemplet); |
| | | String maxCodeXh = "0"; |
| | | if (StringUtils.isNotBlank(maxCode)) |
| | | maxCodeXh = StringUtils.substring(maxCode,xhStartPosition,xhStartPosition+codeRule.getNoByteNum()); |