巡检点修改

This commit is contained in:
guoshengxiong 2024-07-24 21:07:06 +08:00
parent eabbe172b7
commit c2686780e1
15 changed files with 178 additions and 6 deletions

View File

@ -6,6 +6,7 @@ import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.xmgl.modules.basicdata.service.UploadFileService;
import com.zhgd.xmgl.modules.checking.entity.CheckingPoint;
import com.zhgd.xmgl.modules.checking.entity.qo.ProjectSnQO;
import com.zhgd.xmgl.modules.checking.entity.vo.TaskDetailPageVo;
import com.zhgd.xmgl.modules.checking.service.CheckingPointInfoService;
import com.zhgd.xmgl.modules.checking.service.CheckingPointService;
import io.swagger.annotations.Api;
@ -16,8 +17,10 @@ import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import java.util.List;
import java.util.Map;
/**
@ -129,4 +132,17 @@ public class CheckingPointController {
}
return result;
}
@OperLog(operModul = "巡检点模块管理", operType = "查询", operDesc = "查询巡检任务列表包含的巡检点详情列表")
@ApiOperation(value = "查询巡检任务列表包含的巡检点详情列表", notes = "查询巡检任务列表包含的巡检点详情列表")
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "body", required = false, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "body", required = false, dataType = "Integer"),
@ApiImplicitParam(name = "xzCheckingRouteTaskId", value = "星纵-巡检路线的任务Id", paramType = "body", required = false, dataType = "String"),
})
@PostMapping(value = "/getTaskDetailPage")
public Result<IPage<TaskDetailPageVo>> getTaskDetailPage(@ApiIgnore @RequestBody Map<String,Object> param) {
return Result.success(checkingPointService.getTaskDetailPage(param));
}
}

View File

@ -45,6 +45,11 @@ public class XzCheckingRouteController {
@ApiImplicitParams({
@ApiImplicitParam(name = "pageNo", value = "第几页", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "pageSize", value = "每页显示条数", paramType = "query", required = true, dataType = "Integer"),
@ApiImplicitParam(name = "inspectTimeBegin", value = "检查开始时间", paramType = "body", required = false, dataType = "String"),
@ApiImplicitParam(name = "inspectTimeEnd", value = "检查结束时间", paramType = "body", required = false, dataType = "String"),
@ApiImplicitParam(name = "enterpriseId", value = "企业id", paramType = "body", required = false, dataType = "String"),
@ApiImplicitParam(name = "noticeUserIds", value = "通知人员id", paramType = "body", required = false, dataType = "String"),
@ApiImplicitParam(name = "inspectUserIds", value = "巡检人员id", paramType = "body", required = false, dataType = "String"),
})
@GetMapping(value = "/page")
public Result<IPage<XzCheckingRoute>> queryPageList(@ApiIgnore @RequestParam HashMap<String, Object> paramMap) {

View File

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.zhgd.annotation.OperLog;
import com.zhgd.jeecg.common.api.vo.Result;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteTask;
import com.zhgd.xmgl.modules.checking.entity.vo.CountMyTaskInspectStatusVo;
import com.zhgd.xmgl.modules.checking.service.IXzCheckingRouteTaskService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
@ -16,8 +17,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.naming.directory.SearchResult;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
@ -124,4 +127,10 @@ public class XzCheckingRouteTaskController {
return Result.success(xzCheckingRouteTaskService.queryById(id));
}
@ApiOperation(value = "任务统计", notes = "任务统计", httpMethod = "POST")
@PostMapping(value = "/countMyTaskInspectStatus")
public Result<CountMyTaskInspectStatusVo> countMyTaskInspectStatus(@ApiIgnore @RequestBody Map<String ,Object> param) {
return Result.success(xzCheckingRouteTaskService.countMyTaskInspectStatus(param));
}
}

View File

@ -64,9 +64,9 @@ public class CheckingPointInfo implements Serializable {
private String template;
/**
* 巡检点状态 1正常 2异常
* 巡检点状态 1正常 2异常 3:未巡检
*/
@ApiModelProperty("巡检点状态 1正常 2异常 需要默认选择正常")
@ApiModelProperty("巡检点状态 1正常 2异常 3:未巡检")
@TableField(value = "status")
private Integer status;

View File

@ -0,0 +1,16 @@
package com.zhgd.xmgl.modules.checking.entity.vo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class CountMyTaskInspectStatusVo {
@ApiModelProperty("未开始")
private Integer notStart;
@ApiModelProperty("进行中")
private Integer run;
@ApiModelProperty("已完成")
private Integer complete;
@ApiModelProperty("已逾期")
private Integer overdue;
}

View File

@ -0,0 +1,13 @@
package com.zhgd.xmgl.modules.checking.entity.vo;
import com.baomidou.mybatisplus.annotation.TableField;
import com.zhgd.xmgl.modules.checking.entity.CheckingPointInfo;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class TaskDetailPageVo extends CheckingPointInfo {
@ApiModelProperty("巡检点状态 1正常 2异常 3:未巡检")
@TableField(value = "status")
private Integer status;
}

View File

@ -6,10 +6,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.annotation.DataScope;
import com.zhgd.xmgl.modules.checking.entity.CheckingPoint;
import com.zhgd.xmgl.modules.checking.entity.qo.ProjectSnQO;
import com.zhgd.xmgl.modules.checking.entity.vo.TaskDetailPageVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* @author 邱平毅
@ -51,4 +53,13 @@ public interface CheckingPointMapper extends BaseMapper<CheckingPoint> {
* @return
*/
List<CheckingPoint> getFinishList();
/**
* 查询巡检任务列表包含的巡检点详情列表
*
* @param page
* @param param
* @return
*/
IPage<TaskDetailPageVo> getTaskDetailPage(Page page, @Param("param") Map<String, Object> param);
}

View File

@ -7,11 +7,13 @@ import com.baomidou.mybatisplus.core.toolkit.Constants;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.zhgd.annotation.DataScope;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteTask;
import com.zhgd.xmgl.modules.checking.entity.vo.CountMyTaskInspectStatusVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @Description: 星纵-巡检路线的任务
@ -48,4 +50,12 @@ public interface XzCheckingRouteTaskMapper extends BaseMapper<XzCheckingRouteTas
* @return
*/
XzCheckingRouteTask getById(String id);
/**
* 任务统计
* @param param
* @return
*/
CountMyTaskInspectStatusVo countMyTaskInspectStatus(Map<String, Object> param);
}

View File

@ -107,4 +107,35 @@
where end_time = DATE_SUB(CURDATE(), INTERVAL 1 DAY)
and frequency_num is not null
</select>
<select id="getTaskDetailPage" resultType="com.zhgd.xmgl.modules.checking.entity.vo.TaskDetailPageVo">
select
cp.checking_point_name as checkingPointName,
cp.position,
su.real_name as checkingPointUserName,
(SELECT group_concat(nu.real_name)
FROM system_user nu
WHERE find_in_set(nu.user_id, xcr.notice_user_ids)) noticeUserNames,
uo.real_name as operate_name,
cp.min_inspect_time,
qr.region_name,
xcr.route_name,
xcrt.item_name,
(SELECT group_concat(nu.enterprise_name)
FROM enterprise_info nu
WHERE find_in_set(nu.id, cp.enterprise_id)) as enterprise_name,
ifnull(t.status,3) as status,
t.*
from
checking_point cp
join xz_checking_route_to_point xcrtp on cp.id = xcrtp.checking_point_id
join xz_checking_route xcr on xcrtp.xz_checking_route_id = xcr.id
join xz_checking_route_task xcrt on xcr.id = xcrt.xz_checking_route_id
left join checking_point_info t on t.checking_point_id = cp.id and t.xz_checking_route_task_id = xcrt.id
left join system_user su on t.checking_point_user_id = su.user_id
left join enterprise_info ei on find_in_set(ei.id,cp.enterprise_id)
left join system_user uo on t.operate_id = uo.user_id
left join quality_region qr on qr.id = cp.quality_region_id
WHERE xcrt.id = #{param.xzCheckingRouteTaskId}
</select>
</mapper>

View File

@ -47,4 +47,20 @@
</include>
where t.id = #{id}
</select>
<select id="countMyTaskInspectStatus"
resultType="com.zhgd.xmgl.modules.checking.entity.vo.CountMyTaskInspectStatusVo">
select
ifnull(sum(if(t.inspectStatus=1,1,0)),0) as notStart,
ifnull(sum(if(t.inspectStatus=2,1,0)),0) as run,
ifnull(sum(if(t.inspectStatus=3,1,0)),0) as complete,
ifnull(sum(if(t.inspectStatus=4,1,0)),0) as overdue
from (select
CASE WHEN t.is_inspect = 1 THEN 3 WHEN t.start_time > current_date THEN 1 WHEN t.end_time &lt; current_date THEN
4 ELSE 2 END as inspectStatus
from xz_checking_route_task as t
join xz_checking_route as xcr on t.xz_checking_route_id = xcr.id
where find_in_set(#{checkingPointUserId},xcr.inspect_user_ids)
)as t
</select>
</mapper>

View File

@ -4,8 +4,10 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.xmgl.modules.checking.entity.CheckingPoint;
import com.zhgd.xmgl.modules.checking.entity.qo.ProjectSnQO;
import com.zhgd.xmgl.modules.checking.entity.vo.TaskDetailPageVo;
import java.util.List;
import java.util.Map;
/**
* @author 邱平毅
@ -32,6 +34,7 @@ public interface CheckingPointService extends IService<CheckingPoint> {
/**
* 校验坐标位置是否在坐标中
*
* @param id
* @param userId
* @param longitude
@ -61,4 +64,12 @@ public interface CheckingPointService extends IService<CheckingPoint> {
* @param id
*/
void deleteProjectBim(Long id);
/**
* 查询巡检任务列表包含的巡检点详情列表
*
* @param param
* @return
*/
IPage<TaskDetailPageVo> getTaskDetailPage(Map<String, Object> param);
}

View File

@ -3,9 +3,11 @@ package com.zhgd.xmgl.modules.checking.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteTask;
import com.zhgd.xmgl.modules.checking.entity.vo.CountMyTaskInspectStatusVo;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @Description: 星纵-巡检路线的任务
@ -59,4 +61,10 @@ public interface IXzCheckingRouteTaskService extends IService<XzCheckingRouteTas
*/
XzCheckingRouteTask queryById(String id);
/**
* 任务统计
* @param param
* @return
*/
CountMyTaskInspectStatusVo countMyTaskInspectStatus(Map<String, Object> param);
}

View File

@ -18,9 +18,11 @@ import com.zhgd.xmgl.modules.checking.entity.CheckingPoint;
import com.zhgd.xmgl.modules.checking.entity.CheckingPointInfo;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteTask;
import com.zhgd.xmgl.modules.checking.entity.qo.ProjectSnQO;
import com.zhgd.xmgl.modules.checking.entity.vo.TaskDetailPageVo;
import com.zhgd.xmgl.modules.checking.mapper.CheckingPointInfoMapper;
import com.zhgd.xmgl.modules.checking.mapper.CheckingPointMapper;
import com.zhgd.xmgl.modules.checking.service.CheckingPointService;
import com.zhgd.xmgl.util.PageUtil;
import com.zhgd.xmgl.util.RegionUtil;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
@ -28,6 +30,7 @@ import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import java.util.stream.Collectors;
@ -162,4 +165,9 @@ public class CheckingPointServiceImpl extends ServiceImpl<CheckingPointMapper, C
}
}
@Override
public IPage<TaskDetailPageVo> getTaskDetailPage(Map<String, Object> param) {
return baseMapper.getTaskDetailPage(PageUtil.getPage(param), param);
}
}

View File

@ -10,17 +10,17 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.execption.OpenAlertException;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteToPoint;
import com.zhgd.xmgl.modules.checking.enums.XzCheckingRouteFrequencyTypeEnum;
import com.zhgd.xmgl.modules.checking.mapper.XzCheckingRouteTaskMapper;
import com.zhgd.xmgl.modules.checking.mapper.XzCheckingRouteToPointMapper;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRoute;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteTask;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteToPoint;
import com.zhgd.xmgl.modules.checking.mapper.XzCheckingRouteMapper;
import com.zhgd.xmgl.modules.checking.mapper.XzCheckingRouteTaskMapper;
import com.zhgd.xmgl.modules.checking.mapper.XzCheckingRouteToPointMapper;
import com.zhgd.xmgl.modules.checking.service.IXzCheckingRouteService;
import com.zhgd.xmgl.util.DateUtils;
import com.zhgd.xmgl.util.PageUtil;
import com.zhgd.xmgl.util.RefUtil;
import org.apache.commons.collections.MapUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@ -65,6 +65,14 @@ public class XzCheckingRouteServiceImpl extends ServiceImpl<XzCheckingRouteMappe
private QueryWrapper<XzCheckingRoute> getQueryWrapper(HashMap<String, Object> paramMap) {
String alias = "t.";
QueryWrapper<XzCheckingRoute> queryWrapper = QueryGenerator.initPageQueryWrapper(XzCheckingRoute.class, paramMap, alias);
String inspectTimeBegin = MapUtils.getString(paramMap, "inspectTimeBegin");
String inspectTimeEnd = MapUtils.getString(paramMap, "inspectTimeEnd");
if (StrUtil.isNotBlank(inspectTimeBegin)) {
queryWrapper.ge(alias + RefUtil.fieldNameUlc(XzCheckingRoute::getEndTime), DateUtil.formatDate(DateUtil.parseDate(inspectTimeBegin)));
}
if (StrUtil.isNotBlank(inspectTimeEnd)) {
queryWrapper.le(alias + RefUtil.fieldNameUlc(XzCheckingRoute::getStartTime), DateUtil.formatDate(DateUtil.parseDate(inspectTimeEnd)));
}
queryWrapper.orderByDesc(alias + RefUtil.fieldNameUlc(XzCheckingRoute::getCreateDate));
return queryWrapper;
}

View File

@ -7,9 +7,11 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.zhgd.jeecg.common.execption.OpenAlertException;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.checking.entity.vo.CountMyTaskInspectStatusVo;
import com.zhgd.xmgl.modules.checking.mapper.XzCheckingRouteTaskMapper;
import com.zhgd.xmgl.modules.checking.service.IXzCheckingRouteTaskService;
import com.zhgd.xmgl.modules.checking.entity.XzCheckingRouteTask;
import com.zhgd.xmgl.security.util.SecurityUtils;
import com.zhgd.xmgl.util.PageUtil;
import com.zhgd.xmgl.util.RefUtil;
import org.apache.commons.collections.MapUtils;
@ -19,6 +21,7 @@ import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* @Description: 星纵-巡检路线的任务
@ -100,4 +103,11 @@ public class XzCheckingRouteTaskServiceImpl extends ServiceImpl<XzCheckingRouteT
return entity;
}
@Override
public CountMyTaskInspectStatusVo countMyTaskInspectStatus(Map<String, Object> param) {
Long userId = SecurityUtils.getUser().getUserId();
param.put("checkingPointUserId", userId);
return baseMapper.countMyTaskInspectStatus(param);
}
}