From a248df0c4a0e5405bedbd3db7b6a0b0ed7cc90a6 Mon Sep 17 00:00:00 2001
From: rentaiming <806181062@qq.com>
Date: 星期二, 30 七月 2024 14:55:25 +0800
Subject: [PATCH] 森林防火 供应商管理

---
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java          |    3 +
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/gethuojRkVO.java                        |   66 ++++++++++++++++++++++
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/gethuojRkQuery.java                    |   20 ++++++
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java    |   10 +++
 ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java |   61 ++++++++++++++++++++
 5 files changed, 160 insertions(+), 0 deletions(-)

diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java
index 892691d..454eb58 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/controller/SlVolumeProductionRkController.java
@@ -8,6 +8,7 @@
 import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionRkVO;
 import com.ruoyi.management.domain.vo.VolumeProductionRkgInventoryVO;
 import com.ruoyi.management.domain.vo.getVolumeProductionRkgCodeVO;
+import com.ruoyi.management.domain.vo.gethuojRkVO;
 import com.ruoyi.management.service.SlVolumeProductionRkService;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
@@ -40,6 +41,15 @@
         return R.ok(slVolumeProductionRkService.getSlGoodsMaterialsSlVolumeProductionRkList(slGoodsMaterialsSlVolumeProductionRkDTO));
     }
 
+
+    @PostMapping("/gethuojRkList")
+    @ApiOperation(value = "分页获取通过货架来获取当前批次入库的物资")
+    public R<PageDTO<gethuojRkVO>> gethuojRkList(@RequestBody gethuojRkQuery gethuojRkQuery) {
+        return R.ok(slVolumeProductionRkService.gethuojRkList(gethuojRkQuery));
+    }
+
+
+
     @PostMapping("/addSlVolumeProductionRk")
     @ApiOperation(value = "添加入库批次管理")
     public R addVolumeProductionRkgl(@RequestBody Map<String, List<SlVolumeProductionRkListDTO>> slVolumeProductionRkListDTO1) {
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/gethuojRkQuery.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/gethuojRkQuery.java
new file mode 100644
index 0000000..469724f
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/dto/gethuojRkQuery.java
@@ -0,0 +1,20 @@
+package com.ruoyi.management.domain.dto;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.ruoyi.common.core.web.page.BasePage;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel("通过货架拿入库物资的数据取对象")
+public class gethuojRkQuery extends BasePage {
+
+    @ApiModelProperty("货架id")
+    private Long goodsShelid;
+
+    @ApiModelProperty("物资名称")
+    private String goodsMaterialsName;
+
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/gethuojRkVO.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/gethuojRkVO.java
new file mode 100644
index 0000000..6eb58f9
--- /dev/null
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/domain/vo/gethuojRkVO.java
@@ -0,0 +1,66 @@
+package com.ruoyi.management.domain.vo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+
+@Data
+@ApiModel(value = "通过货架拿入库物资的数据对象", description = "通过货架拿入库物资的数据对象")
+public class gethuojRkVO {
+    private Long id;
+
+    @ApiModelProperty("物资名称")
+    private String goodsMaterialsName;
+
+    @ApiModelProperty("1 是非消耗,2是消耗 ")
+    private Integer isConsume;
+
+    @ApiModelProperty("货架名称")
+    private String goodsShelfName;
+
+    @ApiModelProperty("仓库层数 1代表一层,2代表两层,3代表三层")
+    private Integer storeManagementNumber;
+
+    @ApiModelProperty("在库存的")
+    private Long repertoryZhai;
+
+    @ApiModelProperty("入库数量")
+    private Long rkNum;
+
+    @ApiModelProperty("入库型号")
+    private String rkModel;
+
+    @ApiModelProperty("入库价格")
+    private BigDecimal rkPice;
+
+    @ApiModelProperty("供应商名称")
+    private String supplierName;
+
+    @ApiModelProperty("入管理主表id")
+    private Long VolumeProductionRkglId;
+
+    @ApiModelProperty("物资id")
+    private Long materialsId;
+
+    @ApiModelProperty("货架id")
+    private Long shelfId;
+
+    @ApiModelProperty("入库编号")
+    private String rkNumber;
+
+    @ApiModelProperty("仓库名称")
+    private String storeManagementName;
+
+    @ApiModelProperty("总价价格")
+    private BigDecimal rkPiceSum;
+
+    @ApiModelProperty("总数")
+    private Long repertorySum;
+
+    @ApiModelProperty("仓库ID")
+    @TableField("management_id")
+    private Long managementId;
+}
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java
index d5a1145..bd5f5fd 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/SlVolumeProductionRkService.java
@@ -6,6 +6,7 @@
 import com.ruoyi.management.domain.dto.*;
 import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionRkVO;
 import com.ruoyi.management.domain.vo.getVolumeProductionRkgCodeVO;
+import com.ruoyi.management.domain.vo.gethuojRkVO;
 import io.swagger.annotations.ApiParam;
 import org.springframework.web.bind.annotation.PathVariable;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -35,4 +36,6 @@
 
     PageDTO<ManagementimgVolumeProductionRkVO> getroductionRkList(umeProductionRkQuery meProductionRkQuery);
 
+
+    PageDTO<gethuojRkVO> gethuojRkList(@RequestBody gethuojRkQuery gethuojRkQuery);
 }
diff --git a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java
index ba71edf..419fc4b 100644
--- a/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java
+++ b/ruoyi-modules/ruoyi-management/src/main/java/com/ruoyi/management/service/impl/SlVolumeProductionRkServiceImpl.java
@@ -9,6 +9,7 @@
 import com.ruoyi.management.domain.vo.ManagementimgVolumeProductionRkVO;
 import com.ruoyi.management.domain.vo.SlGoodsShelfVO;
 import com.ruoyi.management.domain.vo.getVolumeProductionRkgCodeVO;
+import com.ruoyi.management.domain.vo.gethuojRkVO;
 import com.ruoyi.management.mapper.*;
 import com.ruoyi.management.service.SlStoreManagementService;
 import com.ruoyi.management.service.SlVolumeProductionRkService;
@@ -19,7 +20,9 @@
 import org.springframework.stereotype.Service;
 
 import javax.annotation.Resource;
+import java.math.BigDecimal;
 import java.util.Date;
+import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 import java.util.stream.Collectors;
@@ -47,6 +50,9 @@
 
     @Resource
     private SysUserClient sysUserClient;
+
+    @Resource
+    private ManagementGoodsMaterialsMapper managementGoodsMaterialsMapper;
 
 
 
@@ -255,4 +261,59 @@
         return SlGoodsShelfDTO;
     }
 
+    @Override
+    public PageDTO<gethuojRkVO> gethuojRkList(gethuojRkQuery gethuojRkQuery) {
+        LambdaQueryWrapper< SlGoodsMaterials> wrapper= Wrappers.lambdaQuery();
+        if (gethuojRkQuery.getGoodsMaterialsName()!=null&&gethuojRkQuery.getGoodsMaterialsName()!=""){
+            wrapper.eq(SlGoodsMaterials::getGoodsMaterialsName,gethuojRkQuery.getGoodsMaterialsName());
+        }
+
+        wrapper.eq( SlGoodsMaterials::getDelFlag,0);
+        List<SlGoodsMaterials> page1 = slGoodsMaterialsMapper.selectList(wrapper);
+
+        Set<Long> goodsSkuIdList = null;
+        goodsSkuIdList = page1.stream().map(SlGoodsMaterials::getId)
+                .collect(Collectors.toSet());
+
+
+        Page<SlVolumeProductionRk> page = new Page<>(gethuojRkQuery.getPageCurr(), gethuojRkQuery.getPageSize());
+        LambdaQueryWrapper<SlVolumeProductionRk> wrapper1= Wrappers.lambdaQuery();
+        if (gethuojRkQuery.getGoodsMaterialsName()!=null&&gethuojRkQuery.getGoodsMaterialsName()!=""){
+        if (goodsSkuIdList.size()>0) {
+            wrapper1.in(SlVolumeProductionRk::getMaterialsId, goodsSkuIdList);
+        }else{
+            goodsSkuIdList=new HashSet<>();
+            goodsSkuIdList.add(0L);
+            wrapper1.in(SlVolumeProductionRk::getMaterialsId, goodsSkuIdList);
+          }
+        }
+        wrapper1.eq( SlVolumeProductionRk::getDelFlag,0);
+        wrapper1.orderByDesc(SlVolumeProductionRk::getCreateTime);
+        Page<SlVolumeProductionRk> page2 = this.page(page, wrapper1);
+        PageDTO<gethuojRkVO> SlGoodsShelfDTO = PageDTO.of(page2, gethuojRkVO.class);
+        List<gethuojRkVO> list2 = SlGoodsShelfDTO.getList();
+        for(gethuojRkVO list:list2) {
+
+
+            LambdaQueryWrapper<ManagementGoodsMaterials> wrapper2 = Wrappers.lambdaQuery();
+            wrapper2.eq(ManagementGoodsMaterials::getGoodsMaterialsId,list.getMaterialsId());
+            wrapper2.eq(ManagementGoodsMaterials::getManagementId,list.getManagementId());
+            wrapper2.eq(ManagementGoodsMaterials::getDelFlag, 0);
+            ManagementGoodsMaterials managementGoodsMaterials = managementGoodsMaterialsMapper.selectOne(wrapper2);
+
+            list.setRkPiceSum(list.getRkPice().multiply(new BigDecimal(managementGoodsMaterials.getRepertorySum())));
+            list.setRepertorySum(managementGoodsMaterials.getRepertorySum());
+            SlGoodsMaterials slGoodsMaterials = slGoodsMaterialsMapper.selectById(list.getMaterialsId());
+            SlVolumeProductionRkgl byId = slVolumeProductionRkglMapper.selectById(list.getVolumeProductionRkglId());
+            SysUser data = sysUserClient.getSysUser(byId.getSupplierId()).getData();
+
+            list.setGoodsMaterialsName(slGoodsMaterials.getGoodsMaterialsName());
+            list.setIsConsume(slGoodsMaterials.getIsConsume());
+            list.setSupplierName(data.getNickName());
+            SlGoodsShelf slGoodsShelf = slGoodsShelfMapper.selectById(list.getShelfId());
+            list.setGoodsShelfName(slGoodsShelf.getGoodsShelfName());
+        }
+        return SlGoodsShelfDTO;
+    }
+
 }

--
Gitblit v1.7.1