From 2bdb422792a2c71e86fa19f4fdd2efda13ccbc62 Mon Sep 17 00:00:00 2001 From: wangfei <3597712270@qq.com> Date: 星期三, 18 十二月 2024 16:49:46 +0800 Subject: [PATCH] 上片新增页面及逻辑,后端接口 --- UI-Project/src/views/Returns/upreturns.vue | 103 ++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 89 insertions(+), 14 deletions(-) diff --git a/UI-Project/src/views/Returns/upreturns.vue b/UI-Project/src/views/Returns/upreturns.vue index 595f20f..6ec4545 100644 --- a/UI-Project/src/views/Returns/upreturns.vue +++ b/UI-Project/src/views/Returns/upreturns.vue @@ -1,7 +1,7 @@ <script lang="ts" setup> import {onBeforeUnmount, onMounted, onUnmounted, reactive, ref} from "vue"; import {useRouter} from "vue-router" -import {ElMessage} from 'element-plus' +import { ElMessage, ElMessageBox } from 'element-plus' import {useI18n} from 'vue-i18n' import {host, WebSocketHost} from '@/utils/constants' import request from "@/utils/request" @@ -68,11 +68,16 @@ const socketUrl = `ws://${WebSocketHost}:${host}/api/loadGlass/api/talk/loadGlass`; const handleMessage = (data: any) => { tableDataa.value = data.list[0].slice(0, 2); - if(data.loadTask1!=null){ + if(data.loadTask1.length !=0){ tableData.value = data.loadTask1[0] canSelectProjecta.value = false; canSelectProjectb.value = false; canSelectProjectc.value = true; +} +else { + canSelectProjecta.value = true; + canSelectProjectb.value = true; + canSelectProjectc.value = false; } }; onBeforeUnmount(() => { @@ -113,6 +118,7 @@ window.localStorage.setItem('filmRemove', filmRemove.value) if (response.code == 200) { ElMessage.success(response.message); + // closeWebSocket(socket); tableData.value = response.data; dialogFormVisible.value = false; selectedProjectNo.value = ''; @@ -139,6 +145,7 @@ ElMessage.success(response.message); tableDatad.value = response.data; canSelectProjecta.value = true; + canSelectProjectb.value = true; canSelectProjectc.value = false; } else { ElMessage.error(response.message); @@ -168,11 +175,12 @@ state: 1, }) if (response.code == 200) { - ElMessage.success(response.message); - blind.value = false; + ElMessage.success(response.message); canSelectProjecta.value = false; + canSelectProjectb.value = false; canSelectProjectc.value = true; - + // socket = initializeWebSocket(socketUrl, handleMessage); + blind.value = false; } else { ElMessage.error(response.message); } @@ -275,6 +283,66 @@ ElMessage.error(t('basicData.glassnull')); } }; +// 鐮存崯 +const opena = async(row) => { + try { + const confirmResult = await ElMessageBox.confirm( + t('searchOrder.broke'), + t('productStock.prompt'), + { + confirmButtonText: t('productStock.yes'), + cancelButtonText: t('productStock.cancel'), + type: 'warning', + } + ); + if (confirmResult === 'confirm') { + const response = await request.post('/loadGlass/engineering/engineering/insetDamage', { + glassId: row.glassId, + line: 5, + status: 1, + type: 8, + workingProcedure: '涓婄墖', + }) + if (response.code === 200) { + ElMessage.success(response.message); + } else { + ElMessage.error(response.msg); + } + } + } catch (error) { + console.error('鍙戠敓閿欒:', error); + } +}; +// 浜哄伐鎷胯蛋 +const openb = async(row) => { + try { + const confirmResult = await ElMessageBox.confirm( + t('order.takeawaya'), + t('productStock.prompt'), + { + confirmButtonText: t('productStock.yes'), + cancelButtonText: t('productStock.cancel'), + type: 'warning', + } + ); + if (confirmResult === 'confirm') { + const response = await request.post('/loadGlass/engineering/engineering/insetDamage', { + glassId: row.glassId, + line: 5, + status: 1, + type: 9, + workingProcedure: '涓婄墖', + }) + if (response.code === 200) { + ElMessage.success(response.message); + } else { + ElMessage.error(response.msg); + } + } + } catch (error) { + console.error('鍙戠敓閿欒:', error); + } +}; function getStatusType2(filmRemove) { switch (filmRemove) { case 0: @@ -399,16 +467,23 @@ </template> </el-dialog> <!-- 缁撴潫宸ョ▼ --> - <el-dialog v-model="blindb" top="10vh" width="50%"> + <el-dialog v-model="blindb" top="10vh" width="80%"> <el-table ref="table" style="margin-top: 20px;height: 300px;" :data="tableDatad" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> - <el-table-column prop="line" fixed align="center" :label="$t('basicData.line')"/> - <el-table-column prop="workProcesses" fixed align="center" :label="$t('basicData.process')"/> - <el-table-column prop="teamsGroupsName" align="center" :label="$t('basicData.team')"/> - <el-table-column prop="deviceName" align="center" :label="$t('basicData.basic')"/> - <el-table-column prop="deviceName" align="center" :label="$t('basicData.basic')"/> - <el-table-column prop="deviceName" align="center" :label="$t('basicData.basic')"/> - <el-table-column prop="deviceName" align="center" :label="$t('basicData.basic')"/> - <el-table-column prop="deviceName" align="center" :label="$t('basicData.basic')"/> + <el-table-column prop="engineerId" fixed align="center" :label="$t('basicData.projectnumber')"/> + <el-table-column prop="glassId" fixed align="center" :label="$t('searchOrder.glassID')"/> + <el-table-column prop="temperingLayoutId" fixed align="center" :label="$t('searchOrder.layoutID')"/> + <el-table-column prop="temperingFeedSequence" align="center" :label="$t('searchOrder.picturesequence')"/> + <el-table-column prop="width" align="center" :label="$t('basicData.width')"/> + <el-table-column prop="height" align="center" :label="$t('basicData.height')"/> + <el-table-column prop="thickness" align="center" :label="$t('basicData.thickness')"/> + <el-table-column prop="filmsid" align="center" :label="$t('basicData.coatingtypes')"/> + <el-table-column prop="flowCardId" align="center" :label="$t('searchOrder.processcards')"/> + <el-table-column fixed="right" :label="$t('productStock.operate')" align="center" width="270"> + <template #default="scope"> + <el-button size="mini" type="text" plain @click="opena(scope.row)">{{ $t('order.dilapidation') }}</el-button> + <el-button size="mini" type="text" plain @click="openb(scope.row)">{{ $t('order.takeaway') }}</el-button> + </template> + </el-table-column> </el-table> <template #footer> <div id="dialog-footer"> -- Gitblit v1.8.0