Commit bbf3cf15 authored by 喻训浩's avatar 喻训浩

fix: led大屏监控

parent fded8e9d
...@@ -107,7 +107,7 @@ ...@@ -107,7 +107,7 @@
<dependency> <dependency>
<groupId>com.healthmarketscience.jackcess</groupId> <groupId>com.healthmarketscience.jackcess</groupId>
<artifactId>jackcess</artifactId> <artifactId>jackcess</artifactId>
<version>3.0.1</version> <version>3.0.0</version>
</dependency> </dependency>
<!--喷涂室湿度采集第三方jar包--> <!--喷涂室湿度采集第三方jar包-->
<dependency> <dependency>
......
...@@ -22,4 +22,9 @@ public class CacheConfig { ...@@ -22,4 +22,9 @@ public class CacheConfig {
Cache showFieldCache(ConcurrentMapCacheManager cacheManager) { Cache showFieldCache(ConcurrentMapCacheManager cacheManager) {
return cacheManager.getCache("showFieldCache"); return cacheManager.getCache("showFieldCache");
} }
@Bean
Cache stationCache(ConcurrentMapCacheManager cacheManager) {
return cacheManager.getCache("stationCache");
}
} }
package net.vtstar.zhongtong.avi.ledlamp.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import net.vtstar.utils.domain.Return;
import net.vtstar.zhongtong.avi.ledlamp.domain.RoomInfo;
import net.vtstar.zhongtong.avi.ledlamp.domain.vo.LedStationVO;
import net.vtstar.zhongtong.avi.ledlamp.service.LedService;
import net.vtstar.zhongtong.avi.monitoring.domain.Warning;
import net.vtstar.zhongtong.avi.monitoring.domain.enums.StationState;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import java.math.BigDecimal;
import java.util.ArrayList;
@Slf4j
@Api(description = "led大屏监控模块")
@RequestMapping("/api/led")
@RestController
public class LedController {
@Autowired
private LedService ledService;
@ApiOperation(value = "工位级led大屏信息监控", response = LedStationVO.class)
@GetMapping(value = "/ledInfo")
private Return getLEDStationInfo(@RequestParam(value = "ledNo") String ledNo) {
LedStationVO ledStationVO = new LedStationVO();
ArrayList<Warning> warnings = new ArrayList<>();
Warning warning = new Warning();
warning.setInfo("报警信息1111111111111111111111111111111111111");
warning.setName("报警1");
Warning warning1 = new Warning();
warning1.setInfo("报警信息2222222222222222222222222222222222222222222");
warning1.setName("报警2");
warnings.add(warning);
warnings.add(warning1);
ledStationVO.setBusIn(new BigDecimal(33));
ledStationVO.setBusOut(new BigDecimal(44));
ledStationVO.setWarningList(warnings);
ArrayList<RoomInfo> roomInfos = new ArrayList<>();
RoomInfo roomInfo = new RoomInfo();
roomInfo.setName("喷漆室1");
roomInfo.setStationState(StationState.USE);
roomInfo.setWorkingHours(new BigDecimal(30));
RoomInfo roomInfo2= new RoomInfo();
roomInfo2.setName("喷漆室2");
roomInfo2.setStationState(StationState.FREE);
roomInfo2.setWorkingHours(new BigDecimal(22));
roomInfos.add(roomInfo);
roomInfos.add(roomInfo2);
ledStationVO.setRoomInfoList(roomInfos);
return Return.success(ledStationVO);
}
}
package net.vtstar.zhongtong.avi.ledlamp.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import net.vtstar.zhongtong.avi.monitoring.domain.enums.StationState;
import java.math.BigDecimal;
@ApiModel("喷漆室信息")
@Data
public class RoomInfo {
private Long id;
@ApiModelProperty(value = "房间名")
private String name;
@ApiModelProperty(value = "状态")
private StationState stationState;
@ApiModelProperty(value = "作业时间")
private BigDecimal workingHours;
}
package net.vtstar.zhongtong.avi.ledlamp.domain.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import net.vtstar.zhongtong.avi.ledlamp.domain.RoomInfo;
import net.vtstar.zhongtong.avi.monitoring.domain.Warning;
import java.math.BigDecimal;
import java.util.List;
@Data
@ApiModel("led工位级屏幕展示信息")
public class LedStationVO {
@ApiModelProperty(value = "")
private Long id;
@ApiModelProperty(value = "进车数")
private BigDecimal busIn;
@ApiModelProperty(value = "出车数")
private BigDecimal busOut;
@ApiModelProperty(value = "报警信息")
private List<Warning> warningList;
@ApiModelProperty(value = "室内信息")
private List<RoomInfo> roomInfoList;
}
package net.vtstar.zhongtong.avi.ledlamp.domain.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import net.vtstar.zhongtong.avi.ledlamp.domain.RoomInfo;
import java.util.List;
@Data
@ApiModel("喷漆室状态")
public class SprayBoothStateVO {
private Long id;
@ApiModelProperty(value = "室内信息")
private List<RoomInfo> roomInfoList;
}
...@@ -3,7 +3,9 @@ package net.vtstar.zhongtong.avi.ledlamp.service; ...@@ -3,7 +3,9 @@ package net.vtstar.zhongtong.avi.ledlamp.service;
import com.sun.jna.Library; import com.sun.jna.Library;
import com.sun.jna.Native; import com.sun.jna.Native;
import com.sun.jna.Platform; import com.sun.jna.Platform;
import org.springframework.stereotype.Service;
@Service
public class LedService { public class LedService {
public interface test extends Library { public interface test extends Library {
......
package net.vtstar.zhongtong.avi.monitoring.domain;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
@ApiModel(value = "报警信息")
public class Warning {
private Long id;
@ApiModelProperty(value = "报警信息描述")
private String info;
@ApiModelProperty(value = "警告名")
private String name;
}
...@@ -9,5 +9,5 @@ public enum StationState { ...@@ -9,5 +9,5 @@ public enum StationState {
/** /**
* 空闲 * 空闲
*/ */
FREE; FREE
} }
package net.vtstar.zhongtong.avi.monitoring.job;
import lombok.extern.slf4j.Slf4j;
import net.vtstar.scada.base.gather.job.GatherJob;
import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException;
import org.springframework.stereotype.Component;
@Slf4j
@Component
public class AVIMonitorJob extends GatherJob {
private static final String NAME = "AVI_PLC";
@Override
protected void executeInternal(JobExecutionContext jobExecutionContext) throws JobExecutionException {
log.info("_______________________________________________________________");
log.info("AVIMonitorJob start...");
}
}
package net.vtstar.zhongtong.avi.monitoring.runner;
import lombok.extern.slf4j.Slf4j;
import net.vtstar.user.mybatis.provider.OrderBy;
import net.vtstar.user.mybatis.provider.WhereFilter;
import net.vtstar.user.search.service.SearchService;
import net.vtstar.zhongtong.avi.equipment.domain.PaintshopArea;
import net.vtstar.zhongtong.avi.equipment.domain.PaintshopLane;
import net.vtstar.zhongtong.avi.equipment.domain.PaintshopStation;
import net.vtstar.zhongtong.avi.equipment.mapper.PaintshopStationMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.CommandLineRunner;
import org.springframework.cache.Cache;
import org.springframework.core.annotation.Order;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
@Slf4j
@Order(value = 1)
@Component
public class ReadStationToCacheRunner implements CommandLineRunner {
@Resource(name = "stationCache")
private Cache stationCache;
@Autowired
private SearchService searchService;
@Autowired
private PaintshopStationMapper stationMapper;
@Override
public void run(String... args) throws Exception {
List<PaintshopStation> stations = stationMapper.findList(new WhereFilter() {{
addJoin(PaintshopStation.class, "area_id", PaintshopArea.class, "id");
addJoin(PaintshopStation.class, "lane_id", PaintshopLane.class, "id");
addOrderBy(PaintshopStation.class, "sequence", OrderBy.ASC);
}}, PaintshopStation.class);
for (PaintshopStation station : stations) {
stationCache.put(station.getCode(),station);
}
}
}
...@@ -5,6 +5,7 @@ import net.vtstar.scada.base.equipmgt.domain.Enum.EquipStatusEnum; ...@@ -5,6 +5,7 @@ import net.vtstar.scada.base.equipmgt.domain.Enum.EquipStatusEnum;
import net.vtstar.scada.base.gather.domain.EquipmentData; import net.vtstar.scada.base.gather.domain.EquipmentData;
import net.vtstar.scada.base.gather.job.GatherJob; import net.vtstar.scada.base.gather.job.GatherJob;
import net.vtstar.zhongtong.avi.stamping.domain.LaserCuttingMachine; import net.vtstar.zhongtong.avi.stamping.domain.LaserCuttingMachine;
import org.quartz.DisallowConcurrentExecution;
import org.quartz.JobExecutionContext; import org.quartz.JobExecutionContext;
import org.quartz.JobExecutionException; import org.quartz.JobExecutionException;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
...@@ -14,6 +15,7 @@ import org.springframework.stereotype.Component; ...@@ -14,6 +15,7 @@ import org.springframework.stereotype.Component;
*/ */
@Slf4j @Slf4j
@Component @Component
@DisallowConcurrentExecution
public class LaserCuttingMachineJob extends GatherJob { public class LaserCuttingMachineJob extends GatherJob {
private static final String NAME = "3D_LASER_CUTTING"; private static final String NAME = "3D_LASER_CUTTING";
......
spring.profiles.include=mybatis,quartz,swagger,security,mqtt spring.profiles.include=mybatis,quartz,swagger,security,mqtt,ztip
# Mysql # Mysql
#spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver #spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
...@@ -11,10 +11,23 @@ spring.datasource.url=jdbc:mysql://localhost:3306/zhongtong_dev?useSSL=false&use ...@@ -11,10 +11,23 @@ spring.datasource.url=jdbc:mysql://localhost:3306/zhongtong_dev?useSSL=false&use
spring.datasource.username=root spring.datasource.username=root
spring.datasource.password=123456 spring.datasource.password=123456
sqlserver.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver # sql server(试交车间--检测线192.168.1.200)
sqlserver.jdbc-url=jdbc:sqlserver://10.100.172.118:1433;DatabaseName=UFDATA_101_2016 spring.test.sqlserver.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
sqlserver.username=sa spring.test.sqlserver.jdbc-url=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=CARTEST_ZTKC
sqlserver.password=!QAZ0okm spring.test.sqlserver.username=admin
spring.test.sqlserver.password=123456
# sql server(试交车间--限速值)
spring.speed.sqlserver.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.speed.sqlserver.jdbc-url=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=localdb
spring.speed.sqlserver.username=admin
spring.speed.sqlserver.password=123456
# sql server(总装车间--智能扭力扳手)
spring.torque.sqlserver.driver-class-name=com.microsoft.sqlserver.jdbc.SQLServerDriver
spring.torque.sqlserver.jdbc-url=jdbc:sqlserver://127.0.0.1:1433;DatabaseName=AtlasCopco_ToolsNet_Database
spring.torque.sqlserver.username=admin
spring.torque.sqlserver.password=123456
# redis # redis
spring.redis.host=10.100.172.14 spring.redis.host=10.100.172.14
......
...@@ -3,6 +3,7 @@ spring.output.ansi.enabled=always ...@@ -3,6 +3,7 @@ spring.output.ansi.enabled=always
spring.main.banner-mode=off spring.main.banner-mode=off
logging.level.root=info logging.level.root=info
logging.level.net.vtstar=trace logging.level.net.vtstar=trace
#logging.file=D://zhongtong/logs/zhongtong-service.log
spring.aop.auto=true spring.aop.auto=true
spring.main.allow-bean-definition-overriding=true spring.main.allow-bean-definition-overriding=true
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment