user5 4 éve
szülő
commit
3367e18906

+ 48 - 0
src/main/java/com/jeeplus/modules/projectrecord/entity/ProjectPaymentTreeData.java

@@ -49,6 +49,14 @@ public class ProjectPaymentTreeData extends DataEntity<ProjectPaymentTreeData> {
     private String createId;        //创建者id
     private Integer operationSign;   //操作标识
     private Integer condition;   //标识 (1:代表第1级,剩下的以此类推)
+
+
+
+    private String completePriceStr;   //完成价款
+    private String appointPayStr;   //按约定比例应支付价款
+    private String advanceDeductStr;   //应扣预付款
+    private String restsDeductStr;   //其他应扣款
+    private String actualPayStr;   //实际应支付
     private List<WorkClientAttachment> workAttachments = Lists.newArrayList();
 
 
@@ -268,4 +276,44 @@ public class ProjectPaymentTreeData extends DataEntity<ProjectPaymentTreeData> {
     public void setWorkAttachments(List<WorkClientAttachment> workAttachments) {
         this.workAttachments = workAttachments;
     }
+
+    public String getCompletePriceStr() {
+        return completePriceStr;
+    }
+
+    public void setCompletePriceStr(String completePriceStr) {
+        this.completePriceStr = completePriceStr;
+    }
+
+    public String getAppointPayStr() {
+        return appointPayStr;
+    }
+
+    public void setAppointPayStr(String appointPayStr) {
+        this.appointPayStr = appointPayStr;
+    }
+
+    public String getAdvanceDeductStr() {
+        return advanceDeductStr;
+    }
+
+    public void setAdvanceDeductStr(String advanceDeductStr) {
+        this.advanceDeductStr = advanceDeductStr;
+    }
+
+    public String getRestsDeductStr() {
+        return restsDeductStr;
+    }
+
+    public void setRestsDeductStr(String restsDeductStr) {
+        this.restsDeductStr = restsDeductStr;
+    }
+
+    public String getActualPayStr() {
+        return actualPayStr;
+    }
+
+    public void setActualPayStr(String actualPayStr) {
+        this.actualPayStr = actualPayStr;
+    }
 }

+ 18 - 0
src/main/java/com/jeeplus/modules/projectrecord/web/ProjectPlanController.java

@@ -2,12 +2,14 @@ package com.jeeplus.modules.projectrecord.web;
 
 import com.jeeplus.common.config.Global;
 import com.jeeplus.common.persistence.Page;
+import com.jeeplus.common.utils.Collections3;
 import com.jeeplus.common.utils.DateUtils;
 import com.jeeplus.common.utils.MyBeanUtils;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.common.utils.excel.ExportExcel;
 import com.jeeplus.common.web.BaseController;
 import com.jeeplus.modules.projectType.entity.ProjectType;
+import com.jeeplus.modules.projectrecord.dao.WorkProjectUserDao;
 import com.jeeplus.modules.projectrecord.entity.ProjectImplementEarly;
 import com.jeeplus.modules.projectrecord.entity.ProjectPlanInfo;
 import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
@@ -50,6 +52,9 @@ public class ProjectPlanController extends BaseController {
     @Autowired
     private ProjectPlanService projectPlanService;
 
+    @Autowired
+    private WorkProjectUserDao workProjectUserDao;
+
     @ModelAttribute
     public ProjectRecords get(@RequestParam(required=false) String id) {
         ProjectRecords entity = null;
@@ -90,6 +95,19 @@ public class ProjectPlanController extends BaseController {
             for (User masterUser:records1.getProjectLeaders()) {
                 masterIdSet.add(masterUser.getId());
             }
+
+
+            //查询项目组成员信息
+            List<User> members = workProjectUserDao.isDelFalg(records1.getId(), "");
+            records1.setProjectMembers(members);
+            records1.setMemberNameStr(Collections3.extractToString(members, "name", ","));
+            records1.setMemberIds(Collections3.extractToString(members, "id", ","));
+            for (User masterUser:records1.getProjectMembers()) {
+                masterIdSet.add(masterUser.getId());
+            }
+
+
+
             //Set转List
             List<String> masterIdList = new ArrayList<>(masterIdSet);
             //如果当前登录人为项目登记者或项目负责人则允许其添加子节点信息

+ 14 - 0
src/main/java/com/jeeplus/modules/projectrecord/web/implementStage/ProjectInterimPaymentController.java

@@ -164,6 +164,9 @@ public class ProjectInterimPaymentController {
                             for (ProjectPaymentTreeData data:treeDataList) {
                                 data.setCnumber(contract.getTrueAmt().toString());
 
+                                BigDecimal bigDecimal = new BigDecimal(contract.getTrueAmt());
+                                data.setCnumber(bigDecimal.toPlainString());
+
                                 data.setTotalFinishCost(totalFinishCost);
                                 data.setTotalPayCost(totalPayCost);
                                 data.setPayRatio(payRatio);
@@ -246,11 +249,22 @@ public class ProjectInterimPaymentController {
      */
     @RequestMapping(value = "save")
     public String save(ProjectPaymentTreeData projectPaymentTreeData) {
+        projectPaymentTreeData.setCompletePrice(shiftDouble(projectPaymentTreeData.getCompletePriceStr()));
+        projectPaymentTreeData.setAppointPay(shiftDouble(projectPaymentTreeData.getAppointPayStr()));
+        projectPaymentTreeData.setAdvanceDeduct(shiftDouble(projectPaymentTreeData.getAdvanceDeductStr()));
+        projectPaymentTreeData.setRestsDeduct(shiftDouble(projectPaymentTreeData.getRestsDeductStr()));
+        projectPaymentTreeData.setActualPay(shiftDouble(projectPaymentTreeData.getActualPayStr()));
         service.save(projectPaymentTreeData);
         return "redirect:"+ Global.getAdminPath()+"/project/projectInterimPayment/?repage";
     }
 
 
+    private static Double shiftDouble(String moneyStr){
+        moneyStr = moneyStr.replaceAll(",","");
+        Double money = Double.parseDouble(moneyStr);
+        return money;
+    }
+
     /**
      * 删除工程款信息
      */

+ 1 - 1
src/main/webapp/webpage/modules/projectrecord/implementCompletion/projectCompletionReviewList.jsp

@@ -410,7 +410,7 @@
 						].join('');
 					}else if(d.status == null || d.status == '' || d.status == 10){
 						return [
-							'<a href="javascript:void(0)" onclick="openDialogres(\'复核\', \'${ctx}/project/projectCompletionReview/reviewForm?condition=completion&reportType=${reportType}&view=report&dictType='+d.dictType+'&project.id='+d.pid+'&id='+d.contentPId+'&parentIds='+d.parentIds+'&infoId='+d.id+'&projectId='+d.projectId+ '\',\'95%\',\'95%\')" class="op-btn op-btn-edit" ><i class="fa fa-plus"></i> 复核</a>',
+							'<a href="javascript:void(0)" onclick="openDialogres(\'复核\', \'${ctx}/project/projectCompletionReview/reviewForm?condition=completion&reportType=${reportType}&view=report&dictType='+d.dictType+'&project.id='+d.pid+'&id='+d.contentPId+'&parentIds='+d.parentIds+'&infoId='+d.id+'&projectId='+d.projectId+'&project.projectName='+d.projectName+ '\',\'95%\',\'95%\')" class="op-btn op-btn-edit" ><i class="fa fa-plus"></i> 复核</a>',
 						].join('');
 					}else{
 						return[''].join('');

+ 1 - 1
src/main/webapp/webpage/modules/projectrecord/implementEarly/projectEarlyReviewList.jsp

@@ -433,7 +433,7 @@
 						].join('');
 					}else if(d.status == null || d.status == '' || d.status == 10){
 						return [
-							'<a href="javascript:void(0)" onclick="openDialogres(\'复核\', \'${ctx}/project/projectEarlyReview/reviewForm?view=report&condition=according&dictType='+d.dictType+'&reportType=${reportType}&project.id='+d.pid+'&id='+d.contentPId+'&parentIds='+d.parentIds+'&infoId='+d.id+'&projectId='+d.projectId+ '\',\'95%\',\'95%\')" class="op-btn op-btn-edit" ><i class="fa fa-plus"></i> 复核</a>',
+							'<a href="javascript:void(0)" onclick="openDialogres(\'复核\', \'${ctx}/project/projectEarlyReview/reviewForm?view=report&condition=according&dictType='+d.dictType+'&reportType=${reportType}&project.id='+d.pid+'&id='+d.contentPId+'&parentIds='+d.parentIds+'&infoId='+d.id+'&projectId='+d.projectId+'&project.projectName='+d.projectName+ '\',\'95%\',\'95%\')" class="op-btn op-btn-edit" ><i class="fa fa-plus"></i> 复核</a>',
 						].join('');
 					}else{
 						return[''].join('');

+ 24 - 6
src/main/webapp/webpage/modules/projectrecord/implementStage/projectInterimPaymentForm.jsp

@@ -98,6 +98,19 @@
                 }
             });
         }
+        function formatNum(obj) {
+            var val = $(obj).val();
+            if(val==null||val==''|| isNaN(val))return;
+            var money = parseFloat((val + "").replace(/[^\d\.-]/g, "")).toFixed(2) + "";
+            var l = money.split(".")[0].split("").reverse(),
+                r = money.split(".")[1];
+            t = "";
+            for(i = 0; i < l.length; i ++ )
+            {
+                t += l[i] + ((i + 1) % 3 == 0 && (i + 1) != l.length ? "," : "");
+            }
+            $(obj).val(t.split("").reverse().join("") + "." + r);
+        }
     </script>
 </head>
 <body>
@@ -112,13 +125,15 @@
                 <div class="layui-item layui-col-sm6">
                     <label class="layui-form-label"><span class="require-item">*</span>完成价款:</label>
                     <div class="layui-input-block">
-                        <form:input path="completePrice" htmlEscape="false" class="form-control layui-input required number"/>
+                        <input name="completePriceStr" htmlEscape="false" value="<fmt:formatNumber value="${projectPaymentTreeData.completePrice}" pattern="#,##0.00#"/>" onchange="formatNum(this);" class="form-control layui-input number"/>
+                        <%--<form:input path="completePrice"  htmlEscape="false" class="form-control layui-input required number"/>--%>
                     </div>
                 </div>
                 <div class="layui-item layui-col-sm6">
                     <label class="layui-form-label double-line"><span class="require-item">*</span>按约定比例应支付价款:</label>
                     <div class="layui-input-block">
-                        <form:input path="appointPay" htmlEscape="false"    class="form-control layui-input required number"/>
+                        <input name="appointPayStr" htmlEscape="false" value="<fmt:formatNumber value="${projectPaymentTreeData.appointPay}" pattern="#,##0.00#"/>" onchange="formatNum(this);" class="form-control layui-input number"/>
+                        <%--<form:input path="appointPay" htmlEscape="false"    class="form-control layui-input required number"/>--%>
                     </div>
                 </div>
 
@@ -126,24 +141,27 @@
                 <div class="layui-item layui-col-sm6">
                     <label class="layui-form-label double-line"><span class="require-item">*</span>应扣预付款:</label>
                     <div class="layui-input-block">
-                        <form:input path="advanceDeduct" htmlEscape="false"    class="form-control layui-input required number"/>
+                        <input name="advanceDeductStr" htmlEscape="false" value="<fmt:formatNumber value="${projectPaymentTreeData.advanceDeduct}" pattern="#,##0.00#"/>" onchange="formatNum(this);" class="form-control layui-input number"/>
+                        <%--<form:input path="advanceDeduct" htmlEscape="false"    class="form-control layui-input required number"/>--%>
                     </div>
                 </div>
                 <div class="layui-item layui-col-sm6">
                     <label class="layui-form-label double-line"><span class="require-item">*</span>其他应扣款:</label>
                     <div class="layui-input-block">
-                        <form:input path="restsDeduct" htmlEscape="false"    class="form-control layui-input required number"/>
+                        <input name="restsDeductStr" htmlEscape="false" value="<fmt:formatNumber value="${projectPaymentTreeData.restsDeduct}" pattern="#,##0.00#"/>" onchange="formatNum(this);" class="form-control layui-input number"/>
+                        <%--<form:input path="restsDeduct" htmlEscape="false"    class="form-control layui-input required number"/>--%>
                     </div>
                 </div>
                 <div class="layui-item layui-col-sm6">
                     <label class="layui-form-label double-line"><span class="require-item">*</span>实际应支付:</label>
                     <div class="layui-input-block">
-                        <form:input path="actualPay" htmlEscape="false"    class="form-control layui-input required number"/>
+                        <input name="actualPayStr" htmlEscape="false" value="<fmt:formatNumber value="${projectPaymentTreeData.actualPay}" pattern="#,##0.00#"/>" onchange="formatNum(this);" class="form-control layui-input number"/>
+                        <%--<form:input path="actualPay" htmlEscape="false"    class="form-control layui-input required number"/>--%>
                     </div>
                 </div>
 
             <div class="layui-item layui-col-sm6">
-                <label class="layui-form-label"><span class="require-item">*</span>签订日期:</label>
+                <label class="layui-form-label"><span class="require-item">*</span>支付日期:</label>
                 <div class="layui-input-block">
                     <input class="laydate-icondate layui-input form-control layer-date laydate-icon required" id="payDate" name="payDate" value="${projectPaymentTreeData.payDate}">
                 </div>

+ 1 - 1
src/main/webapp/webpage/modules/projectrecord/plan/projectPlanList.jsp

@@ -273,7 +273,7 @@
 					,"projectStatus":"${projectRecords.projectStatus}"
 					,"procId":"${projectRecords.processInstanceId}"
 					,"operationSign":"${projectRecords.operationSign}"
-					<shiro:hasPermission name="project:projectRecords:edit">,"canedit3":<c:choose><c:when test="${projectRecords.projectStatus == 5 && fn:contains(projectRecords.leaderIds,fns:getUser().id)}">"1"</c:when><c:otherwise>"0"</c:otherwise></c:choose></shiro:hasPermission>
+					<shiro:hasPermission name="project:projectRecords:edit">,"canedit3":<c:choose><c:when test="${projectRecords.projectStatus == 5 && fn:contains(projectRecords.memberIds,fns:getUser().id)}">"1"</c:when><c:otherwise>"0"</c:otherwise></c:choose></shiro:hasPermission>
 				}
 				</c:forEach>
 				</c:if>

+ 1 - 1
src/main/webapp/webpage/modules/projectrecord/workContentFromAndView/reportForm.jsp

@@ -441,7 +441,7 @@
 			<div class="layui-item layui-col-sm6">
 				<label class="layui-form-label"><span class="require-item">*</span>报告名称:</label>
 				<div class="layui-input-block with-icon">
-					<form:input  path="projectReportData.name" htmlEscape="false"  class="form-control layui-input required"/>
+					<form:input  path="projectReportData.name" htmlEscape="false" value="${projectcontentinfo.project.projectName}"  class="form-control layui-input required"/>
 				</div>
 			</div>
 			<div class="layui-item layui-col-sm6">