From d2e761122e4c1c1c027f20eb0cf6455b1f45bea6 Mon Sep 17 00:00:00 2001
From: cuilei <ray_tsu1@163.com>
Date: 星期一, 12 五月 2025 14:31:44 +0800
Subject: [PATCH] 工具管理-货架标签信息管理

---
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/WarehouseServiceImpl.java        |    6 
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/GoodsShelvesMark.java                  |   82 +++++++++
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/WarehouseMapper.xml                |    8 
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesMarkController.java    |  191 +++++++++++++++++++++
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesServiceImpl.java     |   13 +
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/WarehouseMapper.java                   |    3 
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/WarehouseController.java           |    8 
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesService.java             |    6 
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMapper.xml             |   16 +
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IWarehouseService.java                |    3 
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesMarkServiceImpl.java |   43 ++++
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMarkMapper.xml         |   31 +++
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMarkMapper.java            |   24 ++
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesController.java        |   17 +
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/vo/DictVo.java                         |   13 +
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesMarkService.java         |   19 ++
 lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMapper.java                |    8 
 17 files changed, 491 insertions(+), 0 deletions(-)

diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesController.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesController.java
index fb3ae25..18e7f87 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesController.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesController.java
@@ -13,6 +13,7 @@
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.tms.entity.GoodsShelves;
+import org.jeecg.modules.tms.entity.vo.DictVo;
 import org.jeecg.modules.tms.service.IGoodsShelvesService;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -71,6 +72,22 @@
 		IPage<GoodsShelves> pageList = goodsShelvesService.queryPageList(page, parameterMap);
 		return Result.OK(pageList);
 	}
+
+	@ApiOperation(value="tms_goods_shelves-閫氳繃浠撳簱id鏌ヨ璐ф灦瀛楀吀鏁版嵁", notes="tms_goods_shelves-閫氳繃浠撳簱id鏌ヨ璐ф灦瀛楀吀鏁版嵁")
+	@GetMapping(value = "queryGoodsShelvesDictList")
+	public Result<List<DictVo>> queryGoodsShelvesDictList(@RequestParam("warehouseId") String warehouseId) {
+		List<DictVo> list = goodsShelvesService.queryGoodsShelvesDictList(warehouseId);
+		return Result.OK(list);
+	}
+
+
+	@ApiOperation(value="tms_goods_shelves-閫氳繃浠撳簱id銆佽揣鏋剁紪鍙锋煡璇㈣揣鏋跺眰鏁板瓧鍏告暟鎹�", notes="tms_goods_shelves-閫氳繃浠撳簱id銆佽揣鏋剁紪鍙锋煡璇㈣揣鏋跺眰鏁板瓧鍏告暟鎹�")
+	@GetMapping(value = "queryGoodsShelvesStoreyDictList")
+	public Result<List<DictVo>> queryGoodsShelvesStoreyDictList(@RequestParam("warehouseId") String warehouseId,
+																@RequestParam("shelfNumber") String shelfNumber) {
+		List<DictVo> list = goodsShelvesService.queryGoodsShelvesStoreyDictList(warehouseId, shelfNumber);
+		return Result.OK(list);
+	}
 	
 	/**
 	 *   娣诲姞
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesMarkController.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesMarkController.java
new file mode 100644
index 0000000..17abb2a
--- /dev/null
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/GoodsShelvesMarkController.java
@@ -0,0 +1,191 @@
+package org.jeecg.modules.tms.controller;
+
+import java.util.Arrays;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+import java.io.IOException;
+import java.io.UnsupportedEncodingException;
+import java.net.URLDecoder;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import org.jeecg.common.api.vo.Result;
+import org.jeecg.common.system.query.QueryGenerator;
+import org.jeecg.common.util.oConvertUtils;
+import org.jeecg.modules.tms.entity.GoodsShelvesMark;
+import org.jeecg.modules.tms.service.IGoodsShelvesMarkService;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import lombok.extern.slf4j.Slf4j;
+
+import org.jeecgframework.poi.excel.ExcelImportUtil;
+import org.jeecgframework.poi.excel.def.NormalExcelConstants;
+import org.jeecgframework.poi.excel.entity.ExportParams;
+import org.jeecgframework.poi.excel.entity.ImportParams;
+import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
+import org.jeecg.common.system.base.controller.JeecgController;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.*;
+import org.springframework.web.multipart.MultipartFile;
+import org.springframework.web.multipart.MultipartHttpServletRequest;
+import org.springframework.web.servlet.ModelAndView;
+import com.alibaba.fastjson.JSON;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.jeecg.common.aspect.annotation.AutoLog;
+
+ /**
+ * @Description: tms_goods_shelves_mark
+ * @Author: jeecg-boot
+ * @Date:   2025-05-09
+ * @Version: V1.0
+ */
+@Api(tags="tms_goods_shelves_mark")
+@RestController
+@RequestMapping("/tms/goodsShelvesMark")
+@Slf4j
+public class GoodsShelvesMarkController extends JeecgController<GoodsShelvesMark, IGoodsShelvesMarkService> {
+	@Autowired
+	private IGoodsShelvesMarkService goodsShelvesMarkService;
+	
+	/**
+	 * 鍒嗛〉鍒楄〃鏌ヨ
+	 *
+	 * @param goodsShelvesMark
+	 * @param pageNo
+	 * @param pageSize
+	 * @param req
+	 * @return
+	 */
+	//@AutoLog(value = "tms_goods_shelves_mark-鍒嗛〉鍒楄〃鏌ヨ")
+	@ApiOperation(value="tms_goods_shelves_mark-鍒嗛〉鍒楄〃鏌ヨ", notes="tms_goods_shelves_mark-鍒嗛〉鍒楄〃鏌ヨ")
+	@GetMapping(value = "/list")
+	public Result<IPage<GoodsShelvesMark>> queryPageList(GoodsShelvesMark goodsShelvesMark,
+								   @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
+								   @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
+								   HttpServletRequest req) {
+		Map<String, String[]> parameterMap = req.getParameterMap();
+		Page<GoodsShelvesMark> page = new Page<GoodsShelvesMark>(pageNo, pageSize);
+		IPage<GoodsShelvesMark> pageList = goodsShelvesMarkService.queryPageList(page, parameterMap);
+		return Result.OK(pageList);
+	}
+	
+	/**
+	 *   娣诲姞
+	 *
+	 * @param goodsShelvesMark
+	 * @return
+	 */
+	@AutoLog(value = "tms_goods_shelves_mark-娣诲姞")
+	@ApiOperation(value="tms_goods_shelves_mark-娣诲姞", notes="tms_goods_shelves_mark-娣诲姞")
+	//@RequiresPermissions("org.jeecg.modules:tms_goods_shelves_mark:add")
+	@PostMapping(value = "/add")
+	public Result<String> add(@RequestBody GoodsShelvesMark goodsShelvesMark) {
+		goodsShelvesMarkService.save(goodsShelvesMark);
+		return Result.OK("娣诲姞鎴愬姛锛�");
+	}
+	
+	/**
+	 *  缂栬緫
+	 *
+	 * @param goodsShelvesMark
+	 * @return
+	 */
+	@AutoLog(value = "tms_goods_shelves_mark-缂栬緫")
+	@ApiOperation(value="tms_goods_shelves_mark-缂栬緫", notes="tms_goods_shelves_mark-缂栬緫")
+	//@RequiresPermissions("org.jeecg.modules:tms_goods_shelves_mark:edit")
+	@RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
+	public Result<String> edit(@RequestBody GoodsShelvesMark goodsShelvesMark) {
+		goodsShelvesMarkService.updateById(goodsShelvesMark);
+		return Result.OK("缂栬緫鎴愬姛!");
+	}
+	
+	/**
+	 *   閫氳繃id鍒犻櫎
+	 *
+	 * @param id
+	 * @return
+	 */
+	@AutoLog(value = "tms_goods_shelves_mark-閫氳繃id鍒犻櫎")
+	@ApiOperation(value="tms_goods_shelves_mark-閫氳繃id鍒犻櫎", notes="tms_goods_shelves_mark-閫氳繃id鍒犻櫎")
+	//@RequiresPermissions("org.jeecg.modules:tms_goods_shelves_mark:delete")
+	@DeleteMapping(value = "/delete")
+	public Result<String> delete(@RequestParam(name="id",required=true) String id) {
+		goodsShelvesMarkService.removeById(id);
+		return Result.OK("鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 *  鎵归噺鍒犻櫎
+	 *
+	 * @param ids
+	 * @return
+	 */
+	@AutoLog(value = "tms_goods_shelves_mark-鎵归噺鍒犻櫎")
+	@ApiOperation(value="tms_goods_shelves_mark-鎵归噺鍒犻櫎", notes="tms_goods_shelves_mark-鎵归噺鍒犻櫎")
+	//@RequiresPermissions("org.jeecg.modules:tms_goods_shelves_mark:deleteBatch")
+	@DeleteMapping(value = "/deleteBatch")
+	public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
+		this.goodsShelvesMarkService.removeByIds(Arrays.asList(ids.split(",")));
+		return Result.OK("鎵归噺鍒犻櫎鎴愬姛!");
+	}
+	
+	/**
+	 * 閫氳繃id鏌ヨ
+	 *
+	 * @param id
+	 * @return
+	 */
+	//@AutoLog(value = "tms_goods_shelves_mark-閫氳繃id鏌ヨ")
+	@ApiOperation(value="tms_goods_shelves_mark-閫氳繃id鏌ヨ", notes="tms_goods_shelves_mark-閫氳繃id鏌ヨ")
+	@GetMapping(value = "/queryById")
+	public Result<GoodsShelvesMark> queryById(@RequestParam(name="id",required=true) String id) {
+		GoodsShelvesMark goodsShelvesMark = goodsShelvesMarkService.getById(id);
+		if(goodsShelvesMark==null) {
+			return Result.error("鏈壘鍒板搴旀暟鎹�");
+		}
+		return Result.OK(goodsShelvesMark);
+	}
+
+	@ApiOperation(value="tms_goods_shelves_mark-鏁版嵁閲嶅鍊兼牎楠屾煡璇�", notes="tms_goods_shelves_mark-鏁版嵁閲嶅鍊兼牎楠屾煡璇�")
+	@GetMapping(value = "/duplicateCheckSelect")
+	public Result<List<GoodsShelvesMark>> duplicateCheckSelect(@RequestParam("warehouseId") String warehouseId,
+															   @RequestParam("goodsShelves") String goodsShelves,
+															   @RequestParam("storey") String storey) {
+		List<GoodsShelvesMark> list = goodsShelvesMarkService.list(new LambdaQueryWrapper<GoodsShelvesMark>()
+				.eq(GoodsShelvesMark::getWarehouseId, warehouseId)
+				.eq(GoodsShelvesMark::getGoodsShelves, goodsShelves)
+				.eq(GoodsShelvesMark::getStorey, storey));
+		return Result.OK(list);
+	}
+
+    /**
+    * 瀵煎嚭excel
+    *
+    * @param request
+    * @param goodsShelvesMark
+    */
+    //@RequiresPermissions("org.jeecg.modules:tms_goods_shelves_mark:exportXls")
+    @RequestMapping(value = "/exportXls")
+    public ModelAndView exportXls(HttpServletRequest request, GoodsShelvesMark goodsShelvesMark) {
+        return super.exportXls(request, goodsShelvesMark, GoodsShelvesMark.class, "tms_goods_shelves_mark");
+    }
+
+    /**
+      * 閫氳繃excel瀵煎叆鏁版嵁
+    *
+    * @param request
+    * @param response
+    * @return
+    */
+    //@RequiresPermissions("tms_goods_shelves_mark:importExcel")
+    @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
+    public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
+        return super.importExcel(request, response, GoodsShelvesMark.class);
+    }
+
+}
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/WarehouseController.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/WarehouseController.java
index 4b2b3c4..c0b9282 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/WarehouseController.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/controller/WarehouseController.java
@@ -15,6 +15,7 @@
 import org.jeecg.common.system.query.QueryGenerator;
 import org.jeecg.common.util.oConvertUtils;
 import org.jeecg.modules.tms.entity.Warehouse;
+import org.jeecg.modules.tms.entity.vo.DictVo;
 import org.jeecg.modules.tms.service.IWarehouseService;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
@@ -74,6 +75,13 @@
 		return Result.OK(pageList);
 	}
 
+	@ApiOperation(value="tms_warehouse-鍔犺浇瀛楀吀鏁版嵁", notes="tms_warehouse-鍔犺浇瀛楀吀鏁版嵁")
+	@GetMapping(value = "/queryWarehouseDictList")
+	public Result<List<DictVo>> queryWarehouseDictList() {
+		List<DictVo> dictVoList = warehouseService.queryWarehouseDictList();
+		return Result.OK(dictVoList);
+	}
+
 	@ApiOperation(value="tms_warehouse-鍔犺浇鏍戝舰缁撴瀯鏁版嵁", notes="tms_warehouse-鍔犺浇鏍戝舰缁撴瀯鏁版嵁")
 	@GetMapping(value = "/loadTree")
 	public Result<?> loadTree() {
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/GoodsShelvesMark.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/GoodsShelvesMark.java
new file mode 100644
index 0000000..9f16365
--- /dev/null
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/GoodsShelvesMark.java
@@ -0,0 +1,82 @@
+package org.jeecg.modules.tms.entity;
+
+import java.io.Serializable;
+import java.io.UnsupportedEncodingException;
+import java.util.Date;
+import java.math.BigDecimal;
+
+import com.baomidou.mybatisplus.annotation.*;
+import lombok.Data;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import org.springframework.format.annotation.DateTimeFormat;
+import org.jeecgframework.poi.excel.annotation.Excel;
+import org.jeecg.common.aspect.annotation.Dict;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * @Description: tms_goods_shelves_mark
+ * @Author: jeecg-boot
+ * @Date:   2025-05-09
+ * @Version: V1.0
+ */
+@Data
+@TableName("tms_goods_shelves_mark")
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@ApiModel(value="tms_goods_shelves_mark瀵硅薄", description="tms_goods_shelves_mark")
+public class GoodsShelvesMark implements Serializable {
+    private static final long serialVersionUID = 1L;
+
+	/**涓婚敭*/
+	@TableId(type = IdType.ASSIGN_ID)
+    @ApiModelProperty(value = "涓婚敭")
+    private String id;
+	/**浠撳簱缂栧彿*/
+	@Excel(name = "浠撳簱缂栧彿", width = 15)
+    @ApiModelProperty(value = "浠撳簱缂栧彿")
+    private String warehouseId;
+    /**浠撳簱缂栧彿*/
+    @TableField(exist = false)
+    private String warehouseNum;
+    /**浠撳簱鍚嶇О*/
+    @TableField(exist = false)
+    private String warehouseName;
+	/**璐ф灦缂栧彿*/
+	@Excel(name = "璐ф灦缂栧彿", width = 15)
+    @ApiModelProperty(value = "璐ф灦缂栧彿")
+    private String goodsShelves;
+    /**璐ф灦鍚嶇О*/
+    @TableField(exist = false)
+    private String shelfName;
+	/**灞傛暟淇℃伅*/
+	@Excel(name = "灞傛暟淇℃伅", width = 15)
+    @ApiModelProperty(value = "灞傛暟淇℃伅")
+    private String storey;
+	/**鍝佺-鏍囨敞瀛樻斁鍒�鍏峰搧绉嶄俊鎭�*/
+	@Excel(name = "鍝佺-鏍囨敞瀛樻斁鍒�鍏峰搧绉嶄俊鎭�", width = 15)
+    @ApiModelProperty(value = "鍝佺-鏍囨敞瀛樻斁鍒�鍏峰搧绉嶄俊鎭�")
+    private String variety;
+	/**绉熸埛鍙�*/
+	@Excel(name = "绉熸埛鍙�", width = 15)
+    @ApiModelProperty(value = "绉熸埛鍙�")
+    private String tenantId;
+	/**鍒涘缓浜�*/
+    @ApiModelProperty(value = "鍒涘缓浜�")
+    private String createBy;
+	/**鍒涘缓鏃堕棿*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:ss")
+    @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+    private Date createTime;
+	/**鏇存柊浜�*/
+    @ApiModelProperty(value = "鏇存柊浜�")
+    private String updateBy;
+	/**鏇存柊鏃堕棿*/
+	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:ss")
+    @DateTimeFormat(pattern="yyyy-MM-dd HH:ss")
+    @ApiModelProperty(value = "鏇存柊鏃堕棿")
+    private Date updateTime;
+}
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/vo/DictVo.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/vo/DictVo.java
new file mode 100644
index 0000000..70123d7
--- /dev/null
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/entity/vo/DictVo.java
@@ -0,0 +1,13 @@
+package org.jeecg.modules.tms.entity.vo;
+
+import lombok.Data;
+
+/***
+ * 涓嬫媺妗嗗瓧鍏告煡璇㈠皝瑁呭璞�
+ */
+@Data
+public class DictVo {
+    private String value;
+    private String label;
+    private String title;
+}
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMapper.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMapper.java
index 4950b9d..fb89517 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMapper.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMapper.java
@@ -7,6 +7,9 @@
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.tms.entity.GoodsShelves;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.tms.entity.vo.DictVo;
+
+import java.util.List;
 
 /**
  * @Description: tms_goods_shelves
@@ -18,4 +21,9 @@
 
     IPage<GoodsShelves> queryPageList(Page<GoodsShelves> page,
                                       @Param(Constants.WRAPPER) Wrapper<GoodsShelves> queryWrapper);
+
+    List<DictVo> queryGoodsShelvesDictList(@Param("warehouseId") String warehouseId);
+
+    List<DictVo> queryGoodsShelvesStoreyDictList(@Param("warehouseId") String warehouseId,
+                                                 @Param("shelfNumber") String shelfNumber);
 }
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMarkMapper.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMarkMapper.java
new file mode 100644
index 0000000..dad9aa5
--- /dev/null
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/GoodsShelvesMarkMapper.java
@@ -0,0 +1,24 @@
+package org.jeecg.modules.tms.mapper;
+
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.conditions.Wrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Constants;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.apache.ibatis.annotations.Param;
+import org.jeecg.modules.tms.entity.GoodsShelvesMark;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * @Description: tms_goods_shelves_mark
+ * @Author: jeecg-boot
+ * @Date:   2025-05-09
+ * @Version: V1.0
+ */
+public interface GoodsShelvesMarkMapper extends BaseMapper<GoodsShelvesMark> {
+
+    IPage<GoodsShelvesMark> queryPageList(Page<GoodsShelvesMark> page,
+                                          @Param(Constants.WRAPPER) Wrapper<GoodsShelvesMark> queryWrapper);
+}
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/WarehouseMapper.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/WarehouseMapper.java
index c63ca8f..8d69145 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/WarehouseMapper.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/WarehouseMapper.java
@@ -10,6 +10,7 @@
 import org.apache.ibatis.annotations.Param;
 import org.jeecg.modules.tms.entity.Warehouse;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.jeecg.modules.tms.entity.vo.DictVo;
 
 /**
  * @Description: tms_warehouse
@@ -21,4 +22,6 @@
 
     IPage<Warehouse> queryPageList(Page<Warehouse> page,
                                    @Param(Constants.WRAPPER) Wrapper<Warehouse> queryWrapper);
+
+    List<DictVo> queryWarehouseDictList();
 }
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMapper.xml b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMapper.xml
index ff45cb3..24e6248 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMapper.xml
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMapper.xml
@@ -22,4 +22,20 @@
         LEFT JOIN tms_warehouse p on t.warehouse_id = p.id
         ${ew.customSqlSegment}
     </select>
+    <select id="queryGoodsShelvesDictList" resultType="org.jeecg.modules.tms.entity.vo.DictVo">
+        SELECT DISTINCT
+            shelf_number value,
+            ISNULL(shelf_number, '') + '/' + ISNULL(shelf_name, '') label,
+            ISNULL(shelf_number, '') + '/' + ISNULL(shelf_name, '') title
+        FROM tms_goods_shelves
+        where warehouse_id = #{warehouseId}
+    </select>
+    <select id="queryGoodsShelvesStoreyDictList" resultType="org.jeecg.modules.tms.entity.vo.DictVo">
+        SELECT DISTINCT
+            storey value,
+            storey label,
+            storey title
+        FROM tms_goods_shelves
+        WHERE warehouse_id = #{warehouseId} AND shelf_number = #{shelfNumber}
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMarkMapper.xml b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMarkMapper.xml
new file mode 100644
index 0000000..ed11fcd
--- /dev/null
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/GoodsShelvesMarkMapper.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="org.jeecg.modules.tms.mapper.GoodsShelvesMarkMapper">
+
+    <select id="queryPageList" resultType="org.jeecg.modules.tms.entity.GoodsShelvesMark">
+        SELECT
+            t.id,
+            t.warehouse_id warehouseId,
+            p.warehouse_id warehouseNum,
+            p.warehouse_name warehouseName,
+            t.goods_shelves goodsShelves,
+            q.shelf_name shelfName,
+            t.storey,
+            t.variety,
+            t.tenant_id tenantId,
+            t.create_by createBy,
+            t.create_time createTime,
+            t.update_by updateBy,
+            t.update_time updateTime
+        FROM tms_goods_shelves_mark t
+        LEFT JOIN tms_warehouse p ON t.warehouse_id = p.id
+        LEFT JOIN (
+            SELECT DISTINCT
+                warehouse_id,
+                shelf_number,
+                shelf_name
+            FROM tms_goods_shelves
+        ) q ON t.warehouse_id = q.warehouse_id AND t.goods_shelves = q.shelf_number
+        ${ew.customSqlSegment}
+    </select>
+</mapper>
\ No newline at end of file
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/WarehouseMapper.xml b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/WarehouseMapper.xml
index 196972c..879252c 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/WarehouseMapper.xml
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/mapper/xml/WarehouseMapper.xml
@@ -22,4 +22,12 @@
         LEFT JOIN tms_warehouse p on t.parent_id = p.id
         ${ew.customSqlSegment}
     </select>
+    <select id="queryWarehouseDictList" resultType="org.jeecg.modules.tms.entity.vo.DictVo">
+        SELECT
+            id value,
+            ISNULL(warehouse_id, '') + '/' + ISNULL(warehouse_name, '') label,
+            ISNULL(warehouse_id, '') + '/' + ISNULL(warehouse_name, '') title
+        FROM tms_warehouse
+        WHERE status = '1' AND leaf_flag = '1'
+    </select>
 </mapper>
\ No newline at end of file
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesMarkService.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesMarkService.java
new file mode 100644
index 0000000..e6bec3d
--- /dev/null
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesMarkService.java
@@ -0,0 +1,19 @@
+package org.jeecg.modules.tms.service;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.modules.tms.entity.GoodsShelvesMark;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+import java.util.Map;
+
+/**
+ * @Description: tms_goods_shelves_mark
+ * @Author: jeecg-boot
+ * @Date:   2025-05-09
+ * @Version: V1.0
+ */
+public interface IGoodsShelvesMarkService extends IService<GoodsShelvesMark> {
+
+    IPage<GoodsShelvesMark> queryPageList(Page<GoodsShelvesMark> page, Map<String, String[]> parameterMap);
+}
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesService.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesService.java
index 9ee9b6b..2b7ddfc 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesService.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IGoodsShelvesService.java
@@ -4,7 +4,9 @@
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.jeecg.modules.tms.entity.GoodsShelves;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.tms.entity.vo.DictVo;
 
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -16,4 +18,8 @@
 public interface IGoodsShelvesService extends IService<GoodsShelves> {
 
     IPage<GoodsShelves> queryPageList(Page<GoodsShelves> page, Map<String, String[]> parameterMap);
+
+    List<DictVo> queryGoodsShelvesDictList(String warehouseId);
+
+    List<DictVo> queryGoodsShelvesStoreyDictList(String warehouseId, String shelfNumber);
 }
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IWarehouseService.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IWarehouseService.java
index cc79097..8f4d028 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IWarehouseService.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/IWarehouseService.java
@@ -5,6 +5,7 @@
 import org.jeecg.common.api.vo.CommonGenericTree;
 import org.jeecg.modules.tms.entity.Warehouse;
 import com.baomidou.mybatisplus.extension.service.IService;
+import org.jeecg.modules.tms.entity.vo.DictVo;
 
 import java.util.List;
 import java.util.Map;
@@ -20,4 +21,6 @@
     List<CommonGenericTree<Warehouse>> loadTree();
 
     IPage<Warehouse> queryPageList(Page<Warehouse> page, Map<String, String[]> parameterMap);
+
+    List<DictVo> queryWarehouseDictList();
 }
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesMarkServiceImpl.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesMarkServiceImpl.java
new file mode 100644
index 0000000..bc588b5
--- /dev/null
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesMarkServiceImpl.java
@@ -0,0 +1,43 @@
+package org.jeecg.modules.tms.service.impl;
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import org.jeecg.modules.tms.entity.GoodsShelvesMark;
+import org.jeecg.modules.tms.mapper.GoodsShelvesMarkMapper;
+import org.jeecg.modules.tms.service.IGoodsShelvesMarkService;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import java.util.Map;
+
+/**
+ * @Description: tms_goods_shelves_mark
+ * @Author: jeecg-boot
+ * @Date:   2025-05-09
+ * @Version: V1.0
+ */
+@Service
+public class GoodsShelvesMarkServiceImpl extends ServiceImpl<GoodsShelvesMarkMapper, GoodsShelvesMark> implements IGoodsShelvesMarkService {
+
+    @Override
+    public IPage<GoodsShelvesMark> queryPageList(Page<GoodsShelvesMark> page, Map<String, String[]> parameterMap) {
+        QueryWrapper<GoodsShelvesMark> queryWrapper = Wrappers.query();
+        String[] warehouseIds = parameterMap.get("warehouseId");
+        if (warehouseIds != null && warehouseIds.length > 0) {
+            queryWrapper.like("t.warehouse_id", warehouseIds[0]);
+        }
+        String[] goodsShelves = parameterMap.get("goodsShelves");
+        if (goodsShelves != null && goodsShelves.length > 0) {
+            queryWrapper.like("t.goods_shelves", goodsShelves[0]);
+        }
+        String[] storeys = parameterMap.get("storey");
+        if (storeys != null && storeys.length > 0) {
+            queryWrapper.eq("t.storey", storeys[0]);
+        }
+        queryWrapper.orderByDesc("t.create_time");
+        return this.baseMapper.queryPageList(page, queryWrapper);
+    }
+}
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesServiceImpl.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesServiceImpl.java
index 6f61777..de3d7a6 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesServiceImpl.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/GoodsShelvesServiceImpl.java
@@ -5,12 +5,15 @@
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.jeecg.modules.tms.entity.GoodsShelves;
+import org.jeecg.modules.tms.entity.vo.DictVo;
 import org.jeecg.modules.tms.mapper.GoodsShelvesMapper;
 import org.jeecg.modules.tms.service.IGoodsShelvesService;
 import org.springframework.stereotype.Service;
 
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 
+import java.util.Collections;
+import java.util.List;
 import java.util.Map;
 
 /**
@@ -52,4 +55,14 @@
         queryWrapper.orderByDesc("t.create_time");
         return this.baseMapper.queryPageList(page, queryWrapper);
     }
+
+    @Override
+    public List<DictVo> queryGoodsShelvesDictList(String warehouseId) {
+        return this.baseMapper.queryGoodsShelvesDictList(warehouseId);
+    }
+
+    @Override
+    public List<DictVo> queryGoodsShelvesStoreyDictList(String warehouseId, String shelfNumber) {
+        return this.baseMapper.queryGoodsShelvesStoreyDictList(warehouseId, shelfNumber);
+    }
 }
diff --git a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/WarehouseServiceImpl.java b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/WarehouseServiceImpl.java
index 50083ca..0f7b148 100644
--- a/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/WarehouseServiceImpl.java
+++ b/lxzn-module-tms/src/main/java/org/jeecg/modules/tms/service/impl/WarehouseServiceImpl.java
@@ -10,6 +10,7 @@
 import org.jeecg.common.constant.CommonConstant;
 import org.jeecg.common.util.StrUtils;
 import org.jeecg.modules.tms.entity.Warehouse;
+import org.jeecg.modules.tms.entity.vo.DictVo;
 import org.jeecg.modules.tms.mapper.WarehouseMapper;
 import org.jeecg.modules.tms.service.IWarehouseService;
 import org.springframework.stereotype.Service;
@@ -57,6 +58,11 @@
         return this.baseMapper.queryPageList(page, queryWrapper);
     }
 
+    @Override
+    public List<DictVo> queryWarehouseDictList() {
+        return this.baseMapper.queryWarehouseDictList();
+    }
+
     private List<CommonGenericTree<Warehouse>> loadTree(List<Warehouse> warehouseList) {
         Warehouse warehouse = new Warehouse();
         List<CommonGenericTree<Warehouse>> list = new ArrayList<>();

--
Gitblit v1.9.3