| | |
| | | */ |
| | | package com.java110.community.cmd.communitySpace; |
| | | |
| | | 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.factory.GenerateCodeFactory; |
| | | import com.java110.doc.annotation.*; |
| | | import com.java110.dto.communitySpacePerson.CommunitySpacePersonDto; |
| | | import com.java110.dto.communitySpacePersonTime.CommunitySpacePersonTimeDto; |
| | | import com.java110.intf.community.ICommunitySpacePersonTimeV1InnerServiceSMO; |
| | | import com.java110.intf.community.ICommunitySpacePersonV1InnerServiceSMO; |
| | | import com.java110.po.communitySpacePerson.CommunitySpacePersonPo; |
| | | import com.java110.po.communitySpacePersonTime.CommunitySpacePersonTimePo; |
| | | import com.java110.utils.exception.CmdException; |
| | | import com.java110.utils.util.Assert; |
| | | import com.java110.utils.util.BeanConvertUtil; |
| | |
| | | @Java110ParamDoc(name = "receivableAmount", length = 30, remark = "应收金额"), |
| | | @Java110ParamDoc(name = "receivedAmount", length = 30, remark = "实收金额"), |
| | | @Java110ParamDoc(name = "spaceId", length = 30, remark = "场地ID"), |
| | | @Java110ParamDoc(name = "openTimes",type="Array", length = 30, remark = "场地ID"), |
| | | @Java110ParamDoc(parentNodeName = "openTimes",name = "hours", length = 30, remark = "预约时间"), |
| | | |
| | | }) |
| | | |
| | | @Java110ResponseDoc( |
| | |
| | | @Autowired |
| | | private ICommunitySpacePersonV1InnerServiceSMO communitySpacePersonV1InnerServiceSMOImpl; |
| | | |
| | | @Autowired |
| | | private ICommunitySpacePersonTimeV1InnerServiceSMO communitySpacePersonTimeV1InnerServiceSMOImpl; |
| | | |
| | | @Override |
| | | public void validate(CmdEvent event, ICmdDataFlowContext cmdDataFlowContext, JSONObject reqJson) { |
| | | Assert.hasKeyAndValue(reqJson, "spaceId", "请求报文中未包含spaceId"); |
| | |
| | | Assert.hasKeyAndValue(reqJson, "payWay", "请求报文中未包含payWay"); |
| | | Assert.hasKeyAndValue(reqJson, "communityId", "请求报文中未包含communityId"); |
| | | |
| | | if(!reqJson.containsKey("openTimes")){ |
| | | cmdDataFlowContext.setResponseEntity(ResultVo.success()); |
| | | return ; |
| | | } |
| | | |
| | | JSONArray openTimes = reqJson.getJSONArray("openTimes"); |
| | | |
| | | if(openTimes == null || openTimes.size() <1){ |
| | | cmdDataFlowContext.setResponseEntity(ResultVo.success()); |
| | | return ; |
| | | } |
| | | CommunitySpacePersonTimeDto communitySpacePersonTimeDto = null; |
| | | int flag = 0; |
| | | for(int timeIndex = 0 ;timeIndex < openTimes.size(); timeIndex++) { |
| | | if("N".equals(openTimes.getJSONObject(timeIndex).getString("isOpen"))){ |
| | | continue; |
| | | } |
| | | communitySpacePersonTimeDto = new CommunitySpacePersonTimeDto(); |
| | | communitySpacePersonTimeDto.setCommunityId(reqJson.getString("communityId")); |
| | | communitySpacePersonTimeDto.setAppointmentTime(reqJson.getString("appointmentTime")); |
| | | communitySpacePersonTimeDto.setHours(openTimes.getJSONObject(timeIndex).getString("hours")); |
| | | communitySpacePersonTimeDto.setSpaceId(reqJson.getString("spaceId")); |
| | | flag = communitySpacePersonTimeV1InnerServiceSMOImpl.queryCommunitySpacePersonTimesCount(communitySpacePersonTimeDto); |
| | | if(flag > 0){ |
| | | throw new CmdException(reqJson.getString("appointmentTime")+","+openTimes.getJSONObject(timeIndex).getString("hours")+"已经被预约"); |
| | | } |
| | | } |
| | | |
| | | } |
| | | |
| | | @Override |
| | |
| | | |
| | | CommunitySpacePersonPo communitySpacePersonPo = BeanConvertUtil.covertBean(reqJson, CommunitySpacePersonPo.class); |
| | | communitySpacePersonPo.setCspId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID)); |
| | | communitySpacePersonPo.setOrderId(GenerateCodeFactory.getGeneratorId("11")); |
| | | if(StringUtil.isEmpty(communitySpacePersonPo.getState())){ |
| | | communitySpacePersonPo.setState(CommunitySpacePersonDto.STATE_W); |
| | | } |
| | |
| | | throw new CmdException("保存数据失败"); |
| | | } |
| | | |
| | | if(!reqJson.containsKey("openTimes")){ |
| | | cmdDataFlowContext.setResponseEntity(ResultVo.success()); |
| | | return ; |
| | | } |
| | | |
| | | JSONArray openTimes = reqJson.getJSONArray("openTimes"); |
| | | |
| | | if(openTimes == null || openTimes.size() <1){ |
| | | cmdDataFlowContext.setResponseEntity(ResultVo.success()); |
| | | return ; |
| | | } |
| | | CommunitySpacePersonTimePo communitySpacePersonTimePo = null; |
| | | for(int timeIndex = 0 ;timeIndex < openTimes.size(); timeIndex++) { |
| | | if("N".equals(openTimes.getJSONObject(timeIndex).getString("isOpen"))){ |
| | | continue; |
| | | } |
| | | communitySpacePersonTimePo = new CommunitySpacePersonTimePo(); |
| | | communitySpacePersonTimePo.setCommunityId(communitySpacePersonPo.getCommunityId()); |
| | | communitySpacePersonTimePo.setCspId(communitySpacePersonPo.getCspId()); |
| | | communitySpacePersonTimePo.setHours(openTimes.getJSONObject(timeIndex).getString("hours")); |
| | | communitySpacePersonTimePo.setSpaceId(communitySpacePersonPo.getSpaceId()); |
| | | communitySpacePersonTimePo.setTimeId(GenerateCodeFactory.getGeneratorId(CODE_PREFIX_ID)); |
| | | communitySpacePersonTimePo.setState(CommunitySpacePersonTimeDto.STATE_WAIT_CONFIRM); |
| | | communitySpacePersonTimeV1InnerServiceSMOImpl.saveCommunitySpacePersonTime(communitySpacePersonTimePo); |
| | | } |
| | | |
| | | cmdDataFlowContext.setResponseEntity(ResultVo.success()); |
| | | } |
| | | } |