Commit cd2f20c6 by hanghang.wang

更换redis key

parent 0e153982
......@@ -6,6 +6,7 @@ import cn.freemud.enums.OrderTackCodeRuleEnum;
import com.freemud.api.assortment.datamanager.entity.db.AssortmentTackCodeRule;
import com.freemud.api.assortment.datamanager.manager.AssortmentTackCodeRuleManager;
import com.freemud.sdk.api.assortment.order.request.order.ConfirmOrderRequest;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.RedisTemplate;
......@@ -23,6 +24,7 @@ import java.util.function.Function;
* @description: TODO
* @date 2021/5/31上午9:36
*/
@Slf4j
@Component
public class OrderTackCodeManager {
@Autowired
......@@ -44,7 +46,9 @@ public class OrderTackCodeManager {
public String generateTackCode(Integer orderType, String partnerId, String storeId, ConfirmOrderRequest var1, Function<Integer, String> fun) {
String key = this.getOrderTackCodeKey(partnerId);
String randomKey = getRandomOrderTackCodeKey(partnerId, storeId);
// redisTemplate.delete(randomKey);
String rule = (String) redisTemplate.opsForHash().entries(key).get("rule");
log.info("tackCode rule1 : " + rule );
AssortmentTackCodeRule assortmentTackCodeRule = new AssortmentTackCodeRule();
if (Objects.isNull(rule) || rule.isEmpty()) {
assortmentTackCodeRule = assortmentTackCodeRuleManager.queryTackCodeRule(partnerId);
......@@ -65,13 +69,17 @@ public class OrderTackCodeManager {
redisTemplate.expire(randomKey, getSecondsNextEarlyMorning(), TimeUnit.SECONDS);
return number;
}
} else if (StringUtils.isNotEmpty(rule) && rule.equals(OrderTackCodeRuleEnum.THE_CUSTOM.getCode()+"")) {
//规则自定义
Map<Object, Object> tackCodeSettingMap = redisTemplate.opsForHash().entries(randomKey);
log.info("tackCode rule3 : " + assortmentTackCodeRule );
if (tackCodeSettingMap.isEmpty()) {
if (Objects.isNull(assortmentTackCodeRule)) {
log.info("tackCode rule4 : " + assortmentTackCodeRule );
assortmentTackCodeRule = assortmentTackCodeRuleManager.queryTackCodeRule(partnerId);
}
log.info("tackCode rule5 : " + assortmentTackCodeRule );
initTackCodeSettingHash(assortmentTackCodeRule,randomKey,tackCodeSettingMap);
}
//判断订单类型
......@@ -93,7 +101,9 @@ public class OrderTackCodeManager {
}
code = String.format("%0" + length + "d", Integer.parseInt(code));
}
log.info("tackCode rule2 : " + head + code );
return head + code;
} else {
if (!redisTemplate.opsForHash().hasKey(key, storeId)) {
redisTemplate.opsForHash().put(key, storeId, Integer.parseInt(generateNumber(4)));
......@@ -106,7 +116,7 @@ public class OrderTackCodeManager {
public String getOrderTackCodeKey(String partnerId) {
Date currentDay = new Date();
String todayStr = formatDate(currentDay);
StringBuilder key = new StringBuilder(RedisKeyConstant.TAKECODEKEY)
StringBuilder key = new StringBuilder(RedisKeyConstant.PAY_SUCCESS_TACK_CODE_KEY)
.append(partnerId)
.append(":")
.append(todayStr);
......@@ -123,7 +133,7 @@ public class OrderTackCodeManager {
public String getRandomOrderTackCodeKey(String partnerId, String storeId) {
Date currentDay = new Date();
String todayStr = formatDate(currentDay);
StringBuilder key = new StringBuilder(RedisKeyConstant.TAKECODEKEY)
StringBuilder key = new StringBuilder(RedisKeyConstant.PAY_SUCCESS_TACK_CODE_KEY)
.append(partnerId)
.append(":")
.append(storeId)
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment