service-store/src/main/java/com/java110/store/bmo/contract/impl/SaveContractBMOImpl.java
@@ -5,13 +5,19 @@ import com.java110.core.annotation.Java110Transactional; import com.java110.core.factory.GenerateCodeFactory; import com.java110.dto.contractType.ContractTypeDto; import com.java110.dto.fee.FeeDto; import com.java110.dto.rentingPool.RentingPoolDto; import com.java110.dto.store.StoreDto; import com.java110.intf.store.IContractAttrInnerServiceSMO; import com.java110.intf.store.IContractInnerServiceSMO; import com.java110.intf.store.IContractTypeInnerServiceSMO; import com.java110.intf.user.IRentingPoolInnerServiceSMO; import com.java110.po.contract.ContractPo; import com.java110.po.contractAttr.ContractAttrPo; import com.java110.po.rentingPool.RentingPoolPo; import com.java110.store.bmo.contract.ISaveContractBMO; import com.java110.utils.util.Assert; import com.java110.utils.util.StringUtil; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; @@ -30,6 +36,9 @@ @Autowired private IContractTypeInnerServiceSMO contractTypeInnerServiceSMOImpl; @Autowired private IRentingPoolInnerServiceSMO rentingPoolInnerServiceSMOImpl; // 房屋租赁 /** * 添加小区信息 @@ -64,6 +73,11 @@ } if (StoreDto.STORE_ADMIN.equals(contractPo.getStoreId())) { noticeRentUpdateState(contractPo,audit); } if (!reqJson.containsKey("contractTypeSpecs")) { return ResultVo.createResponseEntity(ResultVo.CODE_OK, "保存成功"); } @@ -84,6 +98,40 @@ } /** * 修改 房屋租赁状态 * * @param contractPo */ private void noticeRentUpdateState(ContractPo contractPo,String audit) { if (!contractPo.getObjType().equals(FeeDto.PAYER_OBJ_TYPE_ROOM) || StringUtil.isEmpty(contractPo.getObjId()) || contractPo.getObjId().startsWith("-")) { return; } RentingPoolDto rentingPoolDto = new RentingPoolDto(); rentingPoolDto.setRoomId(contractPo.getObjId()); rentingPoolDto.setState(RentingPoolDto.STATE_APPLY_AGREE); List<RentingPoolDto> rentingPoolDtos = rentingPoolInnerServiceSMOImpl.queryRentingPools(rentingPoolDto); if (rentingPoolDtos == null || rentingPoolDtos.size() < 1) { return; } RentingPoolPo rentingPoolPo = new RentingPoolPo(); rentingPoolPo.setCommunityId(rentingPoolDtos.get(0).getCommunityId()); rentingPoolPo.setRentingId(rentingPoolDtos.get(0).getRentingId()); if (ContractTypeDto.NO_AUDIT.equals(audit)) { rentingPoolPo.setState(RentingPoolDto.STATE_FINISH); } else { rentingPoolPo.setState(RentingPoolDto.STATE_ADMIN_AUDIT); } rentingPoolInnerServiceSMOImpl.updateRentingPool(rentingPoolPo); } /** * 保存合同属性 * * @param jsonObject service-store/src/main/java/com/java110/store/bmo/contract/impl/UpdateContractBMOImpl.java
@@ -3,13 +3,20 @@ import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.java110.core.annotation.Java110Transactional; import com.java110.dto.contract.ContractDto; import com.java110.dto.contractAttr.ContractAttrDto; import com.java110.dto.fee.FeeDto; import com.java110.dto.rentingPool.RentingPoolDto; import com.java110.dto.store.StoreDto; import com.java110.intf.store.IContractAttrInnerServiceSMO; import com.java110.intf.store.IContractInnerServiceSMO; import com.java110.intf.user.IRentingPoolInnerServiceSMO; import com.java110.po.contract.ContractPo; import com.java110.po.contractAttr.ContractAttrPo; import com.java110.po.rentingPool.RentingPoolPo; import com.java110.store.bmo.contract.IUpdateContractBMO; import com.java110.utils.util.Assert; import com.java110.utils.util.StringUtil; import com.java110.vo.ResultVo; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.ResponseEntity; @@ -26,6 +33,9 @@ @Autowired private IContractAttrInnerServiceSMO contractAttrInnerServiceSMOImpl; @Autowired private IRentingPoolInnerServiceSMO rentingPoolInnerServiceSMOImpl; /** * @param contractPo * @return 订单服务能够接受的报文 @@ -39,6 +49,8 @@ return ResultVo.createResponseEntity(ResultVo.CODE_ERROR, "保存失败"); } noticeRentUpdateState(contractPo); if (!reqJson.containsKey("contractTypeSpecs")) { return ResultVo.createResponseEntity(ResultVo.CODE_OK, "保存成功"); @@ -79,4 +91,44 @@ } } /** * 修改 房屋租赁状态 * * @param contractPo */ private void noticeRentUpdateState(ContractPo contractPo) { ContractDto contractDto = new ContractDto(); contractDto.setContractId(contractPo.getContractId()); List<ContractDto> contractDtos = contractInnerServiceSMOImpl.queryContracts(contractDto); Assert.listOnlyOne(contractDtos, "未找到需要审核合同"); if (!contractDtos.get(0).getObjType().equals(FeeDto.PAYER_OBJ_TYPE_ROOM) || StringUtil.isEmpty(contractDtos.get(0).getObjId()) || contractDtos.get(0).getObjId().startsWith("-")) { return; } if (!StoreDto.STORE_ADMIN.equals(contractDtos.get(0).getStoreId())) { return; } RentingPoolDto rentingPoolDto = new RentingPoolDto(); rentingPoolDto.setRoomId(contractDtos.get(0).getObjId()); rentingPoolDto.setState(RentingPoolDto.STATE_ADMIN_AUDIT); List<RentingPoolDto> rentingPoolDtos = rentingPoolInnerServiceSMOImpl.queryRentingPools(rentingPoolDto); if (rentingPoolDtos == null || rentingPoolDtos.size() < 1) { return; } RentingPoolPo rentingPoolPo = new RentingPoolPo(); rentingPoolPo.setCommunityId(rentingPoolDtos.get(0).getCommunityId()); rentingPoolPo.setRentingId(rentingPoolDtos.get(0).getRentingId()); rentingPoolPo.setState(RentingPoolDto.STATE_FINISH); rentingPoolInnerServiceSMOImpl.updateRentingPool(rentingPoolPo); } }