| | |
| | | import static java.util.Objects.nonNull; |
| | | import static org.apache.commons.lang3.StringUtils.isNotBlank; |
| | | |
| | | import java.math.BigDecimal; |
| | | import java.util.ArrayList; |
| | | import java.util.Comparator; |
| | | import java.util.Date; |
| | |
| | | import java.util.stream.Collectors; |
| | | |
| | | import javax.annotation.Resource; |
| | | import javax.validation.constraints.NotNull; |
| | | |
| | | import com.panzhihua.common.exceptions.ServiceException; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Value; |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R registerRentingHouse(RentingHouseRegisterDTO registerDTO) { |
| | | checkDepositMoney(registerDTO); |
| | | Long communityId = registerDTO.getCommunityId(); |
| | | Long userId = registerDTO.getUserId(); |
| | | RentingHourseRegister houseRegister = new RentingHourseRegister(); |
| | |
| | | return R.fail("新增房源失败"); |
| | | } |
| | | |
| | | private void checkDepositMoney(RentingHouseRegisterDTO registerDTO) { |
| | | BigDecimal dingMoney = registerDTO.getDingMoney(); |
| | | BigDecimal monthlyRentMoney = registerDTO.getMonthlyRentMoney(); |
| | | if (nonNull(dingMoney) && nonNull(monthlyRentMoney) && dingMoney.compareTo(monthlyRentMoney) == 1) { |
| | | throw new ServiceException("500", "定金不能超过月租金"); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 编辑房源信息 |
| | | * @param registerDTO |
| | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public R updateRentingHouse(RentingHouseRegisterDTO registerDTO) { |
| | | checkDepositMoney(registerDTO); |
| | | Long id = registerDTO.getId(); |
| | | Long userId = registerDTO.getUserId(); |
| | | RentingHourseRegister houseRegister = this.baseMapper.selectById(id); |
| | |
| | | if (status.intValue() != RentingHourseRegister.Status.dfb) { |
| | | return R.fail("已发布房源不支持删除"); |
| | | } |
| | | rentingHourseFileService.remove(new QueryWrapper<RentingHourseFile>().lambda() |
| | | .eq(RentingHourseFile::getRefId, registerId)); |
| | | int result = this.baseMapper.deleteById(registerId); |
| | | if (result > 0) { |
| | | return R.ok(); |
| | |
| | | public R nearby(NearbyDTO nearbyDTO) { |
| | | Rectangle rectangle =new NearbyUtil().getRectangle(nearbyDTO.getDistance(), Double.parseDouble(nearbyDTO.getLongitude()), Double.parseDouble(nearbyDTO.getLatitude())); |
| | | return R.ok(this.baseMapper.nearby(rectangle.getMinX(),rectangle.getMaxX(), |
| | | rectangle.getMinY(),rectangle.getMaxY(),nearbyDTO.getKeyword(), nearbyDTO.getCommunityId())); |
| | | rectangle.getMinY(),rectangle.getMaxY(), nearbyDTO)); |
| | | } |
| | | |
| | | @Override |
| | |
| | | } |
| | | |
| | | @Override |
| | | public void updateAllHouseUnionAppCode() { |
| | | public void updateAllHouseUnionAppCode(String areaCode) { |
| | | List<RentingHourseRegister> list = this.baseMapper.selectList(null); |
| | | if (!list.isEmpty()) { |
| | | list.stream().forEach(houseRegister -> { |