diff --git a/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DownloadController.java b/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DownloadController.java index 1294b3d6d..0978301aa 100644 --- a/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DownloadController.java +++ b/src/main/java/com/zhgd/xmgl/modules/basicdata/controller/DownloadController.java @@ -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"), diff --git a/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/ISafetyHatDevService.java b/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/ISafetyHatDevService.java index 2e53cba93..48c0c667f 100644 --- a/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/ISafetyHatDevService.java +++ b/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/ISafetyHatDevService.java @@ -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 { */ CountVehiclePositionDevVo countSafetyHatDev(HashMap paramMap); + /** + *题库导入模板下载 + * @param response + * @param projectSn + */ + void exporExcelSafeDevTemplate(HttpServletResponse response, String projectSn); + /** *模板增量导入 * @param excelFile diff --git a/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/impl/SafetyHatDevServiceImpl.java b/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/impl/SafetyHatDevServiceImpl.java index 168f3fb52..0150d5b33 100644 --- a/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/impl/SafetyHatDevServiceImpl.java +++ b/src/main/java/com/zhgd/xmgl/modules/safetyhat/service/impl/SafetyHatDevServiceImpl.java @@ -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 fenceList = safetyHatFenceMapper.selectList(Wrappers.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 safetyHatFenceList = safetyHatFenceMapper.selectList(Wrappers.lambdaQuery() + .eq(SafetyHatFence::getProjectSn, projectSn)); if (StrUtil.isBlank(projectSn)) { throw new OpenAlertException("projectSn不能为空"); } @@ -139,6 +153,14 @@ public class SafetyHatDevServiceImpl extends ServiceImpl { String name = m.get("人员名称"); String devSn = m.get("设备序号"); + String fenceName = m.get("围栏名称"); + Long fenceId = null; + if (!"".equals(fenceName) && !"#N/A".equals(fenceName)) { + List hatFences = safetyHatFenceList.stream().filter(s -> s.getFenceName().equals(fenceName)).collect(Collectors.toList()); + if (hatFences.size() > 0) { + fenceId = hatFences.get(0).getId(); + } + } List workerInfos = workerInfoMapper.selectList(new LambdaQueryWrapper() .eq(WorkerInfo::getProjectSn, projectSn) .eq(WorkerInfo::getInserviceType, 1) @@ -154,12 +176,14 @@ public class SafetyHatDevServiceImpl extends ServiceImpl 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 map, WorkerSafeEducationWorker workerSafeEducationWorker, WorkerType workerType, String basePath) { try { ClassPathResource classPathResource = new ClassPathResource("excel/工人教育档案.xlsx"); diff --git a/src/main/resources/excel/安全帽设备导入模板.xlsx b/src/main/resources/excel/安全帽设备导入模板.xlsx index 2243dbbc0..f58bd1e91 100644 Binary files a/src/main/resources/excel/安全帽设备导入模板.xlsx and b/src/main/resources/excel/安全帽设备导入模板.xlsx differ