Bladeren bron

优化报修相关代码

java110 5 jaren geleden
bovenliggende
commit
867a555341

+ 9 - 0
java110-bean/src/main/java/com/java110/dto/repair/RepairUserDto.java

@@ -45,6 +45,7 @@ public class RepairUserDto extends PageDto implements Serializable {
     private String staffName;
     private String preStaffId;
     private String preStaffName;
+    private String preRuId;
     private Date startTime;
     private Date endTime;
     private String repairEvent;
@@ -215,4 +216,12 @@ public class RepairUserDto extends PageDto implements Serializable {
     public void setStates(String[] states) {
         this.states = states;
     }
+
+    public String getPreRuId() {
+        return preRuId;
+    }
+
+    public void setPreRuId(String preRuId) {
+        this.preRuId = preRuId;
+    }
 }

+ 9 - 0
java110-bean/src/main/java/com/java110/po/owner/RepairUserPo.java

@@ -22,6 +22,7 @@ public class RepairUserPo implements Serializable {
     private String staffName;
     private String preStaffId;
     private String preStaffName;
+    private String preRuId;
     private String startTime;
     private String endTime;
     private String repairEvent;
@@ -129,4 +130,12 @@ public class RepairUserPo implements Serializable {
     public void setRepairEvent(String repairEvent) {
         this.repairEvent = repairEvent;
     }
+
+    public String getPreRuId() {
+        return preRuId;
+    }
+
+    public void setPreRuId(String preRuId) {
+        this.preRuId = preRuId;
+    }
 }

+ 12 - 6
java110-db/src/main/resources/mapper/community/RepairUserServiceDaoImplMapper.xml

@@ -8,10 +8,10 @@
     <insert id="saveBusinessRepairUserInfo" parameterType="Map">
         insert into business_repair_user(
         operate,context,repair_id,ru_id,state,community_id,b_id,staff_id,staff_name,pre_staff_id,
-        pre_staff_name,repair_event,end_time,start_time
+        pre_staff_name,repair_event,end_time,start_time,pre_ru_id
         ) values (
         #{operate},#{context},#{repairId},#{ruId},#{state},#{communityId},#{bId},#{staffId},
-        #{staffName},#{preStaffId},#{preStaffName},#{repairEvent},#{endTime},#{startTime}
+        #{staffName},#{preStaffId},#{preStaffName},#{repairEvent},#{endTime},#{startTime},#{preRuId}
         )
     </insert>
 
@@ -23,7 +23,7 @@
         t.staff_id,t.staff_id staffId,t.staff_name,t.staff_name staffName,
         t.pre_staff_id,t.pre_staff_id preStaffId,t.pre_staff_name,t.pre_staff_name preStaffName,
         t.start_time,t.start_time startTime,t.end_time,t.end_time endTime,t.repair_event,
-        t.repair_event repairEvent
+        t.repair_event repairEvent, t.pre_ru_id,t.pre_ru_id preRuId
         from business_repair_user t
         where 1 =1
         <if test="operate !=null and operate != ''">
@@ -55,9 +55,9 @@
     <insert id="saveRepairUserInfoInstance" parameterType="Map">
         insert into r_repair_user(
         context,repair_id,status_cd,ru_id,state,community_id,b_id,staff_id,staff_name,pre_staff_id,
-        pre_staff_name,repair_event,start_time,end_time
+        pre_staff_name,repair_event,start_time,end_time,pre_ru_id
         ) select t.context,t.repair_id,'0',t.ru_id,t.state,t.community_id,t.b_id,t.staff_id,t.staff_name,
-        t.pre_staff_id,t.pre_staff_name,t.repair_event,t.start_time,t.end_time
+        t.pre_staff_id,t.pre_staff_name,t.repair_event,t.start_time,t.end_time,t.pre_ru_id
         from business_repair_user t
         where 1=1
         and t.operate= 'ADD'
@@ -93,7 +93,7 @@
         t.b_id bId,t.staff_id,t.staff_id staffId,t.staff_name,t.staff_name staffName,
         t.pre_staff_id,t.pre_staff_id preStaffId,t.pre_staff_name,t.pre_staff_name preStaffName,
         t.start_time,t.start_time startTime,t.end_time,t.end_time endTime,d.name stateName,
-        t.repair_event,t.repair_event repairEvent
+        t.repair_event,t.repair_event repairEvent, t.pre_ru_id,t.pre_ru_id preRuId
         from r_repair_user t
         left join t_dict d on t.state = d.status_cd and d.table_name = 'r_repair_user' and d.table_columns = 'state'
         where 1 =1
@@ -140,6 +140,9 @@
         <if test="preStaffId !=null and preStaffId != ''">
             and t.pre_staff_id= #{preStaffId}
         </if>
+        <if test="preRuId !=null and preRuId != ''">
+            and t.pre_ru_id= #{preRuId}
+        </if>
         order by t.start_time
         <if test="page != -1 and page != null ">
             limit #{page}, #{row}
@@ -236,6 +239,9 @@
         <if test="preStaffId !=null and preStaffId != ''">
             and t.pre_staff_id= #{preStaffId}
         </if>
+        <if test="preRuId !=null and preRuId != ''">
+            and t.pre_ru_id= #{preRuId}
+        </if>
 
 
     </select>

+ 5 - 4
service-api/src/main/java/com/java110/api/listener/ownerRepair/GrabbingRepairListener.java

@@ -6,13 +6,13 @@ import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.intf.community.IRepairInnerServiceSMO;
-import com.java110.intf.community.IRepairUserInnerServiceSMO;
-import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
-import com.java110.intf.community.IRepairTypeUserInnerServiceSMO;
 import com.java110.dto.repair.RepairDto;
 import com.java110.dto.repair.RepairTypeUserDto;
 import com.java110.dto.repair.RepairUserDto;
+import com.java110.intf.community.IRepairInnerServiceSMO;
+import com.java110.intf.community.IRepairTypeUserInnerServiceSMO;
+import com.java110.intf.community.IRepairUserInnerServiceSMO;
+import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.po.owner.RepairUserPo;
 import com.java110.utils.constant.BusinessTypeConstant;
 import com.java110.utils.constant.ServiceCodeRepairDispatchStepConstant;
@@ -101,6 +101,7 @@ public class GrabbingRepairListener extends AbstractServiceApiPlusListener {
         repairUserPo.setStaffName(userName);
         repairUserPo.setPreStaffId(repairUserDtos.get(0).getStaffId());
         repairUserPo.setPreStaffName(repairUserDtos.get(0).getStaffName());
+        repairUserPo.setPreRuId(repairUserDtos.get(0).getRuId());
         repairUserPo.setRepairEvent(RepairUserDto.REPAIR_EVENT_AUDIT_USER);
         repairUserPo.setContext("");
         repairUserPo.setCommunityId(reqJson.getString("communityId"));

+ 16 - 8
service-api/src/main/java/com/java110/api/listener/ownerRepair/RepairDispatchListener.java

@@ -6,14 +6,15 @@ import com.java110.api.listener.AbstractServiceApiPlusListener;
 import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
-import com.java110.intf.community.IRepairInnerServiceSMO;
-import com.java110.intf.community.IRepairUserInnerServiceSMO;
-import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
-import com.java110.intf.fee.IFeeInnerServiceSMO;
+import com.java110.core.factory.GenerateCodeFactory;
 import com.java110.dto.fee.FeeAttrDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.repair.RepairDto;
 import com.java110.dto.repair.RepairUserDto;
+import com.java110.intf.community.IRepairInnerServiceSMO;
+import com.java110.intf.community.IRepairUserInnerServiceSMO;
+import com.java110.intf.fee.IFeeAttrInnerServiceSMO;
+import com.java110.intf.fee.IFeeInnerServiceSMO;
 import com.java110.po.fee.FeeAttrPo;
 import com.java110.po.fee.PayFeePo;
 import com.java110.po.owner.RepairUserPo;
@@ -158,7 +159,7 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
         repairUserDto.setStaffId(userId);
         List<RepairUserDto> repairUserDtos = repairUserInnerServiceSMOImpl.queryRepairUsers(repairUserDto);
         Assert.listOnlyOne(repairUserDtos, "当前用户没有需要处理订单");
-        //插入派单者的信息
+        //把自己改成退单
         RepairUserPo repairUserPo = new RepairUserPo();
         repairUserPo.setRuId(repairUserDtos.get(0).getRuId());
         repairUserPo.setEndTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
@@ -178,6 +179,7 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
         repairUserDto.setRepairId(reqJson.getString("repairId"));
         repairUserDto.setStaffId(reqJson.getString("staffId"));
         repairUserDto.setCommunityId(reqJson.getString("communityId"));
+        repairUserDto.setRuId(repairUserDtos.get(0).getPreRuId());
         repairUserDto.setStates(new String[]{RepairUserDto.STATE_TRANSFER, RepairUserDto.STATE_CLOSE});
         repairUserDtos = repairUserInnerServiceSMOImpl.queryRepairUsers(repairUserDto);
 
@@ -188,12 +190,13 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
                 ownerRepairBMOImpl.modifyBusinessRepairDispatch(reqJson, context, RepairDto.STATE_WAIT);
                 return;
             } else {
-                throw new IllegalArgumentException("未找到上级处理人");
+                throw new IllegalArgumentException("非常抱歉当前不能退单");
             }
         }
 
         repairUserPo.setPreStaffId(repairUserDtos.get(0).getPreStaffId());
         repairUserPo.setPreStaffName(repairUserDtos.get(0).getPreStaffName());
+        repairUserPo.setPreRuId(repairUserDtos.get(0).getPreRuId());
         repairUserPo.setRepairEvent(RepairUserDto.REPAIR_EVENT_AUDIT_USER);
         repairUserPo.setContext("");
         repairUserPo.setCommunityId(reqJson.getString("communityId"));
@@ -236,6 +239,7 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
         repairUserPo.setPreStaffId(userId);
         repairUserPo.setStartTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         repairUserPo.setPreStaffName(userName);
+        repairUserPo.setPreRuId(repairUserDtos.get(0).getRuId());
         repairUserPo.setRepairEvent(RepairUserDto.REPAIR_EVENT_AUDIT_USER);
         repairUserPo.setContext("");
         repairUserPo.setCommunityId(reqJson.getString("communityId"));
@@ -254,9 +258,10 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
         String userId = reqJson.getString("userId");
         String userName = reqJson.getString("userName");
 
+        String ruId = GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_ruId);
         // 自己的单子状态修改为转单
         RepairUserPo repairUserPo = new RepairUserPo();
-        repairUserPo.setRuId("-1");
+        repairUserPo.setRuId(ruId);
         repairUserPo.setStartTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         repairUserPo.setEndTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         repairUserPo.setState(RepairUserDto.STATE_TRANSFER);
@@ -270,7 +275,7 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
         super.insert(context, repairUserPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_REPAIR_USER);
         //处理人信息
         repairUserPo = new RepairUserPo();
-        repairUserPo.setRuId("-2");
+        repairUserPo.setRuId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_ruId));
         Calendar calendar = Calendar.getInstance();
         calendar.setTime(new Date());
         calendar.add(Calendar.SECOND, 30);
@@ -281,6 +286,7 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
         repairUserPo.setStaffName(reqJson.getString("staffName"));
         repairUserPo.setPreStaffId(userId);
         repairUserPo.setPreStaffName(userName);
+        repairUserPo.setPreRuId(ruId);
         repairUserPo.setRepairEvent(RepairUserDto.REPAIR_EVENT_AUDIT_USER);
         repairUserPo.setContext("");
         repairUserPo.setCommunityId(reqJson.getString("communityId"));
@@ -304,10 +310,12 @@ public class RepairDispatchListener extends AbstractServiceApiPlusListener {
         if (repairUserDtos == null || repairUserDtos.size() < 1) {
             repairUserPo.setPreStaffId("-1");
             repairUserPo.setPreStaffName("-1");
+            repairUserPo.setPreRuId("-1");
         } else {
             int pos = repairUserDtos.size() - 1;
             repairUserPo.setPreStaffId(repairUserDtos.get(pos).getStaffId());
             repairUserPo.setPreStaffName(repairUserDtos.get(pos).getStaffName());
+            repairUserPo.setPreRuId(repairUserDtos.get(pos).getRuId());
         }
     }
 

+ 4 - 3
service-api/src/main/java/com/java110/api/listener/ownerRepair/RepairFinishListener.java

@@ -7,14 +7,14 @@ import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.core.factory.GenerateCodeFactory;
-import com.java110.intf.community.IRepairInnerServiceSMO;
-import com.java110.intf.community.IRepairUserInnerServiceSMO;
-import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.dto.fee.FeeAttrDto;
 import com.java110.dto.fee.FeeConfigDto;
 import com.java110.dto.fee.FeeDto;
 import com.java110.dto.repair.RepairDto;
 import com.java110.dto.repair.RepairUserDto;
+import com.java110.intf.community.IRepairInnerServiceSMO;
+import com.java110.intf.community.IRepairUserInnerServiceSMO;
+import com.java110.intf.fee.IFeeConfigInnerServiceSMO;
 import com.java110.po.fee.FeeAttrPo;
 import com.java110.po.fee.PayFeePo;
 import com.java110.po.owner.RepairUserPo;
@@ -103,6 +103,7 @@ public class RepairFinishListener extends AbstractServiceApiPlusListener {
         repairUserPo.setStaffName(repairUserDtos.get(0).getStaffName());
         repairUserPo.setPreStaffId(userId);
         repairUserPo.setPreStaffName(userName);
+        repairUserPo.setPreRuId(repairUserDtos.get(0).getRuId());
         repairUserPo.setRepairEvent(RepairUserDto.REPAIR_EVENT_PAY_USER);
         repairUserPo.setContext("");
         repairUserPo.setCommunityId(reqJson.getString("communityId"));

+ 2 - 1
service-api/src/main/java/com/java110/api/listener/ownerRepair/SaveOwnerRepairListener.java

@@ -8,11 +8,11 @@ import com.java110.core.annotation.Java110Listener;
 import com.java110.core.context.DataFlowContext;
 import com.java110.core.event.service.api.ServiceDataFlowEvent;
 import com.java110.core.factory.GenerateCodeFactory;
-import com.java110.intf.common.IFileInnerServiceSMO;
 import com.java110.dto.file.FileDto;
 import com.java110.dto.file.FileRelDto;
 import com.java110.dto.repair.RepairDto;
 import com.java110.dto.repair.RepairUserDto;
+import com.java110.intf.common.IFileInnerServiceSMO;
 import com.java110.po.file.FileRelPo;
 import com.java110.po.owner.RepairPoolPo;
 import com.java110.po.owner.RepairUserPo;
@@ -70,6 +70,7 @@ public class SaveOwnerRepairListener extends AbstractServiceApiPlusListener {
         repairUserPo.setContext("订单提交");
         repairUserPo.setPreStaffId("-1");
         repairUserPo.setPreStaffName("-1");
+        repairUserPo.setPreRuId("-1");
         repairUserPo.setStartTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
         repairUserPo.setRepairEvent(RepairUserDto.REPAIR_EVENT_START_USER);
         repairUserPo.setStaffId(reqJson.getString("userId"));

+ 2 - 0
service-community/src/main/java/com/java110/community/listener/repair/AbstractRepairUserBusinessServiceDataFlowListener.java

@@ -47,6 +47,7 @@ public abstract class AbstractRepairUserBusinessServiceDataFlowListener extends
         businessRepairUserInfo.put("staffName", businessRepairUserInfo.get("staff_name"));
         businessRepairUserInfo.put("preStaffId", businessRepairUserInfo.get("pre_staff_id"));
         businessRepairUserInfo.put("preStaffName", businessRepairUserInfo.get("pre_staff_name"));
+        businessRepairUserInfo.put("preRuId", businessRepairUserInfo.get("pre_ru_id"));
         businessRepairUserInfo.put("startTime", businessRepairUserInfo.get("start_time"));
         businessRepairUserInfo.put("endTime", businessRepairUserInfo.get("end_time"));
         businessRepairUserInfo.put("repairEvent", businessRepairUserInfo.get("repair_event"));
@@ -88,6 +89,7 @@ public abstract class AbstractRepairUserBusinessServiceDataFlowListener extends
         currentRepairUserInfo.put("startTime", currentRepairUserInfo.get("start_time"));
         currentRepairUserInfo.put("endTime", currentRepairUserInfo.get("end_time"));
         currentRepairUserInfo.put("repairEvent", currentRepairUserInfo.get("repair_event"));
+        currentRepairUserInfo.put("preRuId", currentRepairUserInfo.get("pre_ru_id"));
 
 
         currentRepairUserInfo.put("operate", StatusConstant.OPERATE_DEL);