Browse Source

fit:1、督察任务发布后端v1.5

master
pengwei 7 months ago
parent
commit
1ee097e6e6
  1. 48
      src/main/java/com/biutag/supervision/controller/mobileSupervision/TaskManagementController.java
  2. 60
      src/main/java/com/biutag/supervision/pojo/dto/SupRiskDto.java
  3. 2
      src/main/java/com/biutag/supervision/pojo/dto/TaskManagementDto.java
  4. 23
      src/main/java/com/biutag/supervision/service/TaskManagementService.java

48
src/main/java/com/biutag/supervision/controller/mobileSupervision/TaskManagementController.java

@ -7,15 +7,20 @@ import com.alibaba.excel.EasyExcel;
import com.alibaba.excel.ExcelReader; import com.alibaba.excel.ExcelReader;
import com.alibaba.excel.context.AnalysisContext; import com.alibaba.excel.context.AnalysisContext;
import com.alibaba.excel.read.listener.ReadListener; import com.alibaba.excel.read.listener.ReadListener;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.biutag.supervision.pojo.Result; import com.biutag.supervision.pojo.Result;
import com.biutag.supervision.pojo.dto.DataCaseVerifImportDto; import com.biutag.supervision.pojo.dto.DataCaseVerifImportDto;
import com.biutag.supervision.pojo.dto.SupRiskDto;
import com.biutag.supervision.pojo.dto.TaskManagementDto; import com.biutag.supervision.pojo.dto.TaskManagementDto;
import com.biutag.supervision.pojo.dto.TemperancePoliceDto; import com.biutag.supervision.pojo.dto.TemperancePoliceDto;
import com.biutag.supervision.pojo.entity.SupDepart;
import com.biutag.supervision.pojo.entity.SupRiskPersonal;
import com.biutag.supervision.pojo.param.TaskInspectionQueryParam; import com.biutag.supervision.pojo.param.TaskInspectionQueryParam;
import com.biutag.supervision.pojo.param.TaskQueryParam; import com.biutag.supervision.pojo.param.TaskQueryParam;
import com.biutag.supervision.pojo.vo.TaskInspectionVo; import com.biutag.supervision.pojo.vo.TaskInspectionVo;
import com.biutag.supervision.pojo.vo.TaskVo; import com.biutag.supervision.pojo.vo.TaskVo;
import com.biutag.supervision.service.SupDepartService;
import com.biutag.supervision.service.SupTaskService; import com.biutag.supervision.service.SupTaskService;
import com.biutag.supervision.service.TaskManagementService; import com.biutag.supervision.service.TaskManagementService;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
@ -36,6 +41,8 @@ public class TaskManagementController {
private final TaskManagementService taskManagementService; private final TaskManagementService taskManagementService;
private final SupTaskService taskService; private final SupTaskService taskService;
private final SupDepartService departService;
@GetMapping @GetMapping
public Result<Page<TaskVo>> pageResult(TaskQueryParam queryParam) { public Result<Page<TaskVo>> pageResult(TaskQueryParam queryParam) {
return Result.success(taskService.pageTaskData(queryParam)); return Result.success(taskService.pageTaskData(queryParam));
@ -68,7 +75,7 @@ public class TaskManagementController {
} }
} }
@PostMapping("import") @PostMapping("/import")
public Result<List<TemperancePoliceDto>> importExcel(@RequestPart("file") MultipartFile file) throws IOException { public Result<List<TemperancePoliceDto>> importExcel(@RequestPart("file") MultipartFile file) throws IOException {
log.info("文件导入中------------------------------"); log.info("文件导入中------------------------------");
String fileNameType = FileUtil.extName(file.getOriginalFilename()); String fileNameType = FileUtil.extName(file.getOriginalFilename());
@ -82,15 +89,50 @@ public class TaskManagementController {
public void invoke(TemperancePoliceDto data, AnalysisContext analysisContext) { public void invoke(TemperancePoliceDto data, AnalysisContext analysisContext) {
list.add(data); list.add(data);
} }
@Override @Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) { public void doAfterAllAnalysed(AnalysisContext analysisContext) {
} }
}).build().read(EasyExcel.readSheet(0).build()); }).build().read(EasyExcel.readSheet(0).build());
excelReader.close(); excelReader.close();
log.info("数据导入完成"); log.info("数据导入完成");
return Result.success(list); return Result.success(list);
} }
/**
* 重点督察人员导入
* */
@PostMapping("/importSupRiskPersonal")
public Result<List<SupRiskDto>> importSupRiskPersonal(@RequestPart("file")MultipartFile file) throws IOException{
log.info("重点督察人员文件导入中------------------------------");
String fileNameType = FileUtil.extName(file.getOriginalFilename());
if (!"xls".equals(fileNameType) && !"xlsx".equals(fileNameType)) {
throw new RuntimeException("仅支持 xls/xlsx 格式文件的导入");
}
List<SupRiskDto> list = new ArrayList<>();
ExcelReader excelReader = EasyExcel.read(file.getInputStream(), SupRiskDto.class, new ReadListener<SupRiskDto>() {
@Override
public void invoke(SupRiskDto data, AnalysisContext analysisContext) {
String[] departParts = data.getResponsibleDepartName().replace("长沙市公安局", "").split("-");
String departName = departParts[departParts.length - 1];
List<SupDepart> departs = departService.list(new LambdaQueryWrapper<SupDepart>().eq(SupDepart::getShortName, departName));
if (departs.size() == 1) {
data.setResponsibleDepartId(departs.get(0).getId());
} else if (departParts.length > 1) {
String departPart = departParts[0].replace("公安", "");
List<SupDepart> departs2 = departService.list(new LambdaQueryWrapper<SupDepart>().eq(SupDepart::getShortName, departPart));
if (departs2.size() == 1) {
data.setResponsibleDepartId(departs2.get(0).getId());
}
}
list.add(data);
}
@Override
public void doAfterAllAnalysed(AnalysisContext analysisContext) {
}
}).headRowNumber(2).build().read(EasyExcel.readSheet(0).build());
excelReader.close();
log.info("重点督察人员数据导入完成");
return Result.success(list);
}
} }

60
src/main/java/com/biutag/supervision/pojo/dto/SupRiskDto.java

@ -0,0 +1,60 @@
package com.biutag.supervision.pojo.dto;
import com.alibaba.excel.annotation.ExcelProperty;
import lombok.Getter;
import lombok.Setter;
@Getter
@Setter
public class SupRiskDto {
// 姓名
@ExcelProperty({"姓名*"})
private String name;
// 性别男1女2
@ExcelProperty({"性别*"})
private String gender;
// 证件号码
@ExcelProperty({"身份证号*"})
private String idCode;
// 手机号
@ExcelProperty({"联系方式"})
private String mobile;
// 人员类别
@ExcelProperty({"人员类别*"})
private String personalType;
// 管控级别
@ExcelProperty({"管控级别*"})
private String controlLevel;
//责任单位Id
private String responsibleDepartId;
// 责任单位名称
@ExcelProperty({"责任单位*"})
private String responsibleDepartName;
//责任民警警号
private String responsibleEmpNo;
// 责任民警姓名
@ExcelProperty({"责任民警*"})
private String responsibleName;
// 包保督察人员警号
@ExcelProperty({"包保督察人员警号*"})
private String controlEmpNo;
// 包保督察人员姓名
@ExcelProperty({"包保督察人员姓名*"})
private String controlName;
// 管控间隔
@ExcelProperty({"管控间隔*"})
private String controlTimeInterval;
}

2
src/main/java/com/biutag/supervision/pojo/dto/TaskManagementDto.java

@ -44,6 +44,8 @@ public class TaskManagementDto {
private List<String> selfOrgs; private List<String> selfOrgs;
//任务内容 //任务内容
private List<SupTaskSelfexaminationContent> selfContents; private List<SupTaskSelfexaminationContent> selfContents;
//重点督察人员列表
private List<SupRiskDto> supRiskDtoList;
} }

23
src/main/java/com/biutag/supervision/service/TaskManagementService.java

@ -67,6 +67,9 @@ public class TaskManagementService {
if("禁酒督察".equals(dto.getSpecialType())){ if("禁酒督察".equals(dto.getSpecialType())){
task.setTaskType("testing_alcohol"); task.setTaskType("testing_alcohol");
} }
if("重点人员管控".equals(dto.getSpecialType())){
task.setTaskType("risk_personal");
}
} }
taskService.save(task); taskService.save(task);
if("日常督察".equals(dto.getSupervisionType())){ if("日常督察".equals(dto.getSupervisionType())){
@ -133,7 +136,25 @@ public class TaskManagementService {
item.setStatus(TaskStatusEnum.todo.name()); item.setStatus(TaskStatusEnum.todo.name());
}); });
return testingAlcoholPeopleService.saveBatch(dto.getUserList()); return testingAlcoholPeopleService.saveBatch(dto.getUserList());
}else{ }
if("重点人员管控".equals(dto.getSpecialType())){
// List<SupRiskPersonalControlRecord> uniquePersons = personList.stream()
// .collect(Collectors.toMap(
// Person::getId, // keyMapper,提取id作为key
// Function.identity(), // valueMapper,直接使用Person对象作为value
// (k, v) -> v // mergeFunction,处理key冲突,这里保留后者
// )).values().stream() // 获取Map的values()并转换为Stream
// .collect(Collectors.toList()); // 收集为List
// dto.getSupRiskDtoList().forEach(s->{
// SupRiskPersonal supRiskPersonal=new SupRiskPersonal();
// BeanUtils.copyProperties(s,supRiskPersonal);
// supRiskPersonal.setCreateTime(LocalDateTime.now());
// });
return true;
}
else{
return true; return true;
} }
} }

Loading…
Cancel
Save