Browse Source

修改预期到货通知单、修改收货单、修改上架单

master
fanzongzhe 9 months ago
parent
commit
f45373ddee
  1. 15
      yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java
  2. 8
      yxt-pms-biz/src/main/java/com/yxt/pms/feign/wms/wmsansbill/WmsAnsBillDto.java
  3. 7
      yxt-pms-biz/src/main/java/com/yxt/pms/feign/wms/wmsansbill/WmsAnsBillFeign.java
  4. 5
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsAnsBillRest.java
  5. 15
      yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsReceiptBillRest.java
  6. 9
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBill.java
  7. 8
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillDto.java
  8. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillMapper.java
  9. 9
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillMapper.xml
  10. 13
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillService.java
  11. 8
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillVo.java
  12. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventory.java
  13. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryrecord/WmsInventoryRecordDto.java
  14. 7
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBill.java
  15. 6
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillDto2.java
  16. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillInitVo.java
  17. 3
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillMapper.java
  18. 18
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillMapper.xml
  19. 6
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillPageVo.java
  20. 73
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillService.java
  21. 4
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillVo.java
  22. 26
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/ShelfListVo.java
  23. 8
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetail.java
  24. 1
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailDto2.java
  25. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailMapper.java
  26. 8
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailMapper.xml
  27. 4
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailService.java
  28. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/ShelfInitVo.java
  29. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBill.java
  30. 2
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillDto.java
  31. 127
      yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java

15
yxt-pms-biz/src/main/java/com/yxt/pms/biz/pms/pmspurchasebill/PmsPurchaseBillService.java

@ -265,7 +265,7 @@ public class PmsPurchaseBillService extends MybatisBaseService<PmsPurchaseBillMa
}
List<PmsPurchaseBillDetailDetailsVo> pmsPurchaseBillDetailDetailsVos = pmsPurchaseBillDetailService.selByMainSid(record.getSid());
for (PmsPurchaseBillDetailDetailsVo pmsPurchaseBillDetailDetailsVo : pmsPurchaseBillDetailDetailsVos) {
BigDecimal returnedCount = pmsPurchasebackDetailService.checkReturnedCount(pmsPurchaseBillDetailDetailsVo.getGoodsSkuSid(),record.getSid());
BigDecimal returnedCount = pmsPurchasebackDetailService.checkReturnedCount(pmsPurchaseBillDetailDetailsVo.getGoodsSkuSid(), record.getSid());
pmsPurchaseBillDetailDetailsVo.setReturnedCount(returnedCount);
}
record.setPmsPurchaseBillDetailList(pmsPurchaseBillDetailDetailsVos);
@ -516,6 +516,16 @@ public class PmsPurchaseBillService extends MybatisBaseService<PmsPurchaseBillMa
wmsAnsBillDto.setBillState(0);
wmsAnsBillDto.setReviewStatus("");
wmsAnsBillDto.setRefuseReason("");
wmsAnsBillDto.setSourceBillSid(pmsPurchaseBill.getSid());
if (StringUtils.isNotBlank(pmsPurchaseBill.getManufacturersOrderTypeKey())) {
wmsAnsBillDto.setManufactorBillTypeKey(pmsPurchaseBill.getManufacturersOrderTypeKey());
}
if (StringUtils.isNotBlank(pmsPurchaseBill.getManufacturersOrderTypeValue())) {
wmsAnsBillDto.setManufactorBillTypeValue(pmsPurchaseBill.getManufacturersOrderTypeValue());
}
if (StringUtils.isNotBlank(pmsPurchaseBill.getManufacturersOrderNumber())) {
wmsAnsBillDto.setManufactorBillNo(pmsPurchaseBill.getManufacturersOrderNumber());
}
PmsSupplierInfoDetailsVo pmsSupplierInfoDetailsVo = pmsSupplierInfoService.fetchDetailsVoBySid(pmsPurchaseBill.getSupplierSid());
wmsAnsBillDto.setContact(pmsSupplierInfoDetailsVo.getContactName());
wmsAnsBillDto.setMobile(pmsPurchaseBill.getSupplierPhone());
@ -756,6 +766,7 @@ public class PmsPurchaseBillService extends MybatisBaseService<PmsPurchaseBillMa
}
public void updateManuOrderNum(String sid, String manufacturersOrderNumber) {
baseMapper.updateManuOrderNum(sid,manufacturersOrderNumber);
baseMapper.updateManuOrderNum(sid, manufacturersOrderNumber);
wmsAnsBillFeign.updateManufactorBillNo(sid, manufacturersOrderNumber);
}
}

8
yxt-pms-biz/src/main/java/com/yxt/pms/feign/wms/wmsansbill/WmsAnsBillDto.java

@ -55,5 +55,13 @@ public class WmsAnsBillDto {
private String deptSid;
@ApiModelProperty("申请部门")
private String deptName;
@ApiModelProperty("采购单sid")
private String sourceBillSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("厂家订单类型")
private String manufactorBillTypeValue;
@ApiModelProperty("厂家订单类型key")
private String manufactorBillTypeKey;
private List<WmsAnsBillDetailDto> wmsAnsBillDetailList = new ArrayList<>();
}

7
yxt-pms-biz/src/main/java/com/yxt/pms/feign/wms/wmsansbill/WmsAnsBillFeign.java

@ -7,6 +7,7 @@ import io.swagger.annotations.ApiOperation;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestParam;
@Api(tags = "预期到货通知单")
@FeignClient(
@ -18,4 +19,8 @@ public interface WmsAnsBillFeign {
@PostMapping("saveOrUpdate")
@ApiOperation("新增修改保存")
ResultBean<String> saveOrUpdate(@RequestBody WmsAnsBillDto dto);
}
@PostMapping("updateManufactorBillNo")
@ApiOperation("修改预期到货通知单的厂家订单号")
ResultBean updateManufactorBillNo(@RequestParam("sid") String sid, @RequestParam("manufacturersOrderNumber")String manufacturersOrderNumber);
}

5
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsAnsBillRest.java

@ -51,5 +51,10 @@ public class WmsAnsBillRest {
return wmsAnsBillService.details(sid);
}
@PostMapping("updateManufactorBillNo")
@ApiOperation("修改预期到货通知单的厂家订单号")
ResultBean updateManufactorBillNo(@RequestParam("sid") String sid, @RequestParam("manufacturersOrderNumber")String manufacturersOrderNumber) {
return wmsAnsBillService.updateManufactorBillNo(sid,manufacturersOrderNumber);
}
}

15
yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsReceiptBillRest.java

@ -6,12 +6,15 @@ import com.yxt.common.core.vo.PagerVo;
import com.yxt.wms.biz.inventory.wmsinventorybill.WmsInventoryBillQuery;
import com.yxt.wms.biz.inventory.wmsinventorybill.WmsInventoryBillVo;
import com.yxt.wms.biz.inventory.wmsreceiptbill.*;
import com.yxt.wms.biz.inventory.wmsreceiptbilldetail.ShelfListVo;
import com.yxt.wms.biz.inventory.wmsreceiptbilldetail.WmsReceiptBillDetail;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* @description:
* @author: dimengzhe
@ -39,6 +42,18 @@ public class WmsReceiptBillRest {
return wmsReceiptBillService.saveOrUpdateBill2(dto);
}
@ApiOperation("收货单终止")
@PostMapping("/billToEndBySids")
ResultBean<String> billToEndBySids(@RequestBody String[] sids) {
return wmsReceiptBillService.billToEndBySids(sids);
}
@ApiOperation("查看上架单列表")
@GetMapping("/getUpShlefListBySid/{sid}")
ResultBean<List<ShelfListVo>> getUpShlefListBySid(@PathVariable("sid") String sid) {
return wmsReceiptBillService.getUpShlefListBySid(sid);
}
@ApiOperation("通知单收货单初始化")
@GetMapping("/getInitDetails")
ResultBean<WmsReceiptBillVo> getInitDetails(@RequestParam("sourceSid") String sourceSid) {

9
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBill.java

@ -52,4 +52,13 @@ public class WmsAnsBill extends BaseEntity {
private String deptSid;
@ApiModelProperty("申请部门")
private String deptName;
@ApiModelProperty("采购单sid")
private String sourceBillSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("厂家订单类型")
private String manufactorBillTypeValue;
@ApiModelProperty("厂家订单类型key")
private String manufactorBillTypeKey;
}

8
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillDto.java

@ -55,5 +55,13 @@ public class WmsAnsBillDto {
private String deptSid;
@ApiModelProperty("申请部门")
private String deptName;
@ApiModelProperty("采购单sid")
private String sourceBillSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("厂家订单类型")
private String manufactorBillTypeValue;
@ApiModelProperty("厂家订单类型key")
private String manufactorBillTypeKey;
private List<WmsAnsBillDetailDto> wmsAnsBillDetailList = new ArrayList<>();
}

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillMapper.java

@ -23,4 +23,6 @@ public interface WmsAnsBillMapper extends BaseMapper<WmsAnsBill> {
WmsAnsDetailsVo details(String sid);
String selectNum(String bill);
WmsAnsBill selBySouceSid(@Param("sid") String sid);
}

9
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillMapper.xml

@ -11,6 +11,10 @@
<select id="listPages" resultType="com.yxt.wms.biz.inventory.wmsansbill.WmsAnsBillVo">
select wab.sid,
wab.sourceBillSid,
wab.manufactorBillNo,
wab.manufactorBillTypeValue,
wab.manufactorBillTypeKey,
wab.billNo,
DATE_FORMAT(wab.createTime, '%Y-%m-%d') as createTime,
wab.createByName,
@ -21,7 +25,7 @@
wab.mobile,
DATE_FORMAT(wab.deliveryDate, '%Y-%m-%d') as deliveryDate,
case wab.billState when 0 then '在途' when 1 then '部分收货'
when 2 then '已收货' when 3 then '已取消'
when 2 then '已收货' when 3 then '已收货(部分终止)'
end as billState,
wab.reviewStatus,
wab.refuseReason
@ -58,4 +62,7 @@
order by id desc
limit 1
</select>
<select id="selBySouceSid" resultType="com.yxt.wms.biz.inventory.wmsansbill.WmsAnsBill">
select * from wms_ans_bill where sourceBillSid = #{sid}
</select>
</mapper>

13
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillService.java

@ -40,6 +40,7 @@ public class WmsAnsBillService extends MybatisBaseService<WmsAnsBillMapper, WmsA
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private SysUserFeign sysUserFeign;
public ResultBean<String> saveOrUpdateBill(WmsAnsBillDto dto) {
ResultBean<String> rb = ResultBean.fireFail();
String sid = dto.getSid();
@ -179,7 +180,7 @@ public class WmsAnsBillService extends MybatisBaseService<WmsAnsBillMapper, WmsA
if (query.getBillState().equals("已收货")) {
type = "2";
}
if (query.getBillState().equals("已取消")) {
if (query.getBillState().equals("已收货(部分终止)")) {
type = "3";
}
qw.eq("wab.billState", type);
@ -215,4 +216,14 @@ public class WmsAnsBillService extends MybatisBaseService<WmsAnsBillMapper, WmsA
}
return rb.success().setData(wmsAnsDetailsVo);
}
public ResultBean updateManufactorBillNo(String sid, String manufacturersOrderNumber) {
ResultBean rb = ResultBean.fireFail();
WmsAnsBill bill = baseMapper.selBySouceSid(sid);
if (null != bill) {
bill.setManufactorBillNo(manufacturersOrderNumber);
baseMapper.updateById(bill);
}
return rb.success();
}
}

8
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsansbill/WmsAnsBillVo.java

@ -44,6 +44,14 @@ public class WmsAnsBillVo {
@ApiModelProperty("拒绝原因")
private String refuseReason;
@ApiModelProperty("采购单sid")
private String sourceBillSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("厂家订单类型")
private String manufactorBillTypeValue;
@ApiModelProperty("厂家订单类型key")
private String manufactorBillTypeKey;
/* @ApiModelProperty("货物状态(在途、部分收货、已收货、已取消)")
private String billStateValue;
@ApiModelProperty("货主")

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventory.java

@ -60,5 +60,6 @@ public class WmsInventory extends BaseEntity {
private String createOrgSid;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
}

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventoryrecord/WmsInventoryRecordDto.java

@ -115,5 +115,6 @@ public class WmsInventoryRecordDto implements Dto {
private String createOrgSid;
@ApiModelProperty("使用组织sid")
private String useOrgSid;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
}

7
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBill.java

@ -48,5 +48,12 @@ public class WmsReceiptBill extends BaseEntity {
private String deptName;
@ApiModelProperty("标签打印状态0打印未完成,1打印已完成")
private Integer printState;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("收货人是否与上架人一致(1是,2否)")
private Integer isUpShelf;
@ApiModelProperty("分配状态:已分配/部分分配/未分配")
private Integer distributeType;
}

6
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillDto2.java

@ -54,6 +54,12 @@ public class WmsReceiptBillDto2 {
private String deptSid;
@ApiModelProperty("申请部门")
private String deptName;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
@ApiModelProperty("分配状态:已分配/部分分配/未分配")
private String distributeType;
@ApiModelProperty("收货人是否与上架人一致(1是,2否)")
private Integer isUpShelf;
@ApiModelProperty("商品列表")
private List<WmsReceiptBillDetailDto2> list = new ArrayList<>();
@ApiModelProperty("批次列表")

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillInitVo.java

@ -53,6 +53,8 @@ public class WmsReceiptBillInitVo {
private String deptSid;
@ApiModelProperty("申请部门")
private String deptName;
@ApiModelProperty("收货人是否与上架人一致(1是,2否)")
private Integer isUpShelf;
@ApiModelProperty("商品列表")
private List<WmsReceiptBillDetailDto2> list = new ArrayList<>();
@ApiModelProperty("批次列表")

3
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillMapper.java

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.yxt.wms.biz.inventory.wmsreceiptbilldetail.ShelfListVo;
import com.yxt.wms.biz.inventory.wmsreceiptbilldetail.WmsReceiptBillDetail;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
@ -26,4 +27,6 @@ public interface WmsReceiptBillMapper extends BaseMapper<WmsReceiptBill> {
String selGoodsCountBySpuSidAndSouceSid(@Param("goodsSpuSid") String goodsSpuSid, @Param("sourceBillSid") String sourceBillSid);
List<WmsReceiptBillDetail> selGoodsListCountBySpuSidAndSouceSid(@Param("goodsSpuSid")String goodsSpuSid, @Param("sourceBillSid")String sourceBillSid);
List<ShelfListVo> getUpShlefListBySid(@Param("sid") String sid);
}

18
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillMapper.xml

@ -12,7 +12,12 @@
DATE_FORMAT(wrb.deliveryDate, '%Y-%m-%d') as deliveryDate,
case wrb.billState
when '0' then '新建'
when '1' then '已完成' end as billState
when '1' then '已完成' end as billState,
case wrb.distributeType
when '0' then '未分配'
when '1' then '已分配'
when '2' then '部分分配' end as distributeType,
(SELECT IFNULL(COUNT(*),0) FROM wms_shelf_bill as sb WHERE sb.sourceBillSid = wrb.sid) as upShlefNum
from wms_receipt_bill wrb
LEFT JOIN anrui_portal.sys_organization as s ON wrb.deptSid = s.sid
<where>
@ -32,6 +37,7 @@
wrb.busTypeValue,
wrb.supplierSid,
wrb.supplierName,
wrb.isUpShelf,
DATE_FORMAT(wrb.deliveryDate,'%Y-%m-%d') as deliveryDate,
DATE_FORMAT(wrb.createTime,'%Y-%m-%d') as createTime,
case wrb.billState
@ -69,4 +75,14 @@
LEFT JOIN wms_receipt_bill AS b ON d.billSid = b.sid
WHERE d.goodSpuSid = #{goodsSpuSid} AND b.sourceBillSid = #{sourceBillSid}
</select>
<select id="getUpShlefListBySid" resultType="com.yxt.wms.biz.inventory.wmsreceiptbilldetail.ShelfListVo">
select wrb.sid as billSid,
wrb.billNo,
wrb.sourceBillNo,
wrb.createByName,
DATE_FORMAT(wrb.createTime,'%Y-%m-%d') as createTime,
wrb.billStateValue as billState
from wms_shelf_bill wrb
where wrb.sourceBillSid = #{sid}
</select>
</mapper>

6
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillPageVo.java

@ -35,6 +35,10 @@ public class WmsReceiptBillPageVo {
private String deliveryDate;
//单据状态:新建/已完成
@ApiModelProperty("单据状态:待收货/部分收货/已收货(默认)")
@ApiModelProperty("单据状态:新建/完成")
private String billState;
@ApiModelProperty("分配状态:已分配/部分分配/未分配")
private String distributeType;
@ApiModelProperty("上架单数量")
private String upShlefNum;
}

73
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillService.java

@ -22,10 +22,17 @@ import com.yxt.wms.biz.inventory.wmsreceiptbilldetailbatch.WmsReceiptBillDetailB
import com.yxt.wms.biz.inventory.wmsreceiptbilldetailbatch.WmsReceiptBillDetailBatchDto2;
import com.yxt.wms.biz.inventory.wmsreceiptbilldetailbatch.WmsReceiptBillDetailBatchMapper;
import com.yxt.wms.biz.inventory.wmsreceiptbilldetailbatch.WmsReceiptBillDetailBatchService;
import com.yxt.wms.biz.inventory.wmsshelfbill.ShelfInitVo;
import com.yxt.wms.biz.inventory.wmsshelfbill.WmsShelfBillDto;
import com.yxt.wms.biz.inventory.wmsshelfbill.WmsShelfBillService;
import com.yxt.wms.biz.inventory.wmsshelfbilldetail.ShelfInitListVo;
import com.yxt.wms.biz.inventory.wmsshelfbilldetail.WmsShelfBillDetailDto;
import com.yxt.wms.biz.inventory.wmsshelfbilldetail.WmsShelfBillDetailService;
import com.yxt.wms.feign.portal.privilege.PrivilegeQuery;
import com.yxt.wms.feign.portal.sysorganization.SysOrganizationFeign;
import com.yxt.wms.feign.portal.sysorganization.SysOrganizationVo;
import com.yxt.wms.feign.portal.sysuser.SysUserFeign;
import com.yxt.wms.feign.portal.sysuser.SysUserVo;
import com.yxt.wms.utils.BillNo;
import com.yxt.wms.utils.Rule;
import org.springframework.beans.factory.annotation.Autowired;
@ -59,6 +66,10 @@ public class WmsReceiptBillService extends MybatisBaseService<WmsReceiptBillMapp
private SysOrganizationFeign sysOrganizationFeign;
@Autowired
private SysUserFeign sysUserFeign;
@Autowired
private WmsShelfBillDetailService wmsShelfBillDetailService;
@Autowired
private WmsShelfBillService wmsShelfBillService;
public PagerVo<WmsReceiptBillPageVo> listPage(PagerQuery<WmsReceiptBillQuery> pq) {
WmsReceiptBillQuery query = pq.getParams();
QueryWrapper<WmsReceiptBill> qw = new QueryWrapper<>();
@ -394,6 +405,52 @@ public class WmsReceiptBillService extends MybatisBaseService<WmsReceiptBillMapp
if (null != wmsReceiptBill) {
wmsReceiptBill.setBillState("1");
baseMapper.updateById(wmsReceiptBill);
if (wmsReceiptBill.getIsUpShelf() == 1) {
//与上架人一致,推送上架单
WmsShelfBillDto shelfBillDto = new WmsShelfBillDto();
shelfBillDto.setUserSid(wmsReceiptBill.getCreateBySid());
shelfBillDto.setCreateByName(wmsReceiptBill.getCreateByName());
shelfBillDto.setUpShelfSid(wmsReceiptBill.getCreateBySid());
shelfBillDto.setUpShelfName(wmsReceiptBill.getCreateByName());
shelfBillDto.setCreateOrgSid(wmsReceiptBill.getCreateOrgSid());
shelfBillDto.setUseOrgSid(wmsReceiptBill.getUseOrgSid());
shelfBillDto.setDeptSid(wmsReceiptBill.getDeptSid());
shelfBillDto.setDeptName(wmsReceiptBill.getDeptName());
//查询所有已上架的商品
List<String> stringList = wmsShelfBillDetailService.selectReceiptSidList();
stringList.removeAll(Collections.singleton(null));
//获取收货单据
shelfBillDto.setCreateTime(DateUtil.today());//单据日期
shelfBillDto.setSourceBillNo(wmsReceiptBill.getBillNo());//来源单编号
shelfBillDto.setSourceBillSid(wmsReceiptBill.getSid());//来源单sid
shelfBillDto.setBillState("新建");
if (StringUtils.isNotBlank(wmsReceiptBill.getManufactorBillNo())) {
shelfBillDto.setManufactorBillNo(wmsReceiptBill.getManufactorBillNo());
}
List<WmsShelfBillDetailDto> detailDtos = new ArrayList<>();
//获取收货单据的明细
List<WmsReceiptBillDetail> wmsReceiptBillDetailsList = wmsReceiptBillDetailService.selectByBillSid(sid, stringList);
wmsReceiptBillDetailsList.removeAll(Collections.singleton(null));
if (!wmsReceiptBillDetailsList.isEmpty()) {
for (int i = 0; i < wmsReceiptBillDetailsList.size(); i++) {
WmsReceiptBillDetail v = wmsReceiptBillDetailsList.get(i);
// WmsReceiptBillDetailBatch wmsReceiptBillDetailBatch = wmsReceiptBillDetailBatchService.selectByDetails(v.getSid());
WmsShelfBillDetailDto shelfInitListVo = new WmsShelfBillDetailDto();
BeanUtil.copyProperties(v, shelfInitListVo, "sid");
shelfInitListVo.setReceiptDetailSid(v.getSid());
shelfInitListVo.setCount(v.getActualInCount().toString());
// shelfInitListVo.setBatchNumber(wmsReceiptBillDetailBatch.getBatchNumber());
// shelfInitListVo.setWarehouseSid(v.getWarehouseSid());
// shelfInitListVo.setWarehouseRackSid(v.getWarehouseRackSid());
// shelfInitListVo.setWarehouseRackCode("");
detailDtos.add(shelfInitListVo);
}
}
shelfBillDto.setList(detailDtos);
wmsShelfBillService.saveOrUpdateShelf(shelfBillDto);
wmsReceiptBill.setDistributeType(1);
baseMapper.updateById(wmsReceiptBill);
}
}
return rb.success().setData(sid);
}
@ -409,4 +466,20 @@ public class WmsReceiptBillService extends MybatisBaseService<WmsReceiptBillMapp
delBySids(sids);
return rb.success().setMsg("删除成功");
}
public ResultBean<String> billToEndBySids(String[] sids) {
ResultBean rb = ResultBean.fireFail();
for (String sid : sids) {
WmsAnsBill ansBill = wmsAnsBillService.fetchBySid(sid);
ansBill.setBillState(3);
wmsAnsBillService.updateById(ansBill);
}
return rb.success();
}
public ResultBean<List<ShelfListVo>> getUpShlefListBySid(String sid) {
ResultBean rb = ResultBean.fireFail();
List<ShelfListVo> list = baseMapper.getUpShlefListBySid(sid);
return rb.success().setData(list);
}
}

4
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbill/WmsReceiptBillVo.java

@ -52,5 +52,9 @@ public class WmsReceiptBillVo {
private String deptSid;
@ApiModelProperty("申请部门")
private String deptName;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
private List<WmsReceiptBillDetailVo> list = new ArrayList<>();
@ApiModelProperty("收货人是否与上架人一致(1是,2否)")
private String isUpShelf;
}

26
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/ShelfListVo.java

@ -0,0 +1,26 @@
package com.yxt.wms.biz.inventory.wmsreceiptbilldetail;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @author Fan
* @description
* @date 2024/7/17 16:55
*/
@Data
public class ShelfListVo {
@ApiModelProperty("上架单sid")
private String billSid;
@ApiModelProperty("上架单编号")
private String billNo;
@ApiModelProperty("商品名称")
private String createTime;
@ApiModelProperty("制单人")
private String createByName;
@ApiModelProperty("来源单号")
private String sourceBillNo;
@ApiModelProperty("单据状态")
private String billState;
}

8
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetail.java

@ -30,8 +30,8 @@ public class WmsReceiptBillDetail extends BaseEntity {
private String goodsSkuOwnSpec;
@ApiModelProperty("计量单位")
private String unit;
/* @ApiModelProperty("预约数量")
private BigDecimal orderCount;*/
@ApiModelProperty("预约数量")
private BigDecimal orderCount;
@ApiModelProperty("实收数量")
private BigDecimal actualInCount;
@ApiModelProperty("拒收数量")
@ -58,8 +58,8 @@ public class WmsReceiptBillDetail extends BaseEntity {
@ApiModelProperty("打印次数")
private Integer printCount;
// @ApiModelProperty("仓库sid")
// private String warehouseSid;
@ApiModelProperty("已上架数量")
private BigDecimal shelfCount;
// @ApiModelProperty("仓库名称")
// private String warehouseName;
// @ApiModelProperty("库位sid")

1
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailDto2.java

@ -57,7 +57,6 @@ public class WmsReceiptBillDetailDto2 {
@ApiModelProperty("预约数量(采购订单数量)")
private String orderCount;
//入库价
@ApiModelProperty("单位成本(采购价)")
private String cost;

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailMapper.java

@ -22,4 +22,6 @@ public interface WmsReceiptBillDetailMapper extends BaseMapper<WmsReceiptBillDet
WmsReceiptBillDetail selectByBillSidAndGoodsSkuCode(@Param("sourceBillSid")String sourceBillSid, @Param("goodsSkuCode")String goodsSkuCode);
List<WmsReceiptBillDetail> selByBillSid(@Param("sid") String sid);
List<WmsReceiptBillDetail> selectListByBillSid(@Param("sourceBillSid") String sourceBillSid);
}

8
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailMapper.xml

@ -29,7 +29,8 @@
wrbd.packageRemark,
wrbd.state,
wrbd.sid detailsSid,
wrbd.goodsSpuName
wrbd.goodsSpuName,
wrbd.orderCount
from wms_receipt_bill_detail wrbd
where billSid = #{sid}
</select>
@ -54,4 +55,9 @@
select *
from wms_receipt_bill_detail where billSid = #{sid}
</select>
<select id="selectListByBillSid"
resultType="com.yxt.wms.biz.inventory.wmsreceiptbilldetail.WmsReceiptBillDetail">
select *
from wms_receipt_bill_detail where billSid = #{sourceBillSid}
</select>
</mapper>

4
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsreceiptbilldetail/WmsReceiptBillDetailService.java

@ -82,4 +82,8 @@ public class WmsReceiptBillDetailService extends MybatisBaseService<WmsReceiptBi
public List<WmsReceiptBillDetail> selByBillSid(String sid) {
return baseMapper.selByBillSid(sid);
}
public List<WmsReceiptBillDetail> selectListByBillSid(String sourceBillSid) {
return baseMapper.selectListByBillSid(sourceBillSid);
}
}

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/ShelfInitVo.java

@ -39,5 +39,7 @@ public class ShelfInitVo {
private String deptName;
private String upShelfSid;
private String upShelfName;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
private List<ShelfInitListVo> list = new ArrayList<>();
}

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBill.java

@ -29,5 +29,7 @@ public class WmsShelfBill extends BaseEntity {
private String deptName;
private String upShelfSid;
private String upShelfName;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
}

2
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillDto.java

@ -37,5 +37,7 @@ public class WmsShelfBillDto {
private String deptName;
private String upShelfSid;
private String upShelfName;
@ApiModelProperty("厂家订单号")
private String manufactorBillNo;
private List<WmsShelfBillDetailDto> list = new ArrayList<>();
}

127
yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsshelfbill/WmsShelfBillService.java

@ -17,6 +17,8 @@ import com.yxt.wms.biz.base.wmswarehouseinfo.WmsWarehouseInfoService;
import com.yxt.wms.biz.base.wmswarehouserack.WmsHouseInfoVo;
import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRack;
import com.yxt.wms.biz.base.wmswarehouserack.WmsWarehouseRackService;
import com.yxt.wms.biz.inventory.wmsansbill.WmsAnsBill;
import com.yxt.wms.biz.inventory.wmsansbilldetail.WmsAnsListDetailsVo;
import com.yxt.wms.biz.inventory.wmsgoodstag.WmsGoodsTag;
import com.yxt.wms.biz.inventory.wmsgoodstag.WmsGoodsTagService;
import com.yxt.wms.biz.inventory.wmsgoodstag.app.*;
@ -180,6 +182,21 @@ public class WmsShelfBillService extends MybatisBaseService<WmsShelfBillMapper,
sid = wmsShelfBill.getSid();
if (!list.isEmpty()) {
wmsShelfBillDetailService.saveShelfDetails(sid, list);
for (WmsShelfBillDetailDto detailDto : list) {
BigDecimal actualCount = BigDecimal.ZERO;
if (StringUtils.isNotBlank(detailDto.getCount())) {
actualCount = new BigDecimal(detailDto.getCount());
}
WmsReceiptBillDetail receiptBillDetail = wmsReceiptBillDetailService.fetchBySid(detailDto.getReceiptDetailSid());
if (null != receiptBillDetail) {
BigDecimal shelfCount = BigDecimal.ZERO;
if (null != receiptBillDetail.getShelfCount()) {
shelfCount = receiptBillDetail.getShelfCount();
}
receiptBillDetail.setShelfCount(shelfCount.add(actualCount));
wmsReceiptBillDetailService.updateById(receiptBillDetail);
}
}
}
String applyCode = getApplyCode(dto.getCreateOrgSid());
wmsShelfBill.setBillNo(applyCode);
@ -191,6 +208,42 @@ public class WmsShelfBillService extends MybatisBaseService<WmsShelfBillMapper,
}
}
baseMapper.insert(wmsShelfBill);
if (StringUtils.isNotBlank(dto.getSourceBillSid())) {
WmsReceiptBill wmsReceiptBill = wmsReceiptBillService.fetchBySid(dto.getSourceBillSid());
List<WmsReceiptBillDetail> vos = wmsReceiptBillDetailService.selectListByBillSid(dto.getSourceBillSid());
if (!vos.isEmpty()) {
HashSet<Integer> integers = new HashSet<>();
for (WmsReceiptBillDetail vo : vos) {
BigDecimal count = BigDecimal.ZERO;
BigDecimal actualCount = BigDecimal.ZERO;
BigDecimal shelfCount = BigDecimal.ZERO;
if (null != vo.getShelfCount()) {
shelfCount = vo.getShelfCount();
}
if (null != vo.getActualInCount()) {
actualCount = vo.getActualInCount();
}
count = actualCount.subtract(shelfCount);
if (count.compareTo(BigDecimal.ZERO) <= 0) {
integers.add(2);
} else {
integers.add(1);
}
}
if (integers.size() > 1) {
wmsReceiptBill.setDistributeType(2);
} else {
wmsReceiptBill.setDistributeType(1);
for (Integer integer : integers) {
if (integer == 1) {
wmsReceiptBill.setDistributeType(2);
}
}
}
}
wmsReceiptBillService.updateById(wmsReceiptBill);
}
} else {
WmsShelfBill wmsShelfBill = fetchBySid(sid);
if (wmsShelfBill == null) {
@ -209,6 +262,21 @@ public class WmsShelfBillService extends MybatisBaseService<WmsShelfBillMapper,
sid = wmsShelfBill.getSid();
if (!list.isEmpty()) {
wmsShelfBillDetailService.saveShelfDetails(sid, list);
for (WmsShelfBillDetailDto detailDto : list) {
BigDecimal actualCount = BigDecimal.ZERO;
if (StringUtils.isNotBlank(detailDto.getCount())) {
actualCount = new BigDecimal(detailDto.getCount());
}
WmsReceiptBillDetail receiptBillDetail = wmsReceiptBillDetailService.fetchBySid(detailDto.getReceiptDetailSid());
if (null != receiptBillDetail) {
BigDecimal shelfCount = BigDecimal.ZERO;
if (null != receiptBillDetail.getShelfCount()) {
shelfCount = receiptBillDetail.getShelfCount();
}
receiptBillDetail.setShelfCount(shelfCount.add(actualCount));
wmsReceiptBillDetailService.updateById(receiptBillDetail);
}
}
}
if (StringUtils.isNotBlank(dto.getBillState())) {
if (dto.getBillState().equals("0")) {
@ -218,7 +286,41 @@ public class WmsShelfBillService extends MybatisBaseService<WmsShelfBillMapper,
}
}
baseMapper.updateById(wmsShelfBill);
if (StringUtils.isNotBlank(dto.getSourceBillSid())) {
WmsReceiptBill wmsReceiptBill = wmsReceiptBillService.fetchBySid(dto.getSourceBillSid());
List<WmsReceiptBillDetail> vos = wmsReceiptBillDetailService.selectListByBillSid(dto.getSourceBillSid());
if (!vos.isEmpty()) {
HashSet<Integer> integers = new HashSet<>();
for (WmsReceiptBillDetail vo : vos) {
BigDecimal count = BigDecimal.ZERO;
BigDecimal actualCount = BigDecimal.ZERO;
BigDecimal shelfCount = BigDecimal.ZERO;
if (null != vo.getShelfCount()) {
shelfCount = vo.getShelfCount();
}
if (null != vo.getActualInCount()) {
actualCount = vo.getActualInCount();
}
count = actualCount.subtract(shelfCount);
if (count.compareTo(BigDecimal.ZERO) <= 0) {
integers.add(2);
} else {
integers.add(1);
}
}
if (integers.size() > 1) {
wmsReceiptBill.setDistributeType(2);
} else {
wmsReceiptBill.setDistributeType(1);
for (Integer integer : integers) {
if (integer == 1) {
wmsReceiptBill.setDistributeType(2);
}
}
}
}
wmsReceiptBillService.updateById(wmsReceiptBill);
}
}
// saveWmsInventory(sid);
@ -392,17 +494,21 @@ public class WmsShelfBillService extends MybatisBaseService<WmsShelfBillMapper,
}
}
//查询所有已上架的商品
List<String> stringList = wmsShelfBillDetailService.selectReceiptSidList();
stringList.removeAll(Collections.singleton(null));
// List<String> stringList = wmsShelfBillDetailService.selectReceiptSidList();
// stringList.removeAll(Collections.singleton(null));
//获取收货单据
WmsReceiptBill wmsReceiptBill = wmsReceiptBillService.fetchBySid(sid);
shelfInitVo.setCreateTime(DateUtil.today());//单据日期
shelfInitVo.setSourceBillNo(wmsReceiptBill.getBillNo());//来源单编号
shelfInitVo.setSourceBillSid(wmsReceiptBill.getSid());//来源单sid
shelfInitVo.setBillState("新建");
if (StringUtils.isNotBlank(wmsReceiptBill.getManufactorBillNo())) {
shelfInitVo.setManufactorBillNo(wmsReceiptBill.getManufactorBillNo());
}
List<ShelfInitListVo> list = new ArrayList<>();
//获取收货单据的明细
List<WmsReceiptBillDetail> wmsReceiptBillDetailsList = wmsReceiptBillDetailService.selectByBillSid(sid, stringList);
// List<WmsReceiptBillDetail> wmsReceiptBillDetailsList = wmsReceiptBillDetailService.selectByBillSid(sid, stringList);
List<WmsReceiptBillDetail> wmsReceiptBillDetailsList = wmsReceiptBillDetailService.selectListByBillSid(sid);
wmsReceiptBillDetailsList.removeAll(Collections.singleton(null));
if (!wmsReceiptBillDetailsList.isEmpty()) {
for (int i = 0; i < wmsReceiptBillDetailsList.size(); i++) {
@ -411,6 +517,16 @@ public class WmsShelfBillService extends MybatisBaseService<WmsShelfBillMapper,
ShelfInitListVo shelfInitListVo = new ShelfInitListVo();
BeanUtil.copyProperties(v, shelfInitListVo, "sid");
shelfInitListVo.setReceiptDetailSid(v.getSid());
BigDecimal shelfCount = BigDecimal.ZERO;
if (null != v.getShelfCount()) {
shelfCount = v.getShelfCount();
}
BigDecimal actualInCount = BigDecimal.ZERO;
if (null != v.getActualInCount()) {
actualInCount = v.getActualInCount();
}
BigDecimal subtract = actualInCount.subtract(shelfCount);
shelfInitListVo.setCount(subtract.toString());
// shelfInitListVo.setBatchNumber(wmsReceiptBillDetailBatch.getBatchNumber());
// shelfInitListVo.setWarehouseSid(v.getWarehouseSid());
// shelfInitListVo.setWarehouseRackSid(v.getWarehouseRackSid());
@ -631,6 +747,9 @@ public class WmsShelfBillService extends MybatisBaseService<WmsShelfBillMapper,
wmsGoodsTagService.updateById(wmsGoodsTag);
}
WmsInventoryRecordDto recordDto = new WmsInventoryRecordDto();
if (StringUtils.isNotBlank(wmsShelfBill.getManufactorBillNo())) {
recordDto.setManufactorBillNo(wmsShelfBill.getManufactorBillNo());
}
recordDto.setCreateBySid(dto.getUserSid());
recordDto.setUseOrgSid(deptSid);
recordDto.setCreateOrgSid(createOrgSid);

Loading…
Cancel
Save