|
@ -1,4 +1,5 @@ |
|
|
package com.epmet.service.impl; |
|
|
package com.epmet.service.impl; |
|
|
|
|
|
import java.util.Date; |
|
|
|
|
|
|
|
|
import cn.afterturn.easypoi.excel.entity.TemplateExportParams; |
|
|
import cn.afterturn.easypoi.excel.entity.TemplateExportParams; |
|
|
import com.alibaba.excel.EasyExcel; |
|
|
import com.alibaba.excel.EasyExcel; |
|
@ -24,8 +25,12 @@ import com.epmet.dao.*; |
|
|
import com.epmet.dto.*; |
|
|
import com.epmet.dto.*; |
|
|
import com.epmet.dto.form.*; |
|
|
import com.epmet.dto.form.*; |
|
|
import com.epmet.dto.result.*; |
|
|
import com.epmet.dto.result.*; |
|
|
|
|
|
import com.epmet.entity.IcHouseChangeDetailEntity; |
|
|
|
|
|
import com.epmet.entity.IcHouseChangeRecordEntity; |
|
|
import com.epmet.entity.IcHouseEntity; |
|
|
import com.epmet.entity.IcHouseEntity; |
|
|
|
|
|
import com.epmet.enums.HouseChangeEnums; |
|
|
import com.epmet.enums.HousePurposeEnums; |
|
|
import com.epmet.enums.HousePurposeEnums; |
|
|
|
|
|
import com.epmet.enums.HouseRentFlagEnums; |
|
|
import com.epmet.enums.HouseTypeEnums; |
|
|
import com.epmet.enums.HouseTypeEnums; |
|
|
import com.epmet.feign.EpmetCommonServiceOpenFeignClient; |
|
|
import com.epmet.feign.EpmetCommonServiceOpenFeignClient; |
|
|
import com.epmet.feign.EpmetUserOpenFeignClient; |
|
|
import com.epmet.feign.EpmetUserOpenFeignClient; |
|
@ -91,6 +96,10 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { |
|
|
private CustomerAgencyDao customerAgencyDao; |
|
|
private CustomerAgencyDao customerAgencyDao; |
|
|
@Autowired |
|
|
@Autowired |
|
|
private CustomerGridDao customerGridDao; |
|
|
private CustomerGridDao customerGridDao; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private IcHouseChangeRecordService changeRecordService; |
|
|
|
|
|
@Autowired |
|
|
|
|
|
private IcHouseChangeDetailService changeDetailService; |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
@ -134,13 +143,96 @@ public class HouseServiceImpl implements HouseService, ResultDataResolver { |
|
|
icHouseDTO.setId(formDTO.getHouseId()); |
|
|
icHouseDTO.setId(formDTO.getHouseId()); |
|
|
icHouseDTO.setCustomerId(customerId); |
|
|
icHouseDTO.setCustomerId(customerId); |
|
|
icHouseDTO.setRentFlag(formDTO.getRentFlag()); |
|
|
icHouseDTO.setRentFlag(formDTO.getRentFlag()); |
|
|
|
|
|
icHouseDTO.setHouseTypeName(HouseTypeEnums.getTypeValue(formDTO.getHouseType())); |
|
|
|
|
|
icHouseDTO.setPurposeName(HousePurposeEnums.getTypeValue(formDTO.getPurpose())); |
|
|
|
|
|
icHouseDTO.setRentName(HouseRentFlagEnums.getTypeValue(formDTO.getRentFlag())); |
|
|
//设置
|
|
|
//设置
|
|
|
icHouseDTO.setHouseName(getHouseName(formDTO)); |
|
|
icHouseDTO.setHouseName(getHouseName(formDTO)); |
|
|
|
|
|
houseChangeRecord(formDTO.getHouseId(), customerId, icHouseDTO); |
|
|
icHouseService.update(icHouseDTO); |
|
|
icHouseService.update(icHouseDTO); |
|
|
//删除房屋缓存
|
|
|
//删除房屋缓存
|
|
|
icHouseRedis.delHouseInfo(formDTO.getHouseId(),customerId); |
|
|
icHouseRedis.delHouseInfo(formDTO.getHouseId(),customerId); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
public void houseChangeRecord(String houseId, String customerId, IcHouseDTO houseDTO){ |
|
|
|
|
|
IcHouseEntity entity = icHouseService.selectById(houseId); |
|
|
|
|
|
if (null == entity){ |
|
|
|
|
|
throw new EpmetException("不存在此房屋..."); |
|
|
|
|
|
} |
|
|
|
|
|
StringBuilder sbBefore = new StringBuilder(); |
|
|
|
|
|
StringBuilder sbAfter = new StringBuilder(); |
|
|
|
|
|
List<IcHouseChangeDetailEntity> entityList = new ArrayList<>(); |
|
|
|
|
|
if (!houseDTO.getHouseType().equals(entity.getHouseType())){ |
|
|
|
|
|
sbAfter.append(HouseChangeEnums.HOUSE_TYPE.getColumnName()).append(":").append(houseDTO.getHouseTypeName()).append(";"); |
|
|
|
|
|
sbBefore.append(HouseChangeEnums.HOUSE_TYPE.getColumnName()).append(":").append(HouseTypeEnums.getTypeValue(entity.getHouseType())).append(";"); |
|
|
|
|
|
IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); |
|
|
|
|
|
e.setChangeCol(HouseChangeEnums.HOUSE_TYPE.getColumn()); |
|
|
|
|
|
e.setChangeBefore(HouseTypeEnums.getTypeValue(entity.getHouseType())); |
|
|
|
|
|
e.setChangeAfter(houseDTO.getHouseTypeName()); |
|
|
|
|
|
entityList.add(e); |
|
|
|
|
|
} |
|
|
|
|
|
if (!houseDTO.getPurpose().equals(entity.getPurpose())){ |
|
|
|
|
|
sbAfter.append(HouseChangeEnums.PURPOSE.getColumnName()).append(":").append(houseDTO.getPurposeName()).append(";"); |
|
|
|
|
|
sbBefore.append(HouseChangeEnums.PURPOSE.getColumnName()).append(":").append(HousePurposeEnums.getTypeValue(entity.getPurpose())).append(";"); |
|
|
|
|
|
IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); |
|
|
|
|
|
e.setChangeCol(HouseChangeEnums.PURPOSE.getColumn()); |
|
|
|
|
|
e.setChangeAfter(houseDTO.getPurposeName()); |
|
|
|
|
|
e.setChangeBefore(HousePurposeEnums.getTypeValue(entity.getPurpose())); |
|
|
|
|
|
entityList.add(e); |
|
|
|
|
|
} |
|
|
|
|
|
if (!houseDTO.getRentFlag().equals(entity.getRentFlag())){ |
|
|
|
|
|
sbAfter.append(HouseChangeEnums.RENT_FLAG.getColumnName()).append(":").append(houseDTO.getRentName()).append(";"); |
|
|
|
|
|
sbBefore.append(HouseChangeEnums.RENT_FLAG.getColumnName()).append(":").append(HouseRentFlagEnums.getTypeValue(entity.getRentFlag())).append(";"); |
|
|
|
|
|
IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); |
|
|
|
|
|
e.setChangeCol(HouseChangeEnums.RENT_FLAG.getColumn()); |
|
|
|
|
|
e.setChangeAfter(houseDTO.getRentName()); |
|
|
|
|
|
e.setChangeBefore(HouseRentFlagEnums.getTypeValue(entity.getRentFlag())); |
|
|
|
|
|
entityList.add(e); |
|
|
|
|
|
} |
|
|
|
|
|
if (!houseDTO.getOwnerName().equals(entity.getOwnerName())){ |
|
|
|
|
|
sbAfter.append(HouseChangeEnums.OWNER_NAME.getColumnName()).append(":").append(houseDTO.getOwnerName()).append(";"); |
|
|
|
|
|
sbBefore.append(HouseChangeEnums.OWNER_NAME.getColumnName()).append(":").append(entity.getOwnerName()).append(";"); |
|
|
|
|
|
IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); |
|
|
|
|
|
e.setChangeCol(HouseChangeEnums.OWNER_NAME.getColumn()); |
|
|
|
|
|
e.setChangeAfter(houseDTO.getOwnerName()); |
|
|
|
|
|
e.setChangeBefore(entity.getOwnerName()); |
|
|
|
|
|
entityList.add(e); |
|
|
|
|
|
} |
|
|
|
|
|
if (!houseDTO.getOwnerPhone().equals(entity.getOwnerPhone())){ |
|
|
|
|
|
sbAfter.append(HouseChangeEnums.OWNER_PHONE.getColumnName()).append(":").append(houseDTO.getOwnerPhone()).append(";"); |
|
|
|
|
|
sbBefore.append(HouseChangeEnums.OWNER_PHONE.getColumnName()).append(":").append(entity.getOwnerPhone()).append(";"); |
|
|
|
|
|
IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); |
|
|
|
|
|
e.setChangeCol(HouseChangeEnums.OWNER_PHONE.getColumn()); |
|
|
|
|
|
e.setChangeAfter(houseDTO.getOwnerPhone()); |
|
|
|
|
|
e.setChangeBefore(entity.getOwnerPhone()); |
|
|
|
|
|
entityList.add(e); |
|
|
|
|
|
} |
|
|
|
|
|
if (!houseDTO.getOwnerIdCard().equals(entity.getOwnerIdCard())){ |
|
|
|
|
|
sbAfter.append(HouseChangeEnums.OWNER_ID_CARD.getColumnName()).append(":").append(houseDTO.getOwnerIdCard()).append(";"); |
|
|
|
|
|
sbBefore.append(HouseChangeEnums.OWNER_ID_CARD.getColumnName()).append(":").append(entity.getOwnerIdCard()).append(";"); |
|
|
|
|
|
IcHouseChangeDetailEntity e = new IcHouseChangeDetailEntity(); |
|
|
|
|
|
e.setChangeCol(HouseChangeEnums.OWNER_ID_CARD.getColumn()); |
|
|
|
|
|
e.setChangeAfter(houseDTO.getOwnerIdCard()); |
|
|
|
|
|
e.setChangeBefore(entity.getOwnerIdCard()); |
|
|
|
|
|
entityList.add(e); |
|
|
|
|
|
} |
|
|
|
|
|
if (StringUtils.isNotBlank(sbAfter)){ |
|
|
|
|
|
String before = sbBefore.substring(NumConstant.ZERO, sbBefore.length() - NumConstant.ONE); |
|
|
|
|
|
String after = sbAfter.substring(NumConstant.ZERO, sbAfter.length() - NumConstant.ONE); |
|
|
|
|
|
HouseAgencyInfoResultDTO houseAgencyInfo = icHouseDao.getHouseAgencyInfo(houseId); |
|
|
|
|
|
IcHouseChangeRecordEntity recordEntity = ConvertUtils.sourceToTarget(houseAgencyInfo, IcHouseChangeRecordEntity.class); |
|
|
|
|
|
recordEntity.setCustomerId(customerId); |
|
|
|
|
|
recordEntity.setChangeBefore(before); |
|
|
|
|
|
recordEntity.setChangeAfter(after); |
|
|
|
|
|
changeRecordService.insert(recordEntity); |
|
|
|
|
|
entityList.forEach(e -> { |
|
|
|
|
|
e.setCustomerId(customerId); |
|
|
|
|
|
e.setRecordId(recordEntity.getId()); |
|
|
|
|
|
}); |
|
|
|
|
|
changeDetailService.insertBatch(entityList); |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
@Override |
|
|
@Override |
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
public void update2Rent(RentHouseFormDTO formDTO) { |
|
|
public void update2Rent(RentHouseFormDTO formDTO) { |
|
|