提交修改
This commit is contained in:
parent
a44f03a3df
commit
e15bfef8fe
@ -0,0 +1,63 @@
|
|||||||
|
package com.heyu.api.data.enums;
|
||||||
|
|
||||||
|
import java.security.PublicKey;
|
||||||
|
|
||||||
|
public enum OrderActionEnums {
|
||||||
|
;
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 取消按钮
|
||||||
|
*/
|
||||||
|
private String buttonName;
|
||||||
|
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 描述
|
||||||
|
*/
|
||||||
|
private String desc;
|
||||||
|
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 接口url
|
||||||
|
*/
|
||||||
|
private String interfaceUri;
|
||||||
|
|
||||||
|
AdminCancel("CancelButton","取消按钮","/mm/order/toShipping"),
|
||||||
|
AdminDelivered("DeliveredButton","妥投,确认收货","/mm/order/delivered"),
|
||||||
|
AdminShipped("ShippedButton","签收按钮","/mm/order/shipped"),
|
||||||
|
AdminToShipping("ToShippingButton","发货按钮","/mm/order/shipped"),
|
||||||
|
AdminUnShipping("UnShippingButton","退货退款","/mm/order/cancel"),
|
||||||
|
AdminUnShipping("UnShippingButton","退货退款","/mm/order/cancel"),
|
||||||
|
;
|
||||||
|
|
||||||
|
|
||||||
|
OrderActionEnums(String buttonName, String desc, String interfaceUri) {
|
||||||
|
this.buttonName = buttonName;
|
||||||
|
this.desc = desc;
|
||||||
|
this.interfaceUri = interfaceUri;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getButtonName() {
|
||||||
|
return buttonName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setButtonName(String buttonName) {
|
||||||
|
this.buttonName = buttonName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getDesc() {
|
||||||
|
return desc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setDesc(String desc) {
|
||||||
|
this.desc = desc;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getInterfaceUri() {
|
||||||
|
return interfaceUri;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setInterfaceUri(String interfaceUri) {
|
||||||
|
this.interfaceUri = interfaceUri;
|
||||||
|
}
|
||||||
|
}
|
||||||
@ -3,6 +3,7 @@ package com.heyu.api.data.utils;
|
|||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.heyu.api.common.LBiFunction0;
|
import com.heyu.api.common.LBiFunction0;
|
||||||
import com.heyu.api.common.test.AriseUser;
|
import com.heyu.api.common.test.AriseUser;
|
||||||
|
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
import org.apache.commons.lang3.ClassUtils;
|
import org.apache.commons.lang3.ClassUtils;
|
||||||
@ -18,7 +19,6 @@ import java.util.concurrent.*;
|
|||||||
@Slf4j
|
@Slf4j
|
||||||
public class SanUtils {
|
public class SanUtils {
|
||||||
|
|
||||||
|
|
||||||
public static <T, R, V> Map<R, V> list2Map(List<V> values, LBiFunction0<T, R> function) {
|
public static <T, R, V> Map<R, V> list2Map(List<V> values, LBiFunction0<T, R> function) {
|
||||||
try {
|
try {
|
||||||
if (CollectionUtils.isEmpty(values)) {
|
if (CollectionUtils.isEmpty(values)) {
|
||||||
@ -55,6 +55,9 @@ public class SanUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
public static <T, R, V> List<R> setNull(List<V> values, LBiFunction0<T, R>... functions) {
|
public static <T, R, V> List<R> setNull(List<V> values, LBiFunction0<T, R>... functions) {
|
||||||
List<R> list = new ArrayList<>();
|
List<R> list = new ArrayList<>();
|
||||||
try {
|
try {
|
||||||
@ -96,7 +99,7 @@ public class SanUtils {
|
|||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static <T, R, V> Map<R, List<V>> list2GroupBy(List<V> values, LBiFunction0<T, R> function) {
|
public static <T, R, V> Map<R, List<V>> groupBy(List<V> values, LBiFunction0<T, R> function) {
|
||||||
if(CollectionUtils.isEmpty(values)){
|
if(CollectionUtils.isEmpty(values)){
|
||||||
return new HashMap<>();
|
return new HashMap<>();
|
||||||
}
|
}
|
||||||
@ -164,6 +167,70 @@ public class SanUtils {
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public static <T, V> List<V> merge(List<V> values, LBiFunction0<T, ? extends Number>... functionArray) {
|
||||||
|
List<V> list = new ArrayList<>();
|
||||||
|
try {
|
||||||
|
if (CollectionUtils.isEmpty(values)) {
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
for (LBiFunction0<T, ? extends Number> tlBiFunction0 : functionArray) {
|
||||||
|
Method method = getMethod(tlBiFunction0);
|
||||||
|
Class<?> returnClazz = method.getReturnType();
|
||||||
|
V v = values.get(0);
|
||||||
|
BigDecimal sum = new BigDecimal(0);
|
||||||
|
for (V value : values) {
|
||||||
|
Object r = method.invoke(value);
|
||||||
|
if (r != null) {
|
||||||
|
sum = NumberUtils.objToBigDecimalDefault(r, BigDecimal.ZERO).add(sum);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
String getMethodName = method.getName();
|
||||||
|
String setMethodName = "set" + getMethodName.substring(3);
|
||||||
|
Method methods[] = v.getClass().getDeclaredMethods();
|
||||||
|
for (Method m : methods) {
|
||||||
|
if (m.getName().equals(setMethodName)) {
|
||||||
|
Object obj = parseBasicTypeWrapper(returnClazz, sum);
|
||||||
|
m.invoke(v,new Object[]{obj});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
list.add(v);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
|
||||||
|
VvTradeOrderLineEntity vvTradeOrderLineEntity1 = new VvTradeOrderLineEntity();
|
||||||
|
VvTradeOrderLineEntity vvTradeOrderLineEntity2 = new VvTradeOrderLineEntity();
|
||||||
|
|
||||||
|
|
||||||
|
vvTradeOrderLineEntity1.setSalePrice(new BigDecimal(10));
|
||||||
|
vvTradeOrderLineEntity2.setSalePrice(new BigDecimal(15));
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
vvTradeOrderLineEntity1.setPromotionPrice(new BigDecimal(3));
|
||||||
|
vvTradeOrderLineEntity2.setPromotionPrice(new BigDecimal(2));
|
||||||
|
|
||||||
|
|
||||||
|
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = new ArrayList<>();
|
||||||
|
vvTradeOrderLineEntityList.add(vvTradeOrderLineEntity1);
|
||||||
|
vvTradeOrderLineEntityList.add(vvTradeOrderLineEntity2);
|
||||||
|
List<VvTradeOrderLineEntity> vvTradeOrderLine = merge(vvTradeOrderLineEntityList,VvTradeOrderLineEntity::getSalePrice,
|
||||||
|
VvTradeOrderLineEntity::getPromotionPrice,
|
||||||
|
VvTradeOrderLineEntity::getRefundCount
|
||||||
|
);
|
||||||
|
System.out.println(JSON.toJSONString(vvTradeOrderLine));
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private static <T, R> Method getSetMethod(LBiFunction0<T, R> function) {
|
private static <T, R> Method getSetMethod(LBiFunction0<T, R> function) {
|
||||||
try {
|
try {
|
||||||
Method method = function.getClass().getDeclaredMethods()[1];
|
Method method = function.getClass().getDeclaredMethods()[1];
|
||||||
@ -555,17 +622,6 @@ public class SanUtils {
|
|||||||
|
|
||||||
|
|
||||||
|
|
||||||
public static void main(String[] args) {
|
|
||||||
|
|
||||||
|
|
||||||
Map<Long, String> map = new HashMap<>();
|
|
||||||
map.put(null,"owiew");
|
|
||||||
System.out.println(JSON.toJSONString(map));
|
|
||||||
|
|
||||||
System.out.println(map.get(null));
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
public static AriseUser getName(AriseUser ariseUser) {
|
public static AriseUser getName(AriseUser ariseUser) {
|
||||||
|
|
||||||
|
|||||||
@ -0,0 +1,29 @@
|
|||||||
|
package com.heyu.api.alibaba.request.mm.order.resp;
|
||||||
|
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class OrderActionDTO {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 取消按钮
|
||||||
|
*/
|
||||||
|
private String buttonName;
|
||||||
|
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 描述
|
||||||
|
*/
|
||||||
|
private String desc;
|
||||||
|
|
||||||
|
|
||||||
|
/***
|
||||||
|
* 接口url
|
||||||
|
*/
|
||||||
|
private String interfaceUri;
|
||||||
|
|
||||||
|
}
|
||||||
@ -1,7 +1,6 @@
|
|||||||
package com.heyu.api.alibaba.request.mm.order.resp;
|
package com.heyu.api.alibaba.request.mm.order.resp;
|
||||||
|
|
||||||
import com.heyu.api.data.entity.vv.VvPackageEntity;
|
import com.heyu.api.data.entity.vv.VvPackageEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -10,5 +9,5 @@ import java.util.List;
|
|||||||
@Data
|
@Data
|
||||||
public class PackageDTO extends VvPackageEntity {
|
public class PackageDTO extends VvPackageEntity {
|
||||||
|
|
||||||
private List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList;
|
private List<VvTradeOrderLineDO> vvTradeOrderLineDOList;
|
||||||
}
|
}
|
||||||
|
|||||||
@ -2,7 +2,6 @@ package com.heyu.api.alibaba.request.mm.order.resp;
|
|||||||
|
|
||||||
|
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@ -14,7 +13,7 @@ public class VVOrderListResp extends VvTradeOrderEntity {
|
|||||||
/***
|
/***
|
||||||
* 订单行信息
|
* 订单行信息
|
||||||
*/
|
*/
|
||||||
private List<VvTradeOrderLineEntity> vvTradeOrderLineList;
|
private List<VvTradeOrderLineDO> vvTradeOrderLineDOList;
|
||||||
|
|
||||||
|
|
||||||
/***
|
/***
|
||||||
|
|||||||
@ -0,0 +1,8 @@
|
|||||||
|
package com.heyu.api.alibaba.request.mm.order.resp;
|
||||||
|
|
||||||
|
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class VvTradeOrderLineDO extends VvTradeOrderLineEntity {
|
||||||
|
}
|
||||||
@ -1,12 +1,16 @@
|
|||||||
package com.heyu.api.service;
|
package com.heyu.api.service;
|
||||||
|
|
||||||
|
import com.heyu.api.alibaba.request.mm.order.VvTradeOrderLineTrackNumberDTO;
|
||||||
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
public interface VvTradeOrderConvertService {
|
public interface VvTradeOrderConvertService {
|
||||||
List<VVOrderListResp> convertTradeOrderLineResp(List<VvTradeOrderEntity> vvTradeOrderEntities,
|
List<VVOrderListResp> convertTradeOrderLineResp(List<VvTradeOrderEntity> vvTradeOrderEntities,
|
||||||
List<VvTradeOrderLineEntity> list) ;
|
List<VvTradeOrderLineEntity> list) ;
|
||||||
|
|
||||||
|
Map<Long, Map<String, VvTradeOrderLineTrackNumberDTO>> groupBytraderOrderIdSkuId(List<VvTradeOrderLineEntity> vvTradeOrderLineEntities);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,8 @@
|
|||||||
|
package com.heyu.api.service.impl;
|
||||||
|
|
||||||
|
public class BaseAction {
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
@ -1,25 +1,21 @@
|
|||||||
package com.heyu.api.service.impl;
|
package com.heyu.api.service.impl;
|
||||||
|
|
||||||
|
import com.heyu.api.alibaba.request.mm.order.VvTradeOrderLineTrackNumberDTO;
|
||||||
import com.heyu.api.alibaba.request.mm.order.resp.PackageDTO;
|
import com.heyu.api.alibaba.request.mm.order.resp.PackageDTO;
|
||||||
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
||||||
|
import com.heyu.api.alibaba.request.mm.order.resp.VvTradeOrderLineDO;
|
||||||
import com.heyu.api.data.dao.vv.VvPackageDao;
|
import com.heyu.api.data.dao.vv.VvPackageDao;
|
||||||
import com.heyu.api.data.entity.vv.VvPackageEntity;
|
import com.heyu.api.data.entity.vv.VvPackageEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderEntity;
|
||||||
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
import com.heyu.api.data.entity.vv.VvTradeOrderLineEntity;
|
||||||
import com.heyu.api.data.enums.RoleEnums;
|
|
||||||
import com.heyu.api.data.service.vv.VvPackageService;
|
|
||||||
import com.heyu.api.data.utils.SanUtils;
|
import com.heyu.api.data.utils.SanUtils;
|
||||||
import com.heyu.api.data.utils.StringUtils;
|
import com.heyu.api.data.utils.StringUtils;
|
||||||
import com.heyu.api.service.VvTradeOrderConvertService;
|
import com.heyu.api.service.VvTradeOrderConvertService;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
|
||||||
import org.springframework.beans.BeanUtils;
|
import org.springframework.beans.BeanUtils;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.*;
|
||||||
import java.util.HashMap;
|
|
||||||
import java.util.List;
|
|
||||||
import java.util.Map;
|
|
||||||
|
|
||||||
@Service
|
@Service
|
||||||
public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertService {
|
public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertService {
|
||||||
@ -27,76 +23,90 @@ public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertServic
|
|||||||
@Autowired
|
@Autowired
|
||||||
private VvPackageDao vvPackageDao;
|
private VvPackageDao vvPackageDao;
|
||||||
|
|
||||||
@Autowired
|
|
||||||
private VvPackageService vvPackageService;
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public List<VVOrderListResp> convertTradeOrderLineResp(List<VvTradeOrderEntity> vvTradeOrderEntities,
|
public List<VVOrderListResp> convertTradeOrderLineResp(List<VvTradeOrderEntity> vvTradeOrderEntities,
|
||||||
List<VvTradeOrderLineEntity> list) {
|
List<VvTradeOrderLineEntity> list) {
|
||||||
List<String> trackNumbers = SanUtils.list2listFilterNull(list, VvTradeOrderLineEntity::getTrackNumber);
|
List<String> trackNumbers = SanUtils.list2listFilterNull(list, VvTradeOrderLineEntity::getTrackNumber);
|
||||||
if(CollectionUtils.isNotEmpty(trackNumbers)){
|
List<VvPackageEntity> packageEntities = vvPackageDao.selectVvPackageByTrackNumbers(trackNumbers);
|
||||||
for (String trackNumber : trackNumbers) {
|
Map<String, VvPackageEntity> vvPackageEntityMap = SanUtils.list2Map(packageEntities, VvPackageEntity::getTrackNumber);
|
||||||
vvPackageService.selectVvKuaidiAndUpdateData(trackNumber, RoleEnums.admin.getRole());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
Map<String, VvPackageEntity> vvPackageEntityMap = new HashMap<>();
|
|
||||||
if (CollectionUtils.isNotEmpty(trackNumbers)) {
|
|
||||||
List<VvPackageEntity> packageEntities = vvPackageDao.selectVvPackageByTrackNumbers(trackNumbers);
|
|
||||||
for (VvPackageEntity packageEntity : packageEntities) {
|
|
||||||
vvPackageEntityMap.put(packageEntity.getTrackNumber(), packageEntity);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
Map<Long, Map<String, VvTradeOrderLineTrackNumberDTO>> groupBytraderOrderIdSkuId = groupBytraderOrderIdSkuId(list);
|
||||||
List<VVOrderListResp> vvOrderListResps = new ArrayList<>();
|
List<VVOrderListResp> vvOrderListResps = new ArrayList<>();
|
||||||
for (VvTradeOrderEntity vvTradeOrderEntity : vvTradeOrderEntities) {
|
for (VvTradeOrderEntity vvTradeOrderEntity : vvTradeOrderEntities) {
|
||||||
VVOrderListResp vvOrderListResp = new VVOrderListResp();
|
VVOrderListResp vvOrderListResp = new VVOrderListResp();
|
||||||
BeanUtils.copyProperties(vvTradeOrderEntity, vvOrderListResp);
|
BeanUtils.copyProperties(vvTradeOrderEntity, vvOrderListResp);
|
||||||
|
|
||||||
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = new ArrayList<>();
|
Map<String, VvTradeOrderLineTrackNumberDTO> vvTradeOrderLineEntityMap = groupBytraderOrderIdSkuId.get(vvTradeOrderEntity.getId());
|
||||||
for (VvTradeOrderLineEntity tradeOrderLineEntity : list) {
|
|
||||||
if (vvTradeOrderEntity.getId().equals(tradeOrderLineEntity.getTradeOrderId())) {
|
|
||||||
vvTradeOrderLineEntityList.add(tradeOrderLineEntity);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
/***
|
|
||||||
* 订单行信息
|
|
||||||
*/
|
|
||||||
List<VvTradeOrderLineEntity> vvTradeOrderLineList = new ArrayList<>();
|
|
||||||
Map<String, PackageDTO> packageDTOMap = new HashMap();
|
|
||||||
|
|
||||||
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
|
||||||
if (StringUtils.isNotBlank(tradeOrderLineEntity.getTrackNumber())) {
|
|
||||||
PackageDTO packageDTO = packageDTOMap.get(tradeOrderLineEntity.getTrackNumber());
|
|
||||||
|
|
||||||
if (packageDTO == null) {
|
|
||||||
VvPackageEntity vvPackage = vvPackageEntityMap.get(tradeOrderLineEntity.getTrackNumber());
|
|
||||||
packageDTO = new PackageDTO();
|
|
||||||
BeanUtils.copyProperties(vvPackage, packageDTO);
|
|
||||||
}
|
|
||||||
|
|
||||||
List<VvTradeOrderLineEntity> vvTradeOrderLineEntitys = packageDTO.getVvTradeOrderLineEntityList();
|
|
||||||
if (vvTradeOrderLineEntitys == null) {
|
|
||||||
vvTradeOrderLineEntitys = new ArrayList<>();
|
|
||||||
}
|
|
||||||
vvTradeOrderLineEntitys.add(tradeOrderLineEntity);
|
|
||||||
packageDTO.setVvTradeOrderLineEntityList(vvTradeOrderLineEntitys);
|
|
||||||
|
|
||||||
packageDTOMap.put(tradeOrderLineEntity.getTrackNumber(), packageDTO);
|
|
||||||
|
|
||||||
} else {
|
|
||||||
vvTradeOrderLineList.add(tradeOrderLineEntity);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
List<PackageDTO> packageList = new ArrayList<>();
|
List<PackageDTO> packageList = new ArrayList<>();
|
||||||
for (Map.Entry<String, PackageDTO> entry : packageDTOMap.entrySet()) {
|
List<VvTradeOrderLineDO> vvTradeOrderLineDOList = new ArrayList<>();
|
||||||
packageList.add(entry.getValue());
|
|
||||||
|
for (Map.Entry<String, VvTradeOrderLineTrackNumberDTO> vvTradeOrderLineTrackNumber : vvTradeOrderLineEntityMap.entrySet()) {
|
||||||
|
VvTradeOrderLineTrackNumberDTO vvTradeOrderLineTrackNumberDTO = vvTradeOrderLineTrackNumber.getValue();
|
||||||
|
List<VvTradeOrderLineEntity> vvTradeOrderLines = vvTradeOrderLineTrackNumberDTO.getVvTradeOrderLineEntities();
|
||||||
|
|
||||||
|
List<VvTradeOrderLineEntity> mergeTradeOrderLineList = SanUtils.merge(
|
||||||
|
vvTradeOrderLines,
|
||||||
|
VvTradeOrderLineEntity::getPromotionPrice,
|
||||||
|
VvTradeOrderLineEntity::getSalePrice,
|
||||||
|
VvTradeOrderLineEntity::getNum,
|
||||||
|
VvTradeOrderLineEntity::getOriginPrice,
|
||||||
|
VvTradeOrderLineEntity::getShippingAmount,
|
||||||
|
VvTradeOrderLineEntity::getRefundAmount,
|
||||||
|
VvTradeOrderLineEntity::getRefundCount
|
||||||
|
);
|
||||||
|
|
||||||
|
List<VvTradeOrderLineDO> vvTradeOrderLineRespList = new ArrayList<>();
|
||||||
|
for (VvTradeOrderLineEntity vvTradeOrderLine : mergeTradeOrderLineList) {
|
||||||
|
VvTradeOrderLineDO vvTradeOrderLineDO = new VvTradeOrderLineDO();
|
||||||
|
BeanUtils.copyProperties(vvTradeOrderLine, vvTradeOrderLineDO);
|
||||||
|
vvTradeOrderLineRespList.add(vvTradeOrderLineDO);
|
||||||
|
}
|
||||||
|
String trackNumber = vvTradeOrderLineTrackNumberDTO.getTrackNumber();
|
||||||
|
if (StringUtils.isNotEmpty(trackNumber)) {
|
||||||
|
VvPackageEntity vvPackage = vvPackageEntityMap.get(trackNumber);
|
||||||
|
if (vvPackage != null) {
|
||||||
|
PackageDTO packageDTO = new PackageDTO();
|
||||||
|
BeanUtils.copyProperties(vvPackage, packageDTO);
|
||||||
|
packageDTO.setVvTradeOrderLineDOList(vvTradeOrderLineRespList);
|
||||||
|
packageList.add(packageDTO);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
vvTradeOrderLineDOList.addAll(vvTradeOrderLineRespList);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
vvOrderListResp.setVvTradeOrderLineList(vvTradeOrderLineList);
|
|
||||||
vvOrderListResp.setPackageList(packageList);
|
vvOrderListResp.setPackageList(packageList);
|
||||||
|
vvOrderListResp.setVvTradeOrderLineDOList(vvTradeOrderLineDOList);
|
||||||
vvOrderListResps.add(vvOrderListResp);
|
vvOrderListResps.add(vvOrderListResp);
|
||||||
}
|
}
|
||||||
return vvOrderListResps;
|
return vvOrderListResps;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<Long, Map<String, VvTradeOrderLineTrackNumberDTO>> groupBytraderOrderIdSkuId(List<VvTradeOrderLineEntity> vvTradeOrderLineEntities) {
|
||||||
|
// 如果有tracknumber ,则以 trader_order_id_sku_id 分组, 如果有trackNumber ,则以 trader_order_id_track_number_sku_id 分组
|
||||||
|
Map<Long, Map<String, VvTradeOrderLineTrackNumberDTO>> groupBytrader_order_id_sku_id = new LinkedHashMap<>();
|
||||||
|
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntities) {
|
||||||
|
Long tradeOrderId = vvTradeOrderLineEntity.getTradeOrderId();
|
||||||
|
Map<String, VvTradeOrderLineTrackNumberDTO> groupByTradeOrderIdTrackNumberSkudIdMap = groupBytrader_order_id_sku_id.get(tradeOrderId);
|
||||||
|
if (groupByTradeOrderIdTrackNumberSkudIdMap == null) {
|
||||||
|
groupByTradeOrderIdTrackNumberSkudIdMap = new HashMap<>();
|
||||||
|
}
|
||||||
|
String key = tradeOrderId + "_" + vvTradeOrderLineEntity.getSkuId();
|
||||||
|
|
||||||
|
if (StringUtils.isNotEmpty(vvTradeOrderLineEntity.getTrackNumber())) {
|
||||||
|
key = tradeOrderId + "_" + vvTradeOrderLineEntity.getTrackNumber() + "_" + vvTradeOrderLineEntity.getSkuId();
|
||||||
|
}
|
||||||
|
|
||||||
|
VvTradeOrderLineTrackNumberDTO vvTradeOrderLineTrackNumberDTO = groupByTradeOrderIdTrackNumberSkudIdMap.get(key);
|
||||||
|
if (vvTradeOrderLineTrackNumberDTO == null) {
|
||||||
|
vvTradeOrderLineTrackNumberDTO = new VvTradeOrderLineTrackNumberDTO();
|
||||||
|
}
|
||||||
|
vvTradeOrderLineTrackNumberDTO.getVvTradeOrderLineEntities().add(vvTradeOrderLineEntity);
|
||||||
|
vvTradeOrderLineTrackNumberDTO.setTrackNumber(vvTradeOrderLineEntity.getTrackNumber());
|
||||||
|
groupByTradeOrderIdTrackNumberSkudIdMap.put(key, vvTradeOrderLineTrackNumberDTO);
|
||||||
|
groupBytrader_order_id_sku_id.put(tradeOrderId, groupByTradeOrderIdTrackNumberSkudIdMap);
|
||||||
|
}
|
||||||
|
return groupBytrader_order_id_sku_id;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,4 @@
|
|||||||
|
package com.heyu.api.service.impl.impl;
|
||||||
|
|
||||||
|
public class CancelAction {
|
||||||
|
}
|
||||||
@ -0,0 +1,4 @@
|
|||||||
|
package com.heyu.api.service.impl.impl;
|
||||||
|
|
||||||
|
public class DeliveredAction {
|
||||||
|
}
|
||||||
@ -0,0 +1,4 @@
|
|||||||
|
package com.heyu.api.service.impl.impl;
|
||||||
|
|
||||||
|
public class ShippedAction {
|
||||||
|
}
|
||||||
@ -0,0 +1,4 @@
|
|||||||
|
package com.heyu.api.service.impl.impl;
|
||||||
|
|
||||||
|
public class ToShippingAction {
|
||||||
|
}
|
||||||
@ -0,0 +1,4 @@
|
|||||||
|
package com.heyu.api.service.impl.impl;
|
||||||
|
|
||||||
|
public class UnShippingAction {
|
||||||
|
}
|
||||||
@ -83,10 +83,10 @@ public class AdminBuyerController {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<VvBuyerAddressEntity> vvBuyerAddressEntities = vvBuyerAddressDao.selectMapByBuyerIds(buyerIds);
|
List<VvBuyerAddressEntity> vvBuyerAddressEntities = vvBuyerAddressDao.selectMapByBuyerIds(buyerIds);
|
||||||
Map<Long, List<VvBuyerAddressEntity>> listMap = SanUtils.list2GroupBy(vvBuyerAddressEntities, VvBuyerAddressEntity::getBuyerId);
|
Map<Long, List<VvBuyerAddressEntity>> listMap = SanUtils.groupBy(vvBuyerAddressEntities, VvBuyerAddressEntity::getBuyerId);
|
||||||
|
|
||||||
List<VvPromoterEntity> vvPromoterEntities = vvPromoterDao.selectVvPromoterByPromoteIds(promoterIds);
|
List<VvPromoterEntity> vvPromoterEntities = vvPromoterDao.selectVvPromoterByPromoteIds(promoterIds);
|
||||||
Map<String, List<VvPromoterEntity>> vvPromoterGroupBy = SanUtils.list2GroupBy(vvPromoterEntities, VvPromoterEntity::getPromoterId);
|
Map<String, List<VvPromoterEntity>> vvPromoterGroupBy = SanUtils.groupBy(vvPromoterEntities, VvPromoterEntity::getPromoterId);
|
||||||
List<VvBuyerDTO> buyerDTOs = new ArrayList<>();
|
List<VvBuyerDTO> buyerDTOs = new ArrayList<>();
|
||||||
for (VvBuyerEntity vvBuyerAddressEntity : vvBuyerEntities) {
|
for (VvBuyerEntity vvBuyerAddressEntity : vvBuyerEntities) {
|
||||||
VvBuyerDTO vvBuyerDTO = new VvBuyerDTO();
|
VvBuyerDTO vvBuyerDTO = new VvBuyerDTO();
|
||||||
|
|||||||
@ -4,10 +4,6 @@ package com.heyu.api.controller.mm;
|
|||||||
import com.alibaba.fastjson.JSON;
|
import com.alibaba.fastjson.JSON;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.heyu.api.alibaba.request.mm.VvUnPackDTO;
|
import com.heyu.api.alibaba.request.mm.VvUnPackDTO;
|
||||||
import com.heyu.api.data.enums.OrderStatusEnums;
|
|
||||||
import com.heyu.api.data.enums.RefundTypeEnums;
|
|
||||||
import com.heyu.api.data.enums.ReverseStatusEnums;
|
|
||||||
import com.heyu.api.data.enums.ShippingTypeEnums;
|
|
||||||
import com.heyu.api.alibaba.request.mm.order.*;
|
import com.heyu.api.alibaba.request.mm.order.*;
|
||||||
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderDetailResp;
|
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderDetailResp;
|
||||||
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
|
||||||
@ -15,7 +11,7 @@ import com.heyu.api.alibaba.request.mm.reverse.AppliyReverseRequest;
|
|||||||
import com.heyu.api.data.dao.vv.*;
|
import com.heyu.api.data.dao.vv.*;
|
||||||
import com.heyu.api.data.dto.PackageDelivedDelayDTO;
|
import com.heyu.api.data.dto.PackageDelivedDelayDTO;
|
||||||
import com.heyu.api.data.entity.vv.*;
|
import com.heyu.api.data.entity.vv.*;
|
||||||
import com.heyu.api.data.enums.DelayTypeEnums;
|
import com.heyu.api.data.enums.*;
|
||||||
import com.heyu.api.data.utils.BigDecimalUtil;
|
import com.heyu.api.data.utils.BigDecimalUtil;
|
||||||
import com.heyu.api.data.utils.DateUtils;
|
import com.heyu.api.data.utils.DateUtils;
|
||||||
import com.heyu.api.data.utils.R;
|
import com.heyu.api.data.utils.R;
|
||||||
@ -167,7 +163,8 @@ public class AdminOrderController {
|
|||||||
vvOrderRequest.getModifyTimestampSort()
|
vvOrderRequest.getModifyTimestampSort()
|
||||||
);
|
);
|
||||||
|
|
||||||
List<VVOrderListResp> vvOrderListResps = vvTradeOrderConvertService.convertTradeOrderLineResp(tradeOrderEntities,list);
|
List<VVOrderListResp> vvOrderListResps = vvTradeOrderConvertService.convertTradeOrderLineResp(tradeOrderEntities, list);
|
||||||
|
|
||||||
return R.ok().setData(vvOrderListResps);
|
return R.ok().setData(vvOrderListResps);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -199,9 +196,9 @@ public class AdminOrderController {
|
|||||||
|
|
||||||
/***
|
/***
|
||||||
* 打包并发货
|
* 打包并发货
|
||||||
* http://localhost:8888/mm/order/toPackAndShipping
|
* http://localhost:8888/mm/order/toShipping
|
||||||
*/
|
*/
|
||||||
@RequestMapping("/toPackAndShipping")
|
@RequestMapping("/toShipping")
|
||||||
public R toPackAndShipping(@RequestBody VvToPackDTO vvOrderRequest) {
|
public R toPackAndShipping(@RequestBody VvToPackDTO vvOrderRequest) {
|
||||||
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(vvOrderRequest.getTradeOrderLineIds());
|
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(vvOrderRequest.getTradeOrderLineIds());
|
||||||
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
||||||
@ -238,9 +235,9 @@ public class AdminOrderController {
|
|||||||
|
|
||||||
/***
|
/***
|
||||||
* 取消打包
|
* 取消打包
|
||||||
* http://localhost:8888/mm/order/unpack
|
* http://localhost:8888/mm/order/unShipping
|
||||||
*/
|
*/
|
||||||
@RequestMapping("/unpack")
|
@RequestMapping("/unShipping")
|
||||||
public R unpack(@RequestBody VvUnPackDTO vvOrderRequest) {
|
public R unpack(@RequestBody VvUnPackDTO vvOrderRequest) {
|
||||||
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(vvOrderRequest.getTradeOrderLineIds());
|
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(vvOrderRequest.getTradeOrderLineIds());
|
||||||
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
||||||
|
|||||||
@ -228,7 +228,7 @@ public class AdminProductController {
|
|||||||
|
|
||||||
|
|
||||||
Map<Long, List<VvProductDetailEntity>> groupbyProductDetail =
|
Map<Long, List<VvProductDetailEntity>> groupbyProductDetail =
|
||||||
SanUtils.list2GroupBy(vvProductDTO.getVvProductDetailList(), VvProductDetailEntity::getId);
|
SanUtils.groupBy(vvProductDTO.getVvProductDetailList(), VvProductDetailEntity::getId);
|
||||||
|
|
||||||
// 1. 如果传过来的参数存在,则更新 ,如果不存在 ,则直接物理删除掉
|
// 1. 如果传过来的参数存在,则更新 ,如果不存在 ,则直接物理删除掉
|
||||||
for (VvProductDetailEntity productDetailEntity : productDetailEntities) {
|
for (VvProductDetailEntity productDetailEntity : productDetailEntities) {
|
||||||
@ -247,7 +247,7 @@ public class AdminProductController {
|
|||||||
List<VvSkuDTO> vvSkuDTOS = vvProductDTO.getVvSkuList();
|
List<VvSkuDTO> vvSkuDTOS = vvProductDTO.getVvSkuList();
|
||||||
List<VvSkuEntity> vvSkuEntities = vvSkuDao.selectVvSkuByProductId(productId);
|
List<VvSkuEntity> vvSkuEntities = vvSkuDao.selectVvSkuByProductId(productId);
|
||||||
|
|
||||||
Map<Long, List<VvSkuDTO>> groupbySkuDTOs = SanUtils.list2GroupBy(vvSkuDTOS, VvSkuDTO::getId);
|
Map<Long, List<VvSkuDTO>> groupbySkuDTOs = SanUtils.groupBy(vvSkuDTOS, VvSkuDTO::getId);
|
||||||
for (VvSkuEntity vvSkuEntity : vvSkuEntities) {
|
for (VvSkuEntity vvSkuEntity : vvSkuEntities) {
|
||||||
if (CollectionUtils.notContainsKey(groupbySkuDTOs, vvSkuEntity.getId())) {
|
if (CollectionUtils.notContainsKey(groupbySkuDTOs, vvSkuEntity.getId())) {
|
||||||
vvSkuPropertyValueDao.deleteVvSkuPropertyValueRealBySkuId(vvSkuEntity.getId());
|
vvSkuPropertyValueDao.deleteVvSkuPropertyValueRealBySkuId(vvSkuEntity.getId());
|
||||||
@ -271,7 +271,7 @@ public class AdminProductController {
|
|||||||
if (skuId != null) {
|
if (skuId != null) {
|
||||||
// 更新
|
// 更新
|
||||||
Map<Long, List<VvSkuPropertyValueEntity>> groupbySkuPropertyValue =
|
Map<Long, List<VvSkuPropertyValueEntity>> groupbySkuPropertyValue =
|
||||||
SanUtils.list2GroupBy(vvSkuPropertyValueEntities, VvSkuPropertyValueEntity::getId);
|
SanUtils.groupBy(vvSkuPropertyValueEntities, VvSkuPropertyValueEntity::getId);
|
||||||
List<VvSkuPropertyValueEntity> vvSkuPropertyValueDB = vvSkuPropertyValueDao.selectVvSkuPropertyValueBySkuId(vvSkuDTO.getId());
|
List<VvSkuPropertyValueEntity> vvSkuPropertyValueDB = vvSkuPropertyValueDao.selectVvSkuPropertyValueBySkuId(vvSkuDTO.getId());
|
||||||
for (VvSkuPropertyValueEntity vvSkuPropertyValueDb : vvSkuPropertyValueDB) {
|
for (VvSkuPropertyValueEntity vvSkuPropertyValueDb : vvSkuPropertyValueDB) {
|
||||||
// 如果不存在 ,则直接删除
|
// 如果不存在 ,则直接删除
|
||||||
@ -291,7 +291,7 @@ public class AdminProductController {
|
|||||||
List<VvProductPropertyEntity> vvProductPropertyEntities = vvProductPropertyDao.selectVvProductPropertyByProductId(productId);
|
List<VvProductPropertyEntity> vvProductPropertyEntities = vvProductPropertyDao.selectVvProductPropertyByProductId(productId);
|
||||||
|
|
||||||
Map<Long, List<VvProductPropertyDTO>> groupbyProductProperty =
|
Map<Long, List<VvProductPropertyDTO>> groupbyProductProperty =
|
||||||
SanUtils.list2GroupBy(vvProductPropertyDTOS, VvProductPropertyDTO::getId);
|
SanUtils.groupBy(vvProductPropertyDTOS, VvProductPropertyDTO::getId);
|
||||||
|
|
||||||
for (VvProductPropertyEntity vvProductProperty : vvProductPropertyEntities) {
|
for (VvProductPropertyEntity vvProductProperty : vvProductPropertyEntities) {
|
||||||
// 对他进行编辑
|
// 对他进行编辑
|
||||||
@ -308,7 +308,7 @@ public class AdminProductController {
|
|||||||
|
|
||||||
List<VvProductPropertyValueEntity> vvProductPropertyValueEntities = vvProductPropertyDTO.getVvProductPropertyValueList();
|
List<VvProductPropertyValueEntity> vvProductPropertyValueEntities = vvProductPropertyDTO.getVvProductPropertyValueList();
|
||||||
Map<Long, List<VvProductPropertyValueEntity>> groupbyProductPropertyValue =
|
Map<Long, List<VvProductPropertyValueEntity>> groupbyProductPropertyValue =
|
||||||
SanUtils.list2GroupBy(vvProductPropertyValueEntities, VvProductPropertyValueEntity::getId);
|
SanUtils.groupBy(vvProductPropertyValueEntities, VvProductPropertyValueEntity::getId);
|
||||||
|
|
||||||
// 对他进行编辑
|
// 对他进行编辑
|
||||||
if (productPropertyId != null) {
|
if (productPropertyId != null) {
|
||||||
|
|||||||
@ -88,9 +88,9 @@ public class AdminReverseController {
|
|||||||
List<VvReverseOrderEntity> vvReverseOrderEntities = pageUtils.getRows();
|
List<VvReverseOrderEntity> vvReverseOrderEntities = pageUtils.getRows();
|
||||||
List<Long> reverseOrderIds = SanUtils.list2listFilterNull(vvReverseOrderEntities, VvReverseOrderEntity::getId);
|
List<Long> reverseOrderIds = SanUtils.list2listFilterNull(vvReverseOrderEntities, VvReverseOrderEntity::getId);
|
||||||
List<VvReverseOrderLineEntity> reverseOrderLineEntities = vvReverseOrderLineDao.selectVvReverseOrderLineByReverseOrderIds(reverseOrderIds);
|
List<VvReverseOrderLineEntity> reverseOrderLineEntities = vvReverseOrderLineDao.selectVvReverseOrderLineByReverseOrderIds(reverseOrderIds);
|
||||||
Map<Long, List<VvReverseOrderLineEntity>> vvReverseOrderLineEntityMap = SanUtils.list2GroupBy(reverseOrderLineEntities, VvReverseOrderLineEntity::getReverseOrderId);
|
Map<Long, List<VvReverseOrderLineEntity>> vvReverseOrderLineEntityMap = SanUtils.groupBy(reverseOrderLineEntities, VvReverseOrderLineEntity::getReverseOrderId);
|
||||||
List<VvReverseOrderProveEntity> vvReverseOrderProveEntities = vvReverseOrderProveDao.selectVvReverseOrderProveByReverseOrderId(reverseOrderIds);
|
List<VvReverseOrderProveEntity> vvReverseOrderProveEntities = vvReverseOrderProveDao.selectVvReverseOrderProveByReverseOrderId(reverseOrderIds);
|
||||||
Map<Long, List<VvReverseOrderProveEntity>> vvProveMap = SanUtils.list2GroupBy(vvReverseOrderProveEntities, VvReverseOrderProveEntity::getReverseOrderId);
|
Map<Long, List<VvReverseOrderProveEntity>> vvProveMap = SanUtils.groupBy(vvReverseOrderProveEntities, VvReverseOrderProveEntity::getReverseOrderId);
|
||||||
List<String> trackNumbers = new ArrayList<>();
|
List<String> trackNumbers = new ArrayList<>();
|
||||||
for (VvReverseOrderEntity vvReverseOrderEntity : vvReverseOrderEntities) {
|
for (VvReverseOrderEntity vvReverseOrderEntity : vvReverseOrderEntities) {
|
||||||
if (StringUtils.isNotEmpty(vvReverseOrderEntity.getTrackNumber())) {
|
if (StringUtils.isNotEmpty(vvReverseOrderEntity.getTrackNumber())) {
|
||||||
|
|||||||
@ -20,6 +20,7 @@ import com.heyu.api.data.utils.*;
|
|||||||
import com.heyu.api.jsapi.JsapiPrepay;
|
import com.heyu.api.jsapi.JsapiPrepay;
|
||||||
import com.heyu.api.jsapi.dto.pay.DirectAPIv3JsapiPrepayResponse;
|
import com.heyu.api.jsapi.dto.pay.DirectAPIv3JsapiPrepayResponse;
|
||||||
import com.heyu.api.jsapi.dto.pay.WxPayVO;
|
import com.heyu.api.jsapi.dto.pay.WxPayVO;
|
||||||
|
import com.heyu.api.service.VvTradeOrderConvertService;
|
||||||
import com.heyu.api.utils.ISelect;
|
import com.heyu.api.utils.ISelect;
|
||||||
import com.heyu.api.utils.PPageUtils;
|
import com.heyu.api.utils.PPageUtils;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@ -96,6 +97,11 @@ public class AppOrderController {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private JsapiPrepay jsApiPrepay;
|
private JsapiPrepay jsApiPrepay;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private VvTradeOrderConvertService vvTradeOrderConvertService;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/***
|
/***
|
||||||
* https://api.1024api.com/api-interface/app/order/list
|
* https://api.1024api.com/api-interface/app/order/list
|
||||||
*
|
*
|
||||||
@ -143,36 +149,11 @@ public class AppOrderController {
|
|||||||
|
|
||||||
Map<String, VvPackageEntity> vvPackageEntityMap = SanUtils.list2Map(packageEntities, VvPackageEntity::getTrackNumber);
|
Map<String, VvPackageEntity> vvPackageEntityMap = SanUtils.list2Map(packageEntities, VvPackageEntity::getTrackNumber);
|
||||||
|
|
||||||
// 如果有tracknumber ,则以 trader_order_id_sku_id 分组, 如果有trackNumber ,则以 trader_order_id_track_number_sku_id 分组
|
Map<Long, Map<String, VvTradeOrderLineTrackNumberDTO>> groupBytraderOrderIdSkuId = vvTradeOrderConvertService.groupBytraderOrderIdSkuId(vvTradeOrderLineEntities);
|
||||||
Map<Long, Map<String, VvTradeOrderLineTrackNumberDTO>> groupBytrader_order_id_sku_id = new HashMap<>();
|
|
||||||
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntities) {
|
|
||||||
Long tradeOrderId = vvTradeOrderLineEntity.getTradeOrderId();
|
|
||||||
Map<String, VvTradeOrderLineTrackNumberDTO> keyMap = groupBytrader_order_id_sku_id.get(tradeOrderId);
|
|
||||||
if (keyMap == null) {
|
|
||||||
keyMap = new HashMap<>();
|
|
||||||
}
|
|
||||||
String key = vvTradeOrderLineEntity.getSkuId() + "";
|
|
||||||
|
|
||||||
if (StringUtils.isNotEmpty(vvTradeOrderLineEntity.getTrackNumber())) {
|
|
||||||
key = vvTradeOrderLineEntity.getTrackNumber() +"_"+ vvTradeOrderLineEntity.getSkuId() + "";
|
|
||||||
}
|
|
||||||
|
|
||||||
VvTradeOrderLineTrackNumberDTO vvTradeOrderLineTrackNumberDTO = keyMap.get(key);
|
|
||||||
if (vvTradeOrderLineTrackNumberDTO == null) {
|
|
||||||
vvTradeOrderLineTrackNumberDTO = new VvTradeOrderLineTrackNumberDTO();
|
|
||||||
}
|
|
||||||
vvTradeOrderLineTrackNumberDTO.getVvTradeOrderLineEntities().add(vvTradeOrderLineEntity);
|
|
||||||
vvTradeOrderLineTrackNumberDTO.setTrackNumber(vvTradeOrderLineEntity.getTrackNumber());
|
|
||||||
|
|
||||||
|
|
||||||
keyMap.put(key, vvTradeOrderLineTrackNumberDTO);
|
|
||||||
groupBytrader_order_id_sku_id.put(tradeOrderId, keyMap);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
List<AppTradeOrderPackageDTO> appTradeOrderPackageDTOList = new ArrayList<>();
|
List<AppTradeOrderPackageDTO> appTradeOrderPackageDTOList = new ArrayList<>();
|
||||||
for (Long tradeOrderId : tradeOrderIds) {
|
for (Long tradeOrderId : tradeOrderIds) {
|
||||||
Map<String, VvTradeOrderLineTrackNumberDTO> stringVvTradeOrderLineTrackNumberDTOMap = groupBytrader_order_id_sku_id.get(tradeOrderId);
|
Map<String, VvTradeOrderLineTrackNumberDTO> stringVvTradeOrderLineTrackNumberDTOMap = groupBytraderOrderIdSkuId.get(tradeOrderId);
|
||||||
VvTradeOrderEntity vvTradeOrderEntity = vvTradeOrderEntityMap.get(tradeOrderId);
|
VvTradeOrderEntity vvTradeOrderEntity = vvTradeOrderEntityMap.get(tradeOrderId);
|
||||||
AppTradeOrderPackageDTO appTradeOrderPackageDTO = new AppTradeOrderPackageDTO();
|
AppTradeOrderPackageDTO appTradeOrderPackageDTO = new AppTradeOrderPackageDTO();
|
||||||
VvPackageEntity packageDTO = null;
|
VvPackageEntity packageDTO = null;
|
||||||
@ -180,7 +161,6 @@ public class AppOrderController {
|
|||||||
for (Map.Entry<String, VvTradeOrderLineTrackNumberDTO> mapEntry : stringVvTradeOrderLineTrackNumberDTOMap.entrySet()) {
|
for (Map.Entry<String, VvTradeOrderLineTrackNumberDTO> mapEntry : stringVvTradeOrderLineTrackNumberDTOMap.entrySet()) {
|
||||||
VvTradeOrderLineTrackNumberDTO vvTradeOrderLineTrackNumberDTO = mapEntry.getValue();
|
VvTradeOrderLineTrackNumberDTO vvTradeOrderLineTrackNumberDTO = mapEntry.getValue();
|
||||||
VvTradeOrderLineEntity vvTradeOrderLineEntity = vvTradeOrderLineTrackNumberDTO.getVvTradeOrderLineEntities().get(0);
|
VvTradeOrderLineEntity vvTradeOrderLineEntity = vvTradeOrderLineTrackNumberDTO.getVvTradeOrderLineEntities().get(0);
|
||||||
|
|
||||||
AppTradeOrderLineDTO appTradeOrderLineResp = new AppTradeOrderLineDTO();
|
AppTradeOrderLineDTO appTradeOrderLineResp = new AppTradeOrderLineDTO();
|
||||||
|
|
||||||
BeanUtils.copyProperties(vvTradeOrderLineEntity, appTradeOrderLineResp);
|
BeanUtils.copyProperties(vvTradeOrderLineEntity, appTradeOrderLineResp);
|
||||||
@ -191,10 +171,11 @@ public class AppOrderController {
|
|||||||
List<Long> tradeOrderLineIdList = new ArrayList<>();
|
List<Long> tradeOrderLineIdList = new ArrayList<>();
|
||||||
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
|
||||||
//当时促销价
|
//当时促销价
|
||||||
promotionPrice = BigDecimalUtil.add(promotionPrice,tradeOrderLineEntity.getPromotionPrice());
|
promotionPrice = BigDecimalUtil.add(promotionPrice, tradeOrderLineEntity.getPromotionPrice());
|
||||||
salePrice = BigDecimalUtil.add(salePrice,tradeOrderLineEntity.getSalePrice());
|
salePrice = BigDecimalUtil.add(salePrice, tradeOrderLineEntity.getSalePrice());
|
||||||
tradeOrderLineIdList.add(tradeOrderLineEntity.getId());
|
tradeOrderLineIdList.add(tradeOrderLineEntity.getId());
|
||||||
}
|
}
|
||||||
|
|
||||||
vvTradeOrderLineEntity.setPromotionPrice(promotionPrice);
|
vvTradeOrderLineEntity.setPromotionPrice(promotionPrice);
|
||||||
vvTradeOrderLineEntity.setSalePrice(salePrice);
|
vvTradeOrderLineEntity.setSalePrice(salePrice);
|
||||||
// 如果有tracknumber ,则以 trader_order_id_sku_id 分组, 如果有trackNumber ,则以 trader_order_id_track_number_sku_id 分组
|
// 如果有tracknumber ,则以 trader_order_id_sku_id 分组, 如果有trackNumber ,则以 trader_order_id_track_number_sku_id 分组
|
||||||
@ -204,7 +185,6 @@ public class AppOrderController {
|
|||||||
appTradeOrderLineResp.setNum(vvTradeOrderLineTrackNumberDTO.getVvTradeOrderLineEntities().size());
|
appTradeOrderLineResp.setNum(vvTradeOrderLineTrackNumberDTO.getVvTradeOrderLineEntities().size());
|
||||||
appTradeOrderLineResp.setTradeOrderLineIdList(tradeOrderLineIdList);
|
appTradeOrderLineResp.setTradeOrderLineIdList(tradeOrderLineIdList);
|
||||||
appTradeOrderLineDTOList.add(appTradeOrderLineResp);
|
appTradeOrderLineDTOList.add(appTradeOrderLineResp);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
appTradeOrderPackageDTO.setAppTradeOrderLineDTOList(appTradeOrderLineDTOList);
|
appTradeOrderPackageDTO.setAppTradeOrderLineDTOList(appTradeOrderLineDTOList);
|
||||||
|
|||||||
@ -29,7 +29,7 @@ public class AppScrollController {
|
|||||||
@RequestMapping("/list")
|
@RequestMapping("/list")
|
||||||
public R query(@RequestBody AppBaseRequest request) {
|
public R query(@RequestBody AppBaseRequest request) {
|
||||||
List<VvScrollConfigEntity> vvScrollConfigEntityList = vvScrollConfigDao.selectVvScrollConfigAll();
|
List<VvScrollConfigEntity> vvScrollConfigEntityList = vvScrollConfigDao.selectVvScrollConfigAll();
|
||||||
Map<String, List<VvScrollConfigEntity>> configMap = SanUtils.list2GroupBy(vvScrollConfigEntityList, VvScrollConfigEntity::getType);
|
Map<String, List<VvScrollConfigEntity>> configMap = SanUtils.groupBy(vvScrollConfigEntityList, VvScrollConfigEntity::getType);
|
||||||
return R.ok().setData(configMap);
|
return R.ok().setData(configMap);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user