diff --git a/src/main/java/com/yxt/warehouse/apiadmin/WarehouseInventoryRecordRest.java b/src/main/java/com/yxt/warehouse/apiadmin/WarehouseInventoryRecordRest.java
index a256028..59802d3 100644
--- a/src/main/java/com/yxt/warehouse/apiadmin/WarehouseInventoryRecordRest.java
+++ b/src/main/java/com/yxt/warehouse/apiadmin/WarehouseInventoryRecordRest.java
@@ -1,12 +1,36 @@
-
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
package com.yxt.warehouse.apiadmin;
import com.yxt.common.base.utils.ExportExcelUtils;
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.warehouseinventoryrecord.*;
+import com.yxt.warehouse.biz.warehouseinventoryrecord.report.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
@@ -17,45 +41,132 @@ import java.io.UnsupportedEncodingException;
import java.net.URLEncoder;
import java.util.List;
+/**
+ * Project: Warehouse(yxt)
+ * File: WarehouseInventoryRecordFeignFallback.java
+ * Class: inventroy.biz.Warehouseinventoryrecord.WarehouseInventoryRecordRest
+ * Description: 库存出入库记录.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
@Api(tags = "库存出入库记录")
@RestController
-@RequestMapping("/apiadmin/inventory/Storageinventoryrecord")
+@RequestMapping("/apiadmin/warehouseinventoryrecord")
public class WarehouseInventoryRecordRest {
- @Autowired
- private WarehouseInventoryRecordService warehouseInventoryRecordService;
-
- @Autowired
- HttpServletResponse response;
-
- @ApiOperation("根据库存sid获取出入库记录")
- @GetMapping("/getStorageInventoryRecordList")
- ResultBean> getStorageInventoryRecordList(@RequestParam("sid") String sid) {
- return warehouseInventoryRecordService.getStorageInventoryRecordList(sid);
- }
-
- @ApiOperation("出入库查询")
- @PostMapping("/pageList")
- ResultBean> pageList(@RequestBody PagerQuery pagerQuery) {
- ResultBean> rb = ResultBean.fireFail();
- PagerVo pv = warehouseInventoryRecordService.listPage(pagerQuery);
- return rb.success().setData(pv);
- }
-
- @PostMapping("/exportExcel")
- @ApiOperation(value = "导出")
- public void exportExcel(@RequestBody WarehouseInventoryRecordsQuery query) {
- //得到所有要导出的数据
- List exportVoList = warehouseInventoryRecordService.listExcel(query);
- //定义导出的excel名字
- String excelName = "出入库查询";
- String fileNameURL = "";
- try {
- fileNameURL = URLEncoder.encode(excelName, "UTF-8");
- } catch (UnsupportedEncodingException e) {
- e.printStackTrace();
- }
- ExportExcelUtils.export(fileNameURL, exportVoList, WarehouseInventoryRecordsExcelVo.class, response);
-
- }
+ @Autowired
+ private WarehouseInventoryRecordService warehouseInventoryRecordService;
+
+ @Autowired
+ HttpServletResponse response;
+
+ @ApiOperation("收发存明细报表")
+ @PostMapping("/inventoryDetailsRecord")
+ public ResultBean> inventoryDetailsRecord(@RequestBody PagerQuery pq){
+ ResultBean rb = ResultBean.fireFail();
+ PagerVo pv = warehouseInventoryRecordService.inventoryDetailsRecord(pq);
+ return rb.success().setData(pv);
+ }
+
+ @ApiOperation("库存统计报表")
+ @PostMapping("/inventoryStats")
+ public ResultBean inventoryStats(@RequestBody PagerQuery pq){
+ ResultBean rb = ResultBean.fireFail();
+ WarehouseInventoryCountReportVo vo = warehouseInventoryRecordService.inventoryStats(pq);
+ return rb.success().setData(vo);
+ }
+
+ @ApiOperation("入库统计报表详情")
+ @PostMapping("/inventoryInboundStats")
+ public ResultBean> inventoryInboundStats(@RequestBody PagerQuery pq){
+ ResultBean rb = ResultBean.fireFail();
+ PagerVo pv = warehouseInventoryRecordService.inventoryInboundStats(pq);
+ return rb.success().setData(pv);
+ }
+
+ @ApiOperation("出库统计报表详情")
+ @PostMapping("/inventoryOutboundStats")
+ public ResultBean> inventoryOutboundStats(@RequestBody PagerQuery pq){
+ ResultBean rb = ResultBean.fireFail();
+ PagerVo pv = warehouseInventoryRecordService.inventoryOutboundStats(pq);
+ return rb.success().setData(pv);
+ }
+
+ @ApiOperation("根据条件分页查询数据的列表")
+ @PostMapping("/listPage")
+ public ResultBean> listPage(@RequestBody PagerQuery pq){
+ ResultBean rb = ResultBean.fireFail();
+ PagerVo pv = warehouseInventoryRecordService.listPageVo(pq);
+ return rb.success().setData(pv);
+ }
+
+
+ @ApiOperation("新增或修改")
+ @PostMapping("/save")
+ public ResultBean save(@RequestBody WarehouseInventoryRecordDto dto){
+ ResultBean rb = ResultBean.fireFail();
+ warehouseInventoryRecordService.saveOrUpdateDto(dto);
+ return rb.success();
+ }
+
+ @ApiOperation("新增出入库记录")
+ @PostMapping("/saveRecord")
+ public ResultBean saveRecord(@RequestBody WarehouseInventoryRecordDto dto){
+ ResultBean rb = ResultBean.fireFail();
+ warehouseInventoryRecordService.saveRecord(dto);
+ return rb.success();
+ }
+
+ @ApiOperation("根据sid批量删除")
+ @PostMapping("/delBySids")
+ public ResultBean delBySids(@RequestBody String[] sids){
+ ResultBean rb = ResultBean.fireFail();
+ warehouseInventoryRecordService.delBySids(sids);
+ return rb.success();
+ }
+
+
+ @ApiOperation("根据SID获取一条记录")
+ @GetMapping("/fetchDetailsBySid/{sid}")
+ public ResultBean fetchDetailsBySid(@PathVariable("sid") String sid){
+ ResultBean rb = ResultBean.fireFail();
+ WarehouseInventoryRecordDetailsVo vo = warehouseInventoryRecordService.fetchDetailsVoBySid(sid);
+ return rb.success().setData(vo);
+ }
+
+ @ApiOperation("库存出入库记录")
+ @GetMapping("/getWarehouseInventoryRecordList")
+ ResultBean> getWarehouseInventoryRecordList(@RequestParam("sid")String sid){
+ return warehouseInventoryRecordService.getWarehouseInventoryRecordList(sid);
+ }
+
+ @ApiOperation("出入库查询")
+ @PostMapping("/pageList")
+ ResultBean> pageList(@RequestBody PagerQuery pagerQuery){
+ ResultBean> rb = ResultBean.fireFail();
+ PagerVo pv = warehouseInventoryRecordService.listPage(pagerQuery);
+ return rb.success().setData(pv);
+ }
+
+ @PostMapping("/exportExcel")
+ @ApiOperation(value = "导出")
+ public void exportExcel(@RequestBody WarehouseInventoryRecordsQuery query) {
+ //得到所有要导出的数据
+ List exportVoList = warehouseInventoryRecordService.listExcel(query);
+ //定义导出的excel名字
+ String excelName = "出入库查询";
+ String fileNameURL = "";
+ try {
+ fileNameURL = URLEncoder.encode(excelName, "UTF-8");
+ } catch (UnsupportedEncodingException e) {
+ e.printStackTrace();
+ }
+ ExportExcelUtils.export(fileNameURL, exportVoList, WarehouseInventoryRecordsExcelVo.class, response);
+
+ }
}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecord.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecord.java
index 84b1b27..7e26d24 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecord.java
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecord.java
@@ -1,65 +1,111 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
package com.yxt.warehouse.biz.warehouseinventoryrecord;
+import com.baomidou.mybatisplus.annotation.TableName;
import com.yxt.common.core.domain.BaseEntity;
+import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
- * @description:
- * @author: dimengzhe
- * @date: 2024/4/24
- **/
+ * Project: wms(yxt)
+ * File: WmsInventoryRecord.java
+ * Class: inventroy.api.wmsinventoryrecord.WmsInventoryRecord
+ * Description: 库存出入库记录.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
@Data
+@ApiModel(value = "库存出入库记录", description = "库存出入库记录")
+@TableName("wms_inventory_record")
public class WarehouseInventoryRecord extends BaseEntity {
+ private static final long serialVersionUID = 1L;
- @ApiModelProperty("库存sid")
- private String inventorySid;
- @ApiModelProperty("商品ID")
- private String goodsID;
- @ApiModelProperty("来源单sid(业务单sid)")
- private String sourceBillSid;
- @ApiModelProperty("来源单据编号")
- private String billNo;
- @ApiModelProperty("单据类型(1入库、0出库)")
- private String billType;
- @ApiModelProperty("业务类型key(采购入库、维修出入库、销售出入库等)")
- private String busTypeKey;
- @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
- private String busTypeValue;
- @ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
- private String billObjSid;
- @ApiModelProperty("客户/供应商名称")
- private String billObjName;
- @ApiModelProperty("批次号")
- private String batchNumber;
- @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 BigDecimal currentCount;
- @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;
- private String handlerSid;//经办人sid
- private String handlerName;//经办人
+ @ApiModelProperty("库存sid")
+ private String inventorySid; // 库存sid
+ @ApiModelProperty("商品ID")
+ private String goodsID; // 商品ID
+ @ApiModelProperty("来源单sid(业务单sid)")
+ private String sourceBillSid; // 来源单sid(业务单sid)
+ @ApiModelProperty("来源单据编号")
+ private String billNo; // 来源单据编号
+ @ApiModelProperty("单据类型(1入库、0出库)")
+ private String billType; // 单据类型(1入库、0出库)
+ @ApiModelProperty("业务类型key(采购入库、维修出入库、销售出入库等)")
+ private String busTypeKey; // 业务类型key(采购入库、维修出入库、销售出入库等)
+ @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
+ private String busTypeValue; // 业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)
+ @ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
+ private String billObjSid; // 客户/供应商sid,出库是为客户,入库时为供应商
+ @ApiModelProperty("客户/供应商名称")
+ private String billObjName; // 客户/供应商名称
+ @ApiModelProperty("批次号")
+ private String batchNumber; // 批次号
+ @ApiModelProperty("商品基础信息Sid")
+ private String goodSpuSid; // 商品基础信息Sid
+ @ApiModelProperty("商品名称")
+ private String goodsSpuName; // 商品名称
+ @ApiModelProperty("商品Skusid")
+ private String goodsSkuSid; // 商品Skusid
+ @ApiModelProperty("商品Sku名称")
+ private String goodsSkuTitle; // 商品Sku名称
+ @ApiModelProperty("商品编码(图号)")
+ private String goodsSkuCode; // 商品编码(图号)
+ @ApiModelProperty("规格型号")
+ private String goodsSkuOwnSpec; // 规格型号
+ @ApiModelProperty("出入库后的库存量")
+ private BigDecimal currentCount; // 出入库后的库存量
+ @ApiModelProperty("计量单位")
+ private String unit; // 计量单位
+ @ApiModelProperty("数量")
+ private BigDecimal count; // 数量
+ @ApiModelProperty("仓库sid")
+ private String warehouseSid; // 仓库sid
+ @ApiModelProperty("仓库名称")
+ private String warehouseName; // 仓库名称
+ @ApiModelProperty("库位sid")
+ private String warehouseRackSid; // 库位sid
+ @ApiModelProperty("库位编号")
+ private String warehouseRackCode; // 库位编号
+ @ApiModelProperty("入库单价")
+ private BigDecimal cost;
+ @ApiModelProperty("税率")
+ private BigDecimal tax;
+ @ApiModelProperty("入库金额")
+ private BigDecimal amount;
+ @ApiModelProperty("经办人sid")
+ private String handlerSid; // 库位sid
+ @ApiModelProperty("经办人")
+ private String handlerName; // 库位编号
}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordDetailsVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordDetailsVo.java
new file mode 100644
index 0000000..ef3c1d2
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordDetailsVo.java
@@ -0,0 +1,102 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.warehouse.biz.warehouseinventoryrecord;
+
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * Project: wms(yxt)
+ * File: WmsInventoryRecordVo.java
+ * Class: inventroy.api.wmsinventoryrecord.WmsInventoryRecordVo
+ * Description: 库存出入库记录 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Data
+@ApiModel(value = "库存出入库记录 视图数据详情", description = "库存出入库记录 视图数据详情")
+public class WarehouseInventoryRecordDetailsVo implements Vo {
+
+ private String sid; // sid
+
+ @ApiModelProperty("库存sid")
+ private String inventorySid; // 库存sid
+ @ApiModelProperty("商品ID")
+ private String goodsID; // 商品ID
+ @ApiModelProperty("来源单sid(业务单sid)")
+ private String sourceBillSid; // 来源单sid(业务单sid)
+ @ApiModelProperty("来源单据编号")
+ private String billNo; // 来源单据编号
+ @ApiModelProperty("单据类型(1入库、0出库)")
+ private String billType; // 单据类型(1入库、0出库)
+ @ApiModelProperty("业务类型key(采购入库、维修出入库、销售出入库等)")
+ private String busTypeKey; // 业务类型key(采购入库、维修出入库、销售出入库等)
+ @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
+ private String busTypeValue; // 业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)
+ @ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
+ private String billObjSid; // 客户/供应商sid,出库是为客户,入库时为供应商
+ @ApiModelProperty("客户/供应商名称")
+ private String billObjName; // 客户/供应商名称
+ @ApiModelProperty("批次号")
+ private String batchNumber; // 批次号
+ @ApiModelProperty("商品基础信息Sid")
+ private String goodSpuSid; // 商品基础信息Sid
+ @ApiModelProperty("商品名称")
+ private String goodsSpuName; // 商品名称
+ @ApiModelProperty("商品Skusid")
+ private String goodsSkuSid; // 商品Skusid
+ @ApiModelProperty("商品Sku名称")
+ private String goodsSkuTitle; // 商品Sku名称
+ @ApiModelProperty("商品编码(图号)")
+ private String goodsSkuCode; // 商品编码(图号)
+ @ApiModelProperty("规格型号")
+ private String goodsSkuOwnSpec; // 规格型号
+ @ApiModelProperty("出入库后的库存量")
+ private BigDecimal currentCount; // 出入库后的库存量
+ @ApiModelProperty("计量单位")
+ private String unit; // 计量单位
+ @ApiModelProperty("数量")
+ private BigDecimal count; // 数量
+ @ApiModelProperty("仓库sid")
+ private String warehouseSid; // 仓库sid
+ @ApiModelProperty("仓库名称")
+ private String warehouseName; // 仓库名称
+ @ApiModelProperty("库位sid")
+ private String warehouseRackSid; // 库位sid
+ @ApiModelProperty("库位编号")
+ private String warehouseRackCode; // 库位编号
+
+}
\ No newline at end of file
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordDto.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordDto.java
index c8c323c..a2f96fe 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordDto.java
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordDto.java
@@ -1,3 +1,28 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
package com.yxt.warehouse.biz.warehouseinventoryrecord;
@@ -6,60 +31,86 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
-import java.math.BigDecimal;
-
+/**
+ * Project: wms(yxt)
+ * File: WmsInventoryRecordDto.java
+ * Class: inventroy.api.wmsinventoryrecord.WmsInventoryRecordDto
+ * Description: 库存出入库记录 数据传输对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
@Data
@ApiModel(value = "库存出入库记录 数据传输对象", description = "库存出入库记录 数据传输对象")
public class WarehouseInventoryRecordDto implements Dto {
- private String sid;
- @ApiModelProperty("库存sid")
- private String inventorySid;
- @ApiModelProperty("商品ID")
- private String goodsID;
- @ApiModelProperty("来源单sid(业务单sid)")
- private String sourceBillSid;
- @ApiModelProperty("来源单据编号")
- private String billNo;
- @ApiModelProperty("单据类型(1入库、0出库)")
- private String billType;
- @ApiModelProperty("业务类型key(采购入库、维修出入库、销售出入库等)")
- private String busTypeKey;
- @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
- private String busTypeValue;
- @ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
- private String billObjSid;
- @ApiModelProperty("客户/供应商名称")
- private String billObjName;
- @ApiModelProperty("批次号")
- private String batchNumber;
- @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 BigDecimal currentCount;
- @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;
- private String handlerSid;//经办人sid
- private String handlerName;//经办人
+ private String sid; // sid
+
+ @ApiModelProperty("库存sid")
+ private String inventorySid; // 库存sid
+ @ApiModelProperty("创建人sid")
+ private String createBySid; // 商品ID
+ @ApiModelProperty("商品ID")
+ private String goodsID; // 商品ID
+ @ApiModelProperty("来源单sid(业务单sid)")
+ private String sourceBillSid; // 来源单sid(业务单sid)
+ @ApiModelProperty("来源单据编号")
+ private String billNo; // 来源单据编号
+ @ApiModelProperty("单据类型(1入库、0出库)")
+ private String billType; // 单据类型(1入库、0出库)
+ @ApiModelProperty("业务类型key(采购入库、维修出入库、销售出入库等)")
+ private String busTypeKey; // 业务类型key(采购入库、维修出入库、销售出入库等)
+ @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
+ private String busTypeValue; // 业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)
+ @ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
+ private String billObjSid; // 客户/供应商sid,出库是为客户,入库时为供应商
+ @ApiModelProperty("客户/供应商名称")
+ private String billObjName; // 客户/供应商名称
+ @ApiModelProperty("批次号")
+ private String batchNumber; // 批次号
+ @ApiModelProperty("商品基础信息Sid")
+ private String goodSpuSid; // 商品基础信息Sid
+ @ApiModelProperty("商品名称")
+ private String goodsSpuName; // 商品名称
+ @ApiModelProperty("商品Skusid")
+ private String goodsSkuSid; // 商品Skusid
+ @ApiModelProperty("商品Sku名称")
+ private String goodsSkuTitle; // 商品Sku名称
+ @ApiModelProperty("商品编码(图号)")
+ private String goodsSkuCode; // 商品编码(图号)
+ @ApiModelProperty("规格型号")
+ private String goodsSkuOwnSpec; // 规格型号
+ @ApiModelProperty("出入库后的库存量")
+ private String currentCount; // 出入库后的库存量
+ @ApiModelProperty("计量单位")
+ private String unit; // 计量单位
+ @ApiModelProperty("数量")
+ private String count; // 数量
+ @ApiModelProperty("仓库sid")
+ private String warehouseSid; // 仓库sid
+ @ApiModelProperty("仓库名称")
+ private String warehouseName; // 仓库名称
+ @ApiModelProperty("库位sid")
+ private String warehouseRackSid; // 库位sid
+ @ApiModelProperty("库位编号")
+ private String warehouseRackCode; // 库位编号
+ @ApiModelProperty("入库单价")
+ private String cost;
+ @ApiModelProperty("税率")
+ private String tax;
+ @ApiModelProperty("入库金额")
+ private String amount;
+ @ApiModelProperty("经办人sid")
+ private String handlerSid; // 库位sid
+ @ApiModelProperty("经办人")
+ private String handlerName; // 库位编号
+ @ApiModelProperty("创建组织sid")
+ private String createOrgSid;
+ @ApiModelProperty("使用组织sid")
+ private String useOrgSid;
-}
\ No newline at end of file
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordListVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordListVo.java
index 83e47f3..8a74d4a 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordListVo.java
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordListVo.java
@@ -4,7 +4,7 @@ import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
- * @description:
+ * @description: 库存出入库记录
* @author: dimengzhe
* @date: 2024/4/24
**/
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.java
index db040df..fbd9298 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.java
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.java
@@ -1,16 +1,88 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
package com.yxt.warehouse.biz.warehouseinventoryrecord;
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+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.warehouseinventoryrecord.report.WarehouseInAndOutboundVo;
+import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryCountDetailsVo;
+import com.yxt.warehouse.biz.warehouseinventoryrecord.report.WarehouseInventoryDetailsRecordVo;
+import com.yxt.warehouse.biz.warehouseoldinventory.WarehouseOldInventoryDetailsListVo;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+import org.apache.ibatis.annotations.Select;
import java.util.List;
/**
- * @description:
- * @author: dimengzhe
- * @date: 2024/4/24
- **/
+ * Project: Warehouse(yxt)
+ * File: WarehouseInventoryRecordMapper.java
+ * Class: inventroy.biz.Warehouseinventoryrecord.WarehouseInventoryRecordMapper
+ * Description: 库存出入库记录.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
@Mapper
public interface WarehouseInventoryRecordMapper extends BaseMapper {
- List getStorageInventoryRecordList(String sid);
+
+ //@Update("update Warehouse_inventory_record set name=#{msg} where id=#{id}")
+ //IPage voPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ IPage selectPageVo(IPage page, @Param(Constants.WRAPPER) Wrapper qw);
+
+ List selectListAllVo(@Param(Constants.WRAPPER) Wrapper qw);
+
+ @Select("select * from Warehouse_inventory_record")
+ List selectListVo();
+
+ String selInItCountBySettleTime(@Param("settleTime") String settleTime);
+
+ List selInboundAndOutboundCount(@Param(Constants.WRAPPER) QueryWrapper qw);
+
+ IPage inventoryInboundAndOutboundStats(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ IPage inventoryDetailsRecord(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ List getWarehouseInventoryRecordList(String sid);
+
+ IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ List listExcel(@Param(Constants.WRAPPER) QueryWrapper qw);
+
+ List getDetailsList(String sid);
+
+ List selBySourceSid(String sid);
+
+ List selBySourceSidAndSkuCode(@Param("sid") String sid, @Param("goodsSkuCode") String goodsSkuCode);
}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.xml b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.xml
index f1f0018..a0eb5b1 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.xml
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordMapper.xml
@@ -1,7 +1,81 @@
-
-
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordQuery.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordQuery.java
new file mode 100644
index 0000000..0dde69c
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordQuery.java
@@ -0,0 +1,100 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.warehouse.biz.warehouseinventoryrecord;
+
+
+import com.yxt.common.core.query.Query;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * Project: wms(yxt)
+ * File: WmsInventoryRecordQuery.java
+ * Class: inventroy.api.wmsinventoryrecord.WmsInventoryRecordQuery
+ * Description: 库存出入库记录 查询条件.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Data
+@ApiModel(value = "库存出入库记录 查询条件", description = "库存出入库记录 查询条件")
+public class WarehouseInventoryRecordQuery implements Query {
+
+ @ApiModelProperty("库存sid")
+ private String inventorySid; // 库存sid
+ @ApiModelProperty("商品ID")
+ private String goodsID; // 商品ID
+ @ApiModelProperty("来源单sid(业务单sid)")
+ private String sourceBillSid; // 来源单sid(业务单sid)
+ @ApiModelProperty("来源单据编号")
+ private String billNo; // 来源单据编号
+ @ApiModelProperty("单据类型(1入库、0出库)")
+ private String billType; // 单据类型(1入库、0出库)
+ @ApiModelProperty("业务类型key(采购入库、维修出入库、销售出入库等)")
+ private String busTypeKey; // 业务类型key(采购入库、维修出入库、销售出入库等)
+ @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
+ private String busTypeValue; // 业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)
+ @ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
+ private String billObjSid; // 客户/供应商sid,出库是为客户,入库时为供应商
+ @ApiModelProperty("客户/供应商名称")
+ private String billObjName; // 客户/供应商名称
+ @ApiModelProperty("批次号")
+ private String batchNumber; // 批次号
+ @ApiModelProperty("商品基础信息Sid")
+ private String goodSpuSid; // 商品基础信息Sid
+ @ApiModelProperty("商品名称")
+ private String goodsSpuName; // 商品名称
+ @ApiModelProperty("商品Skusid")
+ private String goodsSkuSid; // 商品Skusid
+ @ApiModelProperty("商品Sku名称")
+ private String goodsSkuTitle; // 商品Sku名称
+ @ApiModelProperty("商品编码(图号)")
+ private String goodsSkuCode; // 商品编码(图号)
+ @ApiModelProperty("规格型号")
+ private String goodsSkuOwnSpec; // 规格型号
+ @ApiModelProperty("出入库后的库存量")
+ private BigDecimal currentCount; // 出入库后的库存量
+ @ApiModelProperty("计量单位")
+ private String unit; // 计量单位
+ @ApiModelProperty("数量")
+ private BigDecimal count; // 数量
+ @ApiModelProperty("仓库sid")
+ private String warehouseSid; // 仓库sid
+ @ApiModelProperty("仓库名称")
+ private String warehouseName; // 仓库名称
+ @ApiModelProperty("库位sid")
+ private String warehouseRackSid; // 库位sid
+ @ApiModelProperty("库位编号")
+ private String warehouseRackCode; // 库位编号
+
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordService.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordService.java
index 3a10614..c210947 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordService.java
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordService.java
@@ -1,28 +1,87 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
package com.yxt.warehouse.biz.warehouseinventoryrecord;
import cn.hutool.core.bean.BeanUtil;
+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.core.query.PagerQuery;
import com.yxt.common.core.result.ResultBean;
import com.yxt.common.core.vo.PagerVo;
+import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventory;
+import com.yxt.warehouse.biz.warehouseinventory.WarehouseInventoryService;
+import com.yxt.warehouse.biz.warehouseinventoryrecord.report.*;
+import com.yxt.warehouse.biz.warehouseoldinventory.WarehouseOldInventoryDetailsListVo;
import org.apache.commons.lang3.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
+import java.math.BigDecimal;
+import java.text.ParseException;
+import java.text.SimpleDateFormat;
import java.util.Collections;
+import java.util.Date;
import java.util.List;
/**
- * @description:
- * @author: dimengzhe
- * @date: 2024/4/24
- **/
+ * Project: Warehouse(yxt)
+ * File: WarehouseInventoryRecordService.java
+ * Class: inventroy.biz.Warehouseinventoryrecord.WarehouseInventoryRecordService
+ * Description: 库存出入库记录 业务逻辑.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
@Service
public class WarehouseInventoryRecordService extends MybatisBaseService {
- public ResultBean> getStorageInventoryRecordList(String sid) {
- ResultBean> rb = ResultBean.fireFail();
- List list = baseMapper.getStorageInventoryRecordList(sid);
- list.removeAll(Collections.singleton(null));
- return rb.success().setData(list);
+
+ @Autowired
+ private WarehouseInventoryService warehouseInventoryService;
+
+
+ private QueryWrapper createQueryWrapper(WarehouseInventoryRecordQuery query) {
+ // todo: 这里根据具体业务调整查询条件
+ // 多字段Like示例:qw.and(wrapper -> wrapper.like("name", query.getName()).or().like("remark", query.getName()));
+ QueryWrapper qw = new QueryWrapper<>();
+ return qw;
+ }
+
+ public PagerVo listPageVo(PagerQuery pq) {
+ WarehouseInventoryRecordQuery query = pq.getParams();
+ QueryWrapper qw = createQueryWrapper(query);
+ IPage page = PagerUtil.queryToPage(pq);
+ IPage pagging = baseMapper.selectPageVo(page, qw);
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return p;
}
public void saveOrUpdateDto(WarehouseInventoryRecordDto dto) {
@@ -50,11 +109,243 @@ public class WarehouseInventoryRecordService extends MybatisBaseService pq) {
+ WarehouseInventoryCountReportVo vo = new WarehouseInventoryCountReportVo();
+ WarehouseInventoryCountReportQuery query = pq.getParams();
+ if (StringUtils.isBlank(query.getStartDate()) || StringUtils.isBlank(query.getEndDate()) || StringUtils.isBlank(query.getSettleTime())) {
+ return vo;
+ }
+ String inItCount = "";//期初数量
+ String inboundCount = "";//入库数量
+ String outboundCount = "";//出库数量
+ String changeCount = "";//变化数量
+ String settleCount = "";//结存数量
+ if (StringUtils.isNotBlank(query.getSettleTime())) {
+ inItCount = baseMapper.selInItCountBySettleTime(query.getSettleTime());
+ }
+ QueryWrapper qw = new QueryWrapper<>();
+ qw.apply(StringUtils.isNotBlank(query.getStartDate()), "r.createTime >= '" + query.getStartDate() + "'").
+ apply(StringUtils.isNotBlank(query.getEndDate()), "r.createTime <= '" + query.getEndDate() + "'"
+ );
+ qw.eq("1", 1);
+ qw.groupBy("r.billType");
+ List reportVo = baseMapper.selInboundAndOutboundCount(qw);
+ if (!reportVo.isEmpty()) {
+ for (WarehouseInAndOutboundVo WarehouseInAndOutboundVo : reportVo) {
+ if (StringUtils.isNotBlank(WarehouseInAndOutboundVo.getBillType())) {
+ if (WarehouseInAndOutboundVo.getBillType().equals("1")) {
+ inboundCount = WarehouseInAndOutboundVo.getCount();
+ } else if (WarehouseInAndOutboundVo.getBillType().equals("0")) {
+ outboundCount = WarehouseInAndOutboundVo.getCount();
+ }
+ }
+ }
+ }
+ changeCount = (new BigDecimal(inboundCount).subtract(new BigDecimal(outboundCount))).toString();
+ settleCount = (new BigDecimal(inItCount).add(new BigDecimal(changeCount))).toString();
+ vo.setInItAmount(inItCount);
+ vo.setInboundAmount(inboundCount);
+ vo.setOutboundAmount(outboundCount);
+ vo.setChangeCount(changeCount);
+ vo.setSettleAmount(settleCount);
+ return vo;
+ }
+
+ public PagerVo inventoryInboundStats(PagerQuery pq) {
+ WarehouseInventoryCountReportQuery query = pq.getParams();
+ QueryWrapper qw = new QueryWrapper<>();
+ qw.apply(StringUtils.isNotBlank(query.getStartDate()), "r.createTime >= '" + query.getStartDate() + "'").
+ apply(StringUtils.isNotBlank(query.getEndDate()), "r.createTime <= '" + query.getEndDate() + "'"
+ );
+ qw.eq("r.billType", "1");
+ qw.groupBy("r.busTypeKey");
+ IPage page = PagerUtil.queryToPage(pq);
+ IPage pagging = baseMapper.inventoryInboundAndOutboundStats(page, qw);
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return p;
+ }
+
+ public PagerVo inventoryOutboundStats(PagerQuery pq) {
+ WarehouseInventoryCountReportQuery query = pq.getParams();
+ QueryWrapper qw = new QueryWrapper<>();
+ qw.apply(StringUtils.isNotBlank(query.getStartDate()), "r.createTime >= '" + query.getStartDate() + "'").
+ apply(StringUtils.isNotBlank(query.getEndDate()), "r.createTime <= '" + query.getEndDate() + "'"
+ );
+ qw.eq("r.billType", "0");
+ qw.groupBy("r.busTypeKey");
+ IPage page = PagerUtil.queryToPage(pq);
+ IPage pagging = baseMapper.inventoryInboundAndOutboundStats(page, qw);
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return p;
+ }
+
+ public PagerVo inventoryDetailsRecord(PagerQuery pq) {
+ WarehouseInventoryDetailsRecordQuery query = pq.getParams();
+ QueryWrapper qw = new QueryWrapper<>();
+ qw.apply(StringUtils.isNotBlank(query.getStartDate()), "r.createTime >= '" + query.getStartDate() + "'").
+ apply(StringUtils.isNotBlank(query.getEndDate()), "r.createTime <= '" + query.getEndDate() + "'"
+ );
+ if (com.yxt.common.base.utils.StringUtils.isNotBlank(query.getBusTypeValue())) {
+ qw.like("r.busTypeValue", query.getBusTypeValue());
+ }
+ 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.getGoodsSkuCode())) {
+ qw.like("r.goodsSkuCode", query.getGoodsSkuCode());
+ }
+ IPage page = PagerUtil.queryToPage(pq);
+ IPage pagging = baseMapper.inventoryDetailsRecord(page, qw);
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return p;
+ }
+
+ public ResultBean> getWarehouseInventoryRecordList(String sid) {
+ ResultBean> rb = ResultBean.fireFail();
+ List list = baseMapper.getWarehouseInventoryRecordList(sid);
+ list.removeAll(Collections.singleton(null));
+ return rb.success().setData(list);
+ }
+
public PagerVo listPage(PagerQuery pagerQuery) {
- return null;
+ WarehouseInventoryRecordsQuery query = pagerQuery.getParams();
+ QueryWrapper qw = new QueryWrapper<>();
+ //ToDo:添加查询条件
+ if (StringUtils.isNotBlank(query.getGoodsID())) {
+ qw.like("wir.goodsID", query.getGoodsID());
+ }
+ //商品名称
+ if (StringUtils.isNotBlank(query.getGoodsSpuName())) {
+ qw.like("wir.goodsSpuName", query.getGoodsSpuName());
+ }
+ //商品编码
+ if (StringUtils.isNotBlank(query.getGoodsSkuCode())) {
+ qw.like("wir.goodsSkuCode", query.getGoodsSkuCode());
+ }
+ //仓库名称
+ if (StringUtils.isNotBlank(query.getWarehouseName())) {
+ qw.like("wir.warehouseName", query.getWarehouseName());
+ }
+ //库位编号
+ if (StringUtils.isNotBlank(query.getWarehouseRackCode())) {
+ qw.like("wir.warehouseRackCode", query.getWarehouseRackCode());
+ }
+ //客户/供应商名称
+ if (StringUtils.isNotBlank(query.getBillObjName())) {
+ qw.like("wir.billObjName", query.getBillObjName());
+ }
+ //批次号
+ if (StringUtils.isNotBlank(query.getBatchNumber())) {
+ qw.like("wir.batchNumber", query.getBatchNumber());
+ }
+ //来源单据编号
+ if (StringUtils.isNotBlank(query.getBillNo())) {
+ qw.like("wir.billNo", query.getBillNo());
+ }
+ //单据类型
+ if (StringUtils.isNotBlank(query.getBillType())) {
+ qw.like("wir.billType", query.getBillType());
+ }
+ //业务类型
+ if (StringUtils.isNotBlank(query.getBusTypeValue())) {
+ qw.like("wir.busTypeValue", query.getBusTypeValue());
+ }
+ //单据日期开始时间-单据日期结束时间
+ qw.apply(StringUtils.isNotBlank(query.getCreateTimeStart()), "date_format (wir.createTime,'%Y-%m-%d') >= date_format('" + query.getCreateTimeStart() + "','%Y-%m-%d')").
+ apply(com.yxt.common.base.utils.StringUtils.isNotBlank(query.getCreateTimeEnd()), "date_format (wir.createTime,'%Y-%m-%d') <= date_format('" + query.getCreateTimeEnd() + "','%Y-%m-%d')"
+ );
+ IPage page = PagerUtil.queryToPage(pagerQuery);
+ IPage pagging = baseMapper.listPage(page, qw);
+ PagerVo p = PagerUtil.pageToVo(pagging, null);
+ return p;
}
public List listExcel(WarehouseInventoryRecordsQuery query) {
- return null;
+ QueryWrapper qw = new QueryWrapper<>();
+ //ToDo:添加查询条件
+ if (StringUtils.isNotBlank(query.getGoodsID())) {
+ qw.like("wir.goodsID", query.getGoodsID());
+ }
+ //商品名称
+ if (StringUtils.isNotBlank(query.getGoodsSpuName())) {
+ qw.like("wir.goodsSpuName", query.getGoodsSpuName());
+ }
+ //商品编码
+ if (StringUtils.isNotBlank(query.getGoodsSkuCode())) {
+ qw.like("wir.goodsSkuCode", query.getGoodsSkuCode());
+ }
+ //仓库名称
+ if (StringUtils.isNotBlank(query.getWarehouseName())) {
+ qw.like("wir.warehouseName", query.getWarehouseName());
+ }
+ //库位编号
+ if (StringUtils.isNotBlank(query.getWarehouseRackCode())) {
+ qw.like("wir.warehouseRackCode", query.getWarehouseRackCode());
+ }
+ //客户/供应商名称
+ if (StringUtils.isNotBlank(query.getBillObjName())) {
+ qw.like("wir.billObjName", query.getBillObjName());
+ }
+ //批次号
+ if (StringUtils.isNotBlank(query.getBatchNumber())) {
+ qw.like("wir.batchNumber", query.getBatchNumber());
+ }
+ //来源单据编号
+ if (StringUtils.isNotBlank(query.getBillNo())) {
+ qw.like("wir.billNo", query.getBillNo());
+ }
+ //单据类型
+ if (StringUtils.isNotBlank(query.getBillType())) {
+ qw.like("wir.billType", query.getBillType());
+ }
+ //业务类型
+ if (StringUtils.isNotBlank(query.getBusTypeValue())) {
+ qw.like("wir.busTypeValue", query.getBusTypeValue());
+ }
+ //单据日期开始时间-单据日期结束时间
+ qw.apply(StringUtils.isNotBlank(query.getCreateTimeStart()), "date_format (wir.createTime,'%Y-%m-%d') >= date_format('" + query.getCreateTimeStart() + "','%Y-%m-%d')").
+ apply(StringUtils.isNotBlank(query.getCreateTimeEnd()), "date_format (wir.createTime,'%Y-%m-%d') <= date_format('" + query.getCreateTimeEnd() + "','%Y-%m-%d')"
+ );
+ List list = baseMapper.listExcel(qw);
+ list.removeAll(Collections.singleton(null));
+ return list;
+ }
+
+ public List getDetailsList(String sid) {
+ return baseMapper.getDetailsList(sid);
+ }
+
+ 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();
+ BeanUtil.copyProperties(dto,inventoryRecord,"id","sid");
+ inventoryRecord.setInventorySid(WarehouseInventory.getSid());
+ baseMapper.insert(inventoryRecord);
+ }
+
+ public List selBySourceSid(String sid) {
+ return baseMapper.selBySourceSid(sid);
+ }
+
+ public List selBySourceSidAndSkuCode(String sid, String goodsSkuCode) {
+ return baseMapper.selBySourceSidAndSkuCode(sid,goodsSkuCode);
}
}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordVo.java
new file mode 100644
index 0000000..60998f5
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordVo.java
@@ -0,0 +1,102 @@
+/*********************************************************
+ *********************************************************
+ ******************** *******************
+ ************* ************
+ ******* _oo0oo_ *******
+ *** o8888888o ***
+ * 88" . "88 *
+ * (| -_- |) *
+ * 0\ = /0 *
+ * ___/`---'\___ *
+ * .' \\| |// '. *
+ * / \\||| : |||// \ *
+ * / _||||| -:- |||||- \ *
+ * | | \\\ - /// | | *
+ * | \_| ''\---/'' |_/ | *
+ * \ .-\__ '-' ___/-. / *
+ * ___'. .' /--.--\ `. .'___ *
+ * ."" '< `.___\_<|>_/___.' >' "". *
+ * | | : `- \`.;`\ _ /`;.`/ - ` : | | *
+ * \ \ `_. \_ __\ /__ _/ .-` / / *
+ * =====`-.____`.___ \_____/___.-`___.-'===== *
+ * `=---=' *
+ * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ *
+ *********__佛祖保佑__永无BUG__验收通过__钞票多多__*********
+ *********************************************************/
+package com.yxt.warehouse.biz.warehouseinventoryrecord;
+
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+/**
+ * Project: wms(yxt)
+ * File: WmsInventoryRecordVo.java
+ * Class: inventroy.api.wmsinventoryrecord.WmsInventoryRecordVo
+ * Description: 库存出入库记录 视图数据对象.
+ * Copyright: Copyright (c) 2011
+ * Company: https://gitee.com/liuzp315
+ * Makedate: 2024-04-08 17:27:39
+ *
+ * @author liupopo
+ * @version 1.0
+ * @since 1.0
+ */
+@Data
+@ApiModel(value = "库存出入库记录 视图数据对象", description = "库存出入库记录 视图数据对象")
+public class WarehouseInventoryRecordVo implements Vo {
+
+ private String sid; // sid
+
+ @ApiModelProperty("库存sid")
+ private String inventorySid; // 库存sid
+ @ApiModelProperty("商品ID")
+ private String goodsID; // 商品ID
+ @ApiModelProperty("来源单sid(业务单sid)")
+ private String sourceBillSid; // 来源单sid(业务单sid)
+ @ApiModelProperty("来源单据编号")
+ private String billNo; // 来源单据编号
+ @ApiModelProperty("单据类型(1入库、0出库)")
+ private String billType; // 单据类型(1入库、0出库)
+ @ApiModelProperty("业务类型key(采购入库、维修出入库、销售出入库等)")
+ private String busTypeKey; // 业务类型key(采购入库、维修出入库、销售出入库等)
+ @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
+ private String busTypeValue; // 业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)
+ @ApiModelProperty("客户/供应商sid,出库是为客户,入库时为供应商")
+ private String billObjSid; // 客户/供应商sid,出库是为客户,入库时为供应商
+ @ApiModelProperty("客户/供应商名称")
+ private String billObjName; // 客户/供应商名称
+ @ApiModelProperty("批次号")
+ private String batchNumber; // 批次号
+ @ApiModelProperty("商品基础信息Sid")
+ private String goodSpuSid; // 商品基础信息Sid
+ @ApiModelProperty("商品名称")
+ private String goodsSpuName; // 商品名称
+ @ApiModelProperty("商品Skusid")
+ private String goodsSkuSid; // 商品Skusid
+ @ApiModelProperty("商品Sku名称")
+ private String goodsSkuTitle; // 商品Sku名称
+ @ApiModelProperty("商品编码(图号)")
+ private String goodsSkuCode; // 商品编码(图号)
+ @ApiModelProperty("规格型号")
+ private String goodsSkuOwnSpec; // 规格型号
+ @ApiModelProperty("出入库后的库存量")
+ private BigDecimal currentCount; // 出入库后的库存量
+ @ApiModelProperty("计量单位")
+ private String unit; // 计量单位
+ @ApiModelProperty("数量")
+ private BigDecimal count; // 数量
+ @ApiModelProperty("仓库sid")
+ private String warehouseSid; // 仓库sid
+ @ApiModelProperty("仓库名称")
+ private String warehouseName; // 仓库名称
+ @ApiModelProperty("库位sid")
+ private String warehouseRackSid; // 库位sid
+ @ApiModelProperty("库位编号")
+ private String warehouseRackCode; // 库位编号
+
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordsVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordsVo.java
index 560914d..f1fe558 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordsVo.java
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/WarehouseInventoryRecordsVo.java
@@ -21,6 +21,8 @@ public class WarehouseInventoryRecordsVo {
private String goodsSkuOwnSpec;
@ApiModelProperty("仓库名称")
private String warehouseName;
+ @ApiModelProperty("库区名称")
+ private String warehouseAreaName;
@ApiModelProperty("库位编号")
private String warehouseRackCode;
@ApiModelProperty("来源单据编号")
@@ -40,6 +42,9 @@ public class WarehouseInventoryRecordsVo {
private String count;
@ApiModelProperty("计量单位")
private String unit;
-
-
+ @ApiModelProperty("操作人")
+ private String createBySid;
+ private String createByName;
+ @ApiModelProperty("经办人")
+ private String handlerName;
}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInAndOutboundVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInAndOutboundVo.java
new file mode 100644
index 0000000..274a056
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInAndOutboundVo.java
@@ -0,0 +1,14 @@
+package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
+
+import lombok.Data;
+
+/**
+ * @author Fan
+ * @description
+ * @date 2024/4/9 15:44
+ */
+@Data
+public class WarehouseInAndOutboundVo {
+ private String count;
+ private String billType;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountDetailsVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountDetailsVo.java
new file mode 100644
index 0000000..2bf4532
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountDetailsVo.java
@@ -0,0 +1,18 @@
+package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
+
+import com.yxt.common.core.vo.Vo;
+import lombok.Data;
+
+/**
+ * @author Fan
+ * @description
+ * @date 2024/4/8 17:49
+ */
+@Data
+public class WarehouseInventoryCountDetailsVo implements Vo {
+
+ private String busTypeValue;//业务类型
+ private String amountTax;//金额(含税)
+ private String amount;//金额
+ private String count;//数量
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportQuery.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportQuery.java
new file mode 100644
index 0000000..15549a0
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportQuery.java
@@ -0,0 +1,19 @@
+package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
+
+import com.yxt.common.core.query.Query;
+import lombok.Data;
+
+/**
+ * @author Fan
+ * @description
+ * @date 2024/4/8 17:48
+ */
+@Data
+public class WarehouseInventoryCountReportQuery implements Query {
+
+ private String settleTime;
+ private String startDate;
+ private String endDate;
+ private String useOrgSid;
+
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportVo.java
new file mode 100644
index 0000000..fbe50ad
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryCountReportVo.java
@@ -0,0 +1,29 @@
+package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
+
+import com.yxt.common.core.vo.Vo;
+import lombok.Data;
+
+
+/**
+ * @author Fan
+ * @description
+ * @date 2024/4/8 17:48
+ */
+@Data
+public class WarehouseInventoryCountReportVo implements Vo {
+ private String inItCount;//期初数量
+ private String inItAmountTax;//期初金额(含税)
+ private String inItAmount;//期初金额
+ private String inboundCount;//入库数量
+ private String inboundAmountTax;//入库金额(含税)
+ private String inboundAmount;//入库金额
+ private String outboundCount;//出库数量
+ private String outboundAmountTax;//出库金额(含税)
+ private String outboundAmount;//出库金额
+ private String changeCount;//变化数量
+ private String changeAmountTax;//变化金额(含税)
+ private String changeAmount;//变化金额
+ private String settleCount;//结存数量
+ private String settleAmountTax;//结存金额(含税)
+ private String settleAmount;//结存金额
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryDetailsRecordQuery.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryDetailsRecordQuery.java
new file mode 100644
index 0000000..d5c98db
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryDetailsRecordQuery.java
@@ -0,0 +1,24 @@
+package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
+
+import com.yxt.common.core.query.Query;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Fan
+ * @description
+ * @date 2024/4/9 8:56
+ */
+@Data
+public class WarehouseInventoryDetailsRecordQuery implements Query {
+ private String startDate;
+ private String endDate;
+ @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
+ private String busTypeValue; // 业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)
+ @ApiModelProperty("商品名称")
+ private String goodsSpuName; // 商品名称
+ @ApiModelProperty("商品编码(图号)")
+ private String goodsSkuCode; // 商品编码(图号)
+ @ApiModelProperty("仓库名称")
+ private String warehouseName; // 仓库名称
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryDetailsRecordVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryDetailsRecordVo.java
new file mode 100644
index 0000000..1d7a59c
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseinventoryrecord/report/WarehouseInventoryDetailsRecordVo.java
@@ -0,0 +1,41 @@
+package com.yxt.warehouse.biz.warehouseinventoryrecord.report;
+
+import com.yxt.common.core.vo.Vo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ * @author Fan
+ * @description
+ * @date 2024/4/9 8:56
+ */
+@Data
+public class WarehouseInventoryDetailsRecordVo implements Vo {
+
+
+ @ApiModelProperty("出入库时间")
+ private String createTime; // 出入库时间
+ @ApiModelProperty("业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)")
+ private String busTypeValue; // 业务类型value(采购入库、调拨入库、退货入库、盘盈入库等销售出库、调拨出库、采购退货出库、报损出库、盘亏出库等)
+ @ApiModelProperty("商品名称")
+ private String goodsSpuName; // 商品名称
+ @ApiModelProperty("出入库后的库存量")
+ private String currentCount;
+ @ApiModelProperty("商品Sku名称")
+ private String goodsSkuTitle; // 商品Sku名称
+ @ApiModelProperty("商品编码(图号)")
+ private String goodsSkuCode; // 商品编码(图号)
+ @ApiModelProperty("规格型号")
+ private String goodsSkuOwnSpec; // 规格型号
+ @ApiModelProperty("期初数量")
+ private String initCount; // 出入库后的库存量
+ @ApiModelProperty("计量单位")
+ private String unit; // 计量单位
+ @ApiModelProperty("数量")
+ private String count; // 数量
+ @ApiModelProperty("仓库名称")
+ private String warehouseName; // 仓库名称
+ @ApiModelProperty("库位编号")
+ private String warehouseRackCode; // 库位编号
+
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventory.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventory.java
new file mode 100644
index 0000000..3c88e78
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventory.java
@@ -0,0 +1,49 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.yxt.common.core.domain.BaseEntity;
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventory extends BaseEntity {
+
+ //商品ID
+ private String goodsID;
+
+ //商品名称
+ private String goodsSkuTitle;
+
+ //商品编码
+ private String goodsSkuCode;
+
+ //厂家
+ private String manufacturerName;
+
+ //规格
+ private String goodsSkuOwnSpec;
+
+ //单位
+ private String unit;
+
+ //数量
+ private String count;
+
+ //已入库数量
+ private String inCount;
+
+ //维修工单编号
+ private String billNo;
+
+ //客户名称
+ private String customerName;
+
+ //车牌号
+ private String vehMark;
+
+ //车架号
+ private String vinNo;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDetailsListVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDetailsListVo.java
new file mode 100644
index 0000000..2ae39b0
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDetailsListVo.java
@@ -0,0 +1,30 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryDetailsListVo {
+
+ //来源单号
+ private String billNo;
+
+ //单据类型
+ private String billType;
+
+ //发生时间
+ private String createTime;
+
+ //业务类型
+ private String busTypeValue;
+
+ //数量
+ private String count;
+
+ //出入库后的库存
+ private String currentCount;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDetailsVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDetailsVo.java
new file mode 100644
index 0000000..9e3bfe2
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDetailsVo.java
@@ -0,0 +1,35 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryDetailsVo {
+
+ //车架号
+ private String vinNo;
+
+ //商品名称
+ private String goodsSpuName;
+
+ //商品编码
+ private String goodsSkuCode;
+
+ //厂家
+ private String manufacturerName;
+
+ //仓库
+ private String warehouseName;
+
+ //库位
+ private String warehouseRackCode;
+
+ private List list = new ArrayList<>();
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDto.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDto.java
new file mode 100644
index 0000000..c110b94
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryDto.java
@@ -0,0 +1,47 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryDto {
+
+ private String sid;
+
+ //维修工单编号
+ private String sourceBillNo;
+ //厂家
+ private String manufacturerName;
+ //商品基础信息sid
+ private String goodSpuSid;
+ //商品名称
+ private String goodsSpuName;
+ //商品Skusid
+ private String goodsSkuSid;
+ //商品Sku名称
+ private String goodsSkuTitle;
+ //商品编码(图号)
+ private String goodsSkuCode;
+ //规格型号
+ private String goodsSkuOwnSpec;
+ //计量单位
+ private String unit;
+ //未入库数量
+ private String notInCount;
+ //仓库
+ private String warehouseSid;
+ private String warehouseName;
+ //库位
+ private String warehouseRackSid;
+ private String warehouseRackCode;
+ //入库数量(现有量)
+ private String count;
+
+ private String createBySid;
+ private String orgPath;
+
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryExcelVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryExcelVo.java
new file mode 100644
index 0000000..218aa10
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryExcelVo.java
@@ -0,0 +1,60 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.yxt.common.core.utils.ExportEntityMap;
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryExcelVo {
+
+ @ExportEntityMap(CnName = "序号", EnName = "rankNo")
+ private Integer rankNo;
+
+ //车架号
+ @ExportEntityMap(CnName = "车架号", EnName = "vinNo")
+ private String vinNo;
+
+ //车牌号
+ @ExportEntityMap(CnName = "车牌号", EnName = "vehMark")
+ private String vehMark;
+
+ //商品ID
+ @ExportEntityMap(CnName = "商品ID", EnName = "goodsID")
+ private String goodsID;
+
+ //商品名称
+ @ExportEntityMap(CnName = "商品名称", EnName = "goodsSpuName")
+ private String goodsSpuName;
+
+ //商品编码
+ @ExportEntityMap(CnName = "商品编码", EnName = "goodsSkuCode")
+ private String goodsSkuCode;
+
+ //厂家
+ @ExportEntityMap(CnName = "厂家", EnName = "manufacturerName")
+ private String manufacturerName;
+
+ //规格
+ @ExportEntityMap(CnName = "规格", EnName = "goodsSkuOwnSpec")
+ private String goodsSkuOwnSpec;
+
+ //单位
+ @ExportEntityMap(CnName = "单位", EnName = "unit")
+ private String unit;
+
+ //仓库
+ @ExportEntityMap(CnName = "仓库", EnName = "warehouseName")
+ private String warehouseName;
+
+ //库位
+ @ExportEntityMap(CnName = "库位", EnName = "warehouseRackCode")
+ private String warehouseRackCode;
+
+ //库存数量
+ @ExportEntityMap(CnName = "库存数量", EnName = "inventoryCount")
+ private String inventoryCount;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryInitVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryInitVo.java
new file mode 100644
index 0000000..431e54c
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryInitVo.java
@@ -0,0 +1,40 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryInitVo {
+
+ private String sid;
+ //维修工单编号
+ private String sourceBillNo;
+ //商品名称
+ private String goodsSkuTitle;
+ //商品编码
+ private String goodsSkuCode;
+ //车架号
+ private String vinNo;
+ //车牌号
+ private String vehMark;
+ //厂家
+ private String manufacturerName;
+ //规格
+ private String goodsSkuOwnSpec;
+ //仓库
+ private String warehouseSid;
+ private String warehouseName;
+ //库位
+ private String warehouseRackSid;
+ private String warehouseRackCode;
+ //单位
+ private String unit;
+ //未入库数量
+ private Integer notInCount;
+ //入库数量
+ private Integer count;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryMapper.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryMapper.java
new file mode 100644
index 0000000..04aa729
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryMapper.java
@@ -0,0 +1,32 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Mapper
+public interface WarehouseOldInventoryMapper extends BaseMapper {
+ IPage listPage(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ WarehouseOldInventoryInitVo selectInit(String sid);
+
+ IPage oldPageList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ List listExcel(@Param(Constants.WRAPPER) QueryWrapper qw);
+
+ WarehouseOldInventoryDetailsVo getDetailsList(String sid);
+
+ IPage recordList(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw);
+
+ List excelRecordList(@Param(Constants.WRAPPER) QueryWrapper qw);
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryMapper.xml b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryMapper.xml
new file mode 100644
index 0000000..008369f
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryMapper.xml
@@ -0,0 +1,154 @@
+
+
+
+
+ select woi.sid,
+ woi.goodsID,
+ woi.goodsSkuTitle,
+ woi.goodsSkuCode,
+ woi.manufacturerName,
+ woi.goodsSkuOwnSpec,
+ woi.unit,
+ woi.count,
+ woi.inCount,
+ woi.billNo,
+ woi.customerName,
+ woi.vehMark,
+ woi.vinNo,
+ wor.shortss,
+ wor.photos
+ from wms_old_inventory woi
+ left join wms_old_register wor
+ on woi.billNo = wor.billNo
+
+ ${ew.sqlSegment}
+
+
+
+
+ SELECT
+ woi.sid,
+ woi.billNo AS sourceBillNo,
+ woi.goodsSkuTitle,
+ woi.goodsSkuCode,
+ woi.vinNo,
+ woi.vehMark,
+ woi.manufacturerName,
+ woi.goodsSkuOwnSpec,
+ woi.unit,
+ (woi.count - woi.inCount) / 1 AS notInCount,
+ (woi.count - woi.inCount) / 1 AS count
+ FROM
+ warehouse_old_inventory woi
+ where woi.sid = #{sid}
+
+
+
+ SELECT wi.sid,
+ wi.goodsID,
+ wi.goodsSpuName,
+ wi.goodsSkuCode,
+ wi.goodsSkuOwnSpec,
+ wi.unit,
+ wi.warehouseName,
+ wi.warehouseRackCode,
+ wi.count inventoryCount,
+ abbv.vehMark,
+ abbv.vinNo,
+ wib.supplierName as manufacturerName
+ FROM warehouse_inventory wi
+ LEFT JOIN warehouse_inventory_batch wib
+ ON wi.sid = wib.`inventorySid`
+ LEFT JOIN yxt_4sas.as_busrepair_bill_vech abbv
+ ON wib.billSid = abbv.`billSid`
+
+ ${ew.sqlSegment}
+
+
+
+
+ select wi.sid,
+ wi.goodsID,
+ wi.goodsSpuName,
+ wi.goodsSkuCode,
+ wi.goodsSkuOwnSpec,
+ wi.unit,
+ wi.warehouseName,
+ wi.warehouseRackCode,
+ wi.count inventoryCount,
+ (@rank := @rank + 1) rankNo,
+ abbv.vehMark,
+ abbv.vinNo,
+ wib.supplierName as manufacturerName
+ from warehouse_inventory wi
+ LEFT JOIN warehouse_inventory_batch wib
+ ON wi.sid = wib.`inventorySid`
+ LEFT JOIN yxt_4sas.as_busrepair_bill_vech abbv
+ ON wib.billSid = abbv.`billSid`,
+ (SELECT @rank := 0) t
+
+ ${ew.sqlSegment}
+
+
+
+
+ select wi.goodsSpuName, wi.goodsSkuCode, wi.warehouseName, wi.warehouseRackCode,abbv.vinNo,wib.supplierName as manufacturerName
+ from warehouse_inventory wi
+ LEFT JOIN warehouse_inventory_batch wib
+ ON wi.sid = wib.`inventorySid`
+ LEFT JOIN yxt_4sas.as_busrepair_bill_vech abbv
+ ON wib.billSid = abbv.`billSid`
+ where wi.sid = #{sid}
+
+
+
+ select wir.goodsID,
+ wir.goodsSpuName,
+ wir.goodsSkuCode,
+ wir.goodsSkuOwnSpec,
+ wir.unit,
+ wir.warehouseName,
+ wir.warehouseRackCode,
+ wir.billNo,
+ wir.billType,
+ DATE_FORMAT(wir.createTime, '%Y-%m-%d') as createTime,
+ wir.busTypeValue,
+ wir.count,
+ wir.currentCount,
+ wir.billObjName as manufacturerName,
+ abbv.vinNo
+ from warehouse_inventory_record wir
+ LEFT JOIN warehouse_inventory_batch wib
+ ON wir.inventorySid = wib.`inventorySid`
+ LEFT JOIN yxt_4sas.as_busrepair_bill_vech abbv
+ ON wib.billSid = abbv.`billSid`
+
+ ${ew.sqlSegment}
+
+ order by wir.createTime desc
+
+
+
+ select wir.goodsID,
+ wir.goodsSpuName,
+ wir.goodsSkuCode,
+ wir.goodsSkuOwnSpec,
+ wir.unit,
+ wir.warehouseName,
+ wir.warehouseRackCode,
+ wir.billNo,
+ wir.billType,
+ DATE_FORMAT(wir.createTime, '%Y-%m-%d') as createTime,
+ wir.busTypeValue,
+ wir.count,
+ wir.currentCount,
+ (@rank := @rank + 1) rankNo
+ from warehouse_inventory_record wir,
+ (SELECT @rank := 0) t
+
+ ${ew.sqlSegment}
+
+ order by wir.createTime desc
+
+
\ No newline at end of file
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPageListQuery.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPageListQuery.java
new file mode 100644
index 0000000..3cadbd1
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPageListQuery.java
@@ -0,0 +1,38 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.yxt.common.core.query.Query;
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryPageListQuery implements Query {
+
+ //商品id
+ private String goodsID;
+
+ //商品名称
+ private String goodsSpuName;
+
+ //商品编码
+ private String goodsSkuCode;
+
+ //仓库
+ private String warehouseName;
+
+ //库位
+ private String warehouseRackCode;
+
+ //厂家
+ private String manufacturerName;
+
+ //车架号
+ private String vinNo;
+
+ private String createBySid;
+
+ private String orgPath;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPageListVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPageListVo.java
new file mode 100644
index 0000000..b151c67
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPageListVo.java
@@ -0,0 +1,45 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryPageListVo {
+ private String sid;
+ //车架号
+ private String vinNo;
+
+ //车牌号
+ private String vehMark;
+
+ //商品ID
+ private String goodsID;
+
+ //商品名称
+ private String goodsSpuName;
+
+ //商品编码
+ private String goodsSkuCode;
+
+ //厂家
+ private String manufacturerName;
+
+ //规格
+ private String goodsSkuOwnSpec;
+
+ //单位
+ private String unit;
+
+ //仓库
+ private String warehouseName;
+
+ //库位
+ private String warehouseRackCode;
+
+ //库存数量
+ private String inventoryCount;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPush.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPush.java
new file mode 100644
index 0000000..feb507e
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryPush.java
@@ -0,0 +1,40 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryPush {
+
+ private String sid;
+ private String remarks;
+ private String createBySid;
+ //商品ID
+ private String goodsID;
+ //商品Sku名称
+ private String goodsSkuTitle;
+ //商品编码(图号)
+ private String goodsSkuCode;
+ //厂家
+ private String manufacturerName;
+ //规格型号
+ private String goodsSkuOwnSpec;
+ //计量单位
+ private String unit;
+ //数量
+ private String count;
+ //已入库数量
+ private String inCount;
+ //维修工单编号
+ private String billNo;
+ //客户名称
+ private String customerName;
+ // 车牌号
+ private String vehMark;
+ //车架号
+ private String vinNo;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryQuery.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryQuery.java
new file mode 100644
index 0000000..4611dbb
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryQuery.java
@@ -0,0 +1,26 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.yxt.common.core.query.Query;
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryQuery implements Query {
+
+ //商品名称
+ private String goodsSpuName;
+ //商品编码
+ private String goodsSkuCode;
+ //维修工单编号
+ private String billNo;
+ //车牌号
+ private String vehMark;
+ //用户sid
+ private String createBySid;
+ //全组织路径sid
+ private String orgPath;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordList.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordList.java
new file mode 100644
index 0000000..271f344
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordList.java
@@ -0,0 +1,57 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryRecordList {
+
+ //车架号
+ private String vinNo;
+
+ //商品ID
+ private String goodsID;
+
+ //商品名称
+ private String goodsSpuName;
+
+ //商品编码
+ private String goodsSkuCode;
+
+ //厂家
+ private String manufacturerName;
+
+ //规格
+ private String goodsSkuOwnSpec;
+
+ //单位
+ private String unit;
+
+ //仓库
+ private String warehouseName;
+
+ //库位
+ private String warehouseRackCode;
+
+ //来源单号
+ private String billNo;
+
+ //单据类型
+ private String billType;
+
+ //发生时间
+ private String createTime;
+
+ //业务类型
+ private String busTypeValue;
+
+ //数量
+ private String count;
+
+ //出入库后的库存
+ private String currentCount;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordListExcelVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordListExcelVo.java
new file mode 100644
index 0000000..3028a2a
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordListExcelVo.java
@@ -0,0 +1,76 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.yxt.common.core.utils.ExportEntityMap;
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryRecordListExcelVo {
+
+ @ExportEntityMap(CnName = "序号", EnName = "rankNo")
+ private Integer rankNo;
+
+ //车架号
+ @ExportEntityMap(CnName = "车架号", EnName = "vinNo")
+ private String vinNo;
+
+ //商品ID
+ @ExportEntityMap(CnName = "商品ID", EnName = "goodsID")
+ private String goodsID;
+
+ //商品名称
+ @ExportEntityMap(CnName = "商品名称", EnName = "goodsSpuName")
+ private String goodsSpuName;
+
+ //商品编码
+ @ExportEntityMap(CnName = "商品编码", EnName = "goodsSkuCode")
+ private String goodsSkuCode;
+
+ //厂家
+ @ExportEntityMap(CnName = "厂家", EnName = "manufacturerName")
+ private String manufacturerName;
+
+ //规格
+ @ExportEntityMap(CnName = "规格", EnName = "goodsSkuOwnSpec")
+ private String goodsSkuOwnSpec;
+
+ //单位
+ @ExportEntityMap(CnName = "单位", EnName = "unit")
+ private String unit;
+
+ //仓库
+ @ExportEntityMap(CnName = "仓库", EnName = "warehouseName")
+ private String warehouseName;
+
+ //库位
+ @ExportEntityMap(CnName = "库位", EnName = "warehouseRackCode")
+ private String warehouseRackCode;
+
+ //来源单号
+ @ExportEntityMap(CnName = "来源单号", EnName = "billNo")
+ private String billNo;
+
+ //单据类型
+ @ExportEntityMap(CnName = "单据类型", EnName = "billType")
+ private String billType;
+
+ //发生时间
+ @ExportEntityMap(CnName = "发生时间", EnName = "createTime")
+ private String createTime;
+
+ //业务类型
+ @ExportEntityMap(CnName = "业务类型", EnName = "busTypeValue")
+ private String busTypeValue;
+
+ //数量
+ @ExportEntityMap(CnName = "数量", EnName = "count")
+ private String count;
+
+ //出入库后的库存
+ @ExportEntityMap(CnName = "出入库后的库存", EnName = "currentCount")
+ private String currentCount;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordListQuery.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordListQuery.java
new file mode 100644
index 0000000..eb1e0c7
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryRecordListQuery.java
@@ -0,0 +1,49 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.yxt.common.core.query.Query;
+import lombok.Data;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryRecordListQuery implements Query {
+
+ //商品ID
+ private String goodsID;
+
+ //商品名称
+ private String goodsSpuName;
+
+ //商品编码
+ private String goodsSkuCode;
+
+ //仓库
+ private String warehouseName;
+
+ //库位
+ private String warehouseRackCode;
+
+ //厂家
+ private String manufacturerName;
+
+ //车架号
+ private String vinNo;
+
+ //来源单号
+ private String billNo;
+
+ //单据类型
+ private String billType;
+
+ //业务类型
+ private String busTypeValue;
+
+ //发生时间开始时间
+ private String createTimeStart;
+
+ //发生时间结束时间
+ private String createTimeEnd;
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryService.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryService.java
new file mode 100644
index 0000000..32d7fc2
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryService.java
@@ -0,0 +1,15 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import com.yxt.common.base.service.MybatisBaseService;
+import org.springframework.stereotype.Service;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Service
+public class WarehouseOldInventoryService extends MybatisBaseService {
+
+
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryVo.java b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryVo.java
new file mode 100644
index 0000000..a06578e
--- /dev/null
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseoldinventory/WarehouseOldInventoryVo.java
@@ -0,0 +1,60 @@
+package com.yxt.warehouse.biz.warehouseoldinventory;
+
+import lombok.Data;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @description:
+ * @author: dimengzhe
+ * @date: 2024/4/28
+ **/
+@Data
+public class WarehouseOldInventoryVo {
+
+ private String sid;
+
+ //商品ID
+ private String goodsID;
+
+ //商品名称
+ private String goodsSkuTitle;
+
+ //商品编码
+ private String goodsSkuCode;
+
+ //厂家
+ private String manufacturerName;
+
+ //规格
+ private String goodsSkuOwnSpec;
+
+ //单位
+ private String unit;
+
+ //数量
+ private String count;
+
+ //已入库数量
+ private String inCount;
+
+ //维修工单编号
+ private String billNo;
+
+ //客户名称
+ private String customerName;
+
+ //车牌号
+ private String vehMark;
+
+ //车架号
+ private String vinNo;
+
+ //旧件回收说明
+ private String shortss;
+ private String photos;
+
+ //旧件照片
+ private List photosList = new ArrayList<>();
+}
diff --git a/src/main/java/com/yxt/warehouse/biz/warehouseshelfbill/WarehouseShelfBillService.java b/src/main/java/com/yxt/warehouse/biz/warehouseshelfbill/WarehouseShelfBillService.java
index 47563a7..a8cd142 100644
--- a/src/main/java/com/yxt/warehouse/biz/warehouseshelfbill/WarehouseShelfBillService.java
+++ b/src/main/java/com/yxt/warehouse/biz/warehouseshelfbill/WarehouseShelfBillService.java
@@ -105,7 +105,7 @@ public class WarehouseShelfBillService extends MybatisBaseService