提交修改

This commit is contained in:
quyixiao 2025-11-16 20:37:58 +08:00
parent f11c291625
commit 451904cd3f
7 changed files with 59 additions and 32 deletions

View File

@ -7,10 +7,16 @@ package com.heyu.api.data.dao.vv;
* @author quyixiao
* @since 2025-11-16
*/
import com.heyu.api.data.entity.vv.VvTradeOrderLineStatusLogEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.heyu.api.data.entity.vv.VvTradeOrderLineStatusLogEntity;
import com.lz.mybatis.plugin.annotations.IN;
import com.lz.mybatis.plugin.annotations.OrderBy;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface VvTradeOrderLineStatusLogDao extends BaseMapper<VvTradeOrderLineStatusLogEntity> {
@ -21,16 +27,16 @@ public interface VvTradeOrderLineStatusLogDao extends BaseMapper<VvTradeOrderLin
Long insertVvTradeOrderLineStatusLog(VvTradeOrderLineStatusLogEntity vvTradeOrderLineStatusLog);
Long insertOrUpdateVvTradeOrderLineStatusLog(VvTradeOrderLineStatusLogEntity vvTradeOrderLineStatusLog);
Long insertOrUpdateVvTradeOrderLineStatusLog(VvTradeOrderLineStatusLogEntity vvTradeOrderLineStatusLog);
int updateVvTradeOrderLineStatusLogById(VvTradeOrderLineStatusLogEntity vvTradeOrderLineStatusLog);
int updateVvTradeOrderLineStatusLogById(VvTradeOrderLineStatusLogEntity vvTradeOrderLineStatusLog);
int updateCoverVvTradeOrderLineStatusLogById(VvTradeOrderLineStatusLogEntity vvTradeOrderLineStatusLog);
int deleteVvTradeOrderLineStatusLogById(@Param("id")Long id);
int updateCoverVvTradeOrderLineStatusLogById(VvTradeOrderLineStatusLogEntity vvTradeOrderLineStatusLog);
int deleteVvTradeOrderLineStatusLogById(@Param("id") Long id);
@OrderBy(VvTradeOrderLineStatusLogEntity.id_)
List<VvTradeOrderLineStatusLogEntity> selectVvTradeOrderLineStatusLogByIdList(@IN List<Long> tradeOrderLineId);
}

View File

@ -9,10 +9,6 @@ public class VVOrderDetailRequest {
* 订单id
*/
private Long tradeOrderId;
}

View File

@ -1,6 +1,7 @@
package com.heyu.api.alibaba.request.mm.order.resp;
import com.heyu.api.data.entity.vv.VvPackageEntity;
import com.heyu.api.data.entity.vv.VvTradeOrderLineStatusLogEntity;
import lombok.Data;
import java.util.ArrayList;
@ -10,8 +11,10 @@ import java.util.List;
@Data
public class AdminPackageDTO extends VvPackageEntity {
private List<VvTradeOrderLineDO> vvTradeOrderLineDOList = new ArrayList<>();
private List<OrderActionDTO> orderActionList;
private List<VvTradeOrderLineStatusLogEntity> vvTradeOrderLineStatusLogList ;
}

View File

@ -7,8 +7,6 @@ import lombok.Data;
@Data
public class VVOrderDetailResp {
/***
* 订单行信息
*/

View File

@ -27,13 +27,10 @@ public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertServic
@Autowired
private VvPackageDao vvPackageDao;
@Autowired
private VvTradeOrderLineStatusLogDao vvTradeOrderLineStatusLogDao;
@Override
public List<VVOrderListResp> convertTradeOrderLineResp(List<VvTradeOrderEntity> vvTradeOrderEntities,
List<VvTradeOrderLineEntity> list,boolean isApp) {
@ -90,11 +87,9 @@ public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertServic
for (Long tradeOrderLineId : tradeOrderLineIdList) {
addOrderLineStatusLog(tradeOrderLineId, status, changeStatusUser, reason);
}
return tradeOrderLineIdList.size();
}
@Override
public int addOrderLineStatusLog(Long tradeOrderLineId, String status, String changeStatusUser, String... reason) {
VvTradeOrderLineStatusLogEntity entity = new VvTradeOrderLineStatusLogEntity();
@ -105,9 +100,8 @@ public class VvTradeOrderConvertServiceImpl implements VvTradeOrderConvertServic
entity.setReason(reason[0]);
}
entity.setTraceId(LogAspect.threadLocalNo.get());
vvTradeOrderLineStatusLogDao.insertVvTradeOrderLineStatusLog(entity);
return 1;
}
}

View File

@ -5,8 +5,10 @@ import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.heyu.api.alibaba.request.mm.VvUnShippingDTO;
import com.heyu.api.alibaba.request.mm.order.*;
import com.heyu.api.alibaba.request.mm.order.resp.AdminPackageDTO;
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.VvTradeOrderLineDO;
import com.heyu.api.alibaba.request.mm.reverse.AppliyReverseRequest;
import com.heyu.api.data.dao.vv.*;
import com.heyu.api.data.dto.PackageDelivedDelayDTO;
@ -66,7 +68,6 @@ public class AdminOrderController {
@Autowired
private VvBuyerDao vvBuyerDao;
@Value("${eb.config.rabbitQueue.delayQueue}")
private String delayQueue;
@ -86,6 +87,8 @@ public class AdminOrderController {
@Autowired
private VvReverseOrderDao vvReverseOrderDao;
@Autowired
private VvTradeOrderLineStatusLogDao vvTradeOrderLineStatusLogDao;
/***
* 列表
@ -154,7 +157,7 @@ public class AdminOrderController {
vvOrderRequest.getModifyTimestampSort()
);
List<VVOrderListResp> vvOrderListResps = vvTradeOrderConvertService.convertTradeOrderLineResp(tradeOrderEntities, list,false);
List<VVOrderListResp> vvOrderListResps = vvTradeOrderConvertService.convertTradeOrderLineResp(tradeOrderEntities, list, false);
pageUtils.setRows(vvOrderListResps);
return R.ok().setData(pageUtils);
@ -162,31 +165,42 @@ public class AdminOrderController {
/***
* 订单详情
*
* /mm/order/detail
*
*/
@RequestMapping("/detail")
public R detail(@RequestBody VVOrderDetailRequest request) {
VvTradeOrderEntity vvTradeOrderEntity = vvTradeOrderDao.selectVvTradeOrderById(request.getTradeOrderId());
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(request.getTradeOrderId());
List<Long> tradeOrderLineIdList = SanUtils.getFieldList(vvTradeOrderLineEntityList, VvTradeOrderLineEntity::getId);
List<VvTradeOrderLineStatusLogEntity> vvTradeOrderLineStatusLogList = vvTradeOrderLineStatusLogDao.selectVvTradeOrderLineStatusLogByIdList(tradeOrderLineIdList);
Map<Long, List<VvTradeOrderLineStatusLogEntity>> tradeOrderLineStatusLogMap = SanUtils.groupBy(vvTradeOrderLineStatusLogList, VvTradeOrderLineStatusLogEntity::getTradeOrderLineId);
List<VvTradeOrderEntity> vvTradeOrderEntities = SanUtils.asList(vvTradeOrderEntity);
List<VVOrderListResp> vvOrderListResps = vvTradeOrderConvertService.convertTradeOrderLineResp(vvTradeOrderEntities, vvTradeOrderLineEntityList, false);
VVOrderDetailResp vvOrderDetailResp = new VVOrderDetailResp();
vvOrderDetailResp.setVvTradeOrderResp(vvOrderListResps.get(0));
if (CollectionUtils.isEmpty(vvOrderListResps)) {
for (VVOrderListResp vvOrderListResp : vvOrderListResps) {
List<AdminPackageDTO> adminPackageDTOS = vvOrderListResp.getPackageList();
if (CollectionUtils.isEmpty(adminPackageDTOS)) {
for (AdminPackageDTO adminPackageDTO : adminPackageDTOS) {
if (CollectionUtils.isNotEmpty(adminPackageDTO.getVvTradeOrderLineDOList())) {
VvTradeOrderLineDO tradeOrderLineDO = adminPackageDTO.getVvTradeOrderLineDOList().get(0);
adminPackageDTO.setVvTradeOrderLineStatusLogList(tradeOrderLineStatusLogMap.get(tradeOrderLineDO.getId()));
}
}
}
}
}
VvBuyerEntity vvBuyerEntity = vvBuyerDao.selectVvBuyerById(vvTradeOrderEntity.getBuyerId());
vvOrderDetailResp.setVvBuyerEntity(vvBuyerEntity);
return R.ok().setData(vvOrderDetailResp);
}
/***
* 打包并发货
* http://localhost:8888/mm/order/toShipping
@ -342,12 +356,14 @@ public class AdminOrderController {
*/
@RequestMapping("/cancel")
public R delivered(@RequestBody VvCancelDTO vvCancelDTO) {
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTradeOrderId(vvCancelDTO.getTradeOrderId());
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) {
if (!OrderStatusEnums.wait_shipping.getStatus().equals(vvTradeOrderLineEntity.getStatus())) {
return R.error("订单状态不是wait_shipping不能取消订单");
}
}
AppliyReverseRequest appliyReverseRequest = new AppliyReverseRequest();
appliyReverseRequest.setRefundType(RefundTypeEnums.only_refund.getCode());
appliyReverseRequest.setRefundReason("订单取消:" + vvCancelDTO.getCancelReason());
@ -380,7 +396,6 @@ public class AdminOrderController {
vvCancelDTO.getCancelReason()
);
}
vvReverseOrderDao.updateVvReverseOrderById(reverseOrderEntity);
}
return r;
@ -401,6 +416,7 @@ public class AdminOrderController {
vvSettlementProveDetailDao.insertOrUpdateVvSettlementProveDetail(vvSettlementProveDetailEntity);
}
for (VvTradeOrderLineEntity tradeOrderLineEntity : vvTradeOrderLineEntityList) {
tradeOrderLineEntity.setSettleStatus(1);
// 更新利润

View File

@ -2,6 +2,7 @@ package com.heyu.api.listener.delay.handler;
import com.alibaba.fastjson.JSONObject;
import com.heyu.api.data.dao.vv.VvTradeOrderLineStatusLogDao;
import com.heyu.api.data.enums.OrderStatusEnums;
import com.heyu.api.data.dao.vv.VvPackageDao;
import com.heyu.api.data.dao.vv.VvTradeOrderLineDao;
@ -29,6 +30,10 @@ public class DeliveredHandler extends BaseDelayedHandler {
@Autowired
private VvTradeOrderLineDao vvTradeOrderLineDao;
@Autowired
private VvTradeOrderLineStatusLogDao vvTradeOrderLineStatusLogDao;
@Override
public R handler(String message) {
log.info("DeliveredHandler receive message:{}", message);
@ -45,10 +50,19 @@ public class DeliveredHandler extends BaseDelayedHandler {
// 更新子单信息
List<VvTradeOrderLineEntity> vvTradeOrderLineEntityList = vvTradeOrderLineDao.selectVvTradeOrderLineByTrackNumber(vvPackage.getTrackNumber());
for (VvTradeOrderLineEntity vvTradeOrderLineEntity : vvTradeOrderLineEntityList) {
vvTradeOrderLineEntity.setDeliveredBy(RoleEnums.job.getRole());
vvTradeOrderLineEntity.setDeliveredUser(RoleEnums.job.getRole());
vvTradeOrderLineEntity.setGmtDelivered(new Date());
vvTradeOrderLineEntity.setStatus(OrderStatusEnums.delivered.getStatus());
vvTradeOrderLineDao.updateVvTradeOrderLineById(vvTradeOrderLineEntity);
}
return R.ok();
}