Browse Source

新批量发货接口

master
wangpengfei 2 years ago
parent
commit
48cc9d9483
  1. 12
      mallplus-admin/src/main/java/com/zscat/mallplus/oms/controller/OmsOrderController.java
  2. 6
      mallplus-admin/src/main/java/com/zscat/mallplus/oms/service/IOmsOrderService.java
  3. 30
      mallplus-admin/src/main/java/com/zscat/mallplus/oms/service/impl/OmsOrderServiceImpl.java
  4. 9
      mallplus-mbg/src/main/java/com/zscat/mallplus/oms/mapper/OmsOrderMapper.java
  5. 37
      mallplus-mbg/src/main/resources/mapper/oms/OmsOrderDao.xml

12
mallplus-admin/src/main/java/com/zscat/mallplus/oms/controller/OmsOrderController.java

@ -175,7 +175,17 @@ public class OmsOrderController {
}
return new CommonResult().failed();
}
@SysLog(MODULE = "oms", REMARK = "新批量发货")
@ApiOperation("批量发货")
@RequestMapping(value = "/update/deliveryNew", method = RequestMethod.POST)
@ResponseBody
public Object deliveryNew(@RequestBody List<OmsOrderDeliveryParam> deliveryParamList) {
int count = IOmsOrderService.deliveryNew(deliveryParamList);
if (count > 0) {
return new CommonResult().success(count);
}
return new CommonResult().failed();
}
@SysLog(MODULE = "oms", REMARK = "批量发货")
@ApiOperation("批量发货")
@RequestMapping(value = "/delivery", method = RequestMethod.POST)

6
mallplus-admin/src/main/java/com/zscat/mallplus/oms/service/IOmsOrderService.java

@ -44,7 +44,11 @@ public interface IOmsOrderService extends IService<OmsOrder> {
*/
@Transactional
int delivery(List<OmsOrderDeliveryParam> deliveryParamList);
/**
* 新批量发货
*/
@Transactional
int deliveryNew(List<OmsOrderDeliveryParam> deliveryParamList);
/**
* 批量关闭订单
*/

30
mallplus-admin/src/main/java/com/zscat/mallplus/oms/service/impl/OmsOrderServiceImpl.java

@ -76,7 +76,35 @@ public class OmsOrderServiceImpl extends ServiceImpl<OmsOrderMapper, OmsOrder> i
sendPushMsg(deliveryParamList);
return count;
}
@Override
public int deliveryNew(List<OmsOrderDeliveryParam> deliveryParamList) {
//根据订单查询地址
for(OmsOrderDeliveryParam omsOrderDeliveryParam:deliveryParamList){
String orderId=String.valueOf(omsOrderDeliveryParam.getOrderId());
OmsOrder address=orderMapper.getAddressById(orderId);
omsOrderDeliveryParam.setDeliveryCompany(address.getReceiverDetailAddress());
omsOrderDeliveryParam.setDeliverySn("到店自取");
}
//批量发货
int count = orderMapper.deliveryNew(deliveryParamList);
if (count > 0) {
//添加操作记录
List<OmsOrderOperateHistory> operateHistoryList = deliveryParamList.stream()
.map(omsOrderDeliveryParam -> {
OmsOrderOperateHistory history = new OmsOrderOperateHistory();
history.setOrderId(omsOrderDeliveryParam.getOrderId());
history.setCreateTime(new Date());
history.setOperateMan("后台管理员");
history.setPreStatus(OrderStatus.TO_DELIVER.getValue());
history.setOrderStatus(OrderStatus.DELIVERED.getValue());
history.setNote("完成发货");
return history;
}).collect(Collectors.toList());
orderOperateHistoryDao.saveBatch(operateHistoryList);
}
sendPushMsg(deliveryParamList);
return count;
}
private void sendPushMsg(List<OmsOrderDeliveryParam> deliveryParamList) {
for (OmsOrderDeliveryParam param : deliveryParamList) {
OmsOrder omsOrder = baseMapper.selectById(param.getOrderId());

9
mallplus-mbg/src/main/java/com/zscat/mallplus/oms/mapper/OmsOrderMapper.java

@ -51,7 +51,14 @@ public interface OmsOrderMapper extends BaseMapper<OmsOrder> {
* 批量发货
*/
int delivery(@Param("list") List<OmsOrderDeliveryParam> deliveryParamList);
/**
* 批量发货
*/
int deliveryNew(@Param("list") List<OmsOrderDeliveryParam> deliveryParamList);
/**
* 根据订单查询详细地址
*/
OmsOrder getAddressById(String orderId);
/**
* 根据会员分组订单
*

37
mallplus-mbg/src/main/resources/mapper/oms/OmsOrderDao.xml

@ -229,6 +229,43 @@
</foreach>
AND `status` = 2
</update>
<update id="deliveryNew">
UPDATE oms_order
SET
delivery_sn = CASE id
<foreach collection="list" item="item">
WHEN #{item.orderId} THEN #{item.deliverySn}
</foreach>
END,
delivery_company = CASE id
<foreach collection="list" item="item">
WHEN #{item.orderId} THEN #{item.deliveryCompany}
</foreach>
END,
delivery_time = CASE id
<foreach collection="list" item="item">
WHEN #{item.orderId} THEN now()
</foreach>
END,
`status` = CASE id
<foreach collection="list" item="item">
WHEN #{item.orderId} THEN 3
</foreach>
END
WHERE
id IN
<foreach collection="list" item="item" separator="," open="(" close=")">
#{item.orderId}
</foreach>
AND `status` = 2
</update>
<select id="getAddressById" resultType="com.zscat.mallplus.oms.entity.OmsOrder">
select receiver_detail_address receiverDetailAddress
from oms_order
where id = #{orderId}
</select>
<update id="updateSkuStock">
UPDATE pms_sku_stock
SET

Loading…
Cancel
Save