Browse Source

物业管理,管理小区

master
yinzuomei 2 years ago
parent
commit
96a1c8e628
  1. 4
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPropertyManagementDTO.java
  2. 7
      epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java
  3. 14
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/PropertyManagementController.java
  4. 7
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/PropertyManagementService.java
  5. 78
      epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java
  6. 2
      epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodPropertyDao.xml

4
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/IcPropertyManagementDTO.java

@ -25,6 +25,7 @@ import lombok.Data;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import java.util.List;
/** /**
@ -79,6 +80,9 @@ public class IcPropertyManagementDTO implements Serializable {
@ColumnWidth(60) @ColumnWidth(60)
private String neighborHoodNames; private String neighborHoodNames;
@ExcelIgnore
List<IcNeighborHoodDTO> neighborHoodList;
/** /**
* 删除标识 0未删除1已删除 * 删除标识 0未删除1已删除
*/ */

7
epmet-module/gov-org/gov-org-client/src/main/java/com/epmet/dto/form/IcPropertyManagementFormDTO.java

@ -24,6 +24,7 @@ import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank; import javax.validation.constraints.NotBlank;
import java.io.Serializable; import java.io.Serializable;
import java.util.List;
@Data @Data
@ -64,6 +65,12 @@ public class IcPropertyManagementFormDTO extends PageFormDTO implements Serializ
@Length(max = 30, message = "联系电话不能超过30个字",groups = {AddShowGroup.class, UpdateShowGroup.class}) @Length(max = 30, message = "联系电话不能超过30个字",groups = {AddShowGroup.class, UpdateShowGroup.class})
private String contactMobile; private String contactMobile;
/**
* 管理小区id
*/
private List<String> neighborHoodIdList;
private String customerId; private String customerId;
} }

14
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/controller/PropertyManagementController.java

@ -42,6 +42,7 @@ import com.epmet.service.PropertyManagementService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.io.IOUtils; import org.apache.commons.io.IOUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.IndexedColors; import org.apache.poi.ss.usermodel.IndexedColors;
import org.apache.poi.ss.usermodel.VerticalAlignment; import org.apache.poi.ss.usermodel.VerticalAlignment;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
@ -211,6 +212,19 @@ public class PropertyManagementController {
} }
} }
/**
* 获取物业详情
*
* @param id
* @return
*/
@PostMapping("detail/{id}")
public Result<IcPropertyManagementDTO> getDetail(@PathVariable("id") String id) {
if (StringUtils.isBlank(id)) {
return new Result<>();
}
return new Result<IcPropertyManagementDTO>().ok(propertyManagementService.getDetail(id));
}

7
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/PropertyManagementService.java

@ -55,4 +55,11 @@ public interface PropertyManagementService {
String contactName, String contactName,
String contactMobile, String contactMobile,
String queryType); String queryType);
/**
* 查看物业详情
* @param id
* @return
*/
IcPropertyManagementDTO getDetail(String id);
} }

78
epmet-module/gov-org/gov-org-server/src/main/java/com/epmet/service/impl/PropertyManagementServiceImpl.java

@ -35,6 +35,9 @@ import java.util.stream.Collectors;
@Service @Service
public class PropertyManagementServiceImpl implements PropertyManagementService { public class PropertyManagementServiceImpl implements PropertyManagementService {
/**
* 物业表
*/
@Resource @Resource
private IcPropertyManagementDao icPropertyManagementDao; private IcPropertyManagementDao icPropertyManagementDao;
@Resource @Resource
@ -62,43 +65,68 @@ public class PropertyManagementServiceImpl implements PropertyManagementService
/** /**
* 新增物业 * 新增物业
* 名称客户下唯一 * 名称客户下唯一
*
* @param formDTO * @param formDTO
* @return * @return
*/ */
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public String add(IcPropertyManagementFormDTO formDTO) { public String add(IcPropertyManagementFormDTO formDTO) {
//物业名字平台内唯一 // 物业名字平台内唯一
//如果输入的物业名字已经存在,直接返回物业id // 如果输入的物业名字已经存在,直接返回物业id
formDTO.setName(formDTO.getName().trim()); formDTO.setName(formDTO.getName().trim());
IcPropertyManagementEntity entity = icPropertyManagementDao.selectByName(formDTO.getCustomerId(),formDTO.getName(),null); IcPropertyManagementEntity entity = icPropertyManagementDao.selectByName(formDTO.getCustomerId(), formDTO.getName(), null);
if (null != entity) { if (null != entity) {
return entity.getId(); throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "物业名称已存在", "物业名称已存在");
} }
IcPropertyManagementEntity icPropertyManagementEntity = ConvertUtils.sourceToTarget(formDTO, IcPropertyManagementEntity.class); IcPropertyManagementEntity icPropertyManagementEntity = ConvertUtils.sourceToTarget(formDTO, IcPropertyManagementEntity.class);
icPropertyManagementDao.insert(icPropertyManagementEntity); icPropertyManagementDao.insert(icPropertyManagementEntity);
if (CollectionUtils.isNotEmpty(formDTO.getNeighborHoodIdList())) {
formDTO.getNeighborHoodIdList().forEach(neighborHoodId -> {
// 插入小区物业关系表
IcNeighborHoodPropertyEntity neighborHoodPropertyEntity = new IcNeighborHoodPropertyEntity();
neighborHoodPropertyEntity.setPropertyId(icPropertyManagementEntity.getId());
neighborHoodPropertyEntity.setNeighborHoodId(neighborHoodId);
icNeighborHoodPropertyDao.insert(neighborHoodPropertyEntity);
});
}
return icPropertyManagementEntity.getId(); return icPropertyManagementEntity.getId();
} }
/** /**
* 物业管理-修改 * 物业管理-修改
*
* @param formDTO * @param formDTO
*/ */
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public void update(IcPropertyManagementFormDTO formDTO) { public void update(IcPropertyManagementFormDTO formDTO) {
IcPropertyManagementEntity entity = icPropertyManagementDao.selectByName(EpmetRequestHolder.getLoginUserCustomerId(),formDTO.getName(),formDTO.getId()); IcPropertyManagementEntity entity = icPropertyManagementDao.selectByName(EpmetRequestHolder.getLoginUserCustomerId(), formDTO.getName(), formDTO.getId());
if (null != entity) { if (null != entity) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(),"物业名称已存在","物业名称已存在"); throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "物业名称已存在", "物业名称已存在");
}
LambdaUpdateWrapper<IcPropertyManagementEntity> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.eq(IcPropertyManagementEntity::getId, formDTO.getId())
.set(IcPropertyManagementEntity::getName, formDTO.getName())
.set(IcPropertyManagementEntity::getContactName, formDTO.getContactName())
.set(IcPropertyManagementEntity::getContactMobile, formDTO.getContactMobile())
.set(IcPropertyManagementEntity::getUpdatedTime, new Date())
.set(IcPropertyManagementEntity::getUpdatedBy, EpmetRequestHolder.getLoginUserId());
icPropertyManagementDao.update(null, updateWrapper);
if (CollectionUtils.isNotEmpty(formDTO.getNeighborHoodIdList())) {
formDTO.getNeighborHoodIdList().forEach(neighborHoodId -> {
LambdaQueryWrapper<IcNeighborHoodPropertyEntity> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(IcNeighborHoodPropertyEntity::getPropertyId, formDTO.getId())
.eq(IcNeighborHoodPropertyEntity::getNeighborHoodId, neighborHoodId);
if (icNeighborHoodPropertyDao.selectCount(queryWrapper) < 1) {
// 插入小区物业关系表
IcNeighborHoodPropertyEntity neighborHoodPropertyEntity = new IcNeighborHoodPropertyEntity();
neighborHoodPropertyEntity.setPropertyId(formDTO.getId());
neighborHoodPropertyEntity.setNeighborHoodId(neighborHoodId);
icNeighborHoodPropertyDao.insert(neighborHoodPropertyEntity);
}
});
} }
LambdaUpdateWrapper<IcPropertyManagementEntity> updateWrapper=new LambdaUpdateWrapper<>();
updateWrapper.eq(IcPropertyManagementEntity::getId,formDTO.getId())
.set(IcPropertyManagementEntity::getName,formDTO.getName())
.set(IcPropertyManagementEntity::getContactName,formDTO.getContactName())
.set(IcPropertyManagementEntity::getContactMobile,formDTO.getContactMobile())
.set(IcPropertyManagementEntity::getUpdatedTime,new Date())
.set(IcPropertyManagementEntity::getUpdatedBy,EpmetRequestHolder.getLoginUserId());
icPropertyManagementDao.update(null,updateWrapper);
} }
/** /**
@ -140,11 +168,33 @@ public class PropertyManagementServiceImpl implements PropertyManagementService
.map(IcNeighborHoodDTO::getNeighborHoodName) .map(IcNeighborHoodDTO::getNeighborHoodName)
.distinct().collect(Collectors.toList()); .distinct().collect(Collectors.toList());
result.setNeighborHoodNames(CollectionUtils.isNotEmpty(neighborHoodList) ? StringUtils.join(neighborHoodNames, StrConstant.COMMA_ZH) : StrConstant.EPMETY_STR); result.setNeighborHoodNames(CollectionUtils.isNotEmpty(neighborHoodList) ? StringUtils.join(neighborHoodNames, StrConstant.COMMA_ZH) : StrConstant.EPMETY_STR);
result.setNeighborHoodList(neighborHoodList);
}); });
} }
return new PageData<>(list, pageInfo.getTotal(), pageSize); return new PageData<>(list, pageInfo.getTotal(), pageSize);
} }
/**
* 查看物业详情
*
* @param id
* @return
*/
@Override
public IcPropertyManagementDTO getDetail(String id) {
IcPropertyManagementEntity icPropertyManagementEntity = icPropertyManagementDao.selectById(id);
if (null == icPropertyManagementEntity) {
return null;
}
IcPropertyManagementDTO resultDto = ConvertUtils.sourceToTarget(icPropertyManagementEntity, IcPropertyManagementDTO.class);
List<IcNeighborHoodDTO> neighborHoodList = icNeighborHoodPropertyDao.getNeighborHoodList(id);
List<String> neighborHoodNames = neighborHoodList.stream()
.map(IcNeighborHoodDTO::getNeighborHoodName)
.distinct().collect(Collectors.toList());
resultDto.setNeighborHoodNames(CollectionUtils.isNotEmpty(neighborHoodList) ? StringUtils.join(neighborHoodNames, StrConstant.COMMA_ZH) : StrConstant.EPMETY_STR);
resultDto.setNeighborHoodList(neighborHoodList);
return resultDto;
}
} }

2
epmet-module/gov-org/gov-org-server/src/main/resources/mapper/IcNeighborHoodPropertyDao.xml

@ -21,7 +21,7 @@
h.NEIGHBOR_HOOD_NAME h.NEIGHBOR_HOOD_NAME
FROM FROM
ic_neighbor_hood_property p ic_neighbor_hood_property p
INNER JOIN ic_neighbor_hood h ON ( p.NEIGHBOR_HOOD_ID = h.ID ) INNER JOIN ic_neighbor_hood h ON ( p.NEIGHBOR_HOOD_ID = h.ID )
WHERE WHERE
p.PROPERTY_ID = #{propertyId} p.PROPERTY_ID = #{propertyId}
AND p.DEL_FLAG = '0' AND p.DEL_FLAG = '0'

Loading…
Cancel
Save