蔡德晨 5 lat temu
rodzic
commit
086bd7bc13

+ 9 - 5
src/main/java/com/jeeplus/modules/sg/overheadline/web/OverheadLineController.java

@@ -13,7 +13,9 @@ import com.jeeplus.modules.sg.overheadline.service.RuleRatioService;
 import com.jeeplus.modules.sg.overheadline.service.SettlementService;
 import com.jeeplus.modules.sg.overheadline.util.BashInfo;
 import com.jeeplus.modules.sg.project.entity.WbsItem;
+import com.jeeplus.modules.sg.project.entity.WbsProject;
 import com.jeeplus.modules.sg.project.service.ItemService;
+import com.jeeplus.modules.sg.project.service.ProjectService;
 import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -44,6 +46,8 @@ public class OverheadLineController extends BaseController {
   private SettlementService settlementService;
   @Autowired
   private ItemService itemService;
+  @Autowired
+  private ProjectService projectService;
 
 
 
@@ -52,15 +56,13 @@ public class OverheadLineController extends BaseController {
     String id = request.getParameter("id");
     String type = request.getParameter("type");
     String projectId = request.getParameter("projectId");
-//    WbsItem wbsItem = new WbsItem();
-    JkxlAdjustFee jkxlAdjustFee = new JkxlAdjustFee();
     WbsItem wbsItem = itemService.get(id);
-//    wbsItem.setId(id);
-//    wbsItem.setType(type);
+    WbsProject wbsProject = projectService.get(wbsItem.getProjectId());
     if(projectId == null) {
       wbsItem.setProjectId(null);
     }
-    jkxlAdjustFee.setId(id);
+    wbsItem.setProjectName(wbsProject.getProjectName());
+    wbsItem.setProjectNo(wbsProject.getProjectNo());
     List<WbsItem> list1 = new ArrayList<>();
     list1.add(wbsItem);
     //查询费用明细
@@ -68,6 +70,8 @@ public class OverheadLineController extends BaseController {
     //求和
     list.addAll(getTotal(list,type));
     //查询未识别数据
+    JkxlAdjustFee jkxlAdjustFee = new JkxlAdjustFee();
+    jkxlAdjustFee.setId(id);
     List<JkxlAdjustFee> list2 = feeAdjustService.getTzFee(jkxlAdjustFee);
     //数据校验展示
     List<Settlement> list3 = settlementService.selectSettlementService(id,type);

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

@@ -15,6 +15,8 @@ public class WbsItem extends DataEntity<WbsItem> {
     private String type; //项目类型
     private Date createDate;  //创建时间
     private String delFlag;//是否删除
+    private String projectName; //所属工程
+    private String projectNo;  //工程编号
 
     @Override
     public String getDelFlag() {
@@ -94,4 +96,20 @@ public class WbsItem extends DataEntity<WbsItem> {
     public void setItemNo(String itemNo) {
         this.itemNo = itemNo;
     }
+
+    public String getProjectName() {
+        return projectName;
+    }
+
+    public void setProjectName(String projectName) {
+        this.projectName = projectName;
+    }
+
+    public String getProjectNo() {
+        return projectNo;
+    }
+
+    public void setProjectNo(String projectNo) {
+        this.projectNo = projectNo;
+    }
 }

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

@@ -7,6 +7,7 @@ import java.util.List;
 
 public class WbsProject extends DataEntity<WbsProject> {
     private String projectName;//工程名称
+    private String projectNo; //工程编号
     private int number;  //项目数量
     private String userName; //创建人
     private String parentNode; //父节点
@@ -157,4 +158,12 @@ public class WbsProject extends DataEntity<WbsProject> {
     public void setCreator(String creator) {
         this.creator = creator;
     }
+
+    public String getProjectNo() {
+        return projectNo;
+    }
+
+    public void setProjectNo(String projectNo) {
+        this.projectNo = projectNo;
+    }
 }

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

@@ -72,6 +72,7 @@
 			</otherwise>
 		</choose>
 	</select>
+
 	
 	<insert id="insert">
 		INSERT INTO sg_wbs_item(

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

@@ -11,6 +11,7 @@
 		a.remarks AS "remarks",
 		a.del_flag AS "delFlag",
 		a.project_name AS "projectName",
+		a.project_no AS "projectNo",
 		a.number,
 		b.name AS "userName"
 	</sql>
@@ -99,6 +100,7 @@
 			remarks,
 			del_flag,
 			project_name,
+			project_no,
 			number,
 			parent_node
 		) VALUES (
@@ -110,6 +112,7 @@
 			#{remarks},
 			#{delFlag},
 			#{projectName},
+			#{projectNo},
 			#{number},
 			#{parentNode}
 		)
@@ -118,6 +121,7 @@
 	<update id="update">
 		UPDATE sg_wbs_project SET
 			project_name = #{projectName},
+			project_no = #{projectNo},
 			update_by = #{updateBy.id},
 			update_date = #{updateDate},
 			remarks = #{remarks}

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

@@ -161,6 +161,55 @@ public class ProjectController extends BaseController {
     }
 
 
+
+    //导出
+    @RequestMapping("/exportone")
+    public String exportone(HttpServletRequest request,Model model,HttpServletResponse response) throws IOException {
+        String id = request.getParameter("id");
+        WbsProject wbsProject = projectService.get(id);
+        String fileName = wbsProject.getProjectNo()+wbsProject.getProjectName()+".xlsx";
+        List<WbsItem> wbsItems = wbsProject.getWbsItems();
+        String[] sts = new String[wbsItems.size()+1];
+        sts[0] = "合计";
+        for (int i=0;i<wbsItems.size();i++){
+            sts[i+1] = wbsItems.get(i).getUnit();
+        }
+        List<JkxlDetailFee> list = new ArrayList<>();
+        for(WbsItem wbsItem :wbsItems){
+            List<JkxlDetailFee> jkxlDetailFees = overheadLineService.findList(wbsItem.getId(),wbsItem.getType());
+            list.addAll(jkxlDetailFees);
+        }
+        //集合去重合并
+        List<JkxlDetailFee> list1 = getNewList(list);
+        //加序号
+        for (int i=0;i<list1.size();i++){
+            list1.get(i).setIndex(i+1);
+        }
+        ExportUtil exportUtil = new ExportUtil(null, JkxlDetailFee.class,sts);
+        //写合计
+        exportUtil.setDataList(list1,0);
+        //分别写入项目
+        for(int j=0;j<wbsItems.size();j++){
+            String unit = wbsItems.get(j).getUnit();
+            if(unit != null) {
+                List<JkxlDetailFee> jkxlDetailFees = overheadLineService.findList(wbsItems.get(j).getId(), wbsItems.get(j).getType());
+                for (int k = j + 1; k < wbsItems.size(); k++) {
+                    if (unit.equals(wbsItems.get(k).getUnit())) {
+                        wbsItems.get(k).setUnit(null);
+                        List<JkxlDetailFee> jkxl = overheadLineService.findList(wbsItems.get(k).getId(), wbsItems.get(k).getType());
+                        jkxlDetailFees.addAll(jkxl);
+                    }
+                }
+                List<JkxlDetailFee> list2 = getNewList(jkxlDetailFees);
+                exportUtil.setDataList(list2,j+1);
+            }
+
+        }
+        exportUtil.write(response,fileName).dispose();
+        return "redirect:/a/project/list";
+    }
+
+
     /**
      * 数据去重合并
      * @param list

+ 8 - 23
src/main/java/com/jeeplus/modules/sg/project/web/ProjectTemController.java

@@ -66,10 +66,11 @@ public class ProjectTemController extends BaseController {
      */
     @ResponseBody
     @RequestMapping("/import")
-    public HashMap importFile(@RequestParam(value = "file")MultipartFile[] file,String projectName,String[] itemNames,String[] units,String[] itemNo) throws IOException, InvalidFormatException {
+    public HashMap importFile(@RequestParam(value = "file")MultipartFile[] file,String projectName,String projectNo,String[] itemNames,String[] units,String[] itemNo) throws IOException, InvalidFormatException {
         HashMap map = new HashMap();
         WbsProject wbsProject = new WbsProject();
         wbsProject.setProjectName(projectName);
+        wbsProject.setProjectNo(projectNo);
         projectService.save(wbsProject);
         String projectId = wbsProject.getId();
         String fileName = "";
@@ -78,34 +79,18 @@ public class ProjectTemController extends BaseController {
                 fileName = file[i].getOriginalFilename();
                 WbsItem wbsItem = new WbsItem();
                 wbsItem.setItemName(itemNames[i]);
-//                wbsItem.setType(itemTypes[i]);
                 wbsItem.setProjectId(projectId);
                 if(null != units && units.length >0){
                     if(StringUtils.isNotBlank(units[i])){
-                    wbsItem.setUnit(units[i]);
+                     wbsItem.setUnit(units[i]);
                     }
                 }
-                if(null != itemNo && itemNo.length >0) {
-                    if (StringUtils.isNotBlank(itemNo[i])) {
-                        wbsItem.setItemNo(itemNo[i]);
-                    }
-                }
-//            保存数据到数据库
-//                if (itemTypes[i].equals("1")) {
-//                    String id = getId();
-//                    wbsItem.setId(id);
-//                    overheadLineService.saveJk(file[i],wbsItem);
-//                }
-//                if (itemTypes[i].equals("2")) {
-//                    String id = getId();
-//                    wbsItem.setId(id);
-//                    overheadLineService.saveDl(file[i],wbsItem);
-//                }
-//                if (itemTypes[i].equals("3")) {
-//                    String id = getId();
-//                    wbsItem.setId(id);
-//                    substationService.save(file[i],wbsItem);
+//                if(null != itemNo && itemNo.length >0) {
+//                    if (StringUtils.isNotBlank(itemNo[i])) {
+//                        wbsItem.setItemNo(itemNo[i]);
+//                    }
 //                }
+//            保存数据到数据库
                 String id = getId();
                 wbsItem.setId(id);
                 String str = projectService.save(file[i],wbsItem);