From 3b0ddfa0b1c3490fbbf421a84e0431a60fb58387 Mon Sep 17 00:00:00 2001
From: java110 <928255095@qq.com>
Date: 星期四, 01 四月 2021 12:25:35 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/xinghong-dev'

---
 service-api/src/main/java/com/java110/api/listener/ownerRepair/AppraiseRepairListener.java |   57 +++++++++++++++++++++++++++++++++------------------------
 1 files changed, 33 insertions(+), 24 deletions(-)

diff --git a/service-api/src/main/java/com/java110/api/listener/ownerRepair/AppraiseRepairListener.java b/service-api/src/main/java/com/java110/api/listener/ownerRepair/AppraiseRepairListener.java
index b07f09a..23305bd 100644
--- a/service-api/src/main/java/com/java110/api/listener/ownerRepair/AppraiseRepairListener.java
+++ b/service-api/src/main/java/com/java110/api/listener/ownerRepair/AppraiseRepairListener.java
@@ -6,9 +6,9 @@
 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.repair.RepairDto;
 import com.java110.dto.repair.RepairUserDto;
 import com.java110.po.owner.RepairUserPo;
@@ -16,6 +16,7 @@
 import com.java110.utils.constant.ServiceCodeRepairDispatchStepConstant;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.DateUtil;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
@@ -23,6 +24,8 @@
 import org.springframework.http.HttpMethod;
 import org.springframework.http.ResponseEntity;
 
+import java.text.SimpleDateFormat;
+import java.util.Date;
 import java.util.List;
 
 /**
@@ -31,7 +34,6 @@
  */
 @Java110Listener("appraiseRepairListener")
 public class AppraiseRepairListener extends AbstractServiceApiPlusListener {
-
 
     private static Logger logger = LoggerFactory.getLogger(AppraiseRepairListener.class);
 
@@ -44,48 +46,55 @@
     @Autowired
     private IRepairInnerServiceSMO repairInnerServiceSMOImpl;
 
-    @Autowired
-    private IFeeConfigInnerServiceSMO feeConfigInnerServiceSMOImpl;
-
     @Override
     protected void validate(ServiceDataFlowEvent event, JSONObject reqJson) {
-        //Assert.hasKeyAndValue(reqJson, "xxx", "xxx");
-
         Assert.hasKeyAndValue(reqJson, "repairId", "鏈寘鍚姤淇崟淇℃伅");
         Assert.hasKeyAndValue(reqJson, "context", "鏈寘鍚淳鍗曞唴瀹�");
         Assert.hasKeyAndValue(reqJson, "communityId", "鏈寘鍚皬鍖轰俊鎭�");
-
-
     }
 
     @Override
     protected void doSoService(ServiceDataFlowEvent event, DataFlowContext context, JSONObject reqJson) {
-        String userId = reqJson.getString("userId");
-        String userName = reqJson.getString("userName");
-
+        //鑾峰彇鎶ヤ慨娓犻亾
+        String repairChannel = reqJson.getString("repairChannel");
+        //鏄惁鏄叕鍏卞尯鍩�
+        String publicArea = reqJson.getString("publicArea");
+        //鏌ヨ缁翠慨绫诲瀷
+        String maintenanceType = reqJson.getString("maintenanceType");
         RepairUserDto repairUserDto = new RepairUserDto();
         repairUserDto.setRepairId(reqJson.getString("repairId"));
         repairUserDto.setCommunityId(reqJson.getString("communityId"));
-        repairUserDto.setState(RepairUserDto.STATE_DOING);
-        repairUserDto.setStaffId(userId);
+        if (repairChannel.equals("Z")) { //濡傛灉鏄笟涓荤鎶ヤ慨锛屽氨鏌ヨ鏄惁鏈夊凡璇勪环鐘舵�佺殑
+            repairUserDto.setState(RepairUserDto.STATE_FINISH);
+        } else if (!StringUtil.isEmpty(maintenanceType) && maintenanceType.equals("1001")) { //濡傛灉涓嶆槸涓氫富绔姤淇紝涓旀槸鏈夊伩鐨勶紝灏辨煡璇㈠凡鏀粯鐘舵�佺殑
+            repairUserDto.setState(RepairUserDto.STATE_FINISH_PAY_FEE);
+        } else { //鍏朵粬鐨勬煡璇㈢粨鍗曠姸鎬佺殑
+            repairUserDto.setState(RepairUserDto.STATE_CLOSE);
+        }
         List<RepairUserDto> repairUserDtos = repairUserInnerServiceSMOImpl.queryRepairUsers(repairUserDto);
-        Assert.listOnlyOne(repairUserDtos, "褰撳墠鐢ㄦ埛娌℃湁闇�瑕佸鐞嗚鍗�");
+        Assert.listOnlyOne(repairUserDtos, "褰撳墠鐢ㄦ埛娌℃湁闇�瑕佸鐞嗙殑璁㈠崟");
         // 1.0 鍏抽棴鑷繁璁㈠崟
         RepairUserPo repairUserPo = new RepairUserPo();
-        repairUserPo.setRuId(repairUserDtos.get(0).getRuId());
+        repairUserPo.setRuId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_ruId));
         repairUserPo.setEndTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
-        repairUserPo.setState(RepairUserDto.STATE_CLOSE);
+        repairUserPo.setState(RepairUserDto.STATE_FINISH_VISIT);
         repairUserPo.setContext(reqJson.getString("context"));
         repairUserPo.setCommunityId(reqJson.getString("communityId"));
-        super.update(context, repairUserPo, BusinessTypeConstant.BUSINESS_TYPE_UPDATE_REPAIR_USER);
-
-        ownerRepairBMOImpl.modifyBusinessRepairDispatch(reqJson, context, RepairDto.STATE_RETURN_VISIT);
-
-
+        repairUserPo.setCreateTime(DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_A));
+        repairUserPo.setRepairId(reqJson.getString("repairId"));
+        repairUserPo.setStaffId(reqJson.getString("userId"));
+        repairUserPo.setStaffName(reqJson.getString("userName"));
+        SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+        Date endTime = repairUserDtos.get(0).getEndTime();
+        repairUserPo.setStartTime(format.format(endTime));
+        repairUserPo.setPreStaffId(repairUserDtos.get(0).getStaffId());
+        repairUserPo.setPreStaffName(repairUserDtos.get(0).getStaffName());
+        repairUserPo.setPreRuId(repairUserDtos.get(0).getRuId());
+        repairUserPo.setRepairEvent("auditUser");
+        super.insert(context, repairUserPo, BusinessTypeConstant.BUSINESS_TYPE_SAVE_REPAIR_USER);
+        ownerRepairBMOImpl.modifyBusinessRepairDispatch(reqJson, context, RepairDto.STATE_COMPLATE);
         ResponseEntity<String> responseEntity = ResultVo.createResponseEntity(ResultVo.CODE_OK, ResultVo.MSG_OK);
-
         context.setResponseEntity(responseEntity);
-
     }
 
     @Override

--
Gitblit v1.8.0