Browse Source

外委合同支付情况bug 修复

ly 10 months ago
parent
commit
8e09abe647

+ 19 - 4
src/main/java/com/liang/controller/StaStatisticalSummaryController.java

@@ -10,6 +10,7 @@ import com.liang.entity.baobiao.UtilEntity;
10 10
 import com.liang.service.PrjAnnualbudgetService;
11 11
 import com.liang.service.StaStatisticalSummaryService;
12 12
 import io.swagger.annotations.ApiOperation;
13
+import io.swagger.models.auth.In;
13 14
 import org.springframework.data.domain.Page;
14 15
 import org.springframework.data.domain.PageRequest;
15 16
 import org.springframework.http.ResponseEntity;
@@ -39,7 +40,9 @@ public class StaStatisticalSummaryController extends BaseController {
39 40
 
40 41
     //项目报表(外委汇总表)页面
41 42
     @RequestMapping(value = "/outPay", method = RequestMethod.GET)
42
-    public String outPay() {
43
+    public String outPay(Model model) {
44
+        List<String> yearList = prjAnnualbudgetService.getYearList();
45
+        model.addAttribute("yearList", yearList);
43 46
         return "statistical/outPay";
44 47
     }
45 48
 
@@ -47,13 +50,25 @@ public class StaStatisticalSummaryController extends BaseController {
47 50
     @ResponseBody
48 51
     @RequestMapping(value = "/outPayData", method = RequestMethod.POST)
49 52
     public BaseResult outPayData(
53
+            @RequestParam("page")Integer pageNum,
54
+            @RequestParam("limit") Integer pageSize,
50 55
             @RequestParam(required = false, defaultValue = "", value = "XMMC") String xmmc,
51 56
             @RequestParam(required = false, defaultValue = "", value = "QSRQ") String qsrq,
52
-            @RequestParam(required = false, defaultValue = "", value = "JSRQ") String jsrq
57
+            @RequestParam(required = false, defaultValue = "", value = "JSRQ") String jsrq,
58
+            @RequestParam(required = false, defaultValue = "", value = "ERPBH")String erpbh,
59
+            @RequestParam(required = false, defaultValue = "",value = "FYSQBH")String fysqbh,
60
+            @RequestParam(required = false, defaultValue = "", value = "NF")String nf
53 61
                                  ) {
54 62
 
55
-
56
-        List<HashMap<String, Object>> staFeasibilityreport = staStatisticalSummaryService.outPaySummary(xmmc, qsrq, jsrq);
63
+        PageHelper.startPage(pageNum,pageSize);
64
+        Map<String, String> map = new HashMap<>();
65
+        map.put("xmmc",xmmc);
66
+        map.put("qsrq",qsrq);
67
+        map.put("jsrq",jsrq);
68
+        map.put("erpbh",erpbh);
69
+        map.put("nf",nf);
70
+        map.put("bh",fysqbh);
71
+        List<HashMap<String, Object>> staFeasibilityreport = staStatisticalSummaryService.outPaySummary(map);
57 72
 
58 73
         PageInfo<HashMap<String, Object>> pageinfo = new PageInfo<>(staFeasibilityreport);
59 74
         List<HashMap<String, Object>> rows = pageinfo.getList();

+ 1 - 1
src/main/java/com/liang/dao/StaStatisticalSummaryDao.java

@@ -17,7 +17,7 @@ public interface StaStatisticalSummaryDao {
17 17
      * @param JSRQ 结束日期
18 18
      * @return
19 19
      */
20
-    List<HashMap<String, Object>> outPaySummary(String XMMC, String QSRQ, String JSRQ);
20
+    List<HashMap<String, Object>> outPaySummary(Map map);
21 21
 
22 22
     List<HashMap<String, Object>> projectPay(Map map);
23 23
 }

+ 1 - 1
src/main/java/com/liang/service/StaStatisticalSummaryService.java

@@ -24,7 +24,7 @@ public interface StaStatisticalSummaryService {
24 24
      * @param JSRQ 结束日期
25 25
      * @return
26 26
      */
27
-    List<HashMap<String, Object>> outPaySummary(String XMMC, String QSRQ, String JSRQ);
27
+    List<HashMap<String, Object>> outPaySummary(Map map);
28 28
 
29 29
     List<HashMap<String, Object>> projectPay(Map map);
30 30
 

+ 2 - 2
src/main/java/com/liang/service/impl/StaStatisticalSummaryServiceImpl.java

@@ -16,8 +16,8 @@ public class StaStatisticalSummaryServiceImpl implements StaStatisticalSummarySe
16 16
     private StaStatisticalSummaryDao staStatisticalSummaryDao;
17 17
 
18 18
     @Override
19
-    public List<HashMap<String, Object>> outPaySummary(String XMMC, String QSRQ, String JSRQ) {
20
-        return staStatisticalSummaryDao.outPaySummary(XMMC, QSRQ, JSRQ);
19
+    public List<HashMap<String, Object>> outPaySummary(Map map) {
20
+        return staStatisticalSummaryDao.outPaySummary(map);
21 21
     }
22 22
 
23 23
     @Override

+ 55 - 68
src/main/resources/mapper/StaStatisticalSummaryDao.xml

@@ -3,97 +3,84 @@
3 3
 <mapper namespace="com.liang.dao.StaStatisticalSummaryDao">
4 4
 
5 5
     <!--统计报表外委汇总表-->
6
-    <select id="outPaySummary" resultType="Map">
6
+    <select id="outPaySummary" resultType="hashmap">
7 7
         SELECT
8
-        sta_OutPay.ID,
9
-        prj_Project.BM AS XMBH,
10
-        sys_dept_info.dept_name AS BM,
11
-        sta_BudgetApproval.XMMC,
12
-        sta_OutPay.YQCG,
13
-        sta_OutPay.QSRQ,
14
-        sta_OutPay.JSRQ,
15
-        sta_OutPay.WTDWBM,
16
-        sta_OutPay.WTDWMC,
8
+        so.ID,
9
+        p.BM AS XMBH,
10
+        d.dept_name AS BM,
11
+        ba.XMMC,
12
+        so.YQCG,
13
+        so.QSRQ,
14
+        so.JSRQ,
15
+        so.WTDWBM,
16
+        so.WTDWMC,
17 17
         CASE
18
-        WHEN base_Company.LX = 2 THEN '是'
19
-        WHEN base_Company.LX = 1 THEN '否'
20
-        WHEN base_Company.LX = 4 THEN '否'
21
-        WHEN base_Company.LX IS null THEN '否'
22
-        WHEN base_Company.LX = 0 THEN '否'
23
-        ELSE CAST(base_Company.LX AS varchar(11))
18
+        WHEN c.LX = 2 THEN '是'
19
+        ELSE '否'
24 20
         END AS SFNBDW,
25 21
         CASE
26
-        WHEN sta_BudgetApproval.SFBYJ = 0 THEN '否'
27
-        WHEN sta_BudgetApproval.SFBYJ = 1 THEN '是'
28
-        ELSE CAST(sta_BudgetApproval.SFBYJ AS varchar(11))
22
+        WHEN ba.SFBYJ = 1 THEN '是'
23
+        ELSE '否'
29 24
         END AS SFBYJ,
30
-        sta_OutPay.HTBZH,
31
-        sta_OutPay.HTBZBH,
32
-        sta_OutPay.ZCCB,
25
+        so.HTBZH,
26
+        so.HTBZBH,
27
+        so.ZCCB,
33 28
         (
34
-        SELECT SUM(bzje) AS CLBN
35
-        FROM (
36
-        SELECT b.BZJE AS bzje
37
-        FROM sta_OutPay, sta_BudgetApproval b
38
-        LEFT JOIN prj_Project p ON p.ID = b.XMID
29
+        SELECT SUM(b.BZJE)
30
+        FROM sta_BudgetApproval b
39 31
         LEFT JOIN prj_AnnualBudgetDetail g ON g.ID = b.FYLB
40
-        LEFT JOIN sta_Reimbursement r ON r.FYSQ = b.ID
41
-        WHERE
42
-        b.SFBZ = 1
43
-        AND b.ID = sta_OutPay.ZB
32
+        WHERE b.SFBZ = 1
33
+        AND b.ID = so.ZB
44 34
         AND YEAR(GETDATE()) = b.NF
45 35
         AND g.FYMC = '(1)材料费'
46
-        ) AS CLBN
47 36
         ) AS CLBN,
48 37
         (
49
-        SELECT SUM(bzje) AS CLBN
50
-        FROM (
51
-        SELECT b.BZJE AS bzje
52
-        FROM sta_OutPay, sta_BudgetApproval b
53
-        LEFT JOIN prj_Project p ON p.ID = b.XMID
38
+        SELECT SUM(b.BZJE)
39
+        FROM sta_BudgetApproval b
54 40
         LEFT JOIN prj_AnnualBudgetDetail g ON g.ID = b.FYLB
55
-        LEFT JOIN sta_Reimbursement r ON r.FYSQ = b.ID
56
-        WHERE
57
-        b.SFBZ = 1
58
-        AND b.ID = sta_OutPay.ZB
41
+        WHERE b.SFBZ = 1
42
+        AND b.ID = so.ZB
59 43
         AND YEAR(GETDATE()) = b.NF
60 44
         AND g.FYMC = '(1)仪器设备使用费'
61
-        ) AS CLBN
62 45
         ) AS YQBN,
63 46
         (
64
-        SELECT SUM(HTBZH)
65
-        FROM sta_OutPay so
66
-        WHERE
67
-        so.ZB = sta_BudgetApproval.ID
68
-        AND sta_BudgetApproval.XMLX = 'S7'
47
+        SELECT SUM(so2.HTBZH)
48
+        FROM sta_OutPay so2
49
+        WHERE so2.ZB = ba.ID
50
+        AND ba.XMLX = 'S7'
69 51
         ) AS ZBH,
70 52
         (
71
-        SELECT SUM(HTBZBH)
72
-        FROM sta_OutPay so
73
-        WHERE
74
-        so.ZB = sta_BudgetApproval.ID
75
-        AND sta_BudgetApproval.XMLX = 'S7'
53
+        SELECT SUM(so2.HTBZBH)
54
+        FROM sta_OutPay so2
55
+        WHERE so2.ZB = ba.ID
56
+        AND ba.XMLX = 'S7'
76 57
         ) AS ZBBH
77 58
         FROM
78
-        sta_OutPay,
79
-        sta_BudgetApproval,
80
-        prj_Project,
81
-        sys_dept_info,
82
-        base_Company
59
+        sta_OutPay so
60
+        INNER JOIN sta_BudgetApproval ba ON so.ZB = ba.ID
61
+        LEFT JOIN prj_Project p ON ba.XMID = p.ID
62
+        LEFT JOIN sys_dept_info d ON ba.SSBM = d.dept_id
63
+        LEFT JOIN base_Company c ON so.WTDWBM = c.BM
83 64
         WHERE
84
-        sta_OutPay.ZB = sta_BudgetApproval.ID
85
-        AND sta_BudgetApproval.XMID = prj_Project.ID
86
-        AND sta_BudgetApproval.SSBM = sys_dept_info.dept_id
87
-        AND sta_OutPay.WTDWBM = base_Company.BM
88
-        AND sta_OutPay.WTDWBM != 'AA20170731220855_18'
89
-        <if test="XMMC != null and XMMC != ''">
90
-            AND sta_BudgetApproval.XMMC LIKE '%${XMMC}%'
65
+        so.WTDWBM != 'AA20170731220855_18'
66
+
67
+        <if test="xmmc != null and xmmc != ''">
68
+            AND  ba.XMMC LIKE '%'+#{xmmc}+'%'
69
+        </if>
70
+        <if test="qsrq != null and qsrq != ''">
71
+            AND so.QSRQ  <![CDATA[>= ]]> #{qsrq}
72
+        </if>
73
+        <if test="jsrq != null and jsrq != ''">
74
+            AND so.JSRQ  <![CDATA[<= ]]> #{jsrq}
91 75
         </if>
92
-        <if test="QSRQ != null and QSRQ != ''">
93
-            AND sta_OutPay.QSRQ  <![CDATA[>= ]]> #{QSRQ}
76
+        <if test="erpbh != null and erpbh != ''">
77
+            AND ba.ERPBH  like '%'+#{erpbh}+'%'
94 78
         </if>
95
-        <if test="JSRQ != null and JSRQ != ''">
96
-            AND sta_OutPay.JSRQ  <![CDATA[<= ]]> #{JSRQ}
79
+        <if test="bh != null and bh != ''">
80
+            AND ba.BH like '%'+#{bh}+'%'
81
+        </if>
82
+        <if test="nf != null and nf != ''">
83
+            AND ba.NF = #{nf}
97 84
         </if>
98 85
     </select>
99 86
 

+ 38 - 12
src/main/resources/templates/statistical/outPay.html

@@ -27,25 +27,29 @@
27 27
                         <div class="layui-inline" style="margin-right: 10px;">
28 28
                             <label class="layui-form-label" style="width: 80px;">项目名称</label>
29 29
                             <div class="layui-input-inline" style="width: 224px;">
30
-                                <input type="text" id="xmmc" name="xmmc" autocomplete="off" class="layui-input">
30
+                                <input type="text" id="XMMC" name="XMMC" autocomplete="off" class="layui-input">
31 31
                             </div>
32 32
                         </div>
33 33
                         <div class="layui-inline" style="margin-right: 10px;">
34 34
                             <label class="layui-form-label" style="width: 80px;">erp编号</label>
35 35
                             <div class="layui-input-inline" style="width: 140px;">
36
-                                <input type="text" id="erpbh" name="erpbh" autocomplete="off" class="layui-input">
36
+                                <input type="text" id="ERPBH" name="ERPBH" autocomplete="off" class="layui-input">
37 37
                             </div>
38 38
                         </div>
39 39
                         <div class="layui-inline" style="margin-right: 10px;">
40 40
                             <label class="layui-form-label" style="width: 80px;">费用申请号</label>
41 41
                             <div class="layui-input-inline" style="width: 140px;">
42
-                                <input type="text" id="fysqbh" name="fysqbh" autocomplete="off" class="layui-input">
42
+                                <input type="text" id="FYSQBH" name="FYSQBH" autocomplete="off" class="layui-input">
43 43
                             </div>
44 44
                         </div>
45 45
                         <div class="layui-inline" style="margin-right: 10px;">
46
-                            <label class="layui-form-label" style="width: 80px;">年度</label>
47
-                            <div class="layui-input-inline" style="width: 140px;">
48
-                                <input type="text" id="nf" name="nf" autocomplete="off" class="layui-input">
46
+                            <label class="layui-form-label" style="width: 60px">年份</label>
47
+                            <div class="layui-input-inline" style="width: 150px">
48
+                                <select name="NF" id="NF" lay-filter="status">
49
+                                    <option value="">全部</option>
50
+                                    <option th:each="item:${yearList}" th:text="${item.nf}"
51
+                                            th:value="${item.nf}"></option>
52
+                                </select>
49 53
                             </div>
50 54
                         </div>
51 55
                     </div>
@@ -58,7 +62,7 @@
58 62
                             </div>
59 63
                             <div class="layui-form-mid">-</div>
60 64
                             <div class="layui-input-inline" style="width: 100px;">
61
-                                <input type="text" name="JZRQ" id="JZRQ" placeholder="结束日期" class="layui-input" readonly>
65
+                                <input type="text" name="JSRQ" id="JSRQ" placeholder="结束日期" class="layui-input" readonly>
62 66
                             </div>
63 67
                         </div>
64 68
                         <div class="layui-inline" style="margin-right: 10px; margin-left: 10px;">
@@ -78,6 +82,9 @@
78 82
         </fieldset>
79 83
 
80 84
         <script type="text/html" id="toolbarDemo">
85
+            <button class="layui-btn layui-btn-sm" lay-event="export" style="background-color: #2f363c" >
86
+                <i class="layui-icon layui-icon-export" style="font-size: 10px;"></i>批量导出
87
+            </button>
81 88
 
82 89
         </script>
83 90
 
@@ -121,7 +128,7 @@
121 128
             elem: '#QSRQ'
122 129
         });
123 130
         laydate.render({
124
-            elem: '#JZRQ'
131
+            elem: '#JSRQ'
125 132
         });
126 133
 
127 134
         var currTable = table.render({
@@ -216,10 +223,29 @@
216 223
                 }
217 224
             });
218 225
         });
219
-        var cancelIndex;
220
-        /**
221
-         * toolbar监听事件
222
-         */
226
+        table.on('toolbar(currentTableFilter)',function (obj){
227
+            var formData = form.val('search-form');
228
+            console.log(formData);
229
+            var formDataString = JSON.stringify(formData);
230
+            if(obj.event === 'export'){
231
+                var formData = form.val('search-form');
232
+                console.log(formData);
233
+                var formDataString = JSON.stringify(formData);
234
+                AjaxUtil.post({
235
+                    url:AjaxUtil.ctx +'staStatisticalSummary/getAll/'+formDataString,
236
+                    contentType: "application/json",
237
+                    timeout: 15000, //大批量导出时会出现超时问题
238
+                    success: function(res){
239
+                        console.log(res);
240
+                        table.exportFile('currentTableId',res.data,'xlsx');
241
+                    },
242
+                    error:function (error) {
243
+                        Message.error(error,2000)
244
+
245
+                    }
246
+                });
247
+            }
248
+        });
223 249
     });
224 250
 
225 251