Ver código fonte

Merge remote-tracking branch 'origin/master'

蔡德晨 5 anos atrás
pai
commit
1c63e1411f

+ 8 - 11
src/main/java/com/jeeplus/modules/sg/overheadline/entity/Settlement.java

@@ -10,6 +10,7 @@ public class Settlement {
     private String status;//数据核对 0-核对一致 1-核对不一致
     private String theAmount;//比对金额:json
     private String reason;//原因
+    private String del_Flag;
 
     public String getId() {
         return id;
@@ -66,16 +67,12 @@ public class Settlement {
         this.reason = reason;
     }
 
-    @Override
-    public String toString() {
-        return "Settlement{" +
-                "id='" + id + '\'' +
-                ", entryName='" + entryName + '\'' +
-                ", money=" + money +
-                ", remarks='" + remarks + '\'' +
-                ", status='" + status + '\'' +
-                ", theAmount='" + theAmount + '\'' +
-                ", reason='" + reason + '\'' +
-                '}';
+
+    public String getDel_Flag() {
+        return del_Flag;
+    }
+
+    public void setDel_Flag(String del_Flag) {
+        this.del_Flag = del_Flag;
     }
 }

+ 0 - 11
src/main/java/com/jeeplus/modules/sg/overheadline/entity/SettlementCount.java

@@ -1,11 +0,0 @@
-package com.jeeplus.modules.sg.overheadline.entity;
-
-public class SettlementCount {
-    private String fbfx;
-    private String cbrcg;
-    private String csf;
-    private String qt;
-    private String gf;
-    private String sj;
-
-}

+ 9 - 0
src/main/java/com/jeeplus/modules/sg/overheadline/util/SettementUtil.java

@@ -614,6 +614,15 @@ public class SettementUtil {
         String reason="";
         for(Settlement settlement:settlementList){
             key = settlement.getEntryName();
+            if (key.equals(BashInfo.JS_CBRF)){
+                key = BDZ_TBRNAME;
+            }
+            if (key.equals(BashInfo.JS_FBRF)){
+                key=BDZ_ZBRNAME;
+            }
+            if (key.equals(BashInfo.JS_JGJS)){
+                key = BDZ_TBNAME;
+            }
             switch (key){
                 case BashInfo.JS_FBFX:
                     reason = getDJoint(settlement);

+ 10 - 0
src/main/java/com/jeeplus/modules/sg/project/entity/WbsItem.java

@@ -13,7 +13,17 @@ public class WbsItem extends DataEntity<WbsItem> {
     private String parentNode; //父节点
     private String type; //项目类型
     private Date createDate;  //创建时间
+    private String delFlag;//是否删除
 
+    @Override
+    public String getDelFlag() {
+        return delFlag;
+    }
+
+    @Override
+    public void setDelFlag(String delFlag) {
+        this.delFlag = delFlag;
+    }
 
     @Override
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")

+ 7 - 0
src/main/java/com/jeeplus/modules/sg/project/entity/WbsProject.java

@@ -9,6 +9,7 @@ public class WbsProject extends DataEntity<WbsProject> {
     private int number;  //项目数量
     private String userName; //创建人
     private String parentNode; //父节点
+    private String delFlag;//是否删除
 
     private List<WbsItem> wbsItems; //项目
 
@@ -52,4 +53,10 @@ public class WbsProject extends DataEntity<WbsProject> {
     public void setUserName(String userName) {
         this.userName = userName;
     }
+
+    @Override
+    public String getDelFlag() { return delFlag;}
+
+    @Override
+    public void setDelFlag(String delFlag) {this.delFlag = delFlag;}
 }

+ 3 - 0
src/main/java/com/jeeplus/modules/sg/project/mapper/ItemMapper.java

@@ -16,4 +16,7 @@ public interface ItemMapper extends BaseMapper<WbsItem> {
 
     //根据名称获取项目
     List<WbsItem> findItemByName(@Param("itemName")String itemName,@Param("projectId") String projectId);
+
+    //删除项目
+    Integer  updateItem(WbsItem wbsItem);
 }

+ 22 - 0
src/main/java/com/jeeplus/modules/sg/project/mapper/ProjectMapper.java

@@ -2,6 +2,10 @@ package com.jeeplus.modules.sg.project.mapper;
 
 import com.jeeplus.core.persistence.BaseMapper;
 import com.jeeplus.core.persistence.annotation.MyBatisMapper;
+import com.jeeplus.modules.sg.overheadline.entity.JkxlAdjustFee;
+import com.jeeplus.modules.sg.overheadline.entity.JkxlDetailFee;
+import com.jeeplus.modules.sg.overheadline.entity.Settlement;
+import com.jeeplus.modules.sg.project.entity.WbsItem;
 import com.jeeplus.modules.sg.project.entity.WbsProject;
 import com.jeeplus.modules.sg.project.entity.WbsSelection;
 import org.apache.ibatis.annotations.Param;
@@ -15,4 +19,22 @@ public interface ProjectMapper extends BaseMapper<WbsProject> {
     void updateNum(@Param("number") int number,@Param("id") String id);
 //    int update(WbsProject wbsProject);
     List<WbsProject> findByName(String projectName);
+
+    //工程删除
+    Integer deleteProject(WbsProject wbsProject);
+
+    //查找工程下所有项目
+    List<WbsItem> findItem(String parentId);
+
+    //删除工程下项目
+    Integer deleteItem(@Param(value = "wbsItems")List<WbsItem> wbsItems);
+
+    //删除结算
+    Integer deleteItemCount(@Param(value = "settlements")List<Settlement> settlements);
+
+//    //删除其他费用表
+//    Integer deleteItemDetail(@Param(value = "jkxlDetailFees")List<JkxlDetailFee> jkxlDetailFees);
+//
+//    //删除差额
+//    Integer deleteItemAdjust(@Param(value = "jkxlDetailFees")List<JkxlAdjustFee> jkxlAdjustFees);
 }

+ 8 - 0
src/main/java/com/jeeplus/modules/sg/project/mapper/xml/ItemMapper.xml

@@ -143,4 +143,12 @@
 		FROM sg_wbs_item
 		WHERE item_name = #{itemName} and project_id =#{projectId}
 	</select>
+
+	<delete id="deleteItem" parameterType="String">
+		DELETE FROM sg_wbs_item where id = #{id}
+	</delete>
+
+	<update id="updateItem" parameterType="WbsItem">
+		update sg_wbs_item set del_flag = #{delFlag} where id=#{id}
+	</update>
 </mapper>

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

@@ -191,4 +191,57 @@
 		select * FROM sg_wbs_project  where ${propertyName} = '${value}'
 	</select>
 
+	<!-- 根据工程id查找项目 -->
+	<select id="findItem" parameterType="String" resultMap="WbsProject">
+		select * From sg_wbs_item where project_id = #{id}
+	</select>
+
+	<!-- 根据工程id删除项目 -->
+	<update id="deleteItem" parameterType="java.util.List">
+		<foreach collection="wbsItems" item="wbsItem" index="index" open="" close="" separator=";">
+			UPDATE sg_wbs_item
+			<set>
+				<if test="wbsItem.parentId != null and wbsItem.parentId  != ''">
+					del_flag = #{wbsItem.delFlag,jdbcType=VARCHAR},
+				</if>
+			</set>
+			<where>
+				ID = #{wbsItem.parentId,jdbcType=VARCHAR}
+			</where>
+		</foreach>
+	</update>
+
+	<!-- 根据工程id逻辑删除结算表 -->
+	<update id="deleteItemCount" parameterType="java.util.List">
+		<foreach collection="settlements" item="settlement" index="index" open="" close="" separator=";">
+			UPDATE sg_sett_count
+			<set>
+				<if test="wbsItem.id != null and wbsItem.id != ''">
+					del_flag = #{settlement.delFlag,jdbcType=VARCHAR},
+				</if>
+			</set>
+			<where>
+				ID = #{settlement.id,jdbcType=VARCHAR}
+			</where>
+		</foreach>
+	</update>
+
+	<!--&lt;!&ndash; 根据工程id逻辑删除项目 &ndash;&gt;-->
+	<!--<update id="deleteItemDetail" parameterType="java.util.List">-->
+		<!--<foreach collection="settlements" item="settlement" index="index" open="" close="" separator=";">-->
+			<!--UPDATE sg_sett_count-->
+			<!--<set>-->
+				<!--<if test="wbsItem.parentId != null and wbsItem.parentId  != ''">-->
+					<!--del_flag = #{wbsItem.delFlag,jdbcType=VARCHAR},-->
+				<!--</if>-->
+			<!--</set>-->
+			<!--<where>-->
+				<!--ID = #{wbsItem.parentId,jdbcType=VARCHAR}-->
+			<!--</where>-->
+		<!--</foreach>-->
+	<!--</update>-->
+	<!-- 逻辑删除工程id -->
+	<update id="deleteProject" parameterType="WbsProject">
+	  	update sg_wbs_project set del_flag = #{delFlag} where id = #{id}
+	</update>
 </mapper>

+ 3 - 0
src/main/java/com/jeeplus/modules/sg/project/service/ItemService.java

@@ -49,4 +49,7 @@ public class ItemService extends CrudService<ItemMapper, WbsItem> {
     public List<WbsItem> findItemByName(String itemName,String projectId){
         return itemMapper.findItemByName(itemName,projectId);
     }
+    //删除
+    @Transactional(readOnly = false)
+    public void deleteItem(WbsItem wbsItem){ itemMapper.updateItem(wbsItem); }
 }

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

@@ -3,6 +3,7 @@ package com.jeeplus.modules.sg.project.service;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.core.persistence.Page;
 import com.jeeplus.core.service.CrudService;
+import com.jeeplus.modules.sg.overheadline.entity.Settlement;
 import com.jeeplus.modules.sg.project.entity.WbsItem;
 import com.jeeplus.modules.sg.project.entity.WbsProject;
 import com.jeeplus.modules.sg.project.entity.WbsSelection;
@@ -80,4 +81,22 @@ public class ProjectService extends CrudService<ProjectMapper, WbsProject> {
     public void delete(WbsProject wbsProject) {
         super.delete(wbsProject);
     }
+
+    @Transactional(readOnly = false)
+    public Integer deleteProject(WbsProject wbsProject){
+        return projectMapper.deleteProject(wbsProject);
+    }
+
+    public List<WbsItem> findItem(String parentId){
+        return projectMapper.findItem(parentId);
+    }
+
+    @Transactional(readOnly = false)
+    public Integer deleteItem(List<WbsItem> wbsItems){
+        return projectMapper.deleteItem(wbsItems);
+    }
+    @Transactional(readOnly = false)
+    public Integer deleteItemCount(List<Settlement> settlements){
+        return projectMapper.deleteItemCount(settlements);
+    }
 }

+ 20 - 0
src/main/java/com/jeeplus/modules/sg/project/web/ProjectController.java

@@ -5,6 +5,7 @@ import com.jeeplus.common.utils.DateUtils;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.core.web.BaseController;
 import com.jeeplus.modules.sg.overheadline.entity.JkxlDetailFee;
+import com.jeeplus.modules.sg.overheadline.entity.Settlement;
 import com.jeeplus.modules.sg.overheadline.service.OverheadLineService;
 import com.jeeplus.modules.sg.project.entity.WbsItem;
 import com.jeeplus.modules.sg.project.entity.WbsProject;
@@ -226,4 +227,23 @@ public class ProjectController extends BaseController {
         return newDate+result;
     }
 
+    /**
+     * 删除
+     */
+    @RequestMapping("/deleteProject")
+    @ResponseBody
+    public AjaxJson deleteProject(WbsProject wbsProject){
+        AjaxJson j = new AjaxJson();
+        try {
+          List<WbsItem> wbsItems =  projectService.findItem(wbsProject.getId());
+          if (!wbsItems.isEmpty()){
+              projectService.deleteItem(wbsItems);
+          }
+          projectService.deleteProject(wbsProject);
+        }catch (Exception e){
+            j.setSuccess(false);
+            j.setMsg("删除失败");
+        }
+        return j;
+    }
 }

+ 26 - 15
src/main/java/com/jeeplus/modules/sg/project/web/ProjectTemController.java

@@ -1,5 +1,6 @@
 package com.jeeplus.modules.sg.project.web;
 
+import com.jeeplus.common.json.AjaxJson;
 import com.jeeplus.core.web.BaseController;
 import com.jeeplus.modules.sg.overheadline.service.OverheadLineService;
 import com.jeeplus.modules.sg.project.entity.WbsItem;
@@ -183,19 +184,29 @@ public class ProjectTemController extends BaseController {
         }
         return newDate+result;
     }
-
-//    @RequestMapping("/verfiy")
-//    @ResponseBody
-//    public HashMap getVerfiy(String projectName,String projectId){
-//        HashMap map = new HashMap();
-//        List<WbsItem> wbsItemList = itemService.findItemByName(projectName,projectId);
-//        if (wbsItemList!=null&&!wbsItemList.isEmpty()){
-//            map.put("code",1);
-//            map.put("msg","导入失败! 项目名称:"+projectName+" 已存在");
-//            return map;
-//        }
-//        map.put("msg","导入成功");
-//        return map;
-//    }
-
+    //校验项目名称是否存在
+    @RequestMapping("/verfiy")
+    @ResponseBody
+    public HashMap getVerfiy(String projectName,String projectId){
+        HashMap map = new HashMap();
+        List<WbsItem> wbsItemList = itemService.findItemByName(projectName,projectId);
+        if (wbsItemList!=null&&!wbsItemList.isEmpty()){
+            map.put("msg","导入失败! 项目名称:"+projectName+" 已存在");
+            return map;
+        }
+        map.put("code",1);
+        map.put("msg","导入成功");
+        return map;
+    }
+    //删除项目
+    @RequestMapping("/deleteItem")
+    @ResponseBody
+    public AjaxJson deleteItem(WbsItem wbsItem){
+        wbsItem.setDelFlag("1");
+        AjaxJson j = new AjaxJson();
+            itemService.deleteItem(wbsItem);
+            j.setSuccess(true);
+            j.setMsg("删除成功");
+        return j;
+    }
 }

+ 2 - 1
src/main/webapp/webpage/modules/sg/free/alongst.js

@@ -1,7 +1,7 @@
 <%@ page contentType="text/html;charset=UTF-8" language="java" %>
 <script type="text/javascript">
     layui.use(['table','form','layedit', 'laydate'], function(){
-    var table = layui.table
+    var table = layui.table //生产数据表格
     ,form = layui.form;
     form.render();
     table.render({
@@ -30,6 +30,7 @@
     ]
     ,page: false
 });
+    //计算比例/金额
     table.on('edit(longtable)', function(obj){
 
     var field = obj.field;

+ 1 - 1
src/main/webapp/webpage/modules/sg/free/wbslist.js

@@ -25,7 +25,7 @@
     {type:'numbers',title: '序号', rowspan: 2, totalRowText: "合计",},
     {field: 'wbsys', title: 'WBS要素',width:200, rowspan:'2'},
 
-    {field:'wbssbm',width:100, align:'center',rowspan:'2',title:"wbs识别码",rowspan:'2'},
+    {field:'wbssbm',width:100, align:'center',rowspan:'2',title:"wbs识别码"},
     {field:'fbfxysj', align:'center', title: '分部分项(原数据)',colspan:'6'},
     {field:'fbfxtch',align:'center',title:'分部分项(调差后)',colspan:'4'},
     {field:'fbfxtch',align:'center',title:'共性分摊费用',colspan:'10'},

+ 41 - 4
src/main/webapp/webpage/modules/sg/project/management.js

@@ -52,13 +52,15 @@ layui.config({
                             xml += "<a class='layui-btn layui-btn-primary layui-btn-xs' onclick=\"look( '${ctx}/project/form?id=" + d.id + "&tabId=1')\">查看</a>"
                                 +"<a class='layui-btn layui-btn-xs'  onclick=\"update( '${ctx}/project/form?id=" + d.id + "&tabId=2')\">修改</a>"
                                 +"<a class='layui-btn layui-btn-normal layui-btn-xs' lay-event='add'>添加项目</a>"
-                                +"<a class='layui-btn layui-btn-warm layui-btn-xs' lay-event=''href=\"${ctx}/project/export?id=" + d.id+"\">导出</a>";
+                                +"<a class='layui-btn layui-btn-warm layui-btn-xs' lay-event=''href=\"${ctx}/project/export?id=" + d.id+"\">导出</a>"
+                                +"<a class='layui-btn layui-btn-xs layui-btn-danger' onclick='deleteProject("+d.id+")'>删除</a>";
                         }
                         if(d.status==2){
                             xml +="<span class='myspan'>操作</span>";
                         }
                         if(d.status==3){
-                            xml +="<a class='layui-btn layui-btn-xs' href=\"${ctx}/jkxl/list?id="+d.id+"&type="+d.type+"\">编辑</a>";
+                            xml +="<a class='layui-btn layui-btn-xs' href=\"${ctx}/jkxl/list?id="+d.id+"&type="+d.type+"\">编辑</a>"
+                                +"<button class='layui-btn layui-btn-xs layui-btn-danger' onclick='deleteItem("+d.id+")'>删除</button>";
                         }
 
                         return xml;
@@ -206,10 +208,45 @@ function update(url) {
         }
     })
 }
+//逻辑删除项目
+function deleteItem(id) {
+    $.ajax({
+        type: "post",
+        url: "${ctx}/project/tem/deleteItem",
+        data:{'id':id},
+        dataType: "json",
+        success: function(data){
+            if(data.success){
+                alert(data.msg);
+                layer.msg(data.msg, {icon: 6});
+                window.location.reload();
+            }else{
+                layer.msg(data.msg, {icon: 5});
+            }
+        }
+    })
+}
+//删除工程
+function deleteProject(id) {
+    $.ajax({
+        type: "post",
+        url: "${ctx}/project/deleteProject",
+        data:{'id':id},
+        dataType: "json",
+        success: function(data){
+            if(data.success){
+                alert(data.msg);
+                layer.msg(data.msg, {icon: 6});
+                window.location.reload();
+            }else{
+                layer.msg(data.msg, {icon: 5});
+            }
+        }
+    })
+}
 $(document).ready(function(e) {
-
     $("#noneBtn").click(function(e) {
         $("#noneDiv").toggle();
-    });
+    })
 });
 </script>

+ 24 - 10
src/main/webapp/webpage/modules/sg/projecttem/addItem.js

@@ -6,16 +6,30 @@
         var newText1 = parent.$('#addtext').val();
         $("#newText1").val(newText1);
     })
-function doSubmit(obj){
-    if ($("#myfile").val()==null||$("#myfile").val()==""){
-        layer.msg("请选择文件",{icon: 3});
-        throw SyntaxError;
-    }
-    if ($("#inputwrite").val()==null||$("#inputwrite").val()==""){
-        layer.msg("请输入项目名称",{icon:3});
-        throw SyntaxError;
-    }
-    $("#inputForm").submit();
+    function doSubmit(obj){
+        if ($("#myfile").val()==null||$("#myfile").val()==""){
+            layer.msg("请选择文件",{icon: 3});
+            throw SyntaxError;
+        }
+        if ($("#inputwrite").val()==null||$("#inputwrite").val()==""){
+            layer.msg("请输入项目名称",{icon:3});
+            throw SyntaxError;
+        }
+        $.ajax({
+            type: "post",
+            url: "${ctx}/project/tem/verfiy",
+            // contentType: 'application/x-www-form-urlencoded;charset=utf-8',
+            data: {projectName:$("#inputwrite").val(),projectId:$("#newText1").val()},
+            dataType: "json",
+            success: function(data){
+                if(data.code=="1"){
+                    $("#inputForm").submit();
+                }else{
+                    alert(data.msg);
+                    throw SyntaxError;
+                }
+            }
+        });
     }
     $("#btnxz").click(function(){
         $("#myfile").trigger("click");

+ 2 - 0
src/main/webapp/webpage/modules/sg/projecttem/addItem2Form.jsp

@@ -17,6 +17,8 @@
         .layui-btn-mysele{width: 70px;}
         .mydiv1:empty:before{content: attr(placeholder);color:#999999;}
         .mydiv1:focus:before{content:none}
+        .layui-table-tips-main{display:none}
+        .layui-table-tips-c{display:none}
     </style>
 </head>
 <body>