ソースを参照

报账界面添加费用名称筛选条件,合同保存改为需要一次性保存全部

梁世豪 3 週間 前
コミット
3a6f9860f7

+ 3 - 0
src/main/java/com/liang/controller/StaReimbursementController.java

@@ -129,6 +129,9 @@ public class StaReimbursementController extends BaseController {
129 129
         model.addAttribute("approveList", approveList);
130 130
         //当前用户ID
131 131
         model.addAttribute("userId", getSysUserId());
132
+        //费用类别
133
+        List<String> xmlx = staBudgetapprovalService.getXmlx();
134
+        model.addAttribute("fylb", xmlx);
132 135
         //年份
133 136
         List<String> yearList = staReimbursementDao.getYearList();
134 137
         model.addAttribute("yearList", yearList);

+ 140 - 143
src/main/resources/templates/prjcontract/add.html

@@ -177,9 +177,6 @@
177 177
                         </div>
178 178
                         <!-- 右侧悬浮按钮 -->
179 179
                         <div class="right-bottom-btn" style="margin-bottom: 5px">
180
-                            <button type="button" class="layui-btn" lay-submit lay-filter="saveBtn3">
181
-                                <i class="layui-icon layui-icon-ok"></i>保存
182
-                            </button>
183 180
                             <button class="layui-btn" lay-filter="cancleBtn">
184 181
                                 <i class="layui-icon layui-icon-close"></i>取消
185 182
                             </button>
@@ -217,9 +214,6 @@
217 214
                         </div>
218 215
                         <!-- 右侧悬浮按钮 -->
219 216
                         <div class="right-bottom-btn" style="margin-bottom: 5px">
220
-                            <button type="button" class="layui-btn" lay-submit lay-filter="saveBtn2">
221
-                                <i class="layui-icon layui-icon-ok"></i>保存
222
-                            </button>
223 217
                             <button class="layui-btn" lay-filter="cancleBtn">
224 218
                                 <i class="layui-icon layui-icon-close"></i>取消
225 219
                             </button>
@@ -625,10 +619,59 @@
625 619
 
626 620
         // 监听确认按钮(常规)
627 621
         form.on('submit(saveBtn)', function (data) {
622
+            console.log(data.field)
628 623
             var htje =data.field.htje;
629 624
             var sfys = document.getElementById('sfys').value;
630 625
             var yssj = document.getElementById('yssj').value;
631 626
             var sfsxtndw = document.getElementById('sfsxtndw').value;
627
+            var bzjh = table.cache["currentTableId"];
628
+            var fkjh = table.cache["currentTableId3"];
629
+
630
+            if (bzjh.length === 0) {
631
+                Message.warning("请创建报账计划!!!", 1500);
632
+                return;
633
+            }else {
634
+                var count = 0;
635
+                let sum = 0;
636
+                const htje =parseFloat($("#htje").val()).toFixed(8);
637
+                for (let i = 0; i < bzjh.length; i++) {
638
+                    let zfje = parseFloat(bzjh[i].bzje) || 0;
639
+                    let scaledValue = (zfje * 100000).toFixed(8);
640
+                    sum += parseFloat(scaledValue);
641
+                }
642
+                console.log('sum1:' + sum)
643
+                console.log('htje:' + htje)
644
+                count = sum / 100000;
645
+                if (count > htje) {
646
+                    Message.warning("报账计划付款总金额大于合同金额!!!", 1500);
647
+                    return false;
648
+                } else if (count < htje) {
649
+                    Message.warning("报账计划付款总金额小于合同金额!", 1500);
650
+                    return false;
651
+                }
652
+            }
653
+            if (fkjh.length === 0) {
654
+                Message.warning("请创建付款计划!!!", 1500)
655
+                return;
656
+            }else {
657
+                var count = 0;
658
+                let sum = 0;
659
+                const htje =parseFloat($("#htje").val()).toFixed(8);
660
+                for (let i = 0; i < fkjh.length; i++) {
661
+                    let zfje = parseFloat(fkjh[i].zfje) || 0;
662
+                    let scaledValue = (zfje * 100000).toFixed(8);
663
+                    sum += parseFloat(scaledValue);
664
+                }
665
+                console.log('sum2:' + sum)
666
+                count = sum / 100000;
667
+                if (count>htje){
668
+                    Message.warning("付款计划付款总金额大于合同金额!!!", 1500);
669
+                    return false;
670
+                }else if (count<htje){
671
+                    Message.warning("付款计划付款总金额小于合同金额!!!", 1500);
672
+                    return false;
673
+                }
674
+            }
632 675
             if (sfsxtndw == 'on'){
633 676
                 data.field.sfsxtndw = 1;
634 677
             }
@@ -643,7 +686,6 @@
643 686
                 if (yssj === '') {
644 687
                     delete data.field.yssj;
645 688
                 }
646
-
647 689
             }
648 690
             if (xmzys == null || xmzys == ''){
649 691
                 layer.msg('保存失败,当前任务书项目总预算为空,请完善当前任务书的子课题!',{icon:2});
@@ -702,14 +744,92 @@
702 744
                         parent.setUpdateFlag();
703 745
                         Message.success(res.message, 1000);
704 746
                     }
747
+                    if(htId != -1){
748
+                        var subTopics = table.cache["currentTableId"];
749
+                        // 获取合同金额,并保留 小数点后八位
750
+                        const htje =parseFloat($("#htje").val()).toFixed(8);
751
+                        var prjReimbursementplanList =[];
752
+                        for (const item of subTopics) {
753
+                            var prjReimbursementplan = {
754
+                                "id":item.id,
755
+                                "nf": item.nf,
756
+                                "ht": htId,
757
+                                "jhmc": item.jhmc,
758
+                                "rws": item.rws,
759
+                                "bzbl": item.bzbl,
760
+                                "bzje": item.bzje,
761
+                            };
762
+                            prjReimbursementplanList.push(prjReimbursementplan);
763
+                        }
764
+                            AjaxUtil.post({
765
+                                url: AjaxUtil.ctx + "prjReimbursementplan/doAdd/?htje="+htje,
766
+                                contentType: "application/json",
767
+                                data: JSON.stringify(prjReimbursementplanList),
768
+                                success: function (res) {
769
+                                    if (res.code == 0){
770
+                                        layer.msg(res.message,{icon:1},function () {
771
+                                        });
772
+                                    }else if (res.code == -1){
773
+                                        layer.msg(res.message,{icon:2},function () {
774
+                                            return;
775
+                                        })
776
+                                    }
777
+                                },
778
+                                error: function (error) {
779
+                                    Message.error(error.message, 1000);
780
+                                }
781
+                            });
782
+                        }
783
+
784
+
785
+                    if (htId != -1){
786
+                        var subTopics = table.cache["currentTableId3"];
787
+                        // 获取合同金额,并保留 小数点后八位
788
+                        const htje =parseFloat($("#htje").val()).toFixed(8);
789
+                        var prjPayplanList =[];
790
+
791
+                        for (const item of subTopics) {
792
+                            var prjPayplan = {
793
+                                "id":item.id,
794
+                                "fkxx": item.fkxx,
795
+                                "fkyq": item.fkyq,
796
+                                "ht": htId,
797
+                                "jhmc": item.jhmc,
798
+                                "rws": item.rws,
799
+                                "zfbl": item.zfbl,
800
+                                "zfje": item.zfje,
801
+                            };
802
+                            prjPayplanList.push(prjPayplan);
803
+                        }
804
+                            AjaxUtil.post({
805
+                                url: AjaxUtil.ctx + "prjPayplan/doAdd1/?htje="+htje,
806
+                                contentType: "application/json",
807
+                                data: JSON.stringify(prjPayplanList),
808
+                                success: function (res) {
809
+                                    if (res.code ==0){
810
+                                        layer.msg(res.message,{icon:1},function () {
811
+                                            layer.msg(res.message);
812
+                                            var iframeIndex = parent.layer.getFrameIndex(window.name);
813
+                                            parent.layer.close(iframeIndex);
814
+                                        });
815
+                                    }else if (res.code == -1){
816
+                                        layer.msg(res.message,{icon:2},function () {
817
+                                            return;
818
+                                        })
819
+                                    }
820
+                                },
821
+                                error: function (error) {
822
+                                    Message.error(error.message, 1000);
823
+                                }
824
+                            });
825
+                        }
705 826
                     layer.close(index);
706 827
                 },
707 828
                 error: function (error) {
708 829
                     Message.error(error.message, 1000)
709
-                    layer.close(index);
710 830
                 }
711 831
             });
712
-
832
+            layer.close(index);
713 833
             return false;
714 834
         });
715 835
         var dataBzjh = new Array();
@@ -738,9 +858,6 @@
738 858
         });
739 859
         //新建报账计划
740 860
         $("button[lay-filter='btnAdd3']").click(function () {
741
-            if (htId == -1) {
742
-                Message.error("请先创建并保存合同,然后创建报账计划", 2000);
743
-            } else {
744 861
                 var startYear = new Date(rwsqssj).getFullYear();
745 862
                 var endYear = new Date(rwswcsj).getFullYear();
746 863
                 var years = [];
@@ -774,7 +891,7 @@
774 891
                         updateflag = 0;
775 892
                     }
776 893
                 });
777
-            }
894
+
778 895
             return false;
779 896
         });
780 897
         //编辑报账计划
@@ -787,7 +904,7 @@
787 904
             var checkStatus = table.checkStatus('currentTableId')
788 905
                 , data = checkStatus.data;
789 906
             if (data == null || data.length === 0) {
790
-                Message.warning("请选择要编辑的付款计划!", 1500);
907
+                Message.warning("请选择要编辑的报账计划!", 1500);
791 908
             } else if (data.length > 1) {
792 909
                 Message.warning("请选择一条记录进行编辑!", 1500);
793 910
             } else {
@@ -850,7 +967,7 @@
850 967
             var checkStatus = table.checkStatus('currentTableId')
851 968
                 , data = checkStatus.data;
852 969
             if (data == null || data.length === 0) {
853
-                Message.warning("请选择要浏览的付款计划!", 1500);
970
+                Message.warning("请选择要浏览的报账计划!", 1500);
854 971
             } else if (data.length > 1) {
855 972
                 Message.warning("请选择一条记录进行浏览!", 1500);
856 973
             } else {
@@ -883,7 +1000,7 @@
883 1000
             var checkStatus = table.checkStatus('currentTableId')
884 1001
                 , data = checkStatus.data;
885 1002
             if (data == null || data.length === 0) {
886
-                Message.warning("请选择要删除的付款计划!", 1500);
1003
+                Message.warning("请选择要删除的报账计划!", 1500);
887 1004
             } else {
888 1005
                 layer.confirm('确定删除所选中的报账计划吗?', function (index) {
889 1006
                     layer.close(index);
@@ -926,64 +1043,9 @@
926 1043
         });
927 1044
 
928 1045
         //提交报账计划
929
-        form.on('submit(saveBtn3)', function (data) {
930
-            var subTopics = table.cache["currentTableId"];
931
-            // 获取合同金额,并保留 小数点后八位
932
-            const htje =parseFloat($("#htje").val()).toFixed(8);
933
-            var prjReimbursementplanList =[];
934
-            var count = 0;
935
-            let sum =0;
936
-            if (!subTopics && subTopics.length === 0) {
937
-                Message.warning("请先创建报账计划!!!", 1500);
938
-                return;
939
-            }
940
-            for (let i = 0; i < subTopics.length; i++) {
941
-                let bzje = parseFloat(subTopics[i].bzje) || 0;
942
-                let scaledValue = (bzje * 100000).toFixed(8);
943
-                sum += parseFloat(scaledValue);
944
-            }
945
-            count = sum/100000;
946
-            for (const item of subTopics) {
947
-                var prjReimbursementplan = {
948
-                    "id":item.id,
949
-                    "nf": item.nf,
950
-                    "ht": item.ht,
951
-                    "jhmc": item.jhmc,
952
-                    "rws": item.rws,
953
-                    "bzbl": item.bzbl,
954
-                    "bzje": item.bzje,
955
-                };
956
-                prjReimbursementplanList.push(prjReimbursementplan);
957
-            }
958
-            if (count>htje){
959
-                Message.warning("报账计划付款总金额大于合同金额!!!", 1500);
960
-                return;
961
-            }else if (count<htje){
962
-                Message.warning("报账计划付款总金额小于合同金额!", 1500);
963
-                return;
964
-            }else {
965
-                var index = layer.load(0, {shade: 0.1});
966
-                AjaxUtil.post({
967
-                    url: AjaxUtil.ctx + "prjReimbursementplan/doAdd/?htje="+htje,
968
-                    contentType: "application/json",
969
-                    data: JSON.stringify(prjReimbursementplanList),
970
-                    success: function (res) {
971
-                        if (res.code == 0){
972
-                            layer.msg(res.message,{icon:1},function () {
973
-                                layer.close(index)
974
-                            });
975
-                        }else if (res.code == -1){
976
-                            layer.msg(res.message,{icon:2},function () {
977
-                                return;
978
-                            })
979
-                        }
980
-                    },
981
-                    error: function (error) {
982
-                        Message.error(error.message, 1000);
983
-                    }
984
-                });
985
-            }
986
-        });
1046
+        // form.on('submit(saveBtn3)', function (data) {
1047
+        //
1048
+        // });
987 1049
 
988 1050
 
989 1051
         //付款计划
@@ -1025,9 +1087,6 @@
1025 1087
         });
1026 1088
             // 监听新建按钮(付款计划)
1027 1089
         $("button[lay-filter='btnAdd2']").click(function () {
1028
-            if (htId == -1) {
1029
-                Message.error("请先创建并保存合同,然后创建付款计划", 2000);
1030
-            } else {
1031 1090
                 htInfo = {
1032 1091
                     "rws": rwsId,
1033 1092
                     "ht": htId,
@@ -1055,7 +1114,7 @@
1055 1114
                         updateflag = 0;
1056 1115
                     }
1057 1116
                 });
1058
-            }
1117
+
1059 1118
             return false;
1060 1119
         });
1061 1120
         // 监听编辑按钮(付款计划)
@@ -1201,71 +1260,9 @@
1201 1260
                 }
1202 1261
             });
1203 1262
         });
1204
-        form.on('submit(saveBtn2)', function (data) {
1205
-            var subTopics = table.cache["currentTableId3"];
1206
-            // 获取合同金额,并保留 小数点后八位
1207
-            const htje =parseFloat($("#htje").val()).toFixed(8);
1208
-            var prjPayplanList =[];
1209
-            var count = 0;
1210
-            let sum =0;
1211
-            if (!subTopics && subTopics.length === 0) {
1212
-                Message.warning("请先创建付款计划!!!", 1500);
1213
-                return;
1214
-            }
1215
-            for (let i = 0; i < subTopics.length; i++) {
1216
-                let zfje = parseFloat(subTopics[i].zfje) || 0;
1217
-                let scaledValue = (zfje * 100000).toFixed(8);
1218
-                sum += parseFloat(scaledValue);
1219
-            }
1220
-            count = sum/100000;
1221
-            for (const item of subTopics) {
1222
-                var prjPayplan = {
1223
-                    "id":item.id,
1224
-                    "fkxx": item.fkxx,
1225
-                    "fkyq": item.fkyq,
1226
-                    "ht": item.ht,
1227
-                    "jhmc": item.jhmc,
1228
-                    "rws": item.rws,
1229
-                    "zfbl": item.zfbl,
1230
-                    "zfje": item.zfje,
1231
-                };
1232
-                prjPayplanList.push(prjPayplan);
1233
-            }
1234
-            console.log('sum:'+sum)
1235
-            console.log('co'+count)
1236
-            console.log('ht'+htje)
1237
-            console.log(subTopics)
1238
-            if (count>htje){
1239
-                Message.warning("付款计划付款总金额大于合同金额!!!", 1500);
1240
-                return;
1241
-            }else if (count<htje){
1242
-                Message.warning("付款计划付款总金额小于合同金额!!!", 1500);
1243
-                return;
1244
-            }else {
1245
-                var index = layer.load(0, {shade: 0.1});
1246
-                AjaxUtil.post({
1247
-                    url: AjaxUtil.ctx + "prjPayplan/doAdd1/?htje="+htje,
1248
-                    contentType: "application/json",
1249
-                    data: JSON.stringify(prjPayplanList),
1250
-                    success: function (res) {
1251
-                        if (res.code == 0){
1252
-                            layer.msg(res.message,{icon:1},function () {
1253
-                                layer.msg(res.message);
1254
-                                var iframeIndex = parent.layer.getFrameIndex(window.name);
1255
-                                parent.layer.close(iframeIndex);
1256
-                            });
1257
-                        }else if (res.code == -1){
1258
-                            layer.msg(res.message,{icon:2},function () {
1259
-                                return;
1260
-                            })
1261
-                        }
1262
-                    },
1263
-                    error: function (error) {
1264
-                        Message.error(error.message, 1000);
1265
-                    }
1266
-                });
1267
-            }
1268
-        });
1263
+        // form.on('submit(saveBtn2)', function (data) {
1264
+        //
1265
+        // });
1269 1266
 
1270 1267
         // 监听取消按钮
1271 1268
         $("button[lay-filter='cancleBtn']").click(function () {

+ 167 - 45
src/main/resources/templates/prjcontract/update.html

@@ -83,7 +83,7 @@
83 83
                             <div id="sfysdiv">
84 84
                                 <label class="layui-form-label required" style="width: 10%">验收时间</label>
85 85
                                 <div class="layui-input-inline" style="width: 25%">
86
-                                    <input type="text" id="yssj" name="yssj" autocomplete="off" class="layui-input" lay-verify="required" lay-reqtext="验收时间不能为空!" th:value="${contract.yssj}">
86
+                                    <input type="text" id="yssj" name="yssj" autocomplete="off" class="layui-input"   placeholder="请选择验收时间...">
87 87
                                 </div>
88 88
 
89 89
                             </div>
@@ -291,7 +291,6 @@
291 291
             done: function (value, date, endDate) {
292 292
                 sqsj1 = $("#kssj").val();
293 293
                 sqsj2 = $("#jssj").val();
294
-                yssj = $("#yssj").val();
295 294
                 if (rwsqssj ==''||rwswcsj==''){
296 295
                     layer.msg('请先选择任务书!',{icon:8});
297 296
                     $("#kssj").val("");
@@ -374,6 +373,31 @@
374 373
 
375 374
             }
376 375
         });
376
+        laydate.render({
377
+            elem: '#yqrq',
378
+            done: function (value, date, endDate) {
379
+                sqsj1 = $("#kssj").val();
380
+                sqsj2 = $("#jssj").val();
381
+                yssj = $("#yssj").val();
382
+                yqrq = $("#yqrq").val();
383
+                // 大于项目执行周期 不能等于
384
+                if (sqsj1 == '' && yssj == ''){
385
+                    layer.msg('请先录入执行周期!',{icon:2});
386
+                    $("#yqrq").val("");
387
+                }
388
+                if (yqrq <= sqsj2 ){
389
+                    layer.msg('延期时间不能小于或等于合同执行结束时间!',{icon:2});
390
+                    $("#yqrq").val("");
391
+                }
392
+                if (yqrq <= sqsj1){
393
+                    layer.msg('延期时间不能小于或等于合同执行开始时间',{icon:2});
394
+                    $("#yqrq").val("");
395
+                }
396
+
397
+
398
+            }
399
+        });
400
+
377 401
         var verify = {
378 402
             required:function (value) {
379 403
                 if (value === ''){
@@ -576,13 +600,67 @@
576 600
         // 监听确认按钮(常规)
577 601
         form.on('submit(saveBtn)', function (data) {
578 602
             var sfys = document.getElementById('sfys');
603
+            var yssj = document.getElementById('yssj').value;
579 604
             var sfsxtndw = document.getElementById('sfsxtndw');
580
-            if (sfys.value != 0 && sfys.value != 1){
581
-               if (sfysid != null && sfysid != ''){
582
-                   data.field.sfys = sfysid;
583
-               }else {
584
-                   data.field.sfys = 0;
585
-               }
605
+            var bzjh = table.cache["currentTableId"];
606
+            var fkjh = table.cache["currentTableId3"];
607
+
608
+            if (bzjh.length === 0) {
609
+                Message.warning("请创建报账计划!!!", 1500);
610
+                return;
611
+            }else {
612
+                var count = 0;
613
+                let sum = 0;
614
+                const htje =parseFloat($("#htje").val()).toFixed(8);
615
+                for (let i = 0; i < bzjh.length; i++) {
616
+                    let zfje = parseFloat(bzjh[i].bzje) || 0;
617
+                    let scaledValue = (zfje * 100000).toFixed(8);
618
+                    sum += parseFloat(scaledValue);
619
+                }
620
+                console.log('sum1:' + sum)
621
+                console.log('htje:' + htje)
622
+                count = sum / 100000;
623
+                if (count > htje) {
624
+                    Message.warning("报账计划付款总金额大于合同金额!!!", 1500);
625
+                    return false;
626
+                } else if (count < htje) {
627
+                    Message.warning("报账计划付款总金额小于合同金额!", 1500);
628
+                    return false;
629
+                }
630
+            }
631
+            if (fkjh.length === 0) {
632
+                Message.warning("请创建付款计划!!!", 1500)
633
+                return;
634
+            }else {
635
+                var count = 0;
636
+                let sum = 0;
637
+                const htje =parseFloat($("#htje").val()).toFixed(8);
638
+                for (let i = 0; i < fkjh.length; i++) {
639
+                    let zfje = parseFloat(fkjh[i].zfje) || 0;
640
+                    let scaledValue = (zfje * 100000).toFixed(8);
641
+                    sum += parseFloat(scaledValue);
642
+                }
643
+                console.log('sum2:' + sum)
644
+                count = sum / 100000;
645
+                if (count>htje){
646
+                    Message.warning("付款计划付款总金额大于合同金额!!!", 1500);
647
+                    return false;
648
+                }else if (count<htje){
649
+                    Message.warning("付款计划付款总金额小于合同金额!!!", 1500);
650
+                    return false;
651
+                }
652
+            }
653
+            if (sfys == 1 || sfys == 'on'){
654
+                if (yssj == ''){
655
+                    layer.msg('项目已验收,验收时间不能为空!',{icon:2});
656
+                    return ;
657
+                }
658
+                data.field.sfys = 1;
659
+            }else {
660
+                if (yssj === '') {
661
+                    delete data.field.yssj;
662
+                }
663
+
586 664
             }
587 665
             if(sfsxtndw != 0 && sfsxtndw != 1){
588 666
                 if (sfsxtndwid != null && sfsxtndwid != ''){
@@ -645,47 +723,91 @@
645 723
                     } else {
646 724
                         Message.error(res.message, 1000);
647 725
                     }
648
-                    layer.close(index);
649
-                },
650
-                error: function (error) {
651
-                    Message.error(error.message, 1000)
652
-                }
653
-            });
654
-
655
-            return false;
656
-
657
-            //验收资料
658
-            var dataWB_Yszl = [];
659
-            for (const item of dataYszl) {
660
-                var dfWb = {
661
-                    "id": item.id,
662
-                    "wjm": item.wjm,
663
-                    "Url": item.Url,
664
-                    "scrq": item.scrq,
665
-                    "sm": item.sm
666
-                };
667
-                dataWB_Yszl.push(dfWb);
668
-            }
669
-            $("#yszl").val(JSON.stringify(dataWB_Yszl));
670
-            data.field.yszl = JSON.stringify(dataWB_Yszl);
726
+                    if(htId != -1){
727
+                        var subTopics = table.cache["currentTableId"];
728
+                        // 获取合同金额,并保留 小数点后八位
729
+                        const htje =parseFloat($("#htje").val()).toFixed(8);
730
+                        var prjReimbursementplanList =[];
731
+                        for (const item of subTopics) {
732
+                            var prjReimbursementplan = {
733
+                                "id":item.id,
734
+                                "nf": item.nf,
735
+                                "ht": htId,
736
+                                "jhmc": item.jhmc,
737
+                                "rws": item.rws,
738
+                                "bzbl": item.bzbl,
739
+                                "bzje": item.bzje,
740
+                            };
741
+                            prjReimbursementplanList.push(prjReimbursementplan);
742
+                        }
743
+                            AjaxUtil.post({
744
+                                url: AjaxUtil.ctx + "prjReimbursementplan/doAdd/?htje="+htje,
745
+                                contentType: "application/json",
746
+                                data: JSON.stringify(prjReimbursementplanList),
747
+                                success: function (res) {
748
+                                    if (res.code == 0){
749
+                                        layer.msg(res.message,{icon:1},function () {
750
+                                        });
751
+                                    }else if (res.code == -1){
752
+                                        layer.msg(res.message,{icon:2},function () {
753
+                                            return;
754
+                                        })
755
+                                    }
756
+                                },
757
+                                error: function (error) {
758
+                                    Message.error(error.message, 1000);
759
+                                }
760
+                            });
761
+                        }
671 762
 
672
-            var index = layer.load(0, {shade: 0.1});
673
-            AjaxUtil.post({
674
-                url: AjaxUtil.ctx + "prjContract/doUpdate",
675
-                data: data.field,
676
-                success: function (res) {
763
+                    if (htId != -1){
764
+                        var subTopics = table.cache["currentTableId3"];
765
+                        // 获取合同金额,并保留 小数点后八位
766
+                        const htje =parseFloat($("#htje").val()).toFixed(8);
767
+                        var prjPayplanList =[];
768
+                        for (const item of subTopics) {
769
+                            var prjPayplan = {
770
+                                "id":item.id,
771
+                                "fkxx": item.fkxx,
772
+                                "fkyq": item.fkyq,
773
+                                "ht": htId,
774
+                                "jhmc": item.jhmc,
775
+                                "rws": item.rws,
776
+                                "zfbl": item.zfbl,
777
+                                "zfje": item.zfje,
778
+                            };
779
+                            prjPayplanList.push(prjPayplan);
780
+                        }
781
+                            var index = layer.load(0, {shade: 0.1});
782
+                            AjaxUtil.post({
783
+                                url: AjaxUtil.ctx + "prjPayplan/doAdd1/?htje="+htje,
784
+                                contentType: "application/json",
785
+                                data: JSON.stringify(prjPayplanList),
786
+                                success: function (res) {
787
+                                    if (res.code ==0){
788
+                                        layer.msg(res.message,{icon:1},function () {
789
+                                            layer.msg(res.message);
790
+                                            var iframeIndex = parent.layer.getFrameIndex(window.name);
791
+                                            parent.layer.close(iframeIndex);
792
+                                        });
793
+                                    }else if (res.code == -1){
794
+                                        layer.msg(res.message,{icon:2},function () {
795
+                                            return;
796
+                                        })
797
+                                    }
798
+                                },
799
+                                error: function (error) {
800
+                                    Message.error(error.message, 1000);
801
+                                }
802
+                            });
803
+                        }
677 804
                     layer.close(index);
678
-                    if (res.code === 0) {
679
-                        parent.setUpdateFlag();
680
-                    } else {
681
-                    }
682
-                    parent.layer.close(parent.layer.getFrameIndex(window.name));
683 805
                 },
684 806
                 error: function (error) {
685 807
                     Message.error(error.message, 1000)
686 808
                 }
687 809
             });
688
-
810
+            layer.close(index);
689 811
             return false;
690 812
         });
691 813
         var dataBzjh = [[${dataBzjh}]]
@@ -763,7 +885,7 @@
763 885
             var checkStatus = table.checkStatus('currentTableId')
764 886
                 , data = checkStatus.data;
765 887
             if (data == null || data.length === 0) {
766
-                Message.warning("请选择要编辑的付款计划!", 1500);
888
+                Message.warning("请选择要编辑的报账计划!", 1500);
767 889
             } else if (data.length > 1) {
768 890
                 Message.warning("请选择一条记录进行编辑!", 1500);
769 891
             } else {
@@ -826,7 +948,7 @@
826 948
             var checkStatus = table.checkStatus('currentTableId')
827 949
                 , data = checkStatus.data;
828 950
             if (data == null || data.length === 0) {
829
-                Message.warning("请选择要浏览的付款计划!", 1500);
951
+                Message.warning("请选择要浏览的报账计划!", 1500);
830 952
             } else if (data.length > 1) {
831 953
                 Message.warning("请选择一条记录进行浏览!", 1500);
832 954
             } else {
@@ -859,7 +981,7 @@
859 981
             var checkStatus = table.checkStatus('currentTableId')
860 982
                 , data = checkStatus.data;
861 983
             if (data == null || data.length === 0) {
862
-                Message.warning("请选择要删除的付款计划!", 1500);
984
+                Message.warning("请选择要删除的报账计划!", 1500);
863 985
             } else {
864 986
                 layer.confirm('确定删除所选中的报账计划吗?', function (index) {
865 987
                     layer.close(index);

+ 11 - 0
src/main/resources/templates/reimburse/list.html

@@ -62,6 +62,17 @@
62 62
                                 <input type="text" name="mc" id="mc" autocomplete="off" class="layui-input">
63 63
                             </div>
64 64
                         </div>
65
+                        <div class="layui-inline">
66
+                            <label class="layui-form-label" style="width: 70px">费用类别</label>
67
+                            <div class="layui-input-inline" style="width: 140px">
68
+                                <select name="fylb" id="fylb" lay-filter="status" lay-search>
69
+                                    <option value="">全部</option>
70
+                                    <option th:each="item:${fylb}" th:text="${item.fymc}"
71
+                                            th:value="${item.fymc}"></option>
72
+                                </select>
73
+
74
+                            </div>
75
+                        </div>
65 76
 
66 77
                         <div class="layui-inline">
67 78
                             <label class="layui-form-label" style="width: 70px;">申请人</label>