Ver código fonte

任务书填写项目预算关联子课题中单位分工中的各单位经费总和,两者必须保持一致

梁世豪 4 meses atrás
pai
commit
85879755da

+ 17 - 1
src/main/java/com/liang/controller/PrjSubtopicController.java

@@ -4,7 +4,9 @@ import com.github.pagehelper.PageInfo;
4 4
 import com.liang.common.JsonTool;
5 5
 import com.liang.common.base.BaseController;
6 6
 import com.liang.common.base.BaseResult;
7
+import com.liang.entity.PrjCompletecompany;
7 8
 import com.liang.entity.PrjSubtopic;
9
+import com.liang.service.PrjCompletecompanyService;
8 10
 import com.liang.service.PrjSubtopicService;
9 11
 import org.slf4j.Logger;
10 12
 import org.slf4j.LoggerFactory;
@@ -37,6 +39,8 @@ public class PrjSubtopicController extends BaseController {
37 39
      */
38 40
     @Resource
39 41
     private PrjSubtopicService prjSubtopicService;
42
+    @Resource
43
+    private PrjCompletecompanyService prjCompletecompanyService;
40 44
 
41 45
     /**
42 46
      * 分页查询
@@ -86,7 +90,7 @@ public class PrjSubtopicController extends BaseController {
86 90
     @RequestMapping(value = "/list/{xm}", method = RequestMethod.POST)
87 91
     public BaseResult list(@PathVariable Integer xm) {
88 92
         List<PrjSubtopic> list = prjSubtopicService.getSubtopicList(xm);
89
-
93
+        List<PrjCompletecompany>prjCompletecompanyListFy=prjCompletecompanyService.getCompanyListFy(xm);
90 94
         PageInfo<PrjSubtopic> pageinfo = new PageInfo<>(list);
91 95
         //取出查询结果
92 96
         List<PrjSubtopic> rows = pageinfo.getList();
@@ -100,6 +104,7 @@ public class PrjSubtopicController extends BaseController {
100 104
 
101 105
         result.put(RESULT_ROWS, rows);
102 106
         result.put(RESULT_TOTAL, total);
107
+        result.put("prjCompletecompanyListFy",prjCompletecompanyListFy);
103 108
         result.put("sum", sum);
104 109
         System.out.println("sum:");
105 110
         System.out.println(sum);
@@ -117,7 +122,10 @@ public class PrjSubtopicController extends BaseController {
117 122
         List<Map<String, Object>> projectDate = prjSubtopicService.queryProjectDate(xm);
118 123
         SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-dd");
119 124
         Date rq = (Date) projectDate.get(0).get("WC");
125
+        Date qs = (Date) projectDate.get(0).get("QS");
120 126
         String wcrq = format.format(rq);
127
+        String qsrq = format.format(qs);
128
+        model.addAttribute("qsrq", qsrq);
121 129
         model.addAttribute("wcrq", wcrq);
122 130
         model.addAttribute("xm", xm);
123 131
         return "prjsubtopic/add";
@@ -160,6 +168,14 @@ public class PrjSubtopicController extends BaseController {
160 168
     @RequestMapping(value = "/forUpdate/{id}", method = RequestMethod.GET)
161 169
     public String forUpdate(Model model, @PathVariable Integer id) {
162 170
         PrjSubtopic subtopic = prjSubtopicService.queryById(id);
171
+        List<Map<String, Object>> projectDate = prjSubtopicService.queryProjectDate(subtopic.getXm());
172
+        SimpleDateFormat format = new SimpleDateFormat("YYYY-MM-dd");
173
+        Date rq = (Date) projectDate.get(0).get("WC");
174
+        Date qs = (Date) projectDate.get(0).get("QS");
175
+        String wcrq = format.format(rq);
176
+        String qsrq = format.format(qs);
177
+        model.addAttribute("qsrq", qsrq);
178
+        model.addAttribute("wcrq", wcrq);
163 179
         model.addAttribute("subtopic", subtopic);
164 180
 
165 181
         return "prjsubtopic/update";

+ 1 - 1
src/main/java/com/liang/controller/StaReimbursementController.java

@@ -815,7 +815,7 @@ public class StaReimbursementController extends BaseController {
815 815
         paraMap.put("xmmc",formData.getXmmc());
816 816
         paraMap.put("erpbh",formData.getErpbh());
817 817
         List<StaReimbursement> reimburseList = staReimbursementService.getReimburseList(paraMap);
818
-        List<String> listName = Arrays.asList("名称", "审批状态", "费用申请编号","ERP编号", "报账金额(元)", "不含税金额(元)", "税费(元)", "报账人", "创建时间", "费用申请");
818
+        List<String> listName = Arrays.asList("名称", "审批状态", "费用申请编号","ERP编号", "报账金额(元)", "不含税金额(元)", "税费(元)", "报账人", "创建时间", "费用申请名称");
819 819
         List<Map<String, String>> list = new ArrayList<>();
820 820
         for (StaReimbursement reimbursement : reimburseList) {
821 821
             Map<String, String> map = new HashMap<>();

+ 2 - 0
src/main/java/com/liang/dao/PrjCompletecompanyDao.java

@@ -113,5 +113,7 @@ public interface PrjCompletecompanyDao {
113 113
      * @return
114 114
      */
115 115
     List<PrjCompletecompany> getCompanyList(Map map);
116
+
117
+    List<PrjCompletecompany> getCompanyListFy(Integer xm);
116 118
 }
117 119
 

+ 7 - 0
src/main/java/com/liang/entity/PrjCompletecompany.java

@@ -1,5 +1,7 @@
1 1
 package com.liang.entity;
2 2
 
3
+import lombok.Data;
4
+
3 5
 import java.io.Serializable;
4 6
 
5 7
 /**
@@ -8,6 +10,7 @@ import java.io.Serializable;
8 10
  * @author makejava
9 11
  * @since 2023-03-10 11:21:40
10 12
  */
13
+@Data
11 14
 public class PrjCompletecompany implements Serializable {
12 15
     private static final long serialVersionUID = 925508725096854520L;
13 16
 
@@ -51,6 +54,10 @@ public class PrjCompletecompany implements Serializable {
51 54
     private Boolean sfzyzf;
52 55
     private String sfzyzfmc;
53 56
 
57
+    /**
58
+     * 子课题经费合计
59
+     */
60
+    private Double sumjf;
54 61
 
55 62
     public Integer getId() {
56 63
         return id;

+ 2 - 0
src/main/java/com/liang/service/PrjCompletecompanyService.java

@@ -98,4 +98,6 @@ public interface PrjCompletecompanyService {
98 98
      * @return
99 99
      */
100 100
     int batchDeleteByXm(List<Integer> xmList);
101
+
102
+    List<PrjCompletecompany> getCompanyListFy(Integer xm);
101 103
 }

+ 5 - 0
src/main/java/com/liang/service/impl/PrjCompletecompanyServiceImpl.java

@@ -105,4 +105,9 @@ public class PrjCompletecompanyServiceImpl implements PrjCompletecompanyService
105 105
     public int batchDeleteByXm(List<Integer> xmList) {
106 106
         return this.prjCompletecompanyDao.batchDeleteByXm(xmList);
107 107
     }
108
+
109
+    @Override
110
+    public List<PrjCompletecompany> getCompanyListFy(Integer xm) {
111
+        return this.prjCompletecompanyDao.getCompanyListFy(xm);
112
+    }
108 113
 }

+ 7 - 0
src/main/resources/mapper/PrjCompletecompanyDao.xml

@@ -257,4 +257,11 @@
257 257
             and DWMC like '%'+#{dwmc}+'%'
258 258
         </if>
259 259
     </select>
260
+    <select id="getCompanyListFy" resultType="com.liang.entity.PrjCompletecompany">
261
+        SELECT a.DWMC,b.SUMJF
262
+        FROM prj_CompleteCompany a
263
+        left JOIN (SELECT SUM(JF)AS SUMJF,DWMC FROM prj_DivisionCompany WHERE ZKT IN (SELECT ID FROM prj_SubTopic WHERE XM = #{xm}) GROUP  BY DWMC
264
+        ) b ON a.DWMC = b.DWMC
265
+        WHERE a.XM = #{xm}
266
+    </select>
260 267
 </mapper>

+ 16 - 5
src/main/resources/templates/prjproject/add.html

@@ -1391,6 +1391,8 @@
1391 1391
 
1392 1392
         //子课题
1393 1393
         var dataSubtopic = new Array();
1394
+        //子课题单位分工费用统计
1395
+        var prjCompletecompanyListFy = new Array();
1394 1396
 
1395 1397
         function freshSubtopic() {
1396 1398
             $.ajax({
@@ -1400,6 +1402,7 @@
1400 1402
                 dataType: "json",
1401 1403
                 success: function (result) {
1402 1404
                     dataSubtopic = result.data.rows;
1405
+                    prjCompletecompanyListFy =  result.data.prjCompletecompanyListFy;
1403 1406
 //年度预算总和
1404 1407
 
1405 1408
                     document.getElementById('rwsys').value = result.data.sum;
@@ -1658,8 +1661,6 @@
1658 1661
             budgetCols = [];
1659 1662
             budgetCols.push({type: 'numbers', width: '3%'});
1660 1663
             budgetCols.push({field: 'mc', width: '22%', title: '名称'});
1661
-            // budgetCols.push({field: 'px', width: '8%', title: '排序'});
1662
-            //budgetCols.push({field: 'nf', width: '8%', title: '年份'});
1663 1664
             budgetCols.push({field: 'ysje', width: '10%', title: '预算金额(万元)'});
1664 1665
             for (var i = 0; i < dataCompany.length; i++) {
1665 1666
                 budgetCols.push({
@@ -1672,9 +1673,6 @@
1672 1673
                     break;
1673 1674
             }
1674 1675
             ;
1675
-            //budgetCols.push({field: 'hjbm', width: '10%', title: '合计编码'});
1676
-            //budgetCols.push({field: 'bz', width: '10%', title: '备注'});
1677
-
1678 1676
         }
1679 1677
 
1680 1678
         //项目预算
@@ -1975,6 +1973,19 @@
1975 1973
                 for (var i = 0; i < data.length; i++) {
1976 1974
                     getBudget(budgets, data[i]);
1977 1975
                 }
1976
+                for (let i = 0; i < prjCompletecompanyListFy.length; i++) {
1977
+                    if (prjCompletecompanyListFy[i].sumjf == null){
1978
+                        prjCompletecompanyListFy[i].sumjf =0;
1979
+                    }
1980
+                    if ( budgets[0]['dw' + (i + 1)] == null ||  budgets[0]['dw' + (i + 1)] ==''){
1981
+                        budgets[0]['dw' + (i + 1)] ==0;
1982
+                    }
1983
+                    if (budgets[0]['dw' + (i + 1)] != prjCompletecompanyListFy[i].sumjf ){
1984
+                        alert("保存失败,"+prjCompletecompanyListFy[i].dwmc+'在子课题单位分工中所有经费总和为:'
1985
+                            +prjCompletecompanyListFy[i].sumjf+'万元,请确保所填数据一致!!!')
1986
+                        return false
1987
+                    }
1988
+                }
1978 1989
 
1979 1990
                 var index = layer.load(0, {shade: 0.1});
1980 1991
                 AjaxUtil.post({

+ 17 - 1
src/main/resources/templates/prjproject/update.html

@@ -567,7 +567,7 @@
567 567
         var util = layui.util;
568 568
         var xmId = $("#id").val();
569 569
         var initFlag = 0;
570
-
570
+        var prjCompletecompanyListFy =new Array();
571 571
         //日期
572 572
         laydate.render({
573 573
             elem: '#qs',
@@ -1464,6 +1464,8 @@
1464 1464
             page: true,
1465 1465
             skin: 'grid',
1466 1466
             parseData: function (res) { //res 即为原始返回的数据
1467
+                prjCompletecompanyListFy =  res.data.prjCompletecompanyListFy;
1468
+                console.log(prjCompletecompanyListFy)
1467 1469
 //年度预算总和
1468 1470
                 document.getElementById('rwsys').value = res.data.sum;
1469 1471
                 document.getElementById('rwsys2').value = res.data.sum;
@@ -2002,6 +2004,20 @@
2002 2004
             for (var i = 0; i < data.length; i++) {
2003 2005
                 getBudget(budgets, data[i]);
2004 2006
             }
2007
+            for (let i = 0; i < prjCompletecompanyListFy.length; i++) {
2008
+                if (prjCompletecompanyListFy[i].sumjf == null){
2009
+                    prjCompletecompanyListFy[i].sumjf =0;
2010
+                }
2011
+                if ( budgets[0]['dw' + (i + 1)] == null ||  budgets[0]['dw' + (i + 1)] ==''){
2012
+                    budgets[0]['dw' + (i + 1)] ==0;
2013
+                }
2014
+                if (budgets[0]['dw' + (i + 1)] != prjCompletecompanyListFy[i].sumjf ){
2015
+                    alert("保存失败,"+prjCompletecompanyListFy[i].dwmc+'在子课题单位分工中所有经费总和为:'
2016
+                        +prjCompletecompanyListFy[i].sumjf+'万元,请确保所填数据一致!!!')
2017
+                    return false
2018
+                }
2019
+            }
2020
+            console.log(budgets)
2005 2021
             var index = layer.load(0, {shade: 0.1});
2006 2022
             // 添加修改记录请求
2007 2023
             AjaxUtil.post({