Browse Source

Merge branch 'dev_routine_work_syc' into dev

dev
sunyuchao 4 years ago
parent
commit
e4d67b967b
  1. 47
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/patrol/GridMemberRoutineWorkFormDTO.java
  2. 84
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/RoutineWorkDetailResultDTO.java
  3. 63
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/RoutineWorkListResultDTO.java
  4. 35
      epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StatsdataResultDTO.java
  5. 48
      epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java
  6. 16
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/PatrolRoutineWorkDao.java
  7. 7
      epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StatsStaffPatrolRecordDailyDao.java
  8. 22
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java
  9. 106
      epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java
  10. 42
      epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml
  11. 13
      epmet-user/epmet-user-server/src/main/resources/mapper/StatsStaffPatrolRecordDailyDao.xml

47
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/form/patrol/GridMemberRoutineWorkFormDTO.java

@ -0,0 +1,47 @@
package com.epmet.dto.form.patrol;
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.io.Serializable;
/**
* @Description 网格员例行工作
* @Author sun
*/
@Data
public class GridMemberRoutineWorkFormDTO implements Serializable {
private static final long serialVersionUID = -3522636529743412120L;
public interface RoutineWork extends CustomerClientShowGroup {}
public interface RoutineWorkDetail extends CustomerClientShowGroup {}
/**
* 网格Id
*/
@NotBlank(message = "网格Id不能为空", groups = RoutineWork.class)
private String gridId;
/**
* 例行工作Id
*/
@NotBlank(message = "例行工作Id不能为空", groups = RoutineWorkDetail.class)
private String routineWorkId;
/**
* 当前页
*/
private Integer pageNo = 1;
/**
* 每页记录数
*/
private Integer pageSize = 20;
//token中客户Id
private String customerId;
//token中用户Id
private String staffId;
}

84
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/RoutineWorkDetailResultDTO.java

@ -0,0 +1,84 @@
package com.epmet.dto.result;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @Description 网格员例行工作详情
* @Author sun
*/
@Data
public class RoutineWorkDetailResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 例行工作Id
*/
private String routineWorkId;
/**
* 网格Id
*/
private String gridId;
/**
* 网格名称
*/
private String gridName;
/**
* 网格员Id
*/
private String staffId;
/**
* 网格员姓名
*/
private String staffName;
/**
* 提交日期
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date submitTime;
/**
* 事项类型名称一类-二类
*/
private String workTypeName;
/**
* 重点人员是否在当地
*/
private String isKeyPeopleLocateName;
/**
* 重点人员现状
*/
private String keyPeopleStatus;
/**
* 事项名称
*/
private String title;
/**
* 是否异常
*/
private String isNormalName;
/**
* 发生日期
*/
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
private Date happenTime;
/**
* 发生地点
*/
private String address;
/**
* 事项简述
*/
private String workContent;
//例行工作一类编码
@JsonIgnore
private String allPCode;
//例行工作二类编码
@JsonIgnore
private String workTypeCode;
}

63
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/RoutineWorkListResultDTO.java

@ -0,0 +1,63 @@
package com.epmet.dto.result;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
/**
* @Description 网格员例行工作列表
* @Author sun
*/
@Data
public class RoutineWorkListResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 总条数
*/
private Integer total = 0;
/**
* 集合对象
*/
private List<RoutineWorkList> list;
@Data
public static class RoutineWorkList {
/**
* 例行工作Id
*/
private String routineWorkId;
/**
* 标题
*/
private String title;
/**
* 提交日期
*/
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date submitTime;
/**
* 工作类型[一类-二类名称]
*/
private String workTypeName;
/**
* 是否异常
*/
private String isNormalName;
//例行工作一类编码
@JsonIgnore
private String allPCode;
//例行工作二类编码
@JsonIgnore
private String workTypeCode;
}
}

35
epmet-user/epmet-user-client/src/main/java/com/epmet/dto/result/StatsdataResultDTO.java

@ -0,0 +1,35 @@
package com.epmet.dto.result;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
* @Description 网格员例行工作数据统计
* @Author sun
*/
@Data
public class StatsdataResultDTO implements Serializable {
private static final long serialVersionUID = 1L;
/**
* 巡查总次数
*/
private Integer patrolTotal;
/**
* 巡查时长(xx小时xx分钟)
*/
private String totalTime;
@JsonIgnore
private Integer totalNum;
/**
* 例行工作总次数
*/
private Integer routineWorkCount;
}

48
epmet-user/epmet-user-server/src/main/java/com/epmet/controller/PatrolRoutineWorkController.java

@ -1,21 +1,17 @@
package com.epmet.controller; package com.epmet.controller;
import com.alibaba.excel.EasyExcel; import com.epmet.commons.tools.annotation.LoginUser;
import com.alibaba.excel.ExcelWriter;
import com.alibaba.excel.write.metadata.WriteSheet;
import com.epmet.commons.tools.aop.NoRepeatSubmit; import com.epmet.commons.tools.aop.NoRepeatSubmit;
import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.security.dto.TokenDto;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.commons.tools.validator.ValidatorUtils; import com.epmet.commons.tools.validator.ValidatorUtils;
import com.epmet.dto.form.PatrolRoutineWorkFormDTO; import com.epmet.dto.form.PatrolRoutineWorkFormDTO;
import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.PcWorkListFormDTO;
import com.epmet.dto.form.patrol.GridMemberRoutineWorkFormDTO;
import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO;
import com.epmet.dto.result.PatrolRoutineWorkResult; import com.epmet.dto.result.*;
import com.epmet.dto.result.PcWorkListResultDTO;
import com.epmet.excel.PcWorkListExport;
import com.epmet.service.PatrolRoutineWorkService; import com.epmet.service.PatrolRoutineWorkService;
import com.github.pagehelper.Page; import com.github.pagehelper.Page;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
@ -25,8 +21,6 @@ import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.util.List; import java.util.List;
import static io.netty.handler.codec.smtp.SmtpRequests.data;
/** /**
* 例行工作 * 例行工作
* *
@ -85,4 +79,38 @@ public class PatrolRoutineWorkController {
gridUserWorkService.pcWorkListExport(formDTO,response); gridUserWorkService.pcWorkListExport(formDTO,response);
} }
/**
* @Author sun
* @Description 例行工作网格员巡查例行工作统计数据
**/
@PostMapping("statsdata")
public Result<StatsdataResultDTO> statsData(@LoginUser TokenDto tokenDto, @RequestBody GridMemberRoutineWorkFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, GridMemberRoutineWorkFormDTO.RoutineWork.class);
formDTO.setStaffId(tokenDto.getUserId());
return new Result<StatsdataResultDTO>().ok(gridUserWorkService.statsData(formDTO));
}
/**
* @Author sun
* @Description 例行工作网格员例行工作列表
**/
@PostMapping("list")
public Result<RoutineWorkListResultDTO> list(@LoginUser TokenDto tokenDto, @RequestBody GridMemberRoutineWorkFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, GridMemberRoutineWorkFormDTO.RoutineWork.class);
formDTO.setStaffId(tokenDto.getUserId());
return new Result<RoutineWorkListResultDTO>().ok(gridUserWorkService.list(formDTO));
}
/**
* @Author sun
* @Description 例行工作例行工作详情
**/
@PostMapping("detail")
public Result<RoutineWorkDetailResultDTO> detail(@LoginUser TokenDto tokenDto, @RequestBody GridMemberRoutineWorkFormDTO formDTO) {
ValidatorUtils.validateEntity(formDTO, GridMemberRoutineWorkFormDTO.RoutineWorkDetail.class);
formDTO.setCustomerId(tokenDto.getCustomerId());
formDTO.setStaffId(tokenDto.getUserId());
return new Result<RoutineWorkDetailResultDTO>().ok(gridUserWorkService.detail(formDTO));
}
} }

16
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/PatrolRoutineWorkDao.java

@ -22,8 +22,11 @@ import com.epmet.dto.form.PcWorkListFormDTO;
import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO;
import com.epmet.dto.result.PatrolRoutineWorkResult; import com.epmet.dto.result.PatrolRoutineWorkResult;
import com.epmet.dto.result.PcWorkListResultDTO; import com.epmet.dto.result.PcWorkListResultDTO;
import com.epmet.dto.result.RoutineWorkDetailResultDTO;
import com.epmet.dto.result.RoutineWorkListResultDTO;
import com.epmet.entity.PatrolRoutineWorkEntity; import com.epmet.entity.PatrolRoutineWorkEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@ -39,4 +42,17 @@ public interface PatrolRoutineWorkDao extends BaseDao<PatrolRoutineWorkEntity> {
List<PatrolRoutineWorkResult> selectList(PatrolQueryFormDTO formDTO); List<PatrolRoutineWorkResult> selectList(PatrolQueryFormDTO formDTO);
List<PcWorkListResultDTO.PcWorkListResult> pcWorkList(PcWorkListFormDTO formDTO); List<PcWorkListResultDTO.PcWorkListResult> pcWorkList(PcWorkListFormDTO formDTO);
/**
* @Author sun
* @Description 例行工作网格员例行工作列表
**/
List<RoutineWorkListResultDTO.RoutineWorkList> staffRoutineWorkList(@Param("gridId") String gridId, @Param("staffId") String staffId);
/**
* @Author sun
* @Description 例行工作例行工作详情
**/
RoutineWorkDetailResultDTO getDetail(@Param("routineWorkId") String routineWorkId);
} }

7
epmet-user/epmet-user-server/src/main/java/com/epmet/dao/StatsStaffPatrolRecordDailyDao.java

@ -20,6 +20,7 @@ package com.epmet.dao;
import com.epmet.commons.mybatis.dao.BaseDao; import com.epmet.commons.mybatis.dao.BaseDao;
import com.epmet.dto.result.PatrolYuShanResultDTO; import com.epmet.dto.result.PatrolYuShanResultDTO;
import com.epmet.dto.result.SelectPatrolCountResultDTO; import com.epmet.dto.result.SelectPatrolCountResultDTO;
import com.epmet.dto.result.StatsdataResultDTO;
import com.epmet.entity.StatsStaffPatrolRecordDailyEntity; import com.epmet.entity.StatsStaffPatrolRecordDailyEntity;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
@ -82,4 +83,10 @@ public interface StatsStaffPatrolRecordDailyDao extends BaseDao<StatsStaffPatrol
*/ */
List<PatrolYuShanResultDTO> patrolInfo(@Param("agencyId")String agencyId); List<PatrolYuShanResultDTO> patrolInfo(@Param("agencyId")String agencyId);
/**
* @Author sun
* @Description 例行工作网格员巡查例行工作统计数据
**/
StatsdataResultDTO getStatsData(@Param("gridId") String gridId, @Param("staffId") String staffId);
} }

22
epmet-user/epmet-user-server/src/main/java/com/epmet/service/PatrolRoutineWorkService.java

@ -20,9 +20,9 @@ package com.epmet.service;
import com.epmet.commons.mybatis.service.BaseService; import com.epmet.commons.mybatis.service.BaseService;
import com.epmet.dto.form.PatrolRoutineWorkFormDTO; import com.epmet.dto.form.PatrolRoutineWorkFormDTO;
import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.PcWorkListFormDTO;
import com.epmet.dto.form.patrol.GridMemberRoutineWorkFormDTO;
import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO;
import com.epmet.dto.result.PatrolRoutineWorkResult; import com.epmet.dto.result.*;
import com.epmet.dto.result.PcWorkListResultDTO;
import com.epmet.entity.PatrolRoutineWorkEntity; import com.epmet.entity.PatrolRoutineWorkEntity;
import com.github.pagehelper.Page; import com.github.pagehelper.Page;
@ -58,4 +58,22 @@ public interface PatrolRoutineWorkService extends BaseService<PatrolRoutineWorkE
*/ */
PcWorkListResultDTO pcWorkList(PcWorkListFormDTO formDTO); PcWorkListResultDTO pcWorkList(PcWorkListFormDTO formDTO);
void pcWorkListExport(PcWorkListFormDTO formDTO, HttpServletResponse response) throws Exception; void pcWorkListExport(PcWorkListFormDTO formDTO, HttpServletResponse response) throws Exception;
/**
* @Author sun
* @Description 例行工作网格员巡查例行工作统计数据
**/
StatsdataResultDTO statsData(GridMemberRoutineWorkFormDTO formDTO);
/**
* @Author sun
* @Description 例行工作网格员例行工作列表
**/
RoutineWorkListResultDTO list(GridMemberRoutineWorkFormDTO formDTO);
/**
* @Author sun
* @Description 例行工作例行工作详情
**/
RoutineWorkDetailResultDTO detail(GridMemberRoutineWorkFormDTO formDTO);
} }

106
epmet-user/epmet-user-server/src/main/java/com/epmet/service/impl/PatrolRoutineWorkServiceImpl.java

@ -25,29 +25,30 @@ import com.epmet.commons.mybatis.service.impl.BaseServiceImpl;
import com.epmet.commons.rocketmq.messages.BaseMQMsgDTO; import com.epmet.commons.rocketmq.messages.BaseMQMsgDTO;
import com.epmet.commons.tools.constant.NumConstant; import com.epmet.commons.tools.constant.NumConstant;
import com.epmet.commons.tools.constant.StrConstant; import com.epmet.commons.tools.constant.StrConstant;
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult;
import com.epmet.commons.tools.dto.result.DictTreeResultDTO; import com.epmet.commons.tools.dto.result.DictTreeResultDTO;
import com.epmet.commons.tools.enums.DictTypeEnum; import com.epmet.commons.tools.enums.DictTypeEnum;
import com.epmet.commons.tools.enums.OrgTypeEnum; import com.epmet.commons.tools.enums.OrgTypeEnum;
import com.epmet.commons.tools.exception.EpmetErrorCode; import com.epmet.commons.tools.exception.EpmetErrorCode;
import com.epmet.commons.tools.exception.EpmetException; import com.epmet.commons.tools.exception.EpmetException;
import com.epmet.commons.tools.redis.common.CustomerOrgRedis; 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.AgencyInfoCache;
import com.epmet.commons.tools.redis.common.bean.GridInfoCache; import com.epmet.commons.tools.redis.common.bean.GridInfoCache;
import com.epmet.commons.tools.security.user.LoginUserUtil; import com.epmet.commons.tools.security.user.LoginUserUtil;
import com.epmet.commons.tools.utils.ConvertUtils; import com.epmet.commons.tools.utils.ConvertUtils;
import com.epmet.commons.tools.utils.DateUtils;
import com.epmet.commons.tools.utils.ExcelUtils; import com.epmet.commons.tools.utils.ExcelUtils;
import com.epmet.commons.tools.utils.Result; import com.epmet.commons.tools.utils.Result;
import com.epmet.constant.SystemMessageType; import com.epmet.constant.SystemMessageType;
import com.epmet.dao.PatrolRoutineWorkDao; import com.epmet.dao.PatrolRoutineWorkDao;
import com.epmet.dao.StatsStaffPatrolRecordDailyDao;
import com.epmet.dto.CustomerGridDTO; import com.epmet.dto.CustomerGridDTO;
import com.epmet.dto.form.CustomerGridFormDTO; import com.epmet.dto.form.CustomerGridFormDTO;
import com.epmet.dto.form.PatrolRoutineWorkFormDTO; import com.epmet.dto.form.PatrolRoutineWorkFormDTO;
import com.epmet.dto.form.PcWorkListFormDTO; import com.epmet.dto.form.PcWorkListFormDTO;
import com.epmet.dto.form.patrol.GridMemberRoutineWorkFormDTO;
import com.epmet.dto.form.patrol.PatrolQueryFormDTO; import com.epmet.dto.form.patrol.PatrolQueryFormDTO;
import com.epmet.dto.result.AllGridsByUserIdResultDTO; import com.epmet.dto.result.*;
import com.epmet.dto.result.PatrolRoutineWorkResult;
import com.epmet.dto.result.PcWorkListResultDTO;
import com.epmet.entity.PatrolRoutineWorkEntity; import com.epmet.entity.PatrolRoutineWorkEntity;
import com.epmet.entity.PatrolRoutineWorkTypeEntity; import com.epmet.entity.PatrolRoutineWorkTypeEntity;
import com.epmet.excel.PcWorkListExport; import com.epmet.excel.PcWorkListExport;
@ -61,6 +62,7 @@ import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.MapUtils;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -68,13 +70,13 @@ import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.beans.Encoder;
import java.net.URLEncoder; import java.net.URLEncoder;
import java.util.*; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
import static com.epmet.commons.tools.utils.DateUtils.DATE_PATTERN;
/** /**
* 巡查例行工作 * 巡查例行工作
* *
@ -94,6 +96,8 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl<PatrolRoutineW
private PatrolRoutineWorkTypeService patrolRoutineWorkTypeService; private PatrolRoutineWorkTypeService patrolRoutineWorkTypeService;
@Autowired @Autowired
private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient; private EpmetMessageOpenFeignClient epmetMessageOpenFeignClient;
@Autowired
private StatsStaffPatrolRecordDailyDao statsStaffPatrolRecordDailyDao;
/** /**
* @param formDTO * @param formDTO
@ -347,4 +351,90 @@ public class PatrolRoutineWorkServiceImpl extends BaseServiceImpl<PatrolRoutineW
System.out.println(JSON.toJSONString(result)); System.out.println(JSON.toJSONString(result));
}*/ }*/
/**
* @Author sun
* @Description 例行工作网格员巡查例行工作统计数据
**/
@Override
public StatsdataResultDTO statsData(GridMemberRoutineWorkFormDTO formDTO) {
StatsdataResultDTO resultDTO = statsStaffPatrolRecordDailyDao.getStatsData(formDTO.getGridId(), formDTO.getStaffId());
if (null == resultDTO) {
return new StatsdataResultDTO();
}
//秒变小时分钟
Integer minutes = (resultDTO.getTotalNum() > NumConstant.ZERO ? resultDTO.getTotalNum() / 60 : 0);
String patrolDuration = (minutes / 60 > 0 ? minutes / 60 + "小时" : "") + (minutes % 60 > 0 ? minutes % 60 + "分钟" : "0分钟");
resultDTO.setTotalTime(patrolDuration);
return resultDTO;
}
/**
* @Author sun
* @Description 例行工作网格员例行工作列表
**/
@Override
public RoutineWorkListResultDTO list(GridMemberRoutineWorkFormDTO formDTO) {
RoutineWorkListResultDTO resultDTO = new RoutineWorkListResultDTO();
//1.按条件查询网格员例行工作列表数据
PageInfo<RoutineWorkListResultDTO.RoutineWorkList> result =
PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.staffRoutineWorkList(formDTO.getGridId(), formDTO.getStaffId()));
if (org.springframework.util.CollectionUtils.isEmpty(result.getList())) {
return resultDTO;
}
//2.查询分类编码字典数据
Result<Map<String, String>> unitTypeMap = adminOpenFeignClient.dictMap(DictTypeEnum.PATROL_WORK_TYPE.getCode());
if (!unitTypeMap.success() || MapUtils.isEmpty(unitTypeMap.getData())) {
throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "获取例行工作类型字典表数据失败!");
}
Map<String, String> map = unitTypeMap.getData();
//3.封装数据并返回
result.getList().forEach(re -> {
re.setWorkTypeName(map.get(re.getWorkTypeCode()) + "-" + map.get(re.getWorkTypeCode()));
});
resultDTO.setTotal((int) result.getTotal());
resultDTO.setList(result.getList());
return resultDTO;
}
/**
* @Author sun
* @Description 例行工作例行工作详情
**/
@Override
public RoutineWorkDetailResultDTO detail(GridMemberRoutineWorkFormDTO formDTO) {
//1.查询例行工作详情数据
RoutineWorkDetailResultDTO resultDTO = baseDao.getDetail(formDTO.getRoutineWorkId());
if (null == resultDTO) {
return new RoutineWorkDetailResultDTO();
}
//2.获取工作人员缓存信息
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getStaffId());
if (null == staffInfo) {
throw new EpmetException(String.format("查询工作人员%s缓存信息失败...", formDTO.getStaffId()));
}
//3.获取网格缓存信息
GridInfoCache gridInfo = CustomerOrgRedis.getGridInfo(resultDTO.getGridId());
if (null == gridInfo) {
throw new EpmetException(String.format("未查询到网格{%s}信息", resultDTO.getGridId()));
}
if (StringUtils.isEmpty(gridInfo.getAgencyName())) {
AgencyInfoCache agencyInfo = CustomerOrgRedis.getAgencyInfo(gridInfo.getPid());
gridInfo.setAgencyName(agencyInfo.getOrganizationName());
}
//4.获取例行工作类型字典表数据
Result<Map<String, String>> unitTypeMap = adminOpenFeignClient.dictMap(DictTypeEnum.PATROL_WORK_TYPE.getCode());
if (!unitTypeMap.success() || MapUtils.isEmpty(unitTypeMap.getData())) {
throw new EpmetException(EpmetErrorCode.SERVER_ERROR.getCode(), "获取例行工作类型字典表数据失败!");
}
//5.封装数据并返回
resultDTO.setGridName(gridInfo.getAgencyName() + "-" + gridInfo.getGridName());
resultDTO.setStaffName(staffInfo.getRealName());
resultDTO.setWorkTypeName(unitTypeMap.getData().get(resultDTO.getAllPCode()) + "-" + unitTypeMap.getData().get(resultDTO.getWorkTypeCode()));
return resultDTO;
}
} }

42
epmet-user/epmet-user-server/src/main/resources/mapper/PatrolRoutineWorkDao.xml

@ -86,5 +86,47 @@
SELECT WORK_TYPE_CODE AS workTypeCode FROM patrol_routine_work_type WHERE DEL_FLAG = 0 AND ROUTINE_WORK_ID = #{wid} SELECT WORK_TYPE_CODE AS workTypeCode FROM patrol_routine_work_type WHERE DEL_FLAG = 0 AND ROUTINE_WORK_ID = #{wid}
</select> </select>
<select id="staffRoutineWorkList" resultType="com.epmet.dto.result.RoutineWorkListResultDTO$RoutineWorkList">
SELECT
prw.id routineWorkId,
prw.title title,
prw.created_time submitTime,
IF (prw.is_normal = '1', '是', '否') isNormalName,
prwt.all_p_code allPCode,
prwt.work_type_code workTypeCode
FROM
patrol_routine_work prw
LEFT JOIN patrol_routine_work_type prwt ON prw.id = prwt.routine_work_id
WHERE
prw.del_flag = '0'
AND prw.grid_id = #{gridId}
AND prw.user_id = #{staffId}
GROUP BY prw.id
</select>
<select id="getDetail" resultType="com.epmet.dto.result.RoutineWorkDetailResultDTO">
SELECT
prw.id routineWorkId,
prw.grid_id gridId,
prw.user_id staffId,
prw.created_time submitTime,
prwt.all_p_code allPCode,
prwt.work_type_code workTypeCode,
IF (prw.is_key_people_locate = '1', '是', '否') isKeyPeopleLocateName,
prw.key_people_status keyPeopleStatus,
prw.title title,
IF (prw.is_normal = '1', '是', '否') isNormalName,
prw.happen_time happenTime,
prw.address address,
prw.work_content workContent
FROM
patrol_routine_work prw
LEFT JOIN patrol_routine_work_type prwt ON prw.id = prwt.routine_work_id
WHERE
prw.del_flag = '0'
AND prw.id = #{routineWorkId}
GROUP BY prw.id
</select>
</mapper> </mapper>

13
epmet-user/epmet-user-server/src/main/resources/mapper/StatsStaffPatrolRecordDailyDao.xml

@ -65,4 +65,17 @@
GROUP BY GRID_ID,STAFF_ID GROUP BY GRID_ID,STAFF_ID
</select> </select>
<select id="getStatsData" resultType="com.epmet.dto.result.StatsdataResultDTO">
SELECT
IFNULL(SUM(patrol_total), 0) patrolTotal,
IFNULL(SUM(total_time), 0) totalNum,
IFNULL(SUM(routine_work_count), 0) routineWorkCount
FROM
stats_staff_patrol_record_daily
WHERE
del_flag = '0'
AND grid_id = #{gridId}
AND staff_id = #{staffId}
</select>
</mapper> </mapper>
Loading…
Cancel
Save