单号生成工具优化

yun-zuoyi
汪云昊 6 years ago
parent 01ae477360
commit b29812c8f9

@ -5,9 +5,12 @@ import cn.estsh.i3plus.pojo.base.enumutil.CommonEnumUtil;
import cn.estsh.i3plus.pojo.platform.bean.SysOrderNoRule; import cn.estsh.i3plus.pojo.platform.bean.SysOrderNoRule;
import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder; import cn.estsh.impp.framework.boot.exception.ImppExceptionBuilder;
import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum; import cn.estsh.impp.framework.boot.exception.ImppExceptionEnum;
import com.alibaba.fastjson.JSON;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import java.text.MessageFormat; import java.text.MessageFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Locale;
/** /**
* @Description : * @Description :
@ -30,15 +33,17 @@ public class OrderNoMakeUtil {
.build(); .build();
} }
String[] dateTime = new SimpleDateFormat("yyyy-yy-MM-dd-HH-mm-ss").format(System.currentTimeMillis()).split("-");
StringBuilder orderNo = new StringBuilder(orderNoRule.getOrderNoRule()); StringBuilder orderNo = new StringBuilder(orderNoRule.getOrderNoRule());
String[] dateTime = new SimpleDateFormat("yyyy-MM-dd-HH-mm-ss").format(System.currentTimeMillis()).split("-");
// 单号表达式 // 单号表达式
replace(orderNo, PlatformConstWords.YEAR, dateTime[0]); replace(orderNo, PlatformConstWords.YEAR_FULL, dateTime[0]);
replace(orderNo, PlatformConstWords.MONTH, dateTime[1]); replace(orderNo, PlatformConstWords.YEAR, dateTime[1]);
replace(orderNo, PlatformConstWords.DAY, dateTime[2]); replace(orderNo, PlatformConstWords.MONTH, dateTime[2]);
replace(orderNo, PlatformConstWords.HOUR, dateTime[3]); replace(orderNo, PlatformConstWords.DAY, dateTime[3]);
replace(orderNo, PlatformConstWords.MINUTE, dateTime[4]); replace(orderNo, PlatformConstWords.HOUR, dateTime[4]);
replace(orderNo, PlatformConstWords.SECOND, dateTime[5]); replace(orderNo, PlatformConstWords.MINUTE, dateTime[5]);
replace(orderNo, PlatformConstWords.SECOND, dateTime[6]);
// 流水号长度补全表达式 // 流水号长度补全表达式
String serialNoFormatStr = MessageFormat.format(PlatformConstWords.SERIAL_NO_FORMAT, orderNoRule.getSerialNoLength()); String serialNoFormatStr = MessageFormat.format(PlatformConstWords.SERIAL_NO_FORMAT, orderNoRule.getSerialNoLength());
@ -69,12 +74,11 @@ public class OrderNoMakeUtil {
* @param param * @param param
* @return * @return
*/ */
private static StringBuilder replace(StringBuilder no, String constant, String param) { private static StringBuilder replace(StringBuilder no, String constant, Object param) {
int day = no.indexOf(constant); int day = no.indexOf(constant);
if (day != -1) { if (day != -1) {
no.replace(day, day + constant.length(), param); no.replace(day, day + constant.length(), param.toString());
} }
return no; return no;
} }
} }

Loading…
Cancel
Save