Merge remote-tracking branch 'origin/master'

# Conflicts:
#	acs2/nladmin-system/nlsso-server/src/main/resources/language/error/error.properties
#	acs2/nladmin-system/nlsso-server/src/main/resources/language/error/error_en_US.properties
#	acs2/nladmin-system/nlsso-server/src/main/resources/language/error/error_in_ID.properties
#	acs2/nladmin-system/nlsso-server/src/main/resources/language/error/error_zh_CN.properties
This commit is contained in:
2024-02-26 16:33:08 +08:00
112 changed files with 895 additions and 338 deletions

View File

@@ -1143,7 +1143,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
}
}
/*if (nextDevice.getDeviceDriver() instanceof StandardInspectSiteDeviceDriver) {
if (nextDevice.getDeviceDriver() instanceof StandardInspectSiteDeviceDriver) {
standardInspectSiteDeviceDriver = (StandardInspectSiteDeviceDriver) nextDevice.getDeviceDriver();
// hongXiangConveyorDeviceDriver.writing("to_close_door", "1");
@@ -1162,7 +1162,7 @@ public class OvenGantryManipulatorDeviceDriver extends AbstractOpcDeviceDriver i
}
}
}*/
}
this.writing("to_command", "5");
this.setNow_steps_type(6);
this.setNow_steps_type(0);

View File

@@ -130,7 +130,6 @@ public class StandardInspectSiteDeviceDriver extends AbstractOpcDeviceDriver imp
@Override
public void execute() {
String message = null;
try {
device_code = this.getDeviceCode();
mode = this.itemProtocol.getMode();
@@ -162,13 +161,12 @@ public class StandardInspectSiteDeviceDriver extends AbstractOpcDeviceDriver imp
message = "未联机";
//有报警
} else {
} else if (error != 0) {
this.setIserror(true);
message = "有报警";
}else {
this.setIsonline(true);
this.setIserror(false);
if (error != 0) {
this.setIserror(true);
message = "有报警";
}
message = "";
Instruction instruction = null;
List toInstructions;
@@ -179,7 +177,6 @@ public class StandardInspectSiteDeviceDriver extends AbstractOpcDeviceDriver imp
case 2:
break;
}
}
last_mode = mode;
last_error = error;

View File

@@ -2,7 +2,10 @@ package org.nl.acs.opc;
import lombok.extern.slf4j.Slf4j;
import org.nl.acs.auto.run.AbstractAutoRunnable;
import org.nl.acs.auto.run.AutoRunService;
import org.nl.acs.device_driver.driver.ExecutableDeviceDriver;
import org.nl.acs.udw.UnifiedDataAccessor;
import org.nl.acs.udw.UnifiedDataAccessorFactory;
import org.nl.config.thread.TheadFactoryName;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
@@ -15,6 +18,8 @@ import java.util.concurrent.*;
public class DeviceExecuteAutoRun extends AbstractAutoRunnable {
@Autowired
DeviceAppService deviceAppService;
@Autowired
private AutoRunService autoRunService;
int cache_thread = 3;
int corePoolSize = 50;
@@ -78,6 +83,10 @@ public class DeviceExecuteAutoRun extends AbstractAutoRunnable {
log.info("设备执行线程等待opc同步线程...");
Thread.sleep(1000L);
if (i > 60) {
UnifiedDataAccessor accessor_value = UnifiedDataAccessorFactory.getAccessor(OpcConfig.udw_opc_value_key);
if(accessor_value.getAllKey().size() < 1){
autoRunService.startThread("DeviceOpcSynchronizeAutoRun");
}
log.info("设备执行线程放弃等待opc同步线程...");
break;
}
@@ -109,7 +118,6 @@ public class DeviceExecuteAutoRun extends AbstractAutoRunnable {
if (!this.runs.keySet().contains(deviceDriver.getDeviceCode())) {
this.runs.put(deviceDriver.getDeviceCode(), runnable);
}
runnable.setIndex(this.runs);
this.executorService.submit(runnable);
}

View File

@@ -72,6 +72,7 @@
"vue-echarts": "^5.0.0-beta.0",
"vue-highlightjs": "^1.3.3",
"vue-image-crop-upload": "^2.5.0",
"vue-particles": "^1.0.9",
"vue-print-nb": "^1.7.5",
"vue-router": "3.0.2",
"vue-seamless-scroll": "^1.1.23",

View File

@@ -9,6 +9,9 @@ import 'font-awesome/css/font-awesome.css'
import mavonEditor from 'mavon-editor'
import 'mavon-editor/dist/css/index.css'
import VueParticles from 'vue-particles'
Vue.use(VueParticles)
// 数据字典
import dict from './components/Dict'

View File

@@ -1,8 +1,26 @@
<template>
<div class="login" :style="'background-image:url('+ Background +');'">
<vue-particles
class="lizi"
color="#dedede"
:particle-opacity="0.7"
:particles-number="80"
shape-type="circle"
:particle-size="4"
lines-color="#dedede"
:lines-width="1"
:line-linked="true"
:line-opacity="0.4"
:lines-distance="150"
:move-speed="3"
:hover-effect="true"
hover-mode="grab"
:click-effect="true"
click-mode="push"
/>
<el-form ref="loginForm" :model="loginForm" :rules="loginRules" label-position="left" label-width="0px" class="login-form">
<h3 class="title">
{{title}}</h3>
{{ title }}</h3>
<el-form-item prop="username">
<el-input v-model="loginForm.username" type="text" auto-complete="off" placeholder="账号">
<svg-icon slot="prefix" icon-class="user" class="el-input__icon input-icon" />
@@ -169,7 +187,18 @@ export default {
align-items: center;
height: 100%;
background-size: cover;
}
z-index: 999;
}
.lizi {
background-size: cover;
position: fixed;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.title {
margin: 0 auto 30px auto;
text-align: center;