重构备货功能;手动发货加入备货、分配供应商发货加入备货;

This commit is contained in:
Richie 2025-05-23 21:21:08 +08:00
parent ed0bb999ce
commit b027b9b4bd
8 changed files with 409 additions and 504 deletions

View File

@ -1,58 +1,58 @@
package cn.qihangerp.api.order.controller; //package cn.qihangerp.api.order.controller;
//
//
import cn.qihangerp.common.AjaxResult; //import cn.qihangerp.common.AjaxResult;
import cn.qihangerp.common.PageQuery; //import cn.qihangerp.common.PageQuery;
import cn.qihangerp.common.TableDataInfo; //import cn.qihangerp.common.TableDataInfo;
import cn.qihangerp.module.order.domain.bo.ShipStockUpBo; //import cn.qihangerp.module.order.domain.bo.ShipStockUpBo;
import cn.qihangerp.module.order.domain.bo.ShipStockUpCompleteBo; //import cn.qihangerp.module.order.domain.bo.ShipStockUpCompleteBo;
import cn.qihangerp.module.order.service.OShipStockUpService; //import cn.qihangerp.module.order.service.OShipStockUpService;
import cn.qihangerp.module.order.service.OShipWaybillService; //import cn.qihangerp.module.order.service.OShipWaybillService;
import cn.qihangerp.security.common.BaseController; //import cn.qihangerp.security.common.BaseController;
import lombok.AllArgsConstructor; //import lombok.AllArgsConstructor;
import org.springframework.web.bind.annotation.*; //import org.springframework.web.bind.annotation.*;
//
@AllArgsConstructor //@AllArgsConstructor
@RestController //@RestController
@RequestMapping("/ship") //@RequestMapping("/ship")
public class ShipStockupController extends BaseController { //public class ShipStockupController extends BaseController {
private final OShipStockUpService shipStockUpService; // private final OShipStockUpService shipStockUpService;
private final OShipWaybillService shipWaybillService; // private final OShipWaybillService shipWaybillService;
//
/** // /**
* 备货列表 // * 备货列表
* @param bo // * @param bo
* @param pageQuery // * @param pageQuery
* @return // * @return
*/ // */
@GetMapping("/stock_up_list") // @GetMapping("/stock_up_list")
public TableDataInfo stock_up_list(ShipStockUpBo bo, PageQuery pageQuery) // public TableDataInfo stock_up_list(ShipStockUpBo bo, PageQuery pageQuery)
{ // {
var pageList = shipStockUpService.queryPageList(bo,pageQuery); // var pageList = shipStockUpService.queryPageList(bo,pageQuery);
return getDataTable(pageList); // return getDataTable(pageList);
} // }
//
@PostMapping("/stock_up_complete") // @PostMapping("/stock_up_complete")
public AjaxResult stock_up_complete(@RequestBody ShipStockUpCompleteBo bo) // public AjaxResult stock_up_complete(@RequestBody ShipStockUpCompleteBo bo)
{ // {
int result = shipStockUpService.stockUpComplete(bo); // int result = shipStockUpService.stockUpComplete(bo);
if(result == -1) return AjaxResult.error("参数错误orderItemIds为空"); // if(result == -1) return AjaxResult.error("参数错误orderItemIds为空");
if(result == -2) return AjaxResult.error("参数错误:没有要添加的"); // if(result == -2) return AjaxResult.error("参数错误:没有要添加的");
else if(result == -1001) return AjaxResult.error("存在错误的orderItemId状态不对不能生成出库单"); // else if(result == -1001) return AjaxResult.error("存在错误的orderItemId状态不对不能生成出库单");
else if(result == -1002) return AjaxResult.error("存在错误的订单数据名单明细中没有skuId请修改"); // else if(result == -1002) return AjaxResult.error("存在错误的订单数据名单明细中没有skuId请修改");
//wmsStockOutEntryService.insertWmsStockOutEntry(wmsStockOutEntry) // //wmsStockOutEntryService.insertWmsStockOutEntry(wmsStockOutEntry)
return toAjax(1); // return toAjax(1);
} // }
//
@PostMapping("/stock_up_complete_by_order") // @PostMapping("/stock_up_complete_by_order")
public AjaxResult stock_up_completeByOrder(@RequestBody ShipStockUpCompleteBo bo) // public AjaxResult stock_up_completeByOrder(@RequestBody ShipStockUpCompleteBo bo)
{ // {
int result = shipStockUpService.stockUpCompleteByOrder(bo); // int result = shipStockUpService.stockUpCompleteByOrder(bo);
if(result == -1) return AjaxResult.error("参数错误orderItemIds为空"); // if(result == -1) return AjaxResult.error("参数错误orderItemIds为空");
if(result == -2) return AjaxResult.error("参数错误:没有要添加的"); // if(result == -2) return AjaxResult.error("参数错误:没有要添加的");
else if(result == -1001) return AjaxResult.error("存在错误的orderItemId状态不对不能生成出库单"); // else if(result == -1001) return AjaxResult.error("存在错误的orderItemId状态不对不能生成出库单");
else if(result == -1002) return AjaxResult.error("存在错误的订单数据名单明细中没有skuId请修改"); // else if(result == -1002) return AjaxResult.error("存在错误的订单数据名单明细中没有skuId请修改");
//wmsStockOutEntryService.insertWmsStockOutEntry(wmsStockOutEntry) // //wmsStockOutEntryService.insertWmsStockOutEntry(wmsStockOutEntry)
return toAjax(1); // return toAjax(1);
} // }
} //}

View File

@ -1,113 +1,113 @@
package cn.qihangerp.module.order.domain; //package cn.qihangerp.module.order.domain;
//
import java.io.Serializable; //import java.io.Serializable;
import java.util.Date; //import java.util.Date;
//
import com.baomidou.mybatisplus.annotation.IdType; //import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId; //import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data; //import lombok.Data;
//
/** ///**
* 备货表打单加入备货清单 // * 备货表打单加入备货清单
* @TableName o_ship_stock_up // * @TableName o_ship_stock_up
*/ // */
@Data //@Data
public class OShipStockUp implements Serializable { //public class OShipStockUp implements Serializable {
/** // /**
* // *
*/ // */
@TableId(type = IdType.AUTO) // @TableId(type = IdType.AUTO)
private String id; // private String id;
//
/** // /**
* 店铺id // * 店铺id
*/ // */
private Long shopId; // private Long shopId;
//
/** // /**
* erp订单id // * erp订单id
*/ // */
private String saleOrderId; // private String saleOrderId;
//
/** // /**
* erp订单itemid // * erp订单itemid
*/ // */
private String saleOrderItemId; // private String saleOrderItemId;
//
/** // /**
* 订单编号 // * 订单编号
*/ // */
private String orderNum; // private String orderNum;
//
/** // /**
* 原始订单skuid // * 原始订单skuid
*/ // */
private String originalSkuId; // private String originalSkuId;
//
/** // /**
* erp系统商品id // * erp系统商品id
*/ // */
private Long goodsId; // private Long goodsId;
//
/** // /**
* erp系统商品规格id // * erp系统商品规格id
*/ // */
private Long specId; // private Long specId;
//
/** // /**
* 商品标题 // * 商品标题
*/ // */
private String goodsTitle; // private String goodsTitle;
//
/** // /**
* 商品图片 // * 商品图片
*/ // */
private String goodsImg; // private String goodsImg;
//
/** // /**
* 商品规格 // * 商品规格
*/ // */
private String goodsSpec; // private String goodsSpec;
//
/** // /**
* 商品编码 // * 商品编码
*/ // */
private String goodsNum; // private String goodsNum;
//
/** // /**
* 商品规格编码 // * 商品规格编码
*/ // */
private String specNum; // private String specNum;
//
/** // /**
* 商品数量 // * 商品数量
*/ // */
private Integer quantity; // private Integer quantity;
//
/** // /**
* 状态0待备货1备货中2已出库3已发货 // * 状态0待备货1备货中2已出库3已发货
*/ // */
private Integer status; // private Integer status;
//
/** // /**
* 创建时间 // * 创建时间
*/ // */
private Date createTime; // private Date createTime;
//
/** // /**
* 创建人 // * 创建人
*/ // */
private String createBy; // private String createBy;
//
/** // /**
* 更新时间 // * 更新时间
*/ // */
private Date updateTime; // private Date updateTime;
//
/** // /**
* 更新人 // * 更新人
*/ // */
private String updateBy; // private String updateBy;
//
private static final long serialVersionUID = 1L; // private static final long serialVersionUID = 1L;
} //}

View File

@ -1,19 +1,19 @@
package cn.qihangerp.module.order.mapper; //package cn.qihangerp.module.order.mapper;
//
//
import cn.qihangerp.module.order.domain.OShipStockUp; //import cn.qihangerp.module.order.domain.OShipStockUp;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; //import com.baomidou.mybatisplus.core.mapper.BaseMapper;
//
/** ///**
* @author qilip //* @author qilip
* @description 针对表o_ship_stock_up(备货表打单加入备货清单)的数据库操作Mapper //* @description 针对表o_ship_stock_up(备货表打单加入备货清单)的数据库操作Mapper
* @createDate 2024-07-28 18:29:53 //* @createDate 2024-07-28 18:29:53
* @Entity cn.qihangerp.module.order.domain.OShipStockUp //* @Entity cn.qihangerp.module.order.domain.OShipStockUp
*/ //*/
public interface OShipStockUpMapper extends BaseMapper<OShipStockUp> { //public interface OShipStockUpMapper extends BaseMapper<OShipStockUp> {
//
} //}
//
//
//
//

View File

@ -1,25 +1,25 @@
package cn.qihangerp.module.order.service; //package cn.qihangerp.module.order.service;
//
import cn.qihangerp.common.PageQuery; //import cn.qihangerp.common.PageQuery;
import cn.qihangerp.common.PageResult; //import cn.qihangerp.common.PageResult;
import cn.qihangerp.module.order.domain.OShipStockUp; //import cn.qihangerp.module.order.domain.OShipStockUp;
import cn.qihangerp.module.order.domain.bo.ShipStockUpBo; //import cn.qihangerp.module.order.domain.bo.ShipStockUpBo;
import cn.qihangerp.module.order.domain.bo.ShipStockUpCompleteBo; //import cn.qihangerp.module.order.domain.bo.ShipStockUpCompleteBo;
import com.baomidou.mybatisplus.extension.service.IService; //import com.baomidou.mybatisplus.extension.service.IService;
//
/** ///**
* @author qilip //* @author qilip
* @description 针对表o_ship_stock_up(备货表打单加入备货清单)的数据库操作Service //* @description 针对表o_ship_stock_up(备货表打单加入备货清单)的数据库操作Service
* @createDate 2024-07-28 18:29:53 //* @createDate 2024-07-28 18:29:53
*/ //*/
public interface OShipStockUpService extends IService<OShipStockUp> { //public interface OShipStockUpService extends IService<OShipStockUp> {
PageResult<OShipStockUp> queryPageList(ShipStockUpBo bo, PageQuery pageQuery); // PageResult<OShipStockUp> queryPageList(ShipStockUpBo bo, PageQuery pageQuery);
//
/** // /**
* 备货完成 // * 备货完成
* @param bo // * @param bo
* @return // * @return
*/ // */
int stockUpComplete(ShipStockUpCompleteBo bo); // int stockUpComplete(ShipStockUpCompleteBo bo);
int stockUpCompleteByOrder(ShipStockUpCompleteBo bo); // int stockUpCompleteByOrder(ShipStockUpCompleteBo bo);
} //}

View File

@ -31,13 +31,6 @@ public interface OShipmentService extends IService<OShipment> {
*/ */
ResultVo<Integer> handOrderShip(OrderShipBo shipping); ResultVo<Integer> handOrderShip(OrderShipBo shipping);
/**
* 订单备货很多逻辑
* @param orderNum
* @param shopType
* @return
*/
ResultVo<Integer> shipStockup(String orderNum, EnumShopType shopType);
/** /**
* 发货消息 * 发货消息
@ -47,5 +40,5 @@ public interface OShipmentService extends IService<OShipment> {
* @param logisticsCode * @param logisticsCode
* @return * @return
*/ */
ResultVo<Integer> shipSendMessage(String orderNum, EnumShopType shopType,String logisticsCompany,String logisticsCode); // ResultVo<Integer> shipSendMessage(String orderNum, EnumShopType shopType,String logisticsCompany,String logisticsCode);
} }

View File

@ -1,107 +1,107 @@
package cn.qihangerp.module.order.service.impl; //package cn.qihangerp.module.order.service.impl;
//
import cn.qihangerp.module.order.domain.OShipStockUp; //import cn.qihangerp.module.order.domain.OShipStockUp;
import cn.qihangerp.module.order.domain.bo.ShipStockUpBo; //import cn.qihangerp.module.order.domain.bo.ShipStockUpBo;
import cn.qihangerp.module.order.domain.bo.ShipStockUpCompleteBo; //import cn.qihangerp.module.order.domain.bo.ShipStockUpCompleteBo;
import cn.qihangerp.module.order.mapper.OShipStockUpMapper; //import cn.qihangerp.module.order.mapper.OShipStockUpMapper;
import cn.qihangerp.module.order.service.OShipStockUpService; //import cn.qihangerp.module.order.service.OShipStockUpService;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; //import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; //import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; //import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import cn.qihangerp.common.PageQuery; //import cn.qihangerp.common.PageQuery;
import cn.qihangerp.common.PageResult; //import cn.qihangerp.common.PageResult;
//
import lombok.AllArgsConstructor; //import lombok.AllArgsConstructor;
import org.springframework.stereotype.Service; //import org.springframework.stereotype.Service;
import org.springframework.util.StringUtils; //import org.springframework.util.StringUtils;
//
import java.util.Date; //import java.util.Date;
import java.util.List; //import java.util.List;
//
/** ///**
* @author qilip //* @author qilip
* @description 针对表o_ship_stock_up(备货表打单加入备货清单)的数据库操作Service实现 //* @description 针对表o_ship_stock_up(备货表打单加入备货清单)的数据库操作Service实现
* @createDate 2024-07-28 18:29:53 //* @createDate 2024-07-28 18:29:53
*/ //*/
@AllArgsConstructor //@AllArgsConstructor
@Service //@Service
public class OShipStockUpServiceImpl extends ServiceImpl<OShipStockUpMapper, OShipStockUp> //public class OShipStockUpServiceImpl extends ServiceImpl<OShipStockUpMapper, OShipStockUp>
implements OShipStockUpService { // implements OShipStockUpService {
private final OShipStockUpMapper mapper; // private final OShipStockUpMapper mapper;
//
@Override // @Override
public PageResult<OShipStockUp> queryPageList(ShipStockUpBo bo, PageQuery pageQuery) { // public PageResult<OShipStockUp> queryPageList(ShipStockUpBo bo, PageQuery pageQuery) {
LambdaQueryWrapper<OShipStockUp> queryWrapper = new LambdaQueryWrapper<OShipStockUp>() // LambdaQueryWrapper<OShipStockUp> queryWrapper = new LambdaQueryWrapper<OShipStockUp>()
.eq(bo.getShopId()!=null,OShipStockUp::getShopId,bo.getShopId()) // .eq(bo.getShopId()!=null,OShipStockUp::getShopId,bo.getShopId())
.eq(bo.getStatus()!=null,OShipStockUp::getStatus,bo.getStatus()) // .eq(bo.getStatus()!=null,OShipStockUp::getStatus,bo.getStatus())
.eq(StringUtils.hasText(bo.getOrderNum()),OShipStockUp::getOrderNum,bo.getOrderNum()) // .eq(StringUtils.hasText(bo.getOrderNum()),OShipStockUp::getOrderNum,bo.getOrderNum())
; // ;
Page<OShipStockUp> pages = mapper.selectPage(pageQuery.build(), queryWrapper); // Page<OShipStockUp> pages = mapper.selectPage(pageQuery.build(), queryWrapper);
//
return PageResult.build(pages); // return PageResult.build(pages);
} // }
//
/** // /**
* 备货完成 // * 备货完成
* @param bo // * @param bo
* @return // * @return
*/ // */
@Override // @Override
public int stockUpComplete(ShipStockUpCompleteBo bo) { // public int stockUpComplete(ShipStockUpCompleteBo bo) {
//
if(bo.getIds() == null || bo.getIds().length == 0) return -1; // if(bo.getIds() == null || bo.getIds().length == 0) return -1;
//
int total=0; // int total=0;
// 循环判断状态 // // 循环判断状态
for (Long id:bo.getIds()) { // for (Long id:bo.getIds()) {
OShipStockUp up = mapper.selectById(id); // OShipStockUp up = mapper.selectById(id);
if (up != null) { // if (up != null) {
if (up.getStatus() == 0 || up.getStatus() == 1) { // if (up.getStatus() == 0 || up.getStatus() == 1) {
OShipStockUp update = new OShipStockUp(); // OShipStockUp update = new OShipStockUp();
update.setId(id.toString()); // update.setId(id.toString());
update.setStatus(2);//备货完成 // update.setStatus(2);//备货完成
update.setUpdateBy("备货完成"); // update.setUpdateBy("备货完成");
update.setUpdateTime(new Date()); // update.setUpdateTime(new Date());
mapper.updateById(update); // mapper.updateById(update);
} // }
} // }
} // }
//
return 1; // return 1;
} // }
//
/** // /**
* 备货完成 by Order // * 备货完成 by Order
* @param bo // * @param bo
* @return // * @return
*/ // */
@Override // @Override
public int stockUpCompleteByOrder(ShipStockUpCompleteBo bo) { // public int stockUpCompleteByOrder(ShipStockUpCompleteBo bo) {
//
if(bo.getOrderNums() == null || bo.getOrderNums().length == 0) return -1; // if(bo.getOrderNums() == null || bo.getOrderNums().length == 0) return -1;
//
int total=0; // int total=0;
// 循环判断状态 // // 循环判断状态
for (String orderNum:bo.getOrderNums()) { // for (String orderNum:bo.getOrderNums()) {
List<OShipStockUp> upList = mapper.selectList(new LambdaQueryWrapper<OShipStockUp>().eq(OShipStockUp::getOrderNum,orderNum)); // List<OShipStockUp> upList = mapper.selectList(new LambdaQueryWrapper<OShipStockUp>().eq(OShipStockUp::getOrderNum,orderNum));
if (upList != null) { // if (upList != null) {
for(OShipStockUp up : upList) { // for(OShipStockUp up : upList) {
if (up.getStatus() == 0 || up.getStatus() == 1) { // if (up.getStatus() == 0 || up.getStatus() == 1) {
OShipStockUp update = new OShipStockUp(); // OShipStockUp update = new OShipStockUp();
update.setId(up.getId()); // update.setId(up.getId());
update.setStatus(2);//备货完成 // update.setStatus(2);//备货完成
update.setUpdateBy("备货完成"); // update.setUpdateBy("备货完成");
update.setUpdateTime(new Date()); // update.setUpdateTime(new Date());
mapper.updateById(update); // mapper.updateById(update);
} // }
} // }
} // }
} // }
//
return 1; // return 1;
} // }
} //}
//
//
//
//

View File

@ -12,13 +12,11 @@ import cn.qihangerp.common.PageResult;
import cn.qihangerp.common.ResultVo; import cn.qihangerp.common.ResultVo;
import cn.qihangerp.common.ResultVoEnum; import cn.qihangerp.common.ResultVoEnum;
import cn.qihangerp.common.enums.EnumShopType; import cn.qihangerp.common.enums.EnumShopType;
import lombok.AllArgsConstructor; import lombok.AllArgsConstructor;
import lombok.extern.java.Log; import lombok.extern.java.Log;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils; import org.springframework.util.StringUtils;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date; import java.util.Date;
@ -38,7 +36,6 @@ public class OShipmentServiceImpl extends ServiceImpl<OShipmentMapper, OShipment
private final OShipmentItemMapper shippingItemMapper; private final OShipmentItemMapper shippingItemMapper;
private final OOrderMapper orderMapper; private final OOrderMapper orderMapper;
private final OOrderItemMapper itemMapper; private final OOrderItemMapper itemMapper;
private final OShipStockUpMapper shipStockUpMapper;
/** /**
* 查询发货记录 * 查询发货记录
@ -138,141 +135,94 @@ public class OShipmentServiceImpl extends ServiceImpl<OShipmentMapper, OShipment
return ResultVo.success(); return ResultVo.success();
} }
/**
* 订单备货很多逻辑
* @param orderNum
* @param shopType
* @return
*/
@Transactional
@Override
public ResultVo<Integer> shipStockup(String orderNum, EnumShopType shopType) {
if(shopType.getIndex()==EnumShopType.OFFLINE.getIndex()){
// OFFLINE 订单处理
List<OOrder> oOrders = orderMapper.selectList(new LambdaQueryWrapper<OOrder>().eq(OOrder::getOrderNum, orderNum).eq(OOrder::getShopType, shopType.getIndex()));
if(oOrders == null || oOrders.size()==0){
log.info("===========订单备货错误OOrder表中没有找到订单数据====="+orderNum);
}else {
log.info("===========订单备货开始处理业务====="+orderNum);
// 1将order_item数据加入到备货清单中o_ship_stock_up
// 查处item
List<OOrderItem> items = itemMapper.selectList(new LambdaQueryWrapper<OOrderItem>().eq(OOrderItem::getOrderId, oOrders.get(0).getId()));
if(items!=null&& items.size()>0){
for (var item:items) {
List<OShipStockUp> erpShipStockUps = shipStockUpMapper.selectList(new LambdaQueryWrapper<OShipStockUp>().eq(OShipStockUp::getSaleOrderItemId, item.getId()));
if(erpShipStockUps==null || erpShipStockUps.size()==0) {
OShipStockUp shipStockUp = new OShipStockUp();
shipStockUp.setShopId(oOrders.get(0).getShopId().longValue());
shipStockUp.setSaleOrderId(item.getOrderId());
shipStockUp.setSaleOrderItemId(item.getId());
shipStockUp.setOrderNum(oOrders.get(0).getOrderNum());
shipStockUp.setOriginalSkuId(item.getSkuId());
shipStockUp.setGoodsId(item.getGoodsId());
shipStockUp.setSpecId(item.getGoodsSkuId());
shipStockUp.setGoodsTitle(item.getGoodsTitle());
shipStockUp.setGoodsImg(item.getGoodsImg());
shipStockUp.setGoodsSpec(item.getGoodsSpec());
shipStockUp.setGoodsNum(item.getGoodsNum());
shipStockUp.setSpecNum(item.getSkuNum());
shipStockUp.setQuantity(item.getQuantity());
shipStockUp.setStatus(0);//状态0待备货1备货中2已出库3已发货
shipStockUp.setCreateBy("消息通知备货");
shipStockUp.setCreateTime(new Date());
shipStockUpMapper.insert(shipStockUp);
}
}
}
}
}
return ResultVo.success();
}
@Transactional
@Override
public ResultVo<Integer> shipSendMessage(String orderNum, EnumShopType shopType,String logisticsCompany,String logisticsCode) {
List<OOrder> oOrders = orderMapper.selectList(new LambdaQueryWrapper<OOrder>().eq(OOrder::getOrderNum, orderNum).eq(OOrder::getShopType, shopType.getIndex())); // @Transactional
if(oOrders == null || oOrders.size()==0){ // @Override
log.info("===========订单发货错误OOrder表中没有找到订单数据====="+orderNum); // public ResultVo<Integer> shipSendMessage(String orderNum, EnumShopType shopType,String logisticsCompany,String logisticsCode) {
}else { //
log.info("===========订单发货开始处理业务====="+orderNum); // List<OOrder> oOrders = orderMapper.selectList(new LambdaQueryWrapper<OOrder>().eq(OOrder::getOrderNum, orderNum).eq(OOrder::getShopType, shopType.getIndex()));
// 更新erp sale order 订单表发货状态 // if(oOrders == null || oOrders.size()==0){
if(oOrders.get(0).getOrderStatus()!=3){ // log.info("===========订单发货错误OOrder表中没有找到订单数据====="+orderNum);
//2是已发货 // }else {
OOrder update = new OOrder(); // log.info("===========订单发货开始处理业务====="+orderNum);
update.setId(oOrders.get(0).getId()); // // 更新erp sale order 订单表发货状态
update.setOrderStatus(2); // if(oOrders.get(0).getOrderStatus()!=3){
update.setShippingCompany(logisticsCompany); // //2是已发货
update.setShippingNumber(logisticsCode); // OOrder update = new OOrder();
update.setShippingCost(BigDecimal.ZERO); // update.setId(oOrders.get(0).getId());
update.setShippingMan("消息通知发货完成"); // update.setOrderStatus(2);
update.setShippingTime(new Date()); // update.setShippingCompany(logisticsCompany);
// update.setShipStatus(3); // update.setShippingNumber(logisticsCode);
// update.setShippingCost(BigDecimal.ZERO);
update.setUpdateTime(new Date()); // update.setShippingMan("消息通知发货完成");
update.setUpdateBy("消息通知发货完成"); // update.setShippingTime(new Date());
orderMapper.updateById(update); //// update.setShipStatus(3);
} //
// 更新备货表相关订单状态0_ship_stock_up // update.setUpdateTime(new Date());
OShipStockUp shipStockUp = new OShipStockUp(); // update.setUpdateBy("消息通知发货完成");
shipStockUp.setUpdateBy("消息通知发货完成"); // orderMapper.updateById(update);
shipStockUp.setUpdateTime(new Date()); // }
shipStockUp.setStatus(3);//状态0待备货1备货中2已出库3已发货 // // 更新备货表相关订单状态0_ship_stock_up
shipStockUpMapper.update(shipStockUp,new LambdaQueryWrapper<OShipStockUp>().eq(OShipStockUp::getSaleOrderId,oOrders.get(0).getId())); // OShipStockUp shipStockUp = new OShipStockUp();
// shipStockUp.setUpdateBy("消息通知发货完成");
//插入发货表数据o_shipment & o_shipment_item // shipStockUp.setUpdateTime(new Date());
List<OOrderItem> oOrderItems = itemMapper.selectList(new LambdaQueryWrapper<OOrderItem>().eq(OOrderItem::getOrderId, oOrders.get(0).getId())); // shipStockUp.setStatus(3);//状态0待备货1备货中2已出库3已发货
List<String> orderNums = new ArrayList<>(); // shipStockUpMapper.update(shipStockUp,new LambdaQueryWrapper<OShipStockUp>().eq(OShipStockUp::getSaleOrderId,oOrders.get(0).getId()));
List<String> subOrderNums = new ArrayList<>(); //
List<OShipmentItem> shippingItemList = new ArrayList<>(); // //插入发货表数据o_shipment & o_shipment_item
for (var oOrderItem:oOrderItems) { // List<OOrderItem> oOrderItems = itemMapper.selectList(new LambdaQueryWrapper<OOrderItem>().eq(OOrderItem::getOrderId, oOrders.get(0).getId()));
// if (oOrderItem.getRefundStatus()!=1) { // List<String> orderNums = new ArrayList<>();
// return ResultVo.error(ResultVoEnum.StatusError, orderItemId + "子订单退款状态不允许发货"); // List<String> subOrderNums = new ArrayList<>();
// List<OShipmentItem> shippingItemList = new ArrayList<>();
// for (var oOrderItem:oOrderItems) {
//// if (oOrderItem.getRefundStatus()!=1) {
//// return ResultVo.error(ResultVoEnum.StatusError, orderItemId + "子订单退款状态不允许发货");
//// }
//
// orderNums.add(oOrderItem.getOrderNum());
// subOrderNums.add(oOrderItem.getSubOrderNum());
//
// // 添加shipping_item
// OShipmentItem shippingItem = new OShipmentItem();
// shippingItem.setOrderId(oOrderItem.getOrderId());
// shippingItem.setOrderItemId(oOrderItem.getId());
// shippingItem.setOrderNum(oOrderItem.getOrderNum());
// shippingItem.setSubOrderNum(oOrderItem.getSubOrderNum());
// shippingItemList.add(shippingItem);
// }
//
// // 订单发货主表
// OShipment shipping = new OShipment();
// shipping.setShippingType(1);//订单发货
// shipping.setShopId(oOrders.get(0).getShopId());
// shipping.setOrderNums(String.join(", ", orderNums));
// shipping.setSubOrderNums(String.join(", ", subOrderNums));
// shipping.setReceiverName(oOrders.get(0).getReceiverName());
// shipping.setReceiverMobile(oOrders.get(0).getReceiverMobile());
// shipping.setProvince(oOrders.get(0).getProvince());
// shipping.setCity(oOrders.get(0).getCity());
// shipping.setTown(oOrders.get(0).getTown());
// shipping.setAddress(oOrders.get(0).getAddress());
// shipping.setLogisticsCompany(logisticsCompany);
// shipping.setLogisticsCompanyCode(logisticsCompany);
// shipping.setWaybillCode(logisticsCode);
// shipping.setShippingTime(new Date());
//// shipping.setRemark("手动发货");
// shipping.setCreateTime(new Date());
// mapper.insert(shipping);
//
// // 添加发货子表
// for (var item:shippingItemList) {
// item.setShippingId(shipping.getId());
// shippingItemMapper.insert(item);
// }
//
//
// }
//
// return ResultVo.success();
// } // }
orderNums.add(oOrderItem.getOrderNum());
subOrderNums.add(oOrderItem.getSubOrderNum());
// 添加shipping_item
OShipmentItem shippingItem = new OShipmentItem();
shippingItem.setOrderId(oOrderItem.getOrderId());
shippingItem.setOrderItemId(oOrderItem.getId());
shippingItem.setOrderNum(oOrderItem.getOrderNum());
shippingItem.setSubOrderNum(oOrderItem.getSubOrderNum());
shippingItemList.add(shippingItem);
}
// 订单发货主表
OShipment shipping = new OShipment();
shipping.setShippingType(1);//订单发货
shipping.setShopId(oOrders.get(0).getShopId());
shipping.setOrderNums(String.join(", ", orderNums));
shipping.setSubOrderNums(String.join(", ", subOrderNums));
shipping.setReceiverName(oOrders.get(0).getReceiverName());
shipping.setReceiverMobile(oOrders.get(0).getReceiverMobile());
shipping.setProvince(oOrders.get(0).getProvince());
shipping.setCity(oOrders.get(0).getCity());
shipping.setTown(oOrders.get(0).getTown());
shipping.setAddress(oOrders.get(0).getAddress());
shipping.setLogisticsCompany(logisticsCompany);
shipping.setLogisticsCompanyCode(logisticsCompany);
shipping.setWaybillCode(logisticsCode);
shipping.setShippingTime(new Date());
// shipping.setRemark("手动发货");
shipping.setCreateTime(new Date());
mapper.insert(shipping);
// 添加发货子表
for (var item:shippingItemList) {
item.setShippingId(shipping.getId());
shippingItemMapper.insert(item);
}
}
return ResultVo.success();
}
} }

View File

@ -1,38 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.qihangerp.module.order.mapper.OShipStockUpMapper">
<resultMap id="BaseResultMap" type="cn.qihangerp.module.order.domain.OShipStockUp">
<id property="id" column="id" jdbcType="BIGINT"/>
<result property="shopId" column="shop_id" jdbcType="BIGINT"/>
<result property="saleOrderId" column="sale_order_id" jdbcType="BIGINT"/>
<result property="saleOrderItemId" column="sale_order_item_id" jdbcType="BIGINT"/>
<result property="orderNum" column="order_num" jdbcType="VARCHAR"/>
<result property="originalSkuId" column="original_sku_id" jdbcType="VARCHAR"/>
<result property="goodsId" column="goods_id" jdbcType="BIGINT"/>
<result property="specId" column="spec_id" jdbcType="BIGINT"/>
<result property="goodsTitle" column="goods_title" jdbcType="VARCHAR"/>
<result property="goodsImg" column="goods_img" jdbcType="VARCHAR"/>
<result property="goodsSpec" column="goods_spec" jdbcType="VARCHAR"/>
<result property="goodsNum" column="goods_num" jdbcType="VARCHAR"/>
<result property="specNum" column="spec_num" jdbcType="VARCHAR"/>
<result property="quantity" column="quantity" jdbcType="INTEGER"/>
<result property="status" column="status" jdbcType="INTEGER"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="createBy" column="create_by" jdbcType="VARCHAR"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
<result property="updateBy" column="update_by" jdbcType="VARCHAR"/>
</resultMap>
<sql id="Base_Column_List">
id,shop_id,sale_order_id,
sale_order_item_id,order_num,original_sku_id,
goods_id,spec_id,goods_title,
goods_img,goods_spec,goods_num,
spec_num,quantity,status,
create_time,create_by,update_time,
update_by
</sql>
</mapper>