From 2acc7d9284e0ee77f0fa52bcd48416f4ba0a2ac4 Mon Sep 17 00:00:00 2001 From: litao Date: Wed, 27 Nov 2024 19:25:49 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E4=BD=9C=E5=8F=B0=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=BC=80=E5=8F=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../contraller/WorkBenchesController.java | 82 ++++++------------- .../modules/business/mapper/DeviceMapper.java | 4 + .../modules/business/mapper/DeviceMapper.xml | 24 ++++++ .../business/mapper/WorkOrderMapper.java | 2 + .../business/mapper/WorkOrderMapper.xml | 12 +++ .../modules/business/pojo/vo/PieStatVO.java | 21 +++++ .../business/service/IDeviceService.java | 5 ++ .../business/service/IWorkOrderService.java | 2 + .../service/impl/DeviceServiceImpl.java | 12 ++- .../service/impl/WorkOrderServiceImpl.java | 6 ++ 10 files changed, 113 insertions(+), 57 deletions(-) create mode 100644 src/main/java/org/springblade/modules/business/pojo/vo/PieStatVO.java diff --git a/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java b/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java index 9d23f04..5b65886 100644 --- a/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java +++ b/src/main/java/org/springblade/modules/business/contraller/WorkBenchesController.java @@ -12,10 +12,13 @@ import org.springblade.modules.business.pojo.entity.maintenance.MaintenancePlan; import org.springblade.modules.business.pojo.entity.maintenance.MaintenanceTask; import org.springblade.modules.business.pojo.entity.workorder.WorkOrder; import org.springblade.modules.business.pojo.vo.MaintenanceTaskVO; +import org.springblade.modules.business.pojo.vo.PieStatVO; import org.springblade.modules.business.service.IDeviceService; import org.springblade.modules.business.service.IMaintenancePlanService; import org.springblade.modules.business.service.IMaintenanceTaskService; import org.springblade.modules.business.service.IWorkOrderService; +import org.springblade.modules.system.pojo.entity.User; +import org.springblade.modules.system.service.IUserService; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; @@ -43,6 +46,7 @@ public class WorkBenchesController extends BladeController { private final IMaintenanceTaskService maintenanceTaskService; private final IWorkOrderService workOrderService; private final IDeviceService deviceService; + private final IUserService userService; /** * 工作台 @@ -132,42 +136,9 @@ public class WorkBenchesController extends BladeController { @GetMapping("/pieStat") public R> pieStat(String startTime, String endTime) { Map map = new HashMap<>(); - List> fault = new ArrayList<>(); - Map fault1 = new HashMap<>(); - fault1.put("name", "电气"); - fault1.put("value", 300); - fault.add(fault1); - Map fault2 = new HashMap<>(); - fault2.put("name", "空调"); - fault2.put("value", 248); - fault.add(fault2); - Map fault3 = new HashMap<>(); - fault3.put("name", "装修类"); - fault3.put("value", 135); - fault.add(fault3); - Map fault4 = new HashMap<>(); - fault4.put("name", "智能设备"); - fault4.put("value", 180); - fault.add(fault4); - Map fault5 = new HashMap<>(); - fault5.put("name", "暖通、自控"); - fault5.put("value", 654); - fault.add(fault5); + List fault = deviceService.selectTypeCount(startTime, endTime); map.put("fault", fault); - - List> device = new ArrayList<>(); - Map device1 = new HashMap<>(); - device1.put("name", "设备1"); - device1.put("value", 580); - device.add(device1); - Map device2 = new HashMap<>(); - device2.put("name", "空调"); - device2.put("value", 1048); - device.add(device2); - Map device3 = new HashMap<>(); - device3.put("name", "通风柜"); - device3.put("value", 735); - device.add(device3); + List device = deviceService.selectStatusCount(startTime, endTime); map.put("device", device); return R.data(map); } @@ -178,10 +149,13 @@ public class WorkBenchesController extends BladeController { @GetMapping("/mapAddress") public R> mapAddress(String perType) { Map map = new HashMap<>(); - List fault = new ArrayList<>(); - fault.add("120.49149829538277"); - fault.add("36.15297000628537"); - map.put("软件创新园", fault); + List users = userService.list(Wrappers.lambdaQuery(User.class).eq(User::getStatus, 1).isNotNull(User::getAddressLon)); + for (User user : users) { + List fault = new ArrayList<>(); + fault.add(user.getAddressLon()); + fault.add(user.getAddressLat()); + map.put(user.getDeptName(), fault); + } return R.data(map); } @@ -190,15 +164,15 @@ public class WorkBenchesController extends BladeController { */ @GetMapping("/limsInspecList") public R>> limsInspecList(String perType) { + SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); List> list = new ArrayList<>(); - Map map1 = new HashMap<>(); - map1.put("name", "水系统检查"); - map1.put("planTime", "2024-11-11"); - list.add(map1); - Map map2 = new HashMap<>(); - map2.put("name", "设备检查"); - map2.put("planTime", "2024-11-11"); - list.add(map2); + List tasks = maintenanceTaskService.list(Wrappers.lambdaQuery(MaintenanceTask.class).isNotNull(MaintenanceTask::getStartTime).orderByDesc(MaintenanceTask::getStartTime)); + for (MaintenanceTask task : tasks) { + Map map = new HashMap<>(); + map.put("name", task.getDeptName() + "-设备巡检"); + map.put("planTime", format.format(task.getStartTime())); + list.add(map); + } return R.data(list); } @@ -249,17 +223,13 @@ public class WorkBenchesController extends BladeController { public R> limsInspecChart(String startTime, String endTime, String perType) { Map map = new HashMap<>(); List xData = new ArrayList<>(); - if ("0".equals(perType)) { - xData.add("安池"); - xData.add("畜牧局"); - } else if ("1".equals(perType)) { - xData.add("班组1"); - xData.add("班组2"); + List total = new ArrayList<>(); + List list = workOrderService.selectDeptCount(startTime, endTime); + for (PieStatVO pieStatVO : list) { + xData.add(pieStatVO.getName()); + total.add(pieStatVO.getValue()); } map.put("xData", xData); - List total = new ArrayList<>(); - total.add(172); - total.add(160); map.put("yData", total); return R.data(map); } diff --git a/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.java b/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.java index 5948df6..04d8958 100644 --- a/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.java +++ b/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.java @@ -8,6 +8,7 @@ import org.apache.ibatis.annotations.Param; import org.springblade.modules.business.pojo.entity.Device; import org.springblade.modules.business.excel.DeviceExcel; import org.springblade.modules.business.pojo.vo.DeviceVO; +import org.springblade.modules.business.pojo.vo.PieStatVO; import java.util.List; @@ -37,4 +38,7 @@ public interface DeviceMapper extends BaseMapper { */ List exportDevice(@Param("ew") Wrapper queryWrapper); + List selectTypeCount(String startTime, String endTime); + + List selectStatusCount(String startTime, String endTime); } diff --git a/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.xml b/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.xml index 5439db6..77e8fd4 100644 --- a/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.xml +++ b/src/main/java/org/springblade/modules/business/mapper/DeviceMapper.xml @@ -15,5 +15,29 @@ + + diff --git a/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.java b/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.java index 2a23966..cc18342 100644 --- a/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.java +++ b/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.java @@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.metadata.IPage; import org.apache.ibatis.annotations.Param; import org.springblade.modules.business.pojo.entity.workorder.WorkOrder; import org.springblade.modules.business.excel.workorder.WorkOrderExcel; +import org.springblade.modules.business.pojo.vo.PieStatVO; import org.springblade.modules.business.pojo.vo.workorder.WorkOrderVO; import java.util.List; @@ -37,4 +38,5 @@ public interface WorkOrderMapper extends BaseMapper { */ List exportWorkOrder(@Param("ew") Wrapper queryWrapper); + List selectDeptCount(String startTime, String endTime); } diff --git a/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.xml b/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.xml index 4481d01..28386e6 100644 --- a/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.xml +++ b/src/main/java/org/springblade/modules/business/mapper/WorkOrderMapper.xml @@ -15,5 +15,17 @@ + diff --git a/src/main/java/org/springblade/modules/business/pojo/vo/PieStatVO.java b/src/main/java/org/springblade/modules/business/pojo/vo/PieStatVO.java new file mode 100644 index 0000000..3a12831 --- /dev/null +++ b/src/main/java/org/springblade/modules/business/pojo/vo/PieStatVO.java @@ -0,0 +1,21 @@ + +package org.springblade.modules.business.pojo.vo; + +import lombok.Data; +import lombok.EqualsAndHashCode; +import org.springblade.modules.business.pojo.entity.DeviceAttach; + +/** + * 工作台设备统计 + * + * @author BladeX + * @since 2024-10-14 + */ +@Data +public class PieStatVO { + + private String name; + + private Integer value; + +} diff --git a/src/main/java/org/springblade/modules/business/service/IDeviceService.java b/src/main/java/org/springblade/modules/business/service/IDeviceService.java index 31ab8b2..a4fe23c 100644 --- a/src/main/java/org/springblade/modules/business/service/IDeviceService.java +++ b/src/main/java/org/springblade/modules/business/service/IDeviceService.java @@ -7,6 +7,7 @@ import org.springblade.modules.business.pojo.dto.DeviceDTO; import org.springblade.modules.business.pojo.entity.Device; import org.springblade.modules.business.excel.DeviceExcel; import org.springblade.modules.business.pojo.vo.DeviceVO; +import org.springblade.modules.business.pojo.vo.PieStatVO; import java.util.List; @@ -40,4 +41,8 @@ public interface IDeviceService extends BaseService { boolean edit(DeviceDTO device); boolean qrcode(Device device); + + List selectTypeCount(String startTime, String endTime); + + List selectStatusCount(String startTime, String endTime); } diff --git a/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java b/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java index 5f29319..3ab8a5d 100644 --- a/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java +++ b/src/main/java/org/springblade/modules/business/service/IWorkOrderService.java @@ -2,6 +2,7 @@ package org.springblade.modules.business.service; import org.springblade.core.mp.base.BaseService; import org.springblade.modules.business.pojo.entity.workorder.WorkOrder; +import org.springblade.modules.business.pojo.vo.PieStatVO; import org.springblade.modules.business.pojo.vo.workorder.WorkOrderVO; import java.util.List; @@ -55,4 +56,5 @@ public interface IWorkOrderService extends BaseService { boolean updateAttach(WorkOrderVO workOrder); + List selectDeptCount(String startTime, String endTime); } diff --git a/src/main/java/org/springblade/modules/business/service/impl/DeviceServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/DeviceServiceImpl.java index 2a9f08d..6cda873 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/DeviceServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/DeviceServiceImpl.java @@ -10,6 +10,7 @@ import org.apache.commons.collections.CollectionUtils; import org.springblade.common.utils.CommonUtil; import org.springblade.core.mp.base.BaseServiceImpl; import org.springblade.core.tool.utils.CollectionUtil; +import org.springblade.modules.business.pojo.vo.PieStatVO; import org.springblade.modules.business.service.IDeviceAttachService; import org.springblade.modules.business.service.IDeviceMaintenanceService; import org.springblade.modules.business.service.IDeviceService; @@ -22,7 +23,6 @@ import org.springblade.modules.business.pojo.entity.DeviceMaintenance; import org.springblade.modules.business.pojo.vo.DeviceVO; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; -import org.springframework.transaction.interceptor.TransactionAspectSupport; import java.io.IOException; import java.util.List; @@ -125,4 +125,14 @@ public class DeviceServiceImpl extends BaseServiceImpl imp } return this.updateById(device); } + + @Override + public List selectTypeCount(String startTime, String endTime) { + return baseMapper.selectTypeCount(startTime, endTime); + } + + @Override + public List selectStatusCount(String startTime, String endTime) { + return baseMapper.selectStatusCount(startTime, endTime); + } } diff --git a/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java b/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java index f3ba58a..0334793 100644 --- a/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java +++ b/src/main/java/org/springblade/modules/business/service/impl/WorkOrderServiceImpl.java @@ -17,6 +17,7 @@ import org.springblade.modules.business.mapper.WorkOrderMapper; import org.springblade.modules.business.pojo.entity.workorder.WorkOrder; import org.springblade.modules.business.pojo.entity.workorder.WorkOrderAttach; import org.springblade.modules.business.pojo.entity.workorder.WorkOrderRepairMaterial; +import org.springblade.modules.business.pojo.vo.PieStatVO; import org.springblade.modules.business.pojo.vo.workorder.WorkOrderVO; import org.springblade.modules.business.service.*; import org.springblade.modules.system.pojo.entity.User; @@ -183,6 +184,11 @@ public class WorkOrderServiceImpl extends BaseServiceImpl selectDeptCount(String startTime, String endTime) { + return baseMapper.selectDeptCount(startTime, endTime); + } + private void saveFiles(List videoAttaches, List picAttaches, Long orderId) { // 保存视频附件