From 5df2b3459835286f31be2217d0113a6741f4e1f1 Mon Sep 17 00:00:00 2001 From: fanzongzhe <285169773@qq.com> Date: Fri, 23 Aug 2024 11:59:40 +0800 Subject: [PATCH] =?UTF-8?q?app=E5=BA=93=E5=AD=98=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../AppInventorySearchFeign.java | 39 ++++ .../inventorySearch/InventorySearchQuery.java | 20 ++ .../wms/inventorySearch/OldStorageListVo.java | 50 +++++ .../api/wms/inventorySearch/OldStorageVo.java | 18 ++ .../wms/inventorySearch/StorageListVo.java | 52 +++++ .../api/wms/inventorySearch/StorageVo.java | 18 ++ .../anrui/terminal/TerminalApplication.java | 2 +- .../AppInventorySearchRest.java | 66 ++++++ .../AppInventorySearchService.java | 54 +++++ .../fegin/wmsInventory/WmsInventoryFeign.java | 34 +++ .../apiadmin/inventroy/WmsInventoryRest.java | 34 ++- .../wmsinventory/WmsInventoryMapper.java | 6 + .../wmsinventory/WmsInventoryMapper.xml | 77 +++++++ .../wmsinventory/WmsInventoryService.java | 206 ++++++++++++++++++ .../appInventory/InventorySearchQuery.java | 20 ++ .../appInventory/OldStorageListVo.java | 50 +++++ .../appInventory/OldStorageVo.java | 18 ++ .../appInventory/StorageListVo.java | 52 +++++ .../wmsinventory/appInventory/StorageVo.java | 18 ++ 19 files changed, 826 insertions(+), 8 deletions(-) create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/AppInventorySearchFeign.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/InventorySearchQuery.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageListVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageListVo.java create mode 100644 anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageVo.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchRest.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchService.java create mode 100644 anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventoryFeign.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/InventorySearchQuery.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageListVo.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageVo.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageListVo.java create mode 100644 yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageVo.java diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/AppInventorySearchFeign.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/AppInventorySearchFeign.java new file mode 100644 index 0000000000..8ebbc7ab32 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/AppInventorySearchFeign.java @@ -0,0 +1,39 @@ +package com.yxt.anrui.terminal.api.wms.inventorySearch; + + +import com.yxt.anrui.terminal.api.wms.inventoryprofitin.AppInventoryProfitinDetailsVo; +import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.AppDelegateQuery; +import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.InventInDto; +import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.InventInQuery; +import com.yxt.anrui.terminal.api.wms.inventoryprofitin.flowable.InventInTaskQuery; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.cloud.openfeign.SpringQueryMap; +import org.springframework.web.bind.annotation.*; + +/** + * @Author + * @Date + * @Description + */ +@Api(tags = "库存查询") +@FeignClient( + contextId = "terminal-AppInventorySearch", + name = "anrui-terminal", + path = "v1/search") +public interface AppInventorySearchFeign { + + @ApiOperation("app库存查询") + @PostMapping("/storage") + public ResultBean> appStorage(@RequestBody PagerQuery pq); + + @ApiOperation("app旧件库存查询") + @PostMapping("/oldParts") + public ResultBean> appOldStorage(@RequestBody PagerQuery pq); + + +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/InventorySearchQuery.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/InventorySearchQuery.java new file mode 100644 index 0000000000..f043c884fb --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/InventorySearchQuery.java @@ -0,0 +1,20 @@ +package com.yxt.anrui.terminal.api.wms.inventorySearch; + +import com.yxt.common.core.query.Query; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/8/23 8:50 + */ +@Data +public class InventorySearchQuery implements Query { + + private String name; + private String userSid; + private String menuSid; + private String orgPath; + + +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageListVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageListVo.java new file mode 100644 index 0000000000..e89561ff12 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageListVo.java @@ -0,0 +1,50 @@ +package com.yxt.anrui.terminal.api.wms.inventorySearch; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/8/23 9:13 + */ +@Data +public class OldStorageListVo { + + /** + * 车架号/车牌号 + */ + private String carCodeInfo; + /** + * 数量 + */ + private String count; + /** + * 厂家 + */ + private String factory; + /** + * 商品ID + */ + private String goodsID; + /** + * 图号 + */ + private String goodsSkuCode; + /** + * 规格 + */ + private String goodsSkuOwnSpec; + /** + * 商品名称 + */ + private String goodsSpuName; + /** + * 维修单号 + */ + private String repairId; + /** + * 单位 + */ + private String unit; + private String title; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageVo.java new file mode 100644 index 0000000000..4ba78f8a87 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/OldStorageVo.java @@ -0,0 +1,18 @@ +package com.yxt.anrui.terminal.api.wms.inventorySearch; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Fan + * @description + * @date 2024/8/23 9:15 + */ +@Data +public class OldStorageVo { + + private String title; + private List list = new ArrayList<>(); +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageListVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageListVo.java new file mode 100644 index 0000000000..d352e86e2c --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageListVo.java @@ -0,0 +1,52 @@ +package com.yxt.anrui.terminal.api.wms.inventorySearch; + +import lombok.Data; + +@Data +public class StorageListVo { + /** + * 数量 + */ + private String count; + /** + * 厂家 + */ + private String factory; + /** + * 商品ID + */ + private String goodsID; + /** + * 图号 + */ + private String goodsSkuCode; + /** + * 规格 + */ + private String goodsSkuOwnSpec; + /** + * 商品名称 + */ + private String goodsSpuName; + /** + * 库龄 + */ + private String inventoryAge; + /** + * 入库单价 + */ + private String price; + /** + * 供应商 + */ + private String provider; + /** + * 税率 + */ + private String rate; + /** + * 单位 + */ + private String unit; + private String title; +} diff --git a/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageVo.java b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageVo.java new file mode 100644 index 0000000000..02a985d6f4 --- /dev/null +++ b/anrui-terminal/anrui-terminal-api/src/main/java/com/yxt/anrui/terminal/api/wms/inventorySearch/StorageVo.java @@ -0,0 +1,18 @@ +package com.yxt.anrui.terminal.api.wms.inventorySearch; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Fan + * @description + * @date 2024/8/23 9:11 + */ +@Data +public class StorageVo { + + private String title; + private List list = new ArrayList<>(); +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/TerminalApplication.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/TerminalApplication.java index 7367454815..112e2ebd80 100644 --- a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/TerminalApplication.java +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/TerminalApplication.java @@ -15,7 +15,7 @@ import org.springframework.cloud.openfeign.EnableFeignClients; "com.yxt.anrui.terminal", "com.yxt.common.base.config" },exclude = {DataSourceAutoConfiguration.class}) -@EnableFeignClients(basePackages = {"com.yxt.anrui.portal", "com.yxt.anrui.crm", "com.yxt.anrui.base", "com.yxt.anrui.riskcenter","com.yxt.anrui.flowable","com.yxt.anrui.buscenter","com.yxt.anrui.scm","com.yxt.anrui.fin", "com.yxt.anrui.terminal.fegin.wmsinventorycheckbill","com.yxt.anrui.terminal.fegin.wmsinventoryprofitin","com.yxt.anrui.terminal.fegin.wmsinventoryprofitout","com.yxt.anrui.terminal.fegin.basegoodssku","com.yxt.anrui.terminal.fegin.basesupplierinfo"}) +@EnableFeignClients(basePackages = {"com.yxt.anrui.portal", "com.yxt.anrui.crm", "com.yxt.anrui.base", "com.yxt.anrui.riskcenter","com.yxt.anrui.flowable","com.yxt.anrui.buscenter","com.yxt.anrui.scm","com.yxt.anrui.fin", "com.yxt.anrui.terminal.fegin.wmsinventorycheckbill","com.yxt.anrui.terminal.fegin.wmsinventoryprofitin","com.yxt.anrui.terminal.fegin.wmsinventoryprofitout","com.yxt.anrui.terminal.fegin.basegoodssku","com.yxt.anrui.terminal.fegin.basesupplierinfo","com.yxt.anrui.terminal.fegin.wmsInventory"}) public class TerminalApplication { public static void main(String[] args) { diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchRest.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchRest.java new file mode 100644 index 0000000000..0e3d4e07d0 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchRest.java @@ -0,0 +1,66 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.biz.wms.inventorySearch; + +import com.yxt.anrui.terminal.api.wms.inventorySearch.AppInventorySearchFeign; +import com.yxt.anrui.terminal.api.wms.inventorySearch.InventorySearchQuery; +import com.yxt.anrui.terminal.api.wms.inventorySearch.OldStorageVo; +import com.yxt.anrui.terminal.api.wms.inventorySearch.StorageVo; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.AppInventoryProfitoutDetailsVo; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.AppInventoryProfitoutFeign; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.AppDelegateQuery; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutDto; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutQuery; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutTaskQuery; +import com.yxt.anrui.terminal.fegin.wmsInventory.WmsInventoryFeign; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.Api; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import javax.annotation.Resource; + +@Api(tags = "库存查询") +@RestController +@RequestMapping("v1/search") +public class AppInventorySearchRest implements AppInventorySearchFeign { + + @Resource + private WmsInventoryFeign wmsInventoryFeign; + + @Override + public ResultBean> appStorage(PagerQuery pq) { + return wmsInventoryFeign.appStorage(pq); + } + + @Override + public ResultBean> appOldStorage(PagerQuery pq) { + return wmsInventoryFeign.appOldStorage(pq); + } +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchService.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchService.java new file mode 100644 index 0000000000..a72336a409 --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/biz/wms/inventorySearch/AppInventorySearchService.java @@ -0,0 +1,54 @@ +/********************************************************* + ********************************************************* + ******************** ******************* + ************* ************ + ******* _oo0oo_ ******* + *** o8888888o *** + * 88" . "88 * + * (| -_- |) * + * 0\ = /0 * + * ___/`---'\___ * + * .' \\| |// '. * + * / \\||| : |||// \ * + * / _||||| -:- |||||- \ * + * | | \\\ - /// | | * + * | \_| ''\---/'' |_/ | * + * \ .-\__ '-' ___/-. / * + * ___'. .' /--.--\ `. .'___ * + * ."" '< `.___\_<|>_/___.' >' "". * + * | | : `- \`.;`\ _ /`;.`/ - ` : | | * + * \ \ `_. \_ __\ /__ _/ .-` / / * + * =====`-.____`.___ \_____/___.-`___.-'===== * + * `=---=' * + * ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * + *********__佛祖保佑__永无BUG__验收通过__钞票多多__********* + *********************************************************/ +package com.yxt.anrui.terminal.biz.wms.inventorySearch; + +import cn.hutool.core.bean.BeanUtil; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrg; +import com.yxt.anrui.portal.api.sysstafforg.SysStaffOrgFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserFeign; +import com.yxt.anrui.portal.api.sysuser.SysUserVo; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.AppInventoryProfitoutDetailsVo; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.AppDelegateQuery; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutDto; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutQuery; +import com.yxt.anrui.terminal.api.wms.inventoryprofitout.flowable.InventOutTaskQuery; +import com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.WmsInventoryProfitoutDetailsVo; +import com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.WmsInventoryProfitoutFeign; +import com.yxt.anrui.terminal.fegin.wmsinventoryprofitout.flowable.*; +import com.yxt.common.core.result.ResultBean; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.Collections; +import java.util.List; + +@Service +public class AppInventorySearchService { + + + +} diff --git a/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventoryFeign.java b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventoryFeign.java new file mode 100644 index 0000000000..603c088c1a --- /dev/null +++ b/anrui-terminal/anrui-terminal-biz/src/main/java/com/yxt/anrui/terminal/fegin/wmsInventory/WmsInventoryFeign.java @@ -0,0 +1,34 @@ +package com.yxt.anrui.terminal.fegin.wmsInventory; + +import com.yxt.anrui.terminal.api.wms.inventorySearch.InventorySearchQuery; +import com.yxt.anrui.terminal.api.wms.inventorySearch.OldStorageVo; +import com.yxt.anrui.terminal.api.wms.inventorySearch.StorageVo; +import com.yxt.common.core.query.PagerQuery; +import com.yxt.common.core.result.ResultBean; +import com.yxt.common.core.vo.PagerVo; +import io.swagger.annotations.ApiOperation; +import org.springframework.cloud.openfeign.FeignClient; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.RequestParam; + +/** + * @description: 商品基础信息 + * @author: fzz + * @date: 2024/3/7 + **/ +@FeignClient( + contextId = "yxt-wms-WmsInventory", + name = "yxt-wms", + path = "apiadmin/inventory/wmsinventory" +) +public interface WmsInventoryFeign { + + @ApiOperation("app库存查询") + @PostMapping("/appStorage") + public ResultBean> appStorage(@RequestBody PagerQuery pq); + + @ApiOperation("app旧件库存查询") + @PostMapping("/appOldStorage") + public ResultBean> appOldStorage(@RequestBody PagerQuery pq); +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryRest.java b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryRest.java index b2624c0359..e678db5cb9 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryRest.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/apiadmin/inventroy/WmsInventoryRest.java @@ -11,6 +11,9 @@ import com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryService; import com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryVo; import com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryBillUseOrgSidQuery; import com.yxt.wms.biz.inventory.wmsinventory.WmsInventoryBillUseOrgSidVo; +import com.yxt.wms.biz.inventory.wmsinventory.appInventory.InventorySearchQuery; +import com.yxt.wms.biz.inventory.wmsinventory.appInventory.OldStorageVo; +import com.yxt.wms.biz.inventory.wmsinventory.appInventory.StorageVo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; @@ -50,13 +53,6 @@ public class WmsInventoryRest { return rb.success().setData(pv); } - @ApiOperation("配件库存查询") - @PostMapping("/fittingsInventory2") - public ResultBean> fittingsInventory2(@RequestBody PagerQuery pq) { - ResultBean> rb = ResultBean.fireFail(); - PagerVo pv = wmsInventoryService.fittingsInventory(pq); - return rb.success().setData(pv); - } @ApiOperation("分页列表") @PostMapping("/listPage") @@ -220,4 +216,28 @@ public class WmsInventoryRest { return rb.success().setData(pv); } + //-----------------------------app------------------------------------------- + @ApiOperation("app配件库存查询") + @PostMapping("/fittingsInventory2") + public ResultBean> fittingsInventory2(@RequestBody PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = wmsInventoryService.fittingsInventory(pq); + return rb.success().setData(pv); + } + + @ApiOperation("app库存查询") + @PostMapping("/appStorage") + public ResultBean> appStorage(@RequestBody PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = wmsInventoryService.appStorage(pq); + return rb.success().setData(pv); + } + + @ApiOperation("app旧件库存查询") + @PostMapping("/appOldStorage") + public ResultBean> appOldStorage(@RequestBody PagerQuery pq) { + ResultBean> rb = ResultBean.fireFail(); + PagerVo pv = wmsInventoryService.appOldStorage(pq); + return rb.success().setData(pv); + } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java index ed427b2d26..7e3a39ff82 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.java @@ -8,6 +8,8 @@ import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsListTagH5Vo; import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsTagH5Vo; import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackH5Vo; import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackListVo; +import com.yxt.wms.biz.inventory.wmsinventory.appInventory.OldStorageListVo; +import com.yxt.wms.biz.inventory.wmsinventory.appInventory.StorageListVo; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -70,4 +72,8 @@ public interface WmsInventoryMapper extends BaseMapper { IPage selInvenGoodsByUseOrgSid(IPage page,@Param(Constants.WRAPPER) QueryWrapper qw); IPage fittingsInventory(IPage page, @Param(Constants.WRAPPER) QueryWrapper qw); + + List appStorage(@Param(Constants.WRAPPER) QueryWrapper qw); + + List appOldStorage(@Param(Constants.WRAPPER) QueryWrapper qw); } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml index 09f38b2777..0f6ef3e967 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryMapper.xml @@ -410,4 +410,81 @@ ${ew.sqlSegment} + + diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java index aa63659876..71baf1f9fe 100644 --- a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/WmsInventoryService.java @@ -16,6 +16,7 @@ import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsListTagH5Vo; import com.yxt.wms.biz.inventory.wmsinventory.appH5.GoodsTagH5Vo; import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackH5Vo; import com.yxt.wms.biz.inventory.wmsinventory.appH5.HouseRackListVo; +import com.yxt.wms.biz.inventory.wmsinventory.appInventory.*; import com.yxt.wms.biz.inventory.wmsinventorybill.WmsInventoryBill; import com.yxt.wms.biz.inventory.wmsinventorybill.WmsInventoryBillService; import com.yxt.wms.biz.inventory.wmsshelfbill.WmsShelfBill; @@ -35,6 +36,7 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.math.BigDecimal; import java.util.*; +import java.util.stream.Collectors; /** * @author wangpengfei @@ -698,4 +700,208 @@ public class WmsInventoryService extends MybatisBaseService p = PagerUtil.pageToVo(pagging, null); return p; } + + public PagerVo appStorage(PagerQuery pq) { + PagerVo pagerVo = new PagerVo<>(); + InventorySearchQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setUserSid(query.getUserSid()); + privilegeQuery.setMenuSid(query.getMenuSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("s.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("s.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("s.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("s.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("i.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + //ToDo:添加查询条件 + if (StringUtils.isNotBlank(query.getName())) { + qw.and(wrapper -> wrapper.like("i.warehouseName", query.getName()) + .or().like("a.areaName", query.getName()) + .or().like("i.warehouseRackCode", query.getName()) + .or().like("i.goodsSpuName", query.getName()) + .or().like("i.manufacturerName", query.getName()) + .or().like("i.billObjName", query.getName()) + .or().like("i.goodsSkuCode", query.getName()) + ); + } + List listVos = baseMapper.appStorage(qw); + Map> stringListMap = listVos.stream().collect(Collectors.groupingBy(StorageListVo::getTitle)); + List records = new ArrayList<>(); + if (!stringListMap.isEmpty()) { + for (Map.Entry > entry : stringListMap.entrySet()) { + StorageVo vo = new StorageVo(); + vo.setTitle(entry.getKey()); + vo.setList(entry.getValue()); + records.add(vo); + } + } + if (!records.isEmpty()) { + List lastList = this.pageBySubList1(records, (int) pq.getSize(), (int) pq.getCurrent()); + pagerVo.setRecords(lastList); + pagerVo.setTotal(records.size()); + pagerVo.setCurrent(pq.getCurrent()); + pagerVo.setSize(pq.getSize()); + if (records.size() % pq.getSize() != 0L) { + pagerVo.setPages((records.size() / pq.getSize()) + 1); + } else { + pagerVo.setPages(records.size() / pq.getSize()); + } + pagerVo.setMsg("当前共查询到" + records.size() + "条记录"); + } + return pagerVo; + } + + /** + * 分页方法 + */ + public List pageBySubList1(List list, int pagesize, int currentPage) { + int totalcount = list.size(); + int pagecount = 0; + List subList; + int m = totalcount % pagesize; + if (m > 0) { + pagecount = totalcount / pagesize + 1; + } else { + pagecount = totalcount / pagesize; + } + if (m == 0) { + subList = list.subList((currentPage - 1) * pagesize, pagesize * (currentPage)); + } else { + if (currentPage == pagecount) { + subList = list.subList((currentPage - 1) * pagesize, totalcount); + } else { + subList = list.subList((currentPage - 1) * pagesize, pagesize * (currentPage)); + } + } + return subList; + } + + /** + * 分页方法 + */ + public List pageBySubList2(List list, int pagesize, int currentPage) { + int totalcount = list.size(); + int pagecount = 0; + List subList; + int m = totalcount % pagesize; + if (m > 0) { + pagecount = totalcount / pagesize + 1; + } else { + pagecount = totalcount / pagesize; + } + if (m == 0) { + subList = list.subList((currentPage - 1) * pagesize, pagesize * (currentPage)); + } else { + if (currentPage == pagecount) { + subList = list.subList((currentPage - 1) * pagesize, totalcount); + } else { + subList = list.subList((currentPage - 1) * pagesize, pagesize * (currentPage)); + } + } + return subList; + } + + public PagerVo appOldStorage(PagerQuery pq) { + PagerVo pagerVo = new PagerVo<>(); + InventorySearchQuery query = pq.getParams(); + QueryWrapper qw = new QueryWrapper<>(); + PrivilegeQuery privilegeQuery = new PrivilegeQuery(); + privilegeQuery.setOrgPath(query.getOrgPath()); + privilegeQuery.setUserSid(query.getUserSid()); + privilegeQuery.setMenuSid(query.getMenuSid()); + ResultBean defaultIdReltBean = sysUserFeign.selectPrivilegeLevel(privilegeQuery); + if (StringUtils.isNotBlank(defaultIdReltBean.getData())) { + //数据权限ID(1集团、2事业部、3分公司、4部门、5个人) + String orgSidPath = query.getOrgPath(); + orgSidPath = orgSidPath + "/"; + int i1 = orgSidPath.indexOf("/"); + int i2 = orgSidPath.indexOf("/", i1 + 1); + int i3 = orgSidPath.indexOf("/", i2 + 1); + int i4 = orgSidPath.indexOf("/", i3 + 1); + String orgLevelKey = defaultIdReltBean.getData(); + if ("1".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i1); + qw.like("a.orgSidPath", orgSidPath); + } else if ("2".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i2); + qw.like("a.orgSidPath", orgSidPath); + } else if ("3".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i3); + qw.like("a.orgSidPath", orgSidPath); + } else if ("4".equals(orgLevelKey)) { + orgSidPath = orgSidPath.substring(0, i4); + qw.like("a.orgSidPath", orgSidPath); + } else if ("5".equals(orgLevelKey)) { + qw.eq("a.createBySid", query.getUserSid()); + } else { + PagerVo p = new PagerVo<>(); + return p; + } + } else { + PagerVo p = new PagerVo<>(); + return p; + } + //ToDo:添加查询条件 + if (StringUtils.isNotBlank(query.getName())) { + qw.and(wrapper -> wrapper.like("a.title", query.getName()) + .or().like("a.goodsSpuName", query.getName()) + .or().like("a.manufacturerName", query.getName()) + .or().like("a.goodsSkuCode", query.getName()) + .or().like("a.repairId", query.getName()) + ); + } + List listVos = baseMapper.appOldStorage(qw); + Map> stringListMap = listVos.stream().collect(Collectors.groupingBy(OldStorageListVo::getTitle)); + List records = new ArrayList<>(); + if (!stringListMap.isEmpty()) { + for (Map.Entry > entry : stringListMap.entrySet()) { + OldStorageVo vo = new OldStorageVo(); + vo.setTitle(entry.getKey()); + vo.setList(entry.getValue()); + records.add(vo); + } + } + if (!records.isEmpty()) { + List lastList = this.pageBySubList2(records, (int) pq.getSize(), (int) pq.getCurrent()); + pagerVo.setRecords(lastList); + pagerVo.setTotal(records.size()); + pagerVo.setCurrent(pq.getCurrent()); + pagerVo.setSize(pq.getSize()); + if (records.size() % pq.getSize() != 0L) { + pagerVo.setPages((records.size() / pq.getSize()) + 1); + } else { + pagerVo.setPages(records.size() / pq.getSize()); + } + pagerVo.setMsg("当前共查询到" + records.size() + "条记录"); + } + return pagerVo; + } } diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/InventorySearchQuery.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/InventorySearchQuery.java new file mode 100644 index 0000000000..30028143fc --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/InventorySearchQuery.java @@ -0,0 +1,20 @@ +package com.yxt.wms.biz.inventory.wmsinventory.appInventory; + +import com.yxt.common.core.query.Query; +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/8/23 8:50 + */ +@Data +public class InventorySearchQuery implements Query { + + private String name; + private String userSid; + private String menuSid; + private String orgPath; + + +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageListVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageListVo.java new file mode 100644 index 0000000000..e085bdbaa2 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageListVo.java @@ -0,0 +1,50 @@ +package com.yxt.wms.biz.inventory.wmsinventory.appInventory; + +import lombok.Data; + +/** + * @author Fan + * @description + * @date 2024/8/23 9:13 + */ +@Data +public class OldStorageListVo { + + /** + * 车架号/车牌号 + */ + private String carCodeInfo; + /** + * 数量 + */ + private String count; + /** + * 厂家 + */ + private String factory; + /** + * 商品ID + */ + private String goodsID; + /** + * 图号 + */ + private String goodsSkuCode; + /** + * 规格 + */ + private String goodsSkuOwnSpec; + /** + * 商品名称 + */ + private String goodsSpuName; + /** + * 维修单号 + */ + private String repairId; + /** + * 单位 + */ + private String unit; + private String title; +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageVo.java new file mode 100644 index 0000000000..76fa235921 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/OldStorageVo.java @@ -0,0 +1,18 @@ +package com.yxt.wms.biz.inventory.wmsinventory.appInventory; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Fan + * @description + * @date 2024/8/23 9:15 + */ +@Data +public class OldStorageVo { + + private String title; + private List list = new ArrayList<>(); +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageListVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageListVo.java new file mode 100644 index 0000000000..0081858d0b --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageListVo.java @@ -0,0 +1,52 @@ +package com.yxt.wms.biz.inventory.wmsinventory.appInventory; + +import lombok.Data; + +@Data +public class StorageListVo { + /** + * 数量 + */ + private String count; + /** + * 厂家 + */ + private String factory; + /** + * 商品ID + */ + private String goodsID; + /** + * 图号 + */ + private String goodsSkuCode; + /** + * 规格 + */ + private String goodsSkuOwnSpec; + /** + * 商品名称 + */ + private String goodsSpuName; + /** + * 库龄 + */ + private String inventoryAge; + /** + * 入库单价 + */ + private String price; + /** + * 供应商 + */ + private String provider; + /** + * 税率 + */ + private String rate; + /** + * 单位 + */ + private String unit; + private String title; +} diff --git a/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageVo.java b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageVo.java new file mode 100644 index 0000000000..7b33fe08e9 --- /dev/null +++ b/yxt-wms-biz/src/main/java/com/yxt/wms/biz/inventory/wmsinventory/appInventory/StorageVo.java @@ -0,0 +1,18 @@ +package com.yxt.wms.biz.inventory.wmsinventory.appInventory; + +import lombok.Data; + +import java.util.ArrayList; +import java.util.List; + +/** + * @author Fan + * @description + * @date 2024/8/23 9:11 + */ +@Data +public class StorageVo { + + private String title; + private List list = new ArrayList<>(); +}