From 67ac603f410319a0d999e5f493c8ef2d74163fe1 Mon Sep 17 00:00:00 2001 From: Houjie <714924425@qq.com> Date: 星期一, 15 九月 2025 19:44:47 +0800 Subject: [PATCH] 保养标准:点检标准导入 点检名称修改/ 设备台账导入 --- src/main/java/org/jeecg/modules/qms/controller/InspectionItemController.java | 126 +++++++++++++++++++++++++++++++++++++++-- 1 files changed, 119 insertions(+), 7 deletions(-) diff --git a/src/main/java/org/jeecg/modules/qms/controller/InspectionItemController.java b/src/main/java/org/jeecg/modules/qms/controller/InspectionItemController.java index 22d7c03..1a17bb9 100644 --- a/src/main/java/org/jeecg/modules/qms/controller/InspectionItemController.java +++ b/src/main/java/org/jeecg/modules/qms/controller/InspectionItemController.java @@ -1,26 +1,23 @@ package org.jeecg.modules.qms.controller; -import java.util.Arrays; -import java.util.List; -import java.util.Map; +import java.util.*; import java.util.stream.Collectors; -import java.io.IOException; -import java.io.UnsupportedEncodingException; -import java.net.URLDecoder; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; +import org.apache.commons.lang3.StringUtils; import org.jeecg.common.api.vo.Result; import org.jeecg.common.constant.CommonConstant; import org.jeecg.common.system.query.QueryGenerator; import org.jeecg.common.util.oConvertUtils; import org.jeecg.modules.qms.entity.InspectionItem; +import org.jeecg.modules.qms.entity.InspectionTools; import org.jeecg.modules.qms.service.IInspectionItemService; - import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import lombok.extern.slf4j.Slf4j; +import org.jeecg.modules.qms.service.IInspectionToolsService; import org.jeecgframework.poi.excel.ExcelImportUtil; import org.jeecgframework.poi.excel.def.NormalExcelConstants; import org.jeecgframework.poi.excel.entity.ExportParams; @@ -50,6 +47,9 @@ public class InspectionItemController extends JeecgController<InspectionItem, IInspectionItemService> { @Autowired private IInspectionItemService inspectionItemService; + + @Autowired + private IInspectionToolsService inspectionToolsService; /** * 鍒嗛〉鍒楄〃鏌ヨ @@ -70,6 +70,27 @@ QueryWrapper<InspectionItem> queryWrapper = QueryGenerator.initQueryWrapper(inspectionItem, req.getParameterMap()); Page<InspectionItem> page = new Page<InspectionItem>(pageNo, pageSize); IPage<InspectionItem> pageList = inspectionItemService.page(page, queryWrapper); + List<InspectionItem> records = pageList.getRecords(); + Set<String> uniqueToolIds = records.stream() + .map(InspectionItem::getInspectionTools) + .filter(StringUtils::isNotBlank) + .flatMap(tools -> Arrays.stream(tools.split(","))) + .map(String::trim) + .collect(Collectors.toSet()); + Map<String, String> toolIdNameMap = inspectionToolsService.listByIds(uniqueToolIds).stream() + .collect(Collectors.toMap(InspectionTools::getId, InspectionTools::getToolName)); + + records.forEach(record -> { + String inspectionTools = record.getInspectionTools(); + if (StringUtils.isNotBlank(inspectionTools)) { + String toolNames = Arrays.stream(inspectionTools.split(",")) + .map(String::trim) + .map(toolIdNameMap::get) + .filter(Objects::nonNull) + .collect(Collectors.joining(",")); + record.setInspectionToolNames(toolNames); + } + }); return Result.OK(pageList); } @@ -176,4 +197,95 @@ return super.importExcel(request, response, InspectionItem.class); } + @AutoLog(value = "妫�楠岄」鐩�-鍚敤&绂佺敤") + @ApiOperation(value = "妫�楠岄」鐩�-鍚敤&绂佺敤", notes = "妫�楠岄」鐩�-鍚敤&绂佺敤") + @PutMapping(value = "/active") + public Result<?> active(@RequestParam(name = "id", required = true) String id) { + InspectionItem inspectionItem = inspectionItemService.getById(id); + if (CommonConstant.STATUS_1.equals(inspectionItem.getItemStatus())) { + inspectionItem.setItemStatus(CommonConstant.STATUS_0); + } else { + inspectionItem.setItemStatus(CommonConstant.STATUS_1); + } + inspectionItemService.updateById(inspectionItem); + return Result.ok("鎿嶄綔鎴愬姛锛�"); + } + + /** + * 鍒嗛〉鍒楄〃鏌ヨ + * + * @param inspectionItem + * @param pageNo + * @param pageSize + * @param query + * @return + */ + @ApiOperation(value="妫�楠岄」鐩�-鍒嗛〉鍒楄〃鏌ヨ", notes="妫�楠岄」鐩�-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/queryList") + public Result<?> queryList(InspectionItem inspectionItem, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize, + @RequestParam Map<String, String> query) { + IPage<Map<String, Object>> pageList = inspectionItemService.queryList(pageNo,pageSize, query); + for(Map<String, Object> r : pageList.getRecords()){ + String inspectionTools = (String) r.get("inspectionTools"); + if(StringUtils.isNotBlank(inspectionTools)){ + List<String> inspectionToolsList = Arrays.asList(inspectionTools.split(",")); + List<String> inspectionToolsNameList = new ArrayList<>(); + String inspectionToolsNames = ""; + for(String inspectionTool : inspectionToolsList){ + InspectionTools inspectionTools1 = inspectionToolsService.getById(inspectionTool); + if(inspectionTools1 != null){ + inspectionToolsNameList.add(inspectionTools1.getToolName()); + } + } + inspectionToolsNames = inspectionToolsNameList.stream() + .collect(Collectors.joining(",")); + r.put("inspectionToolsNames",inspectionToolsNames); + + } + + } + + return Result.OK(pageList); + } + + + /** + * 鏍规嵁妫�楠屾柟妗坕d鏌ヨ + * + * @param inspectionPlanId + * @param pageNo + * @param pageSize + * @return + */ + @ApiOperation(value="妫�楠岄」鐩�-鍒嗛〉鍒楄〃鏌ヨ", notes="妫�楠岄」鐩�-鍒嗛〉鍒楄〃鏌ヨ") + @GetMapping(value = "/queryListByPlanId") + public Result<?> queryListByPlanId(String inspectionPlanId, + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo, + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize) { + IPage<Map<String, Object>> pageList = inspectionItemService.queryListByPlanId(pageNo,pageSize, inspectionPlanId); + for(Map<String, Object> r : pageList.getRecords()){ + String inspectionTools = (String) r.get("inspectionTools"); + if(StringUtils.isNotBlank(inspectionTools)){ + List<String> inspectionToolsList = Arrays.asList(inspectionTools.split(",")); + List<String> inspectionToolsNameList = new ArrayList<>(); + String inspectionToolsNames = ""; + for(String inspectionTool : inspectionToolsList){ + InspectionTools inspectionTools1 = inspectionToolsService.getById(inspectionTool); + if(inspectionTools1 != null){ + inspectionToolsNameList.add(inspectionTools1.getToolName()); + } + } + inspectionToolsNames = inspectionToolsNameList.stream() + .collect(Collectors.joining(",")); + r.put("inspectionToolsNames",inspectionToolsNames); + + } + + } + + return Result.OK(pageList); + } + } -- Gitblit v1.9.3