瀏覽代碼

optimize examine staff

java110 3 年之前
父節點
當前提交
beaf6018bf

+ 30 - 10
java110-bean/src/main/java/com/java110/dto/examineStaff/ExamineStaffDto.java

@@ -1,8 +1,11 @@
 package com.java110.dto.examineStaff;
 
 import com.java110.dto.PageDto;
+import com.java110.dto.examineStaffProject.ExamineStaffProjectDto;
+
 import java.io.Serializable;
 import java.util.Date;
+import java.util.List;
 
 /**
  * @ClassName FloorDto
@@ -15,38 +18,47 @@ import java.util.Date;
 public class ExamineStaffDto extends PageDto implements Serializable {
 
     private String esId;
-private String staffName;
-private String communityId;
-private String staffId;
+    private String staffName;
+    private String communityId;
+    private String staffId;
 
 
     private Date createTime;
 
     private String statusCd = "0";
 
+    private List<ExamineStaffProjectDto> projects;
+
 
     public String getEsId() {
         return esId;
     }
-public void setEsId(String esId) {
+
+    public void setEsId(String esId) {
         this.esId = esId;
     }
-public String getStaffName() {
+
+    public String getStaffName() {
         return staffName;
     }
-public void setStaffName(String staffName) {
+
+    public void setStaffName(String staffName) {
         this.staffName = staffName;
     }
-public String getCommunityId() {
+
+    public String getCommunityId() {
         return communityId;
     }
-public void setCommunityId(String communityId) {
+
+    public void setCommunityId(String communityId) {
         this.communityId = communityId;
     }
-public String getStaffId() {
+
+    public String getStaffId() {
         return staffId;
     }
-public void setStaffId(String staffId) {
+
+    public void setStaffId(String staffId) {
         this.staffId = staffId;
     }
 
@@ -66,4 +78,12 @@ public void setStaffId(String staffId) {
     public void setStatusCd(String statusCd) {
         this.statusCd = statusCd;
     }
+
+    public List<ExamineStaffProjectDto> getProjects() {
+        return projects;
+    }
+
+    public void setProjects(List<ExamineStaffProjectDto> projects) {
+        this.projects = projects;
+    }
 }

+ 36 - 10
java110-bean/src/main/java/com/java110/dto/examineStaffProject/ExamineStaffProjectDto.java

@@ -1,6 +1,7 @@
 package com.java110.dto.examineStaffProject;
 
 import com.java110.dto.PageDto;
+
 import java.io.Serializable;
 import java.util.Date;
 
@@ -15,9 +16,11 @@ import java.util.Date;
 public class ExamineStaffProjectDto extends PageDto implements Serializable {
 
     private String esId;
-private String espId;
-private String communityId;
-private String projectId;
+    private String[] esIds;
+    private String espId;
+    private String communityId;
+    private String projectId;
+    private String[] projectIds;
 
 
     private Date createTime;
@@ -28,25 +31,32 @@ private String projectId;
     public String getEsId() {
         return esId;
     }
-public void setEsId(String esId) {
+
+    public void setEsId(String esId) {
         this.esId = esId;
     }
-public String getEspId() {
+
+    public String getEspId() {
         return espId;
     }
-public void setEspId(String espId) {
+
+    public void setEspId(String espId) {
         this.espId = espId;
     }
-public String getCommunityId() {
+
+    public String getCommunityId() {
         return communityId;
     }
-public void setCommunityId(String communityId) {
+
+    public void setCommunityId(String communityId) {
         this.communityId = communityId;
     }
-public String getProjectId() {
+
+    public String getProjectId() {
         return projectId;
     }
-public void setProjectId(String projectId) {
+
+    public void setProjectId(String projectId) {
         this.projectId = projectId;
     }
 
@@ -66,4 +76,20 @@ public void setProjectId(String projectId) {
     public void setStatusCd(String statusCd) {
         this.statusCd = statusCd;
     }
+
+    public String[] getProjectIds() {
+        return projectIds;
+    }
+
+    public void setProjectIds(String[] projectIds) {
+        this.projectIds = projectIds;
+    }
+
+    public String[] getEsIds() {
+        return esIds;
+    }
+
+    public void setEsIds(String[] esIds) {
+        this.esIds = esIds;
+    }
 }

+ 12 - 0
java110-db/src/main/resources/mapper/user/ExamineStaffProjectV1ServiceDaoImplMapper.xml

@@ -24,6 +24,12 @@
         <if test="esId !=null and esId != ''">
             and t.es_id= #{esId}
         </if>
+        <if test="esIds !=null ">
+            and t.es_id in
+            <foreach collection="esIds" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         <if test="espId !=null and espId != ''">
             and t.esp_id= #{espId}
         </if>
@@ -74,6 +80,12 @@
         <if test="esId !=null and esId != ''">
             and t.es_id= #{esId}
         </if>
+        <if test="esIds !=null ">
+            and t.es_id in
+            <foreach collection="esIds" item="item" open="(" close=")" separator=",">
+                #{item}
+            </foreach>
+        </if>
         <if test="espId !=null and espId != ''">
             and t.esp_id= #{espId}
         </if>

+ 43 - 0
service-user/src/main/java/com/java110/user/cmd/examine/ListExamineStaffCmd.java

@@ -20,7 +20,10 @@ import com.java110.core.annotation.Java110Cmd;
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.examineStaffProject.ExamineStaffProjectDto;
+import com.java110.intf.user.IExamineStaffProjectV1InnerServiceSMO;
 import com.java110.intf.user.IExamineStaffV1InnerServiceSMO;
+import com.java110.po.examineStaffProject.ExamineStaffProjectPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
@@ -54,6 +57,9 @@ public class ListExamineStaffCmd extends Cmd {
     @Autowired
     private IExamineStaffV1InnerServiceSMO examineStaffV1InnerServiceSMOImpl;
 
+    @Autowired
+    private IExamineStaffProjectV1InnerServiceSMO examineStaffProjectV1InnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         super.validatePageInfo(reqJson);
@@ -71,6 +77,8 @@ public class ListExamineStaffCmd extends Cmd {
 
         if (count > 0) {
             examineStaffDtos = examineStaffV1InnerServiceSMOImpl.queryExamineStaffs(examineStaffDto);
+
+            freshStaffProjects(examineStaffDtos);
         } else {
             examineStaffDtos = new ArrayList<>();
         }
@@ -81,4 +89,39 @@ public class ListExamineStaffCmd extends Cmd {
 
         cmdDataFlowContext.setResponseEntity(responseEntity);
     }
+
+    /**
+     *
+     * @param examineStaffDtos
+     */
+    private void freshStaffProjects(List<ExamineStaffDto> examineStaffDtos) {
+
+        if(examineStaffDtos == null || examineStaffDtos.size() < 1){
+            return ;
+        }
+
+        List<String> esIds = new ArrayList<>();
+        for(ExamineStaffDto tmpExamineStaffDto : examineStaffDtos){
+            esIds.add(tmpExamineStaffDto.getEsId());
+        }
+
+
+        ExamineStaffProjectDto examineStaffProjectDto = new ExamineStaffProjectDto();
+
+        examineStaffProjectDto.setEsIds(esIds.toArray(new String[esIds.size()]));
+
+       List<ExamineStaffProjectDto> examineStaffProjectDtos =  examineStaffProjectV1InnerServiceSMOImpl.queryExamineStaffProjects(examineStaffProjectDto);
+
+       List<ExamineStaffProjectDto> staffProjectDtos = null;
+        for(ExamineStaffDto tmpExamineStaffDto : examineStaffDtos){
+            staffProjectDtos = new ArrayList<>();
+            for(ExamineStaffProjectDto tmpExamineStaffProjectDto: examineStaffProjectDtos){
+                if(tmpExamineStaffProjectDto.getEsId().equals(tmpExamineStaffDto.getEsId())){
+                    staffProjectDtos.add(tmpExamineStaffProjectDto);
+                }
+            }
+
+            tmpExamineStaffDto.setProjects(staffProjectDtos);
+        }
+    }
 }