提交修改

This commit is contained in:
quyixiao 2025-10-28 13:28:27 +08:00
parent 90f9c0891a
commit d6004ea439
5 changed files with 80 additions and 19 deletions

View File

@ -10,7 +10,7 @@ import java.util.Date;import java.util.Date;
/**
*包裹表
* @author quyixiao
* @since 2025-10-23
* @since 2025-10-28
*/
@Data
@ -41,6 +41,7 @@ private static final long serialVersionUID = 1L;
public final static String gmt_send_mq_delivered = CLASS_NAME + "gmt_send_mq_delivered"; // 发送消息mq,确认妥投
public final static String gmt_delivered = CLASS_NAME + "gmt_delivered"; // 已经妥投
public final static String delivered_by = CLASS_NAME + "delivered_by"; // system:系统user:用户 admin 后台确认
public final static String shipping_type = CLASS_NAME + "shipping_type"; // order 正向 reverse 逆向
//
@TableId(value = "id", type = IdType.AUTO)
private Long id;
@ -82,6 +83,8 @@ private static final long serialVersionUID = 1L;
private Date gmtDelivered;
//system:系统user:用户 admin 后台确认
private String deliveredBy;
//order 正向 reverse 逆向
private String shippingType;
/**
*
* @return
@ -382,6 +385,21 @@ private static final long serialVersionUID = 1L;
this.deliveredBy = deliveredBy;
}
/**
* order 正向 reverse 逆向
* @return
*/
public String getShippingType() {
return shippingType;
}
/**
* order 正向 reverse 逆向
* @param shippingType
*/
public void setShippingType(String shippingType) {
this.shippingType = shippingType;
}
@Override
public String toString() {
return "VvPackageEntity{" +
@ -405,6 +423,7 @@ private static final long serialVersionUID = 1L;
",gmtSendMqDelivered=" + gmtSendMqDelivered +
",gmtDelivered=" + gmtDelivered +
",deliveredBy=" + deliveredBy +
",shippingType=" + shippingType +
"}";
}
}

View File

@ -94,7 +94,7 @@ public class MysqlMain_insert {
List<TablesBean> list = new ArrayList<TablesBean>();
list.add(new TablesBean("vv_draw_cash_record"));
list.add(new TablesBean("vv_package"));

View File

@ -0,0 +1,36 @@
package com.heyu.api.alibaba.request.mm.enums;
public enum ShippingTypeEnums {
order("order","正向"),
reverse("reverse","逆向"),
;
ShippingTypeEnums(String type, String desc) {
this.type = type;
this.desc = desc;
}
private String type;
private String desc;
public String getType() {
return type;
}
public void setType(String type) {
this.type = type;
}
public String getDesc() {
return desc;
}
public void setDesc(String desc) {
this.desc = desc;
}
}

View File

@ -4,6 +4,7 @@ package com.heyu.api.controller.mm;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.heyu.api.alibaba.request.mm.enums.OrderStatusEnums;
import com.heyu.api.alibaba.request.mm.enums.ShippingTypeEnums;
import com.heyu.api.alibaba.request.mm.order.*;
import com.heyu.api.alibaba.request.mm.order.resp.PackageDTO;
import com.heyu.api.alibaba.request.mm.order.resp.VVOrderListResp;
@ -86,11 +87,10 @@ public class AdminOrderController {
List<VvTradeOrderLineEntity> vvTradeOrderLineEntities = pageUtils.getRows();
// 获取订单
List<Long> tradeOrderIds = SanUtils.list2listFilterNull(vvTradeOrderLineEntities,VvTradeOrderLineEntity::getTradeOrderId );
List<Long> tradeOrderIds = SanUtils.list2listFilterNull(vvTradeOrderLineEntities, VvTradeOrderLineEntity::getTradeOrderId);
List<VvTradeOrderEntity> tradeOrderEntities = vvTradeOrderDao.selectVvTradeOrderByTradeOrderIds(tradeOrderIds);
// 对订单进行排序必须按照子单的顺序
Map<Long, VvTradeOrderEntity> vvTradeOrderEntityMap = SanUtils.list2Map(tradeOrderEntities, VvTradeOrderEntity::getId);
List<VvTradeOrderEntity> vvTradeOrderEntities = new ArrayList<>();
@ -191,7 +191,7 @@ public class AdminOrderController {
public R toShipping(@RequestBody VvToPackDTO vvOrderRequest) {
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(vvOrderRequest.getTradeOrderLineIds());
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
if(!OrderStatusEnums.wait_shipping.getStatus().equals(tradeOrderLineEntity.getStatus())){
if (!OrderStatusEnums.wait_shipping.getStatus().equals(tradeOrderLineEntity.getStatus())) {
return R.error("订单状态不对");
}
}
@ -206,14 +206,10 @@ public class AdminOrderController {
vvPackageEntity.setShippingFrom(vvOrderRequest.getShippingFrom());
vvPackageEntity.setShippingTo(vvTradeOrderEntity.getContry() + vvTradeOrderEntity.getCity() + vvTradeOrderEntity.getDistrict() + vvTradeOrderEntity.getBuyerDetailAddress());
vvPackageEntity.setTrackNumber(vvPackageEntity.getTrackNumber());
vvPackageEntity.setShippingType(ShippingTypeEnums.order.getType());
vvPackageDao.insertOrUpdateVvPackage(vvPackageEntity);
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
tradeOrderLineEntity.setTrackNumber(vvOrderRequest.getTrackNumber());
tradeOrderLineEntity.setStatus(OrderStatusEnums.shipping.getStatus()); // 已经发货
@ -224,7 +220,6 @@ public class AdminOrderController {
}
/***
* 订单打包
*/
@ -248,7 +243,7 @@ public class AdminOrderController {
public R delivered(@RequestBody VvDeliveredDTO vvDeliveredDTO) {
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByIds(vvDeliveredDTO.getTradeOrderLineIds());
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
if(!OrderStatusEnums.shipping.getStatus().equals(tradeOrderLineEntity.getStatus())){
if (!OrderStatusEnums.shipping.getStatus().equals(tradeOrderLineEntity.getStatus())) {
return R.error("订单状态不对");
}
}
@ -262,7 +257,6 @@ public class AdminOrderController {
}
/***
* 上传结算证据
*/
@ -273,8 +267,6 @@ public class AdminOrderController {
VvSettlementProveEntity vvSettlementProveEntity = new VvSettlementProveEntity();
vvSettlementProveDao.insertOrUpdateVvSettlementProve(vvSettlementProveEntity);
for (ResourceDTO resource : vvSettleProveDTO.getResources()) {
VvSettlementProveDetailEntity vvSettlementProveDetailEntity = new VvSettlementProveDetailEntity();
vvSettlementProveDetailEntity.setType(resource.getType());

View File

@ -1,8 +1,10 @@
package com.heyu.api.controller.vv;
import com.alibaba.fastjson.JSON;
import com.heyu.api.alibaba.request.mm.enums.ReverseStatusEnums;
import com.heyu.api.alibaba.request.mm.enums.ReverseUploadSceneEnums;
import com.heyu.api.alibaba.request.mm.enums.ShippingTypeEnums;
import com.heyu.api.alibaba.request.mm.order.ResourceDTO;
import com.heyu.api.alibaba.request.mm.reverse.AppliyReverseCloseRequest;
import com.heyu.api.alibaba.request.mm.reverse.AppliyReverseProveRequest;
@ -21,6 +23,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
@ -46,6 +49,9 @@ public class AppReverseController {
@Autowired
private VvReverseOrderProveDao vvReverseOrderProveDao;
@Autowired
private VvPackageDao vvPackageDao;
/***
* /app/reverse/add
*
@ -79,6 +85,10 @@ public class AppReverseController {
BigDecimal originRefundAmount = SanUtils.sum(vvTradeOrderLineEntityList, VvTradeOrderLineEntity::getPromotionPrice); // 本来应该退款金额
if (realRefundAmount.compareTo(originRefundAmount) > 0) {
return R.error("退款金额不能超过商品总额度");
}
vvReverseOrderEntity.setRefundTradeOrderLineCount(tradeOrderLineIds.size());
vvReverseOrderEntity.setRefundType(appliyReverseRequest.getRefundType());
vvReverseOrderEntity.setGmtBuyerApplyRefund(new Date());
@ -139,7 +149,6 @@ public class AppReverseController {
return R.ok("申请退款成功");
}
/**
* 退货退款 /app/reverse/tracknumber
*
@ -156,20 +165,25 @@ public class AppReverseController {
vvReverseOrderEntity.setGmtBuyerPost(new Date());
vvReverseOrderDao.updateVvReverseOrderById(vvReverseOrderEntity);
List<String> packageImageUrls = new ArrayList<>();
if (CollectionUtils.isNotEmpty(appliyReverseRequest.getResourceDTOList())) {
for (ResourceDTO resourceDTO : appliyReverseRequest.getResourceDTOList()) {
VvReverseOrderProveEntity vvReverseOrderProveEntity = new VvReverseOrderProveEntity();
vvReverseOrderProveEntity.setReverseOrderId(vvReverseOrderEntity.getId());
vvReverseOrderProveEntity.setResourceUrl(resourceDTO.getResourceUrl());
vvReverseOrderProveEntity.setType(resourceDTO.getType());
vvReverseOrderProveEntity.setScene(ReverseUploadSceneEnums.upload_track_number.getCode());
packageImageUrls.add(resourceDTO.getResourceUrl());
vvReverseOrderProveDao.insertOrUpdateVvReverseOrderProve(vvReverseOrderProveEntity);
}
}
VvPackageEntity vvPackageEntity = new VvPackageEntity();
vvPackageEntity.setPackageImageUrl(JSON.toJSONString(packageImageUrls));
vvPackageEntity.setShippingAmount(BigDecimal.ZERO);
vvPackageEntity.setShippingType(ShippingTypeEnums.reverse.getType());
vvPackageEntity.setTrackNumber(vvPackageEntity.getTrackNumber());
vvPackageDao.insertOrUpdateVvPackage(vvPackageEntity);
return R.ok();
}