wuyouming666
2024-05-29 75375a0f68c8b91799482dc1cd2ec7d7f211167f
CanadaMes-ui/src/views/home/index.vue
@@ -243,7 +243,7 @@
            <div class="box" @click="dialogFormVisible2 = true">
                <div class="text">
                    <!-- Alarm: -->
                    {{ this.text }}
                    {{ this.text }}{{ this.plc1 }}{{ this.plc2 }}
                    <label v-for="item in this.alarm" :key="item['id']">
                        {{ item['content'] }}
                    </label>
@@ -258,13 +258,13 @@
                <el-button type="primary" @click="showform2()" :disabled="OrderInfo"
                    :class="OrderInfo == true ? 'hide' : ''">{{ $t('Order Info')
                    }}</el-button>
                <el-button type="primary" @click="showcageinfo(1)" :disabled="OrderInfo"
                <el-button type="primary" @click="showcageinfo(1)" :disabled="CageDetails"
                    :class="CageDetails == true ? 'hide' : ''">{{ $t('Cage Details')
                    }}</el-button>
                <el-button type="primary" @click="showform6()" :disabled="OutingQueue"
                    :class="OutingQueue == true ? 'hide' : ''">
                    {{ $t('Outing Queue') }}</el-button>
                <el-button type="primary" @click="TaskStop(0)" :disabled="OutingQueue"
                    {{ $t('Outfeed Queue') }}</el-button>
                <!-- <el-button type="primary" @click="TaskStop(0)" :disabled="OutingQueue"
                    :class="StopTask == true ? 'hide' : ''">
                    {{ $t('Terminate Feeding') }}</el-button>
                <el-button type="primary" @click="TaskStop(1)" :disabled="StopTask"
@@ -272,7 +272,7 @@
                    {{ $t('Terminate Outing') }}</el-button>
                <el-button type="primary" @click="SoftEmergencyStop()" :disabled="SoftEmergencyStopState"
                    :class="SoftEmergencyStopState == true ? 'hide' : ''">
                    {{ $t('SoftEmergencyStop') }}</el-button>
                    {{ $t('SoftEmergencyStop') }}</el-button> -->
                <!-- <el-input style="width:15%;" :placeholder="$t('Enter the Order No')" v-model="order"></el-input>
                <el-button type="warning" @click="showform1();">{{ $t('Exit the glass by order number') }}</el-button> -->
            </div>
@@ -294,10 +294,10 @@
                            {{ scope.row.glasswidthmm }}*{{ scope.row.glassheightmm }}
                        </template>
                    </el-table-column>
                    <el-table-column :label="$t('Terminate Task')">
                    <el-table-column :label="$t('Abort')">
                        <template slot-scope='scope'>
                            <el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
                                @click="endtask(1, scope.row.glassId, scope.row.cell)">{{ $t('Terminate Task')
                                @click="endtask(1, scope.row.glassId, scope.row.cell)">{{ $t('Task Complete')
                                }}</el-button>
                        </template>
                    </el-table-column>
@@ -320,10 +320,10 @@
                        </template>
                    </el-table-column>
                    <el-table-column :label="$t('Terminate Task')">
                    <el-table-column :label="$t('Abort')">
                        <template slot-scope='scope'>
                            <el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
                                @click="endtask(0, scope.row.glassId, scope.row.cell)">{{ $t('Terminate Task')
                                @click="endtask(0, scope.row.glassId, scope.row.cell)">{{ $t('Task Complete')
                                }}</el-button>
                        </template>
                    </el-table-column>
@@ -344,7 +344,8 @@
        </el-main>
        <el-footer>
            <div class="blocks" style="position: relative;">
                <div :style="'position:absolute;width:40px;height:40px;top:40px;left:50px;background-Color:'+StateColor+';font-size:30px;text-align:center;border-radius: 50%;'">
                <div
                    :style="'position:absolute;width:40px;height:40px;top:40px;left:50px;background-Color:' + StateColor + ';font-size:30px;text-align:center;border-radius: 50%;'">
                    {{ CountDowns }}
                </div>
                <div style="display:flex;position: absolute;float:left;z-index: 999;top:102px;left:237px;">
@@ -597,16 +598,20 @@
                <el-table-column :min-width="250" :label="$t('Operate')">
                    <template slot-scope='scope'>
                        <el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
                            :disabled="scope.row.state == 1 ? false : true"
                            :disabled="(scope.row.state == 1 && (loadname == 'admin' || loadname == 'northglass')) ? false : true"
                            @click="deleteglass(scope.row.glassId, scope.row.state)">{{ $t('Delete') }}</el-button>
                        <el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
                            :disabled="scope.row.state == 1 ? false : true"
                            @click="outglass(scope.row.glassId, scope.row.state)">{{ $t('Out') }}</el-button>
                            :disabled="(scope.row.state == 1 && (loadname == 'admin' || loadname == 'Transfer' || loadname == 'northglass' )) ? false : true"
                            @click="outglass(scope.row.glassId, scope.row.state)">{{ $t('Outfeed') }}</el-button>
                        <el-button type="primary" style="padding: 4px 10px;font-size: 12px;"
                            :disabled="(loadname == 'admin' || loadname == 'northglass') ? false : true"
                            @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.glassId != null ? true : false"
                            :disabled="(scope.row.glassId == null && (loadname == 'admin' || loadname == 'northglass')) ? false : true"
                            @click="insertglass(scope.row.cage, scope.row.cell, scope.row.tier)">{{ $t('Add')
                            }}</el-button>
                    </template>
@@ -679,7 +684,7 @@
                </div>
                <div style="display: flex;justify-content: space-around;">
                    <el-form-item :label="$t('Barcode')" >
                    <el-form-item :label="$t('Barcode')">
                        <el-input v-model="form2.glassId" readonly autocomplete="off" />
                    </el-form-item>
                    <!-- <el-form-item :label="$t('Barcode')">
@@ -688,8 +693,9 @@
                    <el-form-item :label="$t('Barcode')">
                        <el-input v-model="form5.glassId" readonly autocomplete="off" />
                    </el-form-item>
                    <el-form-item :label="$t('Barcode')" :style="'background-Color:'+(form6state==1?'yellow':'')+';'">
                        <el-input v-model="form6.barcode" readonly autocomplete="off"  />
                    <el-form-item :label="$t('Barcode')"
                        :style="'background-Color:' + (form6state == 1 ? 'yellow' : '') + ';'">
                        <el-input v-model="form6.barcode" readonly autocomplete="off" />
                    </el-form-item>
                </div>
                <div style="display: flex;justify-content: space-around;">
@@ -702,7 +708,8 @@
                    <el-form-item :label="$t('Order No')">
                        <el-input v-model="form5.orderId" readonly autocomplete="off" />
                    </el-form-item>
                    <el-form-item :label="$t('Order No')" :style="'background-Color:'+(form6state==1?'yellow':'')+';'">
                    <el-form-item :label="$t('Order No')"
                        :style="'background-Color:' + (form6state == 1 ? 'yellow' : '') + ';'">
                        <el-input v-model="form6.ordernumber" readonly autocomplete="off" />
                    </el-form-item>
                </div>
@@ -716,7 +723,8 @@
                    <el-form-item :label="$t('List No')">
                        <el-input v-model="form5.listId" readonly autocomplete="off" />
                    </el-form-item>
                    <el-form-item :label="$t('List No')" :style="'background-Color:'+(form6state==1?'yellow':'')+';'">
                    <el-form-item :label="$t('List No')"
                        :style="'background-Color:' + (form6state == 1 ? 'yellow' : '') + ';'">
                        <el-input v-model="form6.listnumber" readonly autocomplete="off" />
                    </el-form-item>
                </div>
@@ -730,7 +738,8 @@
                    <el-form-item :label="$t('Box No')">
                        <el-input v-model="form5.boxId" readonly autocomplete="off" />
                    </el-form-item>
                    <el-form-item :label="$t('Box No')" :style="'background-Color:'+(form6state==1?'yellow':'')+';'">
                    <el-form-item :label="$t('Box No')"
                        :style="'background-Color:' + (form6state == 1 ? 'yellow' : '') + ';'">
                        <el-input v-model="form6.boxnumber" readonly autocomplete="off" />
                    </el-form-item>
                </div>
@@ -744,7 +753,8 @@
                    <el-form-item :label="$t('Length')">
                        <el-input v-model="form5.glasswidthmm" readonly autocomplete="off" />
                    </el-form-item>
                    <el-form-item :label="$t('Length')" :style="'background-Color:'+(form6state==1?'yellow':'')+';'">
                    <el-form-item :label="$t('Length')"
                        :style="'background-Color:' + (form6state == 1 ? 'yellow' : '') + ';'">
                        <el-input v-model="form6.glasslength" readonly autocomplete="off" />
                    </el-form-item>
                </div>
@@ -758,7 +768,8 @@
                    <el-form-item :label="$t('Width')">
                        <el-input v-model="form5.glassheightmm" readonly autocomplete="off" />
                    </el-form-item>
                    <el-form-item :label="$t('Width')" :style="'background-Color:'+(form6state==1?'yellow':'')+';'">
                    <el-form-item :label="$t('Width')"
                        :style="'background-Color:' + (form6state == 1 ? 'yellow' : '') + ';'">
                        <el-input v-model="form6.glassheight" readonly autocomplete="off" />
                    </el-form-item>
                </div>
@@ -768,7 +779,8 @@
                        {{ $t('Confirm') }}</el-button>
                    <span style="margin-right: 12%;">
                        {{ $t('Remaining width:') }}
                        {{ (108.27 - (Object.keys(this.form6).length === 0 ? 0 : (form6.glassheight > form6.glasslength ?
                        {{ (108.27 - (Object.keys(this.form6).length === 0 ? 0 : (form6.glassheight > form6.glasslength
                ?
                form6.glassheight : form6.glasslength))).toFixed(2) }}
                    </span>
@@ -776,7 +788,7 @@
            </el-form>
        </el-dialog>
        <el-dialog :visible.sync="dialogFormVisible6" :title="$t('Outing Queue')" top="5vh">
        <el-dialog :visible.sync="dialogFormVisible6" :title="$t('Outfeed Queue')" top="5vh">
            {{ $t('Queue State') }}:
            {{ this.isAllowQueue
                == true ? $t('Start') : $t('Stop')
@@ -829,22 +841,48 @@
                    </el-table>
                </div>
                <div style="width:30%;" v-for="(item) in CurrentFrame" :key="item['barcode']">
                    <div style="background-color: yellow;">
                        <h1 style="font-size: 40px;text-align: center;">{{ $t('Current scan') }}:</h1>
                        <h1 style="font-size: 40px;text-align: center;">{{ $t('List No') }}:{{ frameInfo.listnumber }}
                        </h1>
                        <h1 style="font-size: 40px;text-align: center;">{{ $t('Box No') }}:{{ frameInfo.boxnumber }}
                        </h1>
                    </div>
                    <el-button style="margin-left: 42%;" type="primary" @click="FrameStateUpdate(item['barcode'])">{{
                $t('Next') }}</el-button>
                    <h1 style="font-size: 40px;text-align: center;">{{ $t('Current Frame') }}:{{ item['barcode'] }}</h1>
                    <h1 style="font-size: 30px;text-align: center;">
                        {{ item['flip'] == true ? $t('EXTERIQR OUT AND BYPASS TO THE LEFT')
                : $t('EXTERIQR OUT AND BYPASS TO THE RIGHT') }}
                    </h1>
                    <h1 style="font-size: 30px;text-align: center;">{{ item['framewidthmm'] }}*{{ item['frameheightmm']
                        }}
                    </h1>
                    <h1 style="font-size: 40px;text-align: center;">{{ $t('Current Frame on Belt') }}:</h1>
                    <h1 style="font-size: 40px;text-align: center;">{{ $t('Barcode') }}:{{ item['barcode'] }}</h1>
                    <h1 style="font-size: 40px;text-align: center;">{{ $t('List No') }}:{{ item['listId'] }}</h1>
                    <h1 style="font-size: 40px;text-align: center;">{{ $t('Box No') }}:{{ item['boxId'] }}</h1>
                    <div>
                        <div v-if="item['flip'] == 1"
                            style="width:40px;height:150px;border:1px solid black;float: left;">
                    <div class="frame" :style="'background-color: green;margin-top:30px;margin:0 auto;width: ' +
                FrameWidthHeight('before', item['framewidthmm'], item['frameheightmm'], item['position']) + 'px;height:' +
                FrameWidthHeight('after', item['framewidthmm'], item['frameheightmm'], item['position']) + 'px;'
                ">
                        </div>
                        <div class="frame"
                            :style="'background-color: ' + Colorchange(1) + ';margin-top:30px;margin:0 auto;width: 370px;height:150px;float: left;'">
                            <h1 style="font-size: 54px;text-align: center;color:white;margin-top: 0px;">
                                {{ framecolor1 == "green" ? $t('Interior Out Bypass: Right')
                : framecolor1 == "blue" ? $t('Exterior Out Bypass: Left')
                    : $t('Remove Frame') }}
                            </h1>
                        </div>
                        <div v-if="item['flip'] == 2"
                            style="width:40px;height:150px;border:1px solid black;float: left;">
                        </div>
                    </div>
                    <h1 style="font-size: 30px;text-align: center;margin-top: 50px;">{{
                (item['framewidthmm'] * 1) > (item['frameheightmm'] * 1) ? item['frameheightmm'] :
                    item['framewidthmm']
            }}
                    </h1>
                    <div>
                        <h1 style="font-size: 30px;text-align: center;margin-top: 65px;">
                            {{ (item['frameheightmm'] * 1) > (item['framewidthmm'] * 1) ? item['frameheightmm'] :
                item['framewidthmm'] }}</h1>
                    </div>
                </div>
            </div>
@@ -852,11 +890,12 @@
        <el-dialog :visible.sync="dialogFormVisible7" :title="$t('Glass information corresponding to aluminum frame')"
            top="5vh">
            <el-input style="width:15%;" :placeholder="$t('Enter the Frame No')" v-model="framebarcode"></el-input>
            <el-button type="primary" @click="showform7()">{{ $t('Query') }}</el-button>
            <el-button type="primary" @click="AddOutSliceS()">{{ $t('Add') }}</el-button>
            <el-button type="primary" @click="AddOutSliceS()" :disabled="framestate">{{ $t('Outfeed') }}</el-button>
            <el-button type="primary" @click="CloseForm7()">{{ $t('Cancel') }}</el-button>
            <el-table :data="this.AluminumFrame" :height="700" border style="width: 100%;overflow: auto;">
            <el-table :data="this.AluminumFrame" :height="200" border style="width: 100%;overflow: auto;">
                <el-table-column prop="frameBarcode" :label="$t('Frame No')"></el-table-column>
                <el-table-column prop="barcode" :label="$t('Barcode')"></el-table-column>
                <el-table-column prop="ordernumber" :label="$t('Order No')"></el-table-column>
@@ -867,7 +906,10 @@
                <el-table-column prop="storageCage.cage" :label="$t('Cage No')"></el-table-column>
                <el-table-column prop="storageCage.cell" :label="$t('Slot No')">
                    <template slot-scope='scope'>
                        {{ (scope.row.cage - 1) * 21 + scope.row.cell }}
                        {{
                scope.row.storageCage == null ? "" :
                    (scope.row.storageCage.cage - 1) * 21 + scope.row.storageCage.cell
            }}
                    </template>
                </el-table-column>
                <el-table-column prop="storageCage.tier" :label="$t('The Side')">
@@ -891,6 +933,59 @@
                    </template>
                </el-table-column>
            </el-table>
            <div style="width:30%;" v-for="(item) in AluminumFrameInfo" :key="item['barcode']">
                <el-button style="margin-left: 42%;" type="primary" @click="FrameStateUpdate(item['barcode'])">{{
                $t('Next') }}</el-button>
                <h1 style="font-size: 40px;text-align: center;">{{ $t('Current Frame on Belt') }}:</h1>
                <h1 style="font-size: 40px;text-align: center;">{{ $t('Barcode') }}:{{ item['barcode'] }}</h1>
                <h1 style="font-size: 40px;text-align: center;">{{ $t('List No') }}:{{ item['listnumber'] }}</h1>
                <h1 style="font-size: 40px;text-align: center;">{{ $t('Box No') }}:{{ item['boxnumber'] }}</h1>
                <div>
                    <div v-if="item['flip'] == 1" style="width:40px;height:150px;border:1px solid black;float: left;">
                    </div>
                    <div class="frame"
                        :style="'background-color: ' + Colorchange(0) + ';margin-top:30px;margin:0 auto;width: 370px;height:150px;float: left;'">
                        <h1 style="font-size: 54px;text-align: center;color:white;margin-top: 0px;">
                            {{ framecolor == "green" ? $t('Interior Out Bypass: Right')
                : framecolor == "blue" ? $t('Exterior Out Bypass: Left')
                    : $t('Remove Frame') }}
                        </h1>
                    </div>
                    <div v-if="item['flip'] == 2" style="width:40px;height:150px;border:1px solid black;float: left;">
                    </div>
                </div>
                <h1 style="font-size: 30px;text-align: center;margin-top: 50px;">{{
                (item['framelength'] * 1) > (item['frameheight'] * 1) ? item['frameheight'] :
                    item['framelength']
            }}
                </h1>
                <div>
                    <h1 style="font-size: 30px;text-align: center;margin-top: 65px;">
                        {{ (item['frameheight'] * 1) > (item['framelength'] * 1) ? item['frameheight'] :
                        item['framelength']}}</h1>
                </div>
            </div>
            <!-- <div style="width:30%;" v-for="(item) in AluminumFrameInfo" :key="item['barcode']">
                <h1 style="font-size: 40px;text-align: center;">{{ $t('Current Frame on Belt') }}:</h1>
                <h1 style="font-size: 40px;text-align: center;">{{ $t('Barcode') }}:{{ item['barcode'] }}</h1>
                <h1 style="font-size: 40px;text-align: center;">{{ $t('List No') }}:{{ item['listnumber'] }}</h1>
                <h1 style="font-size: 40px;text-align: center;">{{ $t('Box No') }}:{{ item['boxnumber'] }}</h1>
                <h1 style="font-size: 30px;text-align: center;">
                    {{ item['flip'] == 1 ? $t('EXTERIQR OUT AND BYPASS TO THE LEFT')
                : $t('EXTERIQR OUT AND BYPASS TO THE RIGHT') }}
                </h1>
                <h1 style="font-size: 30px;text-align: center;">{{ item['framelength'] }}*{{ item['frameheight']
                    }}
                </h1>
                <div class="frame"
                    :style="'background-color: ' + framecolor +';margin-top:30px;margin:0 auto;width:400px;height:150px;' ">
                </div>
            </div> -->
        </el-dialog>
        <el-dialog :visible.sync="dialogFormCountDown" :title="$t('Approximately resettable time')" top="5vh">
            <div :style="'font-size: ' + PromptSize + 'px;text-align: center;'">
@@ -1012,27 +1107,40 @@
            count1: 0,
            count2: 1,
            loadname: "",
            form6state:0,
            StateColor:"green"
            form6state: 0,
            StateColor: "green",
            plc1: "",
            plc2: "",
            AluminumFrameInfo: {},
            framestate: false,
            framecolor: "green",
            framecolor1: "green",
            frameInfo: {}
        };
    },
    created() {
        this.load();
        // setInterval(() => {
        //     if(this.count1<this.count2){
        //         this.count1=this.count2;
        //     }else{
        //         const now = new Date();
        //         console.log(now);
        //         alert("websocket停止"+now);
        //     }
        // }, 3000);
        setInterval(() => {
            if (this.count1 < this.count2) {
                this.count1 = this.count2;
            } else {
                const now = new Date();
                console.log(this.$t('Mes Connection failed') + now);
            }
        }, 60000);
    },
    activated() {
        this.init();
    }
    ,
    methods: {
        Colorchange(i) {
            if (i == 0) {
                return this.framecolor;
            } else {
                return this.framecolor1;
            }
        },
        init() {
            let viewname = "Home";
            if (typeof (WebSocket) == "undefined") {
@@ -1063,6 +1171,20 @@
                        // 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.Plc1 != null) {
                        if (obj.Plc1[0] == true) {
                            this.plc1 = "";
                        } else {
                            this.plc1 = this.$t('Plc1 Connection failed');
                        }
                    }
                    if (obj.Plc2 != null) {
                        if (obj.Plc2[0] == true) {
                            this.plc2 = "";
                        } else {
                            this.plc2 = this.$t('Plc2 Connection failed');
                        }
                    }
                    this.tableData = obj.tableData[0];
                    this.cagelist1 = obj.cagelist1[0];
@@ -1085,6 +1207,30 @@
                    //查询当前铝框信息
                    this.CurrentFrame = obj.CurrentFrame;
                    if (obj.CurrentFrame.length!=0) {
                        if (this.CurrentFrame[0].frameheightmm > this.CurrentFrame[0].framewidthmm) {
                            if (this.CurrentFrame[0].frameheightmm < 23.62205 || this.CurrentFrame[0].framewidthmm < 15.748||this.CurrentFrame[0].frameheightmm > 144.094488 || this.CurrentFrame[0].framewidthmm > 70.8661417) {
                                this.framecolor1 = "red";
                            } else {
                                if (this.CurrentFrame[0].flip == 2) {
                                    this.framecolor1 = "green";
                                } else {
                                    this.framecolor1 = "blue";
                                }
                            }
                        } else {
                            if (this.CurrentFrame[0].frameheightmm < 15.748 || this.CurrentFrame[0].framewidthmm < 23.62205||this.CurrentFrame[0].frameheightmm > 70.8661417 || this.CurrentFrame[0].framewidthmm > 144.094488) {
                                this.framecolor1 = "red";
                            } else {
                                if (this.CurrentFrame[0].flip == 2) {
                                    this.framecolor1 = "green";
                                } else {
                                    this.framecolor1 = "blue";
                                }
                            }
                        }
                    }
                    // 获取设备状态
                    if (obj.DeviceList != null) {
@@ -1098,9 +1244,47 @@
                    if (obj.AluminumFrame != null) {
                        this.AluminumFrame = obj.AluminumFrame[0];
                        if (this.dialogFormVisible6 == true) {
                            this.dialogFormVisible7 = true;
                        }
                    }
                    if (obj.frameInfo != null) {
                        this.frameInfo = obj.frameInfo[0];
                    }
                    if (obj.AluminumFrameInfo != null) {
                        this.AluminumFrameInfo = obj.AluminumFrameInfo;
                        if (this.AluminumFrameInfo[0].frameheightmm > this.AluminumFrameInfo[0].framelengthmm) {
                            if (this.AluminumFrameInfo[0].frameheightmm < 600 || this.AluminumFrameInfo[0].framelengthmm < 400||this.AluminumFrameInfo[0].frameheightmm > 3660|| this.AluminumFrameInfo[0].framelengthmm > 1800) {
                                this.framestate = true;
                                this.framecolor = "red";
                            } else {
                                this.framestate = false;
                                if (this.AluminumFrameInfo[0].flip == 2) {
                                    this.framecolor = "green";
                                } else {
                                    this.framecolor = "blue";
                                }
                            }
                        } else {
                            if (this.AluminumFrameInfo[0].frameheightmm < 400 || this.AluminumFrameInfo[0].framelengthmm < 600||this.AluminumFrameInfo[0].frameheightmm > 1800 || this.AluminumFrameInfo[0].framelengthmm > 3660) {
                                this.framestate = true;
                                this.framecolor = "red";
                            } else {
                                this.framestate = false;
                                if (this.AluminumFrameInfo[0].flip == 2) {
                                    this.framecolor = "green";
                                } else {
                                    this.framecolor = "blue";
                                }
                            }
                        }
                    } else {
                        this.AluminumFrameInfo = {};
                    }
                    //根据进片状态出发进片任务
@@ -1158,9 +1342,9 @@
                            }
                            else if (obj.zhi[0] == 400) {
                                this.$message.error(this.$t('There is no such slot'));
                            } else if(obj.zhi[0] == 500) {
                            } else if (obj.zhi[0] == 500) {
                                this.$message.error(this.$t('This glass ID already exists in the sorting cage'));
                            } else if(obj.zhi[0] == 600) {
                            } else if (obj.zhi[0] == 600) {
                                this.$message.error(this.$t('The glass size is not within the range'));
                            }
                        }
@@ -1222,15 +1406,15 @@
                        }
                    }
                    if (obj.form6 != null) {
                        this.form6state=1;
                        this.form6state = 1;
                        this.form6 = obj.form6[0];
                        if(this.form6.glassheight=="0"){
                            this.form6.glassheight="";
                            this.form6.glasslength="";
                        if (this.form6.glassheight == "0") {
                            this.form6.glassheight = "";
                            this.form6.glasslength = "";
                        }
                    } else {
                        this.form6 = {};
                        this.form6state=0;
                        this.form6state = 0;
                    }
                    //数据库连接是否正常
                    if (obj.dbconnected == "false") {
@@ -1360,7 +1544,7 @@
                    height = this.form.glasswidth;
                    width = this.form.glassheight;
                }
                if (height < 380 || width < 380 || height > 1810 || width > 2760) {
                if (height < 225 || width < 380 || height > 1810 || width > 2760) {
                    this.$message.error(this.$t('The glass size is not within the range'));
                } else {
                    if (this.zhuangtai == true) {
@@ -1423,8 +1607,9 @@
        WriteGlassID() {
            if (this.glassid1.length == 14) {
                WriteGlassID(this.glassid1).then(res => {
                    console.log(res.data);
                    this.$message.success(this.$t('Successful operation'));
                    if (res.data.message == 200) {
                        this.$message.success(this.$t('Successful operation'));
                    }
                });
            } else {
                this.$message.error(this.$t('Please enter the correct glassID'));
@@ -1483,22 +1668,19 @@
        },
        //结束进/出片任务
        endtask(type, glassid, cell) {
            this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
                inputType: 'password',
                inputPlaceholder: this.$t('Please enter the password'),
            this.$confirm(this.$t('Are you sure to perform this operation ?'), this.$t('confirm'), {
                // inputType: 'password',
                // inputPlaceholder: this.$t('Please enter the password'),
                confirmButtonText: this.$t('Yes'),
                cancelButtonText: this.$t('No'),
                type: 'warning'
            }).then(({ value }) => {
                if (this.password == value) {
            }).then(() => {
                    UpdateTask(type, glassid, cell).then(res => {
                        if (res.data.message3 == 200) {
                            this.$message.success(this.$t('Operation successful'));
                        }
                    });
                } else {
                    this.$message.error(this.$t('Password error'));//密码错误
                }
            }).catch(() => {
                this.$message({
                    type: 'info',
@@ -1522,23 +1704,19 @@
        },
        //删除理片笼玻璃
        deleteglass(glassid, state) {
            this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
                inputType: 'password',
                inputPlaceholder: this.$t('Please enter the password'),
            this.$confirm(this.$t('Are you sure to perform this operation ?'), this.$t('confirm'), {
                // inputType: 'password',
                // inputPlaceholder: this.$t('Please enter the password'),
                confirmButtonText: this.$t('Yes'),
                cancelButtonText: this.$t('No'),
                type: 'warning'
            }).then(({ value }) => {
                if (this.password == value) {
            }).then(() => {
                    if (state == 1) {
                        DeleteByGlassID(glassid).then(res => {
                            if (res.data.message3 == 200) {
                                this.$message.success(this.$t('Operation successful'));
                            }
                        });
                    } else {
                        this.$message.error(this.$t('No delete allowed'));
                    }
                } else {
                    this.$message.error(this.$t('Password error'));//密码错误
                }
@@ -1552,14 +1730,13 @@
        },
        //手动出片
        outglass(glassid, state) {
            this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
            this.$confirm(this.$t('Are you sure to perform this operation ?'), this.$t('confirm'), {
                inputType: 'password',
                inputPlaceholder: this.$t('Please enter the password'),
                confirmButtonText: this.$t('Yes'),
                cancelButtonText: this.$t('No'),
                type: 'warning'
            }).then(({ value }) => {
                if (this.password == value) {
            }).then(() => {
                    if (state == 1) {
                        OutByGlassID(glassid).then(res => {
                            if (res.data.message2 == 200) {
@@ -1575,9 +1752,6 @@
                                this.$message.error(this.$t('This glass is already in the Queue'));
                            }
                        });
                    } else {
                        this.$message.error(this.$t('No out allowed'));
                    }
                } else {
                    this.$message.error(this.$t('Password error'));//密码错误
                }
@@ -1590,21 +1764,17 @@
        },
        //手动往理片笼添加玻璃
        insertglass(cage, cell, tier) {
            this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
            this.$confirm(this.$t('Are you sure to perform this operation ?'), this.$t('confirm'), {
                inputType: 'password',
                inputPlaceholder: this.$t('Please enter the password'),
                confirmButtonText: this.$t('Yes'),
                cancelButtonText: this.$t('No'),
                type: 'warning'
            }).then(({ value }) => {
                if (this.password == value) {
            }).then(() => {
                    this.insertcage = cage;
                    this.insertcell = cell;
                    this.inserttier = tier;
                    this.showform(2);
                } else {
                    this.$message.error(this.$t('Password error'));//密码错误
                }
            }).catch(() => {
                this.$message({
                    type: 'info',
@@ -1642,20 +1812,18 @@
        },
        //启用//理片笼禁用
        UpdateDisabled(cage, cell, disabled) {
            this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
            this.$confirm(this.$t('Are you sure to perform this operation ?'), this.$t('confirm'), {
                inputType: 'password',
                inputPlaceholder: this.$t('Please enter the password'),
                confirmButtonText: this.$t('Yes'),
                cancelButtonText: this.$t('No'),
                type: 'warning'
            }).then(({ value }) => {
                if (this.password == value) {
            }).then(() => {
                    Disabled(cage, cell, disabled).then(res => {
                        if (res.data.message == 200) {
                            this.$message.success(this.$t('Operation successful'));
                        }
                    });
                }
            }).catch(() => {
                this.$message({
                    type: 'info',
@@ -1666,22 +1834,20 @@
        },
        //删除出片队列玻璃
        deleteproductionqueueglass(id) {
            this.$prompt(this.$t('Are you sure to perform this operation ?'), this.$t('prompt'), {
                inputType: 'password',
                inputPlaceholder: this.$t('Please enter the password'),
            this.$confirm(this.$t('Are you sure to perform this operation ?'), this.$t('confirm'), {
                // inputType: 'password',
                // inputPlaceholder: this.$t('Please enter the password'),
                confirmButtonText: this.$t('Yes'),
                cancelButtonText: this.$t('No'),
                type: 'warning'
            }).then(({ value }) => {
                if (this.password == value) {
                    DeleteProductionQueueGlass(id).then(res => {
                        if (res.data.message == 200) {
                            this.$message.success(this.$t('Operation successful'));
                        } else {
                            this.$message.error(this.$t('This frame has glass that is currently outing'));
                        }
                    });
                }
            }).then(() => {
                DeleteProductionQueueGlass(id).then(res => {
                    if (res.data.message == 200) {
                        this.$message.success(this.$t('Operation successful'));
                    } else {
                        this.$message.error(this.$t('This frame has glass that is currently outing'));
                    }
                });
            }).catch(() => {
                this.$message({
                    type: 'info',
@@ -1724,7 +1890,7 @@
                            }
                            else if (res.data.message == 400) {
                                this.$message.error(this.$t('There is no such slot'));
                            }else if (res.data.message == 500) {
                            } else if (res.data.message == 500) {
                                this.$message.error(this.$t('This glass ID already exists in the sorting cage'));
                            }
                        });
@@ -1784,6 +1950,10 @@
            if (this.AluminumFrame != null) {
                AddOutSliceS(this.AluminumFrame[0].frameBarcode).then(res => {
                    if (res.data.message == 200) {
                        this.AluminumFrame = null;
                        this.AluminumFrameInfo = null;
                        this.dialogFormVisible7 = false;
                        this.framebarcode = "";
                        this.$message.success(this.$t('Operation successful'));
                    }
                });
@@ -1795,7 +1965,9 @@
                CloseForm7().then(res => {
                    if (res.data.message == 200) {
                        this.AluminumFrame = null;
                        this.AluminumFrameInfo = null;
                        this.dialogFormVisible7 = false;
                        this.framebarcode = "";
                        this.$message.success(this.$t('Operation successful'));
                    }
                });
@@ -1994,7 +2166,6 @@
        },
        //判断玻璃是否超出范围
        Sizerange(Glass, position) {
            console.log(position);
            if (this.ManuallyInfeedGlass == false) {
                let width = 0;
                let height = 0;
@@ -2005,7 +2176,7 @@
                    height = Glass.glasswidth;
                    width = Glass.glassheight;
                }
                if (height < 380 || width < 380 || height > 1810 || width > 2760) {
                if (height < 225 || width < 380 || height > 1810 || width > 2760) {
                    this.$alert(this.$t('The glass size is not within the range'), this.$t('confirm'), {
                        confirmButtonText: this.$t('Yes'),
                        type: 'info',
@@ -2055,28 +2226,28 @@
                () => {
                    if (this.EmergencyStop == true) {
                        clearInterval(timer);
                        this.StateColor="red";
                        this.StateColor = "red";
                        this.CountDowns = "";
                    } else {
                        if (count > 0) {
                        this.StateColor="yellow";
                        this.PromptSize = 500;
                        this.CountDowns = count;
                        count--;
                            this.StateColor = "yellow";
                            this.PromptSize = 500;
                            this.CountDowns = count;
                            count--;
                        }
                        else {
                        this.PromptSize = 200;
                        this.CountDowns = "";
                        this.StateColor="green";
                        if (this.reset == true) {
                            clearInterval(timer);
                        }
                            this.PromptSize = 200;
                            this.CountDowns = "";
                            this.StateColor = "green";
                            if (this.reset == true) {
                                clearInterval(timer);
                            }
                        }
                    }
                },
                1000
            );
            },
        },
        //更换当前铝框
        FrameStateUpdate(frameno) {
            FrameStateUpdate(frameno).then(res => {