From c3e3d235a54619bb2a5bd5daba0b6062c8b7f780 Mon Sep 17 00:00:00 2001
From: wuxw <928255095@qq.com>
Date: 星期一, 18 四月 2022 17:47:51 +0800
Subject: [PATCH] 优化房屋
---
service-user/src/main/java/com/java110/user/cmd/menuGroupCommunity/UpdateMenuGroupCommunityCmd.java | 86 +++++++++++++++++++++++++++++++++++++++----
1 files changed, 78 insertions(+), 8 deletions(-)
diff --git a/service-user/src/main/java/com/java110/user/cmd/menuGroupCommunity/UpdateMenuGroupCommunityCmd.java b/service-user/src/main/java/com/java110/user/cmd/menuGroupCommunity/UpdateMenuGroupCommunityCmd.java
index 94db7f7..5e83f42 100644
--- a/service-user/src/main/java/com/java110/user/cmd/menuGroupCommunity/UpdateMenuGroupCommunityCmd.java
+++ b/service-user/src/main/java/com/java110/user/cmd/menuGroupCommunity/UpdateMenuGroupCommunityCmd.java
@@ -15,22 +15,31 @@
*/
package com.java110.user.cmd.menuGroupCommunity;
+import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.core.annotation.Java110Cmd;
import com.java110.core.annotation.Java110Transactional;
+import com.java110.core.context.Environment;
import com.java110.core.context.ICmdDataFlowContext;
import com.java110.core.event.cmd.AbstractServiceCmdListener;
import com.java110.core.event.cmd.CmdEvent;
import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.community.CommunityDto;
+import com.java110.dto.menuGroup.MenuGroupDto;
+import com.java110.dto.store.StoreDto;
+import com.java110.intf.community.ICommunityV1InnerServiceSMO;
import com.java110.intf.user.IMenuGroupCommunityV1InnerServiceSMO;
+import com.java110.intf.user.IMenuGroupV1InnerServiceSMO;
import com.java110.po.menuGroupCommunity.MenuGroupCommunityPo;
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.ArrayList;
+import java.util.List;
/**
@@ -46,16 +55,29 @@
@Java110Cmd(serviceCode = "menuGroupCommunity.updateMenuGroupCommunity")
public class UpdateMenuGroupCommunityCmd extends AbstractServiceCmdListener {
- private static Logger logger = LoggerFactory.getLogger(UpdateMenuGroupCommunityCmd.class);
+ private static Logger logger = LoggerFactory.getLogger(UpdateMenuGroupCommunityCmd.class);
@Autowired
private IMenuGroupCommunityV1InnerServiceSMO menuGroupCommunityV1InnerServiceSMOImpl;
+ @Autowired
+ private IMenuGroupV1InnerServiceSMO menuGroupV1InnerServiceSMOImpl;
+
+ @Autowired
+ private ICommunityV1InnerServiceSMO communityV1InnerServiceSMOImpl;
+ public static final String CODE_PREFIX_ID = "10";
+
@Override
public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
- Assert.hasKeyAndValue(reqJson, "gcId", "gcId涓嶈兘涓虹┖");
-Assert.hasKeyAndValue(reqJson, "communityId", "communityId涓嶈兘涓虹┖");
+ Environment.isDevEnv();
+ Assert.hasKeyAndValue(reqJson, "communityId", "communityId涓嶈兘涓虹┖");
+
+
+ // 鍒ゆ柇鏄惁鍖呭惈浜嗗皬鍖轰俊鎭�
+ if (!reqJson.containsKey("groupIds") || reqJson.getJSONArray("groupIds").size() < 1) {
+ throw new CmdException("鏈寘鍚皬鍖哄紑閫氬姛鑳�");
+ }
}
@@ -63,11 +85,59 @@
@Java110Transactional
public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
- MenuGroupCommunityPo menuGroupCommunityPo = BeanConvertUtil.covertBean(reqJson, MenuGroupCommunityPo.class);
- int flag = menuGroupCommunityV1InnerServiceSMOImpl.updateMenuGroupCommunity(menuGroupCommunityPo);
+ //鏌ヨ灏忓尯鏄惁瀛樺湪
+ CommunityDto communityDto = new CommunityDto();
+ communityDto.setCommunityId(reqJson.getString("communityId"));
+ List<CommunityDto> communityDtos = communityV1InnerServiceSMOImpl.queryCommunitys(communityDto);
+
+ Assert.listOnlyOne(communityDtos, "灏忓尯涓嶅瓨鍦�");
+
+
+ MenuGroupCommunityPo menuGroupCommunityPo = new MenuGroupCommunityPo();
+ menuGroupCommunityPo.setCommunityId(reqJson.getString("communityId"));
+ int flag = menuGroupCommunityV1InnerServiceSMOImpl.deleteMenuGroupCommunity(menuGroupCommunityPo);
if (flag < 1) {
- throw new CmdException("鏇存柊鏁版嵁澶辫触");
+ //throw new CmdException("鍒犻櫎鏁版嵁澶辫触"); //鏈夊彲鑳� 宸茬粡涓婄嚎鐨勫鎴� 娌℃湁 杩欎釜鏁版嵁 鎵�浠ヤ笉闇�鍒ゆ柇
+ }
+
+ List<MenuGroupDto> menuGroupDtos = null;
+ MenuGroupDto menuGroupDto = null;
+ if (!reqJson.containsKey("groupIds") || reqJson.getJSONArray("groupIds").size() < 1) {
+ menuGroupDto = new MenuGroupDto();
+ menuGroupDto.setStoreType(StoreDto.STORE_TYPE_PROPERTY);
+ menuGroupDtos = menuGroupV1InnerServiceSMOImpl.queryMenuGroups(menuGroupDto);
+ } else {
+ menuGroupDto = new MenuGroupDto();
+ JSONArray groupIds = reqJson.getJSONArray("groupIds");
+ String groupId;
+ List<String> gIds = new ArrayList<>();
+ for (int groupIndex = 0; groupIndex < groupIds.size(); groupIndex++) {
+ groupId = groupIds.getString(groupIndex);
+ gIds.add(groupId);
+ }
+ menuGroupDto.setgIds(gIds.toArray(new String[gIds.size()]));
+ menuGroupDtos = menuGroupV1InnerServiceSMOImpl.queryMenuGroups(menuGroupDto);
+ }
+
+ if (menuGroupDtos == null || menuGroupDtos.size() < 1) {
+ throw new IllegalArgumentException("娌℃湁鍒嗛厤浠讳綍鍔熻兘");
+ }
+
+ List<MenuGroupCommunityPo> menuGroupCommunityPos = new ArrayList<>();
+ MenuGroupCommunityPo tmpMenuGroupCommunityPo = null;
+ for (MenuGroupDto menuGroupDto1 : menuGroupDtos) {
+ tmpMenuGroupCommunityPo = new MenuGroupCommunityPo();
+ tmpMenuGroupCommunityPo.setCommunityId(reqJson.getString("communityId"));
+ tmpMenuGroupCommunityPo.setCommunityName(communityDtos.get(0).getName());
+ tmpMenuGroupCommunityPo.setGcId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
+ tmpMenuGroupCommunityPo.setgId(menuGroupDto1.getgId());
+ tmpMenuGroupCommunityPo.setName(menuGroupDto1.getName());
+ menuGroupCommunityPos.add(tmpMenuGroupCommunityPo);
+ }
+ flag = menuGroupCommunityV1InnerServiceSMOImpl.saveMenuGroupCommunitys(menuGroupCommunityPos);
+ if (flag < 1) {
+ throw new CmdException("娉ㄥ唽澶辫触");
}
cmdDataFlowContext.setResponseEntity(ResultVo.success());
--
Gitblit v1.8.0