From b175a9fb3fcd6d7ed1196a8c4c303f1bc6372d91 Mon Sep 17 00:00:00 2001
From: ZengTao <2773468879@qq.com>
Date: 星期二, 09 四月 2024 14:27:09 +0800
Subject: [PATCH] 调整测量图形显示
---
Albania_Mes-ui/src/views/home/index.vue | 144 +++++++++++++++++++++--------------------------
1 files changed, 65 insertions(+), 79 deletions(-)
diff --git a/Albania_Mes-ui/src/views/home/index.vue b/Albania_Mes-ui/src/views/home/index.vue
index 86cfd37..0d6fdfb 100644
--- a/Albania_Mes-ui/src/views/home/index.vue
+++ b/Albania_Mes-ui/src/views/home/index.vue
@@ -89,7 +89,7 @@
background-attachment: local;
width: 1200px;
position: absolute;
- background-image: url(/img/car.c2f92670.png);
+ background-image: url('../../img/car.png');
background-size: 800px 1200px;
}
@@ -346,14 +346,14 @@
</div>
<div style="display: flex;align-items: center;overflow: hidden;">
<div class="blocks" style="position: relative;width: 100%;">
- <div class="blocks-img" :style="'z-index:99;left:150px;top:555px;'">
+ <div class="blocks-img" :style="'z-index:999;left:150px;top:'+carposition+'px;'">
</div>
<div
:style="'position: absolute;z-index:99;left:271px;top:987px;width:210px;height:38px;background-color:' + ShowDeviceList(0) + ';'">
</div>
<div
- :style="'position: absolute;z-index:99;left:553px;top:956px;width:110px;height:74px;background-color:' + ShowDeviceList(0) + ';'">
+ :style="'position: absolute;z-index:1000;left:553px;top:'+(400+carposition)+'px;width:110px;height:88px;background-color:' + ShowDeviceList(0) + ';'">
</div>
<div
:style="'position: absolute;z-index:99;left:800px;top:450px;width:115px;height:30px;background-color:' + ShowDeviceList(0) + ';'">
@@ -361,7 +361,7 @@
<div
:style="'position: absolute;z-index:99;left:800px;top:675px;width:115px;height:30px;background-color:' + ShowDeviceList(0) + ';'">
</div>
- <div :style="'position: absolute;z-index:1000;left:740px;top:507px;width:230px;height:114px;'">
+ <div :style="'position: absolute;z-index:99;left:740px;top:507px;width:230px;height:114px;'">
<div v-for="item in cagelist4" :key="item['id']"
:style="'display:flex;height:4.55px;position: relative;'">
<div class="cells" v-for="(num) in item['number']" :key="num" :style="'width: ' + (item['glassWidth'] * 0.046) + 'px;background-color:' + ShowCellList(1) + ';position: absolute;left:' +
@@ -369,7 +369,7 @@
</div>
</div>
</div>
- <div :style="'position: absolute;z-index:1000;left:740px;top:730px;width:230px;height:90px;'">
+ <div :style="'position: absolute;z-index:100;left:740px;top:730px;width:230px;height:90px;'">
<div v-for="item in cagelist3" :key="item['id']"
:style="'display:flex;height:2.25px;position: relative;'">
<div class="cells" v-for="(num) in item['number']" :key="num" :style="'width: ' + (item['glassWidth'] * 0.046) + 'px;background-color:' + ShowCellList(1) + ';position: absolute;left:' +
@@ -377,7 +377,7 @@
</div>
</div>
</div>
- <div :style="'position: absolute;z-index:1000;left:740px;top:830px;width:230px;height:90px;'">
+ <div :style="'position: absolute;z-index:100;left:740px;top:830px;width:230px;height:90px;'">
<div v-for="item in cagelist2" :key="item['id']"
:style="'display:flex;height:2.25px;position: relative;'">
<div class="cells" v-for="(num) in item['number']" :key="num" :style="'width: ' + (item['glassWidth'] * 0.046) + 'px;background-color:' + ShowCellList(1) + ';position: absolute;left:' +
@@ -385,7 +385,7 @@
</div>
</div>
</div>
- <div :style="'position: absolute;z-index:1000;left:740px;top:930px;width:230px;height:90px;'">
+ <div :style="'position: absolute;z-index:100;left:740px;top:930px;width:230px;height:90px;'">
<div v-for="item in cagelist1" :key="item['id']"
:style="'display:flex;height:2.25px;position: relative;'">
<div class="cells" v-for="(num) in item['number']" :key="num" :style="'width: ' + (item['glassWidth'] * 0.046) + 'px;background-color:' + ShowCellList(1) + ';position: absolute;left:' +
@@ -421,7 +421,7 @@
<el-table-column :min-width="100" :label="$t('Terminate Task')">
<template slot-scope='scope'>
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
- @click="FinishTask(0, scope.row.id)">{{ $t('Complete') }}</el-button>
+ @click="FinishTask(scope.row.id)">{{ $t('Complete') }}</el-button>
</template>
</el-table-column>
</el-table>
@@ -437,7 +437,7 @@
<el-table-column :min-width="100" :label="$t('Terminate Task')">
<template slot-scope='scope'>
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
- @click="FinishTask(1, scope.row.id)">{{ $t('Complete') }}</el-button>
+ @click="FinishTask(scope.row.id)">{{ $t('Complete') }}</el-button>
</template>
</el-table-column>
</el-table>
@@ -469,38 +469,6 @@
<el-table-column prop="glasstype" :label="$t('Glasstype')"></el-table-column>
<el-table-column prop="productname" :label="$t('Productname')"></el-table-column>
</el-table>
- <!-- <table id="table">
- <thead>
- <tr>
- <th>Customer</th>
- <th>order</th>
- <th>base</th>
- <th>height</th>
- <th>thickness</th>
- <th>films</th>
- <th>quantity</th>
- <th>tier</th>
- <th>matching</th>
- <th>glasstype</th>
- <th>productname</th>
- </tr>
- </thead>
- <tbody style="text-align: center">
- <tr v-for="item in dataList" :key="item.id">
- <td>{{ item.Customer }}</td>
- <td>{{ item.order }}</td>
- <td>{{ item.base }}</td>
- <td>{{ item.height }}</td>
- <td>{{ item.thickness }}</td>
- <td>{{ item.films }}</td>
- <td>{{ item.quantity }}</td>
- <td>{{ item.tier }}</td>
- <td>{{ item.matching }}</td>
- <td>{{ item.glasstype }}</td>
- <td>{{ item.productname }}</td>
- </tr>
- </tbody>
- </table> -->
</div>
</el-dialog>
@@ -510,22 +478,23 @@
<!--鍔熻兘-->
<div>
<el-button type="primary" @click="ManualMatching()" :disabled="SoftEmergencyStopState"
- style="z-index: 999;">浜哄伐鍖归厤</el-button>
+ style="z-index: 999;">{{ $t('Manual matching') }}</el-button>
<el-button type="primary" @click="ManualTake()" :disabled="SoftEmergencyStopState"
- style="z-index: 999;">浜哄伐鎷胯蛋</el-button>
+ style="z-index: 999;">{{ $t('Manual removal') }}</el-button>
<el-button type="primary" @click="AnewMeasure()" :disabled="SoftEmergencyStopState"
- style="z-index: 999;">閲嶆柊娴嬮噺</el-button>
+ style="z-index: 999;">{{ $t('Remeasure') }}</el-button>
</div>
<br>
<!--鏄剧ず-->
<div style="width:1000px;height: 720px;border: 2px solid #d1d1d1;float: left;">
<!--鐜荤拑鍥� #81b337-->
- <div :style="'top:10px;bottom: 10px;left: 10px;right: 10px;margin:'+((720-(this.LastQueue.glasswidth / 25 * 7))/2)+'px auto;width:'
- + (this.LastQueue.glasswidth / 25 * 7) + 'px;height:'
- + (this.LastQueue.glasswidth / 25 * 7) + 'px;height:'
- + (this.LastQueue.glassheight / 25 * 7) + 'px;line-height: '
- + (this.LastQueue.glassheight / 25 * 7) + 'px;background-color: #93d2f3;text-align: center;'">
- {{ this.LastQueue.glasswidth }}*{{ this.LastQueue.glassheight }}
+ <div :style="'top:10px;bottom: 10px;left: 10px;right: 10px;margin:'+((1000-(this.LastQueue.glasswidth / 25 * 7))/2)+'px auto;'+
+ 'width:'+ (this.LastQueue.glasswidth / 25 * 7) + 'px;'+
+ 'height:'+ (this.LastQueue.glassheight / 25 * 7) + 'px;'+
+ 'line-height: '+ (this.LastQueue.glassheight / 25 * 7) + 'px;'+
+ 'background-color: '+ (this.LastQueue.state>0?'#4CCCE4':(this.LastQueue.state==0?'#E4CA4C':'#E4CA4C'))+
+ ';text-align: center;'">
+ {{ this.LastQueue.glasswidth!=null?(this.LastQueue.glasswidth+"*"+this.LastQueue.glassheight):"" }}
</div>
</div>
@@ -533,11 +502,17 @@
<div style="width:20px;height: 720px;float: left;"></div>
<div style="width:500px;height: 620px;border: 2px solid #d1d1d1;float: left;padding: 50px 50px;">
<!--鐜荤拑鍥� #81b337-->
- <span class="measuretitle">闀匡細</span> <span class="measureValue">{{ this.LastQueue.glasswidth }}</span> <span class="measureUnit">cm</span>
+ <span class="measuretitle">{{ $t('Width') }}锛�</span> <span class="measureValue">{{ this.LastQueue.glasswidth }}</span> <span class="measureUnit">mm</span>
<br>
- <span class="measuretitle">瀹斤細</span> <span class="measureValue">{{ this.LastQueue.glassheight }}</span> <span class="measureUnit">cm</span>
+ <span class="measuretitle">{{ $t('Height') }}锛�</span> <span class="measureValue">{{ this.LastQueue.glassheight }}</span> <span class="measureUnit">mm</span>
<br>
- <span class="measuretitle">鍘氾細</span> <span class="measureValue">{{ this.LastQueue.thickness }}</span> <span class="measureUnit">cm</span>
+ <span class="measuretitle">{{ $t('Thickness') }}锛�</span> <span class="measureValue">{{ this.LastQueue.thickness }}</span> <span class="measureUnit">mm</span>
+ <br>
+ <span class="measuretitle">{{ $t('Measure Width') }}锛�</span> <span class="measureValue">{{ this.LastQueue.glasswidthmm }}</span> <span class="measureUnit">mm</span>
+ <br>
+ <span class="measuretitle">{{ $t('Measure Height') }}锛�</span> <span class="measureValue">{{ this.LastQueue.glassheightmm }}</span> <span class="measureUnit">mm</span>
+ <br>
+ <span class="measuretitle">{{ $t('Matching results') }}锛�</span> <span class="measureValue">{{ this.LastQueue.state>0?$t('Matching successful'):(this.LastQueue.state==0?$t('Multiple data matching'):$t('Matching failed')) }}</span>
<br>
</div>
</div>
@@ -551,26 +526,23 @@
<el-table-column :min-width="80" prop="glassWidth" :label="$t('Width')"></el-table-column>
<el-table-column :min-width="80" prop="glassHeight" :label="$t('Height')"></el-table-column>
<el-table-column :min-width="80" prop="thickness" :label="$t('Thickness')"></el-table-column>
+ <el-table-column :min-width="80" prop="films" :label="$t('Films')"></el-table-column>
<el-table-column :min-width="80" prop="number" :label="$t('number')"></el-table-column>
<el-table-column :min-width="80" prop="width" :label="$t('Width')"></el-table-column>
<el-table-column :min-width="250" :label="$t('Operate')">
<template slot-scope='scope'>
-
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
@click="UpdateDisabled(scope.row.cage, scope.row.cell, scope.row.disabled == 0 ? 1 : 0)">
{{ scope.row.disabled == 0 ? $t('Disable') : $t('Enable') }}</el-button>
-
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
:disabled="(scope.row.width < scope.row.glassWidth + 100 ? true : false)"
@click="UpdateStroageCageByCell(scope.row.cell, scope.row.number, 1)">{{ $t('Add')
}}
</el-button>
-
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
:disabled="scope.row.number >= 1 ? false : true"
@click="UpdateStroageCageByCell(scope.row.cell, scope.row.number, -1)">{{ $t('Reduce')
}}</el-button>
-
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
:disabled="scope.row.number >= 1 ? false : true"
@click="UpdateStroageCageByCell(scope.row.cell, scope.row.number, 0)">{{ $t('Delete')
@@ -605,23 +577,29 @@
</el-table-column>
<el-table-column prop="state" :label="$t('Task State')">
<template slot-scope='scope'>
- {{ scope.row.state >= 0 ? scope.row.state == 0 ? $t('Start') : $t('Stop') : "" }}
+ {{ scope.row.state >= 0 ? scope.row.state == 0 ? $t('Stop') : $t('Start') : "" }}
</template>
</el-table-column>
<el-table-column prop="method" :label="$t('Task Method')">
<template slot-scope='scope'>
{{ scope.row.state >= 0 ? scope.row.method == 0 ? $t('Out') : $t('All Out') : "" }}
</template>
-
</el-table-column>
<el-table-column prop="line" :label="$t('Task Line')">
</el-table-column>
- <el-table-column width="220" :label="$t('Operate')">
+ <el-table-column width="300" :label="$t('Operate')">
+
<template slot-scope='scope'>
+ <el-select v-model="selected[scope.$index]" :placeholder="$t('Line')"
+ v-show="scope.row.state >= 0 ? true : false">
+ <el-option v-for="item in options" :key="item.value" :label="item.label"
+ :value="item.value">
+ </el-option>
+ </el-select>
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
v-show="scope.row.state >= 0 ? true : false"
- @click="ClaimTasks(scope.row.flowcard, scope.row.state)">
- {{ scope.row.status == '0' ? $t('Start Task') : $t('Stop Task') }}</el-button>
+ @click="ClaimTasks(scope.row.flowcard, scope.row.state, selected[scope.$index])">
+ {{ scope.row.state > 0 ? $t('Stop Task') : $t('Start Task') }}</el-button>
<el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
v-show="scope.row.state >= 0 ? true : false"
@@ -647,6 +625,7 @@
</div>
<el-table :data="this.StorageCageAddInfo" :height="700" border style="width: 100%;overflow: auto;">
<el-table-column prop="flowcard" :label="$t('Flowcard')"></el-table-column>
+ <el-table-column prop="tier" :label="$t('Tier')"></el-table-column>
<el-table-column prop="glasstype" :label="$t('GlassType')"></el-table-column>
<el-table-column prop="width" :label="$t('Width')"></el-table-column>
<el-table-column prop="height" :label="$t('Height')"></el-table-column>
@@ -671,7 +650,7 @@
Disabled, SelectPermissionByUserName, currentUsername, CompleteQueue,
isAllowReorderings,
- UpdateStroageCageByCell, FinishTask, SelectGlassInfo, StorageCageAddGlass, ClaimTasks, ModeChange, UpdateQueue,importData,ManualTake,AnewMeasure
+ UpdateStroageCageByCell, FinishTask, SelectGlassInfo, StorageCageAddGlass, ClaimTasks, ModeChange, UpdateQueue, importData, ManualTake, AnewMeasure
} from "../../api/home";
@@ -682,6 +661,15 @@
name: "Home",
data() {
return {
+ carposition:0,
+ selected: [],
+ options: [{
+ value: '1',
+ label: '1'
+ }, {
+ value: '2',
+ label: '2'
+ }],
dataList: [],
tableData1: [],
Measuermode: false,
@@ -822,13 +810,8 @@
socket.onmessage = function (msg) {
//console.log("鏀跺埌鏁版嵁====" + msg.data);
let obj = JSON.parse(msg.data);
- if (obj.params != null) {
- var zhi1 = obj.params[0][0];
- var zhi2 = obj.params[0][1];
- this.car1 = 145 + 8.15 * Math.abs(zhi1 - this.carlist[0]['start']) / Math.abs(this.carlist[0]['end'] - this.carlist[0]['start']) * 100;
- this.car2 = 210 + 8.15 * Math.abs(zhi2 - this.carlist[1]['start']) / Math.abs(this.carlist[1]['end'] - this.carlist[1]['start']) * 100;
- // this.car1 = 210 + 11.25 * (obj.params[0][1]-this.carlist[1]['start'])/(this.carlist[1]['end']-this.carlist[1]['start'])*100;
- // this.car2 = 300 + 11.25 * (obj.params[0][1]-this.carlist[1]['start'])/(this.carlist[1]['end']-this.carlist[1]['start'])*100;
+ if(obj.carposition != null){
+ this.carposition = obj.carposition[0];
}
// 鑾峰彇璁惧鐘舵��
if (obj.DeviceList != null) {
@@ -873,7 +856,7 @@
socket.onclose = function () {
console.log("websocket宸插叧闂�");
};
- //鍙戠敓浜嗛敊璇簨浠�
+ //鍙戠敓浜嗛敊璇簨浠�
socket.onerror = function () {
console.log("websocket鍙戠敓浜嗛敊璇�");
}
@@ -929,6 +912,7 @@
StorageCageAddGlass(this.cell, this.StorageCageAddInfo[index]).then(res => {
if (res.data.message == 200) {
this.$message.success(this.$t('Operation successful'));
+ this.StorageCageAdd=false;
}
})
} else {
@@ -943,8 +927,8 @@
},
//棰嗗彇/鏆傚仠浠诲姟
- ClaimTasks(flowcard, state) {
- ClaimTasks(flowcard, state).then(res => {
+ ClaimTasks(flowcard, state, line) {
+ ClaimTasks(flowcard, state, line).then(res => {
if (res.data.message == 200) {
this.$message.success(this.$t('Operation successful'));
}
@@ -965,9 +949,9 @@
})
},
//瀹屾垚杩�/鍑虹墖浠诲姟
- FinishTask(tasktype, id) {
- FinishTask(tasktype, id).then(res => {
- if (res.data.message3 == 200) {
+ FinishTask(id) {
+ FinishTask(id).then(res => {
+ if (res.data.message == 200) {
this.$message.success(this.$t('Operation successful'));
}
});
@@ -976,6 +960,7 @@
UpdateStroageCageByCell(cell, nownum, num) {
if (nownum == null && num == 1) {
this.StorageCageAdd = true;
+ this.Measuermode=true;
this.cell = cell;
} else {
if (nownum + num == 0) {
@@ -1063,10 +1048,11 @@
//浜哄伐鍖归厤
ManualMatching() {
this.StorageCageAdd = true;
+ this.Measuermode=false;
},
//浜哄伐鎷胯蛋
ManualTake() {
- let s="123";
+ let s = "123";
ManualTake(s).then(res => {
if (res.data.message == 200) {
console.log(res.data.message);
@@ -1075,7 +1061,7 @@
},
//閲嶆柊娴嬮噺
AnewMeasure() {
- let s="123";
+ let s = "123";
AnewMeasure(s).then(res => {
if (res.data.message == 200) {
console.log(res.data.message);
@@ -1117,7 +1103,7 @@
console.log(tbdata);
importData(tbdata).then(res => {
if (res.data.message == 200) {
- //this.$message.success(this.$t('Operation successful'));
+ this.$message.success(this.$t('Operation successful'));
}
});
},
--
Gitblit v1.8.0