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

Commit b6dfd2f4 authored by 胡佳晨's avatar 胡佳晨

修改列表详情

parent 2d8e2389
...@@ -337,6 +337,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService { ...@@ -337,6 +337,7 @@ public class GoblinOrderServiceImpl implements IGoblinOrderService {
} }
} }
} }
GoblinStoreInfoVo storeInfoVo = redisUtils.getStoreInfoVo(storeId); GoblinStoreInfoVo storeInfoVo = redisUtils.getStoreInfoVo(storeId);
//生成订单 //生成订单
GoblinStoreOrder storeOrder = GoblinStoreOrder.getNew(); GoblinStoreOrder storeOrder = GoblinStoreOrder.getNew();
......
package com.liquidnet.service.order.service.impl; package com.liquidnet.service.order.service.impl;
import com.alibaba.fastjson.JSON;
import com.liquidnet.commons.lang.util.CollectionUtil; import com.liquidnet.commons.lang.util.CollectionUtil;
import com.liquidnet.commons.lang.util.CurrentUtil; import com.liquidnet.commons.lang.util.CurrentUtil;
import com.liquidnet.commons.lang.util.IDGenerator; import com.liquidnet.commons.lang.util.IDGenerator;
...@@ -9,11 +10,15 @@ import com.liquidnet.service.goblin.constant.GoblinStatusConst; ...@@ -9,11 +10,15 @@ import com.liquidnet.service.goblin.constant.GoblinStatusConst;
import com.liquidnet.service.goblin.constant.NftAccStatusEnum; import com.liquidnet.service.goblin.constant.NftAccStatusEnum;
import com.liquidnet.service.goblin.dto.GoblinUserNftAccInfoVo; import com.liquidnet.service.goblin.dto.GoblinUserNftAccInfoVo;
import com.liquidnet.service.goblin.dto.manage.AddressVo; import com.liquidnet.service.goblin.dto.manage.AddressVo;
import com.liquidnet.service.goblin.dto.manage.GoblinOrderSkuParam;
import com.liquidnet.service.goblin.dto.manage.GoblinOrderStoreParam; import com.liquidnet.service.goblin.dto.manage.GoblinOrderStoreParam;
import com.liquidnet.service.goblin.dto.manage.MixOrderParam; import com.liquidnet.service.goblin.dto.manage.MixOrderParam;
import com.liquidnet.service.goblin.dto.vo.*; import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.entity.GoblinNftOrder; import com.liquidnet.service.goblin.entity.GoblinNftOrder;
import com.liquidnet.service.goblin.entity.GoblinOrderAttr;
import com.liquidnet.service.goblin.entity.GoblinOrderSku;
import com.liquidnet.service.goblin.entity.GoblinStoreOrder; import com.liquidnet.service.goblin.entity.GoblinStoreOrder;
import com.liquidnet.service.goblin.param.GoblinOrderPreParam;
import com.liquidnet.service.goblin.param.SyncOrderParam; import com.liquidnet.service.goblin.param.SyncOrderParam;
import com.liquidnet.service.goblin.service.IMixOrderService; import com.liquidnet.service.goblin.service.IMixOrderService;
import com.liquidnet.service.order.utils.*; import com.liquidnet.service.order.utils.*;
...@@ -149,17 +154,113 @@ public class MixOrderServiceImpl implements IMixOrderService { ...@@ -149,17 +154,113 @@ public class MixOrderServiceImpl implements IMixOrderService {
//生成nft订单 //生成nft订单
List<GoblinNftOrder> nftOrderList = nftOrder(nftInfoList, nftMix, boxSkuId, mobile, source, version, nickName, nt, uid, param.getPayType(), param.getDeviceFrom()); List<GoblinNftOrder> nftOrderList = nftOrder(nftInfoList, nftMix, boxSkuId, mobile, source, version, nickName, nt, uid, param.getPayType(), param.getDeviceFrom());
//生成goblin订单 //生成goblin订单
GoblinOrderPreParam preParam = goblinOrder(skuInfoList, nftMix, param.getAddressesVo(), mobile, source, version, nickName, nt, uid, param.getPayType(), param.getDeviceFrom());
return ResponseDto.success(payOrder()); return ResponseDto.success(payOrder(nftOrderList,preParam));
} }
//商品订单 //商品订单
private List<GoblinStoreOrder> goblinOrder(List<GoblinGoodsSkuInfoVo> skuVoList,HashMap<String, Object> skuMix, AddressVo addressVo) { private GoblinOrderPreParam goblinOrder(List<GoblinGoodsSkuInfoVo> skuVoList, HashMap<String, Object> skuMix, AddressVo addressVo, String mobile, String source, String version, String nickName, LocalDateTime now, String uid, String payType, String deviceFrom) {
for (GoblinGoodsSkuInfoVo skuVo : skuVoList) { String orderMasterCode = IDGenerator.storeMasterCode();//商品总订单号
String orderId = IDGenerator.nextSnowId(); String orderId = IDGenerator.nextSnowId();
String orderCode = IDGenerator.storeCode(orderId); String orderCode = IDGenerator.storeCode(orderId);
String storeId = skuVo.getStoreId(); String storeId = "";
BigDecimal storeTotalPrice = BigDecimal.ZERO;//订单总金额
String skuName = "";
List<GoblinOrderSku> goblinOrderSkuList = ObjectUtil.getGoblinOrderSkuArrayList();
for (GoblinGoodsSkuInfoVo skuVo : skuVoList) {
storeId = skuVo.getStoreId();
BigDecimal price;//sku应付价格
BigDecimal priceBase;//sku原价
int number = (Integer) skuMix.get(skuVo.getSkuId() + "count");
GoblinGoodsInfoVo spuVo = redisUtils.getGoodsInfoVo(skuVo.getSpuId());
skuName = skuName.concat(skuVo.getName()).concat(",");
//获得 活动原价
price = (BigDecimal) skuMix.get(skuVo.getSkuId() + "price");
priceBase = skuVo.getPrice();
price = price.multiply(BigDecimal.valueOf(number));
storeTotalPrice = storeTotalPrice.add(price);
//订单sku
GoblinOrderSku orderSku = GoblinOrderSku.getNew();
orderSku.setOrderSkuId(IDGenerator.nextTimeId2());
orderSku.setOrderId(orderId);
orderSku.setStatus(GoblinStatusConst.Status.ORDER_STATUS_0.getValue());
orderSku.setSpuId(skuVo.getSpuId());
orderSku.setSpuName(spuVo.getName());
orderSku.setSkuId(skuVo.getSkuId());
orderSku.setNum(number);
orderSku.setSkuPrice(priceBase);
orderSku.setSkuPriceActual(price);
orderSku.setSkuName(skuVo.getName());
orderSku.setSkuNo(skuVo.getSkuNo());
orderSku.setSkuImage(skuVo.getSkuPic());
orderSku.setSkuSpecs(JSON.toJSONString(skuVo.getSkuSpecList()));
orderSku.setPriceVoucher(BigDecimal.ZERO);
orderSku.setCreatedAt(now);
orderSku.setSpuName(spuVo.getName());
orderSku.setSpuPic(spuVo.getCoverPic());
goblinOrderSkuList.add(orderSku);
} }
GoblinStoreInfoVo storeInfoVo = redisUtils.getStoreInfoVo(storeId);
//生成订单
GoblinStoreOrder storeOrder = GoblinStoreOrder.getNew();
storeOrder.setMasterOrderCode(orderMasterCode);
storeOrder.setOrderId(orderId);
storeOrder.setStoreId(storeId);
storeOrder.setStoreName(storeInfoVo.getStoreName());
storeOrder.setOrderCode(orderCode);
storeOrder.setUserId(uid);
storeOrder.setUserName(nickName);
storeOrder.setUserMobile(mobile);
storeOrder.setPriceExpress(BigDecimal.ZERO);
storeOrder.setPriceTotal(storeTotalPrice.add(storeOrder.getPriceExpress()));
BigDecimal priceActual = storeOrder.getPriceTotal();
if (priceActual.compareTo(storeOrder.getPriceExpress()) < 0) {
priceActual = storeOrder.getPriceExpress();
}
storeOrder.setPriceActual(priceActual.compareTo(BigDecimal.ZERO) < 0 ? BigDecimal.ZERO : priceActual);
storeOrder.setPriceRefund(BigDecimal.ZERO);
storeOrder.setPriceCoupon(BigDecimal.ZERO);
storeOrder.setStorePriceCoupon(BigDecimal.ZERO);
storeOrder.setPriceVoucher(BigDecimal.ZERO);
storeOrder.setStatus(0);
storeOrder.setUcouponId("");
storeOrder.setStoreCouponId("");
storeOrder.setPayType(payType);
storeOrder.setDeviceFrom(deviceFrom);
storeOrder.setSource(source);
storeOrder.setVersion(version);
storeOrder.setIsMember(-1);
storeOrder.setOrderType(0);
storeOrder.setWriteOffCode("");
storeOrder.setPayCountdownMinute(5);
storeOrder.setIpAddress(CurrentUtil.getCliIpAddr());
storeOrder.setCreatedAt(now);
storeOrder.setMarketId("");
storeOrder.setMarketType("");
//订单attr
GoblinOrderAttr orderAttr = GoblinOrderAttr.getNew();
orderAttr.setOrderAttrId(IDGenerator.nextTimeId2());
orderAttr.setOrderId(orderId);
orderAttr.setExpressContacts(addressVo.getName());
orderAttr.setExpressAddress(addressVo.getProvince() + " " + addressVo.getCity() + " " + addressVo.getCounty());
orderAttr.setExpressAddressDetail(addressVo.getAddress());
orderAttr.setExpressPhone(addressVo.getPhone());
orderAttr.setExpressType(1);
orderAttr.setCreatedAt(now);
//返回值
GoblinOrderPreParam preParam = GoblinOrderPreParam.getNew();
preParam.setPriceActual(storeOrder.getPriceActual());
preParam.setStoreName(storeInfoVo.getStoreName());
preParam.setSkuName(skuName);
preParam.setOrderIdList(storeOrder.getOrderId());
preParam.setStoreOrder(storeOrder);
preParam.setOrderAttr(orderAttr);
preParam.setOrderSkuList(goblinOrderSkuList);
return preParam;
} }
//nft订单 //nft订单
...@@ -218,8 +319,10 @@ public class MixOrderServiceImpl implements IMixOrderService { ...@@ -218,8 +319,10 @@ public class MixOrderServiceImpl implements IMixOrderService {
} }
private GoblinPayInnerResultVo payOrder(List<GoblinNftOrder> nftOrder, List<GoblinStoreOrder> goblinOrder, String produceId) { private GoblinPayInnerResultVo payOrder(List<GoblinNftOrder> nftOrder, GoblinOrderPreParam preParam) {
GoblinPayInnerResultVo NftPayResultVo = GoblinPayInnerResultVo.getNew(); GoblinPayInnerResultVo NftPayResultVo = GoblinPayInnerResultVo.getNew();
//是否免费
boolean isFree = false;
return NftPayResultVo; return NftPayResultVo;
} }
......
...@@ -4,6 +4,7 @@ import com.liquidnet.service.adam.dto.vo.AdamEntersVo; ...@@ -4,6 +4,7 @@ import com.liquidnet.service.adam.dto.vo.AdamEntersVo;
import com.liquidnet.service.goblin.dto.vo.*; import com.liquidnet.service.goblin.dto.vo.*;
import com.liquidnet.service.goblin.entity.GoblinNftOrder; import com.liquidnet.service.goblin.entity.GoblinNftOrder;
import com.liquidnet.service.goblin.entity.GoblinOrderSku; import com.liquidnet.service.goblin.entity.GoblinOrderSku;
import com.liquidnet.service.goblin.entity.GoblinStoreOrder;
import com.liquidnet.service.goblin.param.BackCouponParam; import com.liquidnet.service.goblin.param.BackCouponParam;
import com.liquidnet.service.goblin.param.GoblinOrderSqlParam; import com.liquidnet.service.goblin.param.GoblinOrderSqlParam;
import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderListVo; import com.liquidnet.service.kylin.dto.vo.returns.KylinOrderListVo;
...@@ -53,10 +54,25 @@ public class ObjectUtil { ...@@ -53,10 +54,25 @@ public class ObjectUtil {
private static final ArrayList<GoblinBackOrderSkuVo> goblinBackOrderSkuVoArrayList = new ArrayList<>(); private static final ArrayList<GoblinBackOrderSkuVo> goblinBackOrderSkuVoArrayList = new ArrayList<>();
private static final ArrayList<GoblinListCollectVo> goblinListCollectVo = new ArrayList<>(); private static final ArrayList<GoblinListCollectVo> goblinListCollectVo = new ArrayList<>();
private static final ArrayList<GoblinNftOrder> goblinNftOrderList = new ArrayList<>(); private static final ArrayList<GoblinNftOrder> goblinNftOrderList = new ArrayList<>();
private static final ArrayList<GoblinGoodsSkuInfoVo> goblinGoodsSkuInfoVos = new ArrayList<>();
private static final HashMap<String, List<GoblinStoreOrder>> hashMapSp = new HashMap();
private static final HashMap<String, List<GoblinGoodsSkuInfoVo>> goblinGoodsSkuInfoVoMap = new HashMap();
public static Object[] objectsArray; public static Object[] objectsArray;
public static final Integer[] integerArray2 = new Integer[2]; public static final Integer[] integerArray2 = new Integer[2];
public static ArrayList<GoblinGoodsSkuInfoVo> goblinGoodsSkuInfoVos() {
return (ArrayList<GoblinGoodsSkuInfoVo>) goblinGoodsSkuInfoVos.clone();
}
public static HashMap<String,List<GoblinGoodsSkuInfoVo>> goblinGoodsSkuInfoVoMap() {
return (HashMap<String, List<GoblinGoodsSkuInfoVo>>) goblinGoodsSkuInfoVoMap.clone();
}
public static HashMap<String, List<GoblinStoreOrder>> hashMapSp() {
return (HashMap<String, List<GoblinStoreOrder>>) hashMapSp.clone();
}
public static ArrayList<GoblinListCollectVo> getGoblinListCollectVo() { public static ArrayList<GoblinListCollectVo> getGoblinListCollectVo() {
return (ArrayList<GoblinListCollectVo>) goblinListCollectVo.clone(); return (ArrayList<GoblinListCollectVo>) goblinListCollectVo.clone();
} }
......
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