From b441d4a71dd43bf7fb12bfa62938ccd3020878b5 Mon Sep 17 00:00:00 2001 From: Houjie <714924425@qq.com> Date: 星期三, 16 七月 2025 19:21:11 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java | 100 +++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 90 insertions(+), 10 deletions(-) diff --git a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java index 3e184b8..575571e 100644 --- a/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java +++ b/lxzn-module-eam/src/main/java/org/jeecg/modules/eam/controller/EamDashboardController.java @@ -3,16 +3,25 @@ import cn.hutool.core.collection.CollectionUtil; import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.parser.Feature; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.fasterxml.jackson.databind.ObjectMapper; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; +import org.apache.commons.lang3.StringUtils; +import org.apache.shiro.SecurityUtils; import org.jeecg.common.api.vo.Result; +import org.jeecg.common.constant.CommonConstant; +import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.util.DateUtils; import org.jeecg.common.util.TranslateDictTextUtils; -import org.jeecg.modules.eam.constant.EquipmentMaintenanceStatus; -import org.jeecg.modules.eam.constant.EquipmentRepairStatus; -import org.jeecg.modules.eam.entity.EamEquipment; +import org.jeecg.modules.eam.constant.*; +import org.jeecg.modules.eam.entity.*; +import org.jeecg.modules.eam.request.EamInspectionOrderQuery; +import org.jeecg.modules.eam.request.EamReportRepairQuery; +import org.jeecg.modules.eam.request.EamWeekMaintenanceQuery; import org.jeecg.modules.eam.service.*; import org.jeecg.modules.eam.vo.*; import org.springframework.beans.factory.annotation.Autowired; @@ -170,12 +179,12 @@ @GetMapping(value = "/repairList") public Result<?> repairList() { List<EquipmentRepairListVO> list = reportRepairService.repairList(); - if(CollectionUtil.isEmpty(list)) { + if (CollectionUtil.isEmpty(list)) { return Result.ok(Collections.emptyList()); } List<JSONObject> items = new ArrayList<>(); try { - for(EquipmentRepairListVO vo : list) { + for (EquipmentRepairListVO vo : list) { String json = objectMapper.writeValueAsString(vo); JSONObject item = JSONObject.parseObject(json, Feature.OrderedField); translateDictTextUtils.translateField("reportOperator", vo.getReportOperator(), item, "sys_user,realname,username"); @@ -185,7 +194,7 @@ items.add(item); } return Result.OK(items); - }catch (Exception e) { + } catch (Exception e) { return Result.error("鏁版嵁杞瘧澶辫触锛�"); } } @@ -198,23 +207,94 @@ LocalDate start = today.minusDays(30); //鍙彇鍓�7鍚� List<RepairmanRankingVO> list = repairOrderService.repairmanRanking(start.toString(), end.toString()); - if(CollectionUtil.isEmpty(list)) { + if (CollectionUtil.isEmpty(list)) { return Result.ok(Collections.emptyList()); } - if(list.size() > 7) { + if (list.size() > 7) { list = list.subList(0, 7); } List<JSONObject> items = new ArrayList<>(); try { - for(RepairmanRankingVO vo : list) { + for (RepairmanRankingVO vo : list) { String json = objectMapper.writeValueAsString(vo); JSONObject item = JSONObject.parseObject(json, Feature.OrderedField); translateDictTextUtils.translateField("repairer", vo.getRepairer(), item, "sys_user,realname,username"); items.add(item); } return Result.OK(items); - }catch (Exception e) { + } catch (Exception e) { return Result.error("鏁版嵁杞瘧澶辫触锛�"); } } + + @ApiOperation(value = "缁翠慨鐪嬫澘-鏁呴殰绫诲瀷缁熻", notes = "缁翠慨鐪嬫澘-鏁呴殰绫诲瀷缁熻") + @GetMapping(value = "/faultTypeStatistics") + public Result<?> faultTypeStatistics() { + //缁熻浠婂勾鏉ユ晠闅滃垎绫绘儏鍐� + LocalDate today = LocalDate.now(); + LocalDate end = today.plusDays(1); + //浠婂勾绗竴澶� + LocalDate start = today.withDayOfYear(1); + // 缁熻涓暟 + List<FaultTypeStatisticsVO> list = reportRepairService.faultTypeStatistics(start.toString(), end.toString()); + if (CollectionUtil.isEmpty(list)) { + return Result.ok(Collections.emptyList()); + } + List<JSONObject> items = new ArrayList<>(); + try { + for (FaultTypeStatisticsVO vo : list) { + String json = objectMapper.writeValueAsString(vo); + JSONObject item = JSONObject.parseObject(json, Feature.OrderedField); + translateDictTextUtils.translateField("faultType", vo.getFaultType(), item, "fault_reason_category"); + if (item.get("faultType" + CommonConstant.DICT_TEXT_SUFFIX) != null) { + items.add(item); + } + } + return Result.OK(items); + } catch (Exception e) { + return Result.error("鏁版嵁杞瘧澶辫触锛�"); + } + } + + @ApiOperation(value = "H5棣栭〉-寰呮墽琛屽伐鍗曟暟閲忕粺璁�", notes = "H5棣栭〉-寰呮墽琛屽伐鍗曟暟閲忕粺璁�") + @GetMapping(value = "/pendingExecOrderCountBySelf") + public Result<?> pendingExecOrderCountBySelf() { + LoginUser user = (LoginUser) SecurityUtils.getSubject().getPrincipal(); + Map<String, Integer> countMap = CollectionUtil.newHashMap(); + if (user == null) { + return Result.ok(countMap); + } + String post = user.getPost(); + + if (BusinessCodeConst.PCR0001.equals(post)) { + //鏄搷浣滃伐锛屾煡璇㈠彲棰嗗彇鐨勭偣妫�銆佸懆淇濆伐鍗� + Page<EamInspectionOrder> inspectionOrderPage = new Page<>(1, 99999999); + EamInspectionOrderQuery inspectionOrderQuery = new EamInspectionOrderQuery(); + inspectionOrderQuery.setInspectionStatus(InspectionStatus.WAIT_INSPECTION.name()); + List<EamInspectionOrder> unReceivedInspectionOrderList = inspectionOrderService.queryPageList(inspectionOrderPage, inspectionOrderQuery).getRecords(); + + Page<EamWeekMaintenanceOrder> maintenanceOrderPage = new Page<>(1, 99999999); + EamWeekMaintenanceQuery weekMaintenanceQuery = new EamWeekMaintenanceQuery(); + weekMaintenanceQuery.setMaintenanceStatus(WeekMaintenanceStatusEnum.WAIT_MAINTENANCE.name()); + List<EamWeekMaintenanceOrder> unReceivedMaintenanceOrderList = weekMaintenanceOrderService.queryPageList(maintenanceOrderPage, weekMaintenanceQuery).getRecords(); + countMap.put("unExecInspectionOrderCount", unReceivedInspectionOrderList.size()); + countMap.put("unExecMaintenanceOrderCount", unReceivedMaintenanceOrderList.size()); + countMap.put("unExecRepairOrderCount", 0); + } else if (BusinessCodeConst.PCR0002.equals(post)) { + //鏄淮淇伐锛屾煡璇㈠彲棰嗗彇鐨勬姤淇崟 + Page<EamReportRepair> maintenanceOrderPage = new Page<>(1, 99999999); + EamReportRepairQuery reportRepairQuery = new EamReportRepairQuery(); + reportRepairQuery.setReportStatus(EquipmentRepairStatus.WAIT_REPAIR.name()); + List<EamReportRepair> unReceivedOrderList = reportRepairService.pageList(maintenanceOrderPage, reportRepairQuery).getRecords(); + + countMap.put("unExecInspectionOrderCount", 0); + countMap.put("unExecMaintenanceOrderCount", 0); + countMap.put("unExecRepairOrderCount", unReceivedOrderList.size()); + } else { + countMap.put("unExecInspectionOrderCount", 0); + countMap.put("unExecMaintenanceOrderCount", 0); + countMap.put("unExecRepairOrderCount", 0); + } + return Result.OK(countMap); + } } -- Gitblit v1.9.3