9/1
This commit is contained in:
@@ -33,6 +33,10 @@ public class WarehouseInfoRest {
|
|||||||
public ResultBean<PagerVo<WarehouseInfoVo>> listPage(@RequestBody PagerQuery<WarehouseInfoQuery> pq) {
|
public ResultBean<PagerVo<WarehouseInfoVo>> listPage(@RequestBody PagerQuery<WarehouseInfoQuery> pq) {
|
||||||
return wmsWarehouseService.listPage(pq);
|
return wmsWarehouseService.listPage(pq);
|
||||||
}
|
}
|
||||||
|
@PostMapping("/list")
|
||||||
|
public ResultBean<List<WarehouseInfo>> list(@RequestBody WarehouseInfoMapQuery query) {
|
||||||
|
return wmsWarehouseService.listQuery(query);
|
||||||
|
}
|
||||||
@ApiOperation("查询所有的仓库")
|
@ApiOperation("查询所有的仓库")
|
||||||
@PostMapping("/listAll")
|
@PostMapping("/listAll")
|
||||||
public ResultBean<List<WarehouseInfo>> listAll(@RequestBody OrgPathQuery query) {
|
public ResultBean<List<WarehouseInfo>> listAll(@RequestBody OrgPathQuery query) {
|
||||||
|
|||||||
@@ -0,0 +1,35 @@
|
|||||||
|
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.warehouseinventoryhistory.WarehouseInventoryHistoryQuery;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryhistory.WarehouseInventoryHistoryService;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryhistory.WarehouseInventoryHistoryVo;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryDetailsRecordQuery;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryDetailsRecordVo;
|
||||||
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/8/30 9:23
|
||||||
|
*/
|
||||||
|
@Api(tags = "历史库存")
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/apiadmin/warehouseinventoryhistory")
|
||||||
|
public class WarehouseInventoryHistoryRest {
|
||||||
|
@Autowired
|
||||||
|
WarehouseInventoryHistoryService warehouseInventoryHistoryService;
|
||||||
|
|
||||||
|
@ApiOperation("分页列表")
|
||||||
|
@PostMapping("/listPage")
|
||||||
|
public ResultBean<PagerVo<WarehouseInventoryHistoryVo>> listPage(@RequestBody PagerQuery<WarehouseInventoryHistoryQuery> pq){
|
||||||
|
return warehouseInventoryHistoryService.listPage(pq);
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -144,6 +144,11 @@ public class WarehouseInventoryRecordRest {
|
|||||||
ResultBean<List<WarehouseInventoryRecordListVo>> getWarehouseInventoryRecordList(@RequestParam("sid")String sid){
|
ResultBean<List<WarehouseInventoryRecordListVo>> getWarehouseInventoryRecordList(@RequestParam("sid")String sid){
|
||||||
return warehouseInventoryRecordService.getWarehouseInventoryRecordList(sid);
|
return warehouseInventoryRecordService.getWarehouseInventoryRecordList(sid);
|
||||||
}
|
}
|
||||||
|
@ApiOperation("库存出入库记录")
|
||||||
|
@PostMapping("/getWarehouseInventoryRecord")
|
||||||
|
ResultBean<PagerVo<WarehouseInventoryRecordListVo>> getWarehouseInventoryRecord(@RequestBody PagerQuery<WarehouseInventoryRecordQuery1> pq){
|
||||||
|
return warehouseInventoryRecordService.getWarehouseInventoryRecord(pq);
|
||||||
|
}
|
||||||
|
|
||||||
@ApiOperation("出入库查询")
|
@ApiOperation("出入库查询")
|
||||||
@PostMapping("/pageList")
|
@PostMapping("/pageList")
|
||||||
|
|||||||
@@ -57,11 +57,7 @@ public class WarehouseInventoryRest {
|
|||||||
ResultBean getRackCountBySid(@RequestBody WarehouseInventoryRackCountQuery query) {
|
ResultBean getRackCountBySid(@RequestBody WarehouseInventoryRackCountQuery query) {
|
||||||
return WarehouseInventoryService.getRackCountBySid(query);
|
return WarehouseInventoryService.getRackCountBySid(query);
|
||||||
}
|
}
|
||||||
@ApiOperation("根据商品查询库存变化")
|
|
||||||
@PostMapping("/getInventoryRecordBySid")
|
|
||||||
ResultBean getInventoryRecordBySid(@RequestBody WarehouseInventoryRackCountQuery query) {
|
|
||||||
return WarehouseInventoryService.getInventoryRecordBySid(query);
|
|
||||||
}
|
|
||||||
@ApiOperation("新增")
|
@ApiOperation("新增")
|
||||||
@PostMapping("/saveWarehouseInventory")
|
@PostMapping("/saveWarehouseInventory")
|
||||||
ResultBean<String> saveWarehouseInventory(@RequestBody WarehouseInventorySaveDto dto) {
|
ResultBean<String> saveWarehouseInventory(@RequestBody WarehouseInventorySaveDto dto) {
|
||||||
|
|||||||
@@ -2,9 +2,10 @@
|
|||||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
<!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">
|
<mapper namespace="com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillMapper">
|
||||||
<select id="listPage" resultType="com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillPageVo">
|
<select id="listPage" resultType="com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillPageVo">
|
||||||
select wrb.*
|
select DISTINCT wrb.*
|
||||||
from purchase_inventory_bill wrb
|
from purchase_inventory_bill wrb
|
||||||
LEFT JOIN ss_user.sys_organization as s ON wrb.useOrgSid = s.sid
|
LEFT JOIN ss_user.sys_organization as s ON wrb.useOrgSid = s.sid
|
||||||
|
left JOIN purchase_inventory_bill_detail a ON a.sourceBillSid = wrb.sid
|
||||||
<where>
|
<where>
|
||||||
${ew.sqlSegment}
|
${ew.sqlSegment}
|
||||||
</where>
|
</where>
|
||||||
|
|||||||
@@ -127,13 +127,13 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
qw.like("wrb.waybillNumber", query.getWaybillNumber());
|
qw.like("wrb.waybillNumber", query.getWaybillNumber());
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(query.getGoodsSkuSid())) {
|
if (StringUtils.isNotBlank(query.getGoodsSkuSid())) {
|
||||||
qw.like("wrb.goodsSkuSid", query.getGoodsSkuSid());
|
qw.eq("a.goodsSkuSid", query.getGoodsSkuSid());
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(query.getSupplierName())) {
|
if (StringUtils.isNotBlank(query.getSupplierName())) {
|
||||||
qw.like("wrb.supplierName", query.getSupplierName());
|
qw.like("wrb.supplierName", query.getSupplierName());
|
||||||
}
|
}
|
||||||
if (StringUtils.isNotBlank(query.getBillType())) {
|
if (StringUtils.isNotBlank(query.getBillType())) {
|
||||||
qw.like("wrb.billType", query.getBillType());
|
qw.eq("wrb.billType", query.getBillType());
|
||||||
}
|
}
|
||||||
IPage<PurchaseInventoryBill> page = PagerUtil.queryToPage(pq);
|
IPage<PurchaseInventoryBill> page = PagerUtil.queryToPage(pq);
|
||||||
IPage<PurchaseInventoryBillPageVo> pagging = baseMapper.listPage(page, qw);
|
IPage<PurchaseInventoryBillPageVo> pagging = baseMapper.listPage(page, qw);
|
||||||
@@ -150,11 +150,11 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
c=c.add(purchaseInventoryBillDetailDto2.getCount());
|
c=c.add(purchaseInventoryBillDetailDto2.getCount());
|
||||||
total=total.add(purchaseInventoryBillDetailDto2.getTotalPrice());
|
total=total.add(purchaseInventoryBillDetailDto2.getTotalPrice());
|
||||||
}
|
}
|
||||||
PurchaseInventoryBill wmsReceiptBill = new PurchaseInventoryBill();
|
PurchaseInventoryBill purchaseInventoryBill = new PurchaseInventoryBill();
|
||||||
String sid = wmsReceiptBill.getSid();
|
String sid = purchaseInventoryBill.getSid();
|
||||||
BeanUtil.copyProperties(dto2, wmsReceiptBill, "sid");
|
BeanUtil.copyProperties(dto2, purchaseInventoryBill, "sid");
|
||||||
wmsReceiptBill.setBillState("1");
|
purchaseInventoryBill.setBillState("1");
|
||||||
wmsReceiptBill.setTotal(total);
|
purchaseInventoryBill.setTotal(total);
|
||||||
//生成单据编号
|
//生成单据编号
|
||||||
String billNo = "";
|
String billNo = "";
|
||||||
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
||||||
@@ -165,10 +165,10 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
} else {
|
} else {
|
||||||
billNo = Rule.getBillNo(billNo, 0);
|
billNo = Rule.getBillNo(billNo, 0);
|
||||||
}
|
}
|
||||||
wmsReceiptBill.setBillNo(billNo);
|
purchaseInventoryBill.setBillNo(billNo);
|
||||||
wmsReceiptBill.setTotalQuantity(c);
|
purchaseInventoryBill.setTotalQuantity(c);
|
||||||
wmsReceiptBill.setBillType("0");
|
purchaseInventoryBill.setBillType("0");
|
||||||
baseMapper.insert(wmsReceiptBill);
|
baseMapper.insert(purchaseInventoryBill);
|
||||||
List<PurchaseInventoryBillDetailDto2> list = dto2.getList();
|
List<PurchaseInventoryBillDetailDto2> list = dto2.getList();
|
||||||
list.removeAll(Collections.singleton(null));
|
list.removeAll(Collections.singleton(null));
|
||||||
if (!list.isEmpty()) {
|
if (!list.isEmpty()) {
|
||||||
@@ -295,15 +295,15 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
c=c.add(purchaseInventoryBillDetailDto2.getCount());
|
c=c.add(purchaseInventoryBillDetailDto2.getCount());
|
||||||
total=total.add(purchaseInventoryBillDetailDto2.getTotalPrice());
|
total=total.add(purchaseInventoryBillDetailDto2.getTotalPrice());
|
||||||
}
|
}
|
||||||
PurchaseInventoryBill wmsReceiptBill = new PurchaseInventoryBill();
|
PurchaseInventoryBill purchaseInventoryBill = new PurchaseInventoryBill();
|
||||||
String sid = wmsReceiptBill.getSid();
|
String sid = purchaseInventoryBill.getSid();
|
||||||
BeanUtil.copyProperties(dto, wmsReceiptBill, "sid");
|
BeanUtil.copyProperties(dto, purchaseInventoryBill, "sid");
|
||||||
wmsReceiptBill.setBillState("1");
|
purchaseInventoryBill.setBillState("1");
|
||||||
wmsReceiptBill.setBillType("1");
|
purchaseInventoryBill.setBillType("1");
|
||||||
wmsReceiptBill.setOperatorName(dto.getUserName());
|
purchaseInventoryBill.setOperatorName(dto.getUserName());
|
||||||
wmsReceiptBill.setOperatorSid(dto.getUserSid());
|
purchaseInventoryBill.setOperatorSid(dto.getUserSid());
|
||||||
wmsReceiptBill.setOperatorTime(new Date());
|
purchaseInventoryBill.setOperatorTime(new Date());
|
||||||
wmsReceiptBill.setTotal(total);
|
purchaseInventoryBill.setTotal(total);
|
||||||
//生成单据编号
|
//生成单据编号
|
||||||
String billNo = "";
|
String billNo = "";
|
||||||
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
||||||
@@ -314,13 +314,13 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
} else {
|
} else {
|
||||||
billNo = Rule.getBillNo(billNo, 0);
|
billNo = Rule.getBillNo(billNo, 0);
|
||||||
}
|
}
|
||||||
wmsReceiptBill.setBillNo(billNo);
|
purchaseInventoryBill.setBillNo(billNo);
|
||||||
wmsReceiptBill.setTotalQuantity(c);
|
purchaseInventoryBill.setTotalQuantity(c);
|
||||||
baseMapper.insert(wmsReceiptBill);
|
baseMapper.insert(purchaseInventoryBill);
|
||||||
List<PurchaseInventoryBillDetailDto2> list = dto.getList();
|
List<PurchaseInventoryBillDetailDto2> list = dto.getList();
|
||||||
list.removeAll(Collections.singleton(null));
|
list.removeAll(Collections.singleton(null));
|
||||||
for (PurchaseInventoryBillDetailDto2 dto2 : list) {
|
for (PurchaseInventoryBillDetailDto2 dto2 : list) {
|
||||||
dto2.setSourceBillSid(wmsReceiptBill.getSid());
|
dto2.setSourceBillSid(purchaseInventoryBill.getSid());
|
||||||
purchaseInventoryBillDetailService.saveOrUpdate(dto2);
|
purchaseInventoryBillDetailService.saveOrUpdate(dto2);
|
||||||
WarehouseInventory warehouseInventory=new WarehouseInventory();
|
WarehouseInventory warehouseInventory=new WarehouseInventory();
|
||||||
warehouseInventory.setBatchNumber(dto2.getBatch());
|
warehouseInventory.setBatchNumber(dto2.getBatch());
|
||||||
@@ -410,6 +410,7 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
total=total.add(purchaseInventoryBillDetailDto2.getTotalPrice());
|
total=total.add(purchaseInventoryBillDetailDto2.getTotalPrice());
|
||||||
}
|
}
|
||||||
PurchaseInventoryBill purchaseInventoryBill = new PurchaseInventoryBill();
|
PurchaseInventoryBill purchaseInventoryBill = new PurchaseInventoryBill();
|
||||||
|
BeanUtil.copyProperties(ansBill,purchaseInventoryBill,"id","sid");
|
||||||
String sid = purchaseInventoryBill.getSid();
|
String sid = purchaseInventoryBill.getSid();
|
||||||
purchaseInventoryBill.setSourceBillSid("");
|
purchaseInventoryBill.setSourceBillSid("");
|
||||||
purchaseInventoryBill.setSourceBillNo("");
|
purchaseInventoryBill.setSourceBillNo("");
|
||||||
@@ -426,19 +427,11 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
purchaseInventoryBill.setBillState("1");
|
purchaseInventoryBill.setBillState("1");
|
||||||
purchaseInventoryBill.setBillType("0");
|
purchaseInventoryBill.setBillType("0");
|
||||||
purchaseInventoryBill.setTotal(total);
|
purchaseInventoryBill.setTotal(total);
|
||||||
purchaseInventoryBill.setSupplierSid(ansBill.getSupplierSid());
|
|
||||||
purchaseInventoryBill.setSupplierName(ansBill.getSupplierName());
|
|
||||||
purchaseInventoryBill.setCarrier(ansBill.getCarrier());
|
|
||||||
purchaseInventoryBill.setWaybillNumber(ansBill.getWaybillNumber());
|
|
||||||
purchaseInventoryBill.setExternalNo(ansBill.getSourceBillNo());
|
purchaseInventoryBill.setExternalNo(ansBill.getSourceBillNo());
|
||||||
purchaseInventoryBill.setStorageTime(DateUtil.parse(dto.getStorageTime()));
|
purchaseInventoryBill.setStorageTime(DateUtil.parse(dto.getStorageTime()));
|
||||||
purchaseInventoryBill.setOperatorSid(dto.getOperatorSid());
|
purchaseInventoryBill.setOperatorSid(dto.getOperatorSid());
|
||||||
purchaseInventoryBill.setOperatorName(dto.getOperatorName());
|
purchaseInventoryBill.setOperatorName(dto.getOperatorName());
|
||||||
purchaseInventoryBill.setOperatorTime(DateUtil.parse(dto.getOperatorTime()));
|
purchaseInventoryBill.setOperatorTime(DateUtil.parse(dto.getOperatorTime()));
|
||||||
purchaseInventoryBill.setUseOrgSid(ansBill.getUseOrgSid());
|
|
||||||
purchaseInventoryBill.setCreateOrgSid(ansBill.getCreateOrgSid());
|
|
||||||
purchaseInventoryBill.setWarehouseName(ansBill.getWarehouseName());
|
|
||||||
purchaseInventoryBill.setWarehouseSid(ansBill.getWarehouseSid());
|
|
||||||
purchaseInventoryBill.setTotalQuantity(c);
|
purchaseInventoryBill.setTotalQuantity(c);
|
||||||
|
|
||||||
//生成单据编号
|
//生成单据编号
|
||||||
@@ -447,22 +440,12 @@ public class PurchaseInventoryBillService extends MybatisBaseService<PurchaseInv
|
|||||||
for (PurchaseInventoryBillDetailDto2 purchaseInventoryBillDetailDto2 : list) {
|
for (PurchaseInventoryBillDetailDto2 purchaseInventoryBillDetailDto2 : list) {
|
||||||
for (WarehouseAnsBillDetail ansBillDetail : ansBillDetails) {
|
for (WarehouseAnsBillDetail ansBillDetail : ansBillDetails) {
|
||||||
if(purchaseInventoryBillDetailDto2.getGoodsSkuSid().equals(ansBillDetail.getGoodsSkuSid())){
|
if(purchaseInventoryBillDetailDto2.getGoodsSkuSid().equals(ansBillDetail.getGoodsSkuSid())){
|
||||||
purchaseInventoryBillDetailDto2.setSourceBillSid(ansBillDetail.getSourceBillSid());
|
BeanUtil.copyProperties(ansBillDetail,purchaseInventoryBillDetailDto2,"sid","id");
|
||||||
purchaseInventoryBillDetailDto2.setIllustration(ansBillDetail.getIllustration());
|
purchaseInventoryBillDetailDto2.setGoodsSpuName("");
|
||||||
purchaseInventoryBillDetailDto2.setGoodsSpuSid(ansBillDetail.getGoodsSpuSid());
|
|
||||||
purchaseInventoryBillDetailDto2.setGoodsSpuName(ansBillDetail.getGoodsSpuSid());
|
|
||||||
purchaseInventoryBillDetailDto2.setGoodsSkuSid(ansBillDetail.getGoodsSkuSid());
|
|
||||||
purchaseInventoryBillDetailDto2.setGoodsSkuTitle(ansBillDetail.getGoodsSkuTitle());
|
|
||||||
purchaseInventoryBillDetailDto2.setGoodsSkuCode(ansBillDetail.getGoodsSkuCode());
|
|
||||||
purchaseInventoryBillDetailDto2.setSpecValue(ansBillDetail.getGoodsSkuOwnSpec());
|
purchaseInventoryBillDetailDto2.setSpecValue(ansBillDetail.getGoodsSkuOwnSpec());
|
||||||
purchaseInventoryBillDetailDto2.setOwnSpec(ansBillDetail.getGoodsSkuOwnSpec());
|
purchaseInventoryBillDetailDto2.setOwnSpec(ansBillDetail.getGoodsSkuOwnSpec());
|
||||||
purchaseInventoryBillDetailDto2.setUnit(ansBillDetail.getUnit());
|
|
||||||
purchaseInventoryBillDetailDto2.setGoodsUnitName(ansBillDetail.getUnit());
|
purchaseInventoryBillDetailDto2.setGoodsUnitName(ansBillDetail.getUnit());
|
||||||
purchaseInventoryBillDetailDto2.setPrice(ansBillDetail.getPrice());
|
|
||||||
purchaseInventoryBillDetailDto2.setCostPrice(ansBillDetail.getPrice());
|
purchaseInventoryBillDetailDto2.setCostPrice(ansBillDetail.getPrice());
|
||||||
purchaseInventoryBillDetailDto2.setTotalPrice(ansBillDetail.getTotalPrice());
|
|
||||||
purchaseInventoryBillDetailDto2.setCount(purchaseInventoryBillDetailDto2.getCount());
|
|
||||||
purchaseInventoryBillDetailDto2.setBatch(ansBillDetail.getBatch());
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -19,9 +19,11 @@ import com.yxt.warehouse.biz.warehouseansbill.WarehouseAnsBillService;
|
|||||||
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsBillDetail;
|
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsBillDetail;
|
||||||
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsBillDetailService;
|
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsBillDetailService;
|
||||||
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventory;
|
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventory;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryDto;
|
||||||
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryService;
|
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryService;
|
||||||
import com.yxt.warehouse.biz.warehouseinventorybatch.WarehouseInventoryBatch;
|
import com.yxt.warehouse.biz.warehouseinventorybatch.WarehouseInventoryBatch;
|
||||||
import com.yxt.warehouse.biz.warehouseinventorybatch.WarehouseInventoryBatchService;
|
import com.yxt.warehouse.biz.warehouseinventorybatch.WarehouseInventoryBatchService;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecordService;
|
||||||
import com.yxt.warehouse.biz.warehouserack.WarehouseRack;
|
import com.yxt.warehouse.biz.warehouserack.WarehouseRack;
|
||||||
import com.yxt.warehouse.biz.warehouserack.WarehouseRackService;
|
import com.yxt.warehouse.biz.warehouserack.WarehouseRackService;
|
||||||
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchDto2;
|
import com.yxt.warehouse.biz.warehousereceiptbilldetailbatch.WarehouseReceiptBillDetailBatchDto2;
|
||||||
@@ -57,6 +59,8 @@ public class PurchaseInventoryBillDetailService extends MybatisBaseService<Purch
|
|||||||
WarehouseRackService warehouseRackService;
|
WarehouseRackService warehouseRackService;
|
||||||
@Autowired
|
@Autowired
|
||||||
WarehouseInventoryBatchService warehouseInventoryBatchService;
|
WarehouseInventoryBatchService warehouseInventoryBatchService;
|
||||||
|
@Autowired
|
||||||
|
WarehouseInventoryRecordService warehouseInventoryRecordService;
|
||||||
|
|
||||||
// public void saveOrUpdateDetailsList2(String sid, List<PurchaseInventoryBillDetailDto2> list, List<WarehouseReceiptBillDetailBatchDto2> pcList) {
|
// public void saveOrUpdateDetailsList2(String sid, List<PurchaseInventoryBillDetailDto2> list, List<WarehouseReceiptBillDetailBatchDto2> pcList) {
|
||||||
public ResultBean<String> saveOrUpdateDetailsList2(String sid, List<PurchaseInventoryBillDetailDto2> list) {
|
public ResultBean<String> saveOrUpdateDetailsList2(String sid, List<PurchaseInventoryBillDetailDto2> list) {
|
||||||
@@ -64,49 +68,33 @@ public class PurchaseInventoryBillDetailService extends MybatisBaseService<Purch
|
|||||||
baseMapper.deleteByBillSid(sid);
|
baseMapper.deleteByBillSid(sid);
|
||||||
PurchaseInventoryBill p=purchaseInventoryBillService.getOne(new QueryWrapper<PurchaseInventoryBill>().eq("sid",sid));
|
PurchaseInventoryBill p=purchaseInventoryBillService.getOne(new QueryWrapper<PurchaseInventoryBill>().eq("sid",sid));
|
||||||
for (PurchaseInventoryBillDetailDto2 v : list) {
|
for (PurchaseInventoryBillDetailDto2 v : list) {
|
||||||
PurchaseInventoryBillDetail wmsReceiptBillDetail = new PurchaseInventoryBillDetail();
|
PurchaseInventoryBillDetail purchaseInventoryBillDetail = new PurchaseInventoryBillDetail();
|
||||||
BeanUtil.copyProperties(v, wmsReceiptBillDetail, "sid");
|
BeanUtil.copyProperties(v, purchaseInventoryBillDetail, "sid");
|
||||||
wmsReceiptBillDetail.setSourceBillSid(sid);
|
purchaseInventoryBillDetail.setSourceBillSid(sid);
|
||||||
wmsReceiptBillDetail.setSid(UUID.randomUUID().toString());
|
purchaseInventoryBillDetail.setSid(UUID.randomUUID().toString());
|
||||||
wmsReceiptBillDetail.setGoodsSkuTitle(v.getGoodsSkuTitle());
|
purchaseInventoryBillDetail.setBatchNumber(v.getBatch());
|
||||||
wmsReceiptBillDetail.setGoodsSkuCode(v.getGoodsSkuCode());
|
|
||||||
// wmsReceiptBillDetail.setSpecValue(v.getSpecValue());
|
|
||||||
wmsReceiptBillDetail.setBatchNumber(v.getBatch());
|
|
||||||
WarehouseAnsBillDetail warehouseAnsBillDetail=warehouseAnsBillDetailService
|
WarehouseAnsBillDetail warehouseAnsBillDetail=warehouseAnsBillDetailService
|
||||||
.getOne(new QueryWrapper<WarehouseAnsBillDetail>()
|
.getOne(new QueryWrapper<WarehouseAnsBillDetail>()
|
||||||
.eq("sourceBillSid",p.getSourceBillSid())
|
.eq("sourceBillSid",p.getSourceBillSid())
|
||||||
.eq("goodsSkuSid",wmsReceiptBillDetail.getGoodsSkuSid()));
|
.eq("goodsSkuSid",purchaseInventoryBillDetail.getGoodsSkuSid()));
|
||||||
if(warehouseAnsBillDetail.getActualInCount()+wmsReceiptBillDetail.getCount()>warehouseAnsBillDetail.getOrderCount()){
|
if(warehouseAnsBillDetail.getActualInCount()+purchaseInventoryBillDetail.getCount()>warehouseAnsBillDetail.getOrderCount()){
|
||||||
return rb.setMsg("入库数量大于预约数量");
|
return rb.setMsg("入库数量大于预约数量");
|
||||||
}
|
}
|
||||||
|
|
||||||
warehouseAnsBillDetail.setWaitInCount(warehouseAnsBillDetail.getWaitInCount()-wmsReceiptBillDetail.getCount());
|
warehouseAnsBillDetail.setWaitInCount(warehouseAnsBillDetail.getWaitInCount()-purchaseInventoryBillDetail.getCount());
|
||||||
warehouseAnsBillDetail.setActualInCount(warehouseAnsBillDetail.getActualInCount()+wmsReceiptBillDetail.getCount());
|
warehouseAnsBillDetail.setActualInCount(warehouseAnsBillDetail.getActualInCount()+purchaseInventoryBillDetail.getCount());
|
||||||
warehouseAnsBillDetailService.updateById(warehouseAnsBillDetail);
|
warehouseAnsBillDetailService.updateById(warehouseAnsBillDetail);
|
||||||
WarehouseInventory warehouseInventory=new WarehouseInventory();
|
WarehouseInventoryDto warehouseInventory=new WarehouseInventoryDto();
|
||||||
|
BeanUtil.copyProperties(v,warehouseInventory);
|
||||||
warehouseInventory.setBatchNumber(v.getBatch());
|
warehouseInventory.setBatchNumber(v.getBatch());
|
||||||
warehouseInventory.setGoodsSpuName("");
|
warehouseInventory.setGoodsSkuOwnSpec(v.getSpecValue());
|
||||||
warehouseInventory.setGoodsSkuSid(v.getGoodsSkuSid());
|
|
||||||
warehouseInventory.setGoodsSkuTitle(v.getGoodsSkuTitle());
|
|
||||||
warehouseInventory.setGoodsSkuCode(v.getGoodsSkuCode());
|
|
||||||
warehouseInventory.setGoodsSkuOwnSpec("");
|
|
||||||
warehouseInventory.setUnit(v.getUnit());
|
|
||||||
warehouseInventory.setCount(v.getCount());
|
|
||||||
warehouseInventory.setAllocateCount(new BigDecimal(0));
|
warehouseInventory.setAllocateCount(new BigDecimal(0));
|
||||||
warehouseInventory.setPickCount(new BigDecimal(0));
|
warehouseInventory.setPickCount(new BigDecimal(0));
|
||||||
warehouseInventory.setFreezeCount(new BigDecimal(0));
|
warehouseInventory.setFreezeCount(new BigDecimal(0));
|
||||||
warehouseInventory.setCost(v.getPrice());
|
warehouseInventory.setCost(v.getPrice());
|
||||||
warehouseInventory.setWarehouseSid(v.getWarehouseSid());
|
|
||||||
warehouseInventory.setWarehouseName(v.getWarehouseName());
|
|
||||||
warehouseInventory.setWarehouseRackSid(v.getWarehouseRackSid());
|
|
||||||
WarehouseRack warehouseRack=warehouseRackService.getOne(new QueryWrapper<WarehouseRack>().eq("sid",v.getWarehouseRackSid()));
|
WarehouseRack warehouseRack=warehouseRackService.getOne(new QueryWrapper<WarehouseRack>().eq("sid",v.getWarehouseRackSid()));
|
||||||
warehouseInventory.setWarehouseRackCode(warehouseRack.getRackCode());
|
warehouseInventory.setWarehouseRackCode(warehouseRack.getRackCode());
|
||||||
warehouseInventory.setFirstInDate(new Date());
|
warehouseInventory.setFirstInDate(new Date());
|
||||||
warehouseInventory.setUseOrgSid(p.getUseOrgSid());
|
|
||||||
warehouseInventory.setCreateOrgSid(p.getCreateOrgSid());
|
|
||||||
warehouseInventory.setGoodsSkuOwnSpec(v.getSpecValue());
|
|
||||||
warehouseInventory.setGoodsSpuName(v.getGoodsSpuName());
|
|
||||||
warehouseInventory.setGoodSpuSid(v.getGoodsSpuSid());
|
|
||||||
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
||||||
String billNo = v.getGoodsSkuCode() + date;
|
String billNo = v.getGoodsSkuCode() + date;
|
||||||
String i = warehouseInventoryService.selectNum(billNo);
|
String i = warehouseInventoryService.selectNum(billNo);
|
||||||
@@ -116,17 +104,19 @@ public class PurchaseInventoryBillDetailService extends MybatisBaseService<Purch
|
|||||||
billNo = Rule.getBillNo(billNo, 0);
|
billNo = Rule.getBillNo(billNo, 0);
|
||||||
}
|
}
|
||||||
warehouseInventory.setGoodsID(billNo);
|
warehouseInventory.setGoodsID(billNo);
|
||||||
warehouseInventoryService.save(warehouseInventory);
|
warehouseInventory.setBatch(v.getBatch());
|
||||||
WarehouseInventoryBatch batch=new WarehouseInventoryBatch();
|
warehouseInventory.setSupplierName(p.getSupplierName());
|
||||||
batch.setInventorySid(warehouseInventory.getSid());
|
warehouseInventory.setSupplierSid(p.getSupplierSid());
|
||||||
batch.setBatchNumber(v.getBatch());
|
warehouseInventory.setBillNo(p.getBillNo());
|
||||||
batch.setSupplierName(p.getSupplierName());
|
warehouseInventory.setBillSid(p.getSid());
|
||||||
batch.setSupplierSid(p.getSupplierSid());
|
warehouseInventory.setDetailSid(purchaseInventoryBillDetail.getSid());
|
||||||
batch.setBillNo(p.getBillNo());
|
warehouseInventory.setBillType("1");
|
||||||
batch.setBillSid(p.getSid());
|
warehouseInventory.setBusTypeKey("采购入库");
|
||||||
batch.setBillDetailSid(wmsReceiptBillDetail.getSid());
|
warehouseInventory.setBusTypeValue("采购入库");
|
||||||
warehouseInventoryBatchService.save(batch);
|
warehouseInventory.setSourceBillNo(p.getSid());
|
||||||
baseMapper.insert(wmsReceiptBillDetail);
|
warehouseInventory.setSourceBillSid(p.getBillNo());
|
||||||
|
warehouseInventoryService.saveInventory(warehouseInventory);
|
||||||
|
baseMapper.insert(purchaseInventoryBillDetail);
|
||||||
}
|
}
|
||||||
List<WarehouseAnsBillDetail>warehouseAnsBillDetails=warehouseAnsBillDetailService.list(new QueryWrapper<WarehouseAnsBillDetail>()
|
List<WarehouseAnsBillDetail>warehouseAnsBillDetails=warehouseAnsBillDetailService.list(new QueryWrapper<WarehouseAnsBillDetail>()
|
||||||
.eq("sourceBillSid",p.getSourceBillSid()).eq("waitInCount","0.00"));
|
.eq("sourceBillSid",p.getSourceBillSid()).eq("waitInCount","0.00"));
|
||||||
@@ -147,49 +137,32 @@ public class PurchaseInventoryBillDetailService extends MybatisBaseService<Purch
|
|||||||
baseMapper.deleteByBillSid(sid);
|
baseMapper.deleteByBillSid(sid);
|
||||||
PurchaseInventoryBill p=purchaseInventoryBillService.getOne(new QueryWrapper<PurchaseInventoryBill>().eq("sid",sid));
|
PurchaseInventoryBill p=purchaseInventoryBillService.getOne(new QueryWrapper<PurchaseInventoryBill>().eq("sid",sid));
|
||||||
for (PurchaseInventoryBillDetailDto2 v : list) {
|
for (PurchaseInventoryBillDetailDto2 v : list) {
|
||||||
PurchaseInventoryBillDetail wmsReceiptBillDetail = new PurchaseInventoryBillDetail();
|
PurchaseInventoryBillDetail purchaseInventoryBillDetail = new PurchaseInventoryBillDetail();
|
||||||
BeanUtil.copyProperties(v, wmsReceiptBillDetail, "sid");
|
BeanUtil.copyProperties(v, purchaseInventoryBillDetail, "sid","id");
|
||||||
wmsReceiptBillDetail.setSourceBillSid(sid);
|
purchaseInventoryBillDetail.setSourceBillSid(sid);
|
||||||
wmsReceiptBillDetail.setSid(UUID.randomUUID().toString());
|
purchaseInventoryBillDetail.setSid(UUID.randomUUID().toString());
|
||||||
wmsReceiptBillDetail.setGoodsSkuTitle(v.getGoodsSkuTitle());
|
purchaseInventoryBillDetail.setBatchNumber(v.getBatch());
|
||||||
wmsReceiptBillDetail.setGoodsSkuCode(v.getGoodsSkuCode());
|
|
||||||
// wmsReceiptBillDetail.setSpecValue(v.getSpecValue());
|
|
||||||
wmsReceiptBillDetail.setBatchNumber(v.getBatch());
|
|
||||||
WarehouseAnsBillDetail warehouseAnsBillDetail=warehouseAnsBillDetailService
|
WarehouseAnsBillDetail warehouseAnsBillDetail=warehouseAnsBillDetailService
|
||||||
.getOne(new QueryWrapper<WarehouseAnsBillDetail>()
|
.getOne(new QueryWrapper<WarehouseAnsBillDetail>()
|
||||||
.eq("sourceBillSid",p.getSourceBillSid())
|
.eq("sourceBillSid",p.getSourceBillSid())
|
||||||
.eq("goodsSkuSid",wmsReceiptBillDetail.getGoodsSkuSid()));
|
.eq("goodsSkuSid",purchaseInventoryBillDetail.getGoodsSkuSid()));
|
||||||
if(warehouseAnsBillDetail.getActualInCount()+wmsReceiptBillDetail.getCount()>warehouseAnsBillDetail.getOrderCount()){
|
if(warehouseAnsBillDetail.getActualInCount()+purchaseInventoryBillDetail.getCount()>warehouseAnsBillDetail.getOrderCount()){
|
||||||
return rb.setMsg("入库数量大于预约数量");
|
return rb.setMsg("入库数量大于预约数量");
|
||||||
}
|
}
|
||||||
|
warehouseAnsBillDetail.setWaitInCount(warehouseAnsBillDetail.getWaitInCount()-purchaseInventoryBillDetail.getCount());
|
||||||
warehouseAnsBillDetail.setWaitInCount(warehouseAnsBillDetail.getWaitInCount()-wmsReceiptBillDetail.getCount());
|
warehouseAnsBillDetail.setActualInCount(warehouseAnsBillDetail.getActualInCount()+purchaseInventoryBillDetail.getCount());
|
||||||
warehouseAnsBillDetail.setActualInCount(warehouseAnsBillDetail.getActualInCount()+wmsReceiptBillDetail.getCount());
|
|
||||||
warehouseAnsBillDetailService.updateById(warehouseAnsBillDetail);
|
warehouseAnsBillDetailService.updateById(warehouseAnsBillDetail);
|
||||||
WarehouseInventory warehouseInventory=new WarehouseInventory();
|
WarehouseInventoryDto warehouseInventory=new WarehouseInventoryDto();
|
||||||
|
BeanUtil.copyProperties(v,warehouseInventory);
|
||||||
warehouseInventory.setBatchNumber(v.getBatch());
|
warehouseInventory.setBatchNumber(v.getBatch());
|
||||||
warehouseInventory.setGoodsSpuName("");
|
warehouseInventory.setGoodsSkuOwnSpec(v.getSpecValue());
|
||||||
warehouseInventory.setGoodsSkuSid(v.getGoodsSkuSid());
|
|
||||||
warehouseInventory.setGoodsSkuTitle(v.getGoodsSkuTitle());
|
|
||||||
warehouseInventory.setGoodsSkuCode(v.getGoodsSkuCode());
|
|
||||||
warehouseInventory.setGoodsSkuOwnSpec("");
|
|
||||||
warehouseInventory.setUnit(v.getUnit());
|
|
||||||
warehouseInventory.setCount(v.getCount());
|
|
||||||
warehouseInventory.setAllocateCount(new BigDecimal(0));
|
warehouseInventory.setAllocateCount(new BigDecimal(0));
|
||||||
warehouseInventory.setPickCount(new BigDecimal(0));
|
warehouseInventory.setPickCount(new BigDecimal(0));
|
||||||
warehouseInventory.setFreezeCount(new BigDecimal(0));
|
warehouseInventory.setFreezeCount(new BigDecimal(0));
|
||||||
warehouseInventory.setCost(v.getPrice());
|
warehouseInventory.setCost(v.getPrice());
|
||||||
warehouseInventory.setWarehouseSid(v.getWarehouseSid());
|
|
||||||
warehouseInventory.setWarehouseName(v.getWarehouseName());
|
|
||||||
warehouseInventory.setWarehouseRackSid(v.getWarehouseRackSid());
|
|
||||||
WarehouseRack warehouseRack=warehouseRackService.getOne(new QueryWrapper<WarehouseRack>().eq("sid",v.getWarehouseRackSid()));
|
WarehouseRack warehouseRack=warehouseRackService.getOne(new QueryWrapper<WarehouseRack>().eq("sid",v.getWarehouseRackSid()));
|
||||||
warehouseInventory.setWarehouseRackCode(warehouseRack.getRackCode());
|
warehouseInventory.setWarehouseRackCode(warehouseRack.getRackCode());
|
||||||
warehouseInventory.setFirstInDate(new Date());
|
warehouseInventory.setFirstInDate(new Date());
|
||||||
warehouseInventory.setUseOrgSid(p.getUseOrgSid());
|
|
||||||
warehouseInventory.setCreateOrgSid(p.getCreateOrgSid());
|
|
||||||
warehouseInventory.setGoodsSkuOwnSpec(v.getSpecValue());
|
|
||||||
warehouseInventory.setGoodsSpuName(v.getGoodsSpuName());
|
|
||||||
warehouseInventory.setGoodSpuSid(v.getGoodsSpuSid());
|
|
||||||
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
String date = DateUtil.format(DateUtil.date(), "yyyyMMdd");
|
||||||
String billNo = v.getGoodsSkuCode() + date;
|
String billNo = v.getGoodsSkuCode() + date;
|
||||||
String i = warehouseInventoryService.selectNum(billNo);
|
String i = warehouseInventoryService.selectNum(billNo);
|
||||||
@@ -199,17 +172,19 @@ public class PurchaseInventoryBillDetailService extends MybatisBaseService<Purch
|
|||||||
billNo = Rule.getBillNo(billNo, 0);
|
billNo = Rule.getBillNo(billNo, 0);
|
||||||
}
|
}
|
||||||
warehouseInventory.setGoodsID(billNo);
|
warehouseInventory.setGoodsID(billNo);
|
||||||
warehouseInventoryService.save(warehouseInventory);
|
warehouseInventory.setBatch(v.getBatch());
|
||||||
WarehouseInventoryBatch batch=new WarehouseInventoryBatch();
|
warehouseInventory.setSupplierName(p.getSupplierName());
|
||||||
batch.setInventorySid(warehouseInventory.getSid());
|
warehouseInventory.setSupplierSid(p.getSupplierSid());
|
||||||
batch.setBatchNumber(v.getBatch());
|
warehouseInventory.setBillNo(p.getBillNo());
|
||||||
batch.setSupplierName(p.getSupplierName());
|
warehouseInventory.setBillSid(p.getSid());
|
||||||
batch.setSupplierSid(p.getSupplierSid());
|
warehouseInventory.setDetailSid(purchaseInventoryBillDetail.getSid());
|
||||||
batch.setBillNo(p.getBillNo());
|
warehouseInventory.setBillType("1");
|
||||||
batch.setBillSid(p.getSid());
|
warehouseInventory.setBusTypeKey("采购入库");
|
||||||
batch.setBillDetailSid(wmsReceiptBillDetail.getSid());
|
warehouseInventory.setBusTypeValue("采购入库");
|
||||||
warehouseInventoryBatchService.save(batch);
|
warehouseInventory.setSourceBillNo(p.getSid());
|
||||||
baseMapper.insert(wmsReceiptBillDetail);
|
warehouseInventory.setSourceBillSid(p.getBillNo());
|
||||||
|
warehouseInventoryService.saveInventory(warehouseInventory);
|
||||||
|
baseMapper.insert(purchaseInventoryBillDetail);
|
||||||
}
|
}
|
||||||
List<WarehouseAnsBillDetail>warehouseAnsBillDetails=warehouseAnsBillDetailService.list(new QueryWrapper<WarehouseAnsBillDetail>()
|
List<WarehouseAnsBillDetail>warehouseAnsBillDetails=warehouseAnsBillDetailService.list(new QueryWrapper<WarehouseAnsBillDetail>()
|
||||||
.eq("sourceBillSid",p.getSourceBillSid()).eq("waitInCount","0.00"));
|
.eq("sourceBillSid",p.getSourceBillSid()).eq("waitInCount","0.00"));
|
||||||
|
|||||||
@@ -18,6 +18,7 @@ public class WarehouseInfo extends BaseEntity {
|
|||||||
private String manager;//主管
|
private String manager;//主管
|
||||||
private String areaSid;//地区sid
|
private String areaSid;//地区sid
|
||||||
private String address;//地址
|
private String address;//地址
|
||||||
|
private String lngAndLat;//经纬度
|
||||||
private String longitude;//经度
|
private String longitude;//经度
|
||||||
private String latitude;//纬度
|
private String latitude;//纬度
|
||||||
private String warehouseTypeKey;//仓库类型Key
|
private String warehouseTypeKey;//仓库类型Key
|
||||||
|
|||||||
@@ -32,6 +32,7 @@ public class WarehouseInfoDto implements Dto {
|
|||||||
private String manager;//主管
|
private String manager;//主管
|
||||||
private String areaSid;//地区sid
|
private String areaSid;//地区sid
|
||||||
private String address;//地址
|
private String address;//地址
|
||||||
|
private String lngAndLat;//经纬度
|
||||||
private String longitude;//经度
|
private String longitude;//经度
|
||||||
private String latitude;//纬度
|
private String latitude;//纬度
|
||||||
private String warehouseTypeKey;//仓库类型Key
|
private String warehouseTypeKey;//仓库类型Key
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinfo;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/8/29 11:52
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseInfoMapQuery {
|
||||||
|
private String name;//仓库名称
|
||||||
|
@ApiModelProperty("菜单路由")
|
||||||
|
private String menuUrl;
|
||||||
|
@ApiModelProperty("组织全路径sid")
|
||||||
|
private String orgPath;
|
||||||
|
@ApiModelProperty("用户sid")
|
||||||
|
private String userSid;
|
||||||
|
private String orgLevelKey;//
|
||||||
|
private int index;//下标
|
||||||
|
}
|
||||||
@@ -82,6 +82,48 @@ public class WarehouseInfoService extends MybatisBaseService<WarehouseInfoMapper
|
|||||||
PagerVo<WarehouseInfoVo> p = PagerUtil.pageToVo(pagging, null);
|
PagerVo<WarehouseInfoVo> p = PagerUtil.pageToVo(pagging, null);
|
||||||
return rb.success().setData(p);
|
return rb.success().setData(p);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public ResultBean<List<WarehouseInfo>> listQuery(WarehouseInfoMapQuery query) {
|
||||||
|
ResultBean rb = ResultBean.fireFail();
|
||||||
|
QueryWrapper<WarehouseInfo> qw = new QueryWrapper<>();
|
||||||
|
// if (StringUtils.isNotBlank(query.getOrgLevelKey())) {
|
||||||
|
// //数据权限ID(1全部、2本部门及子部门、3本部门、4个人)
|
||||||
|
// String orgLevelKey=query.getOrgLevelKey();
|
||||||
|
// String orgSidPath=query.getOrgPath();
|
||||||
|
// int index=query.getIndex();
|
||||||
|
// if ("1".equals(orgLevelKey)) {
|
||||||
|
// orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
// qw.like("s.orgSidPath", orgSidPath);
|
||||||
|
// } else if ("2".equals(orgLevelKey)) {
|
||||||
|
// orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
// qw.like("s.orgSidPath", orgSidPath);
|
||||||
|
// } else if ("3".equals(orgLevelKey)) {
|
||||||
|
// orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
// qw.apply("s.orgSidPath like('"+orgSidPath+"')");
|
||||||
|
// } else if ("4".equals(orgLevelKey)) {
|
||||||
|
// qw.eq("a.createBySid", query.getUserSid());
|
||||||
|
// } else {
|
||||||
|
// PagerVo<WarehouseInfo> p = new PagerVo<>();
|
||||||
|
// return rb.success().setData(p);
|
||||||
|
// }
|
||||||
|
// } else {
|
||||||
|
// PagerVo<WarehouseInfo> p = new PagerVo<>();
|
||||||
|
// return rb.success().setData(p);
|
||||||
|
// }
|
||||||
|
if (org.apache.commons.lang3.StringUtils.isNotBlank(query.getName())) {
|
||||||
|
qw.like("name", query.getName());
|
||||||
|
}
|
||||||
|
List<WarehouseInfo> storeInfos = baseMapper.selectList(qw);
|
||||||
|
for (WarehouseInfo storeInfo : storeInfos) {
|
||||||
|
if(StringUtils.isNotBlank(storeInfo.getLngAndLat())){
|
||||||
|
String []w=storeInfo.getLngAndLat().split(",");
|
||||||
|
storeInfo.setLatitude(w[1]);
|
||||||
|
storeInfo.setLongitude(w[0]);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return rb.success().setData(storeInfos);
|
||||||
|
}
|
||||||
|
|
||||||
public ResultBean<List<WarehouseInfo>> listAll(OrgPathQuery query) {
|
public ResultBean<List<WarehouseInfo>> listAll(OrgPathQuery query) {
|
||||||
ResultBean rb = ResultBean.fireFail();
|
ResultBean rb = ResultBean.fireFail();
|
||||||
List<WarehouseInfoVo> pagging = baseMapper.listAll(query.getOrgPath());
|
List<WarehouseInfoVo> pagging = baseMapper.listAll(query.getOrgPath());
|
||||||
@@ -91,18 +133,18 @@ public class WarehouseInfoService extends MybatisBaseService<WarehouseInfoMapper
|
|||||||
public ResultBean<String> saveOrUpdate(WarehouseInfoDto dto) {
|
public ResultBean<String> saveOrUpdate(WarehouseInfoDto dto) {
|
||||||
ResultBean rb = ResultBean.fireFail();
|
ResultBean rb = ResultBean.fireFail();
|
||||||
String sid = "";
|
String sid = "";
|
||||||
if(StringUtils.isBlank(dto.getTelephone())){
|
|
||||||
|
|
||||||
}
|
|
||||||
if (StringUtils.isNotBlank(dto.getSid())) {
|
if (StringUtils.isNotBlank(dto.getSid())) {
|
||||||
sid = dto.getSid();
|
sid = dto.getSid();
|
||||||
WarehouseInfo wmsWarehouse = fetchBySid(dto.getSid());
|
WarehouseInfo wmsWarehouse = fetchBySid(dto.getSid());
|
||||||
BeanUtil.copyProperties(dto, wmsWarehouse, "id", "sid");
|
BeanUtil.copyProperties(dto, wmsWarehouse, "id", "sid");
|
||||||
wmsWarehouse.setModifyTime(new Date());
|
wmsWarehouse.setModifyTime(new Date());
|
||||||
|
if(StringUtils.isNotBlank(dto.getLngAndLat())){
|
||||||
|
String []w=dto.getLngAndLat().split(",");
|
||||||
|
wmsWarehouse.setLatitude(w[1]);
|
||||||
|
wmsWarehouse.setLongitude(w[0]);
|
||||||
|
}
|
||||||
baseMapper.updateById(wmsWarehouse);
|
baseMapper.updateById(wmsWarehouse);
|
||||||
// for (WmsWarehouseExtendDto wmsWarehouseExtendDto : dto.getWmsWarehouseExtendDtos()) {
|
|
||||||
// wmsWarehouseExtendDto.setWarehouseSid(wmsWarehouse.getSid());
|
|
||||||
// }
|
|
||||||
if(dto.getWmsWarehouseExtendDto()!=null){
|
if(dto.getWmsWarehouseExtendDto()!=null){
|
||||||
dto.getWmsWarehouseExtendDto().setWarehouseSid(wmsWarehouse.getSid());
|
dto.getWmsWarehouseExtendDto().setWarehouseSid(wmsWarehouse.getSid());
|
||||||
wmsWarehouseExtendService.saveOrUpdate(dto.getWmsWarehouseExtendDto());
|
wmsWarehouseExtendService.saveOrUpdate(dto.getWmsWarehouseExtendDto());
|
||||||
@@ -113,10 +155,12 @@ public class WarehouseInfoService extends MybatisBaseService<WarehouseInfoMapper
|
|||||||
BeanUtil.copyProperties(dto, wmsWarehouse, "id", "sid");
|
BeanUtil.copyProperties(dto, wmsWarehouse, "id", "sid");
|
||||||
wmsWarehouse.setCreateTime(new DateTime());
|
wmsWarehouse.setCreateTime(new DateTime());
|
||||||
wmsWarehouse.setCreateBySid(dto.getUserSid());
|
wmsWarehouse.setCreateBySid(dto.getUserSid());
|
||||||
|
if(StringUtils.isNotBlank(dto.getLngAndLat())){
|
||||||
|
String []w=dto.getLngAndLat().split(",");
|
||||||
|
wmsWarehouse.setLatitude(w[1]);
|
||||||
|
wmsWarehouse.setLongitude(w[0]);
|
||||||
|
}
|
||||||
baseMapper.insert(wmsWarehouse);
|
baseMapper.insert(wmsWarehouse);
|
||||||
// for (WmsWarehouseExtendDto wmsWarehouseExtendDto : dto.getWmsWarehouseExtendDtos()) {
|
|
||||||
// wmsWarehouseExtendDto.setWarehouseSid(wmsWarehouse.getSid());
|
|
||||||
// }
|
|
||||||
if(dto.getWmsWarehouseExtendDto()!=null){
|
if(dto.getWmsWarehouseExtendDto()!=null){
|
||||||
dto.getWmsWarehouseExtendDto().setWarehouseSid(wmsWarehouse.getSid());
|
dto.getWmsWarehouseExtendDto().setWarehouseSid(wmsWarehouse.getSid());
|
||||||
wmsWarehouseExtendService.saveOrUpdate(dto.getWmsWarehouseExtendDto());
|
wmsWarehouseExtendService.saveOrUpdate(dto.getWmsWarehouseExtendDto());
|
||||||
|
|||||||
@@ -33,6 +33,7 @@ public class WarehouseInfoVo implements Vo {
|
|||||||
private String manager;//主管
|
private String manager;//主管
|
||||||
private String areaSid;//地区sid
|
private String areaSid;//地区sid
|
||||||
private String address;//地址
|
private String address;//地址
|
||||||
|
private String lngAndLat;//经纬度
|
||||||
private String longitude;//经度
|
private String longitude;//经度
|
||||||
private String latitude;//纬度
|
private String latitude;//纬度
|
||||||
private String warehouseTypeKey;//仓库类型Key
|
private String warehouseTypeKey;//仓库类型Key
|
||||||
|
|||||||
@@ -2,8 +2,10 @@ package com.yxt.warehouse.biz.warehouseinventory;
|
|||||||
|
|
||||||
import com.fasterxml.jackson.annotation.JsonFormat;
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
import com.yxt.common.core.dto.Dto;
|
import com.yxt.common.core.dto.Dto;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.Date;
|
import java.util.Date;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -12,37 +14,68 @@ import java.util.Date;
|
|||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
public class WarehouseInventoryDto implements Dto {
|
public class WarehouseInventoryDto implements Dto {
|
||||||
private String id;
|
|
||||||
private String sid;
|
private String sid;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
@ApiModelProperty("批次号")
|
||||||
private Date createTime;
|
private String batchNumber;
|
||||||
private String remarks;
|
@ApiModelProperty("厂家")
|
||||||
private String isEnable;
|
private String manufacturerSid;
|
||||||
private String goodsID;//商品ID(唯一编码,入库时生成)
|
@ApiModelProperty("厂家")
|
||||||
private String goodsSid;//商品sid
|
private String manufacturerName;
|
||||||
private String billSid;//入库单sid
|
@ApiModelProperty("商品ID(唯一编码,入库时生成,生成规则为商品编码+YYMMdd+4位流水)")
|
||||||
private String billDetailSid;//入库单明细sid
|
private String goodsID;
|
||||||
private String price1;//销售价格1
|
@ApiModelProperty("商品基础信息sid")
|
||||||
private String price2;//销售价格2
|
|
||||||
private String price3;//销售价格3
|
|
||||||
private String price4;//销售价格4
|
|
||||||
private String price5;//销售价格5
|
|
||||||
private String unit;//计量单位
|
|
||||||
private String count;//库存数量
|
|
||||||
private String minimumPrice;//销售底价
|
|
||||||
private String freePrice;//三包价格
|
|
||||||
private String firstMaintainPrice;//首保价格
|
|
||||||
private String warehouseSid;//仓库sid
|
|
||||||
private String warehouseName;//仓库名称
|
|
||||||
private String warehouseArea;//货位
|
|
||||||
private String isShowDiscount;//是否显示折扣标志
|
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
|
||||||
private Date firstInDate;//首次入库日期-计算库龄的依据
|
|
||||||
private String lockCount;//锁定数量,计算字段,出库申请通过,但未实际出库
|
|
||||||
private String sortNo;//排序
|
|
||||||
private String useOrgSid;//使用组织sid
|
|
||||||
private String createOrgSid;//创建组织sid
|
|
||||||
|
|
||||||
private String goodSpuSid;
|
private String goodSpuSid;
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
private String goodsSpuName;
|
||||||
|
@ApiModelProperty("商品Skusid")
|
||||||
private String goodsSkuSid;
|
private String goodsSkuSid;
|
||||||
|
@ApiModelProperty("商品Sku名称")
|
||||||
|
private String goodsSkuTitle;
|
||||||
|
@ApiModelProperty("商品编码(图号)")
|
||||||
|
private String goodsSkuCode;
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
private String goodsSkuOwnSpec;
|
||||||
|
@ApiModelProperty("计量单位")
|
||||||
|
private String unit;
|
||||||
|
@ApiModelProperty("现有量")
|
||||||
|
private BigDecimal count;
|
||||||
|
@ApiModelProperty("分配量(锁定数量,出库申请通过,但未实际出库)")
|
||||||
|
private BigDecimal allocateCount;
|
||||||
|
@ApiModelProperty("拣货量")
|
||||||
|
private BigDecimal pickCount;
|
||||||
|
@ApiModelProperty("冻结量")
|
||||||
|
private BigDecimal freezeCount;
|
||||||
|
@ApiModelProperty("入库单价")
|
||||||
|
private BigDecimal cost;
|
||||||
|
@ApiModelProperty("税率")
|
||||||
|
private BigDecimal taxRate;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库sid")
|
||||||
|
private String warehouseSid;
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
@ApiModelProperty("库位sid")
|
||||||
|
private String warehouseRackSid;
|
||||||
|
@ApiModelProperty("库位编码")
|
||||||
|
private String warehouseRackCode;
|
||||||
|
@ApiModelProperty("首次入库日期-计算库龄的依据")
|
||||||
|
private Date firstInDate;
|
||||||
|
@ApiModelProperty("创建组织sid")
|
||||||
|
private String createOrgSid;
|
||||||
|
@ApiModelProperty("使用组织sid")
|
||||||
|
private String useOrgSid;
|
||||||
|
private String batch;
|
||||||
|
private String supplierName;
|
||||||
|
private String supplierSid;
|
||||||
|
private String billNo;
|
||||||
|
private String billSid;
|
||||||
|
private String detailSid;
|
||||||
|
private String userName;
|
||||||
|
private String userSid;
|
||||||
|
private String billType;
|
||||||
|
private String busTypeKey; // 业务类型key(采购入库、维修出入库、销售出入库等)
|
||||||
|
private String busTypeValue;
|
||||||
|
private String sourceBillSid;
|
||||||
|
private String sourceBillNo;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|||||||
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
import com.baomidou.mybatisplus.core.toolkit.Constants;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryhistory.WarehouseInventoryHistory;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
@@ -18,8 +19,8 @@ public interface WarehouseInventoryMapper extends BaseMapper<WarehouseInventory>
|
|||||||
|
|
||||||
IPage<WarehouseInventoryVo> listPage(IPage<WarehouseInventory> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventory> qw);
|
IPage<WarehouseInventoryVo> listPage(IPage<WarehouseInventory> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventory> qw);
|
||||||
List<WarehouseInventoryVo> getListBySpuSid(@Param("spuSid")String spuSid);
|
List<WarehouseInventoryVo> getListBySpuSid(@Param("spuSid")String spuSid);
|
||||||
List<WarehouseInventoryVo> getRackCountBySid(@Param("sid")String sid,@Param("orgSid") String orgSid);
|
List<WarehouseInventoryRackVo> getRackCountBySid(@Param("sid")String sid,@Param("orgSid") String orgSid);
|
||||||
List<WarehouseInventoryVo> getRackCountBySid1(@Param("sid")String sid,@Param("orgSid") String orgSid);
|
List<WarehouseInventoryRackVo> getRackCountBySid1(@Param("sid")String sid,@Param("orgSid") String orgSid);
|
||||||
|
|
||||||
WarehouseInventoryVo initialization(@Param("sid") String sid);
|
WarehouseInventoryVo initialization(@Param("sid") String sid);
|
||||||
|
|
||||||
@@ -60,5 +61,6 @@ public interface WarehouseInventoryMapper extends BaseMapper<WarehouseInventory>
|
|||||||
GoodsCountVo selCountsBySkuSid(@Param("skuSid") String skuSid);
|
GoodsCountVo selCountsBySkuSid(@Param("skuSid") String skuSid);
|
||||||
List<AvailableCountVo> selAvailableBySkuSid(@Param("skuSid") String skuSid,@Param("orgSid") String orgSid);
|
List<AvailableCountVo> selAvailableBySkuSid(@Param("skuSid") String skuSid,@Param("orgSid") String orgSid);
|
||||||
String selectNum(String billNo);
|
String selectNum(String billNo);
|
||||||
|
List<WarehouseInventoryHistory> totalInventoryByOrgSid(@Param("orgSid") String orgSid);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -358,7 +358,7 @@
|
|||||||
a.goodsSkuSid = #{skuSid} and
|
a.goodsSkuSid = #{skuSid} and
|
||||||
a.useOrgSid=#{orgSid}
|
a.useOrgSid=#{orgSid}
|
||||||
</select>
|
</select>
|
||||||
<select id="getRackCountBySid" resultType="com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryVo">
|
<select id="getRackCountBySid" resultType="com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryRackVo">
|
||||||
SELECT
|
SELECT
|
||||||
b.rackName,
|
b.rackName,
|
||||||
b.rackCode,
|
b.rackCode,
|
||||||
@@ -374,7 +374,7 @@
|
|||||||
a.goodsSpuSid = #{sid} and
|
a.goodsSpuSid = #{sid} and
|
||||||
a.useOrgSid=#{orgSid}
|
a.useOrgSid=#{orgSid}
|
||||||
</select>
|
</select>
|
||||||
<select id="getRackCountBySid1" resultType="com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryVo">
|
<select id="getRackCountBySid1" resultType="com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryRackVo">
|
||||||
SELECT
|
SELECT
|
||||||
b.rackName,
|
b.rackName,
|
||||||
b.rackCode,
|
b.rackCode,
|
||||||
@@ -391,10 +391,39 @@
|
|||||||
a.useOrgSid=#{orgSid}
|
a.useOrgSid=#{orgSid}
|
||||||
</select>
|
</select>
|
||||||
<select id="selectNum" resultType="java.lang.String">
|
<select id="selectNum" resultType="java.lang.String">
|
||||||
select RIGHT (billNo, 4)
|
select RIGHT (goodsID, 4)
|
||||||
from purchase_inventory_bill_detail
|
from warehouse_inventory
|
||||||
where billNo LIKE concat(#{billNo}, '%')
|
where goodsID LIKE concat(#{billNo}, '%')
|
||||||
order by billNo desc
|
order by goodsID desc
|
||||||
limit 1
|
limit 1
|
||||||
</select>
|
</select>
|
||||||
|
<select id="totalInventoryByOrgSid"
|
||||||
|
resultType="com.yxt.warehouse.biz.warehouseinventoryhistory.WarehouseInventoryHistory">
|
||||||
|
SELECT
|
||||||
|
batchNumber,
|
||||||
|
manufacturerSid,
|
||||||
|
manufacturerName,
|
||||||
|
goodsID,
|
||||||
|
goodsTypeSid,
|
||||||
|
goodsTypeName,
|
||||||
|
goodsBrandSid,
|
||||||
|
goodsBrandName,
|
||||||
|
goodSpuSid,
|
||||||
|
goodsSpuName,
|
||||||
|
goodsSkuSid,
|
||||||
|
goodsSkuTitle,
|
||||||
|
goodsSkuCode,
|
||||||
|
goodsSkuOwnSpec,
|
||||||
|
unit,
|
||||||
|
count,
|
||||||
|
warehouseSid,
|
||||||
|
warehouseName,
|
||||||
|
warehouseRackSid,
|
||||||
|
warehouseRackCode,
|
||||||
|
createOrgSid,
|
||||||
|
useOrgSid
|
||||||
|
FROM
|
||||||
|
warehouse_inventory
|
||||||
|
WHERE useOrgSid=#{orgSid}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
@@ -0,0 +1,21 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventory;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/8/28 14:47
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseInventoryRackVo {
|
||||||
|
|
||||||
|
private String rackName;
|
||||||
|
private String rackCode;
|
||||||
|
private BigDecimal useCount;
|
||||||
|
private BigDecimal count;
|
||||||
|
private BigDecimal allocateCount;
|
||||||
|
private BigDecimal freezeCount;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -14,6 +14,10 @@ import com.yxt.warehouse.biz.purchaseinventorybill.PurchaseInventoryBillPageVo;
|
|||||||
import com.yxt.warehouse.biz.warehouseansbill.WarehouseAnsBillService;
|
import com.yxt.warehouse.biz.warehouseansbill.WarehouseAnsBillService;
|
||||||
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsBillDetailService;
|
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsBillDetailService;
|
||||||
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsListDetailsVo;
|
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsListDetailsVo;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventorybatch.WarehouseInventoryBatch;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventorybatch.WarehouseInventoryBatchService;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryhistory.WarehouseInventoryHistory;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecordDto;
|
||||||
import com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecordService;
|
import com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecordService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
@@ -32,34 +36,36 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
|
|||||||
WarehouseAnsBillDetailService warehouseAnsBillDetailService;
|
WarehouseAnsBillDetailService warehouseAnsBillDetailService;
|
||||||
@Autowired
|
@Autowired
|
||||||
WarehouseInventoryRecordService warehouseInventoryRecordService;
|
WarehouseInventoryRecordService warehouseInventoryRecordService;
|
||||||
|
@Autowired
|
||||||
|
WarehouseInventoryBatchService warehouseInventoryBatchService;
|
||||||
public ResultBean<PagerVo<WarehouseInventoryVo>> listPage(PagerQuery<WarehouseInventoryQuery> pq) {
|
public ResultBean<PagerVo<WarehouseInventoryVo>> listPage(PagerQuery<WarehouseInventoryQuery> pq) {
|
||||||
ResultBean rb =new ResultBean().fail();
|
ResultBean rb =new ResultBean().fail();
|
||||||
WarehouseInventoryQuery query = pq.getParams();
|
WarehouseInventoryQuery query = pq.getParams();
|
||||||
QueryWrapper<WarehouseInventory> qw = new QueryWrapper<>();
|
QueryWrapper<WarehouseInventory> qw = new QueryWrapper<>();
|
||||||
// if (StringUtils.isNotBlank(query.getOrgLevelKey())) {
|
if (StringUtils.isNotBlank(query.getOrgLevelKey())) {
|
||||||
// //数据权限ID(1全部、2本部门及子部门、3本部门、4个人)
|
//数据权限ID(1全部、2本部门及子部门、3本部门、4个人)
|
||||||
// String orgLevelKey=query.getOrgLevelKey();
|
String orgLevelKey=query.getOrgLevelKey();
|
||||||
// String orgSidPath=query.getOrgPath();
|
String orgSidPath=query.getOrgPath();
|
||||||
// int index=query.getIndex();
|
int index=query.getIndex();
|
||||||
// if ("1".equals(orgLevelKey)) {
|
if ("1".equals(orgLevelKey)) {
|
||||||
// orgSidPath = orgSidPath.substring(0, index);
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
// qw.like("s.orgSidPath", orgSidPath);
|
qw.like("s.orgSidPath", orgSidPath);
|
||||||
// } else if ("2".equals(orgLevelKey)) {
|
} else if ("2".equals(orgLevelKey)) {
|
||||||
// orgSidPath = orgSidPath.substring(0, index);
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
// qw.like("s.orgSidPath", orgSidPath);
|
qw.like("s.orgSidPath", orgSidPath);
|
||||||
// } else if ("3".equals(orgLevelKey)) {
|
} else if ("3".equals(orgLevelKey)) {
|
||||||
// orgSidPath = orgSidPath.substring(0, index);
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
// qw.apply("s.orgSidPath like('"+orgSidPath+"')");
|
qw.apply("s.orgSidPath like('"+orgSidPath+"')");
|
||||||
// } else if ("4".equals(orgLevelKey)) {
|
} else if ("4".equals(orgLevelKey)) {
|
||||||
// qw.eq("wab.createBySid", query.getUserSid());
|
qw.eq("wab.createBySid", query.getUserSid());
|
||||||
// } else {
|
} else {
|
||||||
// PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
||||||
// return rb.success().setData(p);
|
return rb.success().setData(p);
|
||||||
// }
|
}
|
||||||
// } else {
|
} else {
|
||||||
// PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
||||||
// return rb.success().setData(p);
|
return rb.success().setData(p);
|
||||||
// }
|
}
|
||||||
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
|
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
|
||||||
qw.like("a.warehouseNameSid", query.getWarehouseSid());
|
qw.like("a.warehouseNameSid", query.getWarehouseSid());
|
||||||
}
|
}
|
||||||
@@ -112,30 +118,30 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
|
|||||||
ResultBean rb =new ResultBean().fail();
|
ResultBean rb =new ResultBean().fail();
|
||||||
WarehouseInventoryQuery query = pq.getParams();
|
WarehouseInventoryQuery query = pq.getParams();
|
||||||
QueryWrapper<WarehouseInventory> qw = new QueryWrapper<>();
|
QueryWrapper<WarehouseInventory> qw = new QueryWrapper<>();
|
||||||
// if (StringUtils.isNotBlank(query.getOrgLevelKey())) {
|
if (StringUtils.isNotBlank(query.getOrgLevelKey())) {
|
||||||
// //数据权限ID(1全部、2本部门及子部门、3本部门、4个人)
|
//数据权限ID(1全部、2本部门及子部门、3本部门、4个人)
|
||||||
// String orgLevelKey=query.getOrgLevelKey();
|
String orgLevelKey=query.getOrgLevelKey();
|
||||||
// String orgSidPath=query.getOrgPath();
|
String orgSidPath=query.getOrgPath();
|
||||||
// int index=query.getIndex();
|
int index=query.getIndex();
|
||||||
// if ("1".equals(orgLevelKey)) {
|
if ("1".equals(orgLevelKey)) {
|
||||||
// orgSidPath = orgSidPath.substring(0, index);
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
// qw.like("s.orgSidPath", orgSidPath);
|
qw.like("s.orgSidPath", orgSidPath);
|
||||||
// } else if ("2".equals(orgLevelKey)) {
|
} else if ("2".equals(orgLevelKey)) {
|
||||||
// orgSidPath = orgSidPath.substring(0, index);
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
// qw.like("s.orgSidPath", orgSidPath);
|
qw.like("s.orgSidPath", orgSidPath);
|
||||||
// } else if ("3".equals(orgLevelKey)) {
|
} else if ("3".equals(orgLevelKey)) {
|
||||||
// orgSidPath = orgSidPath.substring(0, index);
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
// qw.apply("s.orgSidPath like('"+orgSidPath+"')");
|
qw.apply("s.orgSidPath like('"+orgSidPath+"')");
|
||||||
// } else if ("4".equals(orgLevelKey)) {
|
} else if ("4".equals(orgLevelKey)) {
|
||||||
// qw.eq("wab.createBySid", query.getUserSid());
|
qw.eq("wab.createBySid", query.getUserSid());
|
||||||
// } else {
|
} else {
|
||||||
// PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
||||||
// return rb.success().setData(p);
|
return rb.success().setData(p);
|
||||||
// }
|
}
|
||||||
// } else {
|
} else {
|
||||||
// PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
||||||
// return rb.success().setData(p);
|
return rb.success().setData(p);
|
||||||
// }
|
}
|
||||||
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
|
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
|
||||||
qw.like("a.warehouseNameSid", query.getWarehouseSid());
|
qw.like("a.warehouseNameSid", query.getWarehouseSid());
|
||||||
}
|
}
|
||||||
@@ -170,23 +176,35 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
/**
|
public ResultBean<String> saveInventory(WarehouseInventoryDto dto) {
|
||||||
* 入库
|
|
||||||
*
|
|
||||||
* @param dto
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
public ResultBean<WarehouseInventory> warehousing(WarehouseInventoryDto dto) {
|
|
||||||
ResultBean rb = ResultBean.fireFail();
|
ResultBean rb = ResultBean.fireFail();
|
||||||
WarehouseInventory WarehouseInventory = baseMapper.selectOne(new QueryWrapper<WarehouseInventory>().eq("goodsSid", dto.getGoodsSid()).eq("warehouseSid", dto.getWarehouseSid()));
|
WarehouseInventory warehouseInventory=new WarehouseInventory();
|
||||||
if (null == WarehouseInventory) {
|
BeanUtil.copyProperties(dto,warehouseInventory);
|
||||||
WarehouseInventory Warehouse = new WarehouseInventory();
|
baseMapper.insert(warehouseInventory);
|
||||||
BeanUtil.copyProperties(dto, Warehouse, "sid", "id");
|
|
||||||
Warehouse.setFirstInDate(new Date());
|
WarehouseInventoryRecordDto recordDto=new WarehouseInventoryRecordDto();
|
||||||
baseMapper.insert(Warehouse);
|
BeanUtil.copyProperties(dto,recordDto);
|
||||||
return rb.success().setData(Warehouse);
|
recordDto.setInventorySid(warehouseInventory.getSid());
|
||||||
}
|
recordDto.setBillType(dto.getBillType());
|
||||||
return rb.success().setData(WarehouseInventory);
|
recordDto.setBusTypeKey(dto.getBusTypeKey());
|
||||||
|
recordDto.setBusTypeValue(dto.getBusTypeValue());
|
||||||
|
recordDto.setBillObjSid(dto.getSupplierSid());
|
||||||
|
recordDto.setBillObjName(dto.getSupplierSid());
|
||||||
|
recordDto.setCurrentCount(dto.getCount());
|
||||||
|
recordDto.setOperator(dto.getUserName());
|
||||||
|
recordDto.setOperatorSid(dto.getUserSid());
|
||||||
|
warehouseInventoryRecordService.saveRecord(recordDto);
|
||||||
|
|
||||||
|
WarehouseInventoryBatch batch=new WarehouseInventoryBatch();
|
||||||
|
batch.setInventorySid(warehouseInventory.getSid());
|
||||||
|
batch.setBatchNumber(dto.getBatch());
|
||||||
|
batch.setSupplierName(dto.getSupplierName());
|
||||||
|
batch.setSupplierSid(dto.getSupplierSid());
|
||||||
|
batch.setBillNo(dto.getBillNo());
|
||||||
|
batch.setBillSid(dto.getBillSid());
|
||||||
|
batch.setBillDetailSid(dto.getDetailSid());
|
||||||
|
warehouseInventoryBatchService.save(batch);
|
||||||
|
return rb.success().setData("");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -236,7 +254,7 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
|
|||||||
|
|
||||||
public ResultBean getRackCountBySid(WarehouseInventoryRackCountQuery query) {
|
public ResultBean getRackCountBySid(WarehouseInventoryRackCountQuery query) {
|
||||||
ResultBean rb = ResultBean.fireFail();
|
ResultBean rb = ResultBean.fireFail();
|
||||||
List<WarehouseInventoryVo> warehouseInventoryVos=new ArrayList<>();
|
List<WarehouseInventoryRackVo> warehouseInventoryVos=new ArrayList<>();
|
||||||
if (query.getType().equals("1")){
|
if (query.getType().equals("1")){
|
||||||
warehouseInventoryVos=baseMapper.getRackCountBySid(query.getSid(),query.getOrgSid());
|
warehouseInventoryVos=baseMapper.getRackCountBySid(query.getSid(),query.getOrgSid());
|
||||||
}else if(query.getType().equals("2")){
|
}else if(query.getType().equals("2")){
|
||||||
@@ -244,16 +262,7 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
|
|||||||
}
|
}
|
||||||
return rb.success().setData(warehouseInventoryVos);
|
return rb.success().setData(warehouseInventoryVos);
|
||||||
}
|
}
|
||||||
public ResultBean getInventoryRecordBySid(WarehouseInventoryRackCountQuery query) {
|
|
||||||
ResultBean rb = ResultBean.fireFail();
|
|
||||||
List<WarehouseInventoryVo> warehouseInventoryVos=new ArrayList<>();
|
|
||||||
if (query.getType().equals("1")){
|
|
||||||
// warehouseInventoryVos=warehouseInventoryRecordService.getRackCountBySid(query.getSid(),query.getOrgSid());
|
|
||||||
}else if(query.getType().equals("2")){
|
|
||||||
// warehouseInventoryVos=baseMapper.getRackCountBySid1(query.getSid(),query.getOrgSid());
|
|
||||||
}
|
|
||||||
return rb.success().setData(warehouseInventoryVos);
|
|
||||||
}
|
|
||||||
|
|
||||||
public ResultBean delAllBySids(String[] sids) {
|
public ResultBean delAllBySids(String[] sids) {
|
||||||
ResultBean rb = ResultBean.fireFail();
|
ResultBean rb = ResultBean.fireFail();
|
||||||
@@ -571,4 +580,9 @@ public class WarehouseInventoryService extends MybatisBaseService<WarehouseInven
|
|||||||
public String selectNum(String billNo){
|
public String selectNum(String billNo){
|
||||||
return baseMapper.selectNum(billNo);
|
return baseMapper.selectNum(billNo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<WarehouseInventoryHistory> totalInventoryByOrgSid(String orgSid){
|
||||||
|
List<WarehouseInventoryHistory> vo=baseMapper.totalInventoryByOrgSid(orgSid);
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -49,7 +49,7 @@ import java.util.Date;
|
|||||||
*/
|
*/
|
||||||
@Data
|
@Data
|
||||||
@ApiModel(value = "商品库存-批次属性", description = "商品库存-批次属性")
|
@ApiModel(value = "商品库存-批次属性", description = "商品库存-批次属性")
|
||||||
@TableName("wms_inventory_batch")
|
@TableName("warehouse_inventory_batch")
|
||||||
public class WarehouseInventoryBatch extends BaseEntity {
|
public class WarehouseInventoryBatch extends BaseEntity {
|
||||||
private static final long serialVersionUID = 1L;
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,65 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryhistory;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.yxt.common.core.domain.BaseEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/2/28 8:38
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("warehouse_inventory")
|
||||||
|
public class WarehouseInventoryHistory extends BaseEntity {
|
||||||
|
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
@ApiModelProperty("厂家")
|
||||||
|
private String manufacturerSid;
|
||||||
|
@ApiModelProperty("厂家")
|
||||||
|
private String manufacturerName;
|
||||||
|
@ApiModelProperty("商品ID(唯一编码,入库时生成,生成规则为商品编码+YYMMdd+4位流水)")
|
||||||
|
private String goodsID;
|
||||||
|
@ApiModelProperty("分类sid")
|
||||||
|
private String goodsTypeSid;
|
||||||
|
@ApiModelProperty("分类名")
|
||||||
|
private String goodsTypeName;
|
||||||
|
@ApiModelProperty("品牌sid")
|
||||||
|
private String goodsBrandSid;
|
||||||
|
@ApiModelProperty("品牌名")
|
||||||
|
private String goodsBrandName;
|
||||||
|
@ApiModelProperty("商品基础信息sid")
|
||||||
|
private String goodSpuSid;
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
private String goodsSpuName;
|
||||||
|
@ApiModelProperty("商品Skusid")
|
||||||
|
private String goodsSkuSid;
|
||||||
|
@ApiModelProperty("商品Sku名称")
|
||||||
|
private String goodsSkuTitle;
|
||||||
|
@ApiModelProperty("商品编码(图号)")
|
||||||
|
private String goodsSkuCode;
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
private String goodsSkuOwnSpec;
|
||||||
|
@ApiModelProperty("计量单位")
|
||||||
|
private String unit;
|
||||||
|
@ApiModelProperty("现有量")
|
||||||
|
private BigDecimal count;
|
||||||
|
@ApiModelProperty("仓库sid")
|
||||||
|
private String warehouseSid;
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
@ApiModelProperty("库位sid")
|
||||||
|
private String warehouseRackSid;
|
||||||
|
@ApiModelProperty("库位编码")
|
||||||
|
private String warehouseRackCode;
|
||||||
|
@ApiModelProperty("创建组织sid")
|
||||||
|
private String createOrgSid;
|
||||||
|
@ApiModelProperty("使用组织sid")
|
||||||
|
private String useOrgSid;
|
||||||
|
private Date orderDate;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryhistory;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.yxt.common.core.dto.Dto;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/2/26 13:38
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseInventoryHistoryDto implements Dto {
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
@ApiModelProperty("厂家")
|
||||||
|
private String manufacturerSid;
|
||||||
|
@ApiModelProperty("厂家")
|
||||||
|
private String manufacturerName;
|
||||||
|
@ApiModelProperty("商品ID(唯一编码,入库时生成,生成规则为商品编码+YYMMdd+4位流水)")
|
||||||
|
private String goodsID;
|
||||||
|
@ApiModelProperty("分类sid")
|
||||||
|
private String goodsTypeSid;
|
||||||
|
@ApiModelProperty("分类名")
|
||||||
|
private String goodsTypeName;
|
||||||
|
@ApiModelProperty("品牌sid")
|
||||||
|
private String goodsBrandSid;
|
||||||
|
@ApiModelProperty("品牌名")
|
||||||
|
private String goodsBrandName;
|
||||||
|
@ApiModelProperty("商品基础信息sid")
|
||||||
|
private String goodSpuSid;
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
private String goodsSpuName;
|
||||||
|
@ApiModelProperty("商品Skusid")
|
||||||
|
private String goodsSkuSid;
|
||||||
|
@ApiModelProperty("商品Sku名称")
|
||||||
|
private String goodsSkuTitle;
|
||||||
|
@ApiModelProperty("商品编码(图号)")
|
||||||
|
private String goodsSkuCode;
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
private String goodsSkuOwnSpec;
|
||||||
|
@ApiModelProperty("计量单位")
|
||||||
|
private String unit;
|
||||||
|
@ApiModelProperty("现有量")
|
||||||
|
private BigDecimal count;
|
||||||
|
@ApiModelProperty("仓库sid")
|
||||||
|
private String warehouseSid;
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
@ApiModelProperty("库位sid")
|
||||||
|
private String warehouseRackSid;
|
||||||
|
@ApiModelProperty("库位编码")
|
||||||
|
private String warehouseRackCode;
|
||||||
|
@ApiModelProperty("创建组织sid")
|
||||||
|
private String createOrgSid;
|
||||||
|
@ApiModelProperty("使用组织sid")
|
||||||
|
private String useOrgSid;
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryhistory;
|
||||||
|
|
||||||
|
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.warehouse.biz.warehouseinventory.*;
|
||||||
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/2/26 13:40
|
||||||
|
*/
|
||||||
|
@Mapper
|
||||||
|
public interface WarehouseInventoryHistoryMapper extends BaseMapper<WarehouseInventoryHistory> {
|
||||||
|
|
||||||
|
IPage<WarehouseInventoryHistoryVo> listPage(IPage<WarehouseInventoryHistory> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryHistory> qw);
|
||||||
|
List<WarehouseInventoryHistoryVo> getListBySpuSid(@Param("spuSid")String spuSid);
|
||||||
|
}
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
<?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.warehouseinventoryhistory.WarehouseInventoryHistoryMapper">
|
||||||
|
<!-- <where> ${ew.sqlSegment} </where>-->
|
||||||
|
<!-- ${ew.customSqlSegment} -->
|
||||||
|
|
||||||
|
<select id="listPage" resultType="com.yxt.warehouse.biz.warehouseinventoryhistory.WarehouseInventoryHistoryVo">
|
||||||
|
select
|
||||||
|
a.goodsSpuName,
|
||||||
|
a.goodsSpuSid,
|
||||||
|
a.goodsSkuSid,
|
||||||
|
a.goodsSkuCode,
|
||||||
|
a.goodsSkuOwnSpec,
|
||||||
|
a.unit,
|
||||||
|
sum(a.count) as count ,
|
||||||
|
a.batchNumber
|
||||||
|
from warehouse_inventory_history a
|
||||||
|
LEFT JOIN ss_user.sys_organization as s ON a.useOrgSid = s.sid
|
||||||
|
<where>
|
||||||
|
${ew.sqlSegment}
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
|
<select id="getListBySpuSid" resultType="com.yxt.warehouse.biz.warehouseinventoryhistory.WarehouseInventoryHistoryVo">
|
||||||
|
select
|
||||||
|
a.goodsSpuName,
|
||||||
|
a.goodsSkuTitle,
|
||||||
|
a.goodsSpuSid,
|
||||||
|
a.goodsSkuSid,
|
||||||
|
a.goodsSkuCode,
|
||||||
|
a.goodsSkuOwnSpec,
|
||||||
|
a.unit,
|
||||||
|
a.count as count ,
|
||||||
|
a.batchNumber
|
||||||
|
from warehouse_inventory_history a
|
||||||
|
<where>
|
||||||
|
a.goodsSpuSid=#{spuSid}
|
||||||
|
</where>
|
||||||
|
group by a.goodsSkuSid
|
||||||
|
</select>
|
||||||
|
|
||||||
|
|
||||||
|
</mapper>
|
||||||
@@ -0,0 +1,42 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryhistory;
|
||||||
|
|
||||||
|
import com.yxt.common.core.query.Query;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/2/26 13:37
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseInventoryHistoryQuery implements Query {
|
||||||
|
|
||||||
|
@ApiModelProperty("商品编码")
|
||||||
|
private String goodsSkuCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库")
|
||||||
|
private String warehouseSid;
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
private String goodsSpuSid;
|
||||||
|
private String brandSid;
|
||||||
|
private String spec;
|
||||||
|
private String countStart;
|
||||||
|
private String countEnd;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("条码")
|
||||||
|
private String barCode;
|
||||||
|
private String hh;
|
||||||
|
private String orgLevelKey;//权限等级
|
||||||
|
@ApiModelProperty("菜单路由")
|
||||||
|
private String menuUrl;
|
||||||
|
@ApiModelProperty("组织全路径sid")
|
||||||
|
private String orgPath;
|
||||||
|
@ApiModelProperty("用户sid")
|
||||||
|
private String userSid;
|
||||||
|
private int index;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//供应商
|
||||||
|
}
|
||||||
@@ -0,0 +1,61 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryhistory;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/8/29 16:55
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseInventoryHistoryScheduledVo {
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
@ApiModelProperty("厂家")
|
||||||
|
private String manufacturerSid;
|
||||||
|
@ApiModelProperty("厂家")
|
||||||
|
private String manufacturerName;
|
||||||
|
@ApiModelProperty("商品ID(唯一编码,入库时生成,生成规则为商品编码+YYMMdd+4位流水)")
|
||||||
|
private String goodsID;
|
||||||
|
@ApiModelProperty("分类sid")
|
||||||
|
private String goodsTypeSid;
|
||||||
|
@ApiModelProperty("分类名")
|
||||||
|
private String goodsTypeName;
|
||||||
|
@ApiModelProperty("品牌sid")
|
||||||
|
private String goodsBrandSid;
|
||||||
|
@ApiModelProperty("品牌名")
|
||||||
|
private String goodsBrandName;
|
||||||
|
@ApiModelProperty("商品基础信息sid")
|
||||||
|
private String goodSpuSid;
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
private String goodsSpuName;
|
||||||
|
@ApiModelProperty("商品Skusid")
|
||||||
|
private String goodsSkuSid;
|
||||||
|
@ApiModelProperty("商品Sku名称")
|
||||||
|
private String goodsSkuTitle;
|
||||||
|
@ApiModelProperty("商品编码(图号)")
|
||||||
|
private String goodsSkuCode;
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
private String goodsSkuOwnSpec;
|
||||||
|
@ApiModelProperty("计量单位")
|
||||||
|
private String unit;
|
||||||
|
@ApiModelProperty("现有量")
|
||||||
|
private BigDecimal count;
|
||||||
|
@ApiModelProperty("仓库sid")
|
||||||
|
private String warehouseSid;
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
@ApiModelProperty("库位sid")
|
||||||
|
private String warehouseRackSid;
|
||||||
|
@ApiModelProperty("库位编码")
|
||||||
|
private String warehouseRackCode;
|
||||||
|
@ApiModelProperty("创建组织sid")
|
||||||
|
private String createOrgSid;
|
||||||
|
@ApiModelProperty("使用组织sid")
|
||||||
|
private String useOrgSid;
|
||||||
|
private Date orderDate=new Date();
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,106 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryhistory;
|
||||||
|
|
||||||
|
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.warehouseansbilldetail.WarehouseAnsBillDetailService;
|
||||||
|
import com.yxt.warehouse.biz.warehouseansbilldetail.WarehouseAnsListDetailsVo;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventory.*;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecordService;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.scheduling.annotation.Scheduled;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.*;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/2/26 13:40
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class WarehouseInventoryHistoryService extends MybatisBaseService<WarehouseInventoryHistoryMapper, WarehouseInventoryHistory> {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
WarehouseInventoryService warehouseInventoryService;
|
||||||
|
@Autowired
|
||||||
|
WarehouseInventoryHistoryService warehouseInventoryHistoryService;
|
||||||
|
public ResultBean<PagerVo<WarehouseInventoryHistoryVo>> listPage(PagerQuery<WarehouseInventoryHistoryQuery> pq) {
|
||||||
|
ResultBean rb =new ResultBean().fail();
|
||||||
|
WarehouseInventoryHistoryQuery query = pq.getParams();
|
||||||
|
QueryWrapper<WarehouseInventoryHistory> qw = new QueryWrapper<>();
|
||||||
|
// if (StringUtils.isNotBlank(query.getOrgLevelKey())) {
|
||||||
|
// //数据权限ID(1全部、2本部门及子部门、3本部门、4个人)
|
||||||
|
// String orgLevelKey=query.getOrgLevelKey();
|
||||||
|
// String orgSidPath=query.getOrgPath();
|
||||||
|
// int index=query.getIndex();
|
||||||
|
// if ("1".equals(orgLevelKey)) {
|
||||||
|
// orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
// qw.like("s.orgSidPath", orgSidPath);
|
||||||
|
// } else if ("2".equals(orgLevelKey)) {
|
||||||
|
// orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
// qw.like("s.orgSidPath", orgSidPath);
|
||||||
|
// } else if ("3".equals(orgLevelKey)) {
|
||||||
|
// orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
// qw.apply("s.orgSidPath like('"+orgSidPath+"')");
|
||||||
|
// } else if ("4".equals(orgLevelKey)) {
|
||||||
|
// qw.eq("wab.createBySid", query.getUserSid());
|
||||||
|
// } else {
|
||||||
|
// PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
||||||
|
// return rb.success().setData(p);
|
||||||
|
// }
|
||||||
|
// } else {
|
||||||
|
// PagerVo<WarehouseInventoryVo> p = new PagerVo<>();
|
||||||
|
// return rb.success().setData(p);
|
||||||
|
// }
|
||||||
|
if (StringUtils.isNotBlank(query.getWarehouseSid())) {
|
||||||
|
qw.like("a.warehouseNameSid", query.getWarehouseSid());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(query.getGoodsSpuSid())) {
|
||||||
|
qw.like("a.goodsSpuSid", query.getGoodsSpuSid());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(query.getBrandSid())) {
|
||||||
|
qw.like("a.brandSid", query.getBrandSid());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(query.getSpec())) {
|
||||||
|
qw.like("a.goodsSkuOwnSpec", query.getSpec());
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(query.getGoodsSpuSid())) {
|
||||||
|
qw.like("a.goodsSpuSid", query.getGoodsSpuSid());
|
||||||
|
}
|
||||||
|
qw.apply(StringUtils.isNotBlank(query.getCountStart()), "a.count >= " + query.getCountStart()).
|
||||||
|
apply(StringUtils.isNotBlank(query.getCountEnd()), "a.count <= " + query.getCountEnd()
|
||||||
|
);
|
||||||
|
qw.eq("1",1);
|
||||||
|
qw.groupBy("a.goodsSpuSid");
|
||||||
|
IPage<WarehouseInventoryHistory> page = PagerUtil.queryToPage(pq);
|
||||||
|
IPage<WarehouseInventoryHistoryVo> pagging = baseMapper.listPage(page, qw);
|
||||||
|
for (WarehouseInventoryHistoryVo record : pagging.getRecords()) {
|
||||||
|
List<WarehouseInventoryHistoryVo> vos=baseMapper.getListBySpuSid(record.getGoodsSpuSid());
|
||||||
|
record.setList(vos);
|
||||||
|
}
|
||||||
|
PagerVo<WarehouseInventoryHistoryVo> p = PagerUtil.pageToVo(pagging, null);
|
||||||
|
return rb.success().setData(p);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Scheduled(cron = "0 0 0 * * ? ")
|
||||||
|
public void saveHistory(){
|
||||||
|
List<WarehouseInventory> warehouseOrgs=warehouseInventoryService.list(new QueryWrapper<WarehouseInventory>().groupBy("useOrgSid"));
|
||||||
|
List<WarehouseInventoryHistory> warehouseInventoryHistories=new ArrayList<>();
|
||||||
|
for (WarehouseInventory warehouseOrg : warehouseOrgs) {
|
||||||
|
List<WarehouseInventoryHistory> warehouseInventoryHistories1=warehouseInventoryService.totalInventoryByOrgSid(warehouseOrg.getUseOrgSid());
|
||||||
|
warehouseInventoryHistories.addAll(warehouseInventoryHistories1);
|
||||||
|
}
|
||||||
|
if(warehouseInventoryHistories.size()!=0){
|
||||||
|
warehouseInventoryHistoryService.saveBatch(warehouseInventoryHistories);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryhistory;
|
||||||
|
|
||||||
|
import com.yxt.common.core.vo.Vo;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/2/26 13:37
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseInventoryHistoryVo implements Vo {
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
@ApiModelProperty("商品基础信息sid")
|
||||||
|
private String goodsSpuSid;
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
private String goodsSpuName;
|
||||||
|
@ApiModelProperty("商品Skusid")
|
||||||
|
private String goodsSkuSid;
|
||||||
|
@ApiModelProperty("商品Sku名称")
|
||||||
|
private String goodsSkuTitle;
|
||||||
|
@ApiModelProperty("商品编码(图号)")
|
||||||
|
private String goodsSkuCode;
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
private String goodsSkuOwnSpec;
|
||||||
|
@ApiModelProperty("计量单位")
|
||||||
|
private String unit;
|
||||||
|
@ApiModelProperty("数量")
|
||||||
|
private BigDecimal count;
|
||||||
|
|
||||||
|
private Date orderDate;
|
||||||
|
private List<WarehouseInventoryHistoryVo> list=new ArrayList<>();
|
||||||
|
|
||||||
|
}
|
||||||
@@ -100,12 +100,12 @@ public class WarehouseInventoryRecord extends BaseEntity {
|
|||||||
private String warehouseRackCode; // 库位编号
|
private String warehouseRackCode; // 库位编号
|
||||||
@ApiModelProperty("入库单价")
|
@ApiModelProperty("入库单价")
|
||||||
private BigDecimal cost;
|
private BigDecimal cost;
|
||||||
@ApiModelProperty("税率")
|
|
||||||
private BigDecimal tax;
|
|
||||||
@ApiModelProperty("入库金额")
|
@ApiModelProperty("操作人sid")
|
||||||
private BigDecimal amount;
|
private String operatorSid; // 库位sid
|
||||||
@ApiModelProperty("经办人sid")
|
@ApiModelProperty("操作人")
|
||||||
private String handlerSid; // 库位sid
|
private String operator; // 库位编号
|
||||||
@ApiModelProperty("经办人")
|
private String useOrgSid;
|
||||||
private String handlerName; // 库位编号
|
private String createOrgSid;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -31,6 +31,8 @@ import io.swagger.annotations.ApiModel;
|
|||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Project: wms(yxt) <br/>
|
* Project: wms(yxt) <br/>
|
||||||
* File: WmsInventoryRecordDto.java <br/>
|
* File: WmsInventoryRecordDto.java <br/>
|
||||||
@@ -52,8 +54,6 @@ public class WarehouseInventoryRecordDto implements Dto {
|
|||||||
|
|
||||||
@ApiModelProperty("库存sid")
|
@ApiModelProperty("库存sid")
|
||||||
private String inventorySid; // 库存sid
|
private String inventorySid; // 库存sid
|
||||||
@ApiModelProperty("创建人sid")
|
|
||||||
private String createBySid; // 商品ID
|
|
||||||
@ApiModelProperty("商品ID")
|
@ApiModelProperty("商品ID")
|
||||||
private String goodsID; // 商品ID
|
private String goodsID; // 商品ID
|
||||||
@ApiModelProperty("来源单sid(业务单sid)")
|
@ApiModelProperty("来源单sid(业务单sid)")
|
||||||
@@ -85,11 +85,11 @@ public class WarehouseInventoryRecordDto implements Dto {
|
|||||||
@ApiModelProperty("规格型号")
|
@ApiModelProperty("规格型号")
|
||||||
private String goodsSkuOwnSpec; // 规格型号
|
private String goodsSkuOwnSpec; // 规格型号
|
||||||
@ApiModelProperty("出入库后的库存量")
|
@ApiModelProperty("出入库后的库存量")
|
||||||
private String currentCount; // 出入库后的库存量
|
private BigDecimal currentCount; // 出入库后的库存量
|
||||||
@ApiModelProperty("计量单位")
|
@ApiModelProperty("计量单位")
|
||||||
private String unit; // 计量单位
|
private String unit; // 计量单位
|
||||||
@ApiModelProperty("数量")
|
@ApiModelProperty("数量")
|
||||||
private String count; // 数量
|
private BigDecimal count; // 数量
|
||||||
@ApiModelProperty("仓库sid")
|
@ApiModelProperty("仓库sid")
|
||||||
private String warehouseSid; // 仓库sid
|
private String warehouseSid; // 仓库sid
|
||||||
@ApiModelProperty("仓库名称")
|
@ApiModelProperty("仓库名称")
|
||||||
@@ -99,18 +99,14 @@ public class WarehouseInventoryRecordDto implements Dto {
|
|||||||
@ApiModelProperty("库位编号")
|
@ApiModelProperty("库位编号")
|
||||||
private String warehouseRackCode; // 库位编号
|
private String warehouseRackCode; // 库位编号
|
||||||
@ApiModelProperty("入库单价")
|
@ApiModelProperty("入库单价")
|
||||||
private String cost;
|
private BigDecimal cost;
|
||||||
@ApiModelProperty("税率")
|
|
||||||
private String tax;
|
|
||||||
@ApiModelProperty("入库金额")
|
@ApiModelProperty("操作人sid")
|
||||||
private String amount;
|
private String operatorSid; // 库位sid
|
||||||
@ApiModelProperty("经办人sid")
|
@ApiModelProperty("操作人")
|
||||||
private String handlerSid; // 库位sid
|
private String operator; // 库位编号
|
||||||
@ApiModelProperty("经办人")
|
|
||||||
private String handlerName; // 库位编号
|
|
||||||
@ApiModelProperty("创建组织sid")
|
|
||||||
private String createOrgSid;
|
|
||||||
@ApiModelProperty("使用组织sid")
|
|
||||||
private String useOrgSid;
|
private String useOrgSid;
|
||||||
|
private String createOrgSid;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,6 +3,8 @@ package com.yxt.warehouse.biz.warehouseinventoryrecord;
|
|||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @description: 库存出入库记录
|
* @description: 库存出入库记录
|
||||||
* @author: dimengzhe
|
* @author: dimengzhe
|
||||||
@@ -15,16 +17,27 @@ public class WarehouseInventoryRecordListVo {
|
|||||||
private String billNo;
|
private String billNo;
|
||||||
@ApiModelProperty("单据类型")
|
@ApiModelProperty("单据类型")
|
||||||
private String billType;
|
private String billType;
|
||||||
|
private String billTypeValue;
|
||||||
@ApiModelProperty("发生时间")
|
@ApiModelProperty("发生时间")
|
||||||
private String createTime;
|
private String createTime;
|
||||||
@ApiModelProperty("业务类型")
|
@ApiModelProperty("业务类型")
|
||||||
private String busTypeValue;
|
private String busTypeValue;
|
||||||
@ApiModelProperty("客户/供应商")
|
|
||||||
private String billObjName;
|
|
||||||
@ApiModelProperty("批次号")
|
|
||||||
private String batchNumber;
|
|
||||||
@ApiModelProperty("数量")
|
@ApiModelProperty("数量")
|
||||||
private String count;
|
private String count;
|
||||||
@ApiModelProperty("出入库后的库存量")
|
@ApiModelProperty("出入库后的库存量")
|
||||||
private String currentCount;
|
private BigDecimal currentCount;
|
||||||
|
@ApiModelProperty("操作员")
|
||||||
|
private String operator;
|
||||||
|
@ApiModelProperty("单价")
|
||||||
|
private BigDecimal price;
|
||||||
|
@ApiModelProperty("spuname")
|
||||||
|
private String goodsSpuName;
|
||||||
|
@ApiModelProperty("skutitle")
|
||||||
|
private String goodsTitle;
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
private String goodsSkuOwnSpec;
|
||||||
|
@ApiModelProperty("发生成本")
|
||||||
|
private BigDecimal costIncurred=new BigDecimal(0);
|
||||||
|
@ApiModelProperty("库存成本")
|
||||||
|
private BigDecimal inventoryCost=new BigDecimal(0);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -75,6 +75,7 @@ public interface WarehouseInventoryRecordMapper extends BaseMapper<WarehouseInve
|
|||||||
IPage<WarehouseInventoryDetailsRecordVo> inventoryDetailsRecord(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
|
IPage<WarehouseInventoryDetailsRecordVo> inventoryDetailsRecord(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
|
||||||
|
|
||||||
List<WarehouseInventoryRecordListVo> getWarehouseInventoryRecordList(String sid);
|
List<WarehouseInventoryRecordListVo> getWarehouseInventoryRecordList(String sid);
|
||||||
|
IPage<WarehouseInventoryRecordListVo> getWarehouseInventoryRecord(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
|
||||||
|
|
||||||
IPage<WarehouseInventoryRecordsVo> listPage(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
|
IPage<WarehouseInventoryRecordsVo> listPage(IPage<WarehouseInventoryRecord> page, @Param(Constants.WRAPPER) QueryWrapper<WarehouseInventoryRecord> qw);
|
||||||
|
|
||||||
|
|||||||
@@ -171,4 +171,19 @@
|
|||||||
WHERE
|
WHERE
|
||||||
r.sourceBillSid = #{sid} and r.goodsSkuCode = #{goodsSkuCode}
|
r.sourceBillSid = #{sid} and r.goodsSkuCode = #{goodsSkuCode}
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getWarehouseInventoryRecord" resultType="com.yxt.warehouse.biz.warehouseinventoryrecord.WarehouseInventoryRecordListVo">
|
||||||
|
select
|
||||||
|
a.*,
|
||||||
|
case a.billType
|
||||||
|
when 0 then '出库'
|
||||||
|
when 1 then '入库'
|
||||||
|
end as billTypeValue,
|
||||||
|
a.price * a.count as costIncurred,
|
||||||
|
a.price * a.currentCount as inventoryCost
|
||||||
|
from warehouse_inventory_record a
|
||||||
|
LEFT JOIN ss_user.sys_organization as s ON a.useOrgSid = s.sid
|
||||||
|
<where>
|
||||||
|
${ew.sqlSegment}
|
||||||
|
</where>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|||||||
@@ -0,0 +1,30 @@
|
|||||||
|
package com.yxt.warehouse.biz.warehouseinventoryrecord;
|
||||||
|
|
||||||
|
import com.yxt.common.core.query.Query;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author wangpengfei
|
||||||
|
* @date 2024/8/28 16:45
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseInventoryRecordQuery1 implements Query {
|
||||||
|
private String billSid;
|
||||||
|
private String goodsSpuName;
|
||||||
|
private String goodsSkuTitle;
|
||||||
|
private String spec;
|
||||||
|
private String warehouseName;
|
||||||
|
private String billType;
|
||||||
|
private String startTime;
|
||||||
|
private String endTime;
|
||||||
|
|
||||||
|
private String orgLevelKey;//权限等级
|
||||||
|
@ApiModelProperty("菜单路由")
|
||||||
|
private String menuUrl;
|
||||||
|
@ApiModelProperty("组织全路径sid")
|
||||||
|
private String orgPath;
|
||||||
|
@ApiModelProperty("用户sid")
|
||||||
|
private String userSid;
|
||||||
|
private int index;
|
||||||
|
}
|
||||||
@@ -28,6 +28,7 @@ package com.yxt.warehouse.biz.warehouseinventoryrecord;
|
|||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
||||||
import com.baomidou.mybatisplus.core.metadata.IPage;
|
import com.baomidou.mybatisplus.core.metadata.IPage;
|
||||||
|
import com.sun.xml.bind.v2.TODO;
|
||||||
import com.yxt.common.base.service.MybatisBaseService;
|
import com.yxt.common.base.service.MybatisBaseService;
|
||||||
import com.yxt.common.base.utils.PagerUtil;
|
import com.yxt.common.base.utils.PagerUtil;
|
||||||
import com.yxt.common.core.query.PagerQuery;
|
import com.yxt.common.core.query.PagerQuery;
|
||||||
@@ -35,6 +36,7 @@ import com.yxt.common.core.result.ResultBean;
|
|||||||
import com.yxt.common.core.vo.PagerVo;
|
import com.yxt.common.core.vo.PagerVo;
|
||||||
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventory;
|
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventory;
|
||||||
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryService;
|
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryService;
|
||||||
|
import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryVo;
|
||||||
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.*;
|
import com.yxt.warehouse.biz.warehouseinventoryrecord.report.*;
|
||||||
import com.yxt.warehouse.biz.warehouseoldinventory.WarehouseOldInventoryDetailsListVo;
|
import com.yxt.warehouse.biz.warehouseoldinventory.WarehouseOldInventoryDetailsListVo;
|
||||||
import org.apache.commons.lang3.StringUtils;
|
import org.apache.commons.lang3.StringUtils;
|
||||||
@@ -216,7 +218,58 @@ public class WarehouseInventoryRecordService extends MybatisBaseService<Warehous
|
|||||||
list.removeAll(Collections.singleton(null));
|
list.removeAll(Collections.singleton(null));
|
||||||
return rb.success().setData(list);
|
return rb.success().setData(list);
|
||||||
}
|
}
|
||||||
|
public ResultBean<PagerVo<WarehouseInventoryRecordListVo>> getWarehouseInventoryRecord(PagerQuery<WarehouseInventoryRecordQuery1> pq) {
|
||||||
|
ResultBean<PagerVo<WarehouseInventoryRecordListVo>> rb = ResultBean.fireFail();
|
||||||
|
WarehouseInventoryRecordQuery1 query = pq.getParams();
|
||||||
|
QueryWrapper<WarehouseInventoryRecord> qw = new QueryWrapper<>();
|
||||||
|
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getOrgLevelKey())) {
|
||||||
|
//数据权限ID(1全部、2本部门及子部门、3本部门、4个人)
|
||||||
|
String orgLevelKey=query.getOrgLevelKey();
|
||||||
|
String orgSidPath=query.getOrgPath();
|
||||||
|
int index=query.getIndex();
|
||||||
|
if ("1".equals(orgLevelKey)) {
|
||||||
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
qw.like("s.orgSidPath", orgSidPath);
|
||||||
|
} else if ("2".equals(orgLevelKey)) {
|
||||||
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
qw.like("s.orgSidPath", orgSidPath);
|
||||||
|
} else if ("3".equals(orgLevelKey)) {
|
||||||
|
orgSidPath = orgSidPath.substring(0, index);
|
||||||
|
qw.apply("s.orgSidPath like('"+orgSidPath+"')");
|
||||||
|
} else if ("4".equals(orgLevelKey)) {
|
||||||
|
qw.eq("wab.createBySid", query.getUserSid());
|
||||||
|
} else {
|
||||||
|
PagerVo<WarehouseInventoryRecordListVo> p = new PagerVo<>();
|
||||||
|
return rb.success().setData(p);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
PagerVo<WarehouseInventoryRecordListVo> p = new PagerVo<>();
|
||||||
|
return rb.success().setData(p);
|
||||||
|
}
|
||||||
|
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getGoodsSkuTitle())) {
|
||||||
|
qw.like("r.busTypeValue", query.getGoodsSkuTitle());
|
||||||
|
}
|
||||||
|
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getGoodsSpuName())) {
|
||||||
|
qw.like("r.goodsSpuName", query.getGoodsSpuName());
|
||||||
|
}
|
||||||
|
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getWarehouseName())) {
|
||||||
|
qw.like("r.warehouseName", query.getWarehouseName());
|
||||||
|
}
|
||||||
|
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getSpec())) {
|
||||||
|
qw.like("r.goodsSkuCode", query.getSpec());
|
||||||
|
}
|
||||||
|
if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getBillType())) {
|
||||||
|
qw.like("r.goodsSkuCode", query.getBillType());
|
||||||
|
}
|
||||||
|
qw.apply(com.yxt.common.base.utils.StringUtils.isNotBlank(query.getStartTime()), "date_format (wab.createTime,'%Y-%m-%d') >= date_format('" + query.getStartTime() + "','%Y-%m-%d')").
|
||||||
|
apply(com.yxt.common.base.utils.StringUtils.isNotBlank(query.getEndTime()), "date_format (wab.createTime,'%Y-%m-%d') <= date_format('" + query.getEndTime() + "','%Y-%m-%d')"
|
||||||
|
);
|
||||||
|
qw.eq("sourceBillSid",query.getBillSid());
|
||||||
|
IPage<WarehouseInventoryRecord> page = PagerUtil.queryToPage(pq);
|
||||||
|
IPage<WarehouseInventoryRecordListVo> pagging = baseMapper.getWarehouseInventoryRecord(page, qw);
|
||||||
|
PagerVo<WarehouseInventoryRecordListVo> p = PagerUtil.pageToVo(pagging, null);
|
||||||
|
return rb.success().setData(p);
|
||||||
|
}
|
||||||
public PagerVo<WarehouseInventoryRecordsVo> listPage(PagerQuery<WarehouseInventoryRecordsQuery> pagerQuery) {
|
public PagerVo<WarehouseInventoryRecordsVo> listPage(PagerQuery<WarehouseInventoryRecordsQuery> pagerQuery) {
|
||||||
WarehouseInventoryRecordsQuery query = pagerQuery.getParams();
|
WarehouseInventoryRecordsQuery query = pagerQuery.getParams();
|
||||||
QueryWrapper<WarehouseInventoryRecord> qw = new QueryWrapper<>();
|
QueryWrapper<WarehouseInventoryRecord> qw = new QueryWrapper<>();
|
||||||
@@ -326,18 +379,8 @@ public class WarehouseInventoryRecordService extends MybatisBaseService<Warehous
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void saveRecord(WarehouseInventoryRecordDto dto) {
|
public void saveRecord(WarehouseInventoryRecordDto dto) {
|
||||||
WarehouseInventory WarehouseInventory = new WarehouseInventory();
|
|
||||||
BeanUtil.copyProperties(dto,WarehouseInventory,"id","sid");
|
|
||||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
|
||||||
try {
|
|
||||||
WarehouseInventory.setFirstInDate(sdf.parse(sdf.format(new Date())));
|
|
||||||
} catch (ParseException e) {
|
|
||||||
e.printStackTrace();
|
|
||||||
}
|
|
||||||
warehouseInventoryService.insert(WarehouseInventory);
|
|
||||||
WarehouseInventoryRecord inventoryRecord = new WarehouseInventoryRecord();
|
WarehouseInventoryRecord inventoryRecord = new WarehouseInventoryRecord();
|
||||||
BeanUtil.copyProperties(dto,inventoryRecord,"id","sid");
|
BeanUtil.copyProperties(dto,inventoryRecord,"id","sid");
|
||||||
inventoryRecord.setInventorySid(WarehouseInventory.getSid());
|
|
||||||
baseMapper.insert(inventoryRecord);
|
baseMapper.insert(inventoryRecord);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -320,13 +320,24 @@ public class WarehouseOutBillService extends MybatisBaseService<WarehouseOutBill
|
|||||||
for (String s : dto.getSid().split(",")) {
|
for (String s : dto.getSid().split(",")) {
|
||||||
List<WarehouseOutLocation> warehouseOutLocations=warehouseOutLocationService.list(new QueryWrapper<WarehouseOutLocation>().eq("sourceBillSid",dto.getSid()));
|
List<WarehouseOutLocation> warehouseOutLocations=warehouseOutLocationService.list(new QueryWrapper<WarehouseOutLocation>().eq("sourceBillSid",dto.getSid()));
|
||||||
for (WarehouseOutLocation warehouseOutLocation : warehouseOutLocations) {
|
for (WarehouseOutLocation warehouseOutLocation : warehouseOutLocations) {
|
||||||
WarehouseInventory WarehouseInventory = warehouseInventoryService.fetchBySid(warehouseOutLocation.getInventorySid());
|
WarehouseInventory warehouseInventory = warehouseInventoryService.fetchBySid(warehouseOutLocation.getInventorySid());
|
||||||
//减去出库的数量
|
//减去出库的数量
|
||||||
WarehouseInventory.setCount(WarehouseInventory.getCount().subtract(warehouseOutLocation.getCount()));
|
warehouseInventory.setCount(warehouseInventory.getCount().subtract(warehouseOutLocation.getCount()));
|
||||||
WarehouseInventory.setAllocateCount(WarehouseInventory.getAllocateCount().subtract(warehouseOutLocation.getCount()));
|
warehouseInventory.setAllocateCount(warehouseInventory.getAllocateCount().subtract(warehouseOutLocation.getCount()));
|
||||||
warehouseInventoryService.updateById(WarehouseInventory);
|
warehouseInventoryService.updateById(warehouseInventory);
|
||||||
|
WarehouseInventoryRecordDto recordDto=new WarehouseInventoryRecordDto();
|
||||||
|
recordDto.setCost(warehouseInventory.getCost());
|
||||||
|
recordDto.setCount(warehouseOutLocation.getCount());
|
||||||
|
recordDto.setBillObjSid("");
|
||||||
|
recordDto.setBillObjName("");
|
||||||
|
recordDto.setOperator(dto.getUserName());
|
||||||
|
recordDto.setOperatorSid(dto.getUserSid());
|
||||||
|
recordDto.setUseOrgSid(dto.getUseOrgSid());
|
||||||
|
recordDto.setCreateOrgSid(dto.getCreateOrgSid());
|
||||||
|
recordDto.setBusTypeValue("销售出库");
|
||||||
|
recordDto.setBusTypeKey("销售出库");
|
||||||
|
saveWarehouseInventory(dto.getSid(),recordDto);
|
||||||
}
|
}
|
||||||
saveWarehouseInventory(dto.getSid());
|
|
||||||
OperationRecordDto dto1 = new OperationRecordDto();
|
OperationRecordDto dto1 = new OperationRecordDto();
|
||||||
dto1.setBillSid(dto.getSid());
|
dto1.setBillSid(dto.getSid());
|
||||||
dto1.setUserSid(dto.getUserSid());
|
dto1.setUserSid(dto.getUserSid());
|
||||||
@@ -343,29 +354,39 @@ public class WarehouseOutBillService extends MybatisBaseService<WarehouseOutBill
|
|||||||
return rb.success();
|
return rb.success();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void saveWarehouseInventory(String sid) {
|
public void saveWarehouseInventory(String sid,WarehouseInventoryRecordDto dto) {
|
||||||
WarehouseOutBill WarehouseOutBill = fetchBySid(sid);
|
WarehouseOutBill WarehouseOutBill = fetchBySid(sid);
|
||||||
List<WarehouseOutLocation> warehouseOutLocations=warehouseOutLocationService.list(new QueryWrapper<WarehouseOutLocation>().eq("sourceBillSid",sid));
|
List<WarehouseOutLocation> warehouseOutLocations=warehouseOutLocationService.list(new QueryWrapper<WarehouseOutLocation>().eq("sourceBillSid",sid));
|
||||||
for (WarehouseOutLocation warehouseOutLocation : warehouseOutLocations) {
|
for (WarehouseOutLocation warehouseOutLocation : warehouseOutLocations) {
|
||||||
WarehouseInventory warehouseInventory=warehouseInventoryService.getOne(new QueryWrapper<WarehouseInventory>().eq("sid",warehouseOutLocation.getInventorySid()));
|
WarehouseInventory warehouseInventory=warehouseInventoryService.getOne(new QueryWrapper<WarehouseInventory>().eq("sid",warehouseOutLocation.getInventorySid()));
|
||||||
WarehouseInventoryRecordDto WarehouseInventoryRecordDto = new WarehouseInventoryRecordDto();
|
WarehouseInventoryRecordDto warehouseInventoryRecordDto = new WarehouseInventoryRecordDto();
|
||||||
WarehouseInventoryRecordDto.setInventorySid(warehouseOutLocation.getInventorySid());
|
warehouseInventoryRecordDto.setInventorySid(warehouseOutLocation.getInventorySid());
|
||||||
WarehouseInventoryRecordDto.setGoodsID(warehouseInventory.getGoodsID());
|
warehouseInventoryRecordDto.setGoodsID(warehouseInventory.getGoodsID());
|
||||||
WarehouseInventoryRecordDto.setSourceBillSid(WarehouseOutBill.getSid());
|
warehouseInventoryRecordDto.setSourceBillSid(WarehouseOutBill.getSid());
|
||||||
WarehouseInventoryRecordDto.setBillNo(WarehouseOutBill.getBillNo());
|
warehouseInventoryRecordDto.setBillNo(WarehouseOutBill.getBillNo());
|
||||||
WarehouseInventoryRecordDto.setBillType("0");
|
warehouseInventoryRecordDto.setBillType("0");
|
||||||
WarehouseInventoryRecordDto.setBatchNumber(warehouseInventory.getBatchNumber());
|
warehouseInventoryRecordDto.setBusTypeKey(dto.getBusTypeKey());
|
||||||
WarehouseInventoryRecordDto.setGoodSpuSid(warehouseInventory.getGoodSpuSid());
|
warehouseInventoryRecordDto.setBusTypeValue(dto.getBusTypeValue());
|
||||||
WarehouseInventoryRecordDto.setGoodsSpuName(warehouseOutLocation.getGoodsSpuName());
|
warehouseInventoryRecordDto.setBillObjName(dto.getBillObjName());
|
||||||
WarehouseInventoryRecordDto.setGoodsSkuSid(warehouseOutLocation.getGoodsSkuSid());
|
warehouseInventoryRecordDto.setBillObjSid(dto.getBillObjSid());
|
||||||
WarehouseInventoryRecordDto.setGoodsSkuCode(warehouseOutLocation.getGoodsSkuCode());
|
warehouseInventoryRecordDto.setBatchNumber(warehouseInventory.getBatchNumber());
|
||||||
WarehouseInventoryRecordDto.setUnit(warehouseInventory.getUnit());
|
warehouseInventoryRecordDto.setGoodSpuSid(warehouseInventory.getGoodSpuSid());
|
||||||
WarehouseInventoryRecordDto.setCurrentCount(StringUtils.isNotBlank(warehouseInventory.getCount().toString()) ? new BigDecimal(warehouseInventory.getCount().toString()).toString() : BigDecimal.ZERO.toString());
|
warehouseInventoryRecordDto.setGoodsSpuName(warehouseOutLocation.getGoodsSpuName());
|
||||||
WarehouseInventoryRecordDto.setWarehouseSid(warehouseOutLocation.getWarehouseSid());
|
warehouseInventoryRecordDto.setGoodsSkuSid(warehouseOutLocation.getGoodsSkuSid());
|
||||||
WarehouseInventoryRecordDto.setWarehouseName(warehouseInventory.getWarehouseName());
|
warehouseInventoryRecordDto.setGoodsSkuCode(warehouseOutLocation.getGoodsSkuCode());
|
||||||
WarehouseInventoryRecordDto.setWarehouseRackSid(warehouseOutLocation.getRackSid());
|
warehouseInventoryRecordDto.setUnit(warehouseInventory.getUnit());
|
||||||
WarehouseInventoryRecordDto.setWarehouseRackCode(warehouseOutLocation.getRackCode());
|
warehouseInventoryRecordDto.setCurrentCount(StringUtils.isNotBlank(warehouseInventory.getCount().toString()) ? new BigDecimal(warehouseInventory.getCount().toString()) : BigDecimal.ZERO);
|
||||||
warehouseInventoryRecordService.saveOrUpdateDto(WarehouseInventoryRecordDto);
|
warehouseInventoryRecordDto.setCount(dto.getCount());
|
||||||
|
warehouseInventoryRecordDto.setWarehouseSid(warehouseOutLocation.getWarehouseSid());
|
||||||
|
warehouseInventoryRecordDto.setWarehouseName(warehouseInventory.getWarehouseName());
|
||||||
|
warehouseInventoryRecordDto.setWarehouseRackSid(warehouseOutLocation.getRackSid());
|
||||||
|
warehouseInventoryRecordDto.setWarehouseRackCode(warehouseOutLocation.getRackCode());
|
||||||
|
warehouseInventoryRecordDto.setCost(dto.getCost());
|
||||||
|
warehouseInventoryRecordDto.setOperator(dto.getOperator());
|
||||||
|
warehouseInventoryRecordDto.setOperatorSid(dto.getOperatorSid());
|
||||||
|
warehouseInventoryRecordDto.setUseOrgSid(dto.getUseOrgSid());
|
||||||
|
warehouseInventoryRecordDto.setCreateOrgSid(dto.getCreateOrgSid());
|
||||||
|
warehouseInventoryRecordService.saveOrUpdateDto(warehouseInventoryRecordDto);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
public ResultBean getRemarks(String sid) {
|
public ResultBean getRemarks(String sid) {
|
||||||
|
|||||||
Reference in New Issue
Block a user