From 9fa63e316511ca3b116fe86776c04b3b2ac13f97 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期一, 07 十一月 2022 02:27:52 +0800
Subject: [PATCH] 优化 保养计划

---
 service-community/src/main/java/com/java110/community/cmd/communitySpace/DeleteCommunitySpacePersonCmd.java |   76 +++++++++++++++++++++++++++++++++++--
 1 files changed, 71 insertions(+), 5 deletions(-)

diff --git a/service-community/src/main/java/com/java110/community/cmd/communitySpace/DeleteCommunitySpacePersonCmd.java b/service-community/src/main/java/com/java110/community/cmd/communitySpace/DeleteCommunitySpacePersonCmd.java
index 80eb7f2..43b8365 100644
--- a/service-community/src/main/java/com/java110/community/cmd/communitySpace/DeleteCommunitySpacePersonCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/communitySpace/DeleteCommunitySpacePersonCmd.java
@@ -21,15 +21,24 @@
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.communitySpacePerson.CommunitySpacePersonDto;
+import com.java110.dto.communitySpacePersonTime.CommunitySpacePersonTimeDto;
+import com.java110.dto.onlinePay.OnlinePayDto;
+import com.java110.intf.acct.IOnlinePayV1InnerServiceSMO;
+import com.java110.intf.community.ICommunitySpacePersonTimeV1InnerServiceSMO;
 import com.java110.intf.community.ICommunitySpacePersonV1InnerServiceSMO;
 import com.java110.po.communitySpacePerson.CommunitySpacePersonPo;
+import com.java110.po.communitySpacePersonTime.CommunitySpacePersonTimePo;
+import com.java110.po.onlinePay.OnlinePayPo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
-import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.beans.factory.annotation.Autowired;
+
+import java.util.List;
 
 /**
  * 绫昏〃杩帮細鍒犻櫎
@@ -48,6 +57,12 @@
     @Autowired
     private ICommunitySpacePersonV1InnerServiceSMO communitySpacePersonV1InnerServiceSMOImpl;
 
+    @Autowired
+    private IOnlinePayV1InnerServiceSMO onlinePayV1InnerServiceSMOImpl;
+
+    @Autowired
+    private ICommunitySpacePersonTimeV1InnerServiceSMO communitySpacePersonTimeV1InnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "cspId", "cspId涓嶈兘涓虹┖");
@@ -59,13 +74,64 @@
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
 
-        CommunitySpacePersonPo communitySpacePersonPo = BeanConvertUtil.covertBean(reqJson, CommunitySpacePersonPo.class);
-        int flag = communitySpacePersonV1InnerServiceSMOImpl.deleteCommunitySpacePerson(communitySpacePersonPo);
+        // 鏄惁绾夸笂鏀粯
+        CommunitySpacePersonDto communitySpacePersonDto = new CommunitySpacePersonDto();
+        communitySpacePersonDto.setCspId(reqJson.getString("cspId"));
+        communitySpacePersonDto.setState(CommunitySpacePersonDto.STATE_S);
+        List<CommunitySpacePersonDto> communitySpacePersonDtos = communitySpacePersonV1InnerServiceSMOImpl.queryCommunitySpacePersons(communitySpacePersonDto);
 
-        if (flag < 1) {
-            throw new CmdException("鍒犻櫎鏁版嵁澶辫触");
+        Assert.listOnlyOne(communitySpacePersonDtos, "棰勭害璁㈠崟涓嶅瓨鍦�");
+
+        returnOnlinePayMoney(communitySpacePersonDtos);
+
+        if(!StringUtil.isEmpty(communitySpacePersonDtos.get(0).getOrderId()) &&
+                !"-1".equals(communitySpacePersonDtos.get(0).getOrderId())){
+            communitySpacePersonDto = new CommunitySpacePersonDto();
+            communitySpacePersonDto.setOrderId(communitySpacePersonDtos.get(0).getOrderId());
+            communitySpacePersonDto.setState(CommunitySpacePersonDto.STATE_S);
+            communitySpacePersonDtos = communitySpacePersonV1InnerServiceSMOImpl.queryCommunitySpacePersons(communitySpacePersonDto);
+
         }
 
+        for (CommunitySpacePersonDto communitySpacePersonDto1 : communitySpacePersonDtos) {
+            CommunitySpacePersonPo communitySpacePersonPo = new CommunitySpacePersonPo();
+            communitySpacePersonPo.setCspId(communitySpacePersonDto1.getCspId());
+            communitySpacePersonPo.setState(CommunitySpacePersonDto.STATE_CL);
+            int flag = communitySpacePersonV1InnerServiceSMOImpl.updateCommunitySpacePerson(communitySpacePersonPo);
+
+            if (flag < 1) {
+                throw new CmdException("鍒犻櫎鏁版嵁澶辫触");
+            }
+
+
+            CommunitySpacePersonTimePo communitySpacePersonTimePo = new CommunitySpacePersonTimePo();
+            communitySpacePersonTimePo.setCspId(communitySpacePersonDto1.getCspId());
+            communitySpacePersonTimePo.setState(CommunitySpacePersonTimeDto.STATE_CL);
+            communitySpacePersonTimeV1InnerServiceSMOImpl.updateCommunitySpacePersonTime(communitySpacePersonTimePo);
+        }
+
+
         cmdDataFlowContext.setResponseEntity(ResultVo.success());
     }
+
+    /**
+     * 鍙戣捣閫�娆�
+     *
+     * @param communitySpacePersonDtos
+     */
+    private void returnOnlinePayMoney(List<CommunitySpacePersonDto> communitySpacePersonDtos) {
+        OnlinePayDto onlinePayDto = new OnlinePayDto();
+        onlinePayDto.setOrderId(communitySpacePersonDtos.get(0).getOrderId());
+        List<OnlinePayDto> onlinePayDtos = onlinePayV1InnerServiceSMOImpl.queryOnlinePays(onlinePayDto);
+        if (onlinePayDtos == null || onlinePayDtos.size() < 1) {
+            return;
+        }
+
+        OnlinePayPo onlinePayPo = new OnlinePayPo();
+        onlinePayPo.setOrderId(onlinePayDtos.get(0).getOrderId());
+        onlinePayPo.setPayId(onlinePayDtos.get(0).getPayId());
+        onlinePayPo.setState(OnlinePayDto.STATE_WT);
+        onlinePayPo.setRefundFee(onlinePayDtos.get(0).getTotalFee());
+        onlinePayV1InnerServiceSMOImpl.updateOnlinePay(onlinePayPo);
+    }
 }

--
Gitblit v1.8.0