Sfoglia il codice sorgente

项目关闭管理模块,实体类,展示,前端点击

lem 4 anni fa
parent
commit
1ec0d9bff0

+ 158 - 0
src/main/java/com/jeeplus/modules/sg/managementcenter/project/entity/ClosureManage.java

@@ -0,0 +1,158 @@
+package com.jeeplus.modules.sg.managementcenter.project.entity;
+
+import com.jeeplus.core.persistence.DataEntity;
+
+import java.util.List;
+
+public class ClosureManage extends DataEntity<ClosureManage> {
+    //储备项目暂定名称
+    private String reserveProjectName;
+    //储备项目暂定名称列表
+    private List<String> reserveList;
+    //项目定义
+    private String projectId;
+    //项目名称
+    private String projectName;
+    //交底状态
+    private String status;
+    //领料状态
+    private String acquisitionStatus;
+    //土建状态
+    private String advanceStatus;
+    //施工状态
+    private String constructionStatus;
+    //是否项目关闭
+    private String whetherCloseStatus;
+    //结算状态
+    private String settStatus;
+    //政策处理状态
+    private String policyStatus;
+    //资金计划管理
+    private CapitalPlan capitalPlan;
+    //设计费是否有问题
+    private String designProblem;
+    //监理费是否有问题
+    private String supervisionProblem;
+    //施工费是否有问题
+    private String constructionProblem;
+
+    public String getReserveProjectName() {
+        return reserveProjectName;
+    }
+
+    public void setReserveProjectName(String reserveProjectName) {
+        this.reserveProjectName = reserveProjectName;
+    }
+
+    public List<String> getReserveList() {
+        return reserveList;
+    }
+
+    public void setReserveList(List<String> reserveList) {
+        this.reserveList = reserveList;
+    }
+
+    public String getProjectId() {
+        return projectId;
+    }
+
+    public void setProjectId(String projectId) {
+        this.projectId = projectId;
+    }
+
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
+    public String getStatus() {
+        return status;
+    }
+
+    public void setStatus(String status) {
+        this.status = status;
+    }
+
+    public String getAcquisitionStatus() {
+        return acquisitionStatus;
+    }
+
+    public void setAcquisitionStatus(String acquisitionStatus) {
+        this.acquisitionStatus = acquisitionStatus;
+    }
+
+    public String getAdvanceStatus() {
+        return advanceStatus;
+    }
+
+    public void setAdvanceStatus(String advanceStatus) {
+        this.advanceStatus = advanceStatus;
+    }
+
+    public String getConstructionStatus() {
+        return constructionStatus;
+    }
+
+    public void setConstructionStatus(String constructionStatus) {
+        this.constructionStatus = constructionStatus;
+    }
+
+    public String getWhetherCloseStatus() {
+        return whetherCloseStatus;
+    }
+
+    public void setWhetherCloseStatus(String whetherCloseStatus) {
+        this.whetherCloseStatus = whetherCloseStatus;
+    }
+
+    public String getSettStatus() {
+        return settStatus;
+    }
+
+    public void setSettStatus(String settStatus) {
+        this.settStatus = settStatus;
+    }
+
+    public String getPolicyStatus() {
+        return policyStatus;
+    }
+
+    public void setPolicyStatus(String policyStatus) {
+        this.policyStatus = policyStatus;
+    }
+
+    public CapitalPlan getCapitalPlan() {
+        return capitalPlan;
+    }
+
+    public void setCapitalPlan(CapitalPlan capitalPlan) {
+        this.capitalPlan = capitalPlan;
+    }
+
+    public String getDesignProblem() {
+        return designProblem;
+    }
+
+    public void setDesignProblem(String designProblem) {
+        this.designProblem = designProblem;
+    }
+
+    public String getSupervisionProblem() {
+        return supervisionProblem;
+    }
+
+    public void setSupervisionProblem(String supervisionProblem) {
+        this.supervisionProblem = supervisionProblem;
+    }
+
+    public String getConstructionProblem() {
+        return constructionProblem;
+    }
+
+    public void setConstructionProblem(String constructionProblem) {
+        this.constructionProblem = constructionProblem;
+    }
+}

+ 0 - 1
src/main/java/com/jeeplus/modules/sg/managementcenter/project/entity/Project.java

@@ -55,7 +55,6 @@ public class Project extends DataEntity<Project> {
     //项目类型
     private String projectType;
 
-
     public String getReserveProjectName() {
         return reserveProjectName;
     }

+ 14 - 5
src/main/java/com/jeeplus/modules/sg/managementcenter/project/mapper/ProjectMapper.java

@@ -8,10 +8,7 @@ import com.jeeplus.core.persistence.annotation.MyBatisMapper;
 import com.jeeplus.modules.sg.managementcenter.activiti.entity.Construction;
 import com.jeeplus.modules.sg.managementcenter.activiti.entity.Quantity;
 import com.jeeplus.modules.sg.managementcenter.materialinfo.entity.MaterialInfo;
-import com.jeeplus.modules.sg.managementcenter.project.entity.Assignment;
-import com.jeeplus.modules.sg.managementcenter.project.entity.PickingRequisition;
-import com.jeeplus.modules.sg.managementcenter.project.entity.Project;
-import com.jeeplus.modules.sg.managementcenter.project.entity.Project1;
+import com.jeeplus.modules.sg.managementcenter.project.entity.*;
 import org.apache.ibatis.annotations.Param;
 import sun.tools.tree.PreIncExpression;
 
@@ -162,6 +159,11 @@ public interface ProjectMapper extends BaseMapper<Project> {
     List<Project> findTearDownList(Project project);
 
     /**
+     * 项目关闭管理模块验证数据
+     * */
+    List<ClosureManage> findClosureManagementList(ClosureManage closureManage);
+
+    /**
      * 项目名称查询项目信息
      * */
     Project findProcess(String name);
@@ -186,10 +188,17 @@ public interface ProjectMapper extends BaseMapper<Project> {
      * */
     Project getTear(Project project);
 
-
+    /**
+     * 基础项目拆旧信息修改
+     */
     void tearEditSave(Project project);
 
     /**
+     * 修改项目关闭状态
+     */
+    void updateClosure(Project project);
+
+    /**
      * 查找系统中所有人员信息
      */
     List<String> findAllMember();

+ 51 - 0
src/main/java/com/jeeplus/modules/sg/managementcenter/project/mapper/xml/ProjectMapper.xml

@@ -128,6 +128,29 @@
         t.actualDifference as `tearDown.actualDifference`,
         t.actualNotes as `tearDown.actualNotes`
     </sql>
+
+    <sql id="capitalPlanColumns">
+        cp.projectBatch as `capitalPlan.projectBatch`,
+        cp.actualCost as `capitalPlan.actualCost`,
+        cp.projectDifference as `capitalPlan.projectDifference`,
+        cp.actualConstructionCost as `capitalPlan.actualConstructionCost`,
+        cp.constructionDifference as `capitalPlan.constructionDifference`,
+        cp.actualMaterialCost as `capitalPlan.actualMaterialCost`,
+        cp.costDifference as `capitalPlan.costDifference`,
+        cp.DesignPayFee as `capitalPlan.DesignPayFee`,
+        cp.actualDesignCost as `capitalPlan.actualDesignCost`,
+        cp.designDifference as `capitalPlan.designDifference`,
+        cp.supervisionPayFee as `capitalPlan.supervisionPayFee`,
+        cp.actualSupervisionCost as `capitalPlan.actualSupervisionCost`,
+        cp.supervisionDifference as `capitalPlan.supervisionDifference`,
+        cp.ActualManagementFee as `capitalPlan.ActualManagementFee`,
+        cp.policyDifference as `capitalPlan.policyDifference`,
+        cp.actualOtherCost as `capitalPlan.actualOtherCost`,
+        cp.otherDifference as `capitalPlan.otherDifference`,
+        cp.designRate as `capitalPlan.designRate`,
+        cp.supervisionRate as `capitalPlan.supervisionRate`
+    </sql>
+
     <delete id="deleteTearAll">
         delete
         from xm_tear_down
@@ -1869,6 +1892,29 @@
     <select id="isNotByName" resultType="java.lang.Integer">
         select count(*) from xm_tear_down where reserveProjectName = #{reserveProjectName} and reservedName = #{reservedName}
     </select>
+    <select id="findClosureManagementList" resultType="com.jeeplus.modules.sg.managementcenter.project.entity.ClosureManage">
+        SELECT
+        <include refid="projectColumns"/>,
+        <include refid="capitalPlanColumns"/>,
+        <include refid="approvalColumns"/>
+        FROM xm_material_project a
+        left join xm_capital_plan cp
+        on a.projectId = cp.projectId
+        left join xm_project_approval e
+        on a.projectId = e.projectId
+        <where>
+            1 = 1
+            and a.secondPower = '0'
+            <if test="reserveList != null and  reserveList !='' ">
+                and t.reserveProjectName in
+                <foreach collection="reserveList" item="item" index="index" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+            </if>
+            ${dataScope}
+        </where>
+        order by a.reserveProjectName
+    </select>
     <update id="updateJsStatus">
         update xm_material_project
         set settStatus = #{status}
@@ -1931,4 +1977,9 @@
             and reservedName = #{item.tearDown.reservedName}
         </foreach>
     </update>
+    <update id="updateClosure">
+        update xm_material_project
+        set whetherCloseStatus = '1'
+        where id  = #{id}
+    </update>
 </mapper>

+ 18 - 0
src/main/java/com/jeeplus/modules/sg/managementcenter/project/service/ProjectService.java

@@ -10,6 +10,7 @@ import com.jeeplus.modules.sg.managementcenter.activiti.entity.Quantity;
 import com.jeeplus.modules.sg.managementcenter.materialinfo.entity.MaterialInfo;
 import com.jeeplus.modules.sg.managementcenter.project.entity.Assignment;
 import com.jeeplus.modules.sg.managementcenter.project.entity.BasicInformation;
+import com.jeeplus.modules.sg.managementcenter.project.entity.ClosureManage;
 import com.jeeplus.modules.sg.managementcenter.project.entity.Project;
 import com.jeeplus.modules.sg.managementcenter.project.mapper.ProjectMapper;
 import org.apache.ibatis.annotations.Param;
@@ -77,6 +78,16 @@ public class ProjectService extends CrudService<ProjectMapper, Project> {
     }
 
     /**
+     * 项目关闭管理模块数据验证信息
+     */
+    public Page<ClosureManage> findClosureManagementData(Page<ClosureManage> page, ClosureManage closureManage) {
+        dataRuleFilter(closureManage);
+        closureManage.setPage(page);
+        page.setList(mapper.findClosureManagementList(closureManage));
+        return page;
+    }
+
+    /**
      * 修改项目前期基础信息
      */
     @Transactional(readOnly = false)
@@ -304,6 +315,13 @@ public class ProjectService extends CrudService<ProjectMapper, Project> {
         projectMapper.tearEditSave(project);
     }
 
+    /**
+     * 修改项目关闭状态
+     */
+    @Transactional(readOnly = false)
+    public void updateClosure(Project project) {
+        projectMapper.updateClosure(project);
+    }
 
     /**
      * 获取需求单位

+ 1 - 0
src/main/java/com/jeeplus/modules/sg/managementcenter/project/web/CapitalPlanController.java

@@ -152,6 +152,7 @@ public class CapitalPlanController extends BaseController {
             actualManagementFee = getString(actualManagementFee);
             otherExpenses = getString(otherExpenses);
             actualOtherCost = getString(actualOtherCost);
+            supervisionFee = getString(supervisionFee);
 
 
             BigDecimal projectDifference = new BigDecimal(projectBudget);

+ 100 - 12
src/main/java/com/jeeplus/modules/sg/managementcenter/project/web/ProjectController.java

@@ -23,13 +23,11 @@ import com.jeeplus.modules.oa.service.OaNotifyService;
 import com.jeeplus.modules.sg.managementcenter.activiti.entity.Construction;
 import com.jeeplus.modules.sg.managementcenter.activiti.service.ConstructionService;
 import com.jeeplus.modules.sg.managementcenter.materialInventory.service.MaterialInventoryService;
-import com.jeeplus.modules.sg.managementcenter.project.entity.BasicInformation;
-import com.jeeplus.modules.sg.managementcenter.project.entity.Project1;
-import com.jeeplus.modules.sg.managementcenter.project.entity.Project;
-import com.jeeplus.modules.sg.managementcenter.project.entity.TearDown;
+import com.jeeplus.modules.sg.managementcenter.project.entity.*;
 import com.jeeplus.modules.sg.managementcenter.project.service.PickingRequisitionService;
 import com.jeeplus.modules.sg.managementcenter.project.service.ProjectService;
 import com.jeeplus.modules.sg.managementcenter.project.util.ProjectImportUtil;
+import com.jeeplus.modules.sg.scheduleView.entity.ScheduleView;
 import com.jeeplus.modules.sys.service.SystemService;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import org.activiti.engine.repository.ProcessDefinition;
@@ -153,6 +151,15 @@ public class ProjectController extends BaseController {
     }
 
     /**
+     * 项目关闭管理模块
+     */
+    @RequestMapping(value = "closureManagement")
+    public String closureManagement(Project project, Model model) {
+        model.addAttribute("project", project);
+        return "modules/sg/managementcenter/project/closureManagement";
+    }
+
+    /**
      * 项目前期基本信息 数据列表
      */
     @ResponseBody
@@ -297,6 +304,81 @@ public class ProjectController extends BaseController {
     }
 
     /**
+     * 项目关闭管理模块数据页面
+     */
+    @ResponseBody
+    @RequestMapping(value = "closureManagementData")
+    public Map<String, Object> closureManagementData(ClosureManage project, HttpServletRequest request, HttpServletResponse response, Model model) {
+        String reserveProjectName = project.getReserveProjectName();
+        List<String> reserveList = new ArrayList<>();
+        if (null != reserveProjectName && !"".equals(reserveProjectName)) {
+            String[] split = reserveProjectName.split("\\s+");
+            String reserveName = "";
+            for (int i = 0; i < split.length; i++) {
+                reserveName = split[i];
+                reserveList.add(reserveName);
+            }
+            project.setReserveList(reserveList);
+        }
+        Page<ClosureManage> page = projectService.findClosureManagementData(new Page<ClosureManage>(request, response), project);
+        List<ClosureManage> list = page.getList();
+        for (ClosureManage c : list) {
+            CapitalPlan capitalPlan = c.getCapitalPlan();
+            String whetherCloseStatus = c.getWhetherCloseStatus();
+            String status = c.getStatus();
+            String acquisitionStatus = c.getAcquisitionStatus();
+            String constructionStatus = c.getConstructionStatus();
+            String settStatus = c.getSettStatus();
+            String advanceStatus = c.getAdvanceStatus();
+            if ("1".equals(whetherCloseStatus)) {
+                c.setWhetherCloseStatus("该项目已关闭");
+            } else {
+                c.setWhetherCloseStatus("项目未关闭");
+            }
+            //对不同流程状态进行判断重新赋值
+            if ("2".equalsIgnoreCase(status)) {
+                c.setStatus("流程已完成");
+            } else {
+                c.setStatus("流程未完成");
+            }
+
+            if ("2".equalsIgnoreCase(acquisitionStatus)) {
+                c.setAcquisitionStatus("流程已完成");
+            } else {
+                c.setAcquisitionStatus("流程未完成");
+            }
+
+            if ("2".equalsIgnoreCase(advanceStatus)) {
+                c.setAdvanceStatus("流程已完成");
+            } else {
+                c.setAdvanceStatus("流程未完成");
+            }
+
+            if ("2".equalsIgnoreCase(constructionStatus)) {
+                c.setConstructionStatus("流程已完成");
+            } else {
+                c.setConstructionStatus("流程未完成");
+            }
+
+            if ("2".equalsIgnoreCase(settStatus)) {
+                c.setSettStatus("流程已完成");
+            } else {
+                c.setSettStatus("流程未完成");
+            }
+            if (null != capitalPlan) {
+
+            } else {
+                //设计费-监理费-施工费未导入
+                c.setDesignProblem("未完成项目资金计划管理");
+                c.setSupervisionProblem("未完成项目资金计划管理");
+                c.setConstructionProblem("未完成项目资金计划管理");
+            }
+        }
+        return getBootstrapData(page);
+    }
+
+
+    /**
      * 表单列表数据
      */
     @ResponseBody
@@ -762,8 +844,6 @@ public class ProjectController extends BaseController {
         }
         j.setSuccess(true);
         j.setMsg("保存成功");
-
-
         return j;
     }
 
@@ -814,10 +894,7 @@ public class ProjectController extends BaseController {
     }
 
     /**
-     * 基础拆旧信息修改
-     * */
-    /**
-     * 保存表单
+     * 基础项目拆旧信息修改
      */
     @ResponseBody
     @RequestMapping(value = "tearEditSave")
@@ -830,6 +907,19 @@ public class ProjectController extends BaseController {
     }
 
     /**
+     * 修改项目关闭状态
+     */
+    @ResponseBody
+    @RequestMapping(value = "updateClosure")
+    public AjaxJson updateClosure(Project project, Model model) throws Exception {
+        AjaxJson j = new AjaxJson();
+        projectService.updateClosure(project);
+        j.setSuccess(true);
+        j.setMsg("修改成功");
+        return j;
+    }
+
+    /**
      * 导出excel文件
      */
     @ResponseBody
@@ -837,7 +927,6 @@ public class ProjectController extends BaseController {
     @RequestMapping(value = "export")
     public AjaxJson exportFile(Project project, HttpServletRequest request, HttpServletResponse response) {
         AjaxJson j = new AjaxJson();
-
         try {
 //			project1.setProjectManageRole(UserUtils.getUser().getLoginName());
             String fileName = "需求基本信息" + DateUtils.getDate("yyyyMMddHHmmss") + ".xlsx";
@@ -893,7 +982,6 @@ public class ProjectController extends BaseController {
         }
     }
 
-
     /**
      * 导入Excel数据
      */

+ 264 - 0
src/main/webapp/webpage/modules/sg/managementcenter/project/closureManagement.js

@@ -0,0 +1,264 @@
+<%@ page contentType="text/html;charset=UTF-8" %>
+<script>
+$(document).ready(function () {
+    $('#informationTable').bootstrapTable('hideLoading');
+    //定义方法---在bootstrap数据循环中使用,必须定义在bootstrapTable之前
+    window.operateEvents = {
+        'click #TableView': function (e, value, row, index) {
+            jp.confirm("是否确认关闭该项目", function () {
+                var rowId = row.id;
+                jp.post("${ctx}/sg/managementcenter/project/updateClosure",
+                {"id": rowId},
+                function () {
+                    if(data.success){
+                        refresh();
+                        top.layer.close(index);
+                    }
+                });
+            }, function () {
+
+            });
+        }
+    };
+    $('#projectTable').bootstrapTable({
+        //请求方法
+        method: 'post',
+        //类型json
+        dataType: "json",
+        contentType: "application/x-www-form-urlencoded",
+        //显示检索按钮
+        showSearch: true,
+        //显示刷新按钮
+        showRefresh: true,
+        //显示切换手机试图按钮
+        showToggle: true,
+        //显示 内容列下拉框
+        showColumns: true,
+        //显示到处按钮
+        showExport: true,
+        //显示切换分页按钮
+        showPaginationSwitch: true,
+        //最低显示2行
+        minimumCountColumns: 2,
+        //是否显示行间隔色
+        striped: true,
+        //是否使用缓存,默认为true,所以一般情况下需要设置一下这个属性(*)
+        cache: false,
+        //是否显示分页(*)
+        pagination: true,
+        //排序方式
+        sortOrder: "asc",
+        //初始化加载第一页,默认第一页
+        pageNumber: 1,
+        //每页的记录行数(*)
+        pageSize: 10,
+        //可供选择的每页的行数(*)
+        pageList: [5, 10, 25, 50, 150],
+        //这个接口需要处理bootstrap table传递的固定参数,并返回特定格式的json数据
+        url: "${ctx}/sg/managementcenter/project/closureManagementData",
+        //默认值为 'limit',传给服务端的参数为:limit, offset, search, sort, order Else
+        //queryParamsType:'',
+        ////查询参数,每次调用是会带上这个参数,可自定义
+        queryParams: function (params) {
+            var searchParam = $("#searchForm").serializeJSON();
+            searchParam.pageNo = params.limit === undefined ? "1" : params.offset / params.limit + 1;
+            searchParam.pageSize = params.limit === undefined ? -1 : params.limit;
+            searchParam.orderBy = params.sort === undefined ? "" : params.sort + " " + params.order;
+            return searchParam;
+        },
+        //分页方式:client客户端分页,server服务端分页(*)
+        sidePagination: "server",
+        contextMenuTrigger: "right",//pc端 按右键弹出菜单
+        contextMenuTriggerMobile: "press",//手机端 弹出菜单,click:单击, press:长按。
+        contextMenu: '#context-menu',
+        onContextMenuItem: function (row, $el) {
+            if ($el.data("item") == "edit") {
+                edit(row.id);
+            } else if ($el.data("item") == "view") {
+                view(row.id);
+            } else if ($el.data("item") == "delete") {
+                jp.confirm('确认要删除该表单记录吗?', function () {
+                    jp.loading();
+                    jp.get("${ctx}/sg/managementcenter/project/delete?id=" + row.id, function (data) {
+                        if (data.success) {
+                            $('#projectTable').bootstrapTable('refresh');
+                            jp.success(data.msg);
+                        } else {
+                            jp.error(data.msg);
+                        }
+                    })
+                });
+            }
+        },
+
+        onClickRow: function (row, $el) {
+        },
+        onShowSearch: function () {
+            $("#search-collapse").slideToggle();
+        },
+        columns:
+            [{
+                field: 'reserveProjectName',
+                width:160,
+                title: '储备项目暂定名称',
+            }
+                , {
+                field: 'projectId',
+                width:150,
+                title: '项目定义',
+            }, {
+                field: 'projectName',
+                width:150,
+                title: '项目名称',
+            }, {
+                field: 'status',
+                title: '施工交底状态',
+            }, {
+                field: 'acquisitionStatus',
+                title: '物资领料状态',
+            }, {
+                field: 'advanceStatus',
+                title: '土建状态',
+            }, {
+                field: 'constructionStatus',
+                title: '施工状态',
+            }, {
+                field: 'settStatus',
+                title: '结算状态',
+            }, {
+                field: 'designProblem',
+                title: '设计费',
+            }, {
+                field: 'supervisionProblem',
+                title: '监理费',
+            }, {
+                field: 'constructionProblem',
+                title: '施工费',
+            }, {
+                field: 'whetherCloseStatus',
+                title: '项目状态',
+            },{
+                field: 'operate',
+                title: '操作',
+                width: '80px',
+                events: operateEvents,
+                formatter: operateFormatter
+            }
+            ]
+    });
+
+    function operateFormatter(value, row, index) {
+        if (row.whetherCloseStatus != "该项目已关闭") {
+            return [
+                '<input id="TableView" type="button" value="项目关闭" class="btn btn-default">',
+            ].join('');
+        } else {
+            return [
+                '<input id="" type="button" value="该项目已关闭" class="btn btn-default">',
+            ].join('');
+        }
+    }
+
+    if (navigator.userAgent.match(/(iPhone|iPod|Android|ios)/i)) {//如果是移动端
+        $('#projectTable').bootstrapTable("toggleView");
+    }
+
+    $('#projectTable').on('check.bs.table uncheck.bs.table load-success.bs.table ' +
+        'check-all.bs.table uncheck-all.bs.table', function () {
+        $('#remove').prop('disabled', !$('#projectTable').bootstrapTable('getSelections').length);
+        $('#view,#edit').prop('disabled', $('#projectTable').bootstrapTable('getSelections').length != 1);
+    });
+
+    $("#btnImport").click(function () {
+        jp.open({
+            type: 2,
+            area: [500, 200],
+            auto: true,
+            title: "导入数据",
+            content: "${ctx}/tag/importExcel",
+            btn: ['确定', '关闭'],
+            btn1: function (index, layero) {
+                var iframeWin = layero.find('iframe')[0]; //得到iframe页的窗口对象,执行iframe页的方法:iframeWin.method();
+                iframeWin.contentWindow.importExcel('${ctx}/sg/managementcenter/project/importFinTear', function (data) {
+                    if (data.success) {
+                        jp.success(data.msg);
+                        refresh();
+                    } else {
+                        jp.error(data.msg);
+                    }
+                    jp.close(index);
+                });//调用保存事件
+                return false;
+            },
+            btn2: function (index) {
+                //  jp.close(index);
+            }
+        });
+    });
+
+    $("#export").click(function () {//导出Excel文件
+        jp.downloadFile('${ctx}/sg/managementcenter/project/export');
+    });
+
+    $("#search").click("click", function () {// 绑定查询按扭
+        $('#projectTable').bootstrapTable('refresh');
+    });
+
+    $("#reset").click("click", function () {// 绑定查询按扭
+        $("#searchForm  input").val("");
+        $("#searchForm  select").val("");
+        $("#searchForm  .select-item").html("");
+        $('#projectTable').bootstrapTable('refresh');
+    });
+
+    $('#beginBeginDate').datetimepicker({
+        format: "YYYY-MM-DD HH:mm:ss"
+    });
+    $('#endBeginDate').datetimepicker({
+        format: "YYYY-MM-DD HH:mm:ss"
+    });
+    $('#endDate').datetimepicker({
+        format: "YYYY-MM-DD HH:mm:ss"
+    });
+});
+
+function getIdSelections() {
+    return $.map($("#projectTable").bootstrapTable('getSelections'), function (row) {
+        return row.id
+    });
+}
+
+
+//刷新列表
+function refresh() {
+    $('#projectTable').bootstrapTable('refresh');
+}
+
+function add() {
+    jp.openSaveDialog('新增基础拆旧信息', "${ctx}/sg/managementcenter/project/tearAdd", '800px', '500px');
+}
+
+
+function edit(id) {//没有权限时,不显示确定按钮
+    if (id == undefined) {
+        id = getIdSelections();
+    }
+    jp.openSaveDialog('编辑拆旧信息', "${ctx}/sg/managementcenter/project/tearEidForm?id=" + id, '800px', '500px');
+}
+
+function deleteAll(){
+    jp.confirm('确认要删除该请假表单记录吗?', function(){
+        jp.loading();
+        jp.get("${ctx}/sg/managementcenter/project/deleteTearAll?ids=" + getIdSelections(), function(data){
+            if(data.success){
+                $('#projectTable').bootstrapTable('refresh');
+                jp.success(data.msg);
+            }else{
+                jp.error(data.msg);
+            }
+        })
+
+    })
+}
+
+</script>

+ 44 - 0
src/main/webapp/webpage/modules/sg/managementcenter/project/closureManagement.jsp

@@ -0,0 +1,44 @@
+<%@ page contentType="text/html;charset=UTF-8" %>
+<%@ include file="/webpage/include/taglib.jsp"%>
+<html>
+<head>
+	<title>项目关闭管理模块</title>
+	<meta http-equiv="Content-type" content="text/html; charset=utf-8">
+	<meta name="decorator" content="ani"/>
+	<%@ include file="/webpage/include/bootstraptable.jsp"%>
+	<%@include file="/webpage/include/treeview.jsp" %>
+	<%@include file="closureManagement.js" %>
+</head>
+<body>
+	<div class="wrapper wrapper-content">
+	<div class="panel panel-primary">
+	<div class="panel-heading">
+		<h3 class="panel-title">项目关闭管理模块</h3>
+	</div>
+	<div class="panel-body">
+		<!-- 搜索 -->
+		<div id="search-collapse" class="collapse">
+			<div class="accordion-inner">
+				<form:form id="searchForm" modelAttribute="project" class="form form-horizontal well clearfix">
+					<div class="col-xs-12 col-sm-6 col-md-4">
+						<label class="label-item single-overflow pull-left" title="储备项目暂定名称:">储备项目暂定名称:</label>
+						<form:input path="projectId" htmlEscape="false" maxlength="100"  class=" form-control"/>
+					</div>
+					<div class="col-xs-12 col-sm-6 col-md-4">
+						<div style="margin-top:26px">
+							<a  id="search" class="btn btn-primary btn-rounded  btn-bordered btn-sm"><i class="fa fa-search"></i> 查询</a>
+							<a  id="reset" class="btn btn-primary btn-rounded  btn-bordered btn-sm" ><i class="fa fa-refresh"></i> 重置</a>
+						</div>
+					</div>
+				</form:form>
+			</div>
+		</div>
+		
+	<!-- 表格 -->
+	<table id="projectTable"  style="table-layout:fixed"  data-toolbar="#toolbar"></table>
+
+	</div>
+	</div>
+	</div>
+</body>
+</html>

+ 3 - 3
src/main/webapp/webpage/modules/sg/managementcenter/project/tearFinal.jsp

@@ -2,7 +2,7 @@
 <%@ include file="/webpage/include/taglib.jsp"%>
 <html>
 <head>
-	<title>项目基础拆旧信息表</title>
+	<title>项目实际拆旧信息表</title>
 	<meta http-equiv="Content-type" content="text/html; charset=utf-8">
 	<meta name="decorator" content="ani"/>
 	<%@ include file="/webpage/include/bootstraptable.jsp"%>
@@ -13,7 +13,7 @@
 	<div class="wrapper wrapper-content">
 	<div class="panel panel-primary">
 	<div class="panel-heading">
-		<h3 class="panel-title">项目基础拆旧信息表</h3>
+		<h3 class="panel-title">项目实际拆旧信息表</h3>
 	</div>
 	<div class="panel-body">
 		<!-- 搜索 -->
@@ -22,7 +22,7 @@
 				<form:form id="searchForm" modelAttribute="project" class="form form-horizontal well clearfix">
 					<div class="col-xs-12 col-sm-6 col-md-4">
 						<label class="label-item single-overflow pull-left" title="储备项目暂定名称:">储备项目暂定名称:</label>
-						<form:input path="projectId" htmlEscape="false" maxlength="100"  class=" form-control"/>
+						<form:input path="reserveProjectName" htmlEscape="false" maxlength="100"  class=" form-control"/>
 					</div>
 					<div class="col-xs-12 col-sm-6 col-md-4">
 						<div style="margin-top:26px">