From 0fea532b07be89978343cb4aede3693af99f5656 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期二, 25 七月 2023 23:04:41 +0800
Subject: [PATCH] Merge branch 'master' of http://git.homecommunity.cn/supervip/MicroCommunity
---
service-user/src/main/java/com/java110/user/cmd/org/DeleteOrgCmd.java | 58 +++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 51 insertions(+), 7 deletions(-)
diff --git a/service-user/src/main/java/com/java110/user/cmd/org/DeleteOrgCmd.java b/service-user/src/main/java/com/java110/user/cmd/org/DeleteOrgCmd.java
index 8b73e71..2388885 100644
--- a/service-user/src/main/java/com/java110/user/cmd/org/DeleteOrgCmd.java
+++ b/service-user/src/main/java/com/java110/user/cmd/org/DeleteOrgCmd.java
@@ -19,18 +19,25 @@
import com.java110.core.annotation.Java110Cmd;
import com.java110.core.annotation.Java110Transactional;
import com.java110.core.context.ICmdDataFlowContext;
-import com.java110.core.event.cmd.AbstractServiceCmdListener;
+import com.java110.core.event.cmd.Cmd;
import com.java110.core.event.cmd.CmdEvent;
-import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.org.OrgDto;
+import com.java110.dto.org.OrgStaffRelDto;
+import com.java110.dto.user.UserDto;
+import com.java110.intf.store.IOrgStaffRelV1InnerServiceSMO;
import com.java110.intf.user.IOrgV1InnerServiceSMO;
+import com.java110.intf.user.IUserV1InnerServiceSMO;
import com.java110.po.org.OrgPo;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
import com.java110.utils.util.BeanConvertUtil;
import com.java110.vo.ResultVo;
-import org.springframework.beans.factory.annotation.Autowired;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.util.List;
+
/**
* 绫昏〃杩帮細鍒犻櫎
* 鏈嶅姟缂栫爜锛歰rg.deleteOrg
@@ -42,16 +49,53 @@
* // modify by 寮犱笁 at 2021-09-12 绗�10琛屽湪鏌愮鍦烘櫙涓嬪瓨鍦ㄦ煇绉峛ug 闇�瑕佷慨澶嶏紝娉ㄩ噴10鑷�20琛� 鍔犲叆 20琛岃嚦30琛�
*/
@Java110Cmd(serviceCode = "org.deleteOrg")
-public class DeleteOrgCmd extends AbstractServiceCmdListener {
- private static Logger logger = LoggerFactory.getLogger(DeleteOrgCmd.class);
+public class DeleteOrgCmd extends Cmd {
+ private static Logger logger = LoggerFactory.getLogger(DeleteOrgCmd.class);
@Autowired
private IOrgV1InnerServiceSMO orgV1InnerServiceSMOImpl;
+ @Autowired
+ private IOrgStaffRelV1InnerServiceSMO orgStaffRelV1InnerServiceSMOImpl;
+
+ @Autowired
+ private IUserV1InnerServiceSMO userV1InnerServiceSMOImpl;
+
@Override
public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
Assert.hasKeyAndValue(reqJson, "orgId", "orgId涓嶈兘涓虹┖");
-Assert.hasKeyAndValue(reqJson, "storeId", "storeId涓嶈兘涓虹┖");
+ Assert.hasKeyAndValue(reqJson, "storeId", "storeId涓嶈兘涓虹┖");
+
+ //鏍¢獙缁勭粐涓嬫槸鍚︽湁閮ㄩ棬鎴栬�呭憳宸�
+ OrgDto orgDto = new OrgDto();
+ orgDto.setOrgId(reqJson.getString("orgId"));
+ List<OrgDto> orgDtos = orgV1InnerServiceSMOImpl.queryOrgs(orgDto);
+
+ Assert.listOnlyOne(orgDtos, "涓嶅瓨鍦�");
+
+ if (OrgDto.ORG_LEVEL_STORE.equals(orgDtos.get(0).getOrgLevel())) {
+ throw new CmdException("涓�绾х粍缁囦笉鑳藉垹闄�");
+ }
+
+ orgDto = new OrgDto();
+ orgDto.setParentOrgId(reqJson.getString("orgId"));
+ List<OrgDto> subOrgDtos = orgV1InnerServiceSMOImpl.queryOrgs(orgDto);
+ if (subOrgDtos != null && subOrgDtos.size() > 0) {
+ throw new CmdException("瀛樺湪瀛愮粍缁�");
+ }
+
+ OrgStaffRelDto orgStaffRelDto = new OrgStaffRelDto();
+ orgStaffRelDto.setOrgId(reqJson.getString("orgId"));
+ List<OrgStaffRelDto> orgStaffRelDtos = orgStaffRelV1InnerServiceSMOImpl.queryOrgStaffRels(orgStaffRelDto);
+ if (orgStaffRelDtos == null || orgStaffRelDtos.size() < 1) {
+ return;
+ }
+ UserDto userDto = new UserDto();
+ userDto.setUserId(orgStaffRelDtos.get(0).getStaffId());
+ List<UserDto> userDtos = userV1InnerServiceSMOImpl.queryUsers(userDto);
+ if (userDtos != null && userDtos.size() > 0) {
+ throw new CmdException("瀛樺湪鍛樺伐 璇峰厛鍒犻櫎鍛樺伐鍚庡啀鍒犻櫎");
+ }
}
@@ -59,7 +103,7 @@
@Java110Transactional
public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
- OrgPo orgPo = BeanConvertUtil.covertBean(reqJson, OrgPo.class);
+ OrgPo orgPo = BeanConvertUtil.covertBean(reqJson, OrgPo.class);
int flag = orgV1InnerServiceSMOImpl.deleteOrg(orgPo);
if (flag < 1) {
--
Gitblit v1.8.0