Browse Source

Merge remote-tracking branch 'origin/dev_zhili' into dev_zhili

dev
sunyuchao 3 years ago
parent
commit
bbed121475
  1. 6
      epmet-admin/epmet-admin-server/src/main/resources/db/migration/V0.0.16__self_org_category.sql
  2. 43
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectManageListFormDTO.java
  3. 82
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectManageListResultDTO.java
  4. 14
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java
  5. 7
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java
  6. 8
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java
  7. 51
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java
  8. 6
      epmet-module/gov-project/gov-project-server/src/main/resources/db/migration/V0.0.22__add_project_and_process.sql
  9. 25
      epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

6
epmet-admin/epmet-admin-server/src/main/resources/db/migration/V0.0.16__self_org_category.sql

@ -0,0 +1,6 @@
INSERT INTO `epmet_admin`.`sys_dict_type` (`id`, `dict_type`, `dict_name`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1526493468551626753', 'self_org_category', '社区自组织类别', '社区自组织类别:文化队伍、楼委会、老友俱乐部、治安巡逻队、其他', 1, 0, 0, '1', '2022-05-17 17:22:58', '1', '2022-05-17 17:22:58');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1526495882432299010', 1526493468551626753, '楼委会', 'lwh', '0', '楼委会', 2, 0, 0, '1', '2022-05-17 17:32:34', '1', '2022-05-17 17:32:34');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1526495969778679810', 1526493468551626753, '老友俱乐部', 'lyjlb', '0', '老友俱乐部', 3, 0, 0, '1', '2022-05-17 17:32:55', '1', '2022-05-17 17:32:55');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1526496168622243842', 1526493468551626753, '其他', 'other', '0', '其他', 5, 0, 0, '1', '2022-05-17 17:33:42', '1', '2022-05-17 17:33:51');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1526495766724034562', 1526493468551626753, '文化队伍', 'whdw', '0', '文化队伍', 1, 0, 0, '1', '2022-05-17 17:32:06', '1', '2022-05-17 17:32:40');
INSERT INTO `epmet_admin`.`sys_dict_data` (`id`, `dict_type_id`, `dict_label`, `dict_value`, `dict_p_value`, `remark`, `sort`, `DEL_FLAG`, `REVISION`, `CREATED_BY`, `CREATED_TIME`, `UPDATED_BY`, `UPDATED_TIME`) VALUES ('1526496054369402882', 1526493468551626753, '治安巡逻队', 'zaxld', '0', '治安巡逻队', 4, 0, 0, '1', '2022-05-17 17:33:15', '1', '2022-05-17 17:33:24');

43
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/ProjectManageListFormDTO.java

@ -0,0 +1,43 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.dto.form.PageFormDTO;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Author zxc
* @DateTime 2022/5/17 14:14
* @DESC
*/
@Data
public class ProjectManageListFormDTO extends PageFormDTO implements Serializable {
private static final long serialVersionUID = -3317804468566708838L;
public interface ProjectManageListForm{}
/**
* 标题
*/
private String title;
/**
* 转项目开始日期eg20220505
*/
private String startDate;
/**
* 转项目结束日期eg20220505
*/
private String endDate;
/**
* all全部closed已关闭pending待处理
*/
@NotBlank(message = "status不能为空",groups = ProjectManageListForm.class)
private String status;
private String userId;
}

82
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/result/ProjectManageListResultDTO.java

@ -0,0 +1,82 @@
package com.epmet.dto.result;
import com.epmet.commons.tools.constant.NumConstant;
import lombok.Data;
import java.io.Serializable;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* @Author zxc
* @DateTime 2022/5/17 14:27
* @DESC
*/
@Data
public class ProjectManageListResultDTO implements Serializable {
private static final long serialVersionUID = 2374701362057175388L;
/**
* 所顺网格
*/
private String gridName;
private String gridId;
/**
* 项目ID
*/
private String projectId;
/**
* 项目标题
*/
private String title;
/**
* 转项目时间
*/
private String shiftProjectTime;
/**
* 项目方案
*/
private String projectScheme;
/**
* 内部备注
*/
private String internalRemark;
/**
* 滞留天数
*/
private Integer detentionDays;
/**
* 状态
*/
private String status;
private String statusValue;
/**
* 处理部门
*/
private List<String> departmentNameList;
private Date updatedTime;
private String isHandle;
public ProjectManageListResultDTO() {
this.gridName = "";
this.title = "";
this.shiftProjectTime = "";
this.projectScheme = "";
this.internalRemark = "";
this.detentionDays = NumConstant.ZERO;
this.status = "";
this.departmentNameList = new ArrayList<>();
this.projectId = "";
}
}

14
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/ProjectController.java

@ -336,4 +336,18 @@ public class ProjectController {
public Result<ProjectAuditResetResultDTO> eventAuditReset(@RequestParam("gridId")String gridId){
return new Result<ProjectAuditResetResultDTO>().ok(projectService.eventAuditReset(gridId));
}
/**
* Desc: 列表项目管理
* @param tokenDto
* @param formDTO
* @author zxc
* @date 2022/5/17 14:19
*/
@PostMapping("project-list")
public Result<PageData> projectList(@LoginUser TokenDto tokenDto,ProjectManageListFormDTO formDTO){
ValidatorUtils.validateEntity(formDTO, ProjectManageListFormDTO.ProjectManageListForm.class);
formDTO.setUserId(tokenDto.getUserId());
return new Result<PageData>().ok(projectService.projectList(formDTO));
}
}

7
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/dao/ProjectDao.java

@ -21,10 +21,7 @@ import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.EventProjectInfoDTO;
import com.epmet.dto.ProjectDTO;
import com.epmet.dto.ProjectStaffDTO;
import com.epmet.dto.form.LatestListFormDTO;
import com.epmet.dto.form.PatrolProjectFormDTO;
import com.epmet.dto.form.ProjectListFromDTO;
import com.epmet.dto.form.ShiftProjectsFromDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.entity.ProjectEntity;
import org.apache.ibatis.annotations.Mapper;
@ -300,4 +297,6 @@ public interface ProjectDao extends BaseDao<ProjectEntity> {
*/
Integer selectEventStatus(@Param("gridId") String gridId);
List<ProjectManageListResultDTO> getProjectManageList(ProjectManageListFormDTO formDTO);
}

8
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/ProjectService.java

@ -385,4 +385,12 @@ public interface ProjectService extends BaseService<ProjectEntity> {
*/
ProjectAuditResetResultDTO eventAuditReset(String gridId);
/**
* Desc: 列表项目管理
* @param formDTO
* @author zxc
* @date 2022/5/17 14:19
*/
PageData projectList(ProjectManageListFormDTO formDTO);
}

51
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/ProjectServiceImpl.java

@ -32,6 +32,7 @@ import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.CustomerOrgRedis;
import com.epmet.commons.tools.redis.common.CustomerStaffRedis;
import com.epmet.commons.tools.redis.common.bean.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.scan.param.TextScanParamDTO;
import com.epmet.commons.tools.scan.param.TextTaskDTO;
import com.epmet.commons.tools.scan.result.SyncScanResult;
@ -3170,6 +3171,56 @@ public class ProjectServiceImpl extends BaseServiceImpl<ProjectDao, ProjectEntit
return result;
}
/**
* Desc: 列表项目管理,包括 待我处理的项目我发起的项目我参与的项目
* @param formDTO
* @author zxc
* @date 2022/5/17 14:19
*/
@Override
public PageData<ProjectManageListResultDTO> projectList(ProjectManageListFormDTO formDTO) {
PageData<ProjectManageListResultDTO> result = new PageData<>(new ArrayList<>(),NumConstant.ZERO);
int pageIndex = (formDTO.getPageNo() - NumConstant.ONE) * formDTO.getPageSize();
formDTO.setPageNo(pageIndex);
List<ProjectManageListResultDTO> projectManageList = baseDao.getProjectManageList(formDTO);
if (CollectionUtils.isNotEmpty(projectManageList)){
// 获取滞留天数
Integer days = getDays(ConvertUtils.sourceToTarget(formDTO, ProjectListFromDTO.class));
projectManageList.forEach(p -> {
// 所属网格赋值
if (StringUtils.isNotBlank(p.getGridId())){
GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(p.getGridId());
if (null == gridInfo){
throw new EpmetException("未查询到网格信息"+p.getGridId());
}
p.setGridName(gridInfo.getGridNamePath());
}
// 获取当前处理部门
List<String> departmentNameList = new ArrayList<>();
if (ProjectConstant.CLOSED.equals(p.getStatus())) {
p.setDepartmentNameList(departmentNameList);
p.setDetentionDays(NumConstant.ZERO);
} else {
ProjectDTO projectDTO = ConvertUtils.sourceToTarget(p, ProjectDTO.class);
projectDTO.setId(p.getProjectId());
if (p.getIsHandle().equals("unhandled")){
String detentionDays = getDetentionDays(projectDTO);
if (!ONE_DAY.equals(detentionDays) && Integer.parseInt(detentionDays) > days) {
p.setDetentionDays(Integer.valueOf(detentionDays));
} else {
p.setDetentionDays(Integer.valueOf(detentionDays));
}
}
departmentNameList = baseDao.selectDepartmentNameList(projectDTO);
p.setDepartmentNameList(departmentNameList);
}
});
result.setTotal(projectManageList.size());
result.setList(projectManageList);
}
return result;
}
/**
* @Description 区间项目分类数量处理
* 查询的是时间段内的分类项目数查询的时间 是传入一个日期拼上时间在进行比较大小

6
epmet-module/gov-project/gov-project-server/src/main/resources/db/migration/V0.0.22__add_project_and_process.sql

@ -0,0 +1,6 @@
ALTER TABLE `project_process` ADD COLUMN `ASSISTANCE_UNIT_ID` VARCHAR(32) COMMENT '协办单位ID' AFTER `staff_id`;
ALTER TABLE `project_process` ADD COLUMN `ASSISTANCE_UNIT_TYPE` VARCHAR(1) COMMENT '协办单位类型,1社区自组织,2联建单位' AFTER `ASSISTANCE_UNIT_ID`;
ALTER TABLE `project` ADD COLUMN `GRID_ID` VARCHAR(32) DEFAULT'' COMMENT '网格ID' AFTER `AGENCY_ID`;

25
epmet-module/gov-project/gov-project-server/src/main/resources/mapper/ProjectDao.xml

@ -564,4 +564,29 @@
AND p.status = 'pending'
ORDER BY psp.created_time, p.created_time ASC<!-- 先按滞留时间降序再按创建时间升序 -->
</select>
<!-- -->
<select id="getProjectManageList" resultType="com.epmet.dto.result.ProjectManageListResultDTO">
SELECT
p.TITLE,
p.GRID_ID,
(CASE WHEN p.STATUS = 'closed' THEN '已结案' ELSE '未结案' END) AS statusValue,
p.STATUS,
p.CREATED_TIME AS shiftProjectTime,
ps.IS_HANDLE,
ps.CREATED_TIME AS updatedTime,
t.* FROM
(SELECT
DISTINCT pp.PROJECT_ID,
pp.INTERNAL_REMARK,
pp.PUBLIC_REPLY AS projectScheme
FROM project_process pp
WHERE DEL_FLAG = '0'
AND pp.STAFF_ID = #{userId}
ORDER BY pp.CREATED_TIME DESC) t
INNER JOIN project p ON p.ID = t.PROJECT_ID AND p.DEL_FLAG = '0'
LEFT JOIN project_staff ps ON ps.PROJECT_ID = t.PROJECT_ID AND ps.DEL_FLAG = '0'
GROUP BY t.PROJECT_ID
LIMIT #{pageNo}, #{pageSize}
</select>
</mapper>
Loading…
Cancel
Save