18 changed files with 1177 additions and 0 deletions
@ -1,8 +1,63 @@ |
|||
package com.yxt.warehouse.apiadmin; |
|||
|
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillQuery; |
|||
import com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillService; |
|||
import com.yxt.warehouse.biz.purchaseinventorybill.*; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.web.bind.annotation.*; |
|||
|
|||
/** |
|||
* @author wangpengfei |
|||
* @date 2024/8/1 17:46 |
|||
*/ |
|||
@Api(tags = "采购入库") |
|||
@RestController |
|||
@RequestMapping("/apiadmin/purchaseinventorybill") |
|||
public class PurchaseInventoryBillRest { |
|||
@Autowired |
|||
PurchaseInventoryBillService purchaseInventoryBillService; |
|||
@ApiOperation("分页列表") |
|||
@PostMapping("/listPage") |
|||
public ResultBean<PagerVo<PurchaseInventoryBillPageVo>> listPage(@RequestBody PagerQuery<PurchaseInventoryBillQuery> pq) { |
|||
ResultBean<PagerVo<PurchaseInventoryBillPageVo>> rb = ResultBean.fireFail(); |
|||
PagerVo<PurchaseInventoryBillPageVo> pv = purchaseInventoryBillService.listPage(pq); |
|||
return rb.success().setData(pv); |
|||
} |
|||
|
|||
@ApiOperation("新增修改保存") |
|||
@PostMapping("/saveOrUpdate") |
|||
ResultBean<String> saveOrUpdate(@RequestBody PurchaseInventoryBillDto2 dto) { |
|||
return purchaseInventoryBillService.saveOrUpdateBill2(dto); |
|||
} |
|||
|
|||
@ApiOperation("通知单收货单初始化") |
|||
@GetMapping("/getInitDetails") |
|||
ResultBean<PurchaseInventoryBillVo> getInitDetails(@RequestParam("sourceSid") String sourceSid) { |
|||
return purchaseInventoryBillService.getInitDetails(sourceSid); |
|||
} |
|||
|
|||
@ApiOperation("收货单据编辑初始化/详情") |
|||
@GetMapping("/selectByBillSid") |
|||
ResultBean<PurchaseInventoryBillInitVo> selectByBillSid(@RequestParam("sid") String sid) { |
|||
return purchaseInventoryBillService.selectByBillSid(sid); |
|||
} |
|||
|
|||
@ApiOperation("确认") |
|||
@PostMapping("/confirm") |
|||
ResultBean<String> confirm(@RequestBody PurchaseInventoryBillDto2 dto) { |
|||
return purchaseInventoryBillService.confirm(dto); |
|||
} |
|||
|
|||
@ApiOperation("删除/批量删除") |
|||
@DeleteMapping("/delBySids") |
|||
ResultBean delBySids(@RequestBody String[] sids) { |
|||
return purchaseInventoryBillService.delAllBySids(sids); |
|||
} |
|||
|
|||
|
|||
} |
|||
|
@ -0,0 +1,60 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBill extends BaseEntity { |
|||
|
|||
@ApiModelProperty("来源单sid(预约单)") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("来源单号(预约单)") |
|||
private String sourceBillNo; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; |
|||
@ApiModelProperty("状态") |
|||
private String billState; |
|||
@ApiModelProperty("商品总额") |
|||
private double total; |
|||
@ApiModelProperty("商品总重量(kg)") |
|||
private double totalWeight; |
|||
@ApiModelProperty("总体积(m3)") |
|||
private double totalVolume; |
|||
@ApiModelProperty("总数") |
|||
private double totalQuantity; |
|||
@ApiModelProperty("供应商sid") |
|||
private String supplierSid; |
|||
@ApiModelProperty("供应商") |
|||
private String supplierName; |
|||
@ApiModelProperty("承运商") |
|||
private String carrier; |
|||
@ApiModelProperty("运单号") |
|||
private String waybillNumber; |
|||
@ApiModelProperty("货主") |
|||
private String shipper; |
|||
@ApiModelProperty("外部单号") |
|||
private String externalNo; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("入库时间") |
|||
private Date storageTime; |
|||
@ApiModelProperty("操作员sid") |
|||
private String operatorSid; |
|||
@ApiModelProperty("操作员名称") |
|||
private String operatorName; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("操作时间") |
|||
private Date operatorTime; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
} |
@ -0,0 +1,69 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetail.WarehouseReceiptBillDetailDto2; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchDto2; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/15 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillDto2 { |
|||
private String sid; |
|||
@ApiModelProperty("来源单sid(预约单)") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("来源单号(预约单)") |
|||
private String sourceBillNo; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; |
|||
@ApiModelProperty("状态") |
|||
private String billState; |
|||
@ApiModelProperty("商品总额") |
|||
private double total; |
|||
@ApiModelProperty("商品总重量(kg)") |
|||
private double totalWeight; |
|||
@ApiModelProperty("总体积(m3)") |
|||
private double totalVolume; |
|||
@ApiModelProperty("总数") |
|||
private double totalQuantity; |
|||
@ApiModelProperty("供应商sid") |
|||
private String supplierSid; |
|||
@ApiModelProperty("供应商") |
|||
private String supplierName; |
|||
@ApiModelProperty("承运商") |
|||
private String carrier; |
|||
@ApiModelProperty("运单号") |
|||
private String waybillNumber; |
|||
@ApiModelProperty("货主") |
|||
private String shipper; |
|||
@ApiModelProperty("外部单号") |
|||
private String externalNo; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("入库时间") |
|||
private Date storageTime; |
|||
@ApiModelProperty("操作员sid") |
|||
private String operatorSid; |
|||
@ApiModelProperty("操作员名称") |
|||
private String operatorName; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("操作时间") |
|||
private Date operatorTime; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
@ApiModelProperty("备注") |
|||
private String remarks; |
|||
@ApiModelProperty("商品列表") |
|||
private List<WarehouseReceiptBillDetailDto2> list = new ArrayList<>(); |
|||
@ApiModelProperty("批次列表") |
|||
private List<WarehouseReceiptBillDetailBatchDto2> pcList = new ArrayList<>(); |
|||
} |
@ -0,0 +1,67 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailVo; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetail.WarehouseReceiptBillDetailDto2; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchDto2; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/15 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillInitVo { |
|||
|
|||
@ApiModelProperty("来源单sid(预约单)") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("来源单号(预约单)") |
|||
private String sourceBillNo; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; |
|||
@ApiModelProperty("状态") |
|||
private String billState; |
|||
@ApiModelProperty("商品总额") |
|||
private double total; |
|||
@ApiModelProperty("商品总重量(kg)") |
|||
private double totalWeight; |
|||
@ApiModelProperty("总体积(m3)") |
|||
private double totalVolume; |
|||
@ApiModelProperty("总数") |
|||
private double totalQuantity; |
|||
@ApiModelProperty("供应商sid") |
|||
private String supplierSid; |
|||
@ApiModelProperty("供应商") |
|||
private String supplierName; |
|||
@ApiModelProperty("承运商") |
|||
private String carrier; |
|||
@ApiModelProperty("运单号") |
|||
private String waybillNumber; |
|||
@ApiModelProperty("货主") |
|||
private String shipper; |
|||
@ApiModelProperty("外部单号") |
|||
private String externalNo; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("入库时间") |
|||
private Date storageTime; |
|||
@ApiModelProperty("操作员sid") |
|||
private String operatorSid; |
|||
@ApiModelProperty("操作员名称") |
|||
private String operatorName; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("操作时间") |
|||
private Date operatorTime; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
private String remarks; |
|||
@ApiModelProperty("单据详情") |
|||
private List<PurchaseInventoryBillDetailVo> list = new ArrayList<>(); |
|||
} |
@ -0,0 +1,20 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
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 org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Mapper |
|||
public interface PurchaseInventoryBillMapper extends BaseMapper<PurchaseInventoryBill> { |
|||
IPage<PurchaseInventoryBillPageVo> listPage(IPage<PurchaseInventoryBill> page, @Param(Constants.WRAPPER) QueryWrapper<PurchaseInventoryBill> qw); |
|||
|
|||
PurchaseInventoryBillInitVo getDetailsInit(String sid); |
|||
} |
@ -0,0 +1,18 @@ |
|||
<?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="com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillMapper"> |
|||
<select id="listPage" resultType="com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillPageVo"> |
|||
select wrb.* |
|||
from purchase_inventory_bill wrb |
|||
<where> |
|||
${ew.sqlSegment} |
|||
</where> |
|||
order by wrb.id desc |
|||
</select> |
|||
|
|||
<select id="getDetailsInit" resultType="com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillInitVo"> |
|||
select wrb.* |
|||
from purchase_inventory_bill wrb |
|||
where wrb.sid = #{sid} |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,61 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/12 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillPageVo { |
|||
|
|||
private String sid; |
|||
@ApiModelProperty("来源单sid(预约单)") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("来源单号(预约单)") |
|||
private String sourceBillNo; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; |
|||
@ApiModelProperty("状态") |
|||
private String billState; |
|||
@ApiModelProperty("商品总额") |
|||
private double total; |
|||
@ApiModelProperty("商品总重量(kg)") |
|||
private double totalWeight; |
|||
@ApiModelProperty("总体积(m3)") |
|||
private double totalVolume; |
|||
@ApiModelProperty("总数") |
|||
private double totalQuantity; |
|||
@ApiModelProperty("供应商sid") |
|||
private String supplierSid; |
|||
@ApiModelProperty("供应商") |
|||
private String supplierName; |
|||
@ApiModelProperty("承运商") |
|||
private String carrier; |
|||
@ApiModelProperty("运单号") |
|||
private String waybillNumber; |
|||
@ApiModelProperty("货主") |
|||
private String shipper; |
|||
@ApiModelProperty("外部单号") |
|||
private String externalNo; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("入库时间") |
|||
private Date storageTime; |
|||
@ApiModelProperty("操作员sid") |
|||
private String operatorSid; |
|||
@ApiModelProperty("操作员名称") |
|||
private String operatorName; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("操作时间") |
|||
private Date operatorTime; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
private String remarks; |
|||
} |
@ -0,0 +1,42 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillQuery implements Query { |
|||
|
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; |
|||
@ApiModelProperty("外部单号") |
|||
private String externalNo; |
|||
@ApiModelProperty("来源单号(入库预约)") |
|||
private String sourceBillNo; |
|||
@ApiModelProperty("库位sid") |
|||
private String warehouseRackSid; |
|||
@ApiModelProperty("入库开始时间") |
|||
private String storageTimeStart; |
|||
@ApiModelProperty("入库结束时间") |
|||
private String storageTimeEnd; |
|||
@ApiModelProperty("承运商") |
|||
private String carrier; |
|||
@ApiModelProperty("运单号") |
|||
private String waybillNumber; |
|||
@ApiModelProperty("商品sid") |
|||
private String goodsSkuSid; |
|||
@ApiModelProperty("货主") |
|||
private String shipper; |
|||
@ApiModelProperty("菜单路由") |
|||
private String menuUrl; |
|||
@ApiModelProperty("组织全路径sid") |
|||
private String orgPath; |
|||
@ApiModelProperty("用户sid") |
|||
private String userSid; |
|||
|
|||
} |
@ -0,0 +1,224 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import cn.hutool.core.date.DateUtil; |
|||
import com.alibaba.fastjson.JSON; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.yxt.common.base.service.MybatisBaseService; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.base.utils.StringUtils; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailDto2; |
|||
import com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailService; |
|||
import com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailVo; |
|||
import com.yxt.warehouse.biz.warehouseansbill.WarehouseAnsBill; |
|||
import com.yxt.warehouse.biz.warehouseansbill.WarehouseAnsBillService; |
|||
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsBillDetailService; |
|||
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsListDetailsVo; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetail.WarehouseReceiptBillDetailDto2; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetail.WarehouseReceiptBillDetailMapper; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetail.WarehouseReceiptBillDetailService; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetail.WarehouseReceiptBillDetailVo; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchDto2; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchMapper; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.*; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Service |
|||
public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInventoryBillMapper, PurchaseInventoryBill> { |
|||
|
|||
@Autowired |
|||
private PurchaseInventoryBillDetailService purchaseInventoryBillDetailService; |
|||
@Autowired |
|||
private WarehouseAnsBillService wmsAnsBillService; |
|||
@Autowired |
|||
private WarehouseAnsBillDetailService wmsAnsBillDetailService; |
|||
@Autowired |
|||
private WarehouseReceiptBillDetailBatchService wmsReceiptBillDetailBatchService; |
|||
@Autowired |
|||
private WarehouseReceiptBillDetailMapper wmsReceiptBillDetailMapper; |
|||
@Autowired |
|||
private WarehouseReceiptBillDetailBatchMapper wmsReceiptBillDetailBatchMapper; |
|||
|
|||
public PagerVo<PurchaseInventoryBillPageVo> listPage(PagerQuery<PurchaseInventoryBillQuery> pq) { |
|||
PurchaseInventoryBillQuery query = pq.getParams(); |
|||
QueryWrapper<PurchaseInventoryBill> qw = new QueryWrapper<>(); |
|||
//ToDo:添加查询条件
|
|||
//状态
|
|||
if (StringUtils.isNotBlank(query.getBillNo())) { |
|||
qw.like("wrb.billNo", query.getBillNo()); |
|||
} |
|||
//外部单号
|
|||
if (StringUtils.isNotBlank(query.getExternalNo())) { |
|||
qw.like("wrb.externalNo", query.getExternalNo()); |
|||
} |
|||
//来源单((预约单)
|
|||
if (StringUtils.isNotBlank(query.getSourceBillNo())) { |
|||
qw.like("wrb.sourceBillNo", query.getSourceBillNo()); |
|||
} |
|||
if (StringUtils.isNotBlank(query.getWarehouseRackSid())) { |
|||
qw.like("wrb.warehouseRackSid", query.getWarehouseRackSid()); |
|||
} |
|||
//入库开始时间——日期结束时间
|
|||
qw.apply(StringUtils.isNotBlank(query.getStorageTimeStart()), "date_format (wrb.createTime,'%Y-%m-%d') >= date_format('" + query.getStorageTimeStart() + "','%Y-%m-%d')"). |
|||
apply(StringUtils.isNotBlank(query.getStorageTimeEnd()), "date_format (wrb.createTime,'%Y-%m-%d') <= date_format('" + query.getStorageTimeEnd() + "','%Y-%m-%d')" |
|||
); |
|||
if (StringUtils.isNotBlank(query.getCarrier())) { |
|||
qw.like("wrb.carrier", query.getCarrier()); |
|||
} |
|||
if (StringUtils.isNotBlank(query.getWaybillNumber())) { |
|||
qw.like("wrb.waybillNumber", query.getWaybillNumber()); |
|||
} |
|||
if (StringUtils.isNotBlank(query.getGoodsSkuSid())) { |
|||
qw.like("wrb.goodsSkuSid", query.getGoodsSkuSid()); |
|||
} |
|||
if (StringUtils.isNotBlank(query.getShipper())) { |
|||
qw.like("wrb.shipper", query.getShipper()); |
|||
} |
|||
|
|||
IPage<PurchaseInventoryBill> page = PagerUtil.queryToPage(pq); |
|||
IPage<PurchaseInventoryBillPageVo> pagging = baseMapper.listPage(page, qw); |
|||
PagerVo<PurchaseInventoryBillPageVo> p = PagerUtil.pageToVo(pagging, null); |
|||
return p; |
|||
} |
|||
|
|||
public ResultBean<String> saveOrUpdateBill2(PurchaseInventoryBillDto2 dto) { |
|||
ResultBean<String> rb = ResultBean.fireFail(); |
|||
String sid = dto.getSid(); |
|||
if (StringUtils.isBlank(sid)) { |
|||
PurchaseInventoryBill wmsReceiptBill = new PurchaseInventoryBill(); |
|||
sid = wmsReceiptBill.getSid(); |
|||
BeanUtil.copyProperties(dto, wmsReceiptBill, "sid"); |
|||
List<WarehouseReceiptBillDetailDto2> list = dto.getList(); |
|||
list.removeAll(Collections.singleton(null)); |
|||
List<WarehouseReceiptBillDetailBatchDto2> pcList = dto.getPcList(); |
|||
pcList.removeAll(Collections.singleton(null)); |
|||
if (!list.isEmpty()) { |
|||
// purchaseInventoryBillDetailService.saveOrUpdateDetailsList2(sid, list, pcList);
|
|||
} |
|||
baseMapper.insert(wmsReceiptBill); |
|||
|
|||
} else { |
|||
PurchaseInventoryBill wmsReceiptBill = fetchBySid(sid); |
|||
if (wmsReceiptBill == null) { |
|||
return rb.setMsg("该单据不存在"); |
|||
} |
|||
BeanUtil.copyProperties(dto, wmsReceiptBill, "sid"); |
|||
List<WarehouseReceiptBillDetailDto2> list = dto.getList(); |
|||
list.removeAll(Collections.singleton(null)); |
|||
List<WarehouseReceiptBillDetailBatchDto2> pcList = dto.getPcList(); |
|||
pcList.removeAll(Collections.singleton(null)); |
|||
if (!list.isEmpty()) { |
|||
// purchaseInventoryBillDetailService.saveOrUpdateDetailsList2(sid, list, pcList);
|
|||
} |
|||
baseMapper.updateById(wmsReceiptBill); |
|||
} |
|||
return rb.success().setData(sid); |
|||
} |
|||
|
|||
public ResultBean<PurchaseInventoryBillVo> getInitDetails(String sourceSid) { |
|||
ResultBean<PurchaseInventoryBillVo> rb = ResultBean.fireFail(); |
|||
PurchaseInventoryBillVo wmsReceiptBillVo = new PurchaseInventoryBillVo(); |
|||
WarehouseAnsBill wmsAnsBill = wmsAnsBillService.fetchBySid(sourceSid); |
|||
BeanUtil.copyProperties(wmsAnsBill, wmsReceiptBillVo, "sid"); |
|||
wmsReceiptBillVo.setSourceBillNo(wmsAnsBill.getBillNo()); |
|||
wmsReceiptBillVo.setSourceBillSid(wmsAnsBill.getSid()); |
|||
// wmsReceiptBillVo.setCreateTime(DateUtil.today());
|
|||
List<WarehouseAnsListDetailsVo> list = wmsAnsBillDetailService.selectByBillSid(sourceSid); |
|||
list.removeAll(Collections.singleton(null)); |
|||
if (!list.isEmpty()) { |
|||
List<WarehouseReceiptBillDetailVo> lists = Optional.ofNullable(list).orElse(new ArrayList<>()).stream().map(m -> JSON.parseObject(JSON.toJSONString(m), WarehouseReceiptBillDetailVo.class)).collect(Collectors.toList()); |
|||
for (WarehouseReceiptBillDetailVo warehouseReceiptBillDetailVo : lists) { |
|||
warehouseReceiptBillDetailVo.setIsQuality(0); |
|||
warehouseReceiptBillDetailVo.setQualityState(0); |
|||
} |
|||
wmsReceiptBillVo.setList(lists); |
|||
} |
|||
|
|||
return rb.success().setData(wmsReceiptBillVo); |
|||
} |
|||
public ResultBean<PurchaseInventoryBillInitVo> selectByBillSid(String sid) { |
|||
ResultBean<PurchaseInventoryBillInitVo> rb = ResultBean.fireFail(); |
|||
PurchaseInventoryBillInitVo wmsReceiptBillInitVo = baseMapper.getDetailsInit(sid); |
|||
if (wmsReceiptBillInitVo != null) { |
|||
List<PurchaseInventoryBillDetailVo> list = purchaseInventoryBillDetailService.getDetailsInit(sid); |
|||
list.removeAll(Collections.singleton(null)); |
|||
wmsReceiptBillInitVo.setList(list); |
|||
// wmsReceiptBillInitVo.setPcList(pcList);
|
|||
} else { |
|||
return rb.setMsg("该单据不存在"); |
|||
} |
|||
return rb.success().setData(wmsReceiptBillInitVo); |
|||
} |
|||
// public ResultBean<PurchaseInventoryBillInitVo> getDetailsInit(String sid) {
|
|||
// ResultBean<PurchaseInventoryBillInitVo> rb = ResultBean.fireFail();
|
|||
// PurchaseInventoryBillInitVo wmsReceiptBillInitVo = baseMapper.getDetailsInit(sid);
|
|||
// List<WarehouseReceiptBillDetailBatchDto2> pcList = new ArrayList<>();
|
|||
// if (wmsReceiptBillInitVo != null) {
|
|||
// List<PurchaseInventoryBillDetailVo> list = purchaseInventoryBillDetailService.getDetailsInit(sid);
|
|||
// list.removeAll(Collections.singleton(null));
|
|||
// if (!list.isEmpty()) {
|
|||
// for (int i = 0; i < list.size(); i++) {
|
|||
// PurchaseInventoryBillDetailVo purchaseInventoryBillDetailDto2 = list.get(i);
|
|||
// int a = i + 1;
|
|||
//// purchaseInventoryBillDetailDto2.setXh(String.valueOf(a));
|
|||
// List<WarehouseReceiptBillDetailBatchDto2> pcList2 = wmsReceiptBillDetailBatchService.getDetailsInit(sid, purchaseInventoryBillDetailDto2.getDetailsSid());
|
|||
// pcList2.removeAll(Collections.singleton(null));
|
|||
// if (!pcList2.isEmpty()) {
|
|||
// for (int j = 0; j < pcList2.size(); j++) {
|
|||
// WarehouseReceiptBillDetailBatchDto2 wmsReceiptBillDetailBatchDto2 = pcList2.get(j);
|
|||
// wmsReceiptBillDetailBatchDto2.setXh(String.valueOf(a));
|
|||
// }
|
|||
// pcList.addAll(pcList2);
|
|||
// }
|
|||
// }
|
|||
// }
|
|||
//// wmsReceiptBillInitVo.setList(list);
|
|||
//// wmsReceiptBillInitVo.setPcList(pcList);
|
|||
// } else {
|
|||
// return rb.setMsg("该单据不存在");
|
|||
// }
|
|||
// return rb.success().setData(wmsReceiptBillInitVo);
|
|||
// }
|
|||
|
|||
public ResultBean<String> confirm(PurchaseInventoryBillDto2 dto) { |
|||
ResultBean<String> rb = ResultBean.fireFail(); |
|||
// dto.setBillState("1");
|
|||
List<WarehouseReceiptBillDetailDto2> list = dto.getList(); |
|||
list.removeAll(Collections.singleton(null)); |
|||
if (!list.isEmpty()) { |
|||
for (int i = 0; i < list.size(); i++) { |
|||
WarehouseReceiptBillDetailDto2 wmsReceiptBillDetailDto2 = list.get(i); |
|||
wmsReceiptBillDetailDto2.setState(1); |
|||
} |
|||
} |
|||
dto.setList(list); |
|||
ResultBean<String> resultBean = saveOrUpdateBill2(dto); |
|||
String sid = resultBean.getData(); |
|||
return rb.success().setData(sid); |
|||
} |
|||
|
|||
public ResultBean delAllBySids(String[] sids) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
List<String> sidss = Arrays.asList(sids); |
|||
for (int i = 0; i < sidss.size(); i++) { |
|||
String s = sidss.get(i); |
|||
wmsReceiptBillDetailMapper.deleteByBillSid(s); |
|||
wmsReceiptBillDetailBatchMapper.deleteByDetails(s); |
|||
} |
|||
delBySids(sids); |
|||
return rb.success().setMsg("删除成功"); |
|||
} |
|||
} |
@ -0,0 +1,65 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybill; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonFormat; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetail.WarehouseReceiptBillDetailVo; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.Date; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillVo { |
|||
private String sid; |
|||
@ApiModelProperty("来源单sid(预约单)") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("来源单号(预约单)") |
|||
private String sourceBillNo; |
|||
@ApiModelProperty("单据编号") |
|||
private String billNo; |
|||
@ApiModelProperty("状态") |
|||
private String billState; |
|||
@ApiModelProperty("商品总额") |
|||
private double total; |
|||
@ApiModelProperty("商品总重量(kg)") |
|||
private double totalWeight; |
|||
@ApiModelProperty("总体积(m3)") |
|||
private double totalVolume; |
|||
@ApiModelProperty("总数") |
|||
private double totalQuantity; |
|||
@ApiModelProperty("供应商sid") |
|||
private String supplierSid; |
|||
@ApiModelProperty("供应商") |
|||
private String supplierName; |
|||
@ApiModelProperty("承运商") |
|||
private String carrier; |
|||
@ApiModelProperty("运单号") |
|||
private String waybillNumber; |
|||
@ApiModelProperty("货主") |
|||
private String shipper; |
|||
@ApiModelProperty("外部单号") |
|||
private String externalNo; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("入库时间") |
|||
private Date storageTime; |
|||
@ApiModelProperty("操作员sid") |
|||
private String operatorSid; |
|||
@ApiModelProperty("操作员名称") |
|||
private String operatorName; |
|||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8") |
|||
@ApiModelProperty("操作时间") |
|||
private Date operatorTime; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
private String remarks; |
|||
|
|||
private List<WarehouseReceiptBillDetailVo> list = new ArrayList<>(); |
|||
} |
@ -0,0 +1,62 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybilldetail; |
|||
|
|||
import com.yxt.common.core.domain.BaseEntity; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillDetail extends BaseEntity { |
|||
private String sid; |
|||
@ApiModelProperty("来源单sid") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("图示") |
|||
private String illustration; |
|||
@ApiModelProperty("商品skusid") |
|||
private String goodsSkuSid; |
|||
@ApiModelProperty("商品名称") |
|||
private String goodsName; |
|||
@ApiModelProperty("商品编码") |
|||
private String goodsCode; |
|||
@ApiModelProperty("商品条码") |
|||
private String goodsBarCode; |
|||
@ApiModelProperty("规格值") |
|||
private String specValue; |
|||
@ApiModelProperty("箱条码") |
|||
private String boxBarCode; |
|||
@ApiModelProperty("箱规格") |
|||
private String boxSpec; |
|||
@ApiModelProperty("单位sid") |
|||
private String unitSid; |
|||
@ApiModelProperty("单位名称") |
|||
private BigDecimal unitName; |
|||
@ApiModelProperty("成本单价") |
|||
private BigDecimal price; |
|||
@ApiModelProperty("总价") |
|||
private String totalPrice; |
|||
@ApiModelProperty("数量") |
|||
private Date count; |
|||
@ApiModelProperty("辅助单位") |
|||
private Integer auxiliaryUnits; |
|||
@ApiModelProperty("序列号") |
|||
private Integer serialNumber; |
|||
@ApiModelProperty("生产批次号") |
|||
private String batchNumber; |
|||
|
|||
@ApiModelProperty("入库库位sid") |
|||
private String warehouseRackSid; |
|||
@ApiModelProperty("入库库位名") |
|||
private String warehouseRackName; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
private String remarks; |
|||
} |
@ -0,0 +1,60 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybilldetail; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* @author wangpengfei |
|||
* @date 2024/6/6 16:39 |
|||
*/ |
|||
@Data |
|||
public class PurchaseInventoryBillDetailDto { |
|||
private String sid; |
|||
@ApiModelProperty("来源单sid") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("图示") |
|||
private String illustration; |
|||
@ApiModelProperty("商品skusid") |
|||
private String goodsSkuSid; |
|||
@ApiModelProperty("商品名称") |
|||
private String goodsName; |
|||
@ApiModelProperty("商品编码") |
|||
private String goodsCode; |
|||
@ApiModelProperty("商品条码") |
|||
private String goodsBarCode; |
|||
@ApiModelProperty("规格值") |
|||
private String specValue; |
|||
@ApiModelProperty("箱条码") |
|||
private String boxBarCode; |
|||
@ApiModelProperty("箱规格") |
|||
private String boxSpec; |
|||
@ApiModelProperty("单位sid") |
|||
private String unitSid; |
|||
@ApiModelProperty("单位名称") |
|||
private BigDecimal unitName; |
|||
@ApiModelProperty("成本单价") |
|||
private BigDecimal price; |
|||
@ApiModelProperty("总价") |
|||
private String totalPrice; |
|||
@ApiModelProperty("数量") |
|||
private Date count; |
|||
@ApiModelProperty("辅助单位") |
|||
private Integer auxiliaryUnits; |
|||
@ApiModelProperty("序列号") |
|||
private Integer serialNumber; |
|||
@ApiModelProperty("生产批次号") |
|||
private String batchNumber; |
|||
|
|||
@ApiModelProperty("入库库位sid") |
|||
private String warehouseRackSid; |
|||
@ApiModelProperty("入库库位名") |
|||
private String warehouseRackName; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
private String remarks; |
|||
} |
@ -0,0 +1,69 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybilldetail; |
|||
|
|||
import com.fasterxml.jackson.annotation.JsonIgnore; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/15 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillDetailDto2 { |
|||
|
|||
@ApiModelProperty("商品Skusid") |
|||
private String goodsSkuSid; |
|||
@ApiModelProperty("商品Sku名称") |
|||
private String goodsSkuTitle; |
|||
@ApiModelProperty("商品sku编码") |
|||
private String goodsSkuCode; |
|||
@ApiModelProperty("规格型号") |
|||
private String goodsSkuOwnSpec; |
|||
@ApiModelProperty("计量单位") |
|||
private String unit; |
|||
@ApiModelProperty("仓库sid") |
|||
private String warehouseSid; |
|||
@ApiModelProperty("仓库名称") |
|||
private String warehouseName; |
|||
@ApiModelProperty("库位sid") |
|||
private String warehouseRackSid; |
|||
@ApiModelProperty("库位名称") |
|||
private String warehouseRackName; |
|||
@ApiModelProperty("实收数量") |
|||
private String actualInCount; |
|||
@ApiModelProperty("拒收数量") |
|||
private String rejectCount; |
|||
@ApiModelProperty("拒收原因") |
|||
private String rejectReason; |
|||
@ApiModelProperty("是否需要质检(不需要0,需要1)") |
|||
private Integer isQuality; |
|||
@ApiModelProperty("质检状态(合格0,不合格1)") |
|||
private Integer qualityState; |
|||
@ApiModelProperty("载具说明") |
|||
private String packageRemark; |
|||
@ApiModelProperty("单据明细状态:0新建,1已完成") |
|||
private Integer state; |
|||
@ApiModelProperty("序号") |
|||
private String xh; |
|||
@JsonIgnore |
|||
private String detailsSid; |
|||
|
|||
@ApiModelProperty("预约数量(采购订单数量)") |
|||
private String orderCount; |
|||
|
|||
|
|||
//入库价
|
|||
@ApiModelProperty("单位成本(采购价)") |
|||
private String cost; |
|||
@ApiModelProperty("税额") |
|||
private String taxAmount; |
|||
@ApiModelProperty("含税价") |
|||
private String taxPrice; |
|||
//采购金额
|
|||
@ApiModelProperty("金额") |
|||
private String amount; |
|||
|
|||
@ApiModelProperty("有效天数") |
|||
private String shelfLife; |
|||
} |
@ -0,0 +1,30 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybilldetail; |
|||
|
|||
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 org.apache.ibatis.annotations.Delete; |
|||
import org.apache.ibatis.annotations.Mapper; |
|||
import org.apache.ibatis.annotations.Param; |
|||
|
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Mapper |
|||
public interface PurchaseInventoryBillDetailMapper extends BaseMapper<PurchaseInventoryBillDetail> { |
|||
int deleteByBillSid(String sid); |
|||
|
|||
List<PurchaseInventoryBillDetailVo> getDetailsInit(String sid); |
|||
|
|||
List<PurchaseInventoryBillDetail> selectByBillSid(@Param("sid") String sid, @Param("sidList") List<String> sidList); |
|||
IPage<PurchaseInventoryBillDetailVo> listPage(IPage<PurchaseInventoryBillDetail> page, @Param(Constants.WRAPPER) QueryWrapper<PurchaseInventoryBillDetail> qw); |
|||
PurchaseInventoryBillDetailVo initialization (@Param("sid") String sid); |
|||
|
|||
@Delete("delete from warehouse_reportlose where sid = #{sid}") |
|||
void delByMainSid(String billSid); |
|||
} |
@ -0,0 +1,40 @@ |
|||
<?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="com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailMapper"> |
|||
<delete id="deleteByBillSid"> |
|||
delete |
|||
from pruchase_inventory_bill_detail |
|||
where billSid = #{sid} |
|||
</delete> |
|||
|
|||
<select id="getDetailsInit" resultType="com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailVo"> |
|||
select wrbd.* |
|||
from purchase_inventory_bill_detail wrbd |
|||
where sourceBillSid = #{sid} |
|||
</select> |
|||
|
|||
<select id="selectByBillSid" resultType="com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetail"> |
|||
select * |
|||
from pruchase_inventory_bill_detail where billSid = #{sid} |
|||
<if test="sidList != null and sidList.size() != 0"> |
|||
and sid not in |
|||
<foreach collection="sidList" item="item" open="(" close=")" separator=","> |
|||
#{item} |
|||
</foreach> |
|||
</if> |
|||
</select> |
|||
<select id="listPage" resultType="com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailVo"> |
|||
select |
|||
a.* |
|||
from pruchase_inventory_bill_detail a |
|||
<where> |
|||
${ew.sqlSegment} |
|||
</where> |
|||
</select> |
|||
<select id="initialization" resultType="com.yxt.warehouse.biz.purchaseinventorybilldetail.PurchaseInventoryBillDetailVo"> |
|||
select |
|||
a.* |
|||
from pruchase_inventory_bill_detail a |
|||
where a.sid =#{sid} |
|||
</select> |
|||
</mapper> |
@ -0,0 +1,13 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybilldetail; |
|||
|
|||
import com.yxt.common.core.query.Query; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @author wangpengfei |
|||
* @date 2024/6/6 16:42 |
|||
*/ |
|||
@Data |
|||
public class PurchaseInventoryBillDetailQuery implements Query { |
|||
private String name; |
|||
} |
@ -0,0 +1,159 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybilldetail; |
|||
|
|||
import cn.hutool.core.bean.BeanUtil; |
|||
import cn.hutool.core.date.DateTime; |
|||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; |
|||
import com.baomidou.mybatisplus.core.metadata.IPage; |
|||
import com.yxt.common.base.service.MybatisBaseService; |
|||
import com.yxt.common.base.utils.PagerUtil; |
|||
import com.yxt.common.base.utils.StringUtils; |
|||
import com.yxt.common.core.query.PagerQuery; |
|||
import com.yxt.common.core.result.ResultBean; |
|||
import com.yxt.common.core.vo.PagerVo; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchDto2; |
|||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchService; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
|
|||
import java.util.Collections; |
|||
import java.util.List; |
|||
import java.util.stream.Collectors; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/3 |
|||
**/ |
|||
@Service |
|||
public class PurchaseInventoryBillDetailService extends MybatisBaseService<PurchaseInventoryBillDetailMapper, PurchaseInventoryBillDetail> { |
|||
|
|||
@Autowired |
|||
private WarehouseReceiptBillDetailBatchService wmsReceiptBillDetailBatchService; |
|||
|
|||
public void saveOrUpdateDetailsList2(String sid, List<PurchaseInventoryBillDetailDto2> list, List<WarehouseReceiptBillDetailBatchDto2> pcList) { |
|||
baseMapper.deleteByBillSid(sid); |
|||
list.forEach(v -> { |
|||
PurchaseInventoryBillDetail wmsReceiptBillDetail = new PurchaseInventoryBillDetail(); |
|||
BeanUtil.copyProperties(v, wmsReceiptBillDetail, "sid"); |
|||
// wmsReceiptBillDetail.setBillSid(sid);
|
|||
baseMapper.insert(wmsReceiptBillDetail); |
|||
wmsReceiptBillDetailBatchService.deleteByDetails(sid); |
|||
pcList.removeAll(Collections.singleton(null)); |
|||
if (!pcList.isEmpty()) { |
|||
List<WarehouseReceiptBillDetailBatchDto2> pcList2 = pcList.stream().filter(c -> c.getXh().equals(v.getXh())).collect(Collectors.toList()); |
|||
pcList2.removeAll(Collections.singleton(null)); |
|||
if (!pcList2.isEmpty()) { |
|||
wmsReceiptBillDetailBatchService.saveBatchs2(sid, wmsReceiptBillDetail.getSid(), pcList2); |
|||
} |
|||
} |
|||
|
|||
|
|||
}); |
|||
} |
|||
|
|||
public List<PurchaseInventoryBillDetailVo> getDetailsInit(String sid) { |
|||
return baseMapper.getDetailsInit(sid); |
|||
} |
|||
|
|||
public List<PurchaseInventoryBillDetail> selectByBillSid(String sid, List<String> sidList) { |
|||
return baseMapper.selectByBillSid(sid, sidList); |
|||
} |
|||
public ResultBean<PagerVo<PurchaseInventoryBillDetailVo>> listPage(PagerQuery<PurchaseInventoryBillDetailQuery> pq) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PurchaseInventoryBillDetailQuery query = pq.getParams(); |
|||
QueryWrapper<PurchaseInventoryBillDetail> qw = new QueryWrapper<>(); |
|||
if (StringUtils.isNotBlank(query.getName())) { |
|||
qw.like("rackName", query.getName()); |
|||
} |
|||
|
|||
IPage<PurchaseInventoryBillDetail> page = PagerUtil.queryToPage(pq); |
|||
IPage<PurchaseInventoryBillDetailVo> pagging = baseMapper.listPage(page, qw); |
|||
PagerVo<PurchaseInventoryBillDetailVo> p = PagerUtil.pageToVo(pagging, null); |
|||
List<PurchaseInventoryBillDetailVo> records = pagging.getRecords(); |
|||
return rb.success().setData(p); |
|||
} |
|||
|
|||
|
|||
|
|||
|
|||
|
|||
public ResultBean<String> saveOrUpdate(PurchaseInventoryBillDetailDto dto) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
String sid = ""; |
|||
if (StringUtils.isNotBlank(dto.getSid())) { |
|||
sid = dto.getSid(); |
|||
PurchaseInventoryBillDetail wmsWarehouseRack = fetchBySid(dto.getSid()); |
|||
BeanUtil.copyProperties(dto, wmsWarehouseRack, "id", "sid"); |
|||
baseMapper.updateById(wmsWarehouseRack); |
|||
} else { |
|||
PurchaseInventoryBillDetail wmsWarehouseRack = new PurchaseInventoryBillDetail(); |
|||
sid = wmsWarehouseRack.getSid(); |
|||
BeanUtil.copyProperties(dto, wmsWarehouseRack, "id", "sid"); |
|||
wmsWarehouseRack.setCreateTime(new DateTime()); |
|||
baseMapper.insert(wmsWarehouseRack); |
|||
} |
|||
return rb.success().setMsg("成功"); |
|||
} |
|||
|
|||
public ResultBean<PurchaseInventoryBillDetailVo> initialization(String sid) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PurchaseInventoryBillDetailVo vo = baseMapper.initialization(sid); |
|||
return rb.success().setData(vo); |
|||
} |
|||
public void delAll(String[] sids) { |
|||
delBySids(sids); |
|||
} |
|||
|
|||
public ResultBean delete(String sid) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PurchaseInventoryBillDetail wmsWarehouseRack = fetchBySid(sid); |
|||
if (null != wmsWarehouseRack) { |
|||
baseMapper.deleteById(wmsWarehouseRack.getId()); |
|||
} |
|||
return rb.success(); |
|||
} |
|||
|
|||
public ResultBean updateIsEnable(String sid, String isEnable) { |
|||
ResultBean rb = ResultBean.fireFail(); |
|||
PurchaseInventoryBillDetail wmsWarehouseRack = fetchBySid(sid); |
|||
if (null != wmsWarehouseRack) { |
|||
wmsWarehouseRack.setIsEnable(Integer.parseInt(isEnable)); |
|||
baseMapper.updateById(wmsWarehouseRack); |
|||
} |
|||
return rb.success().setMsg("成功"); |
|||
} |
|||
|
|||
public void delByMainSid(String billSid) { |
|||
baseMapper.delByMainSid(billSid); |
|||
} |
|||
|
|||
|
|||
public void saveOrUpdateDto(PurchaseInventoryBillDetailDto dto) { |
|||
String dtoSid = dto.getSid(); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
this.insertByDto(dto); |
|||
return; |
|||
} |
|||
this.updateByDto(dto); |
|||
} |
|||
|
|||
public void insertByDto(PurchaseInventoryBillDetailDto dto) { |
|||
PurchaseInventoryBillDetail entity = new PurchaseInventoryBillDetail(); |
|||
BeanUtil.copyProperties(dto, entity, "id", "sid"); |
|||
baseMapper.insert(entity); |
|||
} |
|||
|
|||
public void updateByDto(PurchaseInventoryBillDetailDto dto) { |
|||
String dtoSid = dto.getSid(); |
|||
if (StringUtils.isBlank(dtoSid)) { |
|||
return; |
|||
} |
|||
} |
|||
public PurchaseInventoryBillDetailVo fetchDetailsVoBySid(String sid) { |
|||
PurchaseInventoryBillDetail entity = fetchBySid(sid); |
|||
PurchaseInventoryBillDetailVo vo = new PurchaseInventoryBillDetailVo(); |
|||
BeanUtil.copyProperties(entity, vo); |
|||
|
|||
return vo; |
|||
} |
|||
} |
@ -0,0 +1,63 @@ |
|||
package com.yxt.warehouse.biz.purchaseinventorybilldetail; |
|||
|
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import java.math.BigDecimal; |
|||
import java.util.Date; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: dimengzhe |
|||
* @date: 2024/4/12 |
|||
**/ |
|||
@Data |
|||
public class PurchaseInventoryBillDetailVo { |
|||
|
|||
private String sid; |
|||
@ApiModelProperty("来源单sid") |
|||
private String sourceBillSid; |
|||
@ApiModelProperty("图示") |
|||
private String illustration; |
|||
@ApiModelProperty("商品skusid") |
|||
private String goodsSkuSid; |
|||
@ApiModelProperty("商品名称") |
|||
private String goodsName; |
|||
@ApiModelProperty("商品编码") |
|||
private String goodsCode; |
|||
@ApiModelProperty("商品条码") |
|||
private String goodsBarCode; |
|||
@ApiModelProperty("规格值") |
|||
private String specValue; |
|||
@ApiModelProperty("箱条码") |
|||
private String boxBarCode; |
|||
@ApiModelProperty("箱规格") |
|||
private String boxSpec; |
|||
@ApiModelProperty("单位sid") |
|||
private String unitSid; |
|||
@ApiModelProperty("单位名称") |
|||
private String unitName; |
|||
@ApiModelProperty("成本单价") |
|||
private BigDecimal price; |
|||
@ApiModelProperty("总价") |
|||
private BigDecimal totalPrice; |
|||
@ApiModelProperty("数量") |
|||
private String count; |
|||
@ApiModelProperty("辅助单位") |
|||
private String auxiliaryUnits; |
|||
@ApiModelProperty("序列号") |
|||
private String serialNumber; |
|||
@ApiModelProperty("生产批次号") |
|||
private String batchNumber; |
|||
|
|||
@ApiModelProperty("入库库位sid") |
|||
private String warehouseRackSid; |
|||
@ApiModelProperty("入库库位名") |
|||
private String warehouseRackName; |
|||
@ApiModelProperty("使用组织sid") |
|||
private String useOrgSid; |
|||
@ApiModelProperty("创建组织sid") |
|||
private String createOrgSid; |
|||
private String remarks; |
|||
|
|||
} |
Loading…
Reference in new issue