| | |
| | | import {onBeforeUnmount, onMounted, onUnmounted, reactive, ref} from "vue"; |
| | | import {closeWebSocket, initializeWebSocket} from '@/utils/WebSocketService'; |
| | | import {ElMessage, ElMessageBox} from 'element-plus' |
| | | |
| | | const dialogFormVisibleaDownGlasss = ref(false) |
| | | const scanGlass = ref([]) |
| | | const {t} = useI18n() |
| | | let language = ref(localStorage.getItem('lang') || 'zh') |
| | | const router = useRouter() |
| | | const dialogFormVisible = ref(false) |
| | | const dialoglea = ref(false) |
| | | const dialogFormVisiblea = ref(false) |
| | | const dialogFormVisibleb = ref(false) |
| | | const dialogFormVisiblec = ref(false) |
| | |
| | | const tableDatad = ref([]) |
| | | const tableDataf = ref([]) |
| | | const tableDatae = ref([]) |
| | | const tableDatax = ref([]) |
| | | const tableDatas = ref([]) |
| | | const tableDatass = ref([]) |
| | | const tableDatalack = ref([]) |
| | |
| | | } catch (error) { |
| | | console.error('发生错误:', error); |
| | | } |
| | | }; |
| | | const handlezhiban = () => { |
| | | dialoglea.value = true; |
| | | fetchFlowCardId(); |
| | | }; |
| | | const handleganghua = () => { |
| | | dialogFormVisiblec.value = true; |
| | |
| | | console.error(error); |
| | | } |
| | | } |
| | | // 值班信息 |
| | | const fetchFlowCardId = async () => { |
| | | try { |
| | | const response = await request.post('/cacheVerticalGlass/work_assignment/selectWorkAssignment',{ |
| | | line: 4001, |
| | | workingProcedure : '钢化' |
| | | }) |
| | | if (response.code == 200) { |
| | | ElMessage.success(response.message); |
| | | tableDatax.value = response.data; |
| | | console.log(tableDatax.value); |
| | | } else { |
| | | ElMessage.error(response.message); |
| | | } |
| | | } |
| | | catch (error) { |
| | | console.error(error); |
| | | } |
| | | } |
| | | const handleConfirm = async () => { |
| | | const response = await request.post("/cacheVerticalGlass/work_assignment/updateWorkAssignment", tableDatax.value) |
| | | if (response.code === 200) { |
| | | ElMessage.success(response.message); |
| | | dialoglea.value = false; |
| | | } else { |
| | | ElMessage.error(response.message); |
| | | } |
| | | }; |
| | | function handleRowClick(row) { |
| | | selectedRow.value = row; // 更新选中的行数据 |
| | | } |
| | |
| | | <el-button style="margin-top: 7px;margin-left: 10px;" id="searchButton" type="primary" @click="handlexiang">{{ $t('searchOrder.cageinformation') }}</el-button> |
| | | <el-button style="margin-top: 7px;margin-left: 10px;" id="searchButton" type="success" @click="dialogFormVisibleb = true">{{ $t('searchOrder.productionqueue') }}</el-button> |
| | | <el-button style="margin-top: 7px;margin-left: 10px;" id="searchButton" type="warning" @click="handleganghua">{{ $t('searchOrder.temperingqueries') }}</el-button> |
| | | <el-button style="margin-top: 7px;margin-left: 10px;" id="searchButton" type="info" @click="handlezhiban">{{ $t('searchOrder.dutyinformation') }}</el-button> |
| | | <el-button style="margin-top: 7px;margin-left: 10px;" id="searchButton" type="info" @click="dialogFormVisibles=true;fetchFlows()">{{ $t('searchOrder.searchlayout') }}</el-button> |
| | | <el-switch style="margin-top: 7px;margin-left: 10px;" v-model="ganghua" class="mb-2" :inactive-text="$t('searchOrder.temperedswitch')" @change="handleChange" /> |
| | | <el-switch style="margin-top: 7px;margin-left: 10px;" v-model="diaodu" class="mb-2" :inactive-text="$t('searchOrder.Schedulingswitch')" @change="handlediaodu" /> |
| | | <el-button style="margin-top: 7px;margin-left: 10px;" id="searchButton" type="primary" |
| | | @click="dialogFormVisibleaDownGlasss = true">{{ $t('searchOrder.Labelprinting') }} |
| | | </el-button> |
| | | <div id="dotClass"> |
| | | <div>{{ $t('searchOrder.inkageEntity') }}</div> |
| | | <i :style="{ marginTop: '2px', backgroundColor: inkageEntity, width: '18px', height: '18px', borderRadius: '50%', display: 'block' }"></i> |
| | |
| | | <div style="width: 100%; height: calc(100% - 35px); overflow-y: auto;max-height: 420px;"> |
| | | <el-table height="420px" ref="table" border |
| | | :data="tableDatass" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | | <el-table-column prop="engineerId" align="center" :label="$t('Mounting.project')" min-width="140" /> |
| | | <el-table-column prop="countTemp" align="center" :label="$t('searchOrder.totalfurnaces')" min-width="120" /> |
| | | <el-table-column prop="countGlass" align="center" :label="$t('searchOrder.cagesnumber')" min-width="120" /> |
| | | <el-table-column prop="area" align="center" :label="$t('large.are')" min-width="120" /> |
| | | <el-table-column prop="fullTemp" align="center" :label="$t('searchOrder.fullfurnaces')" min-width="120" /> |
| | | <el-table-column prop="countSlot" align="center" :label="$t('searchOrder.slotnumber')" min-width="120" /> |
| | | <el-table-column prop="percent" align="center" :label="$t('searchOrder.progress')" min-width="120" /> |
| | | <el-table-column fixed prop="engineerId" align="center" :label="$t('Mounting.project')" min-width="100" /> |
| | | <el-table-column prop="countTemp" align="center" :label="$t('searchOrder.totalfurnaces')" min-width="68" /> |
| | | <el-table-column prop="countGlass" align="center" :label="$t('searchOrder.cagesnumber')" min-width="82" /> |
| | | <el-table-column prop="area" align="center" :label="$t('large.are')" min-width="70" /> |
| | | <el-table-column prop="fullTemp" align="center" :label="$t('searchOrder.fullfurnaces')" min-width="82" /> |
| | | <el-table-column prop="countSlot" align="center" :label="$t('searchOrder.slotnumber')" min-width="96" /> |
| | | <el-table-column prop="percent" align="center" :label="$t('searchOrder.progress')" min-width="80" /> |
| | | </el-table> |
| | | </div> |
| | | </el-card> |
| | |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-dialog> |
| | | <!-- 钢化查询 --> |
| | | <el-dialog v-model="dialogFormVisiblec" top="5vh" width="85%" :title="$t('searchOrder.temperingqueries')"> |
| | | <div style="margin-bottom: 20px"> |
| | | <el-form> |
| | |
| | | <el-table-column prop="ycoordinate" align="center" :label="$t('searchOrder.ycoordinates')" min-width="80" /> |
| | | </el-table> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialoglea" top="15vh" width="70%" :title="$t('searchOrder.dutyinformation')"> |
| | | <el-table ref="table" style="margin-top: 20px;height: 300px;" |
| | | :data="tableDatax" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | | <el-table-column prop="line" fixed align="center" :label="$t('searchOrder.line')"/> |
| | | <el-table-column prop="workProcesses" fixed align="center" :label="$t('searchOrder.process')" /> |
| | | <el-table-column prop="teamsGroupsName" align="center" :label="$t('searchOrder.team')"> |
| | | <template #default="{ row }"> |
| | | <el-input v-model="row.teamsGroupsName" autocomplete="off" min-width="150"/> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="deviceName" align="center" :label="$t('searchOrder.basic')"> |
| | | <template #default="{ row }"> |
| | | <el-input v-model="row.deviceName" autocomplete="off" min-width="150"/> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <template #footer> |
| | | <div id="dialog-footer"> |
| | | <el-button type="primary" @click="handleConfirm"> |
| | | {{ $t('searchOrder.makesure') }} |
| | | </el-button> |
| | | <el-button @click="dialoglea = false">{{ $t('searchOrder.cancel') }}</el-button> |
| | | </div> |
| | | </template> |
| | | </el-dialog> |
| | | <!-- 非钢化 --> |
| | | <el-dialog v-model="dialogFormVisibles" top="5vh" width="85%" :title="$t('searchOrder.searchlayout')"> |
| | | <el-table ref="table" style="margin-top: 20px;height: 500px;" |
| | | :data="tableDatas" :header-cell-style="{background:'#F2F3F5 ',color:'#1D2129'}"> |
| | |
| | | <el-table-column prop="realCount" align="center" :label="$t('searchOrder.numbercages')" min-width="150" /> |
| | | <el-table-column prop="lackCount" align="center" :label="$t('searchOrder.missingquantity')" min-width="150" /> |
| | | <el-table-column prop="damageCount" align="center" :label="$t('searchOrder.breakquantity')" min-width="150" /> |
| | | <el-table-column fixed="right" :label="$t('searchOrder.operate')" align="center" width="250"> |
| | | <el-table-column fixed="right" :label="$t('searchOrder.operate')" align="center" width="500"> |
| | | <template #default="scope"> |
| | | <el-button size="mini" type="text" plain @click="brokee(scope.row,1)">{{ $t('searchOrder.specifytempering') }}</el-button> |
| | | <el-button size="mini" type="text" plain @click="brokee(scope.row,0)">{{ $t('searchOrder.specifyout') }}</el-button> |
| | | <el-button size="mini" type="text" plain @click="brokek(scope.row)">{{ $t('searchOrder.specifyengineerid') }}</el-button> |
| | | <el-button size="mini" type="text" plain @click="handlelack(scope.row)">{{ $t('hellow.missingnumber') }}</el-button> |
| | | <el-button size="mini" type="text" plain @click="handlecagedetails(scope.row)">{{ $t('searchOrder.cagedetails') }}</el-button> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | |
| | | </el-table-column> |
| | | </el-table> --> |
| | | </el-dialog> |
| | | <el-dialog v-model="dialogFormVisibleaDownGlasss" top="2vh" width="97%" :title="$t('searchOrder.filminformation')"> |
| | | <div style="display:flex;justify-content: space-around;"> |
| | | <el-card |
| | | style="display: flex; justify-content: center; align-items: center; width: 800px; height: 800px;position: relative;"> |
| | | <div |
| | | :style="{ width: scanGlass.width + 'px', height: scanGlass.height + 'px', backgroundColor: '#e1f3d8', transform: 'scale(' + 800 / (scanGlass.width > scanGlass.height ? scanGlass.width : scanGlass.height) + ')' }"> |
| | | |
| | | </div> |
| | | <div style="font-size: 50px; text-align: center;position: absolute;top:0px;left:200px;"> |
| | | <div>{{ $t('searchOrder.currentglassinformation') }}</div> |
| | | <div> |
| | | <el-button type="primary" @click="open1(scanGlass)">{{ $t('searchOrder.printlabels') }}</el-button> |
| | | </div> |
| | | <div>{{ scanGlass.flowCardId }}</div> |
| | | <div>{{ scanGlass.layer }}</div> |
| | | <div>{{ scanGlass.glassId }}</div> |
| | | <div>{{ scanGlass.width }}</div> |
| | | <div>{{ scanGlass.height }}</div> |
| | | </div> |
| | | </el-card> |
| | | </div> |
| | | </el-dialog> |
| | | <el-dialog id="sizePrintCalrd1" v-model="dialogTableVisible1" destroy-on-close> |
| | | <print-label id="printFlowCard" :printFlowCardId="printFlowCardId" :printLayer="printLayer" |
| | | :printGlassId="printGlassId" style=""/> |