From b6184e2ddf3db37a94f7efb3b619bbc64642a292 Mon Sep 17 00:00:00 2001
From: chengf <cgf12138@163.com>
Date: 星期二, 27 一月 2026 18:12:48 +0800
Subject: [PATCH] Z四
---
service-community/src/main/java/com/java110/community/cmd/community/SaveCommunityCmd.java | 115 ++++++++++++++++++++++++++++++++++++++++++++++++++-------
1 files changed, 100 insertions(+), 15 deletions(-)
diff --git a/service-community/src/main/java/com/java110/community/cmd/community/SaveCommunityCmd.java b/service-community/src/main/java/com/java110/community/cmd/community/SaveCommunityCmd.java
index 41e6c67..87df7b4 100644
--- a/service-community/src/main/java/com/java110/community/cmd/community/SaveCommunityCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/community/SaveCommunityCmd.java
@@ -15,25 +15,67 @@
*/
package com.java110.community.cmd.community;
+import com.alibaba.druid.util.StringUtils;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.java110.community.bmo.community.ICommunityBMO;
+import com.java110.community.bmo.community.PropertyManagementRecords;
import com.java110.core.annotation.Java110Cmd;
import com.java110.core.annotation.Java110Transactional;
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.workflow.WorkflowDto;
+import com.java110.doc.annotation.*;
+import com.java110.dto.community.CommunityDto;
+import com.java110.dto.community.PropertyManagementRecordDto;
+import com.java110.dto.oaWorkflow.WorkflowDto;
import com.java110.intf.common.IWorkflowV1InnerServiceSMO;
import com.java110.intf.community.ICommunityV1InnerServiceSMO;
-import com.java110.po.workflow.WorkflowPo;
+import com.java110.intf.community.PropertyManagementRecordsServiceSMO;
+import com.java110.po.community.PropertyManagementRecordPo;
+import com.java110.po.oaWorkflow.WorkflowPo;
import com.java110.utils.exception.CmdException;
import com.java110.utils.util.Assert;
import com.java110.vo.ResultVo;
import org.slf4j.Logger;
import com.java110.core.log.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
+
+
+@Java110CmdDoc(title = "娣诲姞灏忓尯",
+ description = "涓昏鎻愪緵缁欏绯荤粺娣诲姞灏忓尯",
+ httpMethod = "post",
+ url = "http://{ip}:{port}/app/community.saveCommunity",
+ resource = "communityDoc",
+ author = "鍚村鏂�",
+ serviceCode = "community.saveCommunity",
+ seq = 1
+)
+
+@Java110ParamsDoc(params = {
+ @Java110ParamDoc(name = "address", length = 30, remark = "灏忓尯鍦板潃"),
+ @Java110ParamDoc(name = "cityCode", length = 12, remark = "鍦板尯缂栫爜"),
+ @Java110ParamDoc(name = "feePrice", type = "int",length = 11, remark = "灏忓尯鏀惰垂浠锋牸"),
+ @Java110ParamDoc(name = "mapX", length = 12, remark = "缁忓害"),
+ @Java110ParamDoc(name = "mapY", length = 12, remark = "绾害"),
+ @Java110ParamDoc(name = "name", length = 64, remark = "鍚嶇О"),
+ @Java110ParamDoc(name = "nearbyLandmarks", length = 64, remark = "鍦版爣锛屽xx 鍏洯鏃�"),
+ @Java110ParamDoc(name = "payFeeMonth", type = "int",length = 11, remark = "灏忓尯鏀惰垂鍛ㄦ湡"),
+ @Java110ParamDoc(name = "tel", length = 11, remark = "灏忓尯瀹㈡湇鐢佃瘽"),
+})
+
+@Java110ResponseDoc(
+ params = {
+ @Java110ParamDoc(name = "code", type = "int", length = 11, defaultValue = "0", remark = "杩斿洖缂栧彿锛�0 鎴愬姛 鍏朵粬澶辫触"),
+ @Java110ParamDoc(name = "msg", type = "String", length = 250, defaultValue = "鎴愬姛", remark = "鎻忚堪"),
+ }
+)
+
+@Java110ExampleDoc(
+ reqBody="{\"name\":\"api鎺ュ彛灏忓尯\",\"address\":\"澶╂触鐪佸ぉ娲ュ競鍜屽钩鍖篴pi鎺ュ彛灏忓尯\",\"tmpAddress\":\"api鎺ュ彛灏忓尯\",\"areaAddress\":\"澶╂触鐪佸ぉ娲ュ競鍜屽钩鍖篭",\"nearbyLandmarks\":\"23\",\"tel\":\"18909711443\",\"cityCode\":\"120101\",\"mapX\":\"101.33\",\"mapY\":\"101.33\",\"attrs\":[{\"domain\":\"COMMON\",\"listShow\":\"Y\",\"page\":-1,\"records\":0,\"required\":\"Y\",\"row\":0,\"specCd\":\"9329000004\",\"specHoldplace\":\"蹇呭~锛岃濉啓绀惧尯缂栫爜\",\"specId\":\"9329000004\",\"specName\":\"绀惧尯缂栫爜\",\"specShow\":\"Y\",\"specType\":\"2233\",\"specValueType\":\"1001\",\"statusCd\":\"0\",\"tableName\":\"building_community_attr\",\"total\":0,\"value\":\"123123\",\"values\":[]}],\"payFeeMonth\":12,\"feePrice\":0}",
+ resBody="{'code':0,'msg':'鎴愬姛'}"
+)
/**
* 绫昏〃杩帮細淇濆瓨
@@ -61,6 +103,9 @@
@Autowired
private IWorkflowV1InnerServiceSMO workflowV1InnerServiceSMOImpl;
+ @Autowired
+ private PropertyManagementRecordsServiceSMO propertyManagementRecordsServiceSMO;
+
@Override
public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
Assert.hasKeyAndValue(reqJson, "name", "蹇呭~锛岃濉啓灏忓尯鍚嶇О");
@@ -68,6 +113,8 @@
Assert.hasKeyAndValue(reqJson, "cityCode", "璇锋眰鎶ユ枃涓湭鍖呭惈cityCode");
Assert.hasKeyAndValue(reqJson, "payFeeMonth", "璇锋眰鎶ユ枃涓湭鍖呭惈payFeeMonth");
Assert.hasKeyAndValue(reqJson, "feePrice", "璇锋眰鎶ユ枃涓湭鍖呭惈feePrice");
+ Assert.hasKeyAndValue(reqJson, "takeTime", "璇锋眰鎶ユ枃涓湭鍖呭惈鎺ョ鏃ユ湡");
+ Assert.hasKeyAndValue(reqJson, "communityCode", "璇锋眰鎶ユ枃涓湭鍖呭惈灏忓尯缂栫爜");
//灞炴�ф牎楠�
Assert.judgeAttrValue(reqJson);
@@ -76,6 +123,18 @@
@Override
@Java110Transactional
public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+ CommunityDto communityDto = new CommunityDto();
+ communityDto.setCommunityCode(reqJson.getString("communityCode"));
+ int i = communityV1InnerServiceSMOImpl.queryCommunitysCount(communityDto);
+ if (i > 0) {
+ throw new IllegalArgumentException("娣诲姞娴佺▼澶辫触,灏忓尯缂栫爜閲嶅");
+ }
+ communityDto = new CommunityDto();
+ communityDto.setName(reqJson.getString("name"));
+ i = communityV1InnerServiceSMOImpl.queryCommunitysCount(communityDto);
+ if (i > 0) {
+ throw new IllegalArgumentException("娣诲姞娴佺▼澶辫触,灏忓尯鍚嶇О閲嶅");
+ }
communityBMOImpl.addCommunity(reqJson, cmdDataFlowContext);
communityBMOImpl.addCommunityMembers(reqJson, cmdDataFlowContext);
//浜х敓鐗╀笟璐归厤缃俊鎭� 涓嶈浜х敓榛樿璐�
@@ -98,18 +157,18 @@
throw new IllegalArgumentException("娣诲姞娴佺▼澶辫触");
}
- WorkflowPo workflowPo1 = null;
- workflowPo1 = new WorkflowPo();
- workflowPo1.setCommunityId(reqJson.getString("communityId"));
- workflowPo1.setFlowId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_flowId));
- workflowPo1.setFlowName("鐗╁搧棰嗙敤");
- workflowPo1.setFlowType(WorkflowDto.FLOW_TYPE_COLLECTION);
- workflowPo1.setSkipLevel(WorkflowDto.DEFAULT_SKIP_LEVEL);
- workflowPo1.setStoreId(reqJson.getString("storeId"));
- flag = workflowV1InnerServiceSMOImpl.saveWorkflow(workflowPo1);
- if (flag < 1) {
- throw new IllegalArgumentException("娣诲姞娴佺▼澶辫触");
- }
+// WorkflowPo workflowPo1 = null;
+// workflowPo1 = new WorkflowPo();
+// workflowPo1.setCommunityId(reqJson.getString("communityId"));
+// workflowPo1.setFlowId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_flowId));
+// workflowPo1.setFlowName("鐗╁搧棰嗙敤");
+// workflowPo1.setFlowType(WorkflowDto.FLOW_TYPE_COLLECTION);
+// workflowPo1.setSkipLevel(WorkflowDto.DEFAULT_SKIP_LEVEL);
+// workflowPo1.setStoreId(reqJson.getString("storeId"));
+// flag = workflowV1InnerServiceSMOImpl.saveWorkflow(workflowPo1);
+// if (flag < 1) {
+// throw new IllegalArgumentException("娣诲姞娴佺▼澶辫触");
+// }
WorkflowPo workflowPo2 = new WorkflowPo();
workflowPo2.setCommunityId(reqJson.getString("communityId")); //琚皟鎷ㄥ皬鍖�
@@ -122,9 +181,35 @@
if (flag < 1) {
throw new IllegalArgumentException("娣诲姞娴佺▼澶辫触");
}
- cmdDataFlowContext.setResponseEntity(ResultVo.success());
+ addPropertyManagementRecord(reqJson);
+ cmdDataFlowContext.setResponseEntity(ResultVo.createResponseEntity(reqJson.getString("communityId")));
}
+ private void addPropertyManagementRecord(JSONObject reqJson) {
+ // 浠庤姹傚弬鏁颁腑鑾峰彇蹇呰淇℃伅锛堟牴鎹疄闄呬笟鍔″弬鏁拌皟鏁磌ey锛�
+ String communityId = reqJson.getString("communityId");
+ CommunityDto communityDto = new CommunityDto();
+ communityDto.setCommunityId(communityId);
+ CommunityDto communityDto1 = communityV1InnerServiceSMOImpl.queryCommunitys(communityDto).get(0);
+
+ // 鏋勫缓绠$悊璁板綍PO瀵硅薄
+ PropertyManagementRecordPo recordPo = new PropertyManagementRecordPo();
+ // 璁剧疆涓婚敭ID锛堝鏋滀娇鐢ㄨ嚜澧炰富閿彲鐪佺暐锛岀敱鏁版嵁搴撶敓鎴愶級
+ recordPo.setId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_commentId));
+ recordPo.setCommunityId(communityId);
+ recordPo.setCommunityName(communityDto1.getName());
+ recordPo.setManagementStartDate(communityDto1.getTakeTime()); // 鏍煎紡闇�涓庢暟鎹簱涓�鑷�
+ recordPo.setManagementEndDate(communityDto1.getOutTime() == null ? null : communityDto1.getOutTime()); // 鍒濆涓哄湪绠$姸鎬侊紝閫�绠℃椂闂翠负null
+ recordPo.setStatus(0); // 0-鏈夋晥
+ recordPo.setRemark("灏忓尯鍒涘缓鏃惰嚜鍔ㄦ坊鍔犵殑鍒濆鍦ㄧ璁板綍"); // 澶囨敞淇℃伅
+ // 鍒涘缓鏃堕棿鍜屾洿鏂版椂闂村彲鐢辨暟鎹簱鑷姩鐢熸垚鎴栭�氳繃妗嗘灦濉厖
+
+ // 璋冪敤淇濆瓨鎺ュ彛
+ int saveFlag = propertyManagementRecordsServiceSMO.savePropertyManagementRecord(recordPo);
+ if (saveFlag < 1) {
+ throw new IllegalArgumentException("娣诲姞灏忓尯鍦ㄧ璁板綍澶辫触");
+ }
+ }
private void dealAttr(JSONObject paramObj, ICmdDataFlowContext context) {
--
Gitblit v1.8.0