Browse Source

物业项目管理删除dept等字段的处理

hotfix/yujt_opt
zhangyuan 6 years ago
parent
commit
8d3cca5815
  1. 72
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/group/dao/GroupDao.java
  2. 30
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/group/entity/GroupEntity.java
  3. 56
      epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/project/service/impl/PropertyProjectServiceImpl.java
  4. 6
      epdc-cloud-property/src/main/resources/mapper/group/GroupDao.xml

72
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/group/dao/GroupDao.java

@ -41,110 +41,100 @@ import java.util.Map;
public interface GroupDao extends BaseDao<GroupEntity> {
/**
*
* 社群列表
*
* @params [params]
* @return java.util.List<com.elink.esua.epdc.dto.group.GroupDTO>
* @params [params]
* @author liuchuang
* @since 2019/10/11 14:54
*/
List<GroupManagementDTO> selectListOfGroups(Map<String, Object> params);
/**
*
* 查询社群名称重复数量
*
* @params [gridId, groupName]
* @return java.lang.Long
* @params [gridId, groupName]
* @author liuchuang
* @since 2019/10/17 16:38
*/
Long selectListOfRepeatGroupName(Long gridId, String groupName);
/**
*
* 社群审核详情信息
*
* @params [id]
* @return com.elink.esua.epdc.dto.group.GroupDetailDTO
* @params [id]
* @author liuchuang
* @since 2019/10/21 10:32
*/
GroupDetailDTO selectOneOfGroupDetail(String id);
/**
*
* 移动端-我的群列表
*
* @params [formDTO]
* @return java.util.List<com.elink.esua.epdc.dto.group.result.GroupsOfMineResultDTO>
* @params [formDTO]
* @author liuchuang
* @since 2019/10/21 17:08
*/
List<GroupsOfMineResultDTO> selectListGroupsOfMine(GroupsOfMineFormDTO formDto);
/**
*
* 移动端-推荐群列表
*
* @params [formDto]
* @return java.util.List<com.elink.esua.epdc.dto.group.result.GroupsOfRecommendResultDTO>
* @params [formDto]
* @author liuchuang
* @since 2019/10/22 13:45
*/
List<GroupsOfRecommendResultDTO> selectListGroupsOfRecommend(GroupsOfMineFormDTO formDto);
/**
*
* 移动端-社群详情
*
* @params [formDto]
* @return com.elink.esua.epdc.dto.group.result.GroupDetailForMobileEndResultDTO
* @params [formDto]
* @author liuchuang
* @since 2019/10/22 15:02
*/
GroupDetailForMobileEndResultDTO selectOneOfGroupDetailForMobileEnd(GroupDetailForMobileEndFormDTO formDto);
/**
*
* 获取网格下所有社群
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.group.GroupListDTO>
* @params [deptId]
* @author liuchuang
* @since 2019/11/12 9:35
*/
List<GroupListDTO> selectListOfGroupByGridId(Long deptId);
/**
*
* 排行榜-活跃度
*
* @params [params]
* @return com.elink.esua.epdc.commons.tools.page.PageData<com.elink.esua.epdc.dto.group.GroupActivityDTO>
* @params [params]
* @author liuchuang
* @since 2019/11/12 16:14
*/
List<GroupActivityDTO> selectListOfGroupOrderByActivity(Map<String, Object> params);
/**
*
* 排行榜-群成员数量
*
* @params [params]
* @return com.elink.esua.epdc.commons.tools.page.PageData<com.elink.esua.epdc.dto.group.GroupMemberDTO>
* @params [params]
* @author liuchuang
* @since 2019/11/12 16:14
*/
List<GroupMemberDTO> selectListOfGroupOrderByMember(Map<String, Object> params);
/**
*
* 根据网格ID获取网格党员群
*
* @params [gridId]
* @return com.elink.esua.epdc.dto.group.GroupDTO
* @params [gridId]
* @author liuchuang
* @since 2019/11/20 22:54
*/
@ -157,58 +147,64 @@ public interface GroupDao extends BaseDao<GroupEntity> {
* @Description 查询已经建立党员群的网格id
* @Date 2019/12/19 13:08
**/
List<String> listPartyMemberGridId();
/**
* @Description: 根据社群id查询群主手机号
* @Param: [groupId]
* @return: java.lang.String
* @Author: zy
* @Date: 2020-01-08
*/
String queryGroupUserMOBILE(String groupId);
List<String> listPartyMemberGridId();
/**
* @Description: 根据社群id查询群主手机号
* @Param: [groupId]
* @return: java.lang.String
* @Author: zy
* @Date: 2020-01-08
*/
String queryGroupUserMOBILE(String groupId);
/**
*
* 查询需要修改组织机构信息邻里党群
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.group.GroupDTO>
* @params [deptId]
* @author liuchuang
* @since 2020/3/7 2:08
*/
List<GroupDTO> selectListOfOrganizationInfo(String deptId);
/**
*
* 更新网格名称
*
* @params [newDeptName, deptId]
* @return void
* @params [newDeptName, deptId]
* @author liuchuang
* @since 2020/3/7 1:20
*/
void updateGridByDeptId(String newDeptName, Long deptId);
/**
*
* 查询需要修改名称的党员群
*
* @params [deptId]
* @return java.util.List<com.elink.esua.epdc.dto.group.GroupDTO>
* @params [deptId]
* @author liuchuang
* @since 2020/3/7 2:08
*/
List<GroupDTO> selectListOfPartyGroups(String deptId);
/**
*
* 逻辑删除群组
*
* @params [ProjectIds]
* @return int
* @params [ProjectIds]
* @author zhangyuan
* @since 2020/5/12 2:08
*/
int deleteGroupByProjectIds(@Param("projectIds") List<String> projectIds);
/**
* 更新群名称
*
* @return void
* @params [newDeptName, deptId]
* @author zhangyuan
* @since 2020/5/13 1:20
*/
void updateGroupNameByDeptId(@Param("groupName") String groupName, @Param("projectIds") String projectIds);
}

30
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/group/entity/GroupEntity.java

@ -20,6 +20,7 @@ package com.elink.esua.epdc.modules.group.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity;
import com.elink.esua.epdc.commons.mybatis.entity.DeptScope;
import lombok.Data;
import lombok.EqualsAndHashCode;
@ -34,7 +35,7 @@ import java.util.Date;
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("epdc_group")
public class GroupEntity extends BaseEpdcEntity {
public class GroupEntity extends DeptScope {
private static final long serialVersionUID = 1L;
@ -57,11 +58,12 @@ public class GroupEntity extends BaseEpdcEntity {
* 社群类别 0党员群1自建群
*/
private String groupCategory;
/**
* 物业项目ID
*/
private String propertyProjectId;
//
// /**
// * 物业项目ID
// */
// private String propertyProjectId;
private String referenceBusinessId;
// /**
// * 区
@ -92,22 +94,6 @@ public class GroupEntity extends BaseEpdcEntity {
// * 社区ID
// */
// private Long communityId;
/**
* 父所有部门ID
*/
private String parentDeptIds;
/**
* 父所有部门
*/
private String parentDeptNames;
/**
* 所有部门ID
*/
private String allDeptIds;
/**
* 所有部门
*/
private String allDeptNames;
/**
* 网格

56
epdc-cloud-property/src/main/java/com/elink/esua/epdc/modules/project/service/impl/PropertyProjectServiceImpl.java

@ -58,6 +58,9 @@ public class PropertyProjectServiceImpl extends BaseServiceImpl<PropertyProjectD
@Autowired
private PropertyProjectRedis propertyProjectRedis;
@Autowired
private AdminFeignClient adminFeignClient;
@Resource
private GroupDao groupDao;
@ -93,8 +96,6 @@ public class PropertyProjectServiceImpl extends BaseServiceImpl<PropertyProjectD
return ConvertUtils.sourceToTarget(entity, PropertyProjectDTO.class);
}
@Autowired
private AdminFeignClient adminFeignClient;
/**
* 根据网格ID获取冗余的组织机构信息
@ -120,7 +121,6 @@ public class PropertyProjectServiceImpl extends BaseServiceImpl<PropertyProjectD
public void save(PropertyProjectDTO dto) {
PropertyProjectEntity entity = ConvertUtils.sourceToTarget(dto, PropertyProjectEntity.class);
ParentAndAllDeptDTO parentAndAllDeptDTO = getParentAndAllDeptDTO(dto.getGridId());
//保存用户居住地所在网格,及其他冗余字段。
@ -129,26 +129,20 @@ public class PropertyProjectServiceImpl extends BaseServiceImpl<PropertyProjectD
entity
);
entity.setGrid(parentAndAllDeptDTO.getGrid());
entity = gridInfo(entity);
entity.setDelFlag("0");
baseDao.insert(entity);
// 创建物业项目的同时创建群
GroupEntity groupEntity = new GroupEntity();
groupEntity.setPropertyProjectId(entity.getId());
DeptEntityUtils.loadDeptInfo(
ConvertUtils.sourceToTarget(parentAndAllDeptDTO, DeptEntityUtils.DeptDto.class),
groupEntity
);
groupEntity.setReferenceBusinessId(entity.getId());
groupEntity.setGroupAvatar(avatarUrl);
groupEntity.setGroupName(entity.getProjectName() + "群");
groupEntity.setGroupCategory("2");
groupEntity.setGrid(entity.getGrid());
groupEntity.setGridId(Long.parseLong(entity.getGridId()));
groupEntity.setDelFlag("0");
groupEntity.setCreatedBy(entity.getCreatedBy());
groupEntity.setCreatedTime(entity.getCreatedTime());
groupEntity.setAllDeptIds(entity.getAllDeptIds());
groupEntity.setAllDeptNames(entity.getAllDeptNames());
groupEntity.setParentDeptIds(entity.getParentDeptIds());
groupEntity.setParentDeptNames(entity.getParentDeptNames());
groupDao.insert(groupEntity);
}
@ -156,8 +150,18 @@ public class PropertyProjectServiceImpl extends BaseServiceImpl<PropertyProjectD
@Transactional(rollbackFor = Exception.class)
public void update(PropertyProjectDTO dto) {
PropertyProjectEntity entity = ConvertUtils.sourceToTarget(dto, PropertyProjectEntity.class);
entity = gridInfo(entity);
ParentAndAllDeptDTO parentAndAllDeptDTO = getParentAndAllDeptDTO(dto.getGridId());
//保存用户居住地所在网格,及其他冗余字段。
DeptEntityUtils.loadDeptInfo(
ConvertUtils.sourceToTarget(parentAndAllDeptDTO, DeptEntityUtils.DeptDto.class),
entity
);
entity.setGrid(parentAndAllDeptDTO.getGrid());
updateById(entity);
String groupName = entity.getProjectName() + "群";
groupDao.updateGroupNameByDeptId(groupName, entity.getId());
}
@Override
@ -168,26 +172,4 @@ public class PropertyProjectServiceImpl extends BaseServiceImpl<PropertyProjectD
groupDao.deleteGroupByProjectIds(Arrays.asList(ids));
}
/**
* 处理级联选择器的网格信息
*
* @param entity
* @return
*/
private PropertyProjectEntity gridInfo(PropertyProjectEntity entity) {
String[] deptIds = entity.getAllDeptIds().trim().replaceAll("]", "").replaceAll("\\[", "").replaceAll("\"", "").replaceAll("'", "").split(",");
String[] deptNames = entity.getAllDeptNames().trim().split("/");
String[] parentDeptIds = Arrays.copyOf(deptIds, deptIds.length - 1);
String[] parentDeptNames = Arrays.copyOf(deptNames, deptNames.length - 1);
if (deptIds.length > 0 && deptNames.length > 0) {
entity.setGridId(deptIds[0]);
entity.setGrid(deptNames[0]);
entity.setAllDeptIds(StringUtils.join(deptIds, ","));
entity.setAllDeptNames(StringUtils.join(deptNames, "-"));
entity.setParentDeptIds(StringUtils.join(parentDeptIds, ","));
entity.setParentDeptNames(StringUtils.join(parentDeptNames, "-"));
}
return entity;
}
}

6
epdc-cloud-property/src/main/resources/mapper/group/GroupDao.xml

@ -409,9 +409,13 @@ ORDER BY
<update id="deleteGroupByProjectIds">
UPDATE epdc_group SET DEL_FLAG = '1', UPDATED_TIME = NOW() WHERE
PROPERTY_PROJECT_ID in
REFERENCE_BUSINESS_ID in
<foreach item="projectIds" collection="projectIds" open="(" separator="," close=")">
#{projectIds}
</foreach>
</update>
<update id="updateGroupNameByDeptId">
UPDATE epdc_group SET GROUP_NAME = #{groupName}, UPDATED_TIME = NOW() WHERE REFERENCE_BUSINESS_ID = #{projectIds}
</update>
</mapper>

Loading…
Cancel
Save