From 4480cfdfcbc4970683d5256c884fc6cc26851842 Mon Sep 17 00:00:00 2001 From: 86156 <823267011@qq.com> Date: Mon, 5 Jan 2026 14:29:33 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BA=8C=E7=BA=A7=E5=92=8Capp=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- apps/hand-factory/api/pocket/deviceEnum.js | 9 + .../api/pocket/deviceFieldMeta.js | 9 + .../hand-factory/api/pocket/deviceSnapshot.js | 20 + apps/hand-factory/components/lines/zinc1.vue | 951 +++++++++++------- apps/hand-factory/static/pocket.sql | 448 +++++++++ apps/hand-factory/utils/socketMeasure.js | 62 ++ apps/l2/src/api/l2/pdo.js | 13 + apps/l2/src/views/l2/pdo/index.vue | 4 +- package-lock.json | 166 +++ 9 files changed, 1309 insertions(+), 373 deletions(-) create mode 100644 apps/hand-factory/api/pocket/deviceEnum.js create mode 100644 apps/hand-factory/api/pocket/deviceFieldMeta.js create mode 100644 apps/hand-factory/api/pocket/deviceSnapshot.js create mode 100644 apps/hand-factory/static/pocket.sql create mode 100644 apps/hand-factory/utils/socketMeasure.js create mode 100644 package-lock.json diff --git a/apps/hand-factory/api/pocket/deviceEnum.js b/apps/hand-factory/api/pocket/deviceEnum.js new file mode 100644 index 0000000..f0399da --- /dev/null +++ b/apps/hand-factory/api/pocket/deviceEnum.js @@ -0,0 +1,9 @@ +import request from '@/utils/request' + +export function listDeviceEnumAll() { + return request({ + url: '/api/deviceEnum/all', + method: 'get' + }) +} + diff --git a/apps/hand-factory/api/pocket/deviceFieldMeta.js b/apps/hand-factory/api/pocket/deviceFieldMeta.js new file mode 100644 index 0000000..9d6f05d --- /dev/null +++ b/apps/hand-factory/api/pocket/deviceFieldMeta.js @@ -0,0 +1,9 @@ +import request from '@/utils/request' + +export function getDeviceFieldMetaAll() { + return request({ + url: '/api/deviceFieldMeta/all', + method: 'get' + }) +} + diff --git a/apps/hand-factory/api/pocket/deviceSnapshot.js b/apps/hand-factory/api/pocket/deviceSnapshot.js new file mode 100644 index 0000000..18866cc --- /dev/null +++ b/apps/hand-factory/api/pocket/deviceSnapshot.js @@ -0,0 +1,20 @@ +import request from '@/utils/request' + +// 获取最新N条设备快照 +export function listDeviceSnapshotLatest(params) { + return request({ + url: '/api/deviceSnapshot/latest', + method: 'get', + params + }) +} + +// 按时间范围查询设备快照 +export function listDeviceSnapshotRange(params) { + return request({ + url: '/api/deviceSnapshot/range', + method: 'get', + params + }) +} + diff --git a/apps/hand-factory/components/lines/zinc1.vue b/apps/hand-factory/components/lines/zinc1.vue index e9a661e..3cb144a 100644 --- a/apps/hand-factory/components/lines/zinc1.vue +++ b/apps/hand-factory/components/lines/zinc1.vue @@ -2,8 +2,8 @@ - - + - - - + + + - - - - 🔒 - 该功能未启用 - 镀锌线1实时监控功能暂未启用,请联系管理员 + + + + + Socket + {{ isConnected ? '已连接' : '未连接' }} + + + + 更新时间 + {{ lastUpdateTime }} + + + + 设备数 + {{ deviceDefs.length }} + - - - - - - - - - + + {{ dev.desc }}({{ dev.deviceCode }}) + + + + + + {{ getFieldLabel(fieldName) }} + {{ getFieldUnit(fieldName) }} + + + + + + + + AVG{{ formatNum(fieldTrendMap[dev.deviceCode][fieldName].avg) }} + MAX{{ formatNum(fieldTrendMap[dev.deviceCode][fieldName].max) }} + MIN{{ formatNum(fieldTrendMap[dev.deviceCode][fieldName].min) }} + LAST{{ formatNum(fieldTrendMap[dev.deviceCode][fieldName].last) }} + + + + + 等待 {{ getFieldLabel(fieldName) }} 数据... + + + + + + 等待 {{ dev.desc }} 数据...(滚动到此处加载) + + diff --git a/apps/hand-factory/static/pocket.sql b/apps/hand-factory/static/pocket.sql new file mode 100644 index 0000000..29a0e64 --- /dev/null +++ b/apps/hand-factory/static/pocket.sql @@ -0,0 +1,448 @@ +/* +SQLyog Ultimate v12.09 (64 bit) +MySQL - 8.0.43 : Database - klp_pocketfactory +********************************************************************* +*/ + + +/*!40101 SET NAMES utf8 */; + +/*!40101 SET SQL_MODE=''*/; + +/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; +/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; +/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; +/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; +CREATE DATABASE /*!32312 IF NOT EXISTS*/`klp_pocketfactory` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci */ /*!80016 DEFAULT ENCRYPTION='N' */; + +USE `klp_pocketfactory`; + +/*Table structure for table `klptcm1_pdi_plan` */ + +DROP TABLE IF EXISTS `klptcm1_pdi_plan`; + +CREATE TABLE `klptcm1_pdi_plan` ( + `COILID` varchar(30) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `SEQID` decimal(10,0) DEFAULT NULL, + `SEQUENCENR` decimal(10,0) DEFAULT NULL, + `SCHEDULENR` decimal(10,0) DEFAULT NULL, + `ENTRY_WIDTH` decimal(10,4) DEFAULT NULL, + `ENTRY_THICK` decimal(10,4) DEFAULT NULL, + `ENTRY_LENGTH` decimal(10,4) DEFAULT NULL, + `ENTRY_WEIGHT` decimal(10,4) DEFAULT NULL, + `ENTRY_OUTER_DIAMETER` decimal(10,4) DEFAULT NULL, + `ENTRY_INNER_DIAMETER` decimal(10,4) DEFAULT '508.0000', + `STATUS` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `CUSTOMER` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `ORDERNR` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `STEEL_GRADE` varchar(100) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `SURFACE_CODE` decimal(10,0) DEFAULT NULL, + `YIELD_POINT` decimal(10,0) DEFAULT NULL, + `WELD_CODE` decimal(1,0) DEFAULT NULL, + `SCRAP_FLAG` decimal(10,0) DEFAULT NULL, + `THICK_TOLMAX` decimal(10,4) DEFAULT NULL, + `THICK_TOLMIN` decimal(10,4) DEFAULT NULL, + `HEADEND_GAUGE_LENGTH` decimal(10,4) DEFAULT NULL, + `TAILEND_GAUGE_LENGTH` decimal(10,4) DEFAULT NULL, + `HEAT_CYCLE` decimal(10,0) DEFAULT NULL, + `COATING_SELECTION` decimal(10,0) DEFAULT NULL, + `AIM_WEIGHT_TOP` decimal(10,4) DEFAULT NULL, + `MAXTOL_WEIGHT_TOP` decimal(10,4) DEFAULT NULL, + `AIM_WEIGHT_BOTTOM` decimal(10,4) DEFAULT NULL, + `MAXTOL_WEIGHT_BOTTOM` decimal(10,4) DEFAULT NULL, + `SPM_FLAG` decimal(10,0) DEFAULT NULL, + `SPM_ELONGATION` decimal(10,4) DEFAULT NULL, + `SPM_ROLLFORCE` decimal(10,4) DEFAULT NULL, + `SPM_PROCESS_TYPE` decimal(10,0) DEFAULT NULL, + `SPM_CONTROL_MODE` decimal(10,0) DEFAULT NULL, + `TLV_FLAG` decimal(10,0) DEFAULT NULL, + `TLV_ELONGATION` decimal(10,4) DEFAULT NULL, + `CHROMATING` decimal(10,0) DEFAULT NULL, + `COATING_CODE` decimal(10,0) DEFAULT NULL, + `OILING_FLAG` decimal(2,0) DEFAULT NULL, + `OILING_TOP` decimal(10,4) DEFAULT NULL, + `OILING_BOTTOM` decimal(10,4) DEFAULT NULL, + `SAMPLE_FLAG` decimal(10,0) DEFAULT NULL, + `SPLIT_FLAG` decimal(2,0) DEFAULT NULL, + `SPLIT_NUM` decimal(10,0) NOT NULL DEFAULT '1', + `EXIT_WEIGHT1` decimal(10,4) DEFAULT NULL, + `WINDING1` decimal(10,0) DEFAULT '1', + `CUT_MODE1` decimal(10,0) DEFAULT NULL, + `EXIT_WEIGHT2` decimal(10,4) DEFAULT NULL, + `WINDING2` decimal(10,0) DEFAULT '1', + `CUT_MODE2` decimal(10,0) DEFAULT NULL, + `EXIT_WEIGHT3` decimal(10,4) DEFAULT NULL, + `WINDING3` decimal(10,0) DEFAULT '1', + `CUT_MODE3` decimal(10,0) DEFAULT NULL, + `EXIT_WEIGHT4` decimal(10,4) DEFAULT NULL, + `WINDING4` decimal(10,0) DEFAULT '1', + `CUT_MODE4` decimal(10,0) DEFAULT NULL, + `EXIT_WEIGHT5` decimal(10,4) DEFAULT NULL, + `WINDING5` decimal(10,0) DEFAULT '1', + `CUT_MODE5` decimal(10,0) DEFAULT NULL, + `EXIT_WEIGHT6` decimal(10,4) DEFAULT NULL, + `WINDING6` decimal(10,0) DEFAULT '1', + `CUT_MODE6` decimal(10,0) DEFAULT NULL, + `EXIT_WEIGHT7` decimal(10,4) DEFAULT NULL, + `WINDING7` decimal(10,0) DEFAULT '1', + `CUT_MODE7` decimal(10,0) DEFAULT NULL, + `TIMESTAMP` datetime DEFAULT CURRENT_TIMESTAMP, + `ONLINE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `START_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `END_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (`COILID`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_pdo_excoil` */ + +DROP TABLE IF EXISTS `klptcm1_pdo_excoil`; + +CREATE TABLE `klptcm1_pdo_excoil` ( + `ENCOILID` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `GRADE` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `THICK_QUALITY` decimal(15,4) DEFAULT NULL, + `SHAPE_QUALITY` decimal(15,4) DEFAULT NULL, + `ENTRY_THICK` decimal(15,4) DEFAULT NULL, + `EXIT_THICK` decimal(15,4) DEFAULT NULL, + `ENTRY_WIDTH` decimal(15,4) DEFAULT NULL, + `EXIT_WIDTH` decimal(15,4) DEFAULT NULL, + `ENTRY_WEIGHT` decimal(15,4) DEFAULT NULL, + `EXIT_WEIGHT` decimal(15,4) DEFAULT NULL, + `ONLINE_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `START_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `END_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `INSDATE` datetime DEFAULT CURRENT_TIMESTAMP, + `SHIFT` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `CREW` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `EXCOILID` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_plan_trace` */ + +DROP TABLE IF EXISTS `klptcm1_plan_trace`; + +CREATE TABLE `klptcm1_plan_trace` ( + `POSITION_NAME` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `COILID` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `GRADE` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `ENTRY_THICK` decimal(15,4) DEFAULT NULL, + `EXIT_THICK` decimal(15,4) DEFAULT NULL, + `ENTRY_WIDTH` decimal(15,4) DEFAULT NULL, + `EXIT_WIDTH` decimal(15,4) DEFAULT NULL, + `ENTRY_WEIGHT` decimal(15,4) DEFAULT NULL, + `ENTRY_LENGTH` decimal(15,4) DEFAULT NULL, + `ENTRY_INNER_DIAMETER` decimal(10,0) DEFAULT '762', + `ENTRY_OUTER_DIAMETER` decimal(10,0) DEFAULT NULL, + `ROLL_MODE` decimal(1,0) DEFAULT NULL, + `NEXT_UNIT` varchar(4) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT 'C000', + `L1MAPIDX` decimal(3,0) NOT NULL, + `INSDATE` datetime DEFAULT CURRENT_TIMESTAMP, + PRIMARY KEY (`L1MAPIDX`) USING BTREE +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_pro_plant_state_current` */ + +DROP TABLE IF EXISTS `klptcm1_pro_plant_state_current`; + +CREATE TABLE `klptcm1_pro_plant_state_current` ( + `INSDATE` datetime DEFAULT CURRENT_TIMESTAMP, + `YEAR` decimal(10,0) DEFAULT NULL, + `MONTH` decimal(10,0) DEFAULT NULL, + `DAY` decimal(10,0) DEFAULT NULL, + `HOUR` decimal(10,0) DEFAULT NULL, + `MINUTE` decimal(10,0) DEFAULT NULL, + `TYPE` decimal(10,0) DEFAULT NULL, + `VALUE1` decimal(15,4) DEFAULT NULL, + `VALUE2` decimal(15,4) DEFAULT NULL, + `VALUE3` decimal(15,4) DEFAULT NULL, + `VALUE4` decimal(15,4) DEFAULT NULL, + `VALUE5` decimal(15,4) DEFAULT NULL, + `VALUE6` decimal(15,4) DEFAULT NULL, + `VALUE7` decimal(15,4) DEFAULT NULL, + `VALUE8` decimal(15,4) DEFAULT NULL, + `VALUE9` decimal(15,4) DEFAULT NULL, + `VALUE10` decimal(15,4) DEFAULT NULL, + `VALUE11` decimal(15,4) DEFAULT NULL, + `VALUE12` decimal(15,4) DEFAULT NULL, + `VALUE13` decimal(15,4) DEFAULT NULL, + `VALUE14` decimal(15,4) DEFAULT NULL, + `VALUE15` decimal(15,4) DEFAULT NULL, + `VALUE16` decimal(15,4) DEFAULT NULL, + `VALUE17` decimal(15,4) DEFAULT NULL, + `VALUE18` decimal(15,4) DEFAULT NULL, + `VALUE19` decimal(15,4) DEFAULT NULL, + `VALUE20` decimal(15,4) DEFAULT NULL, + `VALUE21` decimal(15,4) DEFAULT NULL, + `VALUE22` decimal(15,4) DEFAULT NULL, + `VALUE23` decimal(15,4) DEFAULT NULL, + `VALUE24` decimal(15,4) DEFAULT NULL, + `VALUE25` decimal(15,4) DEFAULT NULL, + `VALUE26` decimal(15,4) DEFAULT NULL, + `VALUE27` decimal(15,4) DEFAULT NULL, + `VALUE28` decimal(15,4) DEFAULT NULL, + `VALUE29` decimal(15,4) DEFAULT NULL, + `VALUE30` decimal(15,4) DEFAULT NULL, + `VALUE31` decimal(15,4) DEFAULT NULL, + `VALUE32` decimal(15,4) DEFAULT NULL, + `VALUE33` decimal(15,4) DEFAULT NULL, + `VALUE34` decimal(15,4) DEFAULT NULL, + `VALUE35` decimal(15,4) DEFAULT NULL, + `VALUE36` decimal(15,4) DEFAULT NULL, + `VALUE37` decimal(15,4) DEFAULT NULL, + `VALUE38` decimal(15,4) DEFAULT NULL, + `VALUE39` decimal(15,4) DEFAULT NULL, + `VALUE40` decimal(15,4) DEFAULT NULL, + `VALUE41` decimal(15,4) DEFAULT NULL, + `VALUE42` decimal(15,4) DEFAULT NULL, + `VALUE43` decimal(15,4) DEFAULT NULL, + `VALUE44` decimal(15,4) DEFAULT NULL, + `VALUE45` decimal(15,4) DEFAULT NULL, + `VALUE46` decimal(15,4) DEFAULT NULL, + `VALUE47` decimal(15,4) DEFAULT NULL, + `VALUE48` decimal(15,4) DEFAULT NULL, + `VALUE49` decimal(15,4) DEFAULT NULL, + `VALUE50` decimal(15,4) DEFAULT NULL, + `VALUE51` decimal(15,4) DEFAULT NULL, + `VALUE52` decimal(15,4) DEFAULT NULL, + `VALUE53` decimal(15,4) DEFAULT NULL, + `VALUE54` decimal(15,4) DEFAULT NULL, + `VALUE55` decimal(15,4) DEFAULT NULL, + `VALUE56` decimal(15,4) DEFAULT NULL, + `VALUE57` decimal(15,4) DEFAULT NULL, + `VALUE58` decimal(15,4) DEFAULT NULL, + `VALUE59` decimal(15,4) DEFAULT NULL, + `VALUE60` decimal(15,4) DEFAULT NULL, + `VALUE61` decimal(15,4) DEFAULT NULL, + `VALUE62` decimal(15,4) DEFAULT NULL, + `VALUE63` decimal(15,4) DEFAULT NULL, + `VALUE64` decimal(15,4) DEFAULT NULL, + `VALUE65` decimal(15,4) DEFAULT NULL, + `VALUE66` decimal(15,4) DEFAULT NULL, + `VALUE67` decimal(15,4) DEFAULT NULL, + `VALUE68` decimal(15,4) DEFAULT NULL, + `VALUE69` decimal(15,4) DEFAULT NULL, + `VALUE70` decimal(15,4) DEFAULT NULL, + `VALUE71` decimal(15,4) DEFAULT NULL, + `VALUE72` decimal(15,4) DEFAULT NULL, + `VALUE73` decimal(15,4) DEFAULT NULL, + `VALUE74` decimal(15,4) DEFAULT NULL, + `VALUE75` decimal(15,4) DEFAULT NULL, + `VALUE76` decimal(15,4) DEFAULT NULL, + `VALUE77` decimal(15,4) DEFAULT NULL, + `VALUE78` decimal(15,4) DEFAULT NULL, + `VALUE79` decimal(15,4) DEFAULT NULL, + `VALUE80` decimal(15,4) DEFAULT NULL, + `VALUE81` decimal(15,4) DEFAULT NULL, + `VALUE82` decimal(15,4) DEFAULT NULL, + `VALUE83` decimal(15,4) DEFAULT NULL, + `VALUE84` decimal(15,4) DEFAULT NULL, + `VALUE85` decimal(15,4) DEFAULT NULL, + `VALUE86` decimal(15,4) DEFAULT NULL, + `VALUE87` decimal(15,4) DEFAULT NULL, + `VALUE88` decimal(15,4) DEFAULT NULL, + `VALUE89` decimal(15,4) DEFAULT NULL, + `VALUE90` decimal(15,4) DEFAULT NULL, + `VALUE91` decimal(15,4) DEFAULT NULL, + `VALUE92` decimal(15,4) DEFAULT NULL, + `VALUE93` decimal(15,4) DEFAULT NULL, + `VALUE94` decimal(15,4) DEFAULT NULL, + `VALUE95` decimal(15,4) DEFAULT NULL, + `VALUE96` decimal(15,4) DEFAULT NULL, + `VALUE97` decimal(15,4) DEFAULT NULL, + `VALUE98` decimal(15,4) DEFAULT NULL, + `VALUE99` decimal(15,4) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_pro_plant_state_define` */ + +DROP TABLE IF EXISTS `klptcm1_pro_plant_state_define`; + +CREATE TABLE `klptcm1_pro_plant_state_define` ( + `ID` decimal(10,0) DEFAULT NULL, + `NAME` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `UNITS` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `COMMENTS` varchar(256) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `INSDATE` datetime DEFAULT CURRENT_TIMESTAMP, + `MODELTYPE` decimal(10,0) DEFAULT '2' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_pro_plant_state_history` */ + +DROP TABLE IF EXISTS `klptcm1_pro_plant_state_history`; + +CREATE TABLE `klptcm1_pro_plant_state_history` ( + `INSDATE` datetime DEFAULT CURRENT_TIMESTAMP, + `YEAR` decimal(10,0) DEFAULT NULL, + `MONTH` decimal(10,0) DEFAULT NULL, + `DAY` decimal(10,0) DEFAULT NULL, + `HOUR` decimal(10,0) DEFAULT NULL, + `MINUTE` decimal(10,0) DEFAULT NULL, + `TYPE` decimal(10,0) DEFAULT NULL, + `VALUE1` decimal(15,4) DEFAULT NULL, + `VALUE2` decimal(15,4) DEFAULT NULL, + `VALUE3` decimal(15,4) DEFAULT NULL, + `VALUE4` decimal(15,4) DEFAULT NULL, + `VALUE5` decimal(15,4) DEFAULT NULL, + `VALUE6` decimal(15,4) DEFAULT NULL, + `VALUE7` decimal(15,4) DEFAULT NULL, + `VALUE8` decimal(15,4) DEFAULT NULL, + `VALUE9` decimal(15,4) DEFAULT NULL, + `VALUE10` decimal(15,4) DEFAULT NULL, + `VALUE11` decimal(15,4) DEFAULT NULL, + `VALUE12` decimal(15,4) DEFAULT NULL, + `VALUE13` decimal(15,4) DEFAULT NULL, + `VALUE14` decimal(15,4) DEFAULT NULL, + `VALUE15` decimal(15,4) DEFAULT NULL, + `VALUE16` decimal(15,4) DEFAULT NULL, + `VALUE17` decimal(15,4) DEFAULT NULL, + `VALUE18` decimal(15,4) DEFAULT NULL, + `VALUE19` decimal(15,4) DEFAULT NULL, + `VALUE20` decimal(15,4) DEFAULT NULL, + `VALUE21` decimal(15,4) DEFAULT NULL, + `VALUE22` decimal(15,4) DEFAULT NULL, + `VALUE23` decimal(15,4) DEFAULT NULL, + `VALUE24` decimal(15,4) DEFAULT NULL, + `VALUE25` decimal(15,4) DEFAULT NULL, + `VALUE26` decimal(15,4) DEFAULT NULL, + `VALUE27` decimal(15,4) DEFAULT NULL, + `VALUE28` decimal(15,4) DEFAULT NULL, + `VALUE29` decimal(15,4) DEFAULT NULL, + `VALUE30` decimal(15,4) DEFAULT NULL, + `VALUE31` decimal(15,4) DEFAULT NULL, + `VALUE32` decimal(15,4) DEFAULT NULL, + `VALUE33` decimal(15,4) DEFAULT NULL, + `VALUE34` decimal(15,4) DEFAULT NULL, + `VALUE35` decimal(15,4) DEFAULT NULL, + `VALUE36` decimal(15,4) DEFAULT NULL, + `VALUE37` decimal(15,4) DEFAULT NULL, + `VALUE38` decimal(15,4) DEFAULT NULL, + `VALUE39` decimal(15,4) DEFAULT NULL, + `VALUE40` decimal(15,4) DEFAULT NULL, + `VALUE41` decimal(15,4) DEFAULT NULL, + `VALUE42` decimal(15,4) DEFAULT NULL, + `VALUE43` decimal(15,4) DEFAULT NULL, + `VALUE44` decimal(15,4) DEFAULT NULL, + `VALUE45` decimal(15,4) DEFAULT NULL, + `VALUE46` decimal(15,4) DEFAULT NULL, + `VALUE47` decimal(15,4) DEFAULT NULL, + `VALUE48` decimal(15,4) DEFAULT NULL, + `VALUE49` decimal(15,4) DEFAULT NULL, + `VALUE50` decimal(15,4) DEFAULT NULL, + `VALUE51` decimal(15,4) DEFAULT NULL, + `VALUE52` decimal(15,4) DEFAULT NULL, + `VALUE53` decimal(15,4) DEFAULT NULL, + `VALUE54` decimal(15,4) DEFAULT NULL, + `VALUE55` decimal(15,4) DEFAULT NULL, + `VALUE56` decimal(15,4) DEFAULT NULL, + `VALUE57` decimal(15,4) DEFAULT NULL, + `VALUE58` decimal(15,4) DEFAULT NULL, + `VALUE59` decimal(15,4) DEFAULT NULL, + `VALUE60` decimal(15,4) DEFAULT NULL, + `VALUE61` decimal(15,4) DEFAULT NULL, + `VALUE62` decimal(15,4) DEFAULT NULL, + `VALUE63` decimal(15,4) DEFAULT NULL, + `VALUE64` decimal(15,4) DEFAULT NULL, + `VALUE65` decimal(15,4) DEFAULT NULL, + `VALUE66` decimal(15,4) DEFAULT NULL, + `VALUE67` decimal(15,4) DEFAULT NULL, + `VALUE68` decimal(15,4) DEFAULT NULL, + `VALUE69` decimal(15,4) DEFAULT NULL, + `VALUE70` decimal(15,4) DEFAULT NULL, + `VALUE71` decimal(15,4) DEFAULT NULL, + `VALUE72` decimal(15,4) DEFAULT NULL, + `VALUE73` decimal(15,4) DEFAULT NULL, + `VALUE74` decimal(15,4) DEFAULT NULL, + `VALUE75` decimal(15,4) DEFAULT NULL, + `VALUE76` decimal(15,4) DEFAULT NULL, + `VALUE77` decimal(15,4) DEFAULT NULL, + `VALUE78` decimal(15,4) DEFAULT NULL, + `VALUE79` decimal(15,4) DEFAULT NULL, + `VALUE80` decimal(15,4) DEFAULT NULL, + `VALUE81` decimal(15,4) DEFAULT NULL, + `VALUE82` decimal(15,4) DEFAULT NULL, + `VALUE83` decimal(15,4) DEFAULT NULL, + `VALUE84` decimal(15,4) DEFAULT NULL, + `VALUE85` decimal(15,4) DEFAULT NULL, + `VALUE86` decimal(15,4) DEFAULT NULL, + `VALUE87` decimal(15,4) DEFAULT NULL, + `VALUE88` decimal(15,4) DEFAULT NULL, + `VALUE89` decimal(15,4) DEFAULT NULL, + `VALUE90` decimal(15,4) DEFAULT NULL, + `VALUE91` decimal(15,4) DEFAULT NULL, + `VALUE92` decimal(15,4) DEFAULT NULL, + `VALUE93` decimal(15,4) DEFAULT NULL, + `VALUE94` decimal(15,4) DEFAULT NULL, + `VALUE95` decimal(15,4) DEFAULT NULL, + `VALUE96` decimal(15,4) DEFAULT NULL, + `VALUE97` decimal(15,4) DEFAULT NULL, + `VALUE98` decimal(15,4) DEFAULT NULL, + `VALUE99` decimal(15,4) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_pro_stoppage` */ + +DROP TABLE IF EXISTS `klptcm1_pro_stoppage`; + +CREATE TABLE `klptcm1_pro_stoppage` ( + `STOPID` decimal(10,0) DEFAULT NULL, + `ENCOILID` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `SHIFT` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `CREW` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `AREA` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `UNIT` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `SETON` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `REMARK` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '', + `START_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `END_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `DURATION` decimal(10,0) DEFAULT NULL, + `INS_DATE` datetime DEFAULT CURRENT_TIMESTAMP, + `STOP_TYPE` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT '' +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_roll_history` */ + +DROP TABLE IF EXISTS `klptcm1_roll_history`; + +CREATE TABLE `klptcm1_roll_history` ( + `ROLLID` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `CHANGEID` varchar(40) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `SETON` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `TYPE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `POSITION` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `STANDID` decimal(2,0) DEFAULT NULL, + `COMPOSITION` decimal(2,0) DEFAULT NULL, + `DIAMETER` decimal(20,6) DEFAULT NULL, + `ROUGH` decimal(20,6) DEFAULT NULL, + `CROWN` decimal(20,6) DEFAULT NULL, + `ROLLED_LENGTH` decimal(20,6) DEFAULT NULL, + `ROLLED_WEIGHT` decimal(20,6) DEFAULT NULL, + `ROLLED_COUNT` decimal(10,0) DEFAULT NULL, + `TOTAL_ROLLED_LENGTH` decimal(20,6) DEFAULT NULL, + `TOTAL_ROLLED_WEIGHT` decimal(20,6) DEFAULT NULL, + `TOTAL_ROLLED_COUNT` decimal(10,0) DEFAULT NULL, + `GRIND_COUNT` decimal(10,0) DEFAULT NULL, + `CHANGE_TYPE` varchar(20) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NOT NULL, + `INSTAL_TIME` datetime DEFAULT NULL, + `DEINSTAL_TIME` datetime DEFAULT NULL, + `CHANGE_TIME` datetime DEFAULT NULL, + `SEND` decimal(1,0) DEFAULT NULL, + `SHIFT` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `CREW` varchar(1) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `SHAPE` varchar(2) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*Table structure for table `klptcm1_shift_current` */ + +DROP TABLE IF EXISTS `klptcm1_shift_current`; + +CREATE TABLE `klptcm1_shift_current` ( + `SHIFT` varchar(12) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci DEFAULT NULL, + `CREW` decimal(10,0) DEFAULT NULL, + `SEQ_NUM` decimal(10,0) DEFAULT NULL, + `SYS_TIME` datetime DEFAULT CURRENT_TIMESTAMP +) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci ROW_FORMAT=DYNAMIC; + +/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; +/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; +/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; +/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */; diff --git a/apps/hand-factory/utils/socketMeasure.js b/apps/hand-factory/utils/socketMeasure.js new file mode 100644 index 0000000..cf89815 --- /dev/null +++ b/apps/hand-factory/utils/socketMeasure.js @@ -0,0 +1,62 @@ +import config from '@/config' + +/** + * 测量数据 WebSocket(与 l2/socket/index.vue 类似) + * 默认订阅 type=track_measure + */ +export function createMeasureSocket({ + type = 'track_measure', + onOpen, + onClose, + onError, + onMessage +} = {}) { + let socket = null + let manualClose = false + + const wsBase = (config.wsUrl || config.baseUrl || '').replace(/^http/, 'ws') + const url = `${wsBase}/websocket?type=${type}` + + function connect() { + manualClose = false + socket = new WebSocket(url) + + socket.onopen = () => { + onOpen && onOpen() + } + + socket.onmessage = (evt) => { + onMessage && onMessage(evt.data) + } + + socket.onerror = (err) => { + onError && onError(err) + } + + socket.onclose = (evt) => { + onClose && onClose(evt) + if (!manualClose) { + setTimeout(connect, 3000) + } + } + } + + function close() { + manualClose = true + if (socket) { + socket.close(1000, 'client close') + socket = null + } + } + + function send(data) { + if (socket && socket.readyState === WebSocket.OPEN) { + socket.send(JSON.stringify(data)); + } else { + console.error('WebSocket is not open. Cannot send message.'); + } + } + + return { connect, close, send } +} + diff --git a/apps/l2/src/api/l2/pdo.js b/apps/l2/src/api/l2/pdo.js index f639514..43bc06b 100644 --- a/apps/l2/src/api/l2/pdo.js +++ b/apps/l2/src/api/l2/pdo.js @@ -68,4 +68,17 @@ export function deletePdo(excoilid, planId) { }) } +/** + * PDO - 下载质保单(单卷) + * @param {string} excoilid 成品卷号 + * @returns {Promise} + */ +export function downloadWarranty(excoilid) { + return l2Request({ + method: 'get', + url: `/api/pdo/warranty/download/${excoilid}`, + responseType: 'blob' + }) +} + diff --git a/apps/l2/src/views/l2/pdo/index.vue b/apps/l2/src/views/l2/pdo/index.vue index 000855c..d857a30 100644 --- a/apps/l2/src/views/l2/pdo/index.vue +++ b/apps/l2/src/views/l2/pdo/index.vue @@ -79,7 +79,7 @@
- +
@@ -535,4 +535,4 @@ export default { height: 100%; padding-left: 15px; } - \ No newline at end of file + diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..4823c88 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,166 @@ +{ + "name": "my-turborepo", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "my-turborepo", + "devDependencies": { + "turbo": "^2.5.8" + } + }, + "node_modules/turbo": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.6.3.tgz", + "integrity": "sha512-bf6YKUv11l5Xfcmg76PyWoy/e2vbkkxFNBGJSnfdSXQC33ZiUfutYh6IXidc5MhsnrFkWfdNNLyaRk+kHMLlwA==", + "dev": true, + "bin": { + "turbo": "bin/turbo" + }, + "optionalDependencies": { + "turbo-darwin-64": "2.6.3", + "turbo-darwin-arm64": "2.6.3", + "turbo-linux-64": "2.6.3", + "turbo-linux-arm64": "2.6.3", + "turbo-windows-64": "2.6.3", + "turbo-windows-arm64": "2.6.3" + } + }, + "node_modules/turbo-darwin-64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.6.3.tgz", + "integrity": "sha512-BlJJDc1CQ7SK5Y5qnl7AzpkvKSnpkfPmnA+HeU/sgny3oHZckPV2776ebO2M33CYDSor7+8HQwaodY++IINhYg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/turbo-darwin-arm64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.6.3.tgz", + "integrity": "sha512-MwVt7rBKiOK7zdYerenfCRTypefw4kZCue35IJga9CH1+S50+KTiCkT6LBqo0hHeoH2iKuI0ldTF2a0aB72z3w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/turbo-linux-64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.6.3.tgz", + "integrity": "sha512-cqpcw+dXxbnPtNnzeeSyWprjmuFVpHJqKcs7Jym5oXlu/ZcovEASUIUZVN3OGEM6Y/OTyyw0z09tOHNt5yBAVg==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/turbo-linux-arm64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.6.3.tgz", + "integrity": "sha512-MterpZQmjXyr4uM7zOgFSFL3oRdNKeflY7nsjxJb2TklsYqiu3Z9pQ4zRVFFH8n0mLGna7MbQMZuKoWqqHb45w==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/turbo-windows-64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.6.3.tgz", + "integrity": "sha512-biDU70v9dLwnBdLf+daoDlNJVvqOOP8YEjqNipBHzgclbQlXbsi6Gqqelp5er81Qo3BiRgmTNx79oaZQTPb07Q==", + "cpu": [ + "x64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/turbo-windows-arm64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.6.3.tgz", + "integrity": "sha512-dDHVKpSeukah3VsI/xMEKeTnV9V9cjlpFSUs4bmsUiLu3Yv2ENlgVEZv65wxbeE0bh0jjpmElDT+P1KaCxArQQ==", + "cpu": [ + "arm64" + ], + "dev": true, + "optional": true, + "os": [ + "win32" + ] + } + }, + "dependencies": { + "turbo": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo/-/turbo-2.6.3.tgz", + "integrity": "sha512-bf6YKUv11l5Xfcmg76PyWoy/e2vbkkxFNBGJSnfdSXQC33ZiUfutYh6IXidc5MhsnrFkWfdNNLyaRk+kHMLlwA==", + "dev": true, + "requires": { + "turbo-darwin-64": "2.6.3", + "turbo-darwin-arm64": "2.6.3", + "turbo-linux-64": "2.6.3", + "turbo-linux-arm64": "2.6.3", + "turbo-windows-64": "2.6.3", + "turbo-windows-arm64": "2.6.3" + } + }, + "turbo-darwin-64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-64/-/turbo-darwin-64-2.6.3.tgz", + "integrity": "sha512-BlJJDc1CQ7SK5Y5qnl7AzpkvKSnpkfPmnA+HeU/sgny3oHZckPV2776ebO2M33CYDSor7+8HQwaodY++IINhYg==", + "dev": true, + "optional": true + }, + "turbo-darwin-arm64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-darwin-arm64/-/turbo-darwin-arm64-2.6.3.tgz", + "integrity": "sha512-MwVt7rBKiOK7zdYerenfCRTypefw4kZCue35IJga9CH1+S50+KTiCkT6LBqo0hHeoH2iKuI0ldTF2a0aB72z3w==", + "dev": true, + "optional": true + }, + "turbo-linux-64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-linux-64/-/turbo-linux-64-2.6.3.tgz", + "integrity": "sha512-cqpcw+dXxbnPtNnzeeSyWprjmuFVpHJqKcs7Jym5oXlu/ZcovEASUIUZVN3OGEM6Y/OTyyw0z09tOHNt5yBAVg==", + "dev": true, + "optional": true + }, + "turbo-linux-arm64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-linux-arm64/-/turbo-linux-arm64-2.6.3.tgz", + "integrity": "sha512-MterpZQmjXyr4uM7zOgFSFL3oRdNKeflY7nsjxJb2TklsYqiu3Z9pQ4zRVFFH8n0mLGna7MbQMZuKoWqqHb45w==", + "dev": true, + "optional": true + }, + "turbo-windows-64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-windows-64/-/turbo-windows-64-2.6.3.tgz", + "integrity": "sha512-biDU70v9dLwnBdLf+daoDlNJVvqOOP8YEjqNipBHzgclbQlXbsi6Gqqelp5er81Qo3BiRgmTNx79oaZQTPb07Q==", + "dev": true, + "optional": true + }, + "turbo-windows-arm64": { + "version": "2.6.3", + "resolved": "https://registry.npmjs.org/turbo-windows-arm64/-/turbo-windows-arm64-2.6.3.tgz", + "integrity": "sha512-dDHVKpSeukah3VsI/xMEKeTnV9V9cjlpFSUs4bmsUiLu3Yv2ENlgVEZv65wxbeE0bh0jjpmElDT+P1KaCxArQQ==", + "dev": true, + "optional": true + } + } +}