Преглед изворни кода

Merge branch 'master' of http://101.36.160.140:21044/emergency-report/vsualization-report

ZeroLiYi пре 2 година
родитељ
комит
dc57c321e4

+ 13 - 2
src/main/java/com/unis/vis/controller/VisController.java

@@ -1,6 +1,11 @@
1
 package com.unis.vis.controller;
1
 package com.unis.vis.controller;
2
 
2
 
3
 import com.unis.vis.model.*;
3
 import com.unis.vis.model.*;
4
+import com.unis.vis.controller.vo.MaterialReserveSituationVO;
5
+import com.unis.vis.model.InboundMaterialInfo;
6
+import com.unis.vis.model.OutboundMaterialInfo;
7
+import com.unis.vis.model.SysDept;
8
+import com.unis.vis.model.SysTreeDict;
4
 import com.unis.vis.service.InboundMaterialInfoService;
9
 import com.unis.vis.service.InboundMaterialInfoService;
5
 import com.unis.vis.service.OutboundMaterialInfoService;
10
 import com.unis.vis.service.OutboundMaterialInfoService;
6
 import com.unis.vis.service.SysDeptService;
11
 import com.unis.vis.service.SysDeptService;
@@ -12,6 +17,7 @@ import org.springframework.web.bind.annotation.RestController;
12
 
17
 
13
 import javax.annotation.Resource;
18
 import javax.annotation.Resource;
14
 import java.util.List;
19
 import java.util.List;
20
+import java.util.Map;
15
 
21
 
16
 /**
22
 /**
17
  * @author qingsong.han
23
  * @author qingsong.han
@@ -88,8 +94,13 @@ public class VisController {
88
         List<SysDept> list = sysDeptService.getMapPoint();
94
         List<SysDept> list = sysDeptService.getMapPoint();
89
         return list;
95
         return list;
90
     }
96
     }
91
-
92
-
97
+    /**
98
+     * 物资储备情况
99
+     */
100
+    @GetMapping("/get-material-situation")
101
+    public Map<String,List<MaterialReserveSituationVO>> selectWarehouseForMaterialType() {
102
+        return inboundMaterialInfoService.selectWarehouseForMaterialType();
103
+    }
93
     /**
104
     /**
94
      * 出入库记录
105
      * 出入库记录
95
      * type: 1入库 2出库
106
      * type: 1入库 2出库

+ 31 - 0
src/main/java/com/unis/vis/controller/vo/MaterialReserveSituationVO.java

@@ -0,0 +1,31 @@
1
+package com.unis.vis.controller.vo;
2
+
3
+import com.baomidou.mybatisplus.annotation.TableField;
4
+import lombok.Data;
5
+
6
+import java.util.List;
7
+
8
+@Data
9
+public class MaterialReserveSituationVO {
10
+
11
+    /**
12
+     * 物资类别
13
+     */
14
+    private String materialTypeZn;
15
+    /**
16
+     * 物资名称
17
+     */
18
+    private String materialNameZn;
19
+    /**
20
+     * 规格
21
+     */
22
+    private String specs;
23
+    /**
24
+     * 数量+单位
25
+     */
26
+    private String quantityAll;
27
+    /**
28
+     * 总价
29
+     */
30
+    private String totalPriceAll;
31
+}

+ 4 - 0
src/main/java/com/unis/vis/mapper/InboundMaterialInfoMapper.java

@@ -1,6 +1,7 @@
1
 package com.unis.vis.mapper;
1
 package com.unis.vis.mapper;
2
 
2
 
3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
3
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
4
+import com.unis.vis.controller.vo.MaterialReserveSituationVO;
4
 import com.unis.vis.model.InboundMaterialInfo;
5
 import com.unis.vis.model.InboundMaterialInfo;
5
 import com.unis.vis.model.OutAndInboundRecord;
6
 import com.unis.vis.model.OutAndInboundRecord;
6
 import org.apache.ibatis.annotations.Param;
7
 import org.apache.ibatis.annotations.Param;
@@ -16,6 +17,9 @@ public interface InboundMaterialInfoMapper extends BaseMapper<InboundMaterialInf
16
 
17
 
17
      List<InboundMaterialInfo> getMaterialSituation();
18
      List<InboundMaterialInfo> getMaterialSituation();
18
 
19
 
20
+
21
+    List<MaterialReserveSituationVO> selectWarehouseForMaterialType();
22
+
19
      List<InboundMaterialInfo> getInventoryReceiptStatus();
23
      List<InboundMaterialInfo> getInventoryReceiptStatus();
20
 
24
 
21
      List<InboundMaterialInfo> getWzsyqkpm();
25
      List<InboundMaterialInfo> getWzsyqkpm();

+ 3 - 1
src/main/java/com/unis/vis/service/InboundMaterialInfoService.java

@@ -1,11 +1,13 @@
1
 package com.unis.vis.service;
1
 package com.unis.vis.service;
2
 
2
 
3
 import com.baomidou.mybatisplus.extension.service.IService;
3
 import com.baomidou.mybatisplus.extension.service.IService;
4
+import com.unis.vis.controller.vo.MaterialReserveSituationVO;
4
 import com.unis.vis.model.InboundMaterialInfo;
5
 import com.unis.vis.model.InboundMaterialInfo;
5
 import com.unis.vis.model.OutAndInboundRecord;
6
 import com.unis.vis.model.OutAndInboundRecord;
6
 
7
 
7
 import java.util.HashMap;
8
 import java.util.HashMap;
8
 import java.util.List;
9
 import java.util.List;
10
+import java.util.Map;
9
 
11
 
10
 
12
 
11
 public interface InboundMaterialInfoService extends IService<InboundMaterialInfo> {
13
 public interface InboundMaterialInfoService extends IService<InboundMaterialInfo> {
@@ -19,5 +21,5 @@ public interface InboundMaterialInfoService extends IService<InboundMaterialInfo
19
     HashMap<String, List<InboundMaterialInfo>> getWzsyqkpm();
21
     HashMap<String, List<InboundMaterialInfo>> getWzsyqkpm();
20
 
22
 
21
     List<OutAndInboundRecord> getEnterExitRecords(Integer type);
23
     List<OutAndInboundRecord> getEnterExitRecords(Integer type);
22
-
24
+    Map<String,List<MaterialReserveSituationVO>> selectWarehouseForMaterialType();
23
 }
25
 }

+ 12 - 0
src/main/java/com/unis/vis/service/impl/InboundMaterialInfoServiceImpl.java

@@ -2,6 +2,7 @@ package com.unis.vis.service.impl;
2
 
2
 
3
 
3
 
4
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
4
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
5
+import com.unis.vis.controller.vo.MaterialReserveSituationVO;
5
 import com.unis.vis.mapper.InboundMaterialInfoMapper;
6
 import com.unis.vis.mapper.InboundMaterialInfoMapper;
6
 import com.unis.vis.model.InboundMaterialInfo;
7
 import com.unis.vis.model.InboundMaterialInfo;
7
 import com.unis.vis.model.OutAndInboundRecord;
8
 import com.unis.vis.model.OutAndInboundRecord;
@@ -12,6 +13,8 @@ import javax.annotation.Resource;
12
 import java.util.Comparator;
13
 import java.util.Comparator;
13
 import java.util.HashMap;
14
 import java.util.HashMap;
14
 import java.util.List;
15
 import java.util.List;
16
+import java.util.Map;
17
+import java.util.stream.Collectors;
15
 import java.util.stream.Collectors;
18
 import java.util.stream.Collectors;
16
 
19
 
17
 @Service
20
 @Service
@@ -32,6 +35,15 @@ public class InboundMaterialInfoServiceImpl extends ServiceImpl<InboundMaterialI
32
     }
35
     }
33
 
36
 
34
     @Override
37
     @Override
38
+    public Map<String, List<MaterialReserveSituationVO>> selectWarehouseForMaterialType() {
39
+        List<MaterialReserveSituationVO> situationVOS = inboundMaterialInfoMapper.selectWarehouseForMaterialType();
40
+        Map<String, List<MaterialReserveSituationVO>> collect =new HashMap<>();
41
+        if (situationVOS!=null&&!situationVOS.isEmpty()){
42
+             collect = situationVOS.stream().collect(Collectors.groupingBy(MaterialReserveSituationVO::getMaterialTypeZn));
43
+        }
44
+        return collect;
45
+    }
46
+    @Override
35
     public List<InboundMaterialInfo> getInventoryReceiptStatus() {
47
     public List<InboundMaterialInfo> getInventoryReceiptStatus() {
36
         return inboundMaterialInfoMapper.getInventoryReceiptStatus();
48
         return inboundMaterialInfoMapper.getInventoryReceiptStatus();
37
     }
49
     }

+ 14 - 2
src/main/resources/mapper/vis/InboundMaterialInfoMapper.xml

@@ -39,10 +39,9 @@
39
                SUM(imi.total_price) as total_price
39
                SUM(imi.total_price) as total_price
40
         FROM "inbound_material_info" imi
40
         FROM "inbound_material_info" imi
41
                  LEFT JOIN "inbound_info" ii ON imi."inbound_id" = ii."inbound_id"
41
                  LEFT JOIN "inbound_info" ii ON imi."inbound_id" = ii."inbound_id"
42
-                 LEFT JOIN "SYS_TREE_DICT" std ON std."id" = ii."material_type"
42
+                 INNER JOIN "SYS_TREE_DICT" std ON std."id" = ii."material_type" AND std.DIFFERENCE_ = 2
43
         WHERE ii."status" = 5
43
         WHERE ii."status" = 5
44
           AND ii."is_available" = 0
44
           AND ii."is_available" = 0
45
-          AND ii."material_type" in (SELECT id FROM SYS_TREE_DICT std WHERE std.DIFFERENCE_ = 2)
46
         GROUP BY std.NAME_
45
         GROUP BY std.NAME_
47
     </select>
46
     </select>
48
     <!-- 出入库记录 -->
47
     <!-- 出入库记录 -->
@@ -98,4 +97,17 @@
98
         ORDER BY record.bound_time desc
97
         ORDER BY record.bound_time desc
99
     </select>
98
     </select>
100
 
99
 
100
+
101
+    <select id="selectWarehouseForMaterialType" resultType="com.unis.vis.controller.vo.MaterialReserveSituationVO">
102
+        SELECT c.NAME_ as materialTypeZn,d.NAME_ as materialNameZn,a.specs as specs
103
+             ,concat(TO_CHAR(sum(to_number(a.quantity))),e.NAME_)  as quantityAll ,sum(TO_NUMBER(a.total_price)) as totalPriceAll
104
+        from inbound_material_info a
105
+                 left join inbound_info b ON a.inbound_id=b.inbound_id
106
+                 left JOIN SYS_TREE_DICT c on a.material_type=c.ID
107
+                 left JOIN SYS_TREE_DICT d on a.material_name=d.ID
108
+                 left JOIN SYS_TREE_DICT e on a.unit=e.ID
109
+        where b.status=5  AND  b.is_available=0 AND  a.is_available=0
110
+        group  by  b.warehouse,a.material_type,a.material_name
111
+    </select>
112
+
101
 </mapper>
113
 </mapper>

+ 2 - 3
src/main/resources/mapper/vis/OutboundMaterialInfoMapper.xml

@@ -52,17 +52,16 @@
52
         GROUP BY dic.NAME_
52
         GROUP BY dic.NAME_
53
 
53
 
54
     </select>
54
     </select>
55
-    <!-- 物资出库 -->
55
+    <!-- 物资出库情况 -->
56
     <select id="getInventoryDispatchStatus" resultType="com.unis.vis.model.OutboundMaterialInfo">
56
     <select id="getInventoryDispatchStatus" resultType="com.unis.vis.model.OutboundMaterialInfo">
57
         SELECT std.NAME_            as material_type,
57
         SELECT std.NAME_            as material_type,
58
                SUM(imi.quantity)    as quantity,
58
                SUM(imi.quantity)    as quantity,
59
                SUM(imi.total_price) as total_price
59
                SUM(imi.total_price) as total_price
60
         FROM "outbound_material_info" imi
60
         FROM "outbound_material_info" imi
61
                  LEFT JOIN "outbound_info" ii ON imi."outbound_id" = ii."outbound_id"
61
                  LEFT JOIN "outbound_info" ii ON imi."outbound_id" = ii."outbound_id"
62
-                 LEFT JOIN "SYS_TREE_DICT" std ON std."id" = ii."material_type"
62
+                 INNER JOIN "SYS_TREE_DICT" std ON std."id" = ii."material_type" AND std.DIFFERENCE_ = 2
63
         WHERE ii."status" = 5
63
         WHERE ii."status" = 5
64
           AND ii."is_available" = 0
64
           AND ii."is_available" = 0
65
-          AND ii."material_type" in (SELECT id FROM SYS_TREE_DICT std WHERE std.DIFFERENCE_ = 2)
66
         GROUP BY std.NAME_
65
         GROUP BY std.NAME_
67
     </select>
66
     </select>
68
 
67