⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 codegeneratorserviceimpl.java

📁 本源码为教学管理信息系统
💻 JAVA
字号:
package com.wygl.dmwh.service;import com.wygl.service.AbstractService;/** * @author Administrator * 代码生成服务实现 */public class CodeGeneratorServiceImpl extends AbstractService implements		CodeGeneratorService {	public String generator(CodeParams codeParams) throws Exception {		//1.根据当前层次levels和层次规则layerRule找出截取字符串,和当前层次位数		int levels = Integer.parseInt(codeParams.getLevels());		int curLayer = Integer.parseInt(codeParams.getLayerRule().substring(levels-1,levels));		String hqlString = "";				if(codeParams.getIsDept().equals("0")){			hqlString = "select max(codeTableEdit.code) from CodeTableEdit as codeTableEdit where codeTableEdit.codeType='"+codeParams.getCodeType()+"' and codeTableEdit.fatherCode = '"+codeParams.getFatherCode()+"' and codeTableEdit.dept_id='"+codeParams.getDept_id()+"'";		}else{			hqlString = "select max(codeTableEdit.code) from CodeTableEdit as codeTableEdit where codeTableEdit.codeType='"+codeParams.getCodeType()+"' and codeTableEdit.fatherCode = '"+codeParams.getFatherCode()+"'";		}		//2.找出当前最大号			String maxCode = (String)dbDao.queryObjects(hqlString).get(0);		if(maxCode==null) maxCode = "0";		//2.去掉前缀字符		String code = "";		String curCode = "";		if(maxCode.equals("0")){			code = "0";			curCode = "0";				}else{			if(codeParams.getPrefix().equals("")){				code = maxCode.substring(0);			}else{				code = maxCode.substring(codeParams.getPrefix().length()-1);			}			curCode = code.substring(code.length()-curLayer);			}		//4.转换字符串为整形,并进行加1		String maxInt = "1";		if(curLayer==1){			if(curCode.equals("9")){				curCode = "a";			}else{				curCode = ""+(char)((int)(curCode.charAt(0)) + 1);			}			if(curCode.equals("z")) throw new Exception("超过最大限z!");		}else{			String suffix = "";			for(int i = 0;i<curLayer;i++){				suffix += "0";			}			maxInt += suffix;			curCode = Integer.toString(Integer.valueOf(curCode).intValue() + 1);			if(Integer.parseInt(maxInt) <= Integer.parseInt(curCode))  throw new Exception("超过最大限"+maxInt+"!");			int length = curCode.length();			String prefix = "";			for(int i = 0;i<curLayer - length;i++){				prefix += "0";			}			curCode = prefix + curCode;		}			curCode = codeParams.getFatherCode().substring(codeParams.getCodeType().length()) + curCode;		return curCode;	}	}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -