记得上下班打卡 | git大法好,push需谨慎

Commit 756133c9 authored by 胡佳晨's avatar 胡佳晨

修改下单和订单列表,根据正在咸蛋和普通订单拆分

parent 5ed169d2
......@@ -104,6 +104,7 @@ public class GoblinRedisConst {
public static final String REDIS_GOBLIN_ORDER_SKU = PREFIX.concat("orderSku:");//用户sku购买数量 key:$orderSkuId
public static final String REDIS_GOBLIN_ORDER_UN_PAY = PREFIX.concat("order:un:pay:");//未支付订单id列表 key:$randomKey
public static final String REDIS_GOBLIN_ORDER_LIST = PREFIX.concat("order:id:list:");//用户订单id列表 key:$uid
public static final String REDIS_GOBLIN_ORDER_ZHENGZAI_LIST = PREFIX.concat("order:zhengzai:list:");//用户订单id列表 key:$uid
public static final String REDIS_GOBLIN_ORDER_MASTER = PREFIX.concat("order:masterCode:");//用户订单id列表 key:$masterCode
public static final String REDIS_GOBLIN_ORDER_OFFCODE = PREFIX.concat("order:offCode:");//用户订单id列表 key:$wtrieOffCode
public static final String REDIS_GOBLIN_BACK_ORDER_ID = PREFIX.concat("order:backIds:");//用户订单下的退款订单id key:$orderId
......
......@@ -12,7 +12,7 @@ import java.util.List;
public interface IGoblinOrderAppService {
ResponseDto<List<GoblinAppOrderListVo>> orderList(int page);
ResponseDto<List<GoblinAppOrderListVo>> orderList(int page,String pre);
ResponseDto<List<GoblinAppOrderListVo>> orderListByMaster(String orderMasterCode);
......
......@@ -32,9 +32,11 @@ public class GoblinOrderAppController {
@ApiOperation("列表")
@ApiImplicitParams({
@ApiImplicitParam(type = "form", required = true, dataType = "Integer", name = "page", value = "页数", example = "1"),
@ApiImplicitParam(type = "form", required = false, dataType = "String", name = "pre", value = "活动前缀[ZZ-正在下单|不传为普通订单]", example = "ZZ"),
})
public ResponseDto<List<GoblinAppOrderListVo>> orderList(@RequestParam("page") @Valid int page) {
return goblinOrderAppService.orderList(page);
public ResponseDto<List<GoblinAppOrderListVo>> orderList(@RequestParam("page") @Valid int page,
@RequestParam("pre") @Valid String pre) {
return goblinOrderAppService.orderList(page,pre);
}
@PostMapping("listByCode")
......
......@@ -59,7 +59,7 @@ public class GoblinStoreZhengzaiController {
@ApiImplicitParam(type = "form", required = true, dataType = "Integer", name = "page", value = "页数", example = "1"),
})
public ResponseDto<List<GoblinAppOrderListVo>> orderList(@RequestParam("page") @Valid int page) {
return goblinOrderAppService.orderList(page);
return goblinStoreZhengzaiService.orderList(page);
}
@PostMapping("listByCode")
......
......@@ -46,10 +46,17 @@ public class GoblinOrderAppServiceImpl implements IGoblinOrderAppService {
@Override
public ResponseDto<List<GoblinAppOrderListVo>> orderList(int page) {
public ResponseDto<List<GoblinAppOrderListVo>> orderList(int page, String pre) {
String uid = CurrentUtil.getCurrentUid();
List<GoblinAppOrderListVo> orderVoList = ObjectUtil.goblinAppOrderListVoArrayList();
List<String> orderIds = redisUtils.getOrderList(uid);
List<String> orderIds;
if (pre == null) {
orderIds = redisUtils.getOrderList(uid);
} else if (pre.equals(GoblinStatusConst.MarketPreStatus.MARKET_PRE_ZHENGZAI.getValue())) {
orderIds = redisUtils.getZhengzaiOrderList(uid);
} else {
return ResponseDto.failure("参数错误");
}
int size = 40;
int initCount = (page - 1) * size;
int finalCount = page * size;
......@@ -377,7 +384,7 @@ public class GoblinOrderAppServiceImpl implements IGoblinOrderAppService {
orderVo.setPaymentType(paymentType);
orderVo.setOrderSkuVoIds(skuList);
redisUtils.setGoblinOrder(orderId, orderVo);
redisUtils.setOffCode(orderVo.getMasterOrderCode(),orderVo.getWriteOffCode());
redisUtils.setOffCode(orderVo.getMasterOrderCode(), orderVo.getWriteOffCode());
//删除未支付订单
redisUtils.removeGoblinOrder(null, orderId);
//mongo
......@@ -392,7 +399,7 @@ public class GoblinOrderAppServiceImpl implements IGoblinOrderAppService {
}
return "RECV_ORD_ID_" + reqSeqId;
} catch (Exception e) {
log.info("异步回调开始,参数,request={}",request);
log.info("异步回调开始,参数,request={}", request);
}
return "";
}
......
......@@ -433,7 +433,11 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
redisUtils.addUnPayOrder(orderVo.getOrderId());
//redis 订单列表
if (noZhengzaiOrder(uid)) {
redisUtils.addOrderList(uid, orderVo.getOrderId());
if (orderVo.getMarketType().equals(GoblinStatusConst.MarketPreStatus.MARKET_PRE_ZHENGZAI.getValue())) {
redisUtils.addZhengzaiOrderList(uid, orderVo.getOrderId());
} else {
redisUtils.addOrderList(uid, orderVo.getOrderId());
}
}
//mysql 执行sql
String sqlData = SqlMapping.gets(sqls, sqlDataSku, sqlDataOrder, sqlDataAttr);
......@@ -585,7 +589,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
storeOrder.setPaymentType(syncOrderParam.getPaymentType());
storeOrder.setPaymentId(syncOrderParam.getPaymentId());
storeOrder.setPayCode(syncOrderParam.getCode());
LocalDateTime payTime = LocalDateTime.parse(syncOrderParam.getPaymentAt(),DTF_YMD_HMS);
LocalDateTime payTime = LocalDateTime.parse(syncOrderParam.getPaymentAt(), DTF_YMD_HMS);
storeOrder.setPayTime(payTime);
if (orderVo.getWriteOffCode().equals("EMPTY")) {
storeOrder.setWriteOffCode(IDGenerator.getWriteOffCode());
......@@ -646,7 +650,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
orderVo.setPaymentType(syncOrderParam.getPaymentType());
orderVo.setOrderSkuVoIds(skuList);
redisUtils.setGoblinOrder(orderId, orderVo);
redisUtils.setOffCode(orderVo.getMasterOrderCode(),orderVo.getWriteOffCode());
redisUtils.setOffCode(orderVo.getMasterOrderCode(), orderVo.getWriteOffCode());
//删除未支付订单
redisUtils.removeGoblinOrder(null, orderId);
//mongo
......
......@@ -407,9 +407,9 @@ public class GoblinMongoUtils {
// SPU信息
public boolean updateGoodsInfoVo(GoblinGoodsInfoVo vo) {
return mongoTemplate.getCollection(GoblinGoodsInfoVo.class.getSimpleName()).updateOne(
Query.query(Criteria.where("spuId").is(vo.getSpuId()).and("delFlg").is("0")).getQueryObject(),
ObjectUtil.cloneBasicDBObject().append("$set", mongoConverter.convertToMongoType(vo))
).getModifiedCount() > 0;
Query.query(Criteria.where("spuId").is(vo.getSpuId()).and("delFlg").is("0")).getQueryObject(),
ObjectUtil.cloneBasicDBObject().append("$set", mongoConverter.convertToMongoType(vo))
).getModifiedCount() > 0;
}
// SPU信息
......@@ -871,7 +871,7 @@ public class GoblinMongoUtils {
//查询销量
int size = 40;
int skipCount = ((page - 1) * size);
Criteria criteria = Criteria.where("storeId").is(storeId);
Criteria criteria = Criteria.where("storeId").is(storeId).and("marketType").is(GoblinStatusConst.MarketPreStatus.MARKET_PRE_ZHENGZAI.getValue());
Query query = Query.query(criteria);
query.skip(skipCount).limit(size).with(Sort.by(Sort.Order.desc("createdAt")));
return mongoTemplate.find(query, GoblinStoreOrderVo.class, GoblinStoreOrderVo.class.getSimpleName());
......
......@@ -732,6 +732,33 @@ public class GoblinRedisUtils {
redisUtil.set(redisKey, list);
}
// 获取 订单id列表
public List<String> getZhengzaiOrderList(String uid) {
String redisKey = GoblinRedisConst.REDIS_GOBLIN_ORDER_ZHENGZAI_LIST.concat(uid);
Object obj = redisUtil.get(redisKey);
if (obj == null) {
return CollectionUtil.arrayListString();
} else {
return (List<String>) obj;
}
}
// 添加 订单id列表
public void addZhengzaiOrderList(String uid, String orderId) {
String redisKey = GoblinRedisConst.REDIS_GOBLIN_ORDER_ZHENGZAI_LIST.concat(uid);
List<String> list = getOrderList(uid);
list.add(orderId);
redisUtil.set(redisKey, list);
}
// 删除 订单id列表
public void removeZhengzaiOrderList(String uid, String orderId) {
String redisKey = GoblinRedisConst.REDIS_GOBLIN_ORDER_ZHENGZAI_LIST.concat(uid);
List<String> list = getOrderList(uid);
list.remove(orderId);
redisUtil.set(redisKey, list);
}
//主订单下包含的子订单
public void setMasterCode(String masterCode, String orderIds) {
......
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