From 30d5d914effa7a8c217e724dc0af55434ac7b6aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=A0=82=E7=B3=96?= Date: Thu, 25 Dec 2025 15:50:19 +0800 Subject: [PATCH] =?UTF-8?q?feat(pdo):=20=E6=96=B0=E5=A2=9EPDO=E7=AE=A1?= =?UTF-8?q?=E7=90=86=E5=8A=9F=E8=83=BD=E5=8F=8A=E7=9B=B8=E5=85=B3=E7=BB=84?= =?UTF-8?q?=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 新增PDO管理页面及相关功能组件,包括: 1. 新增数据修正组件DataCorrection.vue 2. 新增标签打印组件LabelPrint.vue 3. 新增统计汇总组件PdoSummary.vue 4. 新增图表展示组件line.vue 5. 实现主页面index.vue布局及功能 6. 新增API接口文件用于业务数据交互 7. 修改lines/index.vue配置,移除baseURL动态获取逻辑 --- klp-ui/src/api/l2/business/bendforce.js | 46 ++ klp-ui/src/api/l2/business/fur.js | 44 ++ klp-ui/src/api/l2/business/mesh.js | 46 ++ klp-ui/src/api/l2/business/rollforce.js | 46 ++ klp-ui/src/api/l2/business/setup.js | 44 ++ klp-ui/src/api/l2/business/tension.js | 71 ++ klp-ui/src/api/l2/business/tl.js | 68 ++ klp-ui/src/views/lines/index.vue | 6 +- .../lines/pdo/components/DataCorrection.vue | 310 ++++++++ .../views/lines/pdo/components/LabelPrint.vue | 271 +++++++ .../views/lines/pdo/components/PdoSummary.vue | 113 +++ .../src/views/lines/pdo/components/line.vue | 551 ++++++++++++++ klp-ui/src/views/lines/pdo/index.vue | 579 +++++++++++++++ klp-ui/src/views/lines/roller/index.vue | 687 ++++++++++++++++++ klp-ui/src/views/lines/stop/index.vue | 609 ++++++++++++++++ 15 files changed, 3486 insertions(+), 5 deletions(-) create mode 100644 klp-ui/src/api/l2/business/bendforce.js create mode 100644 klp-ui/src/api/l2/business/fur.js create mode 100644 klp-ui/src/api/l2/business/mesh.js create mode 100644 klp-ui/src/api/l2/business/rollforce.js create mode 100644 klp-ui/src/api/l2/business/setup.js create mode 100644 klp-ui/src/api/l2/business/tension.js create mode 100644 klp-ui/src/api/l2/business/tl.js create mode 100644 klp-ui/src/views/lines/pdo/components/DataCorrection.vue create mode 100644 klp-ui/src/views/lines/pdo/components/LabelPrint.vue create mode 100644 klp-ui/src/views/lines/pdo/components/PdoSummary.vue create mode 100644 klp-ui/src/views/lines/pdo/components/line.vue create mode 100644 klp-ui/src/views/lines/pdo/index.vue create mode 100644 klp-ui/src/views/lines/roller/index.vue create mode 100644 klp-ui/src/views/lines/stop/index.vue diff --git a/klp-ui/src/api/l2/business/bendforce.js b/klp-ui/src/api/l2/business/bendforce.js new file mode 100644 index 00000000..d087b230 --- /dev/null +++ b/klp-ui/src/api/l2/business/bendforce.js @@ -0,0 +1,46 @@ +import request from '@/utils/request' + +// 查询光整机弯辊力列表 +export function listBendforce(query) { + return request({ + url: '/business/bendforce/list', + method: 'get', + params: query + }) +} + +// 查询光整机弯辊力详细 +export function getBendforce(query) { + return request({ + url: '/business/bendforce', + params: query, + method: 'get' + }) +} + +// 新增光整机弯辊力 +export function addBendforce(data) { + return request({ + url: '/business/bendforce', + method: 'post', + data: data + }) +} + +// 修改光整机弯辊力 +export function updateBendforce(data) { + return request({ + url: '/business/bendforce', + method: 'put', + data: data + }) +} + +// 删除光整机弯辊力 +export function delBendforce(query) { + return request({ + url: '/business/bendforce/tm/bendforce', + data: query, + method: 'delete' + }) +} diff --git a/klp-ui/src/api/l2/business/fur.js b/klp-ui/src/api/l2/business/fur.js new file mode 100644 index 00000000..92cfcef4 --- /dev/null +++ b/klp-ui/src/api/l2/business/fur.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询炉火段工艺参数列表 +export function listFur(query) { + return request({ + url: '/business/fur/list', + method: 'get', + params: query + }) +} + +// 查询炉火段工艺参数详细 +export function getFur(steelGrade) { + return request({ + url: '/business/fur/' + steelGrade, + method: 'get' + }) +} + +// 新增炉火段工艺参数 +export function addFur(data) { + return request({ + url: '/business/fur', + method: 'post', + data: data + }) +} + +// 修改炉火段工艺参数 +export function updateFur(data) { + return request({ + url: '/business/fur', + method: 'put', + data: data + }) +} + +// 删除炉火段工艺参数 +export function delFur(steelGrade) { + return request({ + url: '/business/fur/' + steelGrade, + method: 'delete' + }) +} diff --git a/klp-ui/src/api/l2/business/mesh.js b/klp-ui/src/api/l2/business/mesh.js new file mode 100644 index 00000000..f4fa7000 --- /dev/null +++ b/klp-ui/src/api/l2/business/mesh.js @@ -0,0 +1,46 @@ +import request from '@/utils/request' + +// 查询光整机插入量列表 +export function listMesh(query) { + return request({ + url: '/business/mesh/list', + method: 'get', + params: query + }) +} + +// 查询光整机插入量详细 +export function getMesh(query) { + return request({ + url: '/business/mesh', + params: query, + method: 'get' + }) +} + +// 新增光整机插入量 +export function addMesh(data) { + return request({ + url: '/business/mesh', + method: 'post', + data: data + }) +} + +// 修改光整机插入量 +export function updateMesh(data) { + return request({ + url: '/business/mesh', + method: 'put', + data: data + }) +} + +// 删除光整机插入量 +export function delMesh(query) { + return request({ + url: '/business/mesh/tm/mesh', + method: 'delete', + data: query + }) +} diff --git a/klp-ui/src/api/l2/business/rollforce.js b/klp-ui/src/api/l2/business/rollforce.js new file mode 100644 index 00000000..b639b589 --- /dev/null +++ b/klp-ui/src/api/l2/business/rollforce.js @@ -0,0 +1,46 @@ +import request from '@/utils/request' + +// 查询光整机轧制力列表 +export function listRollforce(query) { + return request({ + url: '/business/rollforce/list', + method: 'get', + params: query + }) +} + +// 查询光整机轧制力详细 +export function getRollforce(query) { + return request({ + url: '/business/rollforce', + method: 'get', + params: query + }) +} + +// 新增光整机轧制力 +export function addRollforce(data) { + return request({ + url: '/business/rollforce', + method: 'post', + data: data + }) +} + +// 修改光整机轧制力 +export function updateRollforce(data) { + return request({ + url: '/business/rollforce', + method: 'put', + data: data + }) +} + +// 删除光整机轧制力 +export function delRollforce(query) { + return request({ + url: '/business/rollforce/tm/rollforce', + method: 'delete', + data: query + }) +} diff --git a/klp-ui/src/api/l2/business/setup.js b/klp-ui/src/api/l2/business/setup.js new file mode 100644 index 00000000..fb49502d --- /dev/null +++ b/klp-ui/src/api/l2/business/setup.js @@ -0,0 +1,44 @@ +import request from '@/utils/request' + +// 查询【请填写功能名称】列表 +export function listSetup(query) { + return request({ + url: '/business/setup/list', + method: 'post', + data: query + }) +} + +// 查询【请填写功能名称】详细 +export function getSetup(ID) { + return request({ + url: '/business/setup/' + ID, + method: 'get' + }) +} + +// 新增【请填写功能名称】 +export function addSetup(data) { + return request({ + url: '/business/setup', + method: 'post', + data: data + }) +} + +// 修改【请填写功能名称】 +export function updateSetup(data) { + return request({ + url: '/business/setup', + method: 'put', + data: data + }) +} + +// 删除【请填写功能名称】 +export function delSetup(ID) { + return request({ + url: '/business/setup/' + ID, + method: 'delete' + }) +} diff --git a/klp-ui/src/api/l2/business/tension.js b/klp-ui/src/api/l2/business/tension.js new file mode 100644 index 00000000..35f427ae --- /dev/null +++ b/klp-ui/src/api/l2/business/tension.js @@ -0,0 +1,71 @@ + +import axios from 'axios' + +export default function createFetch(url) { + const l2Request = axios.create({ + baseURL: 'http://' + url, + headers: { + 'Content-Type': 'application/json' + }, + timeout: 10000, + // 自定义响应数据转换,处理大整数ID精度问题 + transformResponse: [data => { + // 在JSON解析前将所有id数值转换为字符串,避免大整数精度丢失 + const modifiedData = data.replace(/"id":\s*(\d+)/g, '"id": "$1"'); + return JSON.parse(modifiedData); + }] + }) + + l2Request.interceptors.response.use(response => { + return response.data + }) + + return { + // 查询全线张力列表 + listTension(query) { + return l2Request({ + url: '/business/tension/list', + method: 'get', + params: query + }) + }, + + // 查询全线张力详细 + getTension(query) { + return l2Request({ + url: '/business/tension', + method: 'get', + params: query + }) + }, + + // 新增全线张力 + addTension(data) { + return l2Request({ + url: '/business/tension', + method: 'post', + data: data + }) + }, + + // 修改全线张力 + updateTension(data) { + return l2Request({ + url: '/business/tension', + method: 'put', + data: data + }) + }, + + // 删除全线张力 + delTension(query) { + return l2Request({ + url: '/business/tension/tension', + data: query, + method: 'delete' + }) + } + + } +} + diff --git a/klp-ui/src/api/l2/business/tl.js b/klp-ui/src/api/l2/business/tl.js new file mode 100644 index 00000000..46a7e973 --- /dev/null +++ b/klp-ui/src/api/l2/business/tl.js @@ -0,0 +1,68 @@ +import axios from 'axios' + +export default function createFetch(url) { + const l2Request = axios.create({ + baseURL: 'http://' + url, + headers: { + 'Content-Type': 'application/json' + }, + timeout: 10000, + // 自定义响应数据转换,处理大整数ID精度问题 + transformResponse: [data => { + // 在JSON解析前将所有id数值转换为字符串,避免大整数精度丢失 + const modifiedData = data.replace(/"id":\s*(\d+)/g, '"id": "$1"'); + return JSON.parse(modifiedData); + }] + }) + + l2Request.interceptors.response.use(response => { + return response.data + }) + + return { + // 查询拉矫机参数列表 + listTl(query) { + return l2Request({ + url: '/business/tl/list', + method: 'get', + params: query + }) + }, + + // 查询拉矫机参数详细 + getTl(query) { + return l2Request({ + url: '/business/tl', + method: 'get', + params: query + }) + }, + + // 新增拉矫机参数 + addTl(data) { + return l2Request({ + url: '/business/tl', + method: 'post', + data: data + }) + }, + + // 修改拉矫机参数 + updateTl(data) { + return l2Request({ + url: '/business/tl', + method: 'put', + data: data + }) + }, + + // 删除拉矫机参数 + delTl(query) { + return l2Request({ + url: '/business/tl/tl', + method: 'delete', + data: query + }) + } + } +} diff --git a/klp-ui/src/views/lines/index.vue b/klp-ui/src/views/lines/index.vue index 42a521dc..317002c8 100644 --- a/klp-ui/src/views/lines/index.vue +++ b/klp-ui/src/views/lines/index.vue @@ -41,7 +41,7 @@ import RollerAnalysis from './panels/analysis/roller.vue' data() { return { activeName: 'Track', - baseURL: '', + baseURL: '140.143.206.120:18081', ready: false, tabs: [] } @@ -49,10 +49,6 @@ import RollerAnalysis from './panels/analysis/roller.vue' created() { // 获取路由地址的最后一项 const route = this.$route.path.split('/').pop() - getConfigKey(`line.${route}.baseURL`).then(res => { - this.baseURL = res.msg - this.ready = true - }) getConfigKey(`line.${route}.config`).then(res => { const tabs = res.msg.split(',') // 是否包含Track, 如果不包含则添加 diff --git a/klp-ui/src/views/lines/pdo/components/DataCorrection.vue b/klp-ui/src/views/lines/pdo/components/DataCorrection.vue new file mode 100644 index 00000000..91d459fc --- /dev/null +++ b/klp-ui/src/views/lines/pdo/components/DataCorrection.vue @@ -0,0 +1,310 @@ + + + + + \ No newline at end of file diff --git a/klp-ui/src/views/lines/pdo/components/LabelPrint.vue b/klp-ui/src/views/lines/pdo/components/LabelPrint.vue new file mode 100644 index 00000000..85c90e69 --- /dev/null +++ b/klp-ui/src/views/lines/pdo/components/LabelPrint.vue @@ -0,0 +1,271 @@ + + + + + diff --git a/klp-ui/src/views/lines/pdo/components/PdoSummary.vue b/klp-ui/src/views/lines/pdo/components/PdoSummary.vue new file mode 100644 index 00000000..1b47d226 --- /dev/null +++ b/klp-ui/src/views/lines/pdo/components/PdoSummary.vue @@ -0,0 +1,113 @@ + + + + + + \ No newline at end of file diff --git a/klp-ui/src/views/lines/pdo/components/line.vue b/klp-ui/src/views/lines/pdo/components/line.vue new file mode 100644 index 00000000..ebb92c87 --- /dev/null +++ b/klp-ui/src/views/lines/pdo/components/line.vue @@ -0,0 +1,551 @@ + + + + + \ No newline at end of file diff --git a/klp-ui/src/views/lines/pdo/index.vue b/klp-ui/src/views/lines/pdo/index.vue new file mode 100644 index 00000000..f9f781f2 --- /dev/null +++ b/klp-ui/src/views/lines/pdo/index.vue @@ -0,0 +1,579 @@ + + + + + diff --git a/klp-ui/src/views/lines/roller/index.vue b/klp-ui/src/views/lines/roller/index.vue new file mode 100644 index 00000000..9e8354ba --- /dev/null +++ b/klp-ui/src/views/lines/roller/index.vue @@ -0,0 +1,687 @@ + + + + + \ No newline at end of file diff --git a/klp-ui/src/views/lines/stop/index.vue b/klp-ui/src/views/lines/stop/index.vue new file mode 100644 index 00000000..62732adb --- /dev/null +++ b/klp-ui/src/views/lines/stop/index.vue @@ -0,0 +1,609 @@ + + + + +