package com.base.utils;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Map;
import org.apache.commons.lang.StringUtils;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import com.core.service.EnterpriseService;
public class OrderUtils {
public static String getOrderNo(String lastNo) {
// String orderNo = "";
// SimpleDateFormat format = new SimpleDateFormat("yyMMdd");
// String date = format.format(new Date());
// if (StringUtils.isNotEmpty(lastNo)) {
// String no = lastNo.substring(6);
// int num = Integer.valueOf(no);
// num++;
// if (num >= 1 && num <= 9) {
// orderNo = "0000000" + num;
// } else if (num >= 10 && num <= 99) {
// orderNo = "000000" + num;
// } else if (num >= 100 && num <= 999) {
// orderNo = "00000" + num;
// } else if (num >= 1000 && num <= 9999) {
// orderNo = "0000" + num;
// } else if (num >= 10000 && num <= 99999) {
// orderNo = "000" + num;
// } else if (num >= 100000 && num <= 999999) {
// orderNo = "00" + num;
// } else if (num >= 1000000 && num <= 9999999) {
// orderNo = "0" + num;
// } else {
// orderNo = "" + num;
// }
//
// orderNo = date + orderNo;
//
// } else {
// orderNo = date + "00000001";
// }
int r1=(int)(Math.random()*(10));//产生2个0-9的随机数
int r2=(int)(Math.random()*(10));
int r3=(int)(Math.random()*(10));
int r4=(int)(Math.random()*(10));
long now = System.currentTimeMillis();//一个13位的时间戳
String paymentID =String.valueOf(r1)+String.valueOf(r2)+String.valueOf(r3)+String.valueOf(r4)+String.valueOf(now);
return paymentID;
}
public static String getOrderNo() {
//
int r1=(int)(Math.random()*(10));//产生2个0-9的随机数
int r2=(int)(Math.random()*(10));
int r3=(int)(Math.random()*(10));
// int r4=(int)(Math.random()*(10));
long now = System.currentTimeMillis();//一个13位的时间戳
String paymentID =String.valueOf(r1)+String.valueOf(r2)+String.valueOf(r3)+String.valueOf(now);
return paymentID;
}
// public static String getOrderNo(String lastNo) {
// String orderNo = "";
// SimpleDateFormat format = new SimpleDateFormat("yyMMdd");
// String date = format.format(new Date());
// if (StringUtils.isNotEmpty(lastNo)) {
// String no = lastNo.substring(6);
// int num = Integer.valueOf(no);
// num++;
// if (num >= 1 && num <= 9) {
// orderNo = "0000000" + num;
// } else if (num >= 10 && num <= 99) {
// orderNo = "000000" + num;
// } else if (num >= 100 && num <= 999) {
// orderNo = "00000" + num;
// } else if (num >= 1000 && num <= 9999) {
// orderNo = "0000" + num;
// } else if (num >= 10000 && num <= 99999) {
// orderNo = "000" + num;
// } else if (num >= 100000 && num <= 999999) {
// orderNo = "00" + num;
// } else if (num >= 1000000 && num <= 9999999) {
// orderNo = "0" + num;
// } else {
// orderNo = "" + num;
// }
//
// orderNo = date + orderNo;
//
// } else {
// orderNo = date + "00000001";
// }
// }
/**
* 获取订单序列号
* @param service 数据库服务类
* @param column 表格的订单序号列名,一般为order_sn
* @param table 表格的名称
* @return
*/
// public static String getOrderSn(EnterpriseService service, String column, String table){
// // 创建一个订单
// table = StringUtils.isNotEmpty(table) ? table : "orders";
// column = StringUtils.isNotEmpty(column) ? column : "order_sn";
// SimpleDateFormat format = new SimpleDateFormat("yyMMdd");
// String date = format.format(new Date());
//
// String sql = "select max("+column+") as maxNo from "+table+" where "+column+" like '" + date + "%'";
// log.info("获取订单编号:"+sql);
//
// Map<String, String> result = service.queryMapBySQL(sql, null);
// String lastNo = result != null ? result.get("maxNo") : "";
// String orderSn = OrderUtils.getOrderNo(lastNo) ;
// return orderSn;
// }
public static String getOrderSn(EnterpriseService service, String column, String table){
int r1=(int)(Math.random()*(10));//产生2个0-9的随机数
int r2=(int)(Math.random()*(10));
int r3=(int)(Math.random()*(10));
int r4=(int)(Math.random()*(10));
long now = System.currentTimeMillis();//一个13位的时间戳
String paymentID =String.valueOf(r1)+String.valueOf(r2)+String.valueOf(r3)+String.valueOf(r4)+String.valueOf(now);// 订单ID
// System.out.println(paymentID);
// 创建一个订单
// table = StringUtils.isNotEmpty(table) ? table : "orders";
// column = StringUtils.isNotEmpty(column) ? column : "order_sn";
// SimpleDateFormat format = new SimpleDateFormat("yyMMdd");
// String date = format.format(new Date());
//
// String sql = "select max("+column+") as maxNo from "+table+" where "+column+" like '" + date + "%'";
// log.info("获取订单编号:"+sql);
//
// Map<String, String> result = service.queryMapBySQL(sql, null);
// String lastNo = result != null ? result.get("maxNo") : "";
// String orderSn = OrderUtils.getOrderNo(lastNo) ;
return paymentID;
}
/**
* 获取订单序列号
* @param service 数据库服务类
* @param table 表格的名称
* @return
*/
public static String getOrderSn(EnterpriseService service, String table){
return getOrderSn(service, "", table);
}
/**日志对象*/
private static Log log = LogFactory.getLog(OrderUtils.class) ;
}