Bläddra i källkod

优化投诉单

java110 6 år sedan
förälder
incheckning
0f569c0091

+ 13 - 0
java110-bean/src/main/java/com/java110/dto/complaint/ComplaintDto.java

@@ -14,6 +14,9 @@ import java.util.Date;
  * add by wuxw 2019/4/24
  **/
 public class ComplaintDto extends PageDto implements Serializable {
+
+    public static final String STATE_AGREE = "";
+
     //工作流实例ID
     private String processInstanceId;
 
@@ -38,6 +41,8 @@ public class ComplaintDto extends PageDto implements Serializable {
     private String currentUserName;
     private String currentUserTel;
 
+    private String startUserId;
+
     //
     private String auditCode;
 
@@ -241,4 +246,12 @@ public class ComplaintDto extends PageDto implements Serializable {
     public void setCurrentUserTel(String currentUserTel) {
         this.currentUserTel = currentUserTel;
     }
+
+    public String getStartUserId() {
+        return startUserId;
+    }
+
+    public void setStartUserId(String startUserId) {
+        this.startUserId = startUserId;
+    }
 }

+ 9 - 0
java110-bean/src/main/java/com/java110/po/complaint/ComplaintPo.java

@@ -21,6 +21,7 @@ public class ComplaintPo implements Serializable {
     private String context;
     private String state;
     private String communityId;
+    private String startUserId;
 
     public String getComplaintId() {
         return complaintId;
@@ -93,4 +94,12 @@ public class ComplaintPo implements Serializable {
     public void setCommunityId(String communityId) {
         this.communityId = communityId;
     }
+
+    public String getStartUserId() {
+        return startUserId;
+    }
+
+    public void setStartUserId(String startUserId) {
+        this.startUserId = startUserId;
+    }
 }

+ 17 - 6
java110-db/src/main/resources/mapper/store/ComplaintServiceDaoImplMapper.xml

@@ -7,9 +7,10 @@
     <!-- 保存投诉建议信息 add by wuxw 2018-07-03 -->
     <insert id="saveBusinessComplaintInfo" parameterType="Map">
         insert into business_complaint(
-        operate,complaint_id,type_cd,context,complaint_name,tel,state,store_id,b_id,room_id,community_id
+        operate,complaint_id,type_cd,context,complaint_name,tel,state,store_id,b_id,room_id,community_id,start_user_id
         ) values (
-        #{operate},#{complaintId},#{typeCd},#{context},#{complaintName},#{tel},#{state},#{storeId},#{bId},#{roomId},#{communityId}
+        #{operate},#{complaintId},#{typeCd},#{context},#{complaintName},#{tel},#{state},#{storeId},#{bId},#{roomId},#{communityId},
+        #{startUserId}
         )
     </insert>
 
@@ -18,7 +19,8 @@
     <select id="getBusinessComplaintInfo" parameterType="Map" resultType="Map">
         select t.operate,t.complaint_id,t.complaint_id complaintId,t.type_cd,t.type_cd
         typeCd,t.context,t.complaint_name,t.complaint_name complaintName,t.tel,t.state,t.store_id,t.store_id
-        storeId,t.b_id,t.b_id bId,t.room_id,t.room_id roomId,t.community_id,t.community_id communityId
+        storeId,t.b_id,t.b_id bId,t.room_id,t.room_id roomId,t.community_id,t.community_id communityId,
+        t.start_user_id,t.start_user_id startUserId
         from business_complaint t
         where 1 =1
         <if test="operate !=null and operate != ''">
@@ -61,8 +63,10 @@
     <!-- 保存投诉建议信息至 instance表中 add by wuxw 2018-07-03 -->
     <insert id="saveComplaintInfoInstance" parameterType="Map">
         insert into complaint(
-        complaint_id,type_cd,context,complaint_name,tel,status_cd,state,store_id,b_id,room_id,community_id
-        ) select t.complaint_id,t.type_cd,t.context,t.complaint_name,t.tel,'0',t.state,t.store_id,t.b_id,t.room_id,t.community_id
+        complaint_id,type_cd,context,complaint_name,tel,status_cd,state,store_id,b_id,room_id,community_id,
+        start_user_id
+        ) select t.complaint_id,t.type_cd,t.context,t.complaint_name,t.tel,'0',t.state,t.store_id,t.b_id,t.room_id,
+        t.community_id,t.start_user_id
         from
         business_complaint t where 1=1
         and t.operate= 'ADD'
@@ -103,7 +107,8 @@
         typeCd,td2.name typeCdName,t.context,t.complaint_name,t.complaint_name
         complaintName,t.tel,t.status_cd,t.status_cd
         statusCd,t.state,td.name stateName,t.store_id,t.store_id storeId,t.b_id,t.b_id bId,t.room_id,t.room_id
-        roomId,t.create_time createTime,t.community_id,t.community_id communityId
+        roomId,t.create_time createTime,t.community_id,t.community_id communityId,
+        t.start_user_id,t.start_user_id startUserId
         from complaint t,t_dict td,t_dict td2
         where 1 =1
         and t.state = td.status_cd
@@ -151,6 +156,9 @@
         <if test="communityId !=null and communityId != ''">
             and t.community_id= #{communityId}
         </if>
+        <if test="startUserId !=null and startUserId != ''">
+            and t.start_user_id= #{startUserId}
+        </if>
 
         order by t.create_time desc
         <if test="page != -1 and page != null ">
@@ -250,6 +258,9 @@
         <if test="communityId !=null and communityId != ''">
             and t.community_id= #{communityId}
         </if>
+        <if test="startUserId !=null and startUserId != ''">
+            and t.start_user_id= #{startUserId}
+        </if>
 
 
     </select>

+ 11 - 2
service-api/src/main/java/com/java110/api/listener/complaint/AuditComplaintListener.java

@@ -5,10 +5,10 @@ import com.java110.api.bmo.complaint.IComplaintBMO;
 import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
-import com.java110.core.smo.store.IComplaintInnerServiceSMO;
+import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.core.smo.common.IComplaintUserInnerServiceSMO;
+import com.java110.core.smo.store.IComplaintInnerServiceSMO;
 import com.java110.dto.complaint.ComplaintDto;
-import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.utils.constant.ServiceCodeComplaintConstant;
 import com.java110.utils.util.Assert;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -16,6 +16,8 @@ import org.springframework.http.HttpMethod;
 import org.springframework.http.HttpStatus;
 import org.springframework.http.ResponseEntity;
 
+import java.util.List;
+
 
 /**
  * 查询小区侦听类
@@ -74,6 +76,13 @@ public class AuditComplaintListener extends AbstractServiceApiPlusListener {
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
 
         ComplaintDto complaintDto = new ComplaintDto();
+        complaintDto.setComplaintId(reqJson.getString("complaintId"));
+        complaintDto.setCommunityId(reqJson.getString("communityId"));
+
+        List<ComplaintDto> complaintDtos = complaintInnerServiceSMOImpl.queryComplaints(complaintDto);
+        Assert.listOnlyOne(complaintDtos, "未存在或存在多条投诉单");
+
+        complaintDto = complaintDtos.get(0);
         complaintDto.setTaskId(reqJson.getString("taskId"));
         complaintDto.setCommunityId(reqJson.getString("communityId"));
         complaintDto.setStoreId(reqJson.getString("storeId"));

+ 2 - 0
service-common/src/main/java/com/java110/common/smo/impl/ComplaintUserInnerServiceSMOImpl.java

@@ -260,6 +260,8 @@ public class ComplaintUserInnerServiceSMOImpl extends BaseServiceSMO implements
         Map<String, Object> variables = new HashMap<String, Object>();
         variables.put("auditCode", complaintDto.getAuditCode());
         variables.put("currentUserId", complaintDto.getCurrentUserId());
+        variables.put("flag", "1200".equals(complaintDto.getState()) ? "false" : "true");
+        variables.put("startUserId", complaintDto.getStartUserId());
         //taskService.setAssignee(complaintDto.getTaskId(),complaintDto.getCurrentUserId());
         //taskService.addCandidateUser(complaintDto.getTaskId(), complaintDto.getCurrentUserId());
         //taskService.claim(complaintDto.getTaskId(), complaintDto.getCurrentUserId());

+ 2 - 0
service-store/src/main/java/com/java110/store/listener/complaint/AbstractComplaintBusinessServiceDataFlowListener.java

@@ -47,6 +47,7 @@ public abstract class AbstractComplaintBusinessServiceDataFlowListener extends A
         businessComplaintInfo.put("storeId", businessComplaintInfo.get("store_id"));
         businessComplaintInfo.put("roomId", businessComplaintInfo.get("room_id"));
         businessComplaintInfo.put("communityId", businessComplaintInfo.get("community_id"));
+        businessComplaintInfo.put("startUserId", businessComplaintInfo.get("start_user_id"));
         businessComplaintInfo.remove("bId");
         businessComplaintInfo.put("statusCd", statusCd);
     }
@@ -81,6 +82,7 @@ public abstract class AbstractComplaintBusinessServiceDataFlowListener extends A
         currentComplaintInfo.put("storeId", currentComplaintInfo.get("store_id"));
         currentComplaintInfo.put("roomId", currentComplaintInfo.get("room_id"));
         currentComplaintInfo.put("communityId", currentComplaintInfo.get("community_id"));
+        currentComplaintInfo.put("startUserId", currentComplaintInfo.get("start_user_id"));
 
 
         currentComplaintInfo.put("operate", StatusConstant.OPERATE_DEL);