Browse Source

项目消息列表接口开发及相关

dev
李鹏飞 6 years ago
parent
commit
ef4267045b
  1. 11
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java
  2. 9
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkItemFeignClient.java
  3. 4
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkItemFeignClientFallback.java
  4. 8
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkItemService.java
  5. 4
      esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkItemServiceImpl.java
  6. 23
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ItemInformationConstant.java
  7. 39
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemInformationFormDTO.java
  8. 59
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemInformationResultDTO.java
  9. 4
      esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemStatisticsResultDTO.java
  10. 16
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/WorkItemController.java
  11. 58
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemInformationDao.java
  12. 73
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/entity/ItemInformationEntity.java
  13. 55
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemInformationService.java
  14. 75
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemInformationServiceImpl.java
  15. 80
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java
  16. 20
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml
  17. 43
      esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemInformationDao.xml

11
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/controller/ApiWorkItemController.java

@ -109,4 +109,15 @@ public class ApiWorkItemController {
return workItemService.processList(dto);
}
/**
* 项目消息列表
* @Params: [ formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping("notice")
public Result<List<ItemInformationResultDTO>> notice(@RequestBody ItemInformationFormDTO formDto) {
return workItemService.notice(formDto);
}
}

9
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/WorkItemFeignClient.java

@ -100,5 +100,14 @@ public interface WorkItemFeignClient {
*/
@GetMapping(value = "events/work/item/processList", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto) ;
/**
* 项目消息列表
* @Params: [ItemProcessFormDTO]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
@GetMapping(value = "events/work/item/notice", consumes = MediaType.APPLICATION_JSON_VALUE)
Result<List<ItemInformationResultDTO>> notice(ItemInformationFormDTO formDto) ;
}

4
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/feign/fallback/WorkItemFeignClientFallback.java

@ -56,5 +56,9 @@ public class WorkItemFeignClientFallback implements WorkItemFeignClient {
public Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "processList", dto);
}
@Override
public Result<List<ItemInformationResultDTO>> notice(ItemInformationFormDTO formDto) {
return ModuleUtils.feignConError(ServiceConstant.EPDC_EVENTS_SERVER, "notice", formDto);
}
}

8
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/WorkItemService.java

@ -80,6 +80,14 @@ public interface WorkItemService {
* @Date: 2019/11/19 16:34
*/
Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto);
/**
* 项目消息列表
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result
* @Author: lipengfei
* @Date: 2019/11/19 16:34
*/
Result<List<ItemInformationResultDTO>> notice(ItemInformationFormDTO formDto);
}

4
esua-epdc/epdc-module/epdc-api/epdc-api-server/src/main/java/com/elink/esua/epdc/service/impl/WorkItemServiceImpl.java

@ -73,5 +73,9 @@ public class WorkItemServiceImpl implements WorkItemService {
public Result<List<ItemHandleProgressResultDTO>> processList(ItemProcessFormDTO dto) {
return workItemFeignClient.processList(dto);
}
@Override
public Result<List<ItemInformationResultDTO>> notice(ItemInformationFormDTO formDto) {
return workItemFeignClient.notice(formDto);
}
}

23
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/constant/ItemInformationConstant.java

@ -0,0 +1,23 @@
package com.elink.esua.epdc.constant;
/**
* 项目消息用常量
* @Author Lpf
* @Date 2019/11/20 17:07
*/
public interface ItemInformationConstant {
/**
* 消息类型 0-项目
*/
int INFORMATION_TYPE_ITEM = 0;
/**
* 是否已读 1-
*/
String READ_FLAG_YES = "1";
/**
* 是否已读 0-
*/
String READ_FLAG_NO = "0";
}

39
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/form/ItemInformationFormDTO.java

@ -0,0 +1,39 @@
package com.elink.esua.epdc.dto.item.form;
import lombok.Data;
import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Date;
/**
* @Author LC
* @Date 2019/9/9 16:24
*/
@Data
public class ItemInformationFormDTO implements Serializable {
private static final long serialVersionUID = -3034807666143092535L;
/**
* 部门ID
*/
@NotNull(message = "用户网格ID不能为空")
private Long deptId;
/**
* 页码从1开始
*/
@Min(value = 1, message = "页码必须大于0")
private int pageIndex;
/**
* 页容量默认20页
*/
@Min(value = 1, message = "每页条数必须大于必须大于0")
private int pageSize = 20;
/**
* 第一页查询发起时的时间
*/
@NotBlank(message = "时间戳不能为空")
private String timestamp;
}

59
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemInformationResultDTO.java

@ -0,0 +1,59 @@
package com.elink.esua.epdc.dto.item.result;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* 项目消息列表DTO
* @Author LC
* @Date 2019/9/9 16:25
*/
@Data
public class ItemInformationResultDTO implements Serializable {
private static final long serialVersionUID = -2494874960456321677L;
/**
* 消息类型 0-项目
*/
private Integer type;
/**
* 处理意见内部
*/
private String handleAdvice;
/**
* 消息所属业务类型 0 -回应1 -吹哨5 -关闭10- 结案
*/
private Integer businessType;
/**
* 消息所属业务ID(查看详情用)
*/
private String associatedBusinessId;
/**
* 消息关联业务内容议题的评论评论的回复等
*/
private String associatedBusinessContent;
/**
* 处理部门
*/
private String handleDept;
/**
* 被吹哨部门多个以逗号分隔
*/
private String whistleDept;
/**
* 创建时间
*/
private String createdTime;
}

4
esua-epdc/epdc-module/epdc-events/epdc-events-client/src/main/java/com/elink/esua/epdc/dto/item/result/ItemStatisticsResultDTO.java

@ -24,5 +24,9 @@ public class ItemStatisticsResultDTO implements Serializable {
* 已关闭数量
*/
private String closedNum;
/**
* 消息数量
*/
private String noticeNum;
}

16
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/controller/WorkItemController.java

@ -11,6 +11,7 @@ import com.elink.esua.epdc.dto.item.result.*;
import com.elink.esua.epdc.modules.feign.AdminFeignClient;
import com.elink.esua.epdc.modules.item.service.ItemDeptService;
import com.elink.esua.epdc.modules.item.service.ItemEvaluateDeptService;
import com.elink.esua.epdc.modules.item.service.ItemInformationService;
import com.elink.esua.epdc.modules.item.service.ItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -33,6 +34,9 @@ public class WorkItemController {
private ItemEvaluateDeptService itemEvaluateDeptService;
@Autowired
private ItemDeptService itemDeptService;
@Autowired
private ItemInformationService itemInformationService;
/**
@ -59,6 +63,18 @@ public class WorkItemController {
ValidatorUtils.validateEntity(formDto);
return this.itemService.listItemsByWork(formDto);
}
/**
* 项目消息列表--移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
@GetMapping("notice")
public Result<List<ItemInformationResultDTO>> notice(@RequestBody ItemInformationFormDTO formDto) {
ValidatorUtils.validateEntity(formDto);
return this.itemInformationService.notice(formDto);
}
/**
* 项目详情--移动app端用
* @Params: [formDto]

58
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/dao/ItemInformationDao.java

@ -0,0 +1,58 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.item.dao;
import com.elink.esua.epdc.commons.mybatis.dao.BaseDao;
import com.elink.esua.epdc.dto.item.form.ItemFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemInformationFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemInformationResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.entity.ItemInformationEntity;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
/**
* 项目消息表
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-09-06
*/
@Mapper
public interface ItemInformationDao extends BaseDao<ItemInformationEntity> {
/**
* 移动端-项目消息列表
* @Params: [formDto]
* @Return: java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>
* @Author: liuchuang
* @Date: 2019/9/9 16:50
*/
List<ItemInformationResultDTO> selectNoticeListOfItems(ItemInformationFormDTO formDto);
/**
* 修改消息已读标识
*
* @Params: [formDto]
* @return: int
* @author: lipengfei
* @date: 2019/11/21 15:59
*/
int updateInformationReadFlag(ItemInformationFormDTO formDto);
}

73
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/entity/ItemInformationEntity.java

@ -0,0 +1,73 @@
package com.elink.esua.epdc.modules.item.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.elink.esua.epdc.commons.mybatis.entity.BaseEpdcEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.io.Serializable;
/**
* 项目消息Form DTO
* @Author Lpf
* @Date 2019/11/20 19:01
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("epdc_item_information")
public class ItemInformationEntity extends BaseEpdcEntity {
private static final long serialVersionUID = 1L;
/**
* 部门ID
*/
private String deptId;
/**
* 消息类型 0-项目
*/
private Integer type;
/**
* 处理意见内部
*/
private String handleAdvice;
/**
* 消息所属业务类型 0 -回应1 -吹哨5 -关闭10- 结案
*/
private Integer businessType;
/**
* 消息所属业务ID(查看详情用)
*/
private String associatedBusinessId;
/**
* 消息关联业务内容议题的评论评论的回复等
*/
private String associatedBusinessContent;
/**
* 处理部门ID
*/
private Long handleDeptId;
/**
* 处理部门
*/
private String handleDept;
/**
* 被吹哨部门多个以逗号分隔
*/
private String whistleDept;
/**
* 被吹哨部门多个以逗号分隔
*/
private String readFlag;
}

55
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/ItemInformationService.java

@ -0,0 +1,55 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.item.service;
import com.elink.esua.epdc.commons.mybatis.service.BaseService;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.dto.item.form.ItemInformationFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemInformationResultDTO;
import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.entity.ItemInformationEntity;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* 项目消息
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-09-06
*/
public interface ItemInformationService extends BaseService<ItemInformationEntity> {
/**
* 批量删除
*
* @param ids
* @return void
* @author
* @date
*/
void delete(String[] ids);
/**
* 项目消息列表--移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/11/19 16:46
*/
Result<List<ItemInformationResultDTO>> notice(ItemInformationFormDTO formDto);
}

75
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemInformationServiceImpl.java

@ -0,0 +1,75 @@
/**
* Copyright 2018 人人开源 https://www.renren.io
* <p>
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.
* <p>
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
* <p>
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
package com.elink.esua.epdc.modules.item.service.impl;
import com.elink.esua.epdc.commons.mybatis.service.impl.BaseServiceImpl;
import com.elink.esua.epdc.commons.tools.constant.NumConstant;
import com.elink.esua.epdc.commons.tools.utils.DateUtils;
import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.constant.EventIssueItemState;
import com.elink.esua.epdc.dto.item.form.ItemFormDTO;
import com.elink.esua.epdc.dto.item.form.ItemInformationFormDTO;
import com.elink.esua.epdc.dto.item.result.ItemInformationResultDTO;
import com.elink.esua.epdc.dto.item.result.ItemResultDTO;
import com.elink.esua.epdc.modules.item.dao.ItemHandleProcessDao;
import com.elink.esua.epdc.modules.item.dao.ItemInformationDao;
import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.entity.ItemInformationEntity;
import com.elink.esua.epdc.modules.item.service.ItemHandleProcessService;
import com.elink.esua.epdc.modules.item.service.ItemInformationService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
/**
* 项目消息
*
* @author qu qu@elink-cn.com
* @since v1.0.0 2019-09-06
*/
@Service
public class ItemInformationServiceImpl extends BaseServiceImpl<ItemInformationDao, ItemInformationEntity> implements ItemInformationService {
@Override
@Transactional(rollbackFor = Exception.class)
public void delete(String[] ids) {
// 逻辑删除(@TableLogic 注解)
baseDao.deleteBatchIds(Arrays.asList(ids));
}
/**
* 项目列表-移动app端用
* @Params: [formDto]
* @Return: com.elink.esua.epdc.commons.tools.utils.Result<java.util.List<com.elink.esua.epdc.dto.item.result.ItemResultDTO>>
* @Author: lipengfei
* @Date: 2019/10/19 16:47
*/
@Override
public Result<List<ItemInformationResultDTO>> notice(ItemInformationFormDTO formDto){
int pageIndex = (formDto.getPageIndex() - NumConstant.ONE) * formDto.getPageSize();
formDto.setPageIndex(pageIndex);
// 更新已读标识
baseDao.updateInformationReadFlag(formDto);
// 查询项目消息列表
List<ItemInformationResultDTO> data = baseDao.selectNoticeListOfItems(formDto);
return new Result<List<ItemInformationResultDTO>>().ok(data);
}
}

80
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/java/com/elink/esua/epdc/modules/item/service/impl/ItemServiceImpl.java

@ -33,6 +33,7 @@ import com.elink.esua.epdc.commons.tools.utils.Result;
import com.elink.esua.epdc.constant.EventIssueItemState;
import com.elink.esua.epdc.constant.EventsNoticeConstant;
import com.elink.esua.epdc.constant.ImageConstant;
import com.elink.esua.epdc.constant.ItemInformationConstant;
import com.elink.esua.epdc.constants.MenuCodeConstant;
import com.elink.esua.epdc.dto.CompleteDeptDTO;
import com.elink.esua.epdc.dto.MenuNoticeDTO;
@ -55,10 +56,8 @@ import com.elink.esua.epdc.modules.issue.service.IssueService;
import com.elink.esua.epdc.modules.item.dao.ItemDao;
import com.elink.esua.epdc.modules.item.entity.ItemEntity;
import com.elink.esua.epdc.modules.item.entity.ItemHandleProcessEntity;
import com.elink.esua.epdc.modules.item.service.ItemDeptService;
import com.elink.esua.epdc.modules.item.service.ItemEvaluateDeptService;
import com.elink.esua.epdc.modules.item.service.ItemHandleProcessService;
import com.elink.esua.epdc.modules.item.service.ItemService;
import com.elink.esua.epdc.modules.item.entity.ItemInformationEntity;
import com.elink.esua.epdc.modules.item.service.*;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -86,6 +85,9 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
@Autowired
private ItemHandleProcessService itemHandleProcessService;
@Autowired
private ItemInformationService itemInformationService;
@Autowired
private ItemEvaluateDeptService itemEvaluateDeptService;
@ -461,6 +463,7 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
return new Result<List<ItemHandleProgressResultDTO>>().ok(data);
}
@Override
@Transactional(rollbackFor = Exception.class)
public Result modifyHandleResult(ItemHandleSubmitFormDTO dto) {
@ -552,6 +555,75 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem
itemEntity.setLastHandleTime(new Date());
baseDao.updateById(itemEntity);
//业务部门消息处理
ItemInformationEntity itemInfoDto = new ItemInformationEntity();
// 消息类型
itemInfoDto.setType(ItemInformationConstant.INFORMATION_TYPE_ITEM);
// 消息所属业务类型
itemInfoDto.setBusinessType(dto.getHandleCategory());
// 项目id
itemInfoDto.setAssociatedBusinessId(dto.getId());
// 项目内容
itemInfoDto.setAssociatedBusinessContent(entity.getItemContent());
// 处理部门Id(操作者所属部门)
itemInfoDto.setHandleDeptId(user.getDeptId());
// 处理部门(操作者所属部门)
itemInfoDto.setHandleDept(user.getDeptName());
// 处理意见(仅内部)
itemInfoDto.setHandleAdvice(dto.getHandleAdvice());
// 读取标识(默认未读:0)
itemInfoDto.setReadFlag(ItemInformationConstant.READ_FLAG_NO);
// 回应处理
if (ItemHandleCategoryEnum.HANDLE_I_HANDLE.getValue() == dto.getHandleCategory()) {
// 社区党工委和街道党工委处理
if (OrganizationTypeConstant.ORG_TYPE_COMMUNITY_PARTY.equals(user.getTypeKey()) || OrganizationTypeConstant.ORG_TYPE_STREET_PARTY.equals(user.getTypeKey())) {
//插入项目消息表(仅网格)
// 通知部门Id(网格)
itemInfoDto.setDeptId(entity.getGridId().toString());
itemInformationService.insert(itemInfoDto);
// 社区党工委和街道党工委处理
} else if (OrganizationTypeConstant.ORG_TYPE_STREET_DEPT.equals(user.getTypeKey()) || OrganizationTypeConstant.ORG_TYPE_DISTRICT_DEPT.equals(user.getTypeKey())) {
// 街道部门和区直部门
//插入项目消息表(网格和街道)
// 通知部门Id(网格)
itemInfoDto.setDeptId(entity.getGridId().toString());
itemInformationService.insert(itemInfoDto);
//修改通知部门Id(街道Id)
itemInfoDto.setDeptId(entity.getStreetId().toString());
itemInformationService.insert(itemInfoDto);
}
// 吹哨处理
}else if (ItemHandleCategoryEnum.HANDLE_CIRCULATION_ASSISTANCE.getValue() == dto.getHandleCategory()) {
List<ItemCirculationDeptResultDTO> deptList = dto.getDeptResultDTOS();
// 拼接被吹哨部门Id
String whistlDept = "";
for (int i =0; i < deptList.size(); i++) {
ItemCirculationDeptResultDTO indexDto = (ItemCirculationDeptResultDTO)deptList.get(i);
if (i == 0) {
whistlDept += indexDto.getDeptId();
} else {
whistlDept += (",".concat(indexDto.getDeptId().toString()));
}
}
itemInfoDto.setWhistleDept(whistlDept);
// 遍历被吹哨部门插入项目消息表
for (ItemCirculationDeptResultDTO itemDto : deptList) {
// 通知部门Id(被吹哨部门)
itemInfoDto.setDeptId(itemDto.getDeptId().toString());
itemInformationService.insert(itemInfoDto);
}
// 关闭和结案处理
} else {
// 查询已吹哨部门
List<Long> oldDeptIds = itemDeptService.listOfWhistlingDeptIds(dto.getId(), SecurityUser.getDeptId());
// 遍历被吹哨部门插入项目消息表
for (Long itemDeptId : oldDeptIds) {
// 通知部门Id(被吹哨部门)
itemInfoDto.setDeptId(itemDeptId.toString());
itemInformationService.insert(itemInfoDto);
}
}
// 发送消息
newsTask.insertUserInformation(informationFormDTO);

20
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemDao.xml

@ -659,7 +659,7 @@
SELECT
pendingTable.pendingHandleNum,
closingTable.closingCaseNum,
closedTable.closedNum
closedTable.closedNum,
FROM
(
SELECT
@ -720,5 +720,23 @@
AND dept.DEPT_ID = #{deptId}
</if>
) closedTable ON pendingTable.keystr = closedTable.keystr
INNER JOIN (
SELECT
'ITEM_COUNT' AS keystr,
COUNT( * ) AS noticeNum
FROM
epdc_item_information information
WHERE
information.DEL_FLAG = '0'
AND information.DEPT_ID IN
<foreach item="deptIdItem" collection="deptIdList" open="(" separator="," close=")">
#{deptIdItem}
</foreach>
<if test='deptId != null and deptId != ""'>
AND information.DEPT_ID = #{deptId}
</if>
) noticeTable ON pendingTable.keystr = noticeTable.keystr
</select>
</mapper>

43
esua-epdc/epdc-module/epdc-events/epdc-events-server/src/main/resources/mapper/item/ItemInformationDao.xml

@ -0,0 +1,43 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.elink.esua.epdc.modules.item.dao.ItemInformationDao">
<resultMap id="itemsInformationMap" type="com.elink.esua.epdc.dto.item.result.ItemInformationResultDTO">
<result property="type" column="TYPE"/>
<result property="businessType" column="BUSINESS_TYPE"/>
<result property="handleDept" column="HANDLE_DEPT"/>
<result property="handleAdvice" column="HANDLE_ADVICE"/>
<result property="whistleDept" column="WHISTLE_DEPT"/>
<result property="associatedBusinessId" column="ASSOCIATED_BUSINESS_ID"/>
<result property="associatedBusinessContent" column="ASSOCIATED_BUSINESS_CONTENT"/>
<result property="createdTime" column="CREATED_TIME"/>
</resultMap>
<select id="selectNoticeListOfItems" resultMap="itemsInformationMap">
SELECT
TYPE,
BUSINESS_TYPE,
ASSOCIATED_BUSINESS_ID,
ASSOCIATED_BUSINESS_CONTENT,
HANDLE_DEPT,
HANDLE_ADVICE,
WHISTLE_DEPT,
CREATED_TIME
FROM
epdc_item_information information
WHERE
information.DEL_FLAG = '0'
AND information.READ_FLAG = '1'
AND information.DEPT_ID = #{deptId}
<if test="timestamp != null">
<![CDATA[ AND DATE_FORMAT(information.CREATED_TIME,'%Y-%m-%d %H:%i:%s') <= ]]> #{timestamp}
</if>
ORDER BY
information.CREATED_TIME DESC
LIMIT #{pageIndex},#{pageSize}
</select>
<update id="updateInformationReadFlag">
UPDATE epdc_item_information SET READ_FLAG = '1' WHERE DEPT_ID = #{deptId} AND DEL_FLAG = '0'
</update>
</mapper>
Loading…
Cancel
Save