Browse Source

事件管理_评价

dev
sunyuchao 3 years ago
parent
commit
2395fb7af2
  1. 8
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/IcEventAddEditFormDTO.java
  2. 11
      epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/IcEventReplyFormDTO.java
  3. 17
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/IcEventController.java
  4. 15
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/IcEventService.java
  5. 29
      epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/IcEventServiceImpl.java

8
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/IcEventAddEditFormDTO.java

@ -1,10 +1,12 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.validator.group.AddGroup;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.hibernate.validator.constraints.Length;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.List;
@ -47,6 +49,12 @@ public class IcEventAddEditFormDTO implements Serializable {
*/
@NotBlank(message = "反映渠道不能为空", groups = {AddGroup.class})
private String sourceType;
/**
* 发生时间
*/
@NotNull(message = "发生时间不能为空", groups = {AddGroup.class})
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String happenTime;
/**
* 事件内容
*/

11
epmet-module/gov-project/gov-project-client/src/main/java/com/epmet/dto/form/IcEventReplyFormDTO.java

@ -1,5 +1,6 @@
package com.epmet.dto.form;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import com.epmet.commons.tools.validator.group.UpdateGroup;
import lombok.Data;
@ -14,11 +15,13 @@ import java.io.Serializable;
public class IcEventReplyFormDTO implements Serializable {
private static final long serialVersionUID = 1L;
public interface Comment extends CustomerClientShowGroup {
}
/**
* 事件ID
*/
@NotBlank(message = "事件ID不能为空", groups = {UpdateGroup.class})
@NotBlank(message = "事件ID不能为空", groups = {UpdateGroup.class, Comment.class})
private String icEventId;
/**
* 二类分类Id
@ -37,6 +40,12 @@ public class IcEventReplyFormDTO implements Serializable {
*/
private String status;
/**
* 满意度 - 不满意:bad基本满意:good非常满意:perfect
*/
@NotBlank(message = "满意度不能为空", groups = {Comment.class})
private String satisfaction;
private String customerId;
private String userId;

17
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/controller/IcEventController.java

@ -15,11 +15,6 @@ import com.epmet.commons.tools.validator.group.UpdateGroup;
import com.epmet.dto.IcEventDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.*;
import com.epmet.dto.form.demand.ReportDemandFormDTO;
import com.epmet.dto.result.IcEventListResultDTO;
import com.epmet.dto.result.IcEventMonthlyIncrementResultDTO;
import com.epmet.dto.result.IcEventResultDTO;
import com.epmet.dto.result.ProcessStatusRatioResultDTO;
import com.epmet.service.IcEventService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@ -197,6 +192,18 @@ public class IcEventController {
return new Result<List<IcEventCategoryAnalysisResDTO>>().ok(list);
}
/**
* @Author sun
* @Description 事件管理-评价
**/
@PostMapping("comment")
public Result comment(@LoginUser TokenDto tokenDto, @RequestBody IcEventReplyFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, IcEventReplyFormDTO.Comment.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setUserId(tokenDto.getUserId());
icEventService.comment(formDTO);
return new Result();
}

15
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/IcEventService.java

@ -4,20 +4,11 @@ import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.IcEventDTO;
import com.epmet.dto.form.*;
import com.epmet.dto.result.IcEventListResultDTO;
import com.epmet.dto.result.IcEventMonthlyIncrementResultDTO;
import com.epmet.dto.result.IcEventResultDTO;
import com.epmet.dto.result.ProcessStatusRatioResultDTO;
import com.epmet.dto.form.IcEventAddEditFormDTO;
import com.epmet.dto.form.IcEventCategoryAnalysisFormDTO;
import com.epmet.dto.form.IcEventListFormDTO;
import com.epmet.dto.form.IcEventReplyFormDTO;
import com.epmet.dto.result.*;
import com.epmet.entity.IcEventEntity;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 事件管理表
@ -128,4 +119,10 @@ public interface IcEventService extends BaseService<IcEventEntity> {
* @return
*/
List<IcEventCategoryAnalysisResDTO> categoryAnalysisTotal(IcEventCategoryAnalysisFormDTO formDTO);
/**
* @Author sun
* @Description 事件管理-评价
**/
void comment(IcEventReplyFormDTO formDTO);
}

29
epmet-module/gov-project/gov-project-server/src/main/java/com/epmet/service/impl/IcEventServiceImpl.java

@ -229,7 +229,6 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
IcEventEntity entity = ConvertUtils.sourceToTarget(formDTO, IcEventEntity.class);
entity.setAgencyId(gridInfo.getPid());
entity.setGridPids(gridInfo.getPids());
entity.setHappenTime(new Date());
entity.setLatestOperatedTime(new Date());
entity.setAuditStatus(TopicConstant.AUTO_PASSED);
insert(entity);
@ -612,6 +611,7 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
* @Description 事件管理-转需求
**/
@Override
@Transactional(rollbackFor = Exception.class)
public void icEventToDemand(IcDemandFormDTO formDTO) {
//1.查询事件数据
IcEventEntity entity = baseDao.selectById(formDTO.getIcEventId());
@ -636,7 +636,6 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
}
/**
* 事件分类分析-一级分类下事件数量
*
@ -664,4 +663,30 @@ public class IcEventServiceImpl extends BaseServiceImpl<IcEventDao, IcEventEntit
return result;
}
/**
* @Author sun
* @Description 事件管理-评价
**/
@Override
@Transactional(rollbackFor = Exception.class)
public void comment(IcEventReplyFormDTO formDTO) {
//1.查询事件是否存在
IcEventEntity entity = baseDao.selectById(formDTO.getIcEventId());
if (null == entity || !"closed_case".equals(entity.getStatus()) || StringUtils.isNotBlank(entity.getSatisfaction())) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "不允许评价,事件不存在或还未办结");
}
//2.判断当前评价人是否是事件创建人
if (!formDTO.getUserId().equals(entity.getCreatedBy())) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "不允许评价,当前评价人不是事件创建人");
}
//3.修改事件数据
entity.setCommentUserId(formDTO.getUserId());
entity.setSatisfaction(formDTO.getSatisfaction());
entity.setCommentTime(new Date());
baseDao.updateById(entity);
}
}
Loading…
Cancel
Save