人员定位修改

This commit is contained in:
pengjie 2024-09-19 16:45:37 +08:00
parent 0dbf4dce47
commit 6e2efc5a73
5 changed files with 66 additions and 0 deletions

View File

@ -8,6 +8,7 @@ import com.zhgd.xmgl.modules.dangerous.service.IHiddenDangerInspectRecordService
import com.zhgd.xmgl.modules.exam.service.IExamQuestionBankService;
import com.zhgd.xmgl.modules.massrebound.service.IMassReboundSurveyAreaService;
import com.zhgd.xmgl.modules.quality.service.IQualityInspectionRecordService;
import com.zhgd.xmgl.modules.safetyhat.service.ISafetyHatDevService;
import com.zhgd.xmgl.modules.standard.service.IStandardAlarmService;
import com.zhgd.xmgl.modules.worker.service.IWorkerAttendanceService;
import com.zhgd.xmgl.modules.worker.service.IWorkerInfoService;
@ -45,6 +46,8 @@ public class DownloadController {
@Autowired
private IWorkerInfoService workerInfoService;
@Autowired
private ISafetyHatDevService safetyHatDevService;
@Autowired
private IExamQuestionBankService examQuestionBankService;
@Autowired
private IWorkerMonthAttendanceStatisticsService workerMonthAttendanceStatisticsService;
@ -333,6 +336,15 @@ public class DownloadController {
examQuestionBankService.exporExcelTemplate(response, projectSn);
}
@ApiOperation(value = "人员安全帽导入模板下载", notes = "人员安全帽导入模板下载", httpMethod = "GET")
@ApiImplicitParams({
@ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "query", required = true, dataType = "String"),
})
@GetMapping(value = "/exporExcelSafeDevTemplate")
public void exporExcelSafeDevTemplate(HttpServletResponse response, String projectSn) {
safetyHatDevService.exporExcelSafeDevTemplate(response, projectSn);
}
@ApiOperation(value = "列表查询隐患检查记录信息下载", notes = "列表查询隐患检查记录信息下载", httpMethod = "GET")
@ApiImplicitParams({
@ApiImplicitParam(name = "projectSn", value = "项目SN", paramType = "query", required = true, dataType = "String"),

View File

@ -6,6 +6,7 @@ import com.zhgd.xmgl.modules.safetyhat.entity.SafetyHatDev;
import com.zhgd.xmgl.modules.vehicleposition.entity.vo.CountVehiclePositionDevVo;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.List;
@ -59,6 +60,13 @@ public interface ISafetyHatDevService extends IService<SafetyHatDev> {
*/
CountVehiclePositionDevVo countSafetyHatDev(HashMap<String, Object> paramMap);
/**
*题库导入模板下载
* @param response
* @param projectSn
*/
void exporExcelSafeDevTemplate(HttpServletResponse response, String projectSn);
/**
*模板增量导入
* @param excelFile

View File

@ -5,14 +5,17 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
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.execption.OpenPromptException;
import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.jeecg.common.system.query.QueryGenerator;
import com.zhgd.xmgl.modules.safetyhat.entity.SafetyHatAlarm;
import com.zhgd.xmgl.modules.safetyhat.entity.SafetyHatData;
import com.zhgd.xmgl.modules.safetyhat.entity.SafetyHatDev;
import com.zhgd.xmgl.modules.safetyhat.entity.SafetyHatFence;
import com.zhgd.xmgl.modules.safetyhat.mapper.SafetyHatAlarmMapper;
import com.zhgd.xmgl.modules.safetyhat.mapper.SafetyHatDataMapper;
import com.zhgd.xmgl.modules.safetyhat.mapper.SafetyHatDevMapper;
@ -25,11 +28,13 @@ import com.zhgd.xmgl.util.ExcelUtils;
import com.zhgd.xmgl.util.MessageUtil;
import com.zhgd.xmgl.util.PageUtil;
import com.zhgd.xmgl.util.RefUtil;
import org.apache.commons.collections.MapUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import javax.servlet.http.HttpServletResponse;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
@ -124,9 +129,18 @@ public class SafetyHatDevServiceImpl extends ServiceImpl<SafetyHatDevMapper, Saf
return baseMapper.countSafetyHatDev(paramMap);
}
@Override
public void exporExcelSafeDevTemplate(HttpServletResponse response, String projectSn) {
List<SafetyHatFence> fenceList = safetyHatFenceMapper.selectList(Wrappers.<SafetyHatFence>lambdaQuery()
.eq(SafetyHatFence::getProjectSn, projectSn));
ExcelUtils.exporExcelSafeDevTemplate(response, fenceList);
}
@Override
@Transactional(rollbackFor = Exception.class, noRollbackFor = OpenPromptException.class)
public void importExcelTemplate(MultipartFile excelFile, String projectSn) throws Exception {
List<SafetyHatFence> safetyHatFenceList = safetyHatFenceMapper.selectList(Wrappers.<SafetyHatFence>lambdaQuery()
.eq(SafetyHatFence::getProjectSn, projectSn));
if (StrUtil.isBlank(projectSn)) {
throw new OpenAlertException("projectSn不能为空");
}
@ -139,6 +153,14 @@ public class SafetyHatDevServiceImpl extends ServiceImpl<SafetyHatDevMapper, Saf
list.forEach(m -> {
String name = m.get("人员名称");
String devSn = m.get("设备序号");
String fenceName = m.get("围栏名称");
Long fenceId = null;
if (!"".equals(fenceName) && !"#N/A".equals(fenceName)) {
List<SafetyHatFence> hatFences = safetyHatFenceList.stream().filter(s -> s.getFenceName().equals(fenceName)).collect(Collectors.toList());
if (hatFences.size() > 0) {
fenceId = hatFences.get(0).getId();
}
}
List<WorkerInfo> workerInfos = workerInfoMapper.selectList(new LambdaQueryWrapper<WorkerInfo>()
.eq(WorkerInfo::getProjectSn, projectSn)
.eq(WorkerInfo::getInserviceType, 1)
@ -154,12 +176,14 @@ public class SafetyHatDevServiceImpl extends ServiceImpl<SafetyHatDevMapper, Saf
if (oneDev != null) {
oneDev.setWorkerInfoId(workerInfo.getId());
oneDev.setProjectSn(projectSn);
oneDev.setFenceId(String.valueOf(fenceId));
baseMapper.updateById(oneDev);
} else {
SafetyHatDev dev = new SafetyHatDev();
dev.setWorkerInfoId(workerInfo.getId());
dev.setDevSn(devSn);
dev.setProjectSn(projectSn);
dev.setFenceId(String.valueOf(fenceId));
baseMapper.insert(dev);
}
});

View File

@ -2,6 +2,7 @@ package com.zhgd.xmgl.util;
import com.zhgd.jeecg.common.mybatis.EntityMap;
import com.zhgd.xmgl.modules.exam.entity.ExamSubject;
import com.zhgd.xmgl.modules.safetyhat.entity.SafetyHatFence;
import com.zhgd.xmgl.modules.worker.entity.WorkerSafeEducationWorker;
import com.zhgd.xmgl.modules.worker.entity.WorkerType;
import lombok.extern.slf4j.Slf4j;
@ -252,6 +253,27 @@ public class ExcelUtils {
}
}
public static void exporExcelSafeDevTemplate(HttpServletResponse response, List<SafetyHatFence> fenceList) {
try {
ClassPathResource classPathResource = new ClassPathResource("excel/安全帽设备导入模板.xlsx");
InputStream inputStream = classPathResource.getInputStream();
XSSFWorkbook workbook = new XSSFWorkbook(inputStream);
//围栏下拉列
XSSFSheet sheet2 = workbook.getSheet("围栏");
if (fenceList.size() > 0) {
for (int i = 0; i < fenceList.size(); i++) {
XSSFRow row1 = sheet2.createRow(i);
XSSFCell cell1 = row1.createCell(0);
cell1.setCellType(CellType.STRING);
cell1.setCellValue(fenceList.get(i).getFenceName());
}
}
downLoadExcel("安全帽设备导入模板.xlsx", response, workbook);
} catch (IOException e) {
log.error("error", e);
}
}
public static void exporExcelWorkerEducation(HttpServletResponse response, Map<String, Object> map, WorkerSafeEducationWorker workerSafeEducationWorker, WorkerType workerType, String basePath) {
try {
ClassPathResource classPathResource = new ClassPathResource("excel/工人教育档案.xlsx");