Commit edc480e2 authored by lixuan's avatar lixuan

Merge branch 'dev-lx' into 'dev'

Dev lx

See merge request !59
parents cf39a591 34e4d807
......@@ -27,19 +27,14 @@ public class HouseResourceAssociationObjectController {
return AjaxResult.success();
}
@GetMapping
public AjaxResult getHouseResourceAssociationObjectByHouseResourceIdType(@RequestParam String houseResourceId, @RequestParam int type) {
return AjaxResult.success(houseResourceAssociationObjectService.queryHouseResourceAssociationObjectByHouseResourceIdType(houseResourceId, type));
}
@DeleteMapping
public AjaxResult deleteHouseResourceAssociationObjectById(@RequestParam String id) {
houseResourceAssociationObjectService.deleteHouseResourceAssociationObjectById(id);
return AjaxResult.success();
}
@GetMapping("/log")
public AjaxResult getHouseResourceAssociationObjectLog(@RequestParam String houseResourceId, @RequestParam int type) {
return AjaxResult.success(houseResourceAssociationObjectService.queryHouseResourceAssociationObjectLog(houseResourceId, type));
@GetMapping("/detail")
public AjaxResult deleteHouseResourceAssociationObjectById(@RequestParam String houseResourceId, @RequestParam int type) {
return AjaxResult.success(houseResourceAssociationObjectService.queryHouseResourceAssociationObjectByHouseResourceIdType(houseResourceId, type));
}
}
......@@ -2,8 +2,6 @@ package com.ruoyi.system.domain.house;
import lombok.Data;
import java.util.Date;
@Data
public class HouseResourceAssociationObject {
......@@ -14,8 +12,4 @@ public class HouseResourceAssociationObject {
private String houseResourceId;
private String businessId;
private int operateType;
private Date relieveTime;
}
......@@ -4,18 +4,12 @@ import com.ruoyi.system.domain.grid.GridCompany;
import com.ruoyi.system.domain.grid.GridShop;
import lombok.Data;
import java.util.List;
@Data
public class HouseResourceAssociationObjectVo {
private String id;
private int type;
private String houseResourceId;
private String businessId;
private GridCompany gridCompany;
private List<GridCompany> gridCompanyList;
private GridShop gridShop;
private List<GridShop> gridShopList;
}
package com.ruoyi.system.domain.house.vo;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
@Data
public class HouseResourceDetail {
private String id;
private String relationId;
private String two;
private String wgName2;
private String three;
private String four;
private String wgName4;
private int type;
private String projectId;
private String houseResourceUrl;
private List<String> houseResourceUrlList;
private String houseNumber;
private Integer houseArea;
private int houseResourceAttribute;
private String houseResourceAttributeText;
private int houseResourceType;
private String houseResourceTypeText;
private String houseResourceUse;
private String houseResourceEquity;
private String houseResourceEquityTel;
private int decorationCondition;
private String decorationConditionText;
private int orientation;
private String orientationText;
private Boolean landingHeadFlag;
private Integer commonAreaNumber;
private Integer officeNumber;
private Integer meetingNumber;
private Integer stationNumber;
private String setUp;
private String labelId;
private BigDecimal unitPrice;
private int rentalUnit;
private String rentalUnitText;
private String planeGraphUrl;
private int hireStatus;
private String hireStatusText;
}
package com.ruoyi.system.domain.house.vo;
import com.ruoyi.system.domain.grid.GridCompany;
import com.ruoyi.system.domain.grid.GridShop;
import com.ruoyi.system.domain.house.HouseResource;
import com.ruoyi.system.domain.house.HouseResourceAssociationObject;
import lombok.Data;
import java.util.List;
......@@ -11,5 +12,7 @@ public class HouseResourceSaveUpdateDto {
private HouseResource houseResource;
private List<HouseResourceAssociationObject> houseResourceAssociationObjects;
private List<GridCompany> companyList;
private List<GridShop> shopList;
}
......@@ -15,7 +15,7 @@ public interface HouseResourceAssociationObjectMapper {
void deleteHouseResourceObjectAssociationById(String id);
HouseResourceAssociationObject selectHouseResourceObjectAssociationByHouseResourceIdType(@Param("houseResourceId") String houseResourceId, @Param("type") int type);
void deleteByHouseResourceId(String houseResourceId);
List<HouseResourceAssociationObject> selectHouseResourceObjectAssociationLog(@Param("houseResourceId") String houseResourceId, @Param("type") int type, @Param("operateType") int operateType);
List<HouseResourceAssociationObject> selectHouseResourceObjectAssociationByHouseResourceIdType(@Param("houseResourceId") String houseResourceId, @Param("type") int type);
}
......@@ -14,6 +14,4 @@ public interface HouseResourceAssociationObjectService {
void deleteHouseResourceAssociationObjectById(String id);
HouseResourceAssociationObjectVo queryHouseResourceAssociationObjectByHouseResourceIdType(String houseResourceId, int type);
List<HouseResourceAssociationObjectVo> queryHouseResourceAssociationObjectLog(String houseResourceId, int type);
}
......@@ -2,6 +2,7 @@ package com.ruoyi.system.service.house;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.ruoyi.system.domain.house.HouseResource;
import com.ruoyi.system.domain.house.vo.HouseResourceDetail;
import com.ruoyi.system.domain.house.vo.HouseResourcePage;
import com.ruoyi.system.domain.house.vo.HouseResourcePageQuery;
import com.ruoyi.system.domain.house.vo.HouseResourceSaveUpdateDto;
......@@ -12,7 +13,7 @@ public interface HouseResourceService {
void saveHouseResource(HouseResourceSaveUpdateDto dto);
HouseResource queryHouseResourceById(String id);
HouseResourceDetail queryHouseResourceById(String id);
void updateHouseResource(HouseResourceSaveUpdateDto dto);
......
......@@ -50,42 +50,24 @@ public class HouseResourceAssociationObjectServiceImpl implements HouseResourceA
@Override
public HouseResourceAssociationObjectVo queryHouseResourceAssociationObjectByHouseResourceIdType(String houseResourceId, int type) {
HouseResourceAssociationObject houseResourceAssociationObject = houseResourceAssociationObjectMapper.selectHouseResourceObjectAssociationByHouseResourceIdType(houseResourceId, type);
List<HouseResourceAssociationObject> houseResourceAssociationObject = houseResourceAssociationObjectMapper.selectHouseResourceObjectAssociationByHouseResourceIdType(houseResourceId, type);
if (Objects.isNull(houseResourceAssociationObject)) {
return null;
}
List<GridCompany> gridCompanyList = new ArrayList<>();
List<GridShop> gridShopList = new ArrayList<>();
HouseResourceAssociationObjectVo houseResourceAssociationObjectVo = new HouseResourceAssociationObjectVo();
BeanUtils.copyProperties(houseResourceAssociationObject, houseResourceAssociationObjectVo);
if (type == 1) {
GridCompany gridCompany = gridCompanyMapper.selectByPrimaryKey(houseResourceAssociationObject.getBusinessId());
houseResourceAssociationObjectVo.setGridCompany(gridCompany);
} else if (type == 2) {
GridShop gridShop = gridShopMapper.selectByPrimaryKey(Long.parseLong(houseResourceAssociationObject.getBusinessId()));
houseResourceAssociationObjectVo.setGridShop(gridShop);
for (HouseResourceAssociationObject resourceAssociationObject : houseResourceAssociationObject) {
if (resourceAssociationObject.getType() == 1) {
GridCompany gridCompany = gridCompanyMapper.selectByPrimaryKey(resourceAssociationObject.getBusinessId());
gridCompanyList.add(gridCompany);
} else if (resourceAssociationObject.getType() == 2) {
GridShop gridShop = gridShopMapper.selectByPrimaryKey(Long.parseLong(resourceAssociationObject.getBusinessId()));
gridShopList.add(gridShop);
}
return houseResourceAssociationObjectVo;
}
@Override
public List<HouseResourceAssociationObjectVo> queryHouseResourceAssociationObjectLog(String houseResourceId, int type) {
List<HouseResourceAssociationObject> houseResourceAssociationObjects = houseResourceAssociationObjectMapper.selectHouseResourceObjectAssociationLog(houseResourceId, type, 2);
if (houseResourceAssociationObjects.isEmpty()) {
return Collections.emptyList();
}
List<HouseResourceAssociationObjectVo> list = new ArrayList<>();
houseResourceAssociationObjects.forEach(x -> {
if (x.getType() == 1) {
HouseResourceAssociationObjectVo houseResourceAssociationObjectVo = new HouseResourceAssociationObjectVo();
GridCompany gridCompany = gridCompanyMapper.selectByPrimaryKey(x.getBusinessId());
houseResourceAssociationObjectVo.setGridCompany(gridCompany);
list.add(houseResourceAssociationObjectVo);
} else if (x.getType() == 2) {
HouseResourceAssociationObjectVo houseResourceAssociationObjectVo = new HouseResourceAssociationObjectVo();
GridShop gridShop = gridShopMapper.selectByPrimaryKey(Long.parseLong(x.getBusinessId()));
houseResourceAssociationObjectVo.setGridShop(gridShop);
list.add(houseResourceAssociationObjectVo);
}
});
return list;
houseResourceAssociationObjectVo.setGridCompanyList(gridCompanyList);
houseResourceAssociationObjectVo.setGridShopList(gridShopList);
return houseResourceAssociationObjectVo;
}
}
......@@ -2,18 +2,25 @@ package com.ruoyi.system.service.house.impl;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.system.domain.grid.GridCompany;
import com.ruoyi.system.domain.grid.GridRegion;
import com.ruoyi.system.domain.grid.GridRegionExample;
import com.ruoyi.system.domain.grid.GridShop;
import com.ruoyi.system.domain.house.HouseResource;
import com.ruoyi.system.domain.house.HouseResourceAssociationObject;
import com.ruoyi.system.domain.house.enums.HouseEnums;
import com.ruoyi.system.domain.house.vo.HouseResourceDetail;
import com.ruoyi.system.domain.house.vo.HouseResourcePage;
import com.ruoyi.system.domain.house.vo.HouseResourcePageQuery;
import com.ruoyi.system.domain.house.vo.HouseResourceSaveUpdateDto;
import com.ruoyi.system.mapper.grid.GridRegionMapper;
import com.ruoyi.system.mapper.house.HouseResourceAssociationObjectMapper;
import com.ruoyi.system.mapper.house.HouseResourceMapper;
import com.ruoyi.system.service.grid.GridCompanyService;
import com.ruoyi.system.service.grid.GridShopService;
import com.ruoyi.system.service.house.HouseResourceService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.StringUtils;
......@@ -29,10 +36,16 @@ public class HouseResourceServiceImpl implements HouseResourceService {
private final GridRegionMapper gridRegionMapper;
public HouseResourceServiceImpl(HouseResourceMapper houseResourceMapper, HouseResourceAssociationObjectMapper houseResourceAssociationObjectMapper, GridRegionMapper gridRegionMapper) {
private final GridCompanyService gridCompanyService;
private final GridShopService gridShopService;
public HouseResourceServiceImpl(HouseResourceMapper houseResourceMapper, HouseResourceAssociationObjectMapper houseResourceAssociationObjectMapper, GridRegionMapper gridRegionMapper, GridCompanyService gridCompanyService, GridShopService gridShopService) {
this.houseResourceMapper = houseResourceMapper;
this.houseResourceAssociationObjectMapper = houseResourceAssociationObjectMapper;
this.gridRegionMapper = gridRegionMapper;
this.gridCompanyService = gridCompanyService;
this.gridShopService = gridShopService;
}
@Override
......@@ -42,16 +55,61 @@ public class HouseResourceServiceImpl implements HouseResourceService {
dto.getHouseResource().setId(houseResourceId);
houseResourceMapper.insertHouseResource(dto.getHouseResource());
dto.getHouseResourceAssociationObjects().forEach(x -> {
x.setId(UUID.randomUUID().toString().replaceAll("-", ""));
x.setHouseResourceId(houseResourceId);
houseResourceAssociationObjectMapper.insertHouseResourceObjectAssociation(x);
});
for (GridCompany gridCompany : dto.getCompanyList()) {
AjaxResult result = gridCompanyService.add(gridCompany);
if (result.isSuccess()) {
String id = result.get("data").toString();
HouseResourceAssociationObject houseResourceAssociationObject = new HouseResourceAssociationObject();
houseResourceAssociationObject.setId(UUID.randomUUID().toString().replaceAll("-", ""));
houseResourceAssociationObject.setHouseResourceId(houseResourceId);
houseResourceAssociationObject.setBusinessId(id);
houseResourceAssociationObject.setType(1);
houseResourceAssociationObjectMapper.insertHouseResourceObjectAssociation(houseResourceAssociationObject);
}
}
for (GridShop gridShop : dto.getShopList()) {
try {
AjaxResult result = gridShopService.addGridShop(gridShop);
if (result.isSuccess()) {
String id = result.get("data").toString();
HouseResourceAssociationObject houseResourceAssociationObject = new HouseResourceAssociationObject();
houseResourceAssociationObject.setId(UUID.randomUUID().toString().replaceAll("-", ""));
houseResourceAssociationObject.setHouseResourceId(houseResourceId);
houseResourceAssociationObject.setBusinessId(id);
houseResourceAssociationObject.setType(2);
houseResourceAssociationObjectMapper.insertHouseResourceObjectAssociation(houseResourceAssociationObject);
}
} catch (Exception e) {
throw new RuntimeException("新增shop出错");
}
}
}
@Override
public HouseResource queryHouseResourceById(String id) {
return houseResourceMapper.selectHouseResourceById(id);
public HouseResourceDetail queryHouseResourceById(String id) {
HouseResource houseResource = houseResourceMapper.selectHouseResourceById(id);
if (houseResource == null) {
return null;
}
HouseResourceDetail houseResourceDetail = new HouseResourceDetail();
BeanUtils.copyProperties(houseResource, houseResourceDetail);
GridRegionExample gridRegionExample = new GridRegionExample();
gridRegionExample.createCriteria().andWgCodeEqualTo(houseResourceDetail.getTwo()).andWgTypeEqualTo(String.valueOf(houseResourceDetail.getType()));
List<GridRegion> two = gridRegionMapper.selectByExample(gridRegionExample);
if (!two.isEmpty()) {
houseResourceDetail.setWgName2(two.get(0).getWgName());
}
if (StringUtils.hasText(houseResourceDetail.getHouseResourceUrl())) {
houseResourceDetail.setHouseResourceUrlList(Arrays.asList(houseResourceDetail.getHouseResourceUrl().split(",")));
}
houseResourceDetail.setHouseResourceAttributeText(HouseEnums.HouseResourceAttributeEnum.getDescByCode(houseResourceDetail.getHouseResourceAttribute()));
houseResourceDetail.setHouseResourceTypeText(HouseEnums.HouseResourceTypeEnum.getDescByCode(houseResourceDetail.getHouseResourceType()));
houseResourceDetail.setOrientationText(HouseEnums.OrientationEnum.getDescByCode(houseResourceDetail.getOrientation()));
houseResourceDetail.setDecorationConditionText(HouseEnums.DecorationConditionEnum.getDescByCode(houseResourceDetail.getDecorationCondition()));
houseResourceDetail.setRentalUnitText(HouseEnums.RentalUnitEnum.getDescByCode(houseResourceDetail.getRentalUnit()));
houseResourceDetail.setHireStatusText(HouseEnums.hireStatusTextEnum.getDescByCode(houseResourceDetail.getHireStatus()));
return houseResourceDetail;
}
@Override
......@@ -61,18 +119,49 @@ public class HouseResourceServiceImpl implements HouseResourceService {
throw new RuntimeException("房源id不能为空");
}
houseResourceMapper.updateHouseResource(dto.getHouseResource());
dto.getHouseResourceAssociationObjects().forEach(x -> {
if (Objects.isNull(x.getId())) {
x.setId(UUID.randomUUID().toString().replaceAll("-", ""));
x.setHouseResourceId(dto.getHouseResource().getId());
houseResourceAssociationObjectMapper.insertHouseResourceObjectAssociation(x);
for (GridCompany gridCompany : dto.getCompanyList()) {
if (!StringUtils.hasText(gridCompany.getId())) {
AjaxResult result = gridCompanyService.add(gridCompany);
if (result.isSuccess()) {
String id = result.get("data").toString();
HouseResourceAssociationObject houseResourceAssociationObject = new HouseResourceAssociationObject();
houseResourceAssociationObject.setId(UUID.randomUUID().toString().replaceAll("-", ""));
houseResourceAssociationObject.setHouseResourceId(dto.getHouseResource().getId());
houseResourceAssociationObject.setBusinessId(id);
houseResourceAssociationObject.setType(1);
houseResourceAssociationObjectMapper.insertHouseResourceObjectAssociation(houseResourceAssociationObject);
}
} else {
HouseResourceAssociationObject houseResourceAssociationObject = houseResourceAssociationObjectMapper.selectHouseResourceObjectAssociationById(x.getId());
houseResourceAssociationObject.setOperateType(2);
houseResourceAssociationObject.setRelieveTime(new Date());
houseResourceAssociationObjectMapper.updateHouseResourceObjectAssociation(houseResourceAssociationObject);
gridCompanyService.edit(gridCompany);
}
}
for (GridShop gridShop : dto.getShopList()) {
if (Objects.isNull(gridShop.getId())) {
AjaxResult result = null;
try {
result = gridShopService.addGridShop(gridShop);
} catch (Exception e) {
throw new RuntimeException("新增shop出错");
}
if (result.isSuccess()) {
String id = result.get("data").toString();
HouseResourceAssociationObject houseResourceAssociationObject = new HouseResourceAssociationObject();
houseResourceAssociationObject.setId(UUID.randomUUID().toString().replaceAll("-", ""));
houseResourceAssociationObject.setHouseResourceId(dto.getHouseResource().getId());
houseResourceAssociationObject.setBusinessId(id);
houseResourceAssociationObject.setType(2);
houseResourceAssociationObjectMapper.insertHouseResourceObjectAssociation(houseResourceAssociationObject);
}
} else {
try {
gridShopService.updateGridShop(gridShop);
} catch (Exception e) {
throw new RuntimeException("更新shop出错");
}
}
}
});
}
@Override
......
......@@ -6,20 +6,18 @@
<result property="type" column="type" jdbcType="INTEGER"/>
<result property="houseResourceId" column="house_resource_id" jdbcType="VARCHAR"/>
<result property="businessId" column="business_id" jdbcType="VARCHAR"/>
<result property="operateType" column="operate_type" jdbcType="INTEGER"/>
<result property="relieveTime" column="relieve_time" jdbcType="TIMESTAMP"/>
</resultMap>
<insert id="insertHouseResourceObjectAssociation" parameterType="com.ruoyi.system.domain.house.HouseResourceAssociationObject">
INSERT INTO house_resource_association_object
(id, type, house_resource_id, business_id, operate_type, relieve_time)
(id, type, house_resource_id, business_id)
VALUES
(#{id,jdbcType=VARCHAR}, #{type,jdbcType=INTEGER},
#{houseResourceId,jdbcType=VARCHAR}, #{businessId,jdbcType=VARCHAR}, #{operateType,jdbcType=INTEGER}, #{relieveTime,jdbcType=TIMESTAMP})
#{houseResourceId,jdbcType=VARCHAR}, #{businessId,jdbcType=VARCHAR})
</insert>
<select id="selectHouseResourceObjectAssociationById" parameterType="String" resultType="com.ruoyi.system.domain.house.HouseResourceAssociationObject">
SELECT id, type, house_resource_id, business_id, operate_type, relieve_time
SELECT id, type, house_resource_id, business_id
FROM house_resource_association_object
WHERE id = #{id}
</select>
......@@ -28,9 +26,7 @@
UPDATE house_resource_association_object
SET type = #{type,jdbcType=INTEGER},
house_resource_id = #{houseResourceId,jdbcType=VARCHAR},
business_id = #{businessId,jdbcType=VARCHAR},
operate_type = #{operateType,jdbcType=INTEGER},
relieve_time = #{relieveTime,jdbcType=TIMESTAMP}
business_id = #{businessId,jdbcType=VARCHAR}
WHERE id = #{id,jdbcType=VARCHAR}
</update>
......@@ -38,15 +34,13 @@
DELETE FROM house_resource_association_object
WHERE id = #{id}
</delete>
<delete id="deleteByHouseResourceId">
DELETE FROM house_resource_association_object
WHERE house_resource_id = #{houseResourceId}
</delete>
<select id="selectHouseResourceObjectAssociationByHouseResourceIdType"
resultType="com.ruoyi.system.domain.house.HouseResourceAssociationObject">
SELECT id, type, house_resource_id, business_id, operate_type, relieve_time
FROM house_resource_association_object where house_resource_id = #{houseResourceId} and type = #{type} and operate_type = 1
</select>
<select id="selectHouseResourceObjectAssociationLog"
resultType="com.ruoyi.system.domain.house.HouseResourceAssociationObject">
SELECT id, type, house_resource_id, business_id, operate_type, relieve_time
FROM house_resource_association_object where house_resource_id = #{houseResourceId} and type = #{type} and operate_type = #{operateType}
SELECT id, type, house_resource_id, business_id WHERE house_resource_id = #{houseResourceId} and type = #{type}
</select>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment