Browse Source

模块开发12

wwh 3 months ago
parent
commit
67e3cdbde5
15 changed files with 286 additions and 7 deletions
  1. 14 1
      huimv-farm/src/main/java/vip/xiaonuo/purchase/service/impl/PurchasePriceServiceImpl.java
  2. 20 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/controller/WarehouseMaterialInStockController.java
  3. 17 6
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/controller/WarehouseMaterialStockController.java
  4. 7 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/controller/WarehouseStockDetailController.java
  5. 73 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/entity/WarehouseMaterialInStock.java
  6. 16 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/mapper/WarehouseMaterialInStockMapper.java
  7. 42 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/param/WarehouseMaterialTailParam.java
  8. 2 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/param/WarehouseStockDetailParam.java
  9. 16 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/IWarehouseMaterialInStockService.java
  10. 6 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/IWarehouseMaterialStockService.java
  11. 2 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/IWarehouseStockDetailService.java
  12. 20 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/impl/WarehouseMaterialInStockServiceImpl.java
  13. 34 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/impl/WarehouseMaterialStockServiceImpl.java
  14. 12 0
      huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/impl/WarehouseStockDetailServiceImpl.java
  15. 5 0
      huimv-farm/src/main/resources/mapper/WarehouseMaterialInStockMapper.xml

+ 14 - 1
huimv-farm/src/main/java/vip/xiaonuo/purchase/service/impl/PurchasePriceServiceImpl.java

@@ -1,9 +1,12 @@
 package vip.xiaonuo.purchase.service.impl;
 
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.ObjectUtil;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import org.springframework.beans.factory.annotation.Autowired;
+import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
+import vip.xiaonuo.erp.mapper.ErpBdRawMaterialMapper;
 import vip.xiaonuo.purchase.entity.PurchasePrice;
 import vip.xiaonuo.purchase.entity.vo.PurchasePriceVo;
 import vip.xiaonuo.purchase.mapper.PurchasePriceMapper;
@@ -31,13 +34,23 @@ public class PurchasePriceServiceImpl extends ServiceImpl<PurchasePriceMapper, P
 
     @Autowired
     private PurchasePriceMapper priceMapper;
+    @Autowired
+    private ErpBdRawMaterialMapper bdRawMaterialMapper;
 
     @Override
     public List<PurchasePriceVo> getList(PurchasePriceParam priceParam) {
         Integer number = priceParam.getNumber();
+        String material = priceParam.getMaterial();//实际上是fnumber
+        QueryWrapper<ErpBdRawMaterial> bdRawMaterialQueryWrapper = new QueryWrapper<>();
+        bdRawMaterialQueryWrapper.eq(StringUtils.isNotBlank(priceParam.getOrgId()), "org_id", priceParam.getOrgId());
+        bdRawMaterialQueryWrapper.eq(StringUtils.isNotBlank(material), "erp_fnumber", material);
+        List<ErpBdRawMaterial> bdRawMaterial = bdRawMaterialMapper.selectList(bdRawMaterialQueryWrapper);
+
         QueryWrapper<PurchasePrice> queryWrapper = new QueryWrapper<>();
+        if (bdRawMaterial.size() != 0) {
+            queryWrapper.eq("material", bdRawMaterial.get(0).getFname());
+        }
         queryWrapper.eq(StringUtils.isNotBlank(priceParam.getOrgId()), "org_id", priceParam.getOrgId());
-        queryWrapper.eq(StringUtils.isNotBlank(priceParam.getMaterial()), "material", priceParam.getMaterial());
         queryWrapper.select(" CONVERT(IFNULL(avg(price),'0'),decimal(10,2)) 'price',create_time createTime");
         Integer timeType = priceParam.getTimeType();
         List<PurchasePriceVo> list = new ArrayList<>();

+ 20 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/controller/WarehouseMaterialInStockController.java

@@ -0,0 +1,20 @@
+package vip.xiaonuo.warehouse.controller;
+
+
+import org.springframework.web.bind.annotation.RequestMapping;
+
+import org.springframework.web.bind.annotation.RestController;
+
+/**
+ * <p>
+ * 仓库原材料出库 前端控制器
+ * </p>
+ *
+ * @author author
+ * @since 2025-03-19
+ */
+@RestController
+@RequestMapping("/warehouse-material-in-stock")
+public class WarehouseMaterialInStockController {
+
+}

+ 17 - 6
huimv-farm/src/main/java/vip/xiaonuo/warehouse/controller/WarehouseMaterialStockController.java

@@ -1,6 +1,7 @@
 package vip.xiaonuo.warehouse.controller;
 
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import com.github.xiaoymin.knife4j.annotations.ApiSupport;
 import io.swagger.annotations.Api;
@@ -14,10 +15,13 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 import vip.xiaonuo.common.pojo.CommonResult;
 import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
+import vip.xiaonuo.warehouse.entity.WarehouseMaterialInStock;
 import vip.xiaonuo.warehouse.entity.WarehouseMaterialOutStock;
+import vip.xiaonuo.warehouse.entity.WarehouseMaterialStock;
 import vip.xiaonuo.warehouse.entity.WarehouseStockVo;
 import vip.xiaonuo.warehouse.entity.vo.WarehouseMaterialStockVo;
 import vip.xiaonuo.warehouse.param.WarehouseMaterialStockParam;
+import vip.xiaonuo.warehouse.param.WarehouseMaterialTailParam;
 import vip.xiaonuo.warehouse.param.WarehouseStockParam;
 import vip.xiaonuo.warehouse.param.WarehouseStockTailParam;
 import vip.xiaonuo.warehouse.service.IWarehouseMaterialStockService;
@@ -55,10 +59,17 @@ public class WarehouseMaterialStockController {
         return CommonResult.data(materialStockService.listMaterialOut(stockParam));
     }
 
-//    @ApiOperationSupport(order = 3)
-//    @ApiOperation("仓库原材料列表(新)")
-//    @PostMapping("/warehouse-material-stock/listRawMaterial")
-//    public CommonResult<List<ErpBdRawMaterial>> listRawMaterial(@RequestBody WarehouseStockParam stockParam) {
-//        return CommonResult.data(materialStockService.listRawMaterial(stockParam));
-//    }
+    @ApiOperationSupport(order = 3)
+    @ApiOperation("仓库指标弹出出库列表")
+    @PostMapping("/warehouse-material-stock/outMaterial")
+    public CommonResult<Page<WarehouseMaterialOutStock>> outMaterial(@RequestBody WarehouseMaterialTailParam materialTailParam) {
+        return CommonResult.data(materialStockService.outMaterial(materialTailParam));
+    }
+
+    @ApiOperationSupport(order = 4)
+    @ApiOperation("仓库指标弹出入库列表")
+    @PostMapping("/warehouse-material-stock/inMaterial")
+    public CommonResult<Page<WarehouseMaterialInStock>> inMaterial(@RequestBody WarehouseMaterialTailParam materialTailParam) {
+        return CommonResult.data(materialStockService.inMaterial(materialTailParam));
+    }
 }

+ 7 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/controller/WarehouseStockDetailController.java

@@ -46,4 +46,11 @@ public class WarehouseStockDetailController {
     public CommonResult<Page<WarehouseStockDetail>> listDetail(@RequestBody WarehouseStockDetailParam detailParam) {
         return CommonResult.data(detailService.listDetail(detailParam));
     }
+
+    @ApiOperationSupport(order = 2)
+    @ApiOperation("物料库存明细小类")
+    @PostMapping("/warehouse-stock-detail/listDetail1")
+    public CommonResult<Page<WarehouseStockDetail>> listDetail1(@RequestBody WarehouseStockDetailParam detailParam) {
+        return CommonResult.data(detailService.listDetail1(detailParam));
+    }
 }

+ 73 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/entity/WarehouseMaterialInStock.java

@@ -0,0 +1,73 @@
+package vip.xiaonuo.warehouse.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.time.LocalDateTime;
+import java.io.Serializable;
+import java.util.Date;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+/**
+ * <p>
+ * 仓库原材料出库
+ * </p>
+ *
+ * @author author
+ * @since 2025-03-19
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@Accessors(chain = true)
+@TableName("warehouse_material_in_stock")
+public class WarehouseMaterialInStock implements Serializable {
+
+    private static final long serialVersionUID = 1L;
+
+    @TableId(value = "id", type = IdType.AUTO)
+    private Integer id;
+
+    /**
+     * 原材料id
+     */
+    @ApiModelProperty(value = "物料分类0原材料 1成品半成品 2低值易耗  3包材",position = 1)
+    private String materialType;
+
+    /**
+     * 原材料名称
+     */
+    @ApiModelProperty(value = "原材料名称",position = 2)
+    private String material;
+
+    /**
+     * 出库数量
+     */
+    @ApiModelProperty(value = "出库数量",position = 3)
+    private String outStock;
+
+    /**
+     * 创建时间
+     */
+    @ApiModelProperty(value = "创建时间",position = 4)
+    private Date createTime;
+
+    /**
+     * 组织id
+     */
+    @ApiModelProperty(value = "组织id",position = 5)
+    private String orgId;
+
+    /**
+     * 公司名称
+     */
+    @ApiModelProperty(value = "公司名称",position = 6)
+    private String orgName;
+    @ApiModelProperty(value = "物料编码", position = 5)
+    private String fnumber;
+
+
+}

+ 16 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/mapper/WarehouseMaterialInStockMapper.java

@@ -0,0 +1,16 @@
+package vip.xiaonuo.warehouse.mapper;
+
+import vip.xiaonuo.warehouse.entity.WarehouseMaterialInStock;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ * <p>
+ * 仓库原材料出库 Mapper 接口
+ * </p>
+ *
+ * @author author
+ * @since 2025-03-19
+ */
+public interface WarehouseMaterialInStockMapper extends BaseMapper<WarehouseMaterialInStock> {
+
+}

+ 42 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/param/WarehouseMaterialTailParam.java

@@ -0,0 +1,42 @@
+/*
+ * Copyright [2022] [https://www.baiduc.com]
+ *
+ * Snowy采用APACHE LICENSE 2.0开源协议,您在使用过程中,需要注意以下几点:
+ *
+ * 1.请不要删除和修改根目录下的LICENSE文件。
+ * 2.请不要删除和修改Snowy源码头部的版权声明。
+ * 3.本项目代码可免费商业使用,商业使用请保留源码和相关描述文件的项目出处,作者声明等。
+ * 4.分发源码时候,请注明软件出处 https://www.baiduc.com
+ * 5.不可二次分发开源参与同类竞品,如有想法可联系团队xiaonuobase@qq.com商议合作。
+ * 6.若您的项目无法满足以上几点,需要更多功能代码,获取Snowy商业授权许可,请在官网购买授权,地址为 https://www.baiduc.com
+ */
+package vip.xiaonuo.warehouse.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * 人员明细Id参数
+ *
+ * @author 余
+ * @date  2024/11/14 15:02
+ **/
+@Getter
+@Setter
+public class WarehouseMaterialTailParam {
+
+
+    @ApiModelProperty(value = "orgId", required = true)
+    private String orgId;
+
+    @ApiModelProperty(value = "物料分类0原材料 1成品半成品 2低值易耗  3包材", required = true)
+    private String materialType;
+
+    @ApiModelProperty(value = "当前页码", required = true)
+    private Integer pageNum;
+
+    @ApiModelProperty(value = "页码大小", required = true)
+    private Integer pageSize;
+
+}

+ 2 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/param/WarehouseStockDetailParam.java

@@ -42,4 +42,6 @@ public class WarehouseStockDetailParam {
     @ApiModelProperty(value = "time", required = true)
     private String time;
 
+    @ApiModelProperty(value = "物料编码", required = true)
+    private String fnumber;
 }

+ 16 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/IWarehouseMaterialInStockService.java

@@ -0,0 +1,16 @@
+package vip.xiaonuo.warehouse.service;
+
+import vip.xiaonuo.warehouse.entity.WarehouseMaterialInStock;
+import com.baomidou.mybatisplus.extension.service.IService;
+
+/**
+ * <p>
+ * 仓库原材料出库 服务类
+ * </p>
+ *
+ * @author author
+ * @since 2025-03-19
+ */
+public interface IWarehouseMaterialInStockService extends IService<WarehouseMaterialInStock> {
+
+}

+ 6 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/IWarehouseMaterialStockService.java

@@ -1,11 +1,14 @@
 package vip.xiaonuo.warehouse.service;
 
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
+import vip.xiaonuo.warehouse.entity.WarehouseMaterialInStock;
 import vip.xiaonuo.warehouse.entity.WarehouseMaterialOutStock;
 import vip.xiaonuo.warehouse.entity.WarehouseMaterialStock;
 import com.baomidou.mybatisplus.extension.service.IService;
 import vip.xiaonuo.warehouse.entity.vo.WarehouseMaterialStockVo;
 import vip.xiaonuo.warehouse.param.WarehouseMaterialStockParam;
+import vip.xiaonuo.warehouse.param.WarehouseMaterialTailParam;
 import vip.xiaonuo.warehouse.param.WarehouseStockParam;
 
 import java.util.List;
@@ -26,5 +29,8 @@ public interface IWarehouseMaterialStockService extends IService<WarehouseMateri
 
     List<ErpBdRawMaterial> listRawMaterial(WarehouseStockParam stockParam);
 
+    Page<WarehouseMaterialOutStock> outMaterial(WarehouseMaterialTailParam materialTailParam);
+
+    Page<WarehouseMaterialInStock> inMaterial(WarehouseMaterialTailParam materialTailParam);
 
 }

+ 2 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/IWarehouseStockDetailService.java

@@ -21,4 +21,6 @@ public interface IWarehouseStockDetailService extends IService<WarehouseStockDet
     //物料库存明细
     Page<WarehouseStockDetail> listDetail(WarehouseStockDetailParam detailParam);
 
+    Page<WarehouseStockDetail> listDetail1(WarehouseStockDetailParam detailParam);
+
 }

+ 20 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/impl/WarehouseMaterialInStockServiceImpl.java

@@ -0,0 +1,20 @@
+package vip.xiaonuo.warehouse.service.impl;
+
+import vip.xiaonuo.warehouse.entity.WarehouseMaterialInStock;
+import vip.xiaonuo.warehouse.mapper.WarehouseMaterialInStockMapper;
+import vip.xiaonuo.warehouse.service.IWarehouseMaterialInStockService;
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springframework.stereotype.Service;
+
+/**
+ * <p>
+ * 仓库原材料出库 服务实现类
+ * </p>
+ *
+ * @author author
+ * @since 2025-03-19
+ */
+@Service
+public class WarehouseMaterialInStockServiceImpl extends ServiceImpl<WarehouseMaterialInStockMapper, WarehouseMaterialInStock> implements IWarehouseMaterialInStockService {
+
+}

+ 34 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/impl/WarehouseMaterialStockServiceImpl.java

@@ -1,15 +1,19 @@
 package vip.xiaonuo.warehouse.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import org.springframework.beans.factory.annotation.Autowired;
 import vip.xiaonuo.erp.entity.ErpBdRawMaterial;
 import vip.xiaonuo.erp.mapper.ErpBdRawMaterialMapper;
+import vip.xiaonuo.warehouse.entity.WarehouseMaterialInStock;
 import vip.xiaonuo.warehouse.entity.WarehouseMaterialOutStock;
 import vip.xiaonuo.warehouse.entity.WarehouseMaterialStock;
 import vip.xiaonuo.warehouse.entity.vo.WarehouseMaterialStockVo;
+import vip.xiaonuo.warehouse.mapper.WarehouseMaterialInStockMapper;
 import vip.xiaonuo.warehouse.mapper.WarehouseMaterialOutStockMapper;
 import vip.xiaonuo.warehouse.mapper.WarehouseMaterialStockMapper;
 import vip.xiaonuo.warehouse.param.WarehouseMaterialStockParam;
+import vip.xiaonuo.warehouse.param.WarehouseMaterialTailParam;
 import vip.xiaonuo.warehouse.param.WarehouseStockParam;
 import vip.xiaonuo.warehouse.service.IWarehouseMaterialStockService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -35,6 +39,8 @@ public class WarehouseMaterialStockServiceImpl extends ServiceImpl<WarehouseMate
     private WarehouseMaterialOutStockMapper outStockMapper;
     @Autowired
     private ErpBdRawMaterialMapper rawMaterialMapper;
+    @Autowired
+    private WarehouseMaterialInStockMapper inStockMapper;
 
     @Override
     public List<WarehouseMaterialStockVo> listMaterial(WarehouseMaterialStockParam stockParam) {
@@ -82,4 +88,32 @@ public class WarehouseMaterialStockServiceImpl extends ServiceImpl<WarehouseMate
         return rawMaterialMapper.selectList(queryWrapper);
     }
 
+    @Override
+    public Page<WarehouseMaterialOutStock> outMaterial(WarehouseMaterialTailParam materialTailParam) {
+        String orgId = materialTailParam.getOrgId();
+        String materialType = materialTailParam.getMaterialType();
+        Integer pageNum = materialTailParam.getPageNum();
+        Integer pageSize = materialTailParam.getPageSize();
+        Page<WarehouseMaterialOutStock> page = new Page<>(pageNum, pageSize);
+        QueryWrapper<WarehouseMaterialOutStock> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq( "org_id", orgId);
+        queryWrapper.eq( "material_type", materialType);
+        queryWrapper.orderByAsc("create_time");
+        return outStockMapper.selectPage(page,queryWrapper);
+    }
+
+    @Override
+    public Page<WarehouseMaterialInStock> inMaterial(WarehouseMaterialTailParam materialTailParam) {
+        String orgId = materialTailParam.getOrgId();
+        String materialType = materialTailParam.getMaterialType();
+        Integer pageNum = materialTailParam.getPageNum();
+        Integer pageSize = materialTailParam.getPageSize();
+        Page<WarehouseMaterialInStock> page = new Page<>(pageNum, pageSize);
+        QueryWrapper<WarehouseMaterialInStock> queryWrapper = new QueryWrapper<>();
+        queryWrapper.eq( "org_id", orgId);
+        queryWrapper.eq( "material_type", materialType);
+        queryWrapper.orderByAsc("create_time");
+        return inStockMapper.selectPage(page,queryWrapper);
+    }
+
 }

+ 12 - 0
huimv-farm/src/main/java/vip/xiaonuo/warehouse/service/impl/WarehouseStockDetailServiceImpl.java

@@ -40,4 +40,16 @@ public class WarehouseStockDetailServiceImpl extends ServiceImpl<WarehouseStockD
         Page<WarehouseStockDetail> page = new Page(detailParam.getPageNum(), detailParam.getPageSize());
         return detailMapper.selectPage(page,queryWrapper);
     }
+
+    @Override
+    public Page<WarehouseStockDetail> listDetail1(WarehouseStockDetailParam detailParam) {
+        String orgId = detailParam.getOrgId();
+        String time = detailParam.getTime();
+        QueryWrapper<WarehouseStockDetail> queryWrapper = new QueryWrapper<>();
+        queryWrapper.le("create_time", time + "-31 23:59:59");
+        queryWrapper.eq(StringUtils.isNotBlank(orgId),"org_id", orgId);
+        queryWrapper.eq(StringUtils.isNotBlank(detailParam.getFnumber()), "fnumber", detailParam.getFnumber());
+        Page<WarehouseStockDetail> page = new Page(detailParam.getPageNum(), detailParam.getPageSize());
+        return detailMapper.selectPage(page,queryWrapper);
+    }
 }

+ 5 - 0
huimv-farm/src/main/resources/mapper/WarehouseMaterialInStockMapper.xml

@@ -0,0 +1,5 @@
+<?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="vip.xiaonuo.warehouse.mapper.WarehouseMaterialInStockMapper">
+
+</mapper>