Procházet zdrojové kódy

基础配置 - 仓库管理页面开发
出入库 - 手动入库页面开发
出入库 - 手动出库页面开发

ControlDream před 2 roky
rodič
revize
e03169d292
37 změnil soubory, kde provedl 1376 přidání a 0 odebrání
  1. 68 0
      admin/src/main/java/com/fjhx/admin/controller/stock/StockController.java
  2. 68 0
      admin/src/main/java/com/fjhx/admin/controller/stock/StockJournalController.java
  3. 68 0
      admin/src/main/java/com/fjhx/admin/controller/stock/StockJournalDetailsController.java
  4. 68 0
      admin/src/main/java/com/fjhx/admin/controller/warehouse/WarehouseController.java
  5. 23 0
      admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockDto.java
  6. 17 0
      admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalDetailsDto.java
  7. 17 0
      admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalDetailsSelectDto.java
  8. 17 0
      admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalDto.java
  9. 23 0
      admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalSelectDto.java
  10. 17 0
      admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockSelectDto.java
  11. 39 0
      admin/src/main/java/com/fjhx/admin/entity/stock/po/Stock.java
  12. 32 0
      admin/src/main/java/com/fjhx/admin/entity/stock/po/StockJournal.java
  13. 39 0
      admin/src/main/java/com/fjhx/admin/entity/stock/po/StockJournalDetails.java
  14. 17 0
      admin/src/main/java/com/fjhx/admin/entity/stock/vo/StockJournalDetailsVo.java
  15. 34 0
      admin/src/main/java/com/fjhx/admin/entity/stock/vo/StockJournalVo.java
  16. 20 0
      admin/src/main/java/com/fjhx/admin/entity/stock/vo/StockVo.java
  17. 17 0
      admin/src/main/java/com/fjhx/admin/entity/warehouse/dto/WarehouseDto.java
  18. 20 0
      admin/src/main/java/com/fjhx/admin/entity/warehouse/dto/WarehouseSelectDto.java
  19. 37 0
      admin/src/main/java/com/fjhx/admin/entity/warehouse/po/Warehouse.java
  20. 17 0
      admin/src/main/java/com/fjhx/admin/entity/warehouse/vo/WarehouseVo.java
  21. 26 0
      admin/src/main/java/com/fjhx/admin/mapper/stock/StockJournalDetailsMapper.java
  22. 27 0
      admin/src/main/java/com/fjhx/admin/mapper/stock/StockJournalMapper.java
  23. 26 0
      admin/src/main/java/com/fjhx/admin/mapper/stock/StockMapper.java
  24. 26 0
      admin/src/main/java/com/fjhx/admin/mapper/warehouse/WarehouseMapper.java
  25. 46 0
      admin/src/main/java/com/fjhx/admin/service/stock/StockJournalDetailsService.java
  26. 46 0
      admin/src/main/java/com/fjhx/admin/service/stock/StockJournalService.java
  27. 46 0
      admin/src/main/java/com/fjhx/admin/service/stock/StockService.java
  28. 57 0
      admin/src/main/java/com/fjhx/admin/service/stock/impl/StockJournalDetailsServiceImpl.java
  29. 67 0
      admin/src/main/java/com/fjhx/admin/service/stock/impl/StockJournalServiceImpl.java
  30. 134 0
      admin/src/main/java/com/fjhx/admin/service/stock/impl/StockServiceImpl.java
  31. 46 0
      admin/src/main/java/com/fjhx/admin/service/warehouse/WarehouseService.java
  32. 58 0
      admin/src/main/java/com/fjhx/admin/service/warehouse/impl/WarehouseServiceImpl.java
  33. 18 0
      admin/src/main/resources/mapper/stock/StockJournalDetailsMapper.xml
  34. 43 0
      admin/src/main/resources/mapper/stock/StockJournalMapper.xml
  35. 18 0
      admin/src/main/resources/mapper/stock/StockMapper.xml
  36. 18 0
      admin/src/main/resources/mapper/warehouse/WarehouseMapper.xml
  37. 16 0
      code/pom.xml

+ 68 - 0
admin/src/main/java/com/fjhx/admin/controller/stock/StockController.java

@@ -0,0 +1,68 @@
+package com.fjhx.admin.controller.stock;
+
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockVo;
+import com.fjhx.admin.entity.stock.dto.StockSelectDto;
+import com.fjhx.admin.entity.stock.dto.StockDto;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.fjhx.admin.service.stock.StockService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+/**
+ * <p>
+ * 库存 前端控制器
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@RestController
+@RequestMapping("/stock")
+public class StockController {
+
+    @Autowired
+    private StockService stockService;
+
+    /**
+     * 库存分页
+     */
+    @PostMapping("/page")
+    public Page<StockVo> page(@RequestBody StockSelectDto dto) {
+        return stockService.getPage(dto);
+    }
+
+    /**
+     * 库存明细
+     */
+    @PostMapping("/detail")
+    public StockVo detail(@RequestBody BaseSelectDto dto) {
+        return stockService.detail(dto.getId());
+    }
+
+    /**
+     * 手动入库添加
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody StockDto stockDto) {
+        stockService.add(stockDto);
+    }
+
+    /**
+     * 库存编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody StockDto stockDto) {
+        stockService.edit(stockDto);
+    }
+
+    /**
+     * 库存删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        stockService.delete(dto.getId());
+    }
+
+}

+ 68 - 0
admin/src/main/java/com/fjhx/admin/controller/stock/StockJournalController.java

@@ -0,0 +1,68 @@
+package com.fjhx.admin.controller.stock;
+
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalVo;
+import com.fjhx.admin.entity.stock.dto.StockJournalSelectDto;
+import com.fjhx.admin.entity.stock.dto.StockJournalDto;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.fjhx.admin.service.stock.StockJournalService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+/**
+ * <p>
+ * 出入库记录 前端控制器
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@RestController
+@RequestMapping("/stockJournal")
+public class StockJournalController {
+
+    @Autowired
+    private StockJournalService stockJournalService;
+
+    /**
+     * 出入库记录分页
+     */
+    @PostMapping("/page")
+    public Page<StockJournalVo> page(@RequestBody StockJournalSelectDto dto) {
+        return stockJournalService.getPage(dto);
+    }
+
+    /**
+     * 出入库记录明细
+     */
+    @PostMapping("/detail")
+    public StockJournalVo detail(@RequestBody BaseSelectDto dto) {
+        return stockJournalService.detail(dto.getId());
+    }
+
+    /**
+     * 出入库记录新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody StockJournalDto stockJournalDto) {
+        stockJournalService.add(stockJournalDto);
+    }
+
+    /**
+     * 出入库记录编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody StockJournalDto stockJournalDto) {
+        stockJournalService.edit(stockJournalDto);
+    }
+
+    /**
+     * 出入库记录删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        stockJournalService.delete(dto.getId());
+    }
+
+}

+ 68 - 0
admin/src/main/java/com/fjhx/admin/controller/stock/StockJournalDetailsController.java

@@ -0,0 +1,68 @@
+package com.fjhx.admin.controller.stock;
+
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalDetailsVo;
+import com.fjhx.admin.entity.stock.dto.StockJournalDetailsSelectDto;
+import com.fjhx.admin.entity.stock.dto.StockJournalDetailsDto;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.fjhx.admin.service.stock.StockJournalDetailsService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+/**
+ * <p>
+ * 出入库记录明细 前端控制器
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@RestController
+@RequestMapping("/stockJournalDetails")
+public class StockJournalDetailsController {
+
+    @Autowired
+    private StockJournalDetailsService stockJournalDetailsService;
+
+    /**
+     * 出入库记录明细分页
+     */
+    @PostMapping("/page")
+    public Page<StockJournalDetailsVo> page(@RequestBody StockJournalDetailsSelectDto dto) {
+        return stockJournalDetailsService.getPage(dto);
+    }
+
+    /**
+     * 出入库记录明细明细
+     */
+    @PostMapping("/detail")
+    public StockJournalDetailsVo detail(@RequestBody BaseSelectDto dto) {
+        return stockJournalDetailsService.detail(dto.getId());
+    }
+
+    /**
+     * 出入库记录明细新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody StockJournalDetailsDto stockJournalDetailsDto) {
+        stockJournalDetailsService.add(stockJournalDetailsDto);
+    }
+
+    /**
+     * 出入库记录明细编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody StockJournalDetailsDto stockJournalDetailsDto) {
+        stockJournalDetailsService.edit(stockJournalDetailsDto);
+    }
+
+    /**
+     * 出入库记录明细删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        stockJournalDetailsService.delete(dto.getId());
+    }
+
+}

+ 68 - 0
admin/src/main/java/com/fjhx/admin/controller/warehouse/WarehouseController.java

@@ -0,0 +1,68 @@
+package com.fjhx.admin.controller.warehouse;
+
+import org.springframework.web.bind.annotation.*;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.warehouse.vo.WarehouseVo;
+import com.fjhx.admin.entity.warehouse.dto.WarehouseSelectDto;
+import com.fjhx.admin.entity.warehouse.dto.WarehouseDto;
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import com.fjhx.admin.service.warehouse.WarehouseService;
+import org.springframework.beans.factory.annotation.Autowired;
+
+
+/**
+ * <p>
+ * 仓库 前端控制器
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@RestController
+@RequestMapping("/warehouse")
+public class WarehouseController {
+
+    @Autowired
+    private WarehouseService warehouseService;
+
+    /**
+     * 仓库分页
+     */
+    @PostMapping("/page")
+    public Page<WarehouseVo> page(@RequestBody WarehouseSelectDto dto) {
+        return warehouseService.getPage(dto);
+    }
+
+    /**
+     * 仓库明细
+     */
+    @PostMapping("/detail")
+    public WarehouseVo detail(@RequestBody BaseSelectDto dto) {
+        return warehouseService.detail(dto.getId());
+    }
+
+    /**
+     * 仓库新增
+     */
+    @PostMapping("/add")
+    public void add(@RequestBody WarehouseDto warehouseDto) {
+        warehouseService.add(warehouseDto);
+    }
+
+    /**
+     * 仓库编辑
+     */
+    @PostMapping("/edit")
+    public void edit(@RequestBody WarehouseDto warehouseDto) {
+        warehouseService.edit(warehouseDto);
+    }
+
+    /**
+     * 仓库删除
+     */
+    @PostMapping("/delete")
+    public void delete(@RequestBody BaseSelectDto dto) {
+        warehouseService.delete(dto.getId());
+    }
+
+}

+ 23 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockDto.java

@@ -0,0 +1,23 @@
+package com.fjhx.admin.entity.stock.dto;
+
+import com.fjhx.admin.entity.stock.po.Stock;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 库存新增编辑入参实体
+ *
+ * @author
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockDto extends Stock {
+
+    /**
+     * 添加库存商品列表
+     */
+    private List<Stock> list;
+}

+ 17 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalDetailsDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.admin.entity.stock.dto;
+
+import com.fjhx.admin.entity.stock.po.StockJournalDetails;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 出入库记录明细新增编辑入参实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockJournalDetailsDto extends StockJournalDetails {
+
+}

+ 17 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalDetailsSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.admin.entity.stock.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 出入库记录明细列表查询入参实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockJournalDetailsSelectDto extends BaseSelectDto {
+
+}

+ 17 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.admin.entity.stock.dto;
+
+import com.fjhx.admin.entity.stock.po.StockJournal;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 出入库记录新增编辑入参实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockJournalDto extends StockJournal {
+
+}

+ 23 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockJournalSelectDto.java

@@ -0,0 +1,23 @@
+package com.fjhx.admin.entity.stock.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 出入库记录列表查询入参实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockJournalSelectDto extends BaseSelectDto {
+
+    /**搜索关键字*/
+    private String keywords;
+
+    /**记录类型 1为手动入库 2为手动出库*/
+    private Integer type;
+
+}

+ 17 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/dto/StockSelectDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.admin.entity.stock.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 库存列表查询入参实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockSelectDto extends BaseSelectDto {
+
+}

+ 39 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/po/Stock.java

@@ -0,0 +1,39 @@
+package com.fjhx.admin.entity.stock.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 库存
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+@TableName("stock")
+public class Stock extends BasePo {
+
+    /**
+     * 仓库id
+     */
+    private Long warehouseId;
+
+    /**
+     * 产品id
+     */
+    private Long productId;
+
+    /**
+     * 库存数量
+     */
+    private BigDecimal quantity;
+
+}

+ 32 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/po/StockJournal.java

@@ -0,0 +1,32 @@
+package com.fjhx.admin.entity.stock.po;
+
+import com.ruoyi.common.core.domain.BasePo;
+import com.baomidou.mybatisplus.annotation.TableName;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 出入库记录
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+@TableName("stock_journal")
+public class StockJournal extends BasePo {
+
+    /**
+     * 操作类型 1手动入库
+     */
+    private Integer type;
+
+    /**
+     * 仓库id
+     */
+    private Long warehouseId;
+
+}

+ 39 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/po/StockJournalDetails.java

@@ -0,0 +1,39 @@
+package com.fjhx.admin.entity.stock.po;
+
+import com.ruoyi.common.core.domain.BasePo;
+import com.baomidou.mybatisplus.annotation.TableName;
+
+import java.math.BigDecimal;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 出入库记录明细
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+@TableName("stock_journal_details")
+public class StockJournalDetails extends BasePo {
+
+    /**
+     * 出入库记录id
+     */
+    private Long stockJournalId;
+
+    /**
+     * 商品id
+     */
+    private Long productId;
+
+    /**
+     * 数量
+     */
+    private BigDecimal quantity;
+
+}

+ 17 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/vo/StockJournalDetailsVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.admin.entity.stock.vo;
+
+import com.fjhx.admin.entity.stock.po.StockJournalDetails;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 出入库记录明细列表查询返回值实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockJournalDetailsVo extends StockJournalDetails {
+
+}

+ 34 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/vo/StockJournalVo.java

@@ -0,0 +1,34 @@
+package com.fjhx.admin.entity.stock.vo;
+
+import com.fjhx.admin.entity.stock.dto.StockDto;
+import com.fjhx.admin.entity.stock.po.Stock;
+import com.fjhx.admin.entity.stock.po.StockJournal;
+import lombok.Getter;
+import lombok.Setter;
+
+import java.util.List;
+
+/**
+ * 出入库记录列表查询返回值实体
+ *
+ * @author
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockJournalVo extends StockJournal {
+
+    /**
+     * 仓库名称
+     */
+    private String warehouseName;
+
+    /**
+     * 操作人名称
+     */
+    private String userName;
+
+    /**手动入库商品明细*/
+    private List<StockVo> list;
+
+}

+ 20 - 0
admin/src/main/java/com/fjhx/admin/entity/stock/vo/StockVo.java

@@ -0,0 +1,20 @@
+package com.fjhx.admin.entity.stock.vo;
+
+import com.fjhx.admin.entity.stock.po.Stock;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 库存列表查询返回值实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class StockVo extends Stock {
+
+    /**产品名称*/
+    private String productName;
+
+}

+ 17 - 0
admin/src/main/java/com/fjhx/admin/entity/warehouse/dto/WarehouseDto.java

@@ -0,0 +1,17 @@
+package com.fjhx.admin.entity.warehouse.dto;
+
+import com.fjhx.admin.entity.warehouse.po.Warehouse;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 仓库新增编辑入参实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class WarehouseDto extends Warehouse {
+
+}

+ 20 - 0
admin/src/main/java/com/fjhx/admin/entity/warehouse/dto/WarehouseSelectDto.java

@@ -0,0 +1,20 @@
+package com.fjhx.admin.entity.warehouse.dto;
+
+import com.ruoyi.common.core.domain.BaseSelectDto;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 仓库列表查询入参实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class WarehouseSelectDto extends BaseSelectDto {
+
+    /**搜索关键字*/
+    private String keywords;
+
+}

+ 37 - 0
admin/src/main/java/com/fjhx/admin/entity/warehouse/po/Warehouse.java

@@ -0,0 +1,37 @@
+package com.fjhx.admin.entity.warehouse.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.domain.BasePo;
+import java.util.Date;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * <p>
+ * 仓库
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+@TableName("warehouse")
+public class Warehouse extends BasePo {
+
+    /**
+     * 仓库名称
+     */
+    private String name;
+
+    /**
+     * 仓库类型
+     */
+    private Integer type;
+
+    /**
+     * 备注
+     */
+    private String remark;
+
+}

+ 17 - 0
admin/src/main/java/com/fjhx/admin/entity/warehouse/vo/WarehouseVo.java

@@ -0,0 +1,17 @@
+package com.fjhx.admin.entity.warehouse.vo;
+
+import com.fjhx.admin.entity.warehouse.po.Warehouse;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 仓库列表查询返回值实体
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Getter
+@Setter
+public class WarehouseVo extends Warehouse {
+
+}

+ 26 - 0
admin/src/main/java/com/fjhx/admin/mapper/stock/StockJournalDetailsMapper.java

@@ -0,0 +1,26 @@
+package com.fjhx.admin.mapper.stock;
+
+import com.fjhx.admin.entity.stock.po.StockJournalDetails;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalDetailsVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 出入库记录明细 Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface StockJournalDetailsMapper extends BaseMapper<StockJournalDetails> {
+
+    /**
+     * 出入库记录明细分页
+     */
+    Page<StockJournalDetailsVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<StockJournalDetails> wrapper);
+
+}

+ 27 - 0
admin/src/main/java/com/fjhx/admin/mapper/stock/StockJournalMapper.java

@@ -0,0 +1,27 @@
+package com.fjhx.admin.mapper.stock;
+
+import com.fjhx.admin.entity.stock.po.StockJournal;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 出入库记录 Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface StockJournalMapper extends BaseMapper<StockJournal> {
+
+    /**
+     * 出入库记录分页
+     */
+    Page<StockJournalVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<StockJournal> wrapper);
+
+    StockJournalVo detail(@Param("ew") IWrapper<StockJournal> wrapper);
+}

+ 26 - 0
admin/src/main/java/com/fjhx/admin/mapper/stock/StockMapper.java

@@ -0,0 +1,26 @@
+package com.fjhx.admin.mapper.stock;
+
+import com.fjhx.admin.entity.stock.po.Stock;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 库存 Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface StockMapper extends BaseMapper<Stock> {
+
+    /**
+     * 库存分页
+     */
+    Page<StockVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<Stock> wrapper);
+
+}

+ 26 - 0
admin/src/main/java/com/fjhx/admin/mapper/warehouse/WarehouseMapper.java

@@ -0,0 +1,26 @@
+package com.fjhx.admin.mapper.warehouse;
+
+import com.fjhx.admin.entity.warehouse.po.Warehouse;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.warehouse.vo.WarehouseVo;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import org.apache.ibatis.annotations.Param;
+
+
+/**
+ * <p>
+ * 仓库 Mapper 接口
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface WarehouseMapper extends BaseMapper<Warehouse> {
+
+    /**
+     * 仓库分页
+     */
+    Page<WarehouseVo> getPage(@Param("page") Page<Object> page, @Param("ew") IWrapper<Warehouse> wrapper);
+
+}

+ 46 - 0
admin/src/main/java/com/fjhx/admin/service/stock/StockJournalDetailsService.java

@@ -0,0 +1,46 @@
+package com.fjhx.admin.service.stock;
+
+import com.fjhx.admin.entity.stock.po.StockJournalDetails;
+import com.ruoyi.common.core.service.BaseService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalDetailsVo;
+import com.fjhx.admin.entity.stock.dto.StockJournalDetailsSelectDto;
+import com.fjhx.admin.entity.stock.dto.StockJournalDetailsDto;
+
+
+/**
+ * <p>
+ * 出入库记录明细 服务类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface StockJournalDetailsService extends BaseService<StockJournalDetails> {
+
+    /**
+     * 出入库记录明细分页
+     */
+    Page<StockJournalDetailsVo> getPage(StockJournalDetailsSelectDto dto);
+
+    /**
+     * 出入库记录明细明细
+     */
+    StockJournalDetailsVo detail(Long id);
+
+    /**
+     * 出入库记录明细新增
+     */
+    void add(StockJournalDetailsDto stockJournalDetailsDto);
+
+    /**
+     * 出入库记录明细编辑
+     */
+    void edit(StockJournalDetailsDto stockJournalDetailsDto);
+
+    /**
+     * 出入库记录明细删除
+     */
+    void delete(Long id);
+
+}

+ 46 - 0
admin/src/main/java/com/fjhx/admin/service/stock/StockJournalService.java

@@ -0,0 +1,46 @@
+package com.fjhx.admin.service.stock;
+
+import com.fjhx.admin.entity.stock.po.StockJournal;
+import com.ruoyi.common.core.service.BaseService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalVo;
+import com.fjhx.admin.entity.stock.dto.StockJournalSelectDto;
+import com.fjhx.admin.entity.stock.dto.StockJournalDto;
+
+
+/**
+ * <p>
+ * 出入库记录 服务类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface StockJournalService extends BaseService<StockJournal> {
+
+    /**
+     * 出入库记录分页
+     */
+    Page<StockJournalVo> getPage(StockJournalSelectDto dto);
+
+    /**
+     * 出入库记录明细
+     */
+    StockJournalVo detail(Long id);
+
+    /**
+     * 出入库记录新增
+     */
+    void add(StockJournalDto stockJournalDto);
+
+    /**
+     * 出入库记录编辑
+     */
+    void edit(StockJournalDto stockJournalDto);
+
+    /**
+     * 出入库记录删除
+     */
+    void delete(Long id);
+
+}

+ 46 - 0
admin/src/main/java/com/fjhx/admin/service/stock/StockService.java

@@ -0,0 +1,46 @@
+package com.fjhx.admin.service.stock;
+
+import com.fjhx.admin.entity.stock.po.Stock;
+import com.ruoyi.common.core.service.BaseService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockVo;
+import com.fjhx.admin.entity.stock.dto.StockSelectDto;
+import com.fjhx.admin.entity.stock.dto.StockDto;
+
+
+/**
+ * <p>
+ * 库存 服务类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface StockService extends BaseService<Stock> {
+
+    /**
+     * 库存分页
+     */
+    Page<StockVo> getPage(StockSelectDto dto);
+
+    /**
+     * 库存明细
+     */
+    StockVo detail(Long id);
+
+    /**
+     * 库存新增
+     */
+    void add(StockDto stockDto);
+
+    /**
+     * 库存编辑
+     */
+    void edit(StockDto stockDto);
+
+    /**
+     * 库存删除
+     */
+    void delete(Long id);
+
+}

+ 57 - 0
admin/src/main/java/com/fjhx/admin/service/stock/impl/StockJournalDetailsServiceImpl.java

@@ -0,0 +1,57 @@
+package com.fjhx.admin.service.stock.impl;
+
+import com.fjhx.admin.entity.stock.po.StockJournalDetails;
+import com.fjhx.admin.mapper.stock.StockJournalDetailsMapper;
+import com.fjhx.admin.service.stock.StockJournalDetailsService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalDetailsVo;
+import com.fjhx.admin.entity.stock.dto.StockJournalDetailsSelectDto;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.fjhx.admin.entity.stock.dto.StockJournalDetailsDto;
+import cn.hutool.core.bean.BeanUtil;
+
+
+/**
+ * <p>
+ * 出入库记录明细 服务实现类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Service
+public class StockJournalDetailsServiceImpl extends ServiceImpl<StockJournalDetailsMapper, StockJournalDetails> implements StockJournalDetailsService {
+
+    @Override
+    public Page<StockJournalDetailsVo> getPage(StockJournalDetailsSelectDto dto) {
+        IWrapper<StockJournalDetails> wrapper = getWrapper();
+        wrapper.orderByDesc("sjd", StockJournalDetails::getId);
+        Page<StockJournalDetailsVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public StockJournalDetailsVo detail(Long id) {
+        StockJournalDetails StockJournalDetails = this.getById(id);
+        StockJournalDetailsVo result = BeanUtil.toBean(StockJournalDetails, StockJournalDetailsVo.class);
+        return result;
+    }
+
+    @Override
+    public void add(StockJournalDetailsDto stockJournalDetailsDto) {
+        this.save(stockJournalDetailsDto);
+    }
+
+    @Override
+    public void edit(StockJournalDetailsDto stockJournalDetailsDto) {
+        this.updateById(stockJournalDetailsDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+}

+ 67 - 0
admin/src/main/java/com/fjhx/admin/service/stock/impl/StockJournalServiceImpl.java

@@ -0,0 +1,67 @@
+package com.fjhx.admin.service.stock.impl;
+
+import com.fjhx.admin.entity.stock.po.StockJournal;
+import com.fjhx.admin.mapper.stock.StockJournalMapper;
+import com.fjhx.admin.service.stock.StockJournalService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.system.utils.UserUtil;
+import org.apache.ibatis.javassist.compiler.ast.Keyword;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockJournalVo;
+import com.fjhx.admin.entity.stock.dto.StockJournalSelectDto;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.fjhx.admin.entity.stock.dto.StockJournalDto;
+import cn.hutool.core.bean.BeanUtil;
+
+import java.util.List;
+import java.util.Objects;
+
+
+/**
+ * <p>
+ * 出入库记录 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-03-20
+ */
+@Service
+public class StockJournalServiceImpl extends ServiceImpl<StockJournalMapper, StockJournal> implements StockJournalService {
+
+    @Override
+    public Page<StockJournalVo> getPage(StockJournalSelectDto dto) {
+        IWrapper<StockJournal> wrapper = getWrapper();
+        wrapper.orderByDesc("sj", StockJournal::getId);
+        wrapper.eq("sj", StockJournal::getType, dto.getType());
+        wrapper.like("w", StockJournalSelectDto::getKeywords, dto.getKeywords());
+        Page<StockJournalVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        //根据id赋值操作人名称
+        UserUtil.assignmentNickName(page.getRecords(), StockJournalVo::getCreateUser, StockJournalVo::setUserName);
+        return page;
+    }
+
+    @Override
+    public StockJournalVo detail(Long id) {
+        IWrapper<StockJournal> wrapper = getWrapper();
+        wrapper.eq("sj",StockJournal::getId,id);
+        StockJournalVo result = baseMapper.detail(wrapper);
+        return result;
+    }
+
+    @Override
+    public void add(StockJournalDto stockJournalDto) {
+        this.save(stockJournalDto);
+    }
+
+    @Override
+    public void edit(StockJournalDto stockJournalDto) {
+        this.updateById(stockJournalDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+}

+ 134 - 0
admin/src/main/java/com/fjhx/admin/service/stock/impl/StockServiceImpl.java

@@ -0,0 +1,134 @@
+package com.fjhx.admin.service.stock.impl;
+
+import cn.hutool.core.util.ObjectUtil;
+import com.fjhx.admin.entity.stock.dto.StockJournalDetailsDto;
+import com.fjhx.admin.entity.stock.po.Stock;
+import com.fjhx.admin.entity.stock.po.StockJournal;
+import com.fjhx.admin.entity.stock.po.StockJournalDetails;
+import com.fjhx.admin.mapper.stock.StockMapper;
+import com.fjhx.admin.service.stock.StockJournalDetailsService;
+import com.fjhx.admin.service.stock.StockJournalService;
+import com.fjhx.admin.service.stock.StockService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.obs.services.internal.ServiceException;
+import org.apache.logging.log4j.core.util.Assert;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.stock.vo.StockVo;
+import com.fjhx.admin.entity.stock.dto.StockSelectDto;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.fjhx.admin.entity.stock.dto.StockDto;
+import cn.hutool.core.bean.BeanUtil;
+import org.springframework.transaction.annotation.Transactional;
+
+import java.math.BigDecimal;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
+
+/**
+ * <p>
+ * 库存 服务实现类
+ * </p>
+ *
+ * @author
+ * @since 2023-03-20
+ */
+@Service
+public class StockServiceImpl extends ServiceImpl<StockMapper, Stock> implements StockService {
+    @Autowired
+    StockJournalService stockJournalService;
+    @Autowired
+    StockJournalDetailsService stockJournalDetailsService;
+
+    @Override
+    public Page<StockVo> getPage(StockSelectDto dto) {
+        IWrapper<Stock> wrapper = getWrapper();
+        wrapper.orderByDesc("s", Stock::getId);
+        Page<StockVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public StockVo detail(Long id) {
+        Stock Stock = this.getById(id);
+        StockVo result = BeanUtil.toBean(Stock, StockVo.class);
+        return result;
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void add(StockDto stockDto) {
+        ModifyInventory(1, stockDto);
+    }
+
+    @Override
+    @Transactional(rollbackFor = Exception.class)
+    public void edit(StockDto stockDto) {
+        ModifyInventory(2, stockDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+    /**
+     * 操作库存通用方法
+     *
+     * @param type 1为手动入库操作 2为手动出库操作
+     */
+    public void ModifyInventory(int type, StockDto stockDto) {
+        //创建出入库记录
+        StockJournal stockJournal = new StockJournal();
+        stockJournal.setType(type);
+        stockJournal.setWarehouseId(stockDto.getWarehouseId());
+        stockJournalService.save(stockJournal);
+
+        //获取现有库存
+        List<Long> productIds = stockDto.getList().stream().map(Stock::getProductId).collect(Collectors.toList());
+        List<Stock> stockList = list(q->q.in(Stock::getProductId,productIds).eq(Stock::getWarehouseId,stockDto.getWarehouseId()));
+        Map<Long, Stock> stockMap = stockList.stream().collect(Collectors.groupingBy(Stock::getProductId,
+                Collectors.collectingAndThen(Collectors.toList(), value -> value.get(0))));
+
+        List<StockJournalDetails> stockJournalDetailsList = new ArrayList<>();
+        for (Stock stock : stockDto.getList()) {
+            stock.setWarehouseId(stockDto.getWarehouseId());
+
+            //合并库存数量
+            Stock oldStocks = stockMap.get(stock.getProductId());
+            if (ObjectUtil.isNotEmpty(oldStocks)) {
+                BigDecimal quantity = oldStocks.getQuantity();
+                if (type == 1) {
+                    //入库库存相加
+                    quantity = quantity.add(stock.getQuantity());
+                } else if (type == 2) {
+                    //出库库存相减
+                    quantity = quantity.subtract(stock.getQuantity());
+                    if (quantity.compareTo(BigDecimal.ZERO) < 0) {
+                        throw new ServiceException("库存不足无法出库");
+                    }
+                } else {
+                    throw new ServiceException("未知库存操作类型");
+                }
+                stock.setId(oldStocks.getId());
+                stock.setQuantity(quantity);
+            } else if (type == 2) {
+                throw new ServiceException("以下商品库存不存在,无法出库:" + stock.getProductId());
+            }
+            //创建出入库明细
+            StockJournalDetails stockJournalDetails = new StockJournalDetailsDto();
+            stockJournalDetails.setStockJournalId(stockJournal.getId());
+            stockJournalDetails.setProductId(stock.getProductId());
+            stockJournalDetails.setQuantity(stock.getQuantity());
+            stockJournalDetailsList.add(stockJournalDetails);
+        }
+        stockJournalDetailsService.saveBatch(stockJournalDetailsList);
+        //操作库存
+        saveOrUpdateBatch(stockDto.getList());
+    }
+
+}

+ 46 - 0
admin/src/main/java/com/fjhx/admin/service/warehouse/WarehouseService.java

@@ -0,0 +1,46 @@
+package com.fjhx.admin.service.warehouse;
+
+import com.fjhx.admin.entity.warehouse.po.Warehouse;
+import com.ruoyi.common.core.service.BaseService;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.warehouse.vo.WarehouseVo;
+import com.fjhx.admin.entity.warehouse.dto.WarehouseSelectDto;
+import com.fjhx.admin.entity.warehouse.dto.WarehouseDto;
+
+
+/**
+ * <p>
+ * 仓库 服务类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+public interface WarehouseService extends BaseService<Warehouse> {
+
+    /**
+     * 仓库分页
+     */
+    Page<WarehouseVo> getPage(WarehouseSelectDto dto);
+
+    /**
+     * 仓库明细
+     */
+    WarehouseVo detail(Long id);
+
+    /**
+     * 仓库新增
+     */
+    void add(WarehouseDto warehouseDto);
+
+    /**
+     * 仓库编辑
+     */
+    void edit(WarehouseDto warehouseDto);
+
+    /**
+     * 仓库删除
+     */
+    void delete(Long id);
+
+}

+ 58 - 0
admin/src/main/java/com/fjhx/admin/service/warehouse/impl/WarehouseServiceImpl.java

@@ -0,0 +1,58 @@
+package com.fjhx.admin.service.warehouse.impl;
+
+import com.fjhx.admin.entity.warehouse.po.Warehouse;
+import com.fjhx.admin.mapper.warehouse.WarehouseMapper;
+import com.fjhx.admin.service.warehouse.WarehouseService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.fjhx.admin.entity.warehouse.vo.WarehouseVo;
+import com.fjhx.admin.entity.warehouse.dto.WarehouseSelectDto;
+import com.ruoyi.common.utils.wrapper.IWrapper;
+import com.fjhx.admin.entity.warehouse.dto.WarehouseDto;
+import cn.hutool.core.bean.BeanUtil;
+
+
+/**
+ * <p>
+ * 仓库 服务实现类
+ * </p>
+ *
+ * @author 
+ * @since 2023-03-20
+ */
+@Service
+public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper, Warehouse> implements WarehouseService {
+
+    @Override
+    public Page<WarehouseVo> getPage(WarehouseSelectDto dto) {
+        IWrapper<Warehouse> wrapper = getWrapper();
+        wrapper.orderByDesc("w", Warehouse::getId);
+        wrapper.like("w",WarehouseSelectDto::getKeywords,dto.getKeywords());
+        Page<WarehouseVo> page = this.baseMapper.getPage(dto.getPage(), wrapper);
+        return page;
+    }
+
+    @Override
+    public WarehouseVo detail(Long id) {
+        Warehouse Warehouse = this.getById(id);
+        WarehouseVo result = BeanUtil.toBean(Warehouse, WarehouseVo.class);
+        return result;
+    }
+
+    @Override
+    public void add(WarehouseDto warehouseDto) {
+        this.save(warehouseDto);
+    }
+
+    @Override
+    public void edit(WarehouseDto warehouseDto) {
+        this.updateById(warehouseDto);
+    }
+
+    @Override
+    public void delete(Long id) {
+        this.removeById(id);
+    }
+
+}

+ 18 - 0
admin/src/main/resources/mapper/stock/StockJournalDetailsMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.admin.mapper.stock.StockJournalDetailsMapper">
+    <select id="getPage" resultType="com.fjhx.admin.entity.stock.vo.StockJournalDetailsVo">
+        select
+            sjd.id,
+            sjd.stock_journal_id,
+            sjd.product_id,
+            sjd.quantity,
+            sjd.create_user,
+            sjd.create_time,
+            sjd.update_user,
+            sjd.update_time
+        from stock_journal_details sjd
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 43 - 0
admin/src/main/resources/mapper/stock/StockJournalMapper.xml

@@ -0,0 +1,43 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.admin.mapper.stock.StockJournalMapper">
+    <select id="getPage" resultType="com.fjhx.admin.entity.stock.vo.StockJournalVo">
+        SELECT
+            sj.id,
+            sj.type,
+            sj.warehouse_id,
+            w.NAME warehouseName,
+            sj.create_user,
+            sj.create_time,
+            sj.update_user,
+            sj.update_time
+        FROM
+            stock_journal sj
+                JOIN warehouse w ON sj.warehouse_id = w.id
+            ${ew.customSqlSegment}
+    </select>
+    <resultMap id="detail" type="com.fjhx.admin.entity.stock.vo.StockJournalVo">
+        <id property="id" column="id"/>
+        <result property="warehouseName" column="warehouseName"/>
+        <collection property="list" javaType="java.util.ArrayList" ofType="com.fjhx.admin.entity.stock.vo.StockVo">
+            <id property="id" column="stockJournalDetailsId"/>
+            <result property="productName" column="productName"/>
+            <result property="quantity" column="quantity"/>
+        </collection>
+    </resultMap>
+    <select id="detail" resultMap="detail">
+        SELECT
+            sj.id,
+            w.`name` warehouseName,
+            pi.`name` productName,
+            sjd.id stockJournalDetailsId,
+            sjd.quantity
+        FROM
+            stock_journal sj
+                JOIN warehouse w ON sj.warehouse_id = w.id
+                JOIN stock_journal_details sjd ON sjd.stock_journal_id = sj.id
+                JOIN product_info pi ON sjd.product_id = pi.id
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 18 - 0
admin/src/main/resources/mapper/stock/StockMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.admin.mapper.stock.StockMapper">
+    <select id="getPage" resultType="com.fjhx.admin.entity.stock.vo.StockVo">
+        select
+            s.id,
+            s.warehouse_id,
+            s.product_id,
+            s.quantity,
+            s.create_user,
+            s.create_time,
+            s.update_user,
+            s.update_time
+        from stock s
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 18 - 0
admin/src/main/resources/mapper/warehouse/WarehouseMapper.xml

@@ -0,0 +1,18 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.fjhx.admin.mapper.warehouse.WarehouseMapper">
+    <select id="getPage" resultType="com.fjhx.admin.entity.warehouse.vo.WarehouseVo">
+        select
+            w.id,
+            w.name,
+            w.type,
+            w.remark,
+            w.create_user,
+            w.create_time,
+            w.update_user,
+            w.update_time
+        from warehouse w
+            ${ew.customSqlSegment}
+    </select>
+
+</mapper>

+ 16 - 0
code/pom.xml

@@ -24,6 +24,22 @@
             <version>1.0.hx</version>
             <scope>test</scope>
         </dependency>
+        <dependency>
+            <groupId>log4j</groupId>
+            <artifactId>log4j</artifactId>
+            <version>1.2.17</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-api</artifactId>
+            <version>1.7.7</version>
+        </dependency>
+        <dependency>
+            <groupId>org.slf4j</groupId>
+            <artifactId>slf4j-log4j12</artifactId>
+            <version>1.7.7</version>
+        </dependency>
+
     </dependencies>
 
 </project>