diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/controller/PgsReportExportController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/controller/PgsReportExportController.java index 3a83276f..e397fc57 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/controller/PgsReportExportController.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/controller/PgsReportExportController.java @@ -15,10 +15,13 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook; import org.dromara.common.core.enums.FormatsType; import org.dromara.common.core.exception.ServiceException; import org.dromara.common.core.utils.DateUtils; +import org.dromara.common.core.utils.StringUtils; import org.dromara.common.web.core.BaseController; import org.dromara.manager.weathermanager.WeatherConstant; import org.dromara.manager.weathermanager.WeatherManager; import org.dromara.manager.weathermanager.vo.WeatherVo; +import org.dromara.mechanical.domain.BusMechanicalrewriting; +import org.dromara.mechanical.service.IBusMechanicalrewritingService; import org.dromara.progress.domain.dto.export.ReportExportDto; import org.dromara.progress.domain.vo.export.*; import org.dromara.progress.domain.vo.progresscategory.PgsProgressCategoryByDayVo; @@ -49,10 +52,7 @@ import java.net.URL; import java.text.ParseException; import java.text.SimpleDateFormat; import java.time.LocalDate; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.Date; -import java.util.List; +import java.util.*; import java.util.stream.Collectors; @Validated @@ -71,6 +71,8 @@ public class PgsReportExportController extends BaseController { private IHseSafetyInspectionService safetyInspectionService; @Resource private ISysOssService ossService; + @Resource + private IBusMechanicalrewritingService busMechanicalrewritingService; @Resource private WeatherManager weatherManager; @@ -187,6 +189,8 @@ public class PgsReportExportController extends BaseController { List inspectionList = projectData.getInspectionList(); String projectName = projectData.getProjectName(); String projectDate = projectData.getProjectDate(); + String processName = projectData.getProcessName(); + String nextPlanStr = projectData.getNextPlanStr(); // ============================================== // 1. 第一行:A1-M1合并(加上行偏移量和列偏移量) @@ -303,7 +307,7 @@ public class PgsReportExportController extends BaseController { // 15. 光伏场区标题行(C6-M6合并) // ============================================== CellRangeAddress fieldTitleRegion = new CellRangeAddress(5 + rowOffset, 5 + rowOffset, 2 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, fieldTitleRegion, "光伏场区", headerStyle); + mergeAndFill(sheet, fieldTitleRegion, processName, headerStyle); drawBorderForRegion(sheet, fieldTitleRegion, workbook); Row fieldTitleRow = sheet.getRow(5 + rowOffset); if (fieldTitleRow == null) { @@ -361,7 +365,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, processRegion, "施工形象及进度", headerStyle); drawBorderForRegion(sheet, processRegion, workbook); - headerRow.setHeightInPoints(25); + headerRow.setHeightInPoints(30); // ============================================== // 17. 动态填充进度数据 @@ -417,7 +421,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, processDataRegion, data.getProcess(), contentStyle); drawBorderForRegion(sheet, processDataRegion, workbook); - dataRow.setHeightInPoints(20); + dataRow.setHeightInPoints(30); } } @@ -437,7 +441,7 @@ public class PgsReportExportController extends BaseController { // F-M列合并:无 CellRangeAddress noteContentRegion = new CellRangeAddress(noteRowNum, noteRowNum, 5 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, noteContentRegion, "无", contentStyle); + mergeAndFill(sheet, noteContentRegion, "", contentStyle); drawBorderForRegion(sheet, noteContentRegion, workbook); noteRow.setHeightInPoints(25); @@ -460,7 +464,7 @@ public class PgsReportExportController extends BaseController { } } int rowCount = endMergeRow - startMergeRow + 1; - int baseHeight = 20; + int baseHeight = 30; int extraHeight = (int) (totalHeight - rowCount * baseHeight); // 额外高度分配给首行 Row firstRow = sheet.getRow(startMergeRow); if (firstRow != null) { @@ -535,11 +539,7 @@ public class PgsReportExportController extends BaseController { drawBorderForRegion(sheet, siteSubTitleRegion, workbook); // F-M列合并:详细内容 - String siteContent = "一.光伏区施工情况\n" + - "1.1#、3#、5#方阵支架、组件安装;\n" + - "2.2#方阵直流电缆敷设。\n\n" + - "二.验收情况\n" + - "今日无验收。"; + String siteContent = ""; CellRangeAddress siteContentRegion = new CellRangeAddress(siteRowNum, siteRowNum, 5 + columnOffset, 12 + columnOffset); mergeAndFill(sheet, siteContentRegion, siteContent, contentStyle); drawBorderForRegion(sheet, siteContentRegion, workbook); @@ -626,7 +626,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, remarkRegion1, "备注", headerStyle); drawBorderForRegion(sheet, remarkRegion1, workbook); - titleRow2.setHeightInPoints(25); + titleRow2.setHeightInPoints(35); // ============================================== // 26. 动态填充参建单位人员数据 @@ -724,7 +724,7 @@ public class PgsReportExportController extends BaseController { // C-M列合并:光伏场区工程:(左对齐) CellRangeAddress machineHeaderRegion = new CellRangeAddress(machineTitleRow, machineTitleRow, 2 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, machineHeaderRegion, "光伏场区工程:", leftHeaderStyle); + mergeAndFill(sheet, machineHeaderRegion, processName+"工程:", leftHeaderStyle); drawBorderForRegion(sheet, machineHeaderRegion, workbook); machineTitle.setHeightInPoints(25); @@ -745,7 +745,7 @@ public class PgsReportExportController extends BaseController { drawBorderForRegion(sheet, machineCountRegion, workbook); // E-M列合并:设备清单(逗号分隔) - String equipmentListStr = "RTK-0、清孔工具-0、电动扳手-20、小蜜蜂-0"; + String equipmentListStr = paramData.getDevice(); CellRangeAddress equipmentRegion = new CellRangeAddress(machineDataRow, machineDataRow, 4 + columnOffset, 12 + columnOffset); mergeAndFill(sheet, equipmentRegion, equipmentListStr, contentStyle); drawBorderForRegion(sheet, equipmentRegion, workbook); @@ -849,7 +849,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, remarkRegion2, "备注", headerStyle); drawBorderForRegion(sheet, remarkRegion2, workbook); - eqHeaderRow.setHeightInPoints(20); + eqHeaderRow.setHeightInPoints(30); // ============================================== // 33. 动态填充设备进场数据 @@ -908,7 +908,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, remarkDataRegion2, data.getRemark(), contentStyle); drawBorderForRegion(sheet, remarkDataRegion2, workbook); - dataRow.setHeightInPoints(20); + dataRow.setHeightInPoints(30); } } @@ -928,10 +928,10 @@ public class PgsReportExportController extends BaseController { // F-M列合并:待生产 CellRangeAddress eqNoteContentRegion = new CellRangeAddress(equipmentNoteRow, equipmentNoteRow, 5 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, eqNoteContentRegion, "待生产", contentStyle); + mergeAndFill(sheet, eqNoteContentRegion, "", contentStyle); drawBorderForRegion(sheet, eqNoteContentRegion, workbook); - eqNoteRow.setHeightInPoints(20); + eqNoteRow.setHeightInPoints(30); // ============================================== // 35. 主要材料进场情况标题行(情况说明行下一行) @@ -946,7 +946,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, materialHeaderRegion, "主要材料进场情况:", leftHeaderStyle); drawBorderForRegion(sheet, materialHeaderRegion, workbook); - materialTitle.setHeightInPoints(20); + materialTitle.setHeightInPoints(30); // ============================================== // 36. 光伏场区工程标题行(主要材料标题行下一行) @@ -958,10 +958,10 @@ public class PgsReportExportController extends BaseController { } CellRangeAddress materialSubHeaderRegion = new CellRangeAddress(materialSubTitleRow, materialSubTitleRow, 2 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, materialSubHeaderRegion, "1.光伏场区工程:", leftHeaderStyle); + mergeAndFill(sheet, materialSubHeaderRegion, processName+"工程:", leftHeaderStyle); drawBorderForRegion(sheet, materialSubHeaderRegion, workbook); - materialSubTitle.setHeightInPoints(20); + materialSubTitle.setHeightInPoints(30); // ============================================== // 37. 材料进场情况表头行(光伏场区工程标题行下一行) @@ -1003,7 +1003,7 @@ public class PgsReportExportController extends BaseController { CellRangeAddress materialMRegion = new CellRangeAddress(materialHeaderRow, materialHeaderRow, 12 + columnOffset, 12 + columnOffset); drawBorderForRegion(sheet, materialMRegion, workbook); - materialHeader.setHeightInPoints(20); + materialHeader.setHeightInPoints(30); // ============================================== // 38. 动态填充材料进场数据 @@ -1052,7 +1052,7 @@ public class PgsReportExportController extends BaseController { CellRangeAddress inspectionRegion = new CellRangeAddress(rowNum, rowNum, 12 + columnOffset, 12 + columnOffset); drawBorderForRegion(sheet, inspectionRegion, workbook); - dataRow.setHeightInPoints(20); + dataRow.setHeightInPoints(30); } } @@ -1069,7 +1069,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, inspectionHeaderRegion, "主要材料送检情况:", leftHeaderStyle); drawBorderForRegion(sheet, inspectionHeaderRegion, workbook); - inspectionTitle.setHeightInPoints(20); + inspectionTitle.setHeightInPoints(30); // ============================================== // 40. 材料送检情况表头行(标题行下一行) @@ -1109,7 +1109,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, inspRecordRegion, "送检记录", headerStyle); drawBorderForRegion(sheet, inspRecordRegion, workbook); - inspectionHeader.setHeightInPoints(20); + inspectionHeader.setHeightInPoints(30); // ============================================== // 41. 动态填充材料送检数据 @@ -1154,7 +1154,7 @@ public class PgsReportExportController extends BaseController { mergeAndFill(sheet, recordRegion, data.getInspectionRecord(), contentStyle); drawBorderForRegion(sheet, recordRegion, workbook); - dataRow.setHeightInPoints(20); + dataRow.setHeightInPoints(30); } } @@ -1174,10 +1174,10 @@ public class PgsReportExportController extends BaseController { // F-M列合并:无 CellRangeAddress inspNoteContentRegion = new CellRangeAddress(inspectionNoteRow, inspectionNoteRow, 5 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, inspNoteContentRegion, "无", contentStyle); + mergeAndFill(sheet, inspNoteContentRegion, "", contentStyle); drawBorderForRegion(sheet, inspNoteContentRegion, workbook); - inspNoteRow.setHeightInPoints(20); + inspNoteRow.setHeightInPoints(30); // ============================================== // 关键调整:AB列从设备进场标题行到最终情况说明行合并 @@ -1202,7 +1202,7 @@ public class PgsReportExportController extends BaseController { totalRegionHeight += row.getHeightInPoints(); } } - float baseHeight1 = 20; + float baseHeight1 = 30; float extraHeight1 = totalRegionHeight - totalRowCount * baseHeight1; Row equipmentTitleRowObj = sheet.getRow(equipmentTitleRow); if (equipmentTitleRowObj != null) { @@ -1231,7 +1231,7 @@ public class PgsReportExportController extends BaseController { // C-M列合并:今日无 CellRangeAddress sxContentRegion = new CellRangeAddress(sxNoteRow, sxNoteRow, 2 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, sxContentRegion, "今日无", contentStyle); + mergeAndFill(sheet, sxContentRegion, "", contentStyle); drawBorderForRegion(sheet, sxContentRegion, workbook); sxRow.setHeightInPoints(30); // 适配可能的换行 @@ -1252,10 +1252,10 @@ public class PgsReportExportController extends BaseController { // C-M列合并:部分区域坡度较大。 CellRangeAddress wxContentRegion = new CellRangeAddress(wxNoteRow, wxNoteRow, 2 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, wxContentRegion, "部分区域坡度较大。", contentStyle); + mergeAndFill(sheet, wxContentRegion, "", contentStyle); drawBorderForRegion(sheet, wxContentRegion, workbook); - wxRow.setHeightInPoints(30); // 适配可能的换行 + wxRow.setHeightInPoints(95); // 适配可能的换行 // ============================================== // 45. 现场施工照片行 @@ -1409,7 +1409,7 @@ public class PgsReportExportController extends BaseController { drawBorderForRegion(sheet, tomorrowABRegion, workbook); // C-M列合并:输入工作计划内容 - String tomorrowPlanContent = "支架、组件安装37人,计划完成支架8组,组件7组;\n直流电缆敷设15人,计划完成3500米。"; + String tomorrowPlanContent = nextPlanStr; CellRangeAddress tomorrowContentRegion = new CellRangeAddress(tomorrowPlanRowNum, tomorrowPlanRowNum, 2 + columnOffset, 12 + columnOffset); mergeAndFill(sheet, tomorrowContentRegion, tomorrowPlanContent, contentStyle); drawBorderForRegion(sheet, tomorrowContentRegion, workbook); @@ -1432,7 +1432,7 @@ public class PgsReportExportController extends BaseController { // C-M列合并 CellRangeAddress otherContentRegion = new CellRangeAddress(otherMattersRowNum, otherMattersRowNum, 2 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, otherContentRegion, "无", contentStyle); + mergeAndFill(sheet, otherContentRegion, "", contentStyle); drawBorderForRegion(sheet, otherContentRegion, workbook); otherMattersRow.setHeightInPoints(25); // 设置行高 @@ -1453,11 +1453,7 @@ public class PgsReportExportController extends BaseController { // C-M列合并 CellRangeAddress personnelContentRegion = new CellRangeAddress(sitePersonnelRowNum, sitePersonnelRowNum, 2 + columnOffset, 12 + columnOffset); - mergeAndFill(sheet, personnelContentRegion, "1.管理人员2人;\n" + - "2.支架、组件安装36人;\n" + - "3.直流电缆敷设15人;\n" + - "4.无人机飞手2人;\n" + - "5.合计55人。", contentStyle); + mergeAndFill(sheet, personnelContentRegion, "", contentStyle); drawBorderForRegion(sheet, personnelContentRegion, workbook); sitePersonnelRow.setHeightInPoints(25); // 设置行高 @@ -1784,6 +1780,11 @@ public class PgsReportExportController extends BaseController { paramData.setSafety(collect); } + List list4 = busMechanicalrewritingService.lambdaQuery() + .eq(BusMechanicalrewriting::getProjectId, project.getId()).list(); + String collect = list4.stream().map(BusMechanicalrewriting::getDevicename).filter(StringUtils::isNotBlank).distinct().collect(Collectors.joining(",")); + paramData.setDevice(collect); + return paramData; } @@ -1803,6 +1804,8 @@ public class PgsReportExportController extends BaseController { for (PgsProgressCategoryByDayVo vo : subProjectList) { ProjectData projectData = new ProjectData(); projectData.setProjectName(vo.getProjectName()); + projectData.setProcessName("光伏场区"); + projectData.setNextPlanStr(vo.getNextPlanStr()); List progressList = new ArrayList<>(); List photovoltaicArea = vo.getPhotovoltaicArea(); @@ -1863,6 +1866,8 @@ public class PgsReportExportController extends BaseController { List sy = new ArrayList<>(); ProjectData projectData = new ProjectData(); projectData.setProjectName("升压站"); + projectData.setProcessName("升压站"); + projectData.setNextPlanStr(project.getNextPlanStr()); List progressList = new ArrayList<>(); List boosterStation = project.getBoosterStation(); @@ -1902,6 +1907,8 @@ public class PgsReportExportController extends BaseController { List jd = new ArrayList<>(); ProjectData jdProjectData = new ProjectData(); jdProjectData.setProjectName("集电线路"); + jdProjectData.setProcessName("集电线路"); + jdProjectData.setNextPlanStr(project.getNextPlanStr()); List jdProgressList = new ArrayList<>(); List collectingLine = project.getCollectingLine(); @@ -1941,6 +1948,8 @@ public class PgsReportExportController extends BaseController { List sc = new ArrayList<>(); ProjectData scProjectData = new ProjectData(); scProjectData.setProjectName("送出线路"); + scProjectData.setProcessName("送出线路"); + scProjectData.setNextPlanStr(project.getNextPlanStr()); List scProgressList = new ArrayList<>(); List sendLine = project.getSendLine(); @@ -1980,9 +1989,12 @@ public class PgsReportExportController extends BaseController { List qt = new ArrayList<>(); ProjectData qtProjectData = new ProjectData(); qtProjectData.setProjectName("其他工程"); + qtProjectData.setProcessName("其他工程"); + qtProjectData.setNextPlanStr(project.getNextPlanStr()); List qtProgressList = new ArrayList<>(); List otherProject = project.getOtherProject(); + int qtNum = 1; for (PgsProgressCategoryDetailByDayVo vo1 : otherProject) { ProgressData progressData = new ProgressData(); diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ParamData.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ParamData.java index aefe4a72..39ccd01d 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ParamData.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ParamData.java @@ -53,6 +53,8 @@ public class ParamData { */ private List imgUrls2; - - + /** + * 设备 + */ + private String device; } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ProjectData.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ProjectData.java index 6a2562e0..4dd44b54 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ProjectData.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/domain/vo/export/ProjectData.java @@ -18,6 +18,8 @@ public class ProjectData { private List inspectionList; private String projectName; // 项目名称 private String projectDate; // 项目日期 + private String processName; // 工程名称 + private String nextPlanStr; // 下日计划 } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/service/impl/PgsProgressCategoryServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/service/impl/PgsProgressCategoryServiceImpl.java index a69e19e2..db84fdbb 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/service/impl/PgsProgressCategoryServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/progress/service/impl/PgsProgressCategoryServiceImpl.java @@ -2341,6 +2341,7 @@ public class PgsProgressCategoryServiceImpl extends ServiceImpl item.getNextDayPlan().compareTo(BigDecimal.ZERO) > 0) .map(item -> item.getName() + item.getNextDayPlan().stripTrailingZeros().toPlainString() + item.getUnit()) .collect(Collectors.joining(",")); } @@ -3035,7 +3036,7 @@ public class PgsProgressCategoryServiceImpl extends ServiceImpl> finalNextDetailMap = detailMap; + Map> finalNextDetailMap = nextDetailMap; return childrenMap.entrySet().stream() .map(c -> { String name = c.getKey(); @@ -3093,6 +3094,7 @@ public class PgsProgressCategoryServiceImpl extends ServiceImpl b.compareTo(BigDecimal.ZERO) > 0) .reduce(BigDecimal.ZERO, BigDecimal::add); } // 封装结果 diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/HseViolationRecordController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/HseViolationRecordController.java index 421aa8d9..ec80dd55 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/HseViolationRecordController.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/HseViolationRecordController.java @@ -11,12 +11,16 @@ import org.dromara.common.log.enums.BusinessType; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.web.core.BaseController; +import org.dromara.contractor.domain.SubContractor; +import org.dromara.contractor.service.ISubContractorService; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordCreateHandlerReq; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordQueryReq; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordRectificationReq; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordReviewReq; import org.dromara.safety.domain.vo.violationrecord.HseViolationRecordVo; import org.dromara.safety.service.IHseViolationRecordService; +import org.dromara.system.domain.SysUser; +import org.dromara.system.service.ISysUserService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; @@ -35,6 +39,10 @@ public class HseViolationRecordController extends BaseController { @Resource private IHseViolationRecordService hseViolationRecordService; + @Resource + private ISubContractorService contractorService; + @Resource + private ISysUserService userService; /** * 查询违规记录列表 @@ -102,4 +110,21 @@ public class HseViolationRecordController extends BaseController { @PathVariable Long[] ids) { return toAjax(hseViolationRecordService.deleteWithValidByIds(List.of(ids))); } + + + @GetMapping("/contractorList") + public R> contractorList(Long projectId) { + List list = contractorService.lambdaQuery() + .select(SubContractor::getId, SubContractor::getName) + .eq(SubContractor::getProjectId, projectId) + .list(); + return R.ok(list); + } + + + @GetMapping("/contractorUserList") + public R> contractorUserList(Long contractorId) { + List sysUsers = userService.selectUserListByContractorId(contractorId); + return R.ok(sysUsers); + } } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/app/HseViolationRecordAppController.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/app/HseViolationRecordAppController.java index 165ba97f..ed2cfb30 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/app/HseViolationRecordAppController.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/controller/app/HseViolationRecordAppController.java @@ -9,15 +9,21 @@ import org.dromara.common.log.enums.BusinessType; import org.dromara.common.mybatis.core.page.PageQuery; import org.dromara.common.mybatis.core.page.TableDataInfo; import org.dromara.common.web.core.BaseController; +import org.dromara.contractor.domain.SubContractor; +import org.dromara.contractor.service.ISubContractorService; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordCreateHandlerReq; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordQueryReq; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordRectificationReq; import org.dromara.safety.domain.dto.violationrecord.HseViolationRecordReviewReq; import org.dromara.safety.domain.vo.violationrecord.HseViolationRecordVo; import org.dromara.safety.service.IHseViolationRecordService; +import org.dromara.system.domain.SysUser; +import org.dromara.system.service.ISysUserService; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; +import java.util.List; + /** * 违规记录 app 接口 * @@ -31,6 +37,10 @@ public class HseViolationRecordAppController extends BaseController { @Resource private IHseViolationRecordService violationRecordService; + @Resource + private ISubContractorService contractorService; + @Resource + private ISysUserService userService; /** * 查询违规记录列表 @@ -78,4 +88,33 @@ public class HseViolationRecordAppController extends BaseController { public R insertReview(@Validated @RequestBody HseViolationRecordReviewReq req) { return toAjax(violationRecordService.insertReview(req)); } + + @GetMapping("/contractorList") + public R> contractorList(Long projectId) { + List list = contractorService.lambdaQuery() + .select(SubContractor::getId, SubContractor::getName) + .eq(SubContractor::getProjectId, projectId) + .list(); + return R.ok(list); + } + + + @GetMapping("/contractorUserList") + public R> contractorUserList(Long contractorId) { + List sysUsers = userService.selectUserListByContractorId(contractorId); + return R.ok(sysUsers); + } + + + + + @GetMapping("/teamList") + public R> teamList(Long projectId) { + List list = contractorService.lambdaQuery() + .select(SubContractor::getId, SubContractor::getName) + .eq(SubContractor::getProjectId, projectId) + .list(); + return R.ok(list); + } + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseViolationRecordServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseViolationRecordServiceImpl.java index c12a4ad5..36a5463c 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseViolationRecordServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/safety/service/impl/HseViolationRecordServiceImpl.java @@ -458,4 +458,10 @@ public class HseViolationRecordServiceImpl extends ServiceImpl todayUserList(SubTodayUserDto dto, PageQuery pageQuery); int appResetUserPwd(AppUserUpdatePasswordDto dto); + + List selectUserListByContractorId(Long contractorId); + } diff --git a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java index 22155306..0ecdbeab 100644 --- a/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java +++ b/xinnengyuan/ruoyi-modules/ruoyi-system/src/main/java/org/dromara/system/service/impl/SysUserServiceImpl.java @@ -1521,4 +1521,11 @@ public class SysUserServiceImpl implements ISysUserService, UserService { } return resetUserPwd(sysUser.getUserId(), BCrypt.hashpw(dto.getNewPassword())); } + + @Override + public List selectUserListByContractorId(Long contractorId) { + + return baseMapper.selectList(Wrappers.lambdaQuery() + .select(SysUser::getUserId, SysUser::getNickName)); + } }