From 53e62f2fedb2506793620454df0e9b5bcdfeaf96 Mon Sep 17 00:00:00 2001
From: Your Name <you@example.com>
Date: 星期一, 23 一月 2023 18:47:22 +0800
Subject: [PATCH] 访客设置加入停车场功能
---
service-community/src/main/java/com/java110/community/cmd/visit/SaveVisitSettingCmd.java | 57 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
1 files changed, 56 insertions(+), 1 deletions(-)
diff --git a/service-community/src/main/java/com/java110/community/cmd/visit/SaveVisitSettingCmd.java b/service-community/src/main/java/com/java110/community/cmd/visit/SaveVisitSettingCmd.java
index cbe43f1..012c538 100644
--- a/service-community/src/main/java/com/java110/community/cmd/visit/SaveVisitSettingCmd.java
+++ b/service-community/src/main/java/com/java110/community/cmd/visit/SaveVisitSettingCmd.java
@@ -22,15 +22,26 @@
import com.java110.core.event.cmd.Cmd;
import com.java110.core.event.cmd.CmdEvent;
import com.java110.core.factory.GenerateCodeFactory;
+import com.java110.dto.oaWorkflow.OaWorkflowDto;
+import com.java110.dto.parking.ParkingAreaDto;
+import com.java110.dto.workflow.WorkflowModelDto;
+import com.java110.intf.common.IWorkflowInnerServiceSMO;
+import com.java110.intf.community.IParkingAreaAttrInnerServiceSMO;
+import com.java110.intf.community.IParkingAreaInnerServiceSMO;
import com.java110.intf.community.IVisitSettingV1InnerServiceSMO;
+import com.java110.intf.oa.IOaWorkflowInnerServiceSMO;
+import com.java110.po.oaWorkflow.OaWorkflowPo;
import com.java110.po.visitSetting.VisitSettingPo;
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.springframework.beans.factory.annotation.Autowired;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
+
+import java.util.List;
/**
* 绫昏〃杩帮細淇濆瓨
@@ -52,11 +63,21 @@
@Autowired
private IVisitSettingV1InnerServiceSMO visitSettingV1InnerServiceSMOImpl;
+ @Autowired
+ private IWorkflowInnerServiceSMO workflowInnerServiceSMOImpl;
+
+ @Autowired
+ private IOaWorkflowInnerServiceSMO oaWorkflowInnerServiceSMOImpl;
+
+ @Autowired
+ private IParkingAreaInnerServiceSMO parkingAreaInnerServiceSMOImpl;
+
@Override
public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) {
Assert.hasKeyAndValue(reqJson, "typeName", "璇锋眰鎶ユ枃涓湭鍖呭惈typeName");
Assert.hasKeyAndValue(reqJson, "faceWay", "璇锋眰鎶ユ枃涓湭鍖呭惈faceWay");
Assert.hasKeyAndValue(reqJson, "carNumWay", "璇锋眰鎶ユ枃涓湭鍖呭惈carNumWay");
+ Assert.hasKeyAndValue(reqJson, "paId", "璇锋眰鎶ユ枃涓湭鍖呭惈paId");
Assert.hasKeyAndValue(reqJson, "auditWay", "璇锋眰鎶ユ枃涓湭鍖呭惈auditWay");
Assert.hasKeyAndValue(reqJson, "communityId", "璇锋眰鎶ユ枃涓湭鍖呭惈communityId");
@@ -66,9 +87,43 @@
@Java110Transactional
public void doCmd(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) throws CmdException {
+ String storeId = cmdDataFlowContext.getReqHeaders().get("store-id");
+ OaWorkflowPo oaWorkflowPo = new OaWorkflowPo();
+ oaWorkflowPo.setStoreId(storeId);
+ oaWorkflowPo.setFlowId(GenerateCodeFactory.getGeneratorId(GenerateCodeFactory.CODE_PREFIX_flowId));
+ oaWorkflowPo.setFlowName(reqJson.getString("typeName")+"瀹℃壒娴佺▼");
+ oaWorkflowPo.setFlowType(OaWorkflowDto.FLOW_TYPE_VISIT);
+
+ //鍒涘缓model
+ WorkflowModelDto workflowModelDto = new WorkflowModelDto();
+ workflowModelDto.setName(oaWorkflowPo.getFlowName());
+ workflowModelDto.setKey(oaWorkflowPo.getFlowId());
+ workflowModelDto = workflowInnerServiceSMOImpl.createModel(workflowModelDto);
+
+ oaWorkflowPo.setModelId(workflowModelDto.getModelId());
+ oaWorkflowPo.setFlowKey(workflowModelDto.getKey());
+ oaWorkflowPo.setState(OaWorkflowDto.STATE_WAIT);
+ int flag = oaWorkflowInnerServiceSMOImpl.saveOaWorkflow(oaWorkflowPo);
+ if (flag < 1) {
+ throw new CmdException("淇濆瓨鏁版嵁澶辫触");
+ }
+
+
+
VisitSettingPo visitSettingPo = BeanConvertUtil.covertBean(reqJson, VisitSettingPo.class);
visitSettingPo.setSettingId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID));
- int flag = visitSettingV1InnerServiceSMOImpl.saveVisitSetting(visitSettingPo);
+ visitSettingPo.setFlowId(oaWorkflowPo.getFlowId());
+ visitSettingPo.setFlowName(oaWorkflowPo.getFlowName());
+
+ if(!StringUtil.isEmpty(visitSettingPo.getPaId())) {
+ ParkingAreaDto parkingAreaDto = new ParkingAreaDto();
+ parkingAreaDto.setCommunityId(reqJson.getString("communityId"));
+ parkingAreaDto.setPaId(reqJson.getString("paId"));
+ List<ParkingAreaDto> parkingAreaDtos = parkingAreaInnerServiceSMOImpl.queryParkingAreas(parkingAreaDto);
+ Assert.listOnlyOne(parkingAreaDtos, "鍋滆溅鍦轰笉瀛樺湪");
+ visitSettingPo.setPaNum(parkingAreaDtos.get(0).getNum());
+ }
+ flag = visitSettingV1InnerServiceSMOImpl.saveVisitSetting(visitSettingPo);
if (flag < 1) {
throw new CmdException("淇濆瓨鏁版嵁澶辫触");
--
Gitblit v1.8.0