user5 hace 4 años
padre
commit
2ce5f927d5

+ 9 - 0
src/main/java/com/jeeplus/modules/projectrecord/entity/ProjectRecords.java

@@ -97,6 +97,7 @@ public class ProjectRecords extends ActEntity<ProjectRecords> {
 	private Office company;
 	private Office office;
 	private Integer projectStatus;//项目状态
+	private String reportedState;   //上报状态
 
 	private String auditType;
 
@@ -701,4 +702,12 @@ public class ProjectRecords extends ActEntity<ProjectRecords> {
 	public void setConstructionLinkman(String constructionLinkman) {
 		this.constructionLinkman = constructionLinkman;
 	}
+
+	public String getReportedState() {
+		return reportedState;
+	}
+
+	public void setReportedState(String reportedState) {
+		this.reportedState = reportedState;
+	}
 }

+ 7 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/dao/RuralProjectMessageDao.java

@@ -99,4 +99,11 @@ public interface RuralProjectMessageDao extends CrudDao<RuralProjectRecords> {
      * @param projectId
      */
     void deleteWorkAttachment(String projectId);
+
+    /**
+     * 项目上报
+     * @param projectRecords
+     * @return
+     */
+    Integer updateReported(RuralProjectRecords projectRecords);
 }

+ 9 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/entity/RuralProjectRecords.java

@@ -76,6 +76,7 @@ public class RuralProjectRecords extends ActEntity<RuralProjectRecords> {
 	private String projectReportName;
 	private String officeName;
 	private String flagAdmin;
+	private String reportedState;   //上报状态
 
 	public String getPrrId() {
 		return prrId;
@@ -710,4 +711,12 @@ public class RuralProjectRecords extends ActEntity<RuralProjectRecords> {
 	public void setConstructionLinkman(String constructionLinkman) {
 		this.constructionLinkman = constructionLinkman;
 	}
+
+	public String getReportedState() {
+		return reportedState;
+	}
+
+	public void setReportedState(String reportedState) {
+		this.reportedState = reportedState;
+	}
 }

+ 10 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectMessageService.java

@@ -1396,4 +1396,14 @@ public class RuralProjectMessageService extends CrudService<RuralProjectMessageD
         dao.deleteWorkAttachment( projectReportRecord.getReportId());
     }
 
+
+    /**
+     * 删除报告信息
+     * @param projectRecords
+     */
+    @Transactional(readOnly = false)
+    public Integer updateReported(RuralProjectRecords projectRecords){
+        return dao.updateReported(projectRecords);
+    }
+
 }

+ 18 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectMessageController.java

@@ -688,4 +688,22 @@ public class RuralCostProjectMessageController extends BaseController {
         return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralCostProjectMessage/?repage";
     }
 
+
+    /**
+     * 项目上报
+     * @param projectRecords
+     * @return
+     */
+    @RequestMapping(value = "updateReported")
+    public String updateReported(RuralProjectRecords projectRecords,RedirectAttributes redirectAttributes) {
+        Integer reported = ruralProjectMessageService.updateReported(projectRecords);
+        if(1 == reported){
+            addMessage(redirectAttributes, "上报成功");
+        }else{
+            addMessage(redirectAttributes, "上报失败");
+        }
+
+        return "redirect:" + Global.getAdminPath() + "/ruralProject/ruralCostProjectMessage/?repage";
+    }
+
 }

+ 18 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectMessageController.java

@@ -695,4 +695,22 @@ public class RuralProjectMessageController extends BaseController {
         model.addAttribute("projectId", projectRecords.getId());
         return "modules/ruralprojectrecords/ruralporjectmessage/downloadType/downloadForm";
     }
+
+
+    /**
+     * 项目上报
+     * @param projectRecords
+     * @return
+     */
+    @RequestMapping(value = "updateReported")
+    public String updateReported(RuralProjectRecords projectRecords,RedirectAttributes redirectAttributes) {
+        Integer reported = ruralProjectMessageService.updateReported(projectRecords);
+        if(1 == reported){
+            addMessage(redirectAttributes, "上报成功");
+        }else{
+            addMessage(redirectAttributes, "上报失败");
+        }
+
+        return "redirect:" + Global.getAdminPath() + "/ruralProject/ruralProjectMessage/?repage";
+    }
 }

+ 28 - 1
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageDao.xml

@@ -42,7 +42,8 @@
 		a.unit_fees AS "unitFees",
 		a.building_unit_fees AS "buildingUnitFees",
 		a.install_unit_fees AS "installUnitFees",
-		a.total_fees AS "totalFees"
+		a.total_fees AS "totalFees",
+		ifnull(a.reported_state,0) as "reportedState"
 	</sql>
 
 	<sql id="projectReportDataColumns">
@@ -287,6 +288,16 @@
             <if test="endDate !=null">
                 AND a.create_date &lt; #{endDate}
             </if>
+            <if test="reportedState !=null and reportedState !=''">
+				<choose>
+					<when test="reportedState == 0">
+						AND a.reported_state is null
+					</when>
+					<otherwise>
+						AND a.reported_state = #{reportedState}
+					</otherwise>
+				</choose>
+            </if>
 
 
 			<if test="projectReportStatus != null and projectReportStatus != ''">
@@ -403,6 +414,16 @@
 			<if test="projectReportStatus != null and projectReportStatus != ''">
 				AND prd.status = #{projectReportStatus}
 			</if>
+			<if test="reportedState !=null and reportedState !=''">
+				<choose>
+					<when test="reportedState == 0">
+						AND a.reported_state is null
+					</when>
+					<otherwise>
+						AND a.reported_state = #{reportedState}
+					</otherwise>
+				</choose>
+			</if>
 
 			<choose>
 				<when test="projectReportRecordStatus != null and projectReportRecordStatus != '' and projectReportRecordStatus != 0">
@@ -942,4 +963,10 @@
 	<delete id="deleteWorkAttachment">
 		delete from work_attachment where  project_id= #{projectId}
 	</delete>
+
+	<update id="updateReported">
+		UPDATE rural_project_records SET
+			reported_state = 5
+		WHERE id = #{id}
+	</update>
 </mapper>

+ 18 - 0
src/main/webapp/static/common/jeeplus.js

@@ -461,6 +461,24 @@ function getRuralProjectArchiveState(id)
     return result;
 }
 
+function getReportedState(id)
+{
+    var result ={};
+    result.action = true;
+    switch(id)
+    {
+        case "0":result.label = "tempstore";result.status="未上报";result.action = false;break;
+        case "1":result.label = "tempstore";result.status="暂存";result.action = false;break;
+        case "2":result.label = "auditing";result.status="归档中";break;
+        case "3":result.label = "cancel";result.status="撤回";break;
+        case "4":result.label = "reject";result.status="驳回";break;
+        case "5":result.label = "signed";result.status="已上报";result.action = false;break;
+        default:
+            result.label = "unknown";result.status="未知";break;
+    }
+    return result;
+}
+
 function getBorrowState(id)
 {
     var result ={};

+ 22 - 2
src/main/webapp/webpage/modules/ruralprojectrecords/cost/ruralCostProjectMessageList.jsp

@@ -238,6 +238,15 @@
 								</form:select>
 							</div>
 						</div>
+						<div class="layui-item query athird ">
+							<label class="layui-form-label">上报状态:</label>
+							<div class="layui-input-block">
+								<form:select path="reportedState" class=" form-control  simple-select">
+									<form:option value="" label=""/>
+									<form:options items="${fns:getDictList('reported_state')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
+								</form:select>
+							</div>
+						</div>
 						<div style="clear:both;"></div>
 					</div>
 				</form:form>
@@ -311,6 +320,14 @@
                             var xml = "<span style=\"cursor:default;\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
                         return xml;
                     }}
+				,{align:'center', title: '上报状态',  width:70,templet:function(d){
+						var st = getReportedState(d.reportedState);
+						if(st.action)
+							var xml = "<span onclick=\"openDialogView('流程追踪', '${ctx}/ruralProject/ruralCostProjectMessage/getReportRecordProcessOne?processInstanceId=" + d.prrProcessInstanceId + "','95%','95%')\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
+						else
+							var xml = "<span style=\"cursor:default;\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
+						return xml;
+					}}
                 ,{field:'op',align:'center',title:"操作", fixed: 'right',width:230,templet:function(d){
                         ////对操作进行初始化
                         var xml="";
@@ -370,8 +387,10 @@
                         }
 
 						/*上报相关按钮*/
-						if(d.projectReportRecordStatus == 5){
-								xml+="<a href=\"javascript:void(0)\" style='background-color: #5FB878' class=\"op-btn\" ><i class=\"fa fa-plus\"></i> 上报</a>";
+						if(d.projectReportRecordStatus == 5 || d.projectReportStatus == 5){
+							if(d.reportedState == 0){
+								xml+="<a href=\"${ctx}/ruralProject/ruralCostProjectMessage/updateReported?id=" + d.id + "\" style='background-color: #5FB878' onclick=\"return confirmx('确认要上报吗?', this.href)\" class=\"op-btn op-btn-delete\" ><i class=\"fa fa-plus\"></i> 上报</a>";
+							}
 						}
                         return xml;
 
@@ -401,6 +420,7 @@
                     ,"prrId":"${projectRecords.prrId}"
                     ,"procId":"${projectRecords.processInstanceId}"
 					,"projectReportName":"${projectRecords.projectReportName}"
+					,"reportedState":"${projectRecords.reportedState}"
                     <c:choose>
                         <c:when test="${fn:contains(projectRecords.leaderIds,fns:getUser().id)}">
                             ,"canAdd":<c:choose>

+ 10 - 10
src/main/webapp/webpage/modules/ruralprojectrecords/projectReportRecord/projectReportRecordForm.jsp

@@ -99,12 +99,12 @@
 					</div>
 				</div>
 
-				<div class="layui-item layui-col-sm6">
+				<%--<div class="layui-item layui-col-sm6">
 					<label class="layui-form-label"><span class="require-item">*</span>归档申请编号:</label>
 					<div class="layui-input-block">
 						<input id="recordNum" name="recordNum"  htmlEscape="false" readonly="true" class="form-control  layui-input required" value="${projectReportRecord.recordNum}"/>
 					</div>
-				</div>
+				</div>--%>
 				<%--<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">
@@ -131,21 +131,21 @@
 					</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">合同编号:</label>
 					<div class="layui-input-block">
-						<input id="contractNum" name="contractNum"  htmlEscape="false" readonly="true" class="form-control  layui-input required" value="${projectReportRecord.report.project.workContractInfo.contractNum}"/>
+						<input id="contractNum" name="contractNum"  htmlEscape="false" readonly="true" class="form-control  layui-input" value="${projectReportRecord.report.project.workContractInfo.contractNum}"/>
 					</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">合同名称:</label>
 					<div class="layui-input-block">
-						<input id="contractName" name="contractName"  htmlEscape="false" readonly="true" class="form-control  layui-input required" value="${projectReportRecord.report.project.workContractInfo.name}"/>
+						<input id="contractName" name="contractName"  htmlEscape="false" readonly="true" class="form-control  layui-input" value="${projectReportRecord.report.project.workContractInfo.name}"/>
 					</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">委托方:</label>
 					<div class="layui-input-block">
-						<input id="clientName" name="clientName"  htmlEscape="false" readonly="true" class="form-control  layui-input required" value="${workClientInfoName}"/>
+						<input id="clientName" name="clientName"  htmlEscape="false" readonly="true" class="form-control  layui-input" value="${workClientInfoName}"/>
 					</div>
 				</div>
 				<div class="layui-item layui-col-sm6">
@@ -166,13 +166,13 @@
 						<form:input id="cBName" path="createBy.name" htmlEscape="false" readonly="true" class="form-control  layui-input required"/>
 					</div>
 				</div>
-				<div class="layui-item layui-col-sm6">
+				<%--<div class="layui-item layui-col-sm6">
 					<label class="layui-form-label"><span class="require-item">*</span>申请日期:</label>
 					<div class="layui-input-block">
 						<input id="createDate" name="createDate"  htmlEscape="false" readonly="true" class="laydate-icondate form-control layer-date required layui-input laydate-icon"
 							   value="<fmt:formatDate value="${projectReportRecord.createDate}" pattern="yyyy-MM-dd"/>"/>
 					</div>
-				</div>
+				</div>--%>
 					<%--<div class="layui-item layui-col-sm6">
                         <label class="layui-form-label">档案号:</label>
                         <div class="layui-input-block">

+ 22 - 2
src/main/webapp/webpage/modules/ruralprojectrecords/ruralporjectmessage/ruralProjectMessageList.jsp

@@ -239,6 +239,15 @@
 								</form:select>
 							</div>
 						</div>
+						<div class="layui-item query athird ">
+							<label class="layui-form-label">上报状态:</label>
+							<div class="layui-input-block">
+								<form:select path="reportedState" class=" form-control  simple-select">
+									<form:option value="" label=""/>
+									<form:options items="${fns:getDictList('reported_state')}" itemLabel="label" itemValue="value" htmlEscape="false"/>
+								</form:select>
+							</div>
+						</div>
 						<div style="clear:both;"></div>
 					</div>
 				</form:form>
@@ -312,6 +321,14 @@
                             var xml = "<span style=\"cursor:default;\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
                         return xml;
                     }}
+                ,{align:'center', title: '上报状态',  width:70,templet:function(d){
+                        var st = getReportedState(d.reportedState);
+                        if(st.action)
+                            var xml = "<span onclick=\"openDialogView('流程追踪', '${ctx}/ruralProject/ruralProjectMessage/getReportRecordProcessOne?processInstanceId=" + d.prrProcessInstanceId + "','95%','95%')\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
+                        else
+                            var xml = "<span style=\"cursor:default;\" class=\"status-label status-label-" + st.label + "\" >" + st.status + "</span>";
+                        return xml;
+                    }}
                 ,{field:'op',align:'center',title:"操作", fixed: 'right',width:230,templet:function(d){
                         ////对操作进行初始化
                         var xml="";
@@ -370,8 +387,10 @@
 							}
                         }
 						/*上报相关按钮*/
-						if(d.projectReportRecordStatus == 5){
-							xml+="<a href=\"javascript:void(0)\" style='background-color: #5FB878' class=\"op-btn\" ><i class=\"fa fa-plus\"></i> 上报</a>";
+						if(d.projectReportRecordStatus == 5 || d.projectReportStatus == 5){
+							if(d.reportedState == 0){
+								xml+="<a href=\"${ctx}/ruralProject/ruralProjectMessage/updateReported?id=" + d.id + "\" style='background-color: #5FB878' onclick=\"return confirmx('确认要上报吗?', this.href)\" class=\"op-btn op-btn-delete\" ><i class=\"fa fa-plus\"></i> 上报</a>";
+							}
 						}
                         return xml;
 
@@ -400,6 +419,7 @@
                     ,"prrId":"${projectRecords.prrId}"
                     ,"procId":"${projectRecords.processInstanceId}"
                     ,"projectReportName":"${projectRecords.projectReportName}"
+                    ,"reportedState":"${projectRecords.reportedState}"
                     <c:choose>
                         <c:when test="${fn:contains(projectRecords.leaderIds,fns:getUser().id)}">
                             ,"canAdd":<c:choose>