package com.matrix.system.hive.service.imp; import com.matrix.core.tools.StringUtils; import com.matrix.system.hive.bean.SysShopInfo; import com.matrix.system.hive.bean.SysVipInfo; import com.matrix.system.hive.service.CodeService; import org.springframework.stereotype.Service; import java.text.DateFormat; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Random; /** * * * @date 2016-04-22 08:43 */ @Service("codeService") public class CodeServiceImpl implements CodeService { @Override public String getOrderCode(Integer Codename, String codeType) { return getNowTimeString()+ StringUtils.getRandomString(4); } @Override public String getVipInfoCode(SysVipInfo vipInfo) { return getNowTimeString()+StringUtils.getRandomString(4); } @Override public String getOrderCode() { return "N"+getNowTimeString(); } @Override public String getShopCode(SysShopInfo shopInfo) { return StringUtils.getRandomString(4); } /** * 退款订单用"T"开头表示 * @return */ @Override public String getRefundOrderNo() { DateFormat fmt = new SimpleDateFormat("yyyyMMddHHmmss"); Date date=new Date(); return "T"+fmt.format(date); } @Override public String getServiceOrderCode() { DateFormat fmt = new SimpleDateFormat("yyyyMMddHHmmss"); Date date=new Date(); return "S"+fmt.format(date); } @Override public String getDepartCode() { DateFormat fmt = new SimpleDateFormat("HHmmss"); Date date=new Date(); return "D"+fmt.format(date); } @Override public String getOutStoreCode() { return "O" + getNowTimeString(); } @Override public String getCheckInfoCode() { return "PD" + getNowTimeString(); } /** * * @Title: getNowTimeString * TODO获取当前时间的年月日分秒毫秒 * @author:jyy * @param @return * @return String 返回类型 * @date 2016年7月19日 下午3:04:47 * @throws */ private String getNowTimeString(){ DateFormat fmt = new SimpleDateFormat("yyyyMMddHHmmss"); Date date=new Date(); return fmt.format(date); } @Override public String get32LenNumberCode(){ DateFormat fmt = new SimpleDateFormat("yyyyMMddHHmmss"); Date date=new Date(); String str = "0123456789"; Random random = new Random(); StringBuilder sb = new StringBuilder(); for (int i = 0; i < 18; i++) { int number = random.nextInt(str.length()); sb.append(str.charAt(number)); } return fmt.format(date)+sb.toString(); } @Override public String getFlowCode() { return "F" + getNowTimeString(); } @Override public String getCodeByTyle(String typeName) { return typeName+getNowTimeString()+ StringUtils.getRandomString(4); } }