Browse Source

杰生 库存管理 今日统计

home 2 years ago
parent
commit
3bf9c077c6

+ 8 - 0
hx-service/storage/src/main/java/com/fjhx/stock/controller/StockWaterController.java

@@ -36,6 +36,14 @@ public class StockWaterController {
         return R.success(result);
     }
 
+    /**
+     * 库存报表-》领料序时浦-》分页类型统计
+     */
+    @PostMapping("getPickingStockChangeTypeCount")
+    public R getPickingStockChangeTypeCount(@RequestBody Map<String, String> condition) {
+        Map<String, Integer> result = stockWaterService.getPickingStockChangeTypeCount(condition);
+        return R.success(result);
+    }
 
     /**
      * 库存报表-》领料序时浦-》分页列表

+ 2 - 0
hx-service/storage/src/main/java/com/fjhx/stock/mapper/StockWaterMapper.java

@@ -21,6 +21,8 @@ public interface StockWaterMapper extends BaseMapper<StockWater> {
 
     List<Map<String, Object>> getPickingStatistics(@Param("ew") QueryWrapper<?> wrapper);
 
+    Map<String, Integer> getPickingStockChangeTypeCount(@Param("ew") QueryWrapper<?> wrapper);
+
     Page<Map<String, Object>> getPickingPage(@Param("page") Page<StockWater> page, @Param("ew") QueryWrapper<?> wrapper);
 
     List<Map<String, Object>> contractPaymentStatistics(@Param("ew") QueryWrapper<?> wrapper);

+ 10 - 0
hx-service/storage/src/main/java/com/fjhx/stock/mapper/StockWaterMapper.xml

@@ -15,6 +15,15 @@
             ${ew.customSqlSegment}
     </select>
 
+    <select id="getPickingStockChangeTypeCount" resultType="java.util.Map">
+        select sum(if(sw.StockChangeType = 15, 1, 0)) cancellingStocks,
+               sum(if(sw.StockChangeType = 20, 1, 0)) exWarehouse,
+               sum(if(sw.StockChangeType = 23, 1, 0)) supplementaryDelivery
+        from stock_waterdetial sw
+                 inner join material m on sw.MaterialCode = m.code
+            ${ew.customSqlSegment}
+    </select>
+
     <select id="getPickingPage" resultType="java.util.LinkedHashMap">
         select sw.CreatedTime                     createdTime,
                m.TechnologyType                   materialType,
@@ -132,4 +141,5 @@
           and sd.StockHouseId = #{houseId}
     </select>
 
+
 </mapper>

+ 4 - 1
hx-service/storage/src/main/java/com/fjhx/stock/service/StockWaterService.java

@@ -4,7 +4,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.fjhx.base.BaseService;
 import com.fjhx.entity.stock.StockWater;
 
-import java.util.List;
 import java.util.Map;
 
 /**
@@ -19,6 +18,8 @@ public interface StockWaterService extends BaseService<StockWater> {
 
     Map<String, Object> getPickingStatistics(Map<String, String> condition);
 
+    Map<String, Integer> getPickingStockChangeTypeCount(Map<String, String> condition);
+
     Page<Map<String, Object>> getPickingPage(Map<String, String> condition);
 
     Map<String, Object> contractPaymentStatistics(Map<String, String> condition);
@@ -29,4 +30,6 @@ public interface StockWaterService extends BaseService<StockWater> {
 
     Page<Map<String, Object>> remainingTodayPage(Map<String, String> condition);
 
+
+
 }

+ 20 - 8
hx-service/storage/src/main/java/com/fjhx/stock/service/impl/StockWaterServiceImpl.java

@@ -179,15 +179,16 @@ public class StockWaterServiceImpl extends ServiceImpl<StockWaterMapper, StockWa
     }
 
     @Override
-    public Page<Map<String, Object>> getPickingPage(Map<String, String> condition) {
+    public Map<String, Integer> getPickingStockChangeTypeCount(Map<String, String> condition) {
+        QueryWrapper<?> wrapper = createPickingWrapper(condition);
 
-        QueryWrapper<?> wrapper = WrapperUtil.init()
-                .periodOfTime("sw.CreatedTime") // 时间段查询
-                .eq("m.TechnologyType", "materialType") // 物料属性
-                .eq("uu.id", "userId") // 用户
-                .getWrapper();
+        return baseMapper.getPickingStockChangeTypeCount(wrapper);
+    }
 
-        wrapper.eq("sw.IsDelete", 0); // 未删除
+    @Override
+    public Page<Map<String, Object>> getPickingPage(Map<String, String> condition) {
+
+        QueryWrapper<?> wrapper = createPickingWrapper(condition);
 
         // 出入库类型
         String type = condition.get("type");
@@ -359,7 +360,6 @@ public class StockWaterServiceImpl extends ServiceImpl<StockWaterMapper, StockWa
         List<Map<String, Object>> list = baseMapper.remainingToday();
 
         Map<String, Map<String, Object>> Statistics = list.stream()
-//                .filter(item -> !item.get("materialType").toString().equals("4")) // 过滤出其他不统计
                 .collect(Collectors.toMap(
                         item -> item.get("materialType").toString().equals("3") ? "ink" : "fabric",
                         this::remainingTodayGetMap,
@@ -477,6 +477,18 @@ public class StockWaterServiceImpl extends ServiceImpl<StockWaterMapper, StockWa
         return page;
     }
 
+    private QueryWrapper<?> createPickingWrapper(Map<String, String> condition) {
+        QueryWrapper<?> wrapper = WrapperUtil.init(condition)
+                .periodOfTime("sw.CreatedTime") // 时间段查询
+                .eq("m.TechnologyType", "materialType") // 物料属性
+                .eq("sw.OperUserId", "userId") // 用户
+                .getWrapper();
+
+        wrapper.eq("sw.IsDelete", 0); // 未删除
+
+        return wrapper;
+    }
+
     private Map<String, Object> remainingTodayGetMap(Map<String, Object> item) {
         BigDecimal quantity = (BigDecimal) item.get("quantity");
         Map<String, Object> map = new HashMap<>();