Browse Source

【红色代办】做了一点,提交一版

master
wxz 2 years ago
parent
commit
cc41cb420a
  1. 59
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/LingShanAgentServiceProcessStatusEnum.java
  2. 18
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/agentservice/WorkCloseAgentServiceFormDTO.java
  3. 35
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/lingshan/AgentServiceResiSubmitFormDTO.java
  4. 41
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/ResiMyCreatedAgentServiceResultDTO.java
  5. 25
      epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/WorkServiceAgentResultDTO.java
  6. 131
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/LingShanAgentServiceController.java
  7. 16
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceCategoryDao.java
  8. 16
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java
  9. 39
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/LingshanAgentServiceCategoryEntity.java
  10. 131
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/LingshanAgentServiceRecordEntity.java
  11. 20
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LingShanAgentServiceService.java
  12. 173
      epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java
  13. 20
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceCategoryDao.xml
  14. 39
      epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml
  15. 5
      epmet-user/epmet-user-client/src/main/java/com/epmet/constant/RoleKeyConstants.java

59
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/LingShanAgentServiceProcessStatusEnum.java

@ -0,0 +1,59 @@
package com.epmet;
/**
* @Description 红色待办-待办状态枚举
* @Author wangxianzhang
* @Time 2023/5/9 9:59 AM
*/
public enum LingShanAgentServiceProcessStatusEnum {
// 办理状态。0待受理,1已受理,2已驳回,3已办结,-1已撤回
WAIT_ACCEPT(0, "待受理"),
ACCEPTED(1, "已受理"),
REJECTED(2, "已驳回"),
CLOSED(3, "已办结"),
WITHDRAW(-1, "已撤回");
private int statusCode;
private String statusName;
LingShanAgentServiceProcessStatusEnum(int status, String name) {
this.statusCode = status;
this.statusName = name;
}
public static LingShanAgentServiceProcessStatusEnum getByStatus(int statusCode) {
for (LingShanAgentServiceProcessStatusEnum e : LingShanAgentServiceProcessStatusEnum.values()) {
if (e.statusCode == statusCode) {
return e;
}
}
return null;
}
public static LingShanAgentServiceProcessStatusEnum getByName(String statusName) {
for (LingShanAgentServiceProcessStatusEnum e : LingShanAgentServiceProcessStatusEnum.values()) {
if (e.statusName.equals(statusName)) {
return e;
}
}
return null;
}
public int getStatusCode() {
return statusCode;
}
public void setStatusCode(int statusCode) {
this.statusCode = statusCode;
}
public String getStatusName() {
return statusName;
}
public void setStatusName(String statusName) {
this.statusName = statusName;
}
}

18
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/agentservice/WorkCloseAgentServiceFormDTO.java

@ -0,0 +1,18 @@
package com.epmet.dto.form.agentservice;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.List;
/**
* 工作端代理服务办结
*/
@Data
public class WorkCloseAgentServiceFormDTO {
@NotBlank(message = "待办服务ID必填")
private String id;
private String processDesc;
private List<String> processAttachments;
}

35
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/form/lingshan/AgentServiceResiSubmitFormDTO.java

@ -0,0 +1,35 @@
package com.epmet.dto.form.lingshan;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
import java.util.List;
@Data
public class AgentServiceResiSubmitFormDTO {
public interface Create extends CustomerClientShowGroup {}
@NotBlank(message = "网格ID不能为空", groups = { Create.class })
private String gridId;
@NotBlank(message = "服务类别不能为空", groups = { Create.class })
private String serviceCategory;
@NotBlank(message = "详细说明不能为空", groups = { Create.class })
private String content;
@NotBlank(message = "预约服务地点不能为空", groups = { Create.class })
private String exceptServeAddress;
@NotBlank(message = "联系人不能为空", groups = { Create.class })
private String contactName;
@NotBlank(message = "联系电话不能为空", groups = { Create.class })
private String contactMobile;
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@NotNull(message = "预约服务时间不能为空", groups = { Create.class })
private Date exceptServeTime;
private List<String> attachmentsList;
}

41
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/ResiMyCreatedAgentServiceResultDTO.java

@ -0,0 +1,41 @@
package com.epmet.dto.result.agentservice;
import lombok.Data;
import java.util.Date;
@Data
public class ResiMyCreatedAgentServiceResultDTO {
private String serviceCategory;
private String serviceCategoryName;
private String content;
private Date createdTime;
// 待受理
private Date exceptServeTime;
private String exceptServeAddress;
/**
* 处理时间
*/
private Date processTime;
/**
* 处理说明
*/
private String processDesc;
/**
* 办结时间
*/
private Date closeTime;
/**
* 办结说明
*/
private String closeDesc;
private Integer processStatus;
private String processStatusName;
}

25
epmet-module/epmet-heart/epmet-heart-client/src/main/java/com/epmet/dto/result/agentservice/WorkServiceAgentResultDTO.java

@ -0,0 +1,25 @@
package com.epmet.dto.result.agentservice;
import lombok.Data;
import java.util.Date;
/**
* @Description 工作单-服务代办列表
* @Author wangxianzhang
* @Time 2023/5/9 10:52 AM
*/
@Data
public class WorkServiceAgentResultDTO {
private Integer serviceCategory;
private String serviceCategoryName;
private Date createdTime;
private String content;
// 待受理
private Date exceptServeTime;
private String exceptServeAddress;
}

131
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/controller/LingShanAgentServiceController.java

@ -0,0 +1,131 @@
package com.epmet.controller;
import com.epmet.LingShanAgentServiceProcessStatusEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.exception.ValidateException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.agentservice.WorkCloseAgentServiceFormDTO;
import com.epmet.dto.form.lingshan.AgentServiceResiSubmitFormDTO;
import com.epmet.dto.result.agentservice.ResiMyCreatedAgentServiceResultDTO;
import com.epmet.dto.result.agentservice.WorkServiceAgentResultDTO;
import com.epmet.service.LingShanAgentServiceService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
/**
* @Description 灵山-服务代办
* @Author wangxianzhang
* @Time 2023/5/6 2:49 PM
*/
@RestController
@RequestMapping("lingshan/serviceAgent")
public class LingShanAgentServiceController {
@Autowired
private LingShanAgentServiceService lingShanServiceAgentService;
/**
* @description: 居民端-提交代办服务
* @param form:
* @return
* @author: WangXianZhang
* @date: 2023/5/6 3:02 PM
*/
@PostMapping("resi/submit")
public Result resiSubmit(@RequestBody AgentServiceResiSubmitFormDTO form) {
ValidatorUtils.validateEntity(form, AgentServiceResiSubmitFormDTO.Create.class);
lingShanServiceAgentService.resiSubmit(form);
return new Result();
}
/**
* @description: 我创建的
* @return
* @author: WangXianZhang
* @date: 2023/5/9 10:06 AM
*/
@GetMapping("resi/mycreated")
public Result<PageData<ResiMyCreatedAgentServiceResultDTO>> myCreated(@RequestParam(value = "processStatus", required = false) Integer processStatus,
@RequestParam("gridId") String gridId,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize) {
PageData<ResiMyCreatedAgentServiceResultDTO> pd = lingShanServiceAgentService.myCreatedList(processStatus, gridId, pageNo, pageSize);
return new Result().ok(pd);
}
/**
* @description: 工作端-服务列表
* 这个接口返回的跟居民端一样所以暂时就调用居民端一样的接口了
* @param processStatus:
* @param gridId:
* @return
* @author: WangXianZhang
* @date: 2023/5/9 10:59 AM
*/
@GetMapping("work/serviceList")
public Result<PageData<ResiMyCreatedAgentServiceResultDTO>> workServiceList(@RequestParam(value = "processStatus", required = false) Integer processStatus,
@RequestParam("gridId") String gridId,
@RequestParam("pageNo") Integer pageNo,
@RequestParam("pageSize") Integer pageSize) {
PageData<ResiMyCreatedAgentServiceResultDTO> pd = lingShanServiceAgentService.myCreatedList(processStatus, gridId, pageNo, pageSize);
return new Result().ok(pd);
}
/**
* @description: 工作端提交处理没几个参数不值当用dto了
* @return
* @author: WangXianZhang
* @date: 2023/5/9 11:10 AM
*/
@PostMapping("work/process")
public Result workProcess(@RequestBody Map<String, Object> input) {
String id = (String) input.get("id");
Integer processType = (Integer) input.get("processType");
String processDesc = (String) input.get("processDesc");
if (StringUtils.isAnyBlank(id) || processType == null) {
throw new ValidateException("参数错误");
}
LingShanAgentServiceProcessStatusEnum processTypeEnum = LingShanAgentServiceProcessStatusEnum.getByStatus(processType);
// 如果是驳回,那么描述必填
if (processTypeEnum == LingShanAgentServiceProcessStatusEnum.REJECTED
&& StringUtils.isBlank(processDesc)) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, "驳回操作时,驳回原因为必填项");
}
lingShanServiceAgentService.workProcess(id, processType, processDesc);
return new Result();
}
/**
* @description: 工作端办结
* @param input:
* @return
* @author: WangXianZhang
* @date: 2023/5/9 2:57 PM
*/
@PostMapping("work/close")
public Result workClose(@RequestBody WorkCloseAgentServiceFormDTO input) {
ValidatorUtils.validateEntity(input);
String id = input.getId();
String processDesc = input.getProcessDesc();
List<String> processAttachments = input.getProcessAttachments();
lingShanServiceAgentService.workClose(id, processDesc, processAttachments);
return new Result();
}
}

16
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceCategoryDao.java

@ -0,0 +1,16 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.LingshanAgentServiceCategoryEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 待办服务类别
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-06
*/
@Mapper
public interface LingshanAgentServiceCategoryDao extends BaseDao<LingshanAgentServiceCategoryEntity> {
}

16
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/dao/LingshanAgentServiceRecordDao.java

@ -0,0 +1,16 @@
package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.entity.LingshanAgentServiceRecordEntity;
import org.apache.ibatis.annotations.Mapper;
/**
* 待办服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-06
*/
@Mapper
public interface LingshanAgentServiceRecordDao extends BaseDao<LingshanAgentServiceRecordEntity> {
}

39
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/LingshanAgentServiceCategoryEntity.java

@ -0,0 +1,39 @@
package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 待办服务类别
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-06
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("lingshan_agent_service_category")
public class LingshanAgentServiceCategoryEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 租户号
*/
private String customerId;
/**
* 类别名称
*/
private String categoryName;
/**
* 描述
*/
private String description;
}

131
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/entity/LingshanAgentServiceRecordEntity.java

@ -0,0 +1,131 @@
package com.epmet.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.epmet.commons.mybatis.entity.BaseEpmetEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
* 待办服务记录
*
* @author generator generator@elink-cn.com
* @since v1.0.0 2023-05-06
*/
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("lingshan_agent_service_record")
public class LingshanAgentServiceRecordEntity extends BaseEpmetEntity {
private static final long serialVersionUID = 1L;
/**
* 租户号
*/
@TableField(fill = FieldFill.INSERT)
private String customerId;
/**
* 申请人ID(居民端用户ID)
*/
private String applicantId;
/**
* 申请人姓名
*/
private String applicantName;
/**
* 代办员ID默认使用空字符串
*/
private String agentId;
/**
* 代办员姓名
*/
private String agentName;
/**
* 提交者所在网格ID
*/
private String gridId;
/**
* 组织id路径含本级含网格id
*/
private String orgIdPath;
private String attachments;
/**
* 服务类型id
*/
private String serviceCategory;
/**
* 预约服务时间
*/
private Date exceptServeTime;
/**
* 预约服务地点
*/
private String exceptServeAddress;
/**
* 受理时间状态变为受理的时间
*/
private Date processTime;
private String processDesc;
private String processAttachments;
/**
* 联系人姓名
*/
private String contactName;
/**
* 联系电话
*/
private String contactMobile;
/**
* 办理状态0待受理1已受理2已驳回3已办结-1已撤回
*/
private Integer processStatus;
/**
* 办结时间
*/
private Date closeTime;
/**
* 办结说明
*/
private String closeDesc;
/**
* 内容详细说明
*/
private String content;
/**
* 满意度评价-1不满意0基本满意1非常满意
*/
private Integer satisfication;
/**
* 经度
*/
private String longitude;
/**
* 纬度
*/
private String latitude;
}

20
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/LingShanAgentServiceService.java

@ -0,0 +1,20 @@
package com.epmet.service;
import com.epmet.commons.tools.page.PageData;
import com.epmet.dto.form.lingshan.AgentServiceResiSubmitFormDTO;
import com.epmet.dto.result.agentservice.ResiMyCreatedAgentServiceResultDTO;
import com.epmet.dto.result.agentservice.WorkServiceAgentResultDTO;
import java.util.List;
public interface LingShanAgentServiceService {
void resiSubmit(AgentServiceResiSubmitFormDTO form);
PageData<ResiMyCreatedAgentServiceResultDTO> myCreatedList(Integer processStatus, String gridId, Integer pageNo, Integer pageSize);
PageData<WorkServiceAgentResultDTO> workServiceList(Integer processStatus, String gridId);
void workProcess(String id, Integer processType, String processDesc);
void workClose(String id, String processDesc, List<String> processAttachments);
}

173
epmet-module/epmet-heart/epmet-heart-server/src/main/java/com/epmet/service/impl/LingShanAgentServiceServiceImpl.java

@ -0,0 +1,173 @@
package com.epmet.service.impl;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.epmet.LingShanAgentServiceProcessStatusEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.page.PageData;
import com.epmet.commons.tools.redis.common.CustomerOrgRedis;
import com.epmet.commons.tools.redis.common.CustomerResiUserRedis;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.redis.common.bean.ResiUserInfoCache;
import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.EpmetRequestHolder;
import com.epmet.commons.tools.utils.PidUtils;
import com.epmet.dao.LingshanAgentServiceCategoryDao;
import com.epmet.dao.LingshanAgentServiceRecordDao;
import com.epmet.dto.form.lingshan.AgentServiceResiSubmitFormDTO;
import com.epmet.dto.result.agentservice.ResiMyCreatedAgentServiceResultDTO;
import com.epmet.dto.result.agentservice.WorkServiceAgentResultDTO;
import com.epmet.entity.LingshanAgentServiceCategoryEntity;
import com.epmet.entity.LingshanAgentServiceRecordEntity;
import com.epmet.service.LingShanAgentServiceService;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@Service
@Slf4j
public class LingShanAgentServiceServiceImpl implements LingShanAgentServiceService {
@Autowired
private LingshanAgentServiceCategoryDao agentServiceCategoryDao;
@Autowired
private LingshanAgentServiceRecordDao agentServiceRecordDao;
@Override
public void resiSubmit(AgentServiceResiSubmitFormDTO form) {
// 判断类别是否存在
if (agentServiceCategoryDao.selectById(form.getServiceCategory()) == null) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, "【代办服务】未找到指定的服务类别ID:" + form.getServiceCategory());
}
ResiUserInfoCache resiInfo = CustomerResiUserRedis.getUserBaseInfo(EpmetRequestHolder.getLoginUserId());
LingshanAgentServiceRecordEntity e2Insert = ConvertUtils.sourceToTarget(form, LingshanAgentServiceRecordEntity.class);
e2Insert.setAttachments(JSON.toJSONString(form.getAttachmentsList()));
e2Insert.setApplicantId(EpmetRequestHolder.getLoginUserId());
e2Insert.setApplicantName(resiInfo.getRealName());
e2Insert.setProcessStatus(LingShanAgentServiceProcessStatusEnum.WAIT_ACCEPT.getStatusCode()); //初始为待受理状态
GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(form.getGridId());
e2Insert.setOrgIdPath(PidUtils.convertPid2OrgIdPath(gridInfo.getId(), gridInfo.getPids()));
agentServiceRecordDao.insert(e2Insert);
}
@Override
public PageData<ResiMyCreatedAgentServiceResultDTO> myCreatedList(Integer processStatus, String gridId, Integer pageNo, Integer pageSize) {
LambdaQueryWrapper<LingshanAgentServiceRecordEntity> q = new LambdaQueryWrapper<>();
q.eq(processStatus != null, LingshanAgentServiceRecordEntity::getProcessStatus, processStatus);
q.eq(LingshanAgentServiceRecordEntity::getGridId, gridId);
PageHelper.startPage(pageNo, pageSize);
List<LingshanAgentServiceRecordEntity> l = agentServiceRecordDao.selectList(q);
List<ResiMyCreatedAgentServiceResultDTO> rl = l.stream().map(e -> {
ResiMyCreatedAgentServiceResultDTO d = ConvertUtils.sourceToTarget(e, ResiMyCreatedAgentServiceResultDTO.class);
d.setProcessStatusName(LingShanAgentServiceProcessStatusEnum.getByStatus(e.getProcessStatus()).getStatusName());
LingshanAgentServiceCategoryEntity sc = agentServiceCategoryDao.selectById(e.getServiceCategory());
if (sc != null) {
d.setServiceCategoryName(sc.getCategoryName());
} else {
log.error("【红色待办】居民-我创建的列表:未找到服务类别数据:{}", e.getServiceCategory());
}
return d;
}).collect(Collectors.toList());
return new PageData<>(rl, new PageInfo<>(l).getTotal());
}
@Override
public PageData<WorkServiceAgentResultDTO> workServiceList(Integer processStatus, String gridId) {
return null;
}
@Override
public void workProcess(String id, Integer processType, String processDesc) {
LingshanAgentServiceRecordEntity service;
if ((service = agentServiceRecordDao.selectById(id)) == null) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, "【代办服务】未找到指定的服务信息,ID:" + id);
}
// 执行状态变更校验
statusChangeValid(service.getProcessStatus(), processType);
Date now = new Date();
LingshanAgentServiceRecordEntity e2Update = new LingshanAgentServiceRecordEntity();
e2Update.setId(id);
// 处理,处理受理状态和描述,以及处理时间
e2Update.setProcessStatus(processType);
e2Update.setProcessDesc(processDesc);
e2Update.setProcessTime(now);
agentServiceRecordDao.updateById(e2Update);
}
@Override
public void workClose(String id, String processDesc, List<String> processAttachments) {
LingshanAgentServiceRecordEntity service;
if ((service = agentServiceRecordDao.selectById(id)) == null) {
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, "【代办服务】未找到指定的服务信息,ID:" + id);
}
// 执行状态变更校验
LingShanAgentServiceProcessStatusEnum closeStatusEnum = LingShanAgentServiceProcessStatusEnum.CLOSED;
statusChangeValid(service.getProcessStatus(), closeStatusEnum.getStatusCode());
Date now = new Date();
LingshanAgentServiceRecordEntity e2Update = new LingshanAgentServiceRecordEntity();
e2Update.setId(id);
// 办结,设置处理状态,办结描述,办结时间
e2Update.setProcessStatus(closeStatusEnum.getStatusCode());
e2Update.setCloseDesc(processDesc);
e2Update.setCloseTime(now);
agentServiceRecordDao.updateById(e2Update);
}
/**
* @description: 状态变更校验
* @param oldStatus: 旧状态
* @param newStatus: 新状态
* @return
* @author: WangXianZhang
* @date: 2023/5/9 1:57 PM
*/
private void statusChangeValid(Integer oldStatus, Integer newStatus) {
if (newStatus.intValue() == LingShanAgentServiceProcessStatusEnum.WITHDRAW.getStatusCode()
&& oldStatus.intValue() != LingShanAgentServiceProcessStatusEnum.WAIT_ACCEPT.getStatusCode()) {
// 只有待处理状态,才能撤回
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, String.format("【代办服务】当前状态为'%s',不允许撤回", LingShanAgentServiceProcessStatusEnum.getByStatus(oldStatus).getStatusName()));
}
if ((newStatus.intValue() == LingShanAgentServiceProcessStatusEnum.ACCEPTED.getStatusCode()
|| newStatus.intValue() == LingShanAgentServiceProcessStatusEnum.REJECTED.getStatusCode())
&& oldStatus.intValue() != LingShanAgentServiceProcessStatusEnum.WAIT_ACCEPT.getStatusCode()) {
// 如果要接受,或者拒绝,那么当前状态必须为待处理
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, String.format("【代办服务】当前状态为'%s',不允许操作", LingShanAgentServiceProcessStatusEnum.getByStatus(oldStatus).getStatusName()));
}
if (newStatus.intValue() == LingShanAgentServiceProcessStatusEnum.CLOSED.getStatusCode()
&& oldStatus.intValue() != LingShanAgentServiceProcessStatusEnum.ACCEPTED.getStatusCode()) {
// 如果要关闭,那么当前状态必须为已受理
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), null, String.format("【代办服务】当前状态为'%s',不允许操作", LingShanAgentServiceProcessStatusEnum.getByStatus(oldStatus).getStatusName()));
}
}
}

20
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceCategoryDao.xml

@ -0,0 +1,20 @@
<?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.epmet.dao.LingshanAgentServiceCategoryDao">
<resultMap type="com.epmet.entity.LingshanAgentServiceCategoryEntity" id="lingshanAgentServiceCategoryMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="categoryName" column="CATEGORY_NAME"/>
<result property="description" column="DESCRIPTION"/>
<result property="revision" column="REVISION"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
</resultMap>
</mapper>

39
epmet-module/epmet-heart/epmet-heart-server/src/main/resources/mapper/LingshanAgentServiceRecordDao.xml

@ -0,0 +1,39 @@
<?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.epmet.dao.LingshanAgentServiceRecordDao">
<resultMap type="com.epmet.entity.LingshanAgentServiceRecordEntity" id="lingshanAgentServiceRecordMap">
<result property="id" column="ID"/>
<result property="customerId" column="CUSTOMER_ID"/>
<result property="applicantId" column="APPLICANT_ID"/>
<result property="applicantName" column="APPLICANT_NAME"/>
<result property="agentId" column="AGENT_ID"/>
<result property="agentName" column="AGENT_NAME"/>
<result property="gridId" column="GRID_ID"/>
<result property="orgIdPath" column="ORG_ID_PATH"/>
<result property="serviceCategory" column="SERVICE_CATEGORY"/>
<result property="attachments" column="ATTACHMENTS"/>
<result property="exceptServeTime" column="EXCEPT_SERVE_TIME"/>
<result property="exceptServeAddress" column="EXCEPT_SERVE_ADDRESS"/>
<result property="processTime" column="PROCESS_TIME"/>
<result property="processDesc" column="PROCESS_DESC"/>
<result property="closeDesc" column="CLOSE_DESC"/>
<result property="closeTime" column="CLOSE_TIME"/>
<result property="contactName" column="CONTACT_NAME"/>
<result property="contactMobile" column="CONTACT_MOBILE"/>
<result property="processStatus" column="PROCESS_STATUS"/>
<result property="content" column="CONTENT"/>
<result property="satisfication" column="SATISFICATION"/>
<result property="revision" column="REVISION"/>
<result property="delFlag" column="DEL_FLAG"/>
<result property="createdBy" column="CREATED_BY"/>
<result property="createdTime" column="CREATED_TIME"/>
<result property="updatedBy" column="UPDATED_BY"/>
<result property="updatedTime" column="UPDATED_TIME"/>
<result property="longitude" column="LONGITUDE"/>
<result property="latitude" column="LATITUDE"/>
</resultMap>
</mapper>

5
epmet-user/epmet-user-client/src/main/java/com/epmet/constant/RoleKeyConstants.java

@ -49,4 +49,9 @@ public class RoleKeyConstants {
*/ */
public static final String ROLE_KEY_GRID_MEMBER = "grid_member"; public static final String ROLE_KEY_GRID_MEMBER = "grid_member";
/**
* 代办员
*/
public static final String ROLE_KEY_AGENT = "agent";
} }

Loading…
Cancel
Save