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

合同执行时间必须在任务书中项目周期以内

梁世豪 пре 4 месеци
родитељ
комит
7bb93d5b12

+ 5 - 0
src/main/java/com/liang/controller/PrjContractController.java

@@ -48,6 +48,8 @@ public class PrjContractController extends BaseController {
48 48
     private PrjApproverecordService prjApproverecordService;
49 49
     @Resource
50 50
     private StaPayapprovalService staPayapprovalService;
51
+    @Resource
52
+    private PrjProjectService prjProjectService;
51 53
 
52 54
     @Resource
53 55
     private BasePersonService basePersonService;
@@ -212,8 +214,11 @@ public class PrjContractController extends BaseController {
212 214
     public String forUpdate(Model model, @PathVariable Integer id) {
213 215
         //当前项目
214 216
         PrjContract contract = prjContractService.queryById(id);
217
+        PrjProject prjProject = prjProjectService.queryById(contract.getRws());
215 218
         List<PrjPayplan> payPlanList = prjPayplanService.getPayPlanList(id);
216 219
         String userPostName = getSysUserInfo().getUserPostName();
220
+        model.addAttribute("rwsqssj",prjProject.getQs());
221
+        model.addAttribute("rwswcsj",prjProject.getWc());
217 222
         model.addAttribute("dataFkjh",payPlanList);
218 223
         model.addAttribute("contract", contract);
219 224
         model.addAttribute("userPostName",userPostName);

+ 2 - 0
src/main/resources/templates/prjcontract/list_project.html

@@ -149,6 +149,8 @@
149 149
 
150 150
             localStorage.setItem("rws", project.id);
151 151
             localStorage.setItem("rwsmc", project.zwmc);
152
+            localStorage.setItem("rwsqssj", project.qs);
153
+            localStorage.setItem("rwswcsj", project.wc);
152 154
             localStorage.setItem("xmzxq", project.qs + ' 至 ' + project.wc);
153 155
             localStorage.setItem("kybg", project.kybg == null ? '' : project.kybg);
154 156
             localStorage.setItem("kybgmc", project.kybgmc == null ? '' : project.kybgmc);

+ 47 - 4
src/main/resources/templates/prjcontract/update.html

@@ -126,8 +126,8 @@
126 126
                             </div>
127 127
                             <label class="layui-form-label required" style="width: 15%">是否是系统内单位</label>
128 128
                             <div class="layui-input-inline" style="width: 10%">
129
-                                <input type="text" name="sfsxtnbdw" id="sfsxtnbdw" placeholder="终止时间" class="layui-input" lay-verify="required" lay-reqtext="结束不能为空"
130
-                                       th:value="${contract.sfsxtnbdw == 0?'是':'否'}"
129
+                                <input type="text" name="sfsxtndw" id="sfsxtndw" placeholder="终止时间" class="layui-input" lay-verify="required" lay-reqtext="结束不能为空"
130
+                                       th:value="${contract.sfsxtndw == 0?'是':'否'}"
131 131
                                        readonly>
132 132
                             </div>
133 133
                         </div>
@@ -254,6 +254,8 @@
254 254
         var xmApproval = parent.getXmApproval();
255 255
         var spzt =xmApproval.spzt;
256 256
         var userPostName = [[${userPostName}]]
257
+        var rwsqssj = [[${rwsqssj}]]
258
+        var rwswcsj = [[${rwswcsj}]]
257 259
 
258 260
         console.log(spzt)
259 261
         //申请时间
@@ -262,11 +264,34 @@
262 264
             done: function (value, date, endDate) {
263 265
                 sqsj1 = $("#kssj").val();
264 266
                 sqsj2 = $("#jssj").val();
267
+                yssj = $("#yssj").val();
268
+                if (rwsqssj ==''||rwswcsj==''){
269
+                    layer.msg('请先选择任务书!',{icon:8});
270
+                    $("#kssj").val("");
271
+                    return;
272
+                }
273
+                if (sqsj1<rwsqssj){
274
+                    layer.msg("合同开始时间不能早于任务书开始时间,应该在任务书项目周期内!",{icon:2})
275
+                    $("#kssj").val("");
276
+                    return;
277
+                }
278
+                if (sqsj2 !=''&&sqsj1 == sqsj2){
279
+                    layer.msg('执行周期开始时间与结束时间不能为同一天!',{icon:2});
280
+                    $("#kssj").val("");
281
+                    return;
282
+                }
283
+                if (yssj != ''){
284
+                    if (sqsj1 > yssj){
285
+                        layer.msg('验收时间不能早于或等于合同开始时间!',{icon:2});
286
+                        $("#kssj").val("");
287
+                        return;
288
+                    }
289
+                }
265 290
                 if (sqsj1 != "" && sqsj2 != "") {
266 291
                     if (sqsj1 > sqsj2) {
267 292
                         Message.warning("起始时间不能晚于终止时间!", 1500);
268 293
                         $("#kssj").val("");
269
-
294
+                        return;
270 295
                     }
271 296
                 }
272 297
             }
@@ -276,13 +301,31 @@
276 301
             done: function (value, date, endDate) {
277 302
                 sqsj1 = $("#kssj").val();
278 303
                 sqsj2 = $("#jssj").val();
304
+                const currentDate = new Date();
305
+                const sqsj3 = new Date(sqsj2);
306
+                if (rwsqssj ==''||rwswcsj==''){
307
+                    layer.msg('请先选择任务书!',{icon:8});
308
+                    $("#jssj").val("");
309
+                    return;
310
+                }
311
+                if (sqsj2>rwswcsj){
312
+                    layer.msg("合同结束时间不能晚于任务书结束时间,应该在任务书项目周期内!",{icon:2})
313
+                    $("#jssj").val("");
314
+                    return;
315
+                }
316
+                if (sqsj1!=''&&sqsj1 == sqsj2){
317
+                    layer.msg('执行周期开始时间与结束时间不能为同一天!',{icon:2});
318
+                    $("#jssj").val("");
319
+                    return;
320
+                }
279 321
                 if (sqsj1 != "" && sqsj2 != "") {
280 322
                     if (sqsj1 > sqsj2) {
281 323
                         Message.warning("终止时间不能早于开始时间!", 1500);
282 324
                         $("#jssj").val("");
283
-
325
+                        return;
284 326
                     }
285 327
                 }
328
+
286 329
             }
287 330
         });
288 331
         // 用于存放表格数据

+ 2 - 2
src/main/resources/templates/reimburse/add.html

@@ -633,10 +633,10 @@
633 633
                     return false;
634 634
                 }
635 635
             }
636
-            /*if (bzje!==null && bzje > sqje * 1.2) {
636
+            if (bzje!==null && bzje > sqje * 1.2) {
637 637
                 alert("报账金额不能超过申请金额的120%!");
638 638
                 return false; // 阻止表单提交
639
-            }*/
639
+            }
640 640
             //报销凭证
641 641
             var dataWB = [];
642 642
             for (const item of dataBxpz) {