Parcourir la source

新增获取巡检记录列表

master
鲲鹏 il y a 4 ans
Parent
révision
a4a8bc2138
22 fichiers modifiés avec 218 ajouts et 7 suppressions
  1. +5
    -0
      src/main/java/com/taauav/admin/entity/TauvInspectQuestion.java
  2. +12
    -5
      src/main/java/com/taauav/api/controller/InspectAppController.java
  3. +15
    -0
      src/main/java/com/taauav/api/mapper/InspectAppMapper.java
  4. +9
    -0
      src/main/java/com/taauav/api/mapper/InspectAppMapper.xml
  5. +1
    -1
      src/main/java/com/taauav/api/mapper/InspectQuestionMapper.xml
  6. +11
    -0
      src/main/java/com/taauav/api/query/InspectListQuery.java
  7. +9
    -0
      src/main/java/com/taauav/api/service/IInspectAppService.java
  8. +65
    -1
      src/main/java/com/taauav/api/service/impl/InspectAppServiceImpl.java
  9. +1
    -0
      src/main/java/com/taauav/api/service/impl/InspectQuestionServiceImpl.java
  10. +85
    -0
      src/main/java/com/taauav/api/vo/InspectListVo.java
  11. +5
    -0
      src/main/java/com/taauav/api/vo/InspectQuestionListVo.java
  12. BIN
      upload/2e828674d5ec4dcc9eac9719f188ccd0_1.png
  13. BIN
      upload/2e828674d5ec4dcc9eac9719f188ccd0_2.png
  14. BIN
      upload/41fd9ef9698a4773a58c42fa632afed3_1.png
  15. BIN
      upload/41fd9ef9698a4773a58c42fa632afed3_2.png
  16. BIN
      upload/a6d31893cc1349a08b74ddbbf6875b41_1.png
  17. BIN
      upload/a6d31893cc1349a08b74ddbbf6875b41_2.png
  18. BIN
      upload/file/file/2020820/2e828674d5ec4dcc9eac9719f188ccd0.png
  19. BIN
      upload/file/file/2020820/41fd9ef9698a4773a58c42fa632afed3.png
  20. BIN
      upload/file/file/2020820/a6d31893cc1349a08b74ddbbf6875b41.png
  21. BIN
      upload/temp/2020/8/20/6352f33d47-thumbnail.jpeg
  22. BIN
      upload/temp/2020/8/20/6352f33d47.jpeg

+ 5
- 0
src/main/java/com/taauav/admin/entity/TauvInspectQuestion.java Voir le fichier

* 备注 * 备注
*/ */
private String note; private String note;

/**
* 来源:1客户后台 2APP客户端
*/
private Integer source;
} }

+ 12
- 5
src/main/java/com/taauav/api/controller/InspectAppController.java Voir le fichier

import com.taauav.api.dto.InspectEndDto; import com.taauav.api.dto.InspectEndDto;
import com.taauav.api.dto.InspectPauseDto; import com.taauav.api.dto.InspectPauseDto;
import com.taauav.api.dto.InspectStartDto; import com.taauav.api.dto.InspectStartDto;
import com.taauav.api.query.InspectListQuery;
import com.taauav.api.service.IInspectAppService; import com.taauav.api.service.IInspectAppService;
import com.taauav.common.bean.Response; import com.taauav.common.bean.Response;
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.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;

import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;


/** /**
* <p> * <p>
return inspectAppService.inspectPause(inspectEndDto); return inspectAppService.inspectPause(inspectEndDto);
} }


/**
* 获取巡检记录列表
*
* @return
*/
@PostMapping("/getInspectList")
public Response getInspectList(@RequestBody InspectListQuery inspectListQuery) {
return inspectAppService.getInspectList(inspectListQuery);
}

} }

+ 15
- 0
src/main/java/com/taauav/api/mapper/InspectAppMapper.java Voir le fichier

package com.taauav.api.mapper; package com.taauav.api.mapper;


import com.baomidou.mybatisplus.core.metadata.IPage;
import com.taauav.admin.entity.TauvInspectApp; import com.taauav.admin.entity.TauvInspectApp;
import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.taauav.api.query.InspectListQuery;
import com.taauav.api.vo.InspectListVo;
import org.springframework.web.bind.annotation.RequestParam;

import java.util.List;


/** /**
* <p> * <p>
*/ */
public interface InspectAppMapper extends BaseMapper<TauvInspectApp> { public interface InspectAppMapper extends BaseMapper<TauvInspectApp> {


/**
* 获取巡检任务列表
*
* @param page 分页
* @param param 参数
* @return
*/
IPage<InspectListVo> getInspectList(IPage<InspectListVo> page, @RequestParam("param") InspectListQuery param);

} }

+ 9
- 0
src/main/java/com/taauav/api/mapper/InspectAppMapper.xml Voir le fichier

<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.taauav.api.mapper.InspectAppMapper"> <mapper namespace="com.taauav.api.mapper.InspectAppMapper">


<!-- 获取巡检任务记录列表 -->
<select id="getInspectList" resultType="com.taauav.api.vo.InspectListVo">
SELECT a.id as 'inspectId',i.id as 'inspectDriverId',a.inspect_no as 'inspectNo',a.driver_id AS 'driverId',d.`name` AS 'driverName',d.driver_area AS 'driverArea',a.begin_time AS 'beginTime',a.end_time AS 'endTime',u.realname,(SELECT TIMESTAMPDIFF( MINUTE,a.begin_time,NOW())) AS 'timeUse' FROM tauv_inspect_app AS a
INNER JOIN tauv_inspect_driver AS i ON i.inspect_id=a.id
INNER JOIN tauv_driver AS d ON a.driver_id=d.id
INNER JOIN user_admin AS u ON a.create_user=u.id
WHERE a.mark=1 AND d.mark=1 AND u.mark=1
</select>

</mapper> </mapper>

+ 1
- 1
src/main/java/com/taauav/api/mapper/InspectQuestionMapper.xml Voir le fichier



<!-- 获取问题详情 --> <!-- 获取问题详情 -->
<select id="getQuestionInfo" resultType="com.taauav.api.vo.InspectQuestionListVo"> <select id="getQuestionInfo" resultType="com.taauav.api.vo.InspectQuestionListVo">
SELECT q.id,q.question_no, q.`status`,q.handler_image,q.create_time,q.assign_time,q.handler_time,f.src as 'question_src',f.gaode_address as 'question_address',q.question_id,o.content as 'question_content',i.driver_name,i.driver_area,c.`name` as 'city_name',i.execution_time,i.driver_id FROM tauv_inspect_question AS q
SELECT q.id,q.question_no, q.`status`,q.handler_image,q.create_time,q.assign_time,q.handler_time,f.src as 'question_src',f.gaode_address as 'question_address',q.question_id,o.content as 'question_content',i.driver_name,i.driver_area,c.`name` as 'city_name',i.execution_time,i.driver_id,i.driver_video FROM tauv_inspect_question AS q
INNER JOIN tauv_inspect_driver AS i ON q.inspect_driver_id=i.id INNER JOIN tauv_inspect_driver AS i ON q.inspect_driver_id=i.id
INNER JOIN tauv_question_options AS o ON q.question_id=o.id INNER JOIN tauv_question_options AS o ON q.question_id=o.id
INNER JOIN sys_city AS c ON c.id=i.driver_area INNER JOIN sys_city AS c ON c.id=i.driver_area

+ 11
- 0
src/main/java/com/taauav/api/query/InspectListQuery.java Voir le fichier

package com.taauav.api.query;

import com.taauav.common.core.mps.BaseQuery;
import lombok.Data;

/**
* 巡检记录列表Query
*/
@Data
public class InspectListQuery extends BaseQuery {
}

+ 9
- 0
src/main/java/com/taauav/api/service/IInspectAppService.java Voir le fichier

import com.taauav.api.dto.InspectEndDto; import com.taauav.api.dto.InspectEndDto;
import com.taauav.api.dto.InspectPauseDto; import com.taauav.api.dto.InspectPauseDto;
import com.taauav.api.dto.InspectStartDto; import com.taauav.api.dto.InspectStartDto;
import com.taauav.api.query.InspectListQuery;
import com.taauav.common.bean.Response; import com.taauav.common.bean.Response;


/** /**
*/ */
Response inspectPause(InspectPauseDto inspectPauseDto); Response inspectPause(InspectPauseDto inspectPauseDto);


/**
* 获取巡检记录列表
*
* @param inspectListQuery 查询条件
* @return
*/
Response getInspectList(InspectListQuery inspectListQuery);

} }

+ 65
- 1
src/main/java/com/taauav/api/service/impl/InspectAppServiceImpl.java Voir le fichier

package com.taauav.api.service.impl; package com.taauav.api.service.impl;


import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.taauav.admin.entity.TauvDriver; import com.taauav.admin.entity.TauvDriver;
import com.taauav.admin.entity.TauvInspectApp; import com.taauav.admin.entity.TauvInspectApp;
import com.taauav.admin.entity.TauvInspectDriver; import com.taauav.admin.entity.TauvInspectDriver;
import com.taauav.admin.entity.TauvInspectQuestion;
import com.taauav.admin.mapper.TauvDriverMapper; import com.taauav.admin.mapper.TauvDriverMapper;
import com.taauav.admin.mapper.TauvInspectDriverMapper; import com.taauav.admin.mapper.TauvInspectDriverMapper;
import com.taauav.admin.service.ISysCityService;
import com.taauav.api.dto.InspectEndDto; import com.taauav.api.dto.InspectEndDto;
import com.taauav.api.dto.InspectPauseDto; import com.taauav.api.dto.InspectPauseDto;
import com.taauav.api.dto.InspectStartDto; import com.taauav.api.dto.InspectStartDto;
import com.taauav.api.mapper.InspectAppMapper; import com.taauav.api.mapper.InspectAppMapper;
import com.taauav.api.mapper.InspectQuestionMapper;
import com.taauav.api.query.InspectListQuery;
import com.taauav.api.service.IInspectAppService; import com.taauav.api.service.IInspectAppService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.taauav.api.vo.InspectListVo;
import com.taauav.common.bean.Response; import com.taauav.common.bean.Response;
import com.taauav.common.util.DateUtil; import com.taauav.common.util.DateUtil;
import com.taauav.common.util.FunctionUtils; import com.taauav.common.util.FunctionUtils;
import com.taauav.common.util.ShiroUtils; import com.taauav.common.util.ShiroUtils;
import com.taauav.common.util.StringUtils; import com.taauav.common.util.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;


import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


/** /**
* <p> * <p>
@Autowired @Autowired
private TauvInspectDriverMapper inspectDriverMapper; private TauvInspectDriverMapper inspectDriverMapper;
@Autowired @Autowired
private ISysCityService cityService;
@Autowired
private InspectQuestionMapper inspectQuestionMapper;
@Autowired
private Response response; private Response response;


/** /**
if (res == 0) { if (res == 0) {
return response.failure("巡检河湖任务创建失败"); return response.failure("巡检河湖任务创建失败");
} }
return response.success("巡检任务创建成功");
return response.success("巡检任务创建成功", entity);
} }


/** /**
return response.failure("巡检任务不存在"); return response.failure("巡检任务不存在");
} }
inspectApp.setStatus(3); inspectApp.setStatus(3);
inspectApp.setEndTime(DateUtil.now());
int result = inspectAppMapper.updateById(inspectApp); int result = inspectAppMapper.updateById(inspectApp);
if (result == 0) { if (result == 0) {
return response.failure("巡检任务状态更新失败"); return response.failure("巡检任务状态更新失败");
} }
return response.success("巡检暂停成功"); return response.success("巡检暂停成功");
} }

/**
* 获取巡检记录列表
*
* @param inspectListQuery 查询条件
* @return
*/
@Override
public Response getInspectList(InspectListQuery inspectListQuery) {
// 分页
IPage<InspectListVo> page = new Page<>(inspectListQuery.getPage(), inspectListQuery.getPageSize());
IPage<InspectListVo> data = inspectAppMapper.getInspectList(page, inspectListQuery);
List<InspectListVo> inspectList = data.getRecords();
List<InspectListVo> inspectListVoList = new ArrayList<>();
if (!inspectList.isEmpty()) {
inspectList.forEach(item -> {
// 属性拷贝
InspectListVo inspectListVo = new InspectListVo();
BeanUtils.copyProperties(item, inspectListVo);

// 获取区划信息
if (item.getDriverArea() != null) {
String cityName = cityService.getCityName(item.getDriverArea());
inspectListVo.setDriverAreaName(cityName);
}

// 获取问题数
QueryWrapper<TauvInspectQuestion> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("inspect_driver_id", item.getInspectDriverId());
queryWrapper.eq("source", 2);
queryWrapper.eq("mark", 1);
Integer questionNum = inspectQuestionMapper.selectCount(queryWrapper);
inspectListVo.setQuestonNum(questionNum);
inspectListVoList.add(inspectListVo);
});
}

// 返回结果
Map<String, Object> result = new HashMap<>();
result.put("total", data.getTotal());
result.put("size", data.getSize());
result.put("current", data.getCurrent());
result.put("pages", data.getPages());
result.put("records", inspectListVoList);
return response.success(result);
}
} }

+ 1
- 0
src/main/java/com/taauav/api/service/impl/InspectQuestionServiceImpl.java Voir le fichier

inspectQuestion.setNote(inspectQuestionDto.getQuestionNote()); inspectQuestion.setNote(inspectQuestionDto.getQuestionNote());
inspectQuestion.setCreateUser(ShiroUtils.getAdminId()); inspectQuestion.setCreateUser(ShiroUtils.getAdminId());
inspectQuestion.setCreateTime(DateUtil.now()); inspectQuestion.setCreateTime(DateUtil.now());
inspectQuestion.setSource(2);
Integer result2 = inspectQuestionMapper.insert(inspectQuestion); Integer result2 = inspectQuestionMapper.insert(inspectQuestion);
if (result2 == 0) { if (result2 == 0) {
return response.failure("上报失败"); return response.failure("上报失败");

+ 85
- 0
src/main/java/com/taauav/api/vo/InspectListVo.java Voir le fichier

package com.taauav.api.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigInteger;
import java.util.Date;

/**
* 巡检任务Vo
*/
@Data
public class InspectListVo {

/**
* 巡检任务ID
*/
private Integer inspectId;

/**
* 巡检河流ID
*/
private Integer inspectDriverId;

/**
* 巡检任务单号
*/
private String inspectNo;

/**
* 河道ID
*/
private Integer driverId;

/**
* 河道名称
*/
private String driverName;

/**
* 区划ID
*/
private BigInteger driverArea;

/**
* 区划名称
*/
private String driverAreaName;

/**
* 开始时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date beginTime;

/**
* 结束时间
*/
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date endTime;

/**
* 巡查人
*/
private String realname;

/**
* 耗时(单位:分钟)
*/
private String timeUse;

/**
* 问题数
*/
private Integer questonNum;

/**
* 巡检距离(单位:KM)
*/
private String inspectLength;

}

+ 5
- 0
src/main/java/com/taauav/api/vo/InspectQuestionListVo.java Voir le fichier

*/ */
private Integer driverId; private Integer driverId;


/**
* 巡检视频地址
*/
private String driverVideo;

/** /**
* 问题原图 * 问题原图
*/ */

BIN
upload/2e828674d5ec4dcc9eac9719f188ccd0_1.png Voir le fichier

Before After
Width: 100  |  Height: 100  |  Size: 2.1KB

BIN
upload/2e828674d5ec4dcc9eac9719f188ccd0_2.png Voir le fichier

Before After
Width: 650  |  Height: 365  |  Size: 6.2KB

BIN
upload/41fd9ef9698a4773a58c42fa632afed3_1.png Voir le fichier

Before After
Width: 100  |  Height: 100  |  Size: 2.1KB

BIN
upload/41fd9ef9698a4773a58c42fa632afed3_2.png Voir le fichier

Before After
Width: 650  |  Height: 365  |  Size: 6.2KB

BIN
upload/a6d31893cc1349a08b74ddbbf6875b41_1.png Voir le fichier

Before After
Width: 100  |  Height: 100  |  Size: 2.1KB

BIN
upload/a6d31893cc1349a08b74ddbbf6875b41_2.png Voir le fichier

Before After
Width: 650  |  Height: 365  |  Size: 6.2KB

BIN
upload/file/file/2020820/2e828674d5ec4dcc9eac9719f188ccd0.png Voir le fichier

Before After
Width: 128  |  Height: 128  |  Size: 5.4KB

BIN
upload/file/file/2020820/41fd9ef9698a4773a58c42fa632afed3.png Voir le fichier

Before After
Width: 128  |  Height: 128  |  Size: 5.4KB

BIN
upload/file/file/2020820/a6d31893cc1349a08b74ddbbf6875b41.png Voir le fichier

Before After
Width: 128  |  Height: 128  |  Size: 5.4KB

BIN
upload/temp/2020/8/20/6352f33d47-thumbnail.jpeg Voir le fichier

Before After
Width: 450  |  Height: 338  |  Size: 43KB

BIN
upload/temp/2020/8/20/6352f33d47.jpeg Voir le fichier

Before After
Width: 562  |  Height: 422  |  Size: 74KB

Chargement…
Annuler
Enregistrer