提交 2a84e5ad authored 作者: liruixin's avatar liruixin

提前生成运单号

上级 108a31d7
/*
package com.clx.performance.job; package com.clx.performance.job;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils; import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
...@@ -12,6 +11,7 @@ import org.springframework.data.redis.core.ListOperations; ...@@ -12,6 +11,7 @@ import org.springframework.data.redis.core.ListOperations;
import org.springframework.data.redis.core.RedisTemplate; import org.springframework.data.redis.core.RedisTemplate;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.time.LocalDateTime; import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter; import java.time.format.DateTimeFormatter;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -28,20 +28,18 @@ public class OrderNoGenerateJob implements InitializingBean { ...@@ -28,20 +28,18 @@ public class OrderNoGenerateJob implements InitializingBean {
@Autowired @Autowired
private ThreadPoolExecutor executor; private ThreadPoolExecutor executor;
@Autowired @Resource
private ListOperations<String, Object> opsForListJson; private ListOperations<String, Object> opsForListJson;
@Autowired @Resource
private RedisTemplate<String, Object> jsonTemplate; private RedisTemplate<String, Object> jsonTemplate;
*/ /**
/**
* 每天早上2点生成第二天的订单号 cron = "0 0 2 * * ?" * 每天早上2点生成第二天的订单号 cron = "0 0 2 * * ?"
* *
* 提前生成订单号 * 提前生成订单号
*//* */
@XxlJob("generateOrderNo") @XxlJob("generateOrderNo")
public void generateOrderNo() throws InterruptedException { public void generateOrderNo() throws InterruptedException {
LocalDateTime today = LocalDateTime.now(); LocalDateTime today = LocalDateTime.now();
...@@ -70,14 +68,12 @@ public class OrderNoGenerateJob implements InitializingBean { ...@@ -70,14 +68,12 @@ public class OrderNoGenerateJob implements InitializingBean {
*/ /**
/**
* 保存到Redis * 保存到Redis
* @author wangjianxin * @author
* @param key * @param key
* @param data * @param data
*//* */
private void saveUniqueOrderNumList(String key, List data) { private void saveUniqueOrderNumList(String key, List data) {
if(StringUtils.isBlank(key)){ if(StringUtils.isBlank(key)){
...@@ -106,13 +102,11 @@ public class OrderNoGenerateJob implements InitializingBean { ...@@ -106,13 +102,11 @@ public class OrderNoGenerateJob implements InitializingBean {
} }
*/ /**
/**
* 生成乱序的6位的订单编号 * 生成乱序的6位的订单编号
* @author wangjianxin * @author
* @return 乱序的6位订单编号从100000到999999 * @return 乱序的6位订单编号从100000到999999
*//* */
private List<Integer> generateOrderNumList(){ private List<Integer> generateOrderNumList(){
List<Integer> orderNumList = new ArrayList<>(); List<Integer> orderNumList = new ArrayList<>();
for (Integer i = 100000; i < 999999; ++i){ for (Integer i = 100000; i < 999999; ++i){
...@@ -122,15 +116,13 @@ public class OrderNoGenerateJob implements InitializingBean { ...@@ -122,15 +116,13 @@ public class OrderNoGenerateJob implements InitializingBean {
return orderNumList; return orderNumList;
} }
*/ /**
/**
* 交换 * 交换
* @author wangjianxin * @author
* @param data * @param data
* @param i * @param i
* @param j * @param j
*//* */
private static void swap(List<Integer> data, int i, int j) { private static void swap(List<Integer> data, int i, int j) {
if (i == j) { if (i == j) {
return; return;
...@@ -140,13 +132,11 @@ public class OrderNoGenerateJob implements InitializingBean { ...@@ -140,13 +132,11 @@ public class OrderNoGenerateJob implements InitializingBean {
data.set(j, temp); data.set(j, temp);
} }
*/ /**
/**
* 洗牌 * 洗牌
* @author * @author
* @param data * @param data
*//* */
private static void shuffleSort(List<Integer> data) { private static void shuffleSort(List<Integer> data) {
for (int i = 0; i < data.size() - 1; i++) { for (int i = 0; i < data.size() - 1; i++) {
int j = ThreadLocalRandom.current().nextInt(data.size()); int j = ThreadLocalRandom.current().nextInt(data.size());
...@@ -154,12 +144,10 @@ public class OrderNoGenerateJob implements InitializingBean { ...@@ -154,12 +144,10 @@ public class OrderNoGenerateJob implements InitializingBean {
} }
} }
*/ /**
/**
* 初始化 * 初始化
* @throws Exception * @throws Exception
*//* */
@Override @Override
public void afterPropertiesSet() throws Exception { public void afterPropertiesSet() throws Exception {
//初始化redis中的订单池 //初始化redis中的订单池
...@@ -179,4 +167,3 @@ public class OrderNoGenerateJob implements InitializingBean { ...@@ -179,4 +167,3 @@ public class OrderNoGenerateJob implements InitializingBean {
} }
*/
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论