From 5425510f67bb39b72779d169f1b7e7bda67500f5 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期日, 25 六月 2023 19:46:59 +0800
Subject: [PATCH] 优化代码

---
 service-store/src/main/java/com/java110/store/cmd/scheduleClasses/DeleteScheduleClassesCmd.java |   60 ++++++++++++++++++++++++++++++++++++++++++++++++++++++------
 1 files changed, 54 insertions(+), 6 deletions(-)

diff --git a/service-store/src/main/java/com/java110/store/cmd/scheduleClasses/DeleteScheduleClassesCmd.java b/service-store/src/main/java/com/java110/store/cmd/scheduleClasses/DeleteScheduleClassesCmd.java
index dfc5ea8..066a0d8 100644
--- a/service-store/src/main/java/com/java110/store/cmd/scheduleClasses/DeleteScheduleClassesCmd.java
+++ b/service-store/src/main/java/com/java110/store/cmd/scheduleClasses/DeleteScheduleClassesCmd.java
@@ -21,9 +21,17 @@
 import com.java110.core.context.ICmdDataFlowContext;
 import com.java110.core.event.cmd.Cmd;
 import com.java110.core.event.cmd.CmdEvent;
-import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.classes.ScheduleClassesDto;
+import com.java110.dto.classes.ScheduleClassesDayDto;
+import com.java110.dto.classes.ScheduleClassesStaffDto;
+import com.java110.dto.classes.ScheduleClassesTimeDto;
+import com.java110.intf.store.IScheduleClassesDayV1InnerServiceSMO;
+import com.java110.intf.store.IScheduleClassesStaffV1InnerServiceSMO;
+import com.java110.intf.store.IScheduleClassesTimeV1InnerServiceSMO;
 import com.java110.intf.store.IScheduleClassesV1InnerServiceSMO;
-import com.java110.po.scheduleClasses.ScheduleClassesPo;
+import com.java110.po.classes.ScheduleClassesPo;
+import com.java110.po.classes.ScheduleClassesDayPo;
+import com.java110.po.classes.ScheduleClassesTimePo;
 import com.java110.utils.exception.CmdException;
 import com.java110.utils.util.Assert;
 import com.java110.utils.util.BeanConvertUtil;
@@ -31,6 +39,8 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
+
+import java.util.List;
 
 /**
  * 绫昏〃杩帮細鍒犻櫎
@@ -49,23 +59,61 @@
     @Autowired
     private IScheduleClassesV1InnerServiceSMO scheduleClassesV1InnerServiceSMOImpl;
 
+    @Autowired
+    private IScheduleClassesDayV1InnerServiceSMO scheduleClassesDayV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IScheduleClassesTimeV1InnerServiceSMO scheduleClassesTimeV1InnerServiceSMOImpl;
+
+    @Autowired
+    private IScheduleClassesStaffV1InnerServiceSMO scheduleClassesStaffV1InnerServiceSMOImpl;
+
     @Override
     public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
         Assert.hasKeyAndValue(reqJson, "scheduleId", "scheduleId涓嶈兘涓虹┖");
-
+        ScheduleClassesStaffDto scheduleClassesStaffDto = new ScheduleClassesStaffDto();
+        scheduleClassesStaffDto.setScheduleId(reqJson.getString("scheduleId"));
+        int count = scheduleClassesStaffV1InnerServiceSMOImpl.queryScheduleClassesStaffsCount(scheduleClassesStaffDto);
+        if (count > 0) {
+            throw new CmdException("璇峰厛瑙i櫎浜哄憳鍐嶅垹闄�");
+        }
     }
 
     @Override
     @Java110Transactional
     public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
-
+        ScheduleClassesDto scheduleClassesDto = new ScheduleClassesDto();
+        scheduleClassesDto.setScheduleId(reqJson.getString("scheduleId"));
+        List<ScheduleClassesDto> scheduleClassesDtos = scheduleClassesV1InnerServiceSMOImpl.queryScheduleClassess(scheduleClassesDto);
+        Assert.listOnlyOne(scheduleClassesDtos, "鏌ヨ鎺掔彮淇℃伅閿欒锛�");
         ScheduleClassesPo scheduleClassesPo = BeanConvertUtil.covertBean(reqJson, ScheduleClassesPo.class);
         int flag = scheduleClassesV1InnerServiceSMOImpl.deleteScheduleClasses(scheduleClassesPo);
-
         if (flag < 1) {
             throw new CmdException("鍒犻櫎鏁版嵁澶辫触");
         }
-
+        ScheduleClassesDayDto scheduleClassesDayDto = new ScheduleClassesDayDto();
+        scheduleClassesDayDto.setScheduleId(scheduleClassesDtos.get(0).getScheduleId());
+        List<ScheduleClassesDayDto> scheduleClassesDayDtos = scheduleClassesDayV1InnerServiceSMOImpl.queryScheduleClassesDays(scheduleClassesDayDto);
+        if (scheduleClassesDayDtos != null && scheduleClassesDayDtos.size() == 1) {
+            ScheduleClassesDayPo scheduleClassesDayPo = new ScheduleClassesDayPo();
+            scheduleClassesDayPo.setScheduleId(scheduleClassesPo.getScheduleId());
+            flag = scheduleClassesDayV1InnerServiceSMOImpl.deleteScheduleClassesDay(scheduleClassesDayPo);
+            if (flag < 1) {
+                throw new CmdException("鏇存柊鏁版嵁澶辫触");
+            }
+        }
+        ScheduleClassesTimeDto scheduleClassesTimeDto = new ScheduleClassesTimeDto();
+        scheduleClassesTimeDto.setScheduleId(scheduleClassesDtos.get(0).getScheduleId());
+        scheduleClassesTimeDto.setDayId(scheduleClassesDayDtos.get(0).getDayId());
+        List<ScheduleClassesTimeDto> scheduleClassesTimeDtos = scheduleClassesTimeV1InnerServiceSMOImpl.queryScheduleClassesTimes(scheduleClassesTimeDto);
+        if (scheduleClassesTimeDtos != null && scheduleClassesTimeDtos.size() == 1) {
+            ScheduleClassesTimePo scheduleClassesTimePo = new ScheduleClassesTimePo();
+            scheduleClassesTimePo.setScheduleId(scheduleClassesPo.getScheduleId());
+            flag = scheduleClassesTimeV1InnerServiceSMOImpl.deleteScheduleClassesTime(scheduleClassesTimePo);
+            if (flag < 1) {
+                throw new CmdException("鏇存柊鏁版嵁澶辫触");
+            }
+        }
         cmdDataFlowContext.setResponseEntity(ResultVo.success());
     }
 }

--
Gitblit v1.8.0