厂区看板接口开发
This commit is contained in:
parent
6b9bf6cf64
commit
a6851ff16a
@ -39,4 +39,24 @@ public class FactoryDashboardController {
|
|||||||
public AjaxResult countWeeklyAlarmNumByLineDeptId(@PathVariable Long deptId) {
|
public AjaxResult countWeeklyAlarmNumByLineDeptId(@PathVariable Long deptId) {
|
||||||
return AjaxResult.success(factoryDashboardService.countAlarmNumByProductionLine(deptId));
|
return AjaxResult.success(factoryDashboardService.countAlarmNumByProductionLine(deptId));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@GetMapping("/countWeeklyEquipRunningNumByLineDeptId/{deptId}")
|
||||||
|
public AjaxResult countWeeklyEquipRunningNumByLineDeptId(@PathVariable Long deptId) {
|
||||||
|
return AjaxResult.success(factoryDashboardService.countWeeklyEquipRunningNumByLineDeptId(deptId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/countMaintenanceRecordNumByProductionLine/{deptId}")
|
||||||
|
public AjaxResult countMaintenanceRecordNumByProductionLine(@PathVariable Long deptId) {
|
||||||
|
return AjaxResult.success(factoryDashboardService.countMaintenanceRecordNumByProductionLine(deptId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/countUpkeepRecordNumByProductionLine/{deptId}")
|
||||||
|
public AjaxResult countUpkeepRecordNumByProductionLine(@PathVariable Long deptId) {
|
||||||
|
return AjaxResult.success(factoryDashboardService.countUpkeepRecordNumByProductionLine(deptId));
|
||||||
|
}
|
||||||
|
|
||||||
|
@GetMapping("/listLatestAlarmRecord/{deptId}")
|
||||||
|
public AjaxResult listLatestAlarmRecord(@PathVariable Long deptId) {
|
||||||
|
return AjaxResult.success(factoryDashboardService.selectLatestIpcAlarmRecordByFactoryId(deptId));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.inspur.bigscreen.dto;
|
package com.inspur.bigscreen.dto;
|
||||||
|
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
@ -1,8 +1,11 @@
|
|||||||
package com.inspur.bigscreen.mapper;
|
package com.inspur.bigscreen.mapper;
|
||||||
|
|
||||||
import com.inspur.bigscreen.dto.FactoryDashboardDTO;
|
import com.inspur.bigscreen.dto.FactoryDashboardDTO;
|
||||||
|
import net.sf.jsqlparser.expression.DateTimeLiteralExpression;
|
||||||
import org.apache.ibatis.annotations.MapKey;
|
import org.apache.ibatis.annotations.MapKey;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@ -35,5 +38,18 @@ public interface FactoryDashboardMapper {
|
|||||||
/**
|
/**
|
||||||
* 近一周产线各设备正常运行数量
|
* 近一周产线各设备正常运行数量
|
||||||
*/
|
*/
|
||||||
public List<FactoryDashboardDTO> countWeeklyEquipRunningNumByLineDeptId(Long deptId);
|
public List<FactoryDashboardDTO> countWeeklyEquipRunningNumByLineDeptId(@Param("deptId") Long deptId,
|
||||||
|
@Param("status") Integer status);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 统计近半年的维修记录数量
|
||||||
|
*/
|
||||||
|
public FactoryDashboardDTO countMaintenanceRecordNumByProductionLine(@Param("date") Date date,
|
||||||
|
@Param("deptId")Long deptId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 统计近半年的保养记录数量
|
||||||
|
*/
|
||||||
|
public FactoryDashboardDTO countUpkeepRecordNumByProductionLine(@Param("date") Date date,
|
||||||
|
@Param("deptId")Long deptId);
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,7 @@
|
|||||||
package com.inspur.bigscreen.service;
|
package com.inspur.bigscreen.service;
|
||||||
|
|
||||||
import com.inspur.bigscreen.dto.FactoryDashboardDTO;
|
import com.inspur.bigscreen.dto.FactoryDashboardDTO;
|
||||||
|
import com.inspur.industrial.domain.IpcAlarmRecord;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
@ -31,4 +32,24 @@ public interface IFactoryDashboardService {
|
|||||||
* 根据厂区部门id查询各个产线报警数量
|
* 根据厂区部门id查询各个产线报警数量
|
||||||
*/
|
*/
|
||||||
public List<FactoryDashboardDTO> countAlarmNumByProductionLine(Long deptId);
|
public List<FactoryDashboardDTO> countAlarmNumByProductionLine(Long deptId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 近一周各个产线的运行情况
|
||||||
|
*/
|
||||||
|
public List<FactoryDashboardDTO> countWeeklyEquipRunningNumByLineDeptId(Long deptId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据厂区id统计近半年各个产线的维修记录数
|
||||||
|
*/
|
||||||
|
public List<FactoryDashboardDTO> countMaintenanceRecordNumByProductionLine(Long deptId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据厂区id统计近半年各个产线的保养记录数
|
||||||
|
*/
|
||||||
|
public List<FactoryDashboardDTO> countUpkeepRecordNumByProductionLine(Long deptId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据厂区id查询最新的报警信息
|
||||||
|
*/
|
||||||
|
public List<IpcAlarmRecord> selectLatestIpcAlarmRecordByFactoryId(Long deptId);
|
||||||
}
|
}
|
||||||
|
@ -4,14 +4,15 @@ import com.inspur.bigscreen.dto.FactoryDashboardDTO;
|
|||||||
import com.inspur.bigscreen.mapper.FactoryDashboardMapper;
|
import com.inspur.bigscreen.mapper.FactoryDashboardMapper;
|
||||||
import com.inspur.bigscreen.service.IFactoryDashboardService;
|
import com.inspur.bigscreen.service.IFactoryDashboardService;
|
||||||
import com.inspur.common.core.domain.entity.SysDept;
|
import com.inspur.common.core.domain.entity.SysDept;
|
||||||
|
import com.inspur.industrial.domain.IpcAlarmRecord;
|
||||||
|
import com.inspur.industrial.service.IIpcAlarmRecordService;
|
||||||
import com.inspur.system.mapper.SysDeptMapper;
|
import com.inspur.system.mapper.SysDeptMapper;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.time.LocalDate;
|
||||||
import java.util.HashMap;
|
import java.time.ZoneId;
|
||||||
import java.util.List;
|
import java.util.*;
|
||||||
import java.util.Map;
|
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@ -27,6 +28,9 @@ public class FactoryDashboardService implements IFactoryDashboardService {
|
|||||||
@Autowired
|
@Autowired
|
||||||
private SysDeptMapper sysDeptMapper;
|
private SysDeptMapper sysDeptMapper;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private IIpcAlarmRecordService ipcAlarmRecordService;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @param deptId 厂区的部门id
|
* @param deptId 厂区的部门id
|
||||||
*根据厂区id查询厂区下所有产线设备数量
|
*根据厂区id查询厂区下所有产线设备数量
|
||||||
@ -71,15 +75,135 @@ public class FactoryDashboardService implements IFactoryDashboardService {
|
|||||||
List<FactoryDashboardDTO> resultList = new ArrayList<>();
|
List<FactoryDashboardDTO> resultList = new ArrayList<>();
|
||||||
List<SysDept> childDeptList = sysDeptMapper.selectChildrenDeptById(deptId);
|
List<SysDept> childDeptList = sysDeptMapper.selectChildrenDeptById(deptId);
|
||||||
for (SysDept sysDept : childDeptList) {
|
for (SysDept sysDept : childDeptList) {
|
||||||
FactoryDashboardDTO data = new FactoryDashboardDTO();
|
|
||||||
data.setDeptName(sysDept.getDeptName());
|
|
||||||
List<FactoryDashboardDTO> factoryDashboardDTOList = factoryDashboardMapper.countWeeklyAlarmNumByLineDeptId(sysDept.getDeptId());
|
List<FactoryDashboardDTO> factoryDashboardDTOList = factoryDashboardMapper.countWeeklyAlarmNumByLineDeptId(sysDept.getDeptId());
|
||||||
List<String> timeList = factoryDashboardDTOList.stream().map(FactoryDashboardDTO::getTime).collect(Collectors.toList());
|
resultList.add(getResultData(sysDept,factoryDashboardDTOList));
|
||||||
List<Object> dataList = factoryDashboardDTOList.stream().map(FactoryDashboardDTO::getData).collect(Collectors.toList());
|
}
|
||||||
data.setX(timeList);
|
return resultList;
|
||||||
data.setY(dataList);
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 近一周各个产线的运行情况
|
||||||
|
* @param deptId 厂区id
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<FactoryDashboardDTO> countWeeklyEquipRunningNumByLineDeptId(Long deptId){
|
||||||
|
//根据厂区id查询厂区产线id
|
||||||
|
List<FactoryDashboardDTO> resultList = new ArrayList<>();
|
||||||
|
List<SysDept> childDeptList = sysDeptMapper.selectChildrenDeptById(deptId);
|
||||||
|
for (SysDept sysDept : childDeptList) {
|
||||||
|
List<FactoryDashboardDTO> factoryDashboardDTOList = factoryDashboardMapper.countWeeklyEquipRunningNumByLineDeptId(sysDept.getDeptId(),0);
|
||||||
|
resultList.add(getResultData(sysDept,factoryDashboardDTOList));
|
||||||
|
}
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据厂区id统计近半年各个产线的维修记录数
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<FactoryDashboardDTO> countMaintenanceRecordNumByProductionLine(Long deptId){
|
||||||
|
List<FactoryDashboardDTO> resultList = new ArrayList<>();
|
||||||
|
List<SysDept> childDeptList = sysDeptMapper.selectChildrenDeptById(deptId);
|
||||||
|
for (SysDept sysDept : childDeptList) {
|
||||||
|
FactoryDashboardDTO data = getMatenanceDataByHalfYear(sysDept.getDeptId());
|
||||||
|
data.setDeptName(sysDept.getDeptName());
|
||||||
|
resultList.add(data);
|
||||||
|
}
|
||||||
|
return resultList;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据厂区id统计近半年各个产线的保养记录数
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<FactoryDashboardDTO> countUpkeepRecordNumByProductionLine(Long deptId){
|
||||||
|
List<FactoryDashboardDTO> resultList = new ArrayList<>();
|
||||||
|
List<SysDept> childDeptList = sysDeptMapper.selectChildrenDeptById(deptId);
|
||||||
|
for (SysDept sysDept : childDeptList) {
|
||||||
|
FactoryDashboardDTO data = getUpkeepDataByHalfYear(sysDept.getDeptId());
|
||||||
|
data.setDeptName(sysDept.getDeptName());
|
||||||
resultList.add(data);
|
resultList.add(data);
|
||||||
}
|
}
|
||||||
return resultList;
|
return resultList;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据厂区id查询最新的报警信息
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<IpcAlarmRecord> selectLatestIpcAlarmRecordByFactoryId(Long deptId){
|
||||||
|
return ipcAlarmRecordService.selectLatestIpcAlarmRecordByFactoryId(deptId);
|
||||||
|
}
|
||||||
|
|
||||||
|
private FactoryDashboardDTO getResultData(SysDept sysDept, List<FactoryDashboardDTO> factoryDashboardDTOList){
|
||||||
|
FactoryDashboardDTO data = new FactoryDashboardDTO();
|
||||||
|
data.setDeptName(sysDept.getDeptName());
|
||||||
|
List<String> timeList = factoryDashboardDTOList.stream().map(FactoryDashboardDTO::getTime).collect(Collectors.toList());
|
||||||
|
List<Object> dataList = factoryDashboardDTOList.stream().map(FactoryDashboardDTO::getData).collect(Collectors.toList());
|
||||||
|
data.setX(timeList);
|
||||||
|
data.setY(dataList);
|
||||||
|
return data;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前时间半年内的保养数据
|
||||||
|
*/
|
||||||
|
private FactoryDashboardDTO getUpkeepDataByHalfYear(Long deptId){
|
||||||
|
FactoryDashboardDTO returnData = new FactoryDashboardDTO();
|
||||||
|
List<String> timeList = new ArrayList<>();
|
||||||
|
List<Object> dataList = new ArrayList<>();
|
||||||
|
List<Date> halfYearDate = getHalfYearDate();
|
||||||
|
//修改日期年月日
|
||||||
|
for (Date date : halfYearDate) {
|
||||||
|
FactoryDashboardDTO factoryData = factoryDashboardMapper.countUpkeepRecordNumByProductionLine(date,deptId);
|
||||||
|
String time = factoryData.getTime();
|
||||||
|
timeList.add(time.substring(0,time.lastIndexOf("-")));
|
||||||
|
dataList.add(factoryData.getData());
|
||||||
|
}
|
||||||
|
Collections.reverse(timeList);
|
||||||
|
Collections.reverse(dataList);
|
||||||
|
returnData.setX(timeList);
|
||||||
|
returnData.setY(dataList);
|
||||||
|
return returnData;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前时间半年内的时间并查询数据
|
||||||
|
*/
|
||||||
|
private FactoryDashboardDTO getMatenanceDataByHalfYear(Long deptId){
|
||||||
|
FactoryDashboardDTO returnData = new FactoryDashboardDTO();
|
||||||
|
List<String> timeList = new ArrayList<>();
|
||||||
|
List<Object> dataList = new ArrayList<>();
|
||||||
|
List<Date> halfYearDate = getHalfYearDate();
|
||||||
|
//修改日期年月日
|
||||||
|
for (Date date : halfYearDate) {
|
||||||
|
FactoryDashboardDTO factoryData = factoryDashboardMapper.countMaintenanceRecordNumByProductionLine(date,deptId);
|
||||||
|
String time = factoryData.getTime();
|
||||||
|
timeList.add(time.substring(0,time.lastIndexOf("-")));
|
||||||
|
dataList.add(factoryData.getData());
|
||||||
|
}
|
||||||
|
Collections.reverse(timeList);
|
||||||
|
Collections.reverse(dataList);
|
||||||
|
returnData.setX(timeList);
|
||||||
|
returnData.setY(dataList);
|
||||||
|
return returnData;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取当前时间内半年月份
|
||||||
|
*/
|
||||||
|
private List<Date> getHalfYearDate(){
|
||||||
|
LocalDate currentDate = LocalDate.now();
|
||||||
|
List<Date> halfYearDate = new ArrayList<>();
|
||||||
|
|
||||||
|
// 遍历当前日期之后的6个月(包括当前月份)
|
||||||
|
for (int i = 0; i < 6; i++) {
|
||||||
|
LocalDate firstDayOfMonth = currentDate.withDayOfMonth(1);
|
||||||
|
Date date = Date.from(firstDayOfMonth.atStartOfDay(ZoneId.systemDefault()).toInstant());
|
||||||
|
halfYearDate.add(date);
|
||||||
|
currentDate = currentDate.minusMonths(1L);
|
||||||
|
}
|
||||||
|
return halfYearDate;
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,22 @@
|
|||||||
package com.inspur.bigscreen.task;
|
package com.inspur.bigscreen.task;
|
||||||
|
|
||||||
|
import com.inspur.bigscreen.domain.IpcDailyEquipNumByStatus;
|
||||||
|
import com.inspur.bigscreen.mapper.IpcDailyEquipNumByStatusMapper;
|
||||||
|
import com.inspur.common.core.domain.entity.SysDept;
|
||||||
|
import com.inspur.common.utils.spring.SpringUtils;
|
||||||
|
import com.inspur.equip.mapper.IpcEquipInfoMapper;
|
||||||
|
import com.inspur.system.mapper.SysDeptMapper;
|
||||||
|
import com.inspur.system.service.ISysDeptService;
|
||||||
|
import com.inspur.system.service.impl.SysDeptServiceImpl;
|
||||||
|
import org.springframework.aop.framework.AopContext;
|
||||||
|
import org.springframework.context.annotation.EnableAspectJAutoProxy;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.transaction.annotation.Transactional;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 大屏数据统计定时任务
|
* 大屏数据统计定时任务
|
||||||
@ -10,11 +26,48 @@ import org.springframework.stereotype.Component;
|
|||||||
@Component("statsDataTask")
|
@Component("statsDataTask")
|
||||||
public class StatsDataTask {
|
public class StatsDataTask {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ISysDeptService sysDeptService;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IpcDailyEquipNumByStatusMapper ipcDailyEquipNumByStatusMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private IpcEquipInfoMapper ipcEquipInfoMapper;
|
||||||
|
|
||||||
|
private static final Integer RUNNING = 0;
|
||||||
|
private static final Integer MAINTANANCE = 1;
|
||||||
|
|
||||||
|
private static final Integer STOP = 2;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 每日根据不同状态统计设备数量
|
* 每日根据不同状态统计设备数量
|
||||||
*/
|
*/
|
||||||
|
@Transactional
|
||||||
public void countDailyEquipNumByStatus(){
|
public void countDailyEquipNumByStatus(){
|
||||||
|
|
||||||
|
List<SysDept> deptList = sysDeptService.selectDeptAll();
|
||||||
|
List<SysDept> factoryList = deptList.stream().filter(dept -> dept.getAncestors().split(",").length == 4).collect(Collectors.toList());
|
||||||
|
for (SysDept sysDept : factoryList) {
|
||||||
|
int nums = 0;
|
||||||
|
//运行状态
|
||||||
|
insertIpcDailyEquipNumByStatusAndDeptId(RUNNING,sysDept.getDeptId());
|
||||||
|
//维修状态
|
||||||
|
insertIpcDailyEquipNumByStatusAndDeptId(MAINTANANCE,sysDept.getDeptId());
|
||||||
|
//停机状态
|
||||||
|
insertIpcDailyEquipNumByStatusAndDeptId(STOP,sysDept.getDeptId());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private int insertIpcDailyEquipNumByStatusAndDeptId(Integer status,Long deptId){
|
||||||
|
IpcDailyEquipNumByStatus ipcDailyEquipNumByStatus = new IpcDailyEquipNumByStatus();
|
||||||
|
ipcDailyEquipNumByStatus.setStatus(status);
|
||||||
|
int nums = ipcEquipInfoMapper.selectIpcEquipInfoNumByStatusAndDeptId(status,deptId);
|
||||||
|
ipcDailyEquipNumByStatus.setNums(nums);
|
||||||
|
ipcDailyEquipNumByStatus.setDeptId(deptId);
|
||||||
|
ipcDailyEquipNumByStatus.setCreateDate(new Date());
|
||||||
|
|
||||||
|
return ipcDailyEquipNumByStatusMapper.insertIpcDailyEquipNumByStatus(ipcDailyEquipNumByStatus);
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -6,6 +6,7 @@ import com.inspur.common.annotation.DataSource;
|
|||||||
import com.inspur.common.enums.DataSourceType;
|
import com.inspur.common.enums.DataSourceType;
|
||||||
import com.inspur.equip.domain.EquipTreeSelect;
|
import com.inspur.equip.domain.EquipTreeSelect;
|
||||||
import com.inspur.equip.domain.IpcEquipInfo;
|
import com.inspur.equip.domain.IpcEquipInfo;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
||||||
|
|
||||||
public interface IpcEquipInfoMapper
|
public interface IpcEquipInfoMapper
|
||||||
@ -53,6 +54,13 @@ public interface IpcEquipInfoMapper
|
|||||||
*/
|
*/
|
||||||
public List<IpcEquipInfo> selectRunningIpcEquipInfoListByParentId(String parentEquipId);
|
public List<IpcEquipInfo> selectRunningIpcEquipInfoListByParentId(String parentEquipId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据厂区id和设备状态查询设备数量
|
||||||
|
*/
|
||||||
|
public Integer selectIpcEquipInfoNumByStatusAndDeptId(@Param("status")Integer status,
|
||||||
|
@Param("deptId")Long deptId);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增设备信息
|
* 新增设备信息
|
||||||
*
|
*
|
||||||
|
@ -14,7 +14,7 @@ import org.apache.ibatis.annotations.Param;
|
|||||||
* @Author zhangjunwen
|
* @Author zhangjunwen
|
||||||
* @create 2024/4/10
|
* @create 2024/4/10
|
||||||
*/
|
*/
|
||||||
@DataSource(DataSourceType.SLAVE)
|
|
||||||
public interface IpcAlarmRecordMapper
|
public interface IpcAlarmRecordMapper
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
@ -33,6 +33,11 @@ public interface IpcAlarmRecordMapper
|
|||||||
*/
|
*/
|
||||||
public List<IpcAlarmRecord> selectIpcAlarmRecordList(IpcAlarmRecord ipcAlarmRecord);
|
public List<IpcAlarmRecord> selectIpcAlarmRecordList(IpcAlarmRecord ipcAlarmRecord);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询厂区id下最新的报警记录
|
||||||
|
*/
|
||||||
|
public List<IpcAlarmRecord> selectLatestIpcAlarmRecordByFactoryId(Long deptId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增报警记录
|
* 新增报警记录
|
||||||
*
|
*
|
||||||
|
@ -6,13 +6,7 @@ import com.inspur.common.annotation.DataSource;
|
|||||||
import com.inspur.common.enums.DataSourceType;
|
import com.inspur.common.enums.DataSourceType;
|
||||||
import com.inspur.industrial.domain.IpcAlarmRules;
|
import com.inspur.industrial.domain.IpcAlarmRules;
|
||||||
|
|
||||||
/**
|
|
||||||
* 设备报警规则Mapper接口
|
|
||||||
*
|
|
||||||
* @Author zhangjunwen
|
|
||||||
* @create 2024/4/9
|
|
||||||
*/
|
|
||||||
@DataSource(DataSourceType.SLAVE)
|
|
||||||
public interface IpcAlarmRulesMapper
|
public interface IpcAlarmRulesMapper
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -6,13 +6,7 @@ import com.inspur.industrial.domain.IpcFaultTreeConfig;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
|
||||||
* 故障树配置Mapper接口
|
|
||||||
*
|
|
||||||
* @author inspur
|
|
||||||
* @date 2024-04-02
|
|
||||||
*/
|
|
||||||
@DataSource(DataSourceType.SLAVE)
|
|
||||||
public interface IpcFaultTreeConfigMapper
|
public interface IpcFaultTreeConfigMapper
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -6,13 +6,7 @@ import com.inspur.common.annotation.DataSource;
|
|||||||
import com.inspur.common.enums.DataSourceType;
|
import com.inspur.common.enums.DataSourceType;
|
||||||
import com.inspur.industrial.domain.IpcMonitorDataInfo;
|
import com.inspur.industrial.domain.IpcMonitorDataInfo;
|
||||||
|
|
||||||
/**
|
|
||||||
* 监控数据信息Mapper接口
|
|
||||||
*
|
|
||||||
* @author inspur
|
|
||||||
* @date 2024-04-09
|
|
||||||
*/
|
|
||||||
@DataSource(DataSourceType.SLAVE)
|
|
||||||
public interface IpcMonitorDataInfoMapper
|
public interface IpcMonitorDataInfoMapper
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -6,13 +6,7 @@ import com.inspur.common.annotation.DataSource;
|
|||||||
import com.inspur.common.enums.DataSourceType;
|
import com.inspur.common.enums.DataSourceType;
|
||||||
import com.inspur.industrial.domain.IpcSysStatus;
|
import com.inspur.industrial.domain.IpcSysStatus;
|
||||||
|
|
||||||
/**
|
|
||||||
* 系统状态Mapper接口
|
|
||||||
*
|
|
||||||
* @Author zhangjunwen
|
|
||||||
* @create 2024/4/3
|
|
||||||
*/
|
|
||||||
@DataSource(DataSourceType.SLAVE)
|
|
||||||
public interface IpcSysStatusMapper
|
public interface IpcSysStatusMapper
|
||||||
{
|
{
|
||||||
/**
|
/**
|
||||||
|
@ -6,7 +6,6 @@ import com.inspur.industrial.domain.PhmEquAlarmRecord;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@DataSource(DataSourceType.SLAVE)
|
|
||||||
public interface PhmEquAlarmRecordMapper {
|
public interface PhmEquAlarmRecordMapper {
|
||||||
/**
|
/**
|
||||||
* 查询超压顶缸报警记录列表
|
* 查询超压顶缸报警记录列表
|
||||||
|
@ -29,6 +29,11 @@ public interface IIpcAlarmRecordService
|
|||||||
*/
|
*/
|
||||||
public List<IpcAlarmRecord> selectIpcAlarmRecordList(IpcAlarmRecord ipcAlarmRecord);
|
public List<IpcAlarmRecord> selectIpcAlarmRecordList(IpcAlarmRecord ipcAlarmRecord);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询厂区id下最新的报警记录
|
||||||
|
*/
|
||||||
|
public List<IpcAlarmRecord> selectLatestIpcAlarmRecordByFactoryId(Long deptId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增报警记录
|
* 新增报警记录
|
||||||
*
|
*
|
||||||
|
@ -48,6 +48,13 @@ public class IpcAlarmRecordServiceImpl implements IIpcAlarmRecordService
|
|||||||
return ipcAlarmRecordMapper.selectIpcAlarmRecordList(ipcAlarmRecord);
|
return ipcAlarmRecordMapper.selectIpcAlarmRecordList(ipcAlarmRecord);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询厂区id下最新的报警记录
|
||||||
|
*/
|
||||||
|
public List<IpcAlarmRecord> selectLatestIpcAlarmRecordByFactoryId(Long deptId){
|
||||||
|
return ipcAlarmRecordMapper.selectLatestIpcAlarmRecordByFactoryId(deptId);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 新增报警记录
|
* 新增报警记录
|
||||||
*
|
*
|
||||||
|
@ -19,6 +19,11 @@ public interface SysDeptMapper
|
|||||||
*/
|
*/
|
||||||
public List<SysDept> selectDeptList(SysDept dept);
|
public List<SysDept> selectDeptList(SysDept dept);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询所有的部门数据
|
||||||
|
*/
|
||||||
|
public List<SysDept> selectDeptAll();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据角色ID查询部门树信息
|
* 根据角色ID查询部门树信息
|
||||||
*
|
*
|
||||||
|
@ -19,6 +19,11 @@ public interface ISysDeptService
|
|||||||
*/
|
*/
|
||||||
public List<SysDept> selectDeptList(SysDept dept);
|
public List<SysDept> selectDeptList(SysDept dept);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询所有部门数据
|
||||||
|
*/
|
||||||
|
public List<SysDept> selectDeptAll();
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询部门树结构信息
|
* 查询部门树结构信息
|
||||||
*
|
*
|
||||||
|
@ -48,6 +48,14 @@ public class SysDeptServiceImpl implements ISysDeptService
|
|||||||
return deptMapper.selectDeptList(dept);
|
return deptMapper.selectDeptList(dept);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询所有部门数据
|
||||||
|
*/
|
||||||
|
public List<SysDept> selectDeptAll(){
|
||||||
|
return deptMapper.selectDeptAll();
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询部门树结构信息
|
* 查询部门树结构信息
|
||||||
*
|
*
|
||||||
|
@ -74,8 +74,38 @@
|
|||||||
|
|
||||||
<!--近一周产线各设备正常运行数量
|
<!--近一周产线各设备正常运行数量
|
||||||
public List<FactoryDashboardDTO> countWeeklyEquipRunningNumByLineDeptId(Long deptId);-->
|
public List<FactoryDashboardDTO> countWeeklyEquipRunningNumByLineDeptId(Long deptId);-->
|
||||||
<select id="countWeeklyEquipRunningNumByLineDeptId" parameterType="Long" resultMap="factoryData">
|
<select id="countWeeklyEquipRunningNumByLineDeptId" resultMap="factoryData">
|
||||||
|
select a.click_date as time,ifnull(b.nums,0) as data
|
||||||
|
from
|
||||||
|
(<include refid="selectWeeklyDate"/>)
|
||||||
|
a left join
|
||||||
|
(
|
||||||
|
select nums,status,dept_id,DATE(create_date) as create_date
|
||||||
|
from `ipc_daily_equip_num_by_status`
|
||||||
|
where dept_id = #{deptId} and
|
||||||
|
create_date >= CURDATE() - INTERVAL 7 DAY
|
||||||
|
and `status` = #{status}
|
||||||
|
) b
|
||||||
|
on a.click_date = b.create_date
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!--统计近半年的维修记录数量-->
|
||||||
|
<select id="countMaintenanceRecordNumByProductionLine" resultMap="factoryData">
|
||||||
|
select #{date} as time,count(1) as data
|
||||||
|
from ipc_maintenance_record
|
||||||
|
where
|
||||||
|
MONTH(maintenance_start_time) = MONTH(#{date})
|
||||||
|
and YEAR(maintenance_start_time) = YEAR(#{date})
|
||||||
|
and dept_id = #{deptId}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<!-- 统计近半年的保养记录数量-->
|
||||||
|
<select id="countUpkeepRecordNumByProductionLine" resultMap="factoryData">
|
||||||
|
select #{date} as time,count(1) as data
|
||||||
|
from ipc_upkeep_plan
|
||||||
|
where
|
||||||
|
MONTH(plan_start_time) = MONTH(#{date})
|
||||||
|
and YEAR(plan_start_time) = YEAR(#{date})
|
||||||
|
and dept_id = #{deptId}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
@ -144,6 +144,19 @@
|
|||||||
WHERE parent_equip_id = #{parentEquipId} and status in ('0')
|
WHERE parent_equip_id = #{parentEquipId} and status in ('0')
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!-- 根据设备状态查询设备数量
|
||||||
|
public Integer selectIpcEquipInfoNumByStatus(String status);-->
|
||||||
|
<select id="selectIpcEquipInfoNumByStatusAndDeptId" resultType="Integer">
|
||||||
|
select count(1)
|
||||||
|
from ipc_equip_info
|
||||||
|
where status = #{status}
|
||||||
|
and dept_id
|
||||||
|
in (
|
||||||
|
select dept_id from sys_dept
|
||||||
|
where find_in_set(#{deptId}, ancestors)
|
||||||
|
)
|
||||||
|
</select>
|
||||||
|
|
||||||
<insert id="insertIpcEquipInfo" parameterType="IpcEquipInfo">
|
<insert id="insertIpcEquipInfo" parameterType="IpcEquipInfo">
|
||||||
insert into ipc_equip_info
|
insert into ipc_equip_info
|
||||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
@ -27,6 +27,7 @@
|
|||||||
<result property="equipManufacturer" column="equip_manufacturer" />
|
<result property="equipManufacturer" column="equip_manufacturer" />
|
||||||
<result property="equipSerialNum" column="equip_serial_num" />
|
<result property="equipSerialNum" column="equip_serial_num" />
|
||||||
<result property="equipProductionDate" column="equip_production_date" />
|
<result property="equipProductionDate" column="equip_production_date" />
|
||||||
|
<result property="deptName" column="dept_name" />
|
||||||
<result property="remark" column="remark" />
|
<result property="remark" column="remark" />
|
||||||
</resultMap>
|
</resultMap>
|
||||||
|
|
||||||
@ -92,6 +93,23 @@
|
|||||||
where a.id = #{id}
|
where a.id = #{id}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<!--查询厂区id下最新的报警记录
|
||||||
|
public List<IpcAlarmRecord> selectLatestIpcAlarmRecordByFactoryId-->
|
||||||
|
<select id="selectLatestIpcAlarmRecordByFactoryId" parameterType="Long" resultMap="IpcAlarmRecordResult">
|
||||||
|
select a.content,a.alarm_value,a.alarm_time,a.status,a.alarm_level,b.equip_name,c.dept_name
|
||||||
|
from `ipc_alarm_record` a
|
||||||
|
left join ipc_equip_info b
|
||||||
|
on a.equip_id = b.id
|
||||||
|
left join sys_dept c
|
||||||
|
on b.dept_id = c.dept_id
|
||||||
|
where b.dept_id in (
|
||||||
|
select dept_id from sys_dept where
|
||||||
|
find_in_set(103,ancestors)
|
||||||
|
)
|
||||||
|
order by a.alarm_time desc
|
||||||
|
limit 5
|
||||||
|
</select>
|
||||||
|
|
||||||
<insert id="insertIpcAlarmRecord" parameterType="IpcAlarmRecord" useGeneratedKeys="true" keyProperty="id">
|
<insert id="insertIpcAlarmRecord" parameterType="IpcAlarmRecord" useGeneratedKeys="true" keyProperty="id">
|
||||||
insert into ipc_alarm_record
|
insert into ipc_alarm_record
|
||||||
<trim prefix="(" suffix=")" suffixOverrides=",">
|
<trim prefix="(" suffix=")" suffixOverrides=",">
|
||||||
|
@ -48,6 +48,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||||||
order by d.parent_id, d.order_num
|
order by d.parent_id, d.order_num
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="selectDeptAll" resultMap="SysDeptResult">
|
||||||
|
<include refid="selectDeptVo"/>
|
||||||
|
</select>
|
||||||
|
|
||||||
<select id="selectDeptListByRoleId" resultType="Long">
|
<select id="selectDeptListByRoleId" resultType="Long">
|
||||||
select d.dept_id
|
select d.dept_id
|
||||||
from sys_dept d
|
from sys_dept d
|
||||||
|
@ -446,6 +446,16 @@ import { getToken } from "@/utils/auth";
|
|||||||
import { Loading } from "element-ui";
|
import { Loading } from "element-ui";
|
||||||
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
import ElImageViewer from "element-ui/packages/image/src/image-viewer";
|
||||||
import { deptTreeSelect } from "@/api/system/user";
|
import { deptTreeSelect } from "@/api/system/user";
|
||||||
|
import {
|
||||||
|
getEquipNumByProductionLine,
|
||||||
|
getEquipNumByStatusAndProductionLine,
|
||||||
|
getSensorNumByProductionLine,
|
||||||
|
getWeeklyAlarmNumByProductionLine,
|
||||||
|
getWeeklyEquipRunningNum,
|
||||||
|
getHYMaintenanceRecordNumByProductionLine,
|
||||||
|
getHYUpkeepRecordNumByProductionLine,
|
||||||
|
getLatestAlarmRecord,
|
||||||
|
} from "@/api/bigscreen/factory";
|
||||||
export default {
|
export default {
|
||||||
name: "Category",
|
name: "Category",
|
||||||
components: {
|
components: {
|
||||||
@ -572,6 +582,13 @@ export default {
|
|||||||
created() {
|
created() {
|
||||||
this.getList();
|
this.getList();
|
||||||
this.getDeptTree();
|
this.getDeptTree();
|
||||||
|
//测试
|
||||||
|
// getEquipNumByProductionLine(103);
|
||||||
|
// getEquipNumByStatusAndProductionLine(103);
|
||||||
|
// getSensorNumByProductionLine(103);
|
||||||
|
getLatestAlarmRecord(103).then((response) => {
|
||||||
|
console.log("data:", response.data);
|
||||||
|
});
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
/** 查询部门下拉树结构 */
|
/** 查询部门下拉树结构 */
|
||||||
|
Loading…
Reference in New Issue
Block a user