| | |
| | | data:{"num":num} |
| | | }) |
| | | } |
| | | export function DeleteOutTask(id) { |
| | | return request({ |
| | | url: '/home/DeleteOutTask?id='+id, |
| | | method: 'post', |
| | | data:{"num":id} |
| | | }) |
| | | |
| | | } |
| | | |
| | | export function SoftEmergencyStop() { |
| | | return request({ |
| | |
| | | data:"" |
| | | }) |
| | | } |
| | | export function UpdateOutTask(id,state) { |
| | | return request({ |
| | | url: '/home/UpdateOutTask?id='+id+'&state='+state, |
| | | method: 'post', |
| | | data:"" |
| | | }) |
| | | } |
| | | |
| | | |
| | | |
| | |
| | | "Measure":"Measure", |
| | | "StorageCage":"StorageCage", |
| | | "Task queue":"Task queue", |
| | | "Task Id":"Task Id", |
| | | "Height":"Height", |
| | | "Thickness":"Thickness", |
| | | "Clear":"Clear", |
| | |
| | | "The glass ID already exists in the loading queue":"The glass ID already exists in the loading queue", |
| | | "This glass ID already exists in the sorting cage":"This glass ID already exists in the sorting cage", |
| | | "Outing Queue":"Outing Queue", |
| | | "Out Records":"Out Records", |
| | | "Enter the Frame No":"Enter the Frame No", |
| | | "Frame No":"Frame No", |
| | | "Glass information corresponding to aluminum frame":"Glass information corresponding to aluminum frame", |
| | |
| | | "Measure":"测量", |
| | | "StorageCage":"笼子", |
| | | "Task queue":"任务队列", |
| | | "Task Id":"任务编号", |
| | | "Height":"高", |
| | | "Thickness":"厚度", |
| | | "Clear":"清除", |
| | |
| | | "results":"结果", |
| | | "start work":"开始上片", |
| | | "stop work":"暂停上片", |
| | | |
| | | "Line":"线路", |
| | | "Please select a route":"请选择线路", |
| | | "This route already has a task":"此路线已存在任务", |
| | |
| | | "The glass ID already exists in the loading queue": "上片队列已存在此玻璃id", |
| | | "This glass ID already exists in the sorting cage": "理片笼内已存在此玻璃id", |
| | | "Outing Queue":"出片队列", |
| | | "Out Records":"出片记录", |
| | | "Enter the Aluminum Frame No":"请输入铝框id", |
| | | "Frame No":"铝框id", |
| | | "Glass information corresponding to aluminum frame":"铝框对应的玻璃信息", |
| | |
| | | left: 500px; |
| | | top: -10px; |
| | | } */ |
| | | |
| | | .blocks-img3 { |
| | | height: 90px; |
| | | max-width: 100vw; |
| | |
| | | font-weight: bold; |
| | | text-align: center; |
| | | } |
| | | |
| | | .el-table .el-table__body-wrapper tr { |
| | | height: 40px; /* 设置每行的高度为 30px */ |
| | | height: 40px; |
| | | /* 设置每行的高度为 30px */ |
| | | line-height: 30px; |
| | | } |
| | | |
| | | .el-table .el-table__body-wrapper td { |
| | | /* 确保单元格内容垂直居中 */ |
| | | } |
| | | /* 出片队列显示表 */ |
| | | </style> |
| | | <template> |
| | | <el-container> |
| | |
| | | :class="SoftEmergencyStopState == true ? 'hide' : ''"> |
| | | {{ $t('Task queue') }}</el-button> |
| | | |
| | | <!-- <el-button type="primary" @click="showform(5)" :disabled="SoftEmergencyStopState" style="z-index: 999;" |
| | | <el-button type="primary" @click="showform(5)" :disabled="SoftEmergencyStopState" style="z-index: 999;" |
| | | :class="SoftEmergencyStopState == true ? 'hide' : ''"> |
| | | {{ $t('Outing Queue') }}</el-button> --> |
| | | {{ $t('Outing Queue') }}</el-button> |
| | | |
| | | </div> |
| | | <div style="display: flex;align-items: center;overflow: hidden;"> |
| | |
| | | <el-button type="primary" @click="ManualTake()" :disabled="(this.LastQueue.state > 0)" |
| | | style="z-index: 999;">{{ |
| | | $t('Manual removal') }}</el-button> |
| | | <el-button type="primary" @click="AnewMeasure()" |
| | | style="z-index: 999;">{{ |
| | | <el-button type="primary" @click="AnewMeasure()" style="z-index: 999;">{{ |
| | | $t('Remeasure') }}</el-button> |
| | | <!-- 输入下拉框1 --> |
| | | <!-- SelectSetting --> |
| | | <label for="file-upload" style="font-weight: bold;font-size: 16px;margin-left: 50px;">{{ $t('Films') }}:{{SelectSetting.films }}</label> |
| | | <label for="file-upload" style="font-weight: bold;font-size: 16px;margin-left: 50px;">{{ $t('Films') |
| | | }}:{{ SelectSetting.films }}</label> |
| | | <el-select v-model="selectedValue1" :placeholder="$t('Films')"> |
| | | <el-option v-for="item in selectedOption1.films" :key="item.value" :label="item.films" |
| | | :value="item.films"> |
| | | </el-option> |
| | | </el-select> |
| | | <!-- 输入下拉框2 --> |
| | | <label for="file-upload" style="font-weight: bold;font-size: 16px;">{{ $t('Thickness') }}:{{SelectSetting.thickness }}mm</label> |
| | | <label for="file-upload" style="font-weight: bold;font-size: 16px;">{{ $t('Thickness') |
| | | }}:{{ SelectSetting.thickness }}mm</label> |
| | | <el-select v-model="selectedValue2" :placeholder="$t('Thickness')"> |
| | | <el-option v-for="item in selectedOption2.thickness" :key="item.value" :label="item.thickness" |
| | | :value="item.thickness"> |
| | |
| | | <!--显示--> |
| | | <div style="width:900px;height: 720px;border: 2px solid #d1d1d1;float: left;"> |
| | | <!--玻璃图 #81b337--> |
| | | <div :style="'top:10px;bottom: 10px;left: 10px;right: 10px;margin:' |
| | | <div |
| | | :style="'top:10px;bottom: 10px;left: 10px;right: 10px;margin:' |
| | | + ((720 - (this.LastQueue.glassheight / 25 * 7)) / 2) + 'px auto;width:' |
| | | + (this.LastQueue.glasswidth / 25 * 7) + 'px;height:' |
| | | + (this.LastQueue.glassheight / 25 * 7) + 'px;line-height: ' |
| | |
| | | {{ $t('Measure') }} |
| | | </div> |
| | | <div> |
| | | {{ $t('Width') + "*" + $t('Height') }}:{{ (this.LastQueue.glasswidth +this.LastQueue.glassheight) != 0 ? |
| | | {{ $t('Width') + "*" + $t('Height') }}:{{ (this.LastQueue.glasswidth |
| | | + this.LastQueue.glassheight) != |
| | | 0 ? |
| | | (this.LastQueue.glasswidth +"*" + this.LastQueue.glassheight) + "" : "" }} |
| | | </div> |
| | | |
| | |
| | | this.LastQueue.state > 0 ? $t('Matching successful') : |
| | | (this.LastQueue.state == 0 ? $t('Multiple data matching') : $t('Matching failed')) }}</span> |
| | | <br> --> |
| | | <el-table :data="this.tasklist3" :height="700" :row-class-name="rowClassName" style="width: 100%;padding:0;"> |
| | | <el-table :data="this.tasklist3" :height="700" :row-class-name="rowClassName" |
| | | style="width: 100%;padding:0;"> |
| | | <el-table-column prop="flowcard" :label="$t('Flowcard')"></el-table-column> |
| | | <el-table-column prop="mateid" :label="$t('Mateid')"></el-table-column> |
| | | <el-table-column prop="films" :label="$t('Films')"></el-table-column> |
| | |
| | | <el-table-column :min-width="80" prop="cage" :label="$t('Cage No')"></el-table-column> |
| | | <el-table-column :min-width="80" prop="cell" :label="$t('Slot No')"></el-table-column> |
| | | <el-table-column :min-width="80" prop="flowcard" :label="$t('Flowcard')"></el-table-column> |
| | | <el-table-column :min-width="80" prop="customer" :label="$t('Customer')"></el-table-column> |
| | | <el-table-column :min-width="80" prop="mateid" :label="$t('Mateid')"></el-table-column> |
| | | <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> |
| | |
| | | :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="AddOutGlass(scope.row.cell,scope.row.glasstype)">{{ $t('OutGlass') |
| | | }}</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') |
| | | }}</el-button> |
| | | <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" |
| | | :disabled="scope.row.number >= 1 ? false : true" |
| | | @click="AddOutGlass(scope.row.cell, scope.row.glasstype)">{{ $t('OutGlass') |
| | | }}</el-button> |
| | | </template> |
| | | </el-table-column> |
| | |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="customer" :label="$t('Customer')" width="150" align="center"> |
| | | <template slot-scope='scope'> |
| | | <div> |
| | | {{ scope.row.customer }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="mateid" :label="$t('Mateid')" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="tier" :label="$t('Tier')" align="center"> |
| | | <el-table-column prop="tier" :label="$t('Tier')" width="50" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="number" :label="$t('Number')" align="center"> |
| | | <el-table-column prop="number" :label="$t('Number')" width="50" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="cageno" :label="$t('Cage GlassNumber')" align="center"> |
| | | </el-table-column> |
| | |
| | | </el-table-column> |
| | | <el-table-column prop="line" :label="$t('Task Line')"> |
| | | </el-table-column> |
| | | <el-table-column width="380" :label="$t('Operate')"> |
| | | <el-table-column width="420" :label="$t('Operate')"> |
| | | |
| | | <template slot-scope='scope'> |
| | | <el-select v-model="selected[scope.$index]" :placeholder="$t('Line')" |
| | | <el-select v-model="selected[scope.$index]" :placeholder="$t('Line')" style="min-width: 70px; max-width: 70px;" |
| | | 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="StartChange(scope.row.flowcard, scope.row.orderstate)"> |
| | | v-show="scope.row.state >= 0 ? true : false" |
| | | @click="StartChange(scope.row.flowcard, scope.row.orderstate)"> |
| | | {{ scope.row.orderstate > 0 ? $t('stop work') : $t('start work') }}</el-button> |
| | | |
| | | |
| | |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-dialog> |
| | | |
| | | <!-- 出片队列显示表 --> |
| | | <!-- <el-dialog :visible.sync="Outqueue" :title="$t('Outing Queue')" top="5vh"> |
| | | <el-table :data="tableData2" style="width: 100%;margin-bottom: 20px;" row-key="id" border lazy |
| | | :tree-props="{ children: 'glassinfo', hasChildren: 'hasChildren' }"> |
| | | <el-table-column prop="flowcard" :label="$t('Order')" width="150" align="center"> |
| | | <template slot-scope='scope'> |
| | | <div> |
| | | <el-dialog :visible.sync="Outqueue" top="5vh" style="height: 100%; overflow-y: auto;"> |
| | | <!-- //出片记录 --> |
| | | <label style="font-weight: bold; font-size: 18px;">{{$t('Out Records')}}</label> |
| | | <el-table :data="OutLog" style="width: 100%;margin-bottom: 20px;" row-key="id" border lazy> |
| | | <el-table-column prop="id" :label="$t('Task Id')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.id }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="flowcard" :label="$t('Flowcard')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.flowcard }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="mateid" :label="$t('Mateid')" align="center"> |
| | | <el-table-column prop="customer" :label="$t('Customer')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.customer }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column prop="tier" :label="$t('Tier')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.tier }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="number" :label="$t('Number')" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="cageno" :label="$t('Cage GlassNumber')" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="finishnumber" :label="$t('Finish No')" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="mateid" :label="$t('Mate No')" align="center"> |
| | | </el-table-column> |
| | | <el-table-column prop="films" :label="$t('Films')" align="center"> |
| | | </el-table-column> |
| | | |
| | | <el-table-column prop="thickness" :label="$t('Thickness')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.thickness }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="width" :label="$t('Width')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.width }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="height" :label="$t('Height')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.height }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="state" :label="$t('Task State')" align="center"> |
| | | <el-table-column prop="cell" :label="$t('Slot No')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.cell }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="films" :label="$t('Films')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.films }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="mateid" :label="$t('Mateid')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.mateid }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | </el-table> |
| | | <label style="font-weight: bold; font-size: 18px;">{{$t('Outing Queue')}}</label> |
| | | |
| | | <!-- //出片队列 --> |
| | | <el-table :data="OutTask" style="width: 100%;margin-bottom: 20px;" row-key="id" border lazy> |
| | | <el-table-column prop="id" :label="$t('Task Id')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.id }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="flowcard" :label="$t('Flowcard')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.flowcard }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="customer" :label="$t('Customer')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.customer }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="tier" :label="$t('Tier')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.tier }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column prop="thickness" :label="$t('Thickness')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.thickness }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="width" :label="$t('Width')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.width }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="height" :label="$t('Height')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.height }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="films" :label="$t('Films')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.films }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="mateid" :label="$t('Mateid')" align="center"> |
| | | <template slot-scope="scope"> |
| | | <div :style="{width: '105%', height: '100%', lineHeight: '38px' }"> |
| | | {{ scope.row.mateid }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="task_state" :label="$t('Task State')" align="center"> |
| | | <template slot-scope='scope'> |
| | | <div |
| | | :style="{ backgroundColor: scope.row.state === 0 ? '' : '#00FFFF', width: '105%', height: '125%', lineHeight: '50px' }"> |
| | | {{ scope.row.state >= 0 ? scope.row.state == 0 ? $t('Stop') : $t('Start') : "" }} |
| | | :style="{backgroundColor: scope.row.state === 0 ? '#00FFFF' : '', width: '105%', height: '100%%', lineHeight: '38px' }"> |
| | | {{scope.row.state == 0 ? $t('Waiting') : $t('Suspend') }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="method" :label="$t('Task Method')" align="center"> |
| | | <el-table-column width="250" :label="$t('Operate')"> |
| | | <template slot-scope='scope'> |
| | | <div style="text-align: center;width: 105%;"> |
| | | {{ scope.row.state >= 0 ? (scope.row.method == 0 ? $t('Out') : $t('All Out')) : "" }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="line" :label="$t('Task Line')"> |
| | | </el-table-column> |
| | | <el-table-column width="380" :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="StartChange(scope.row.flowcard, scope.row.orderstate)"> |
| | | {{ scope.row.orderstate > 0 ? $t('stop work') : $t('start work') }}</el-button> |
| | | |
| | | |
| | | <el-button type="primary" style="padding: 4px 10px;font-size: 12px;" |
| | | <el-button type="primary" style="padding: 4px 10px;font-size: 12px;height:42px;width: 70px;" |
| | | v-show="scope.row.state >= 0 ? true : false" |
| | | @click="ModeChange(scope.row.flowcard, scope.row.method)"> |
| | | {{ $t('Mode Change') }}</el-button> |
| | | @click="UpdateOutTask(scope.row.id, scope.row.state)"> |
| | | {{ scope.row.state == 0 ? $t('Suspend') : $t('Start') }}</el-button> |
| | | |
| | | <el-button type="primary" style="padding: 4px 10px;font-size: 12px;margin-left: 6px;" |
| | | v-show="scope.row.state >= 0 ? true : false" |
| | | @click="ClaimTasks(scope.row.flowcard, scope.row.state, selected[scope.$index], scope.row.line)"> |
| | | {{ 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" @click="deleteTasks(scope.row.flowcard)"> |
| | | <el-button type="primary" style="padding: 4px 10px;font-size: 12px;height:42px;width: 70px;" |
| | | v-show="scope.row.state >= 0 ? true : false" @click="DeleteOutTask(scope.row.id)"> |
| | | {{ $t('langDelete') }}</el-button> |
| | | |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </el-dialog> --> |
| | | </el-dialog> |
| | | <!-- 人工匹配 --> |
| | | <el-dialog :visible.sync="StorageCageAdd" :title="$t('StorageCageAdd')" top="5vh" width="80%"> |
| | | <div style="display: flex;height: 40px;line-height: 40px;"> |
| | |
| | | Disabled, SelectPermissionByUserName, currentUsername, CompleteQueue, |
| | | isAllowReorderings, |
| | | |
| | | UpdateStroageCageByCell,AddOutGlass, FinishTask,TerminateTask, SelectGlassInfo, StorageCageAddGlass, ClaimTasks, ModeChange, UpdateQueue, importData, ManualTake, AnewMeasure, StartChange, deleteTasks,SaveMeasure |
| | | UpdateStroageCageByCell, AddOutGlass, FinishTask, TerminateTask, SelectGlassInfo, StorageCageAddGlass, ClaimTasks, ModeChange, UpdateQueue, importData, ManualTake, AnewMeasure, StartChange,UpdateOutTask,DeleteOutTask, deleteTasks, SaveMeasure |
| | | } from "../../api/home"; |
| | | |
| | | |
| | |
| | | dataList: [], |
| | | tableData1: [], |
| | | tableData2: [], |
| | | OutTask: [], |
| | | OutLog: [], |
| | | Measuermode: false, |
| | | confirm1: false, |
| | | confirm2: false, |
| | |
| | | } |
| | | |
| | | this.tableData1 = obj.OrderTask[0]; |
| | | this.OutTask = obj.OutTask[0]; |
| | | this.OutLog = obj.OutLog[0]; |
| | | |
| | | |
| | | |
| | | this.tableData2 = obj.OrderTask[0]; |
| | | this.LastQueue = obj.LastQueue[0]; |
| | | |
| | |
| | | }); |
| | | } |
| | | }, |
| | | //选择开始工程 |
| | | //开始/暂停出片队列 |
| | | UpdateOutTask(id, state) { |
| | | console.log(id + " 状态" + state); |
| | | if( state == 0){ |
| | | state=2 |
| | | }else{ |
| | | state=0 |
| | | } |
| | | UpdateOutTask(id, state).then(res => { |
| | | if (res.data.message == 200) { |
| | | this.$message.success(this.$t('Operation successful')); |
| | | } |
| | | }); |
| | | |
| | | }, |
| | | //删除工程 |
| | | deleteTasks(flowcard) { |
| | | deleteTasks(flowcard).then(res => { |
| | | console.log("@" + flowcard + "@"); |
| | |
| | | } |
| | | }); |
| | | }, |
| | | //删除出片队列 |
| | | DeleteOutTask(id) { |
| | | DeleteOutTask(id).then(res => { |
| | | if (res.data.message == 200) { |
| | | this.$message.success(this.$t('Operation successful')); |
| | | } |
| | | }); |
| | | }, |
| | | |
| | | //保存测量膜系的参数 |
| | | SaveMeasure(films,thickness) { |
| | | console.log('Films:', films); // 打印 films |
| | |
| | | import com.example.springboot.entity.Glass; |
| | | import com.example.springboot.entity.GlassInfo; |
| | | import com.example.springboot.entity.MeasureSetting; |
| | | import com.example.springboot.entity.OutTask; |
| | | import com.example.springboot.entity.Out_slice; |
| | | import com.example.springboot.entity.Queue; |
| | | import com.example.springboot.entity.StorageCage; |
| | |
| | | List<StorageTask> StoragTaskeTaskOut = storageCageService.SelectStorageTask(1); |
| | | jsonObject.append("StoragTaskeTaskOut", StoragTaskeTaskOut); |
| | | |
| | | // 查询当前出片队列 |
| | | List<Map> OutTask = storageCageService.SelectOutTask(); |
| | | jsonObject.append("OutTask", OutTask); |
| | | |
| | | // 查询最后6次出片记录 |
| | | List<Map> OutLog = storageCageService.SelectOutLog(); |
| | | jsonObject.append("OutLog", OutLog); |
| | | |
| | | |
| | | // 查询所有玻璃厚度和膜系 |
| | | List<GlassInfo> SelectMeasure = storageCageService.SelectMeasure(); |
| | | jsonObject.append("SelectMeasure", SelectMeasure); |
| | |
| | | |
| | | // 开始工程 |
| | | @PostMapping("/StartChange") |
| | | public Result StartChange(String flowcard,int orderstate) { |
| | | public Result StartChange(String flowcard,Integer orderstate) { |
| | | return storageCageService.StartChange(flowcard,orderstate); |
| | | } |
| | | // 开始/暂停出片队列 |
| | | @PostMapping("/UpdateOutTask") |
| | | public Result UpdateOutTask(Integer id,Integer state) { |
| | | return storageCageService.UpdateOutTask(id,state); |
| | | } |
| | | |
| | | // 重新测量 |
| | |
| | | System.out.println("控制器:" + num); |
| | | return storageCageService.deleteTasks(num); |
| | | } |
| | | //删除出片队列 |
| | | @PostMapping("/DeleteOutTask") |
| | | public Result DeleteOutTask(Integer id) { |
| | | System.out.println("控制器:" + id); |
| | | return storageCageService.DeleteOutTask(id); |
| | | } |
| | | |
| | | // 保存膜系设置 |
| | | @PostMapping("/SaveMeasure") |
| | |
| | | private Integer method;// 出片方式 |
| | | private Date starttime;// 任务领取时间 |
| | | private Integer orderstate;// 任务领取时间 |
| | | private String customer;// 客户 |
| | | |
| | | |
| | | |
| | |
| | | private Integer cageno;//笼内数量 |
| | | private Integer method;//出片方式 |
| | | private Integer orderstate;//出片方式 |
| | | private String customer;//客户 |
| | | |
| | | } |
| | |
| | | * 配片ID |
| | | */ |
| | | private Integer mateid; |
| | | /** |
| | | * 客户名称 |
| | | */ |
| | | private String customer; |
| | | |
| | | } |
| | |
| | | private Integer method;// 出片方式 |
| | | private Date starttime;// 任务领取时间 |
| | | private Integer orderstate;// 任务领取时间 |
| | | private String customer;// 客户 |
| | | |
| | | |
| | | |
| | |
| | | private Integer cageno;//笼内数量 |
| | | private Integer method;//出片方式 |
| | | private Integer orderstate;//出片方式 |
| | | private String customer;//客户 |
| | | |
| | | } |
| | |
| | | Short SelectOutingQueueCount(String frameNo); |
| | | |
| | | // 查询理片笼内信息 |
| | | @Select("select * from storage_cage") |
| | | @Select("select *,b.customer from storage_cage a left join flowcard b on a.flowcard=b.flowcard") |
| | | List<StorageCage> SelectStorageCageInfo(); |
| | | |
| | | // 删除格子内玻璃信息 |
| | |
| | | void updateStroageCageByCell(Integer cell, Integer num); |
| | | |
| | | // 计算格子内剩余宽度 |
| | | @Update("update storage_cage set width=4300-if(glasswidth is null,0,glasswidth+300)*number where cell=#{cell}") |
| | | @Update("update storage_cage set width=4300-if(glasswidth is null,0,glasswidth+300)*number+300 where cell=#{cell}") |
| | | void UpdateStroageCageWidthByCell(Integer cell); |
| | | |
| | | // 根据任务类型获取任务 |
| | |
| | | @Update("update storage_cage set glasstype=#{glassInfo.glasstype},mateid=#{glassInfo.mateid},glass_id=#{glassInfo.glassid},flowcard=#{glassInfo.flowcard},glasswidth=#{glassInfo.width},glassheight=#{glassInfo.height},thickness=#{glassInfo.thickness},films=#{glassInfo.films},number=0 where cell=#{cell}") |
| | | void StorageCageAddGlass(String cell, GlassInfo glassInfo); |
| | | |
| | | @Select("select * from flowcard where state!=2") |
| | | @Select("select id,flowcard,Customer,totaltier,line,state,method,starttime,orderstate from flowcard where state!=2") |
| | | List<Flowcard> SelectOrderTask(); |
| | | |
| | | // @Select("select gi.*,sum(sc.number) as cageno from glassinfo gi left join storage_cage sc on gi.glasstype=sc.glasstype where gi.flowcard=#{flowcard} group by gi.id order by gi.mateid,gi.tier") |
| | | // List<GlassInfo> SelectOrderView(String flowcard); |
| | | @Select("select gi.id, gi.glasstype, gi.mateid, gi.glassid, gi.tier, gi.films, gi.width, gi.height, gi.thickness, gi.number, gi.finishnumber, gi.sumtier, gi.measurenumber,sum(sc.number) as cageno,IFNULL(c.orderstate,0) as orderstate from glassinfo gi left join storage_cage sc on gi.glasstype=sc.glasstype left join flowcard c on gi.flowcard=c.flowcard where gi.flowcard=#{flowcard} group by gi.id,orderstate order by gi.mateid,gi.tier") |
| | | @Select("select gi.id,gi.customer, gi.glasstype, gi.mateid, gi.glassid, gi.tier, gi.films, gi.width, gi.height, gi.thickness, gi.number, gi.finishnumber, gi.sumtier, gi.measurenumber,sum(sc.number) as cageno,IFNULL(c.orderstate,0) as orderstate from glassinfo gi left join storage_cage sc on gi.glasstype=sc.glasstype left join flowcard c on gi.flowcard=c.flowcard where gi.flowcard=#{flowcard} group by gi.id,orderstate order by gi.mateid,gi.tier") |
| | | List<GlassInfo> SelectOrderView(String flowcard); |
| | | |
| | | |
| | |
| | | // int deleteGlassinfo(String flowcard); |
| | | @Update("Update flowcard set state=2, flowcard=CONCAT('已删除', #{flowcard}),orderstate=0 where flowcard=#{flowcard}") |
| | | int deleteFlowcard(String flowcard); |
| | | |
| | | //修改出片队列状态 |
| | | @Update("Update out_task set task_state=#{state} where id=#{id}") |
| | | int UpdateOutTask(Integer id, Integer state); |
| | | //删除出片队列 |
| | | @Delete("DELETE from out_task where id=#{id}") |
| | | int DeleteOutTask(Integer id); |
| | | @Update("Update glassinfo set flowcard=CONCAT('已删除', #{flowcard}) where flowcard=#{flowcard}") |
| | | int deleteGlassinfo(String flowcard); |
| | | //人工匹配修改一条 |
| | |
| | | void OutGlassNo(Integer glasstype); |
| | | |
| | | // 添加出片队列 |
| | | @Insert("INSERT INTO glassinfo (`flowcard`, `glasstype`, `mateid`, `glassid`, `tier`, `films`, `width`, `height`, `thickness`, `number`, `finishnumber`, `sumtier`, `measurenumber`)" |
| | | @Insert("INSERT INTO glassinfo (`flowcard`, `glasstype`, `mateid`, `glassid`, `tier`, `films`, `width`, `height`, `thickness`, `number`, `finishnumber`, `sumtier`, `measurenumber`,Customer)" |
| | | + |
| | | " VALUES (#{flowcard}, #{glasstype}, #{mateid}, #{glassid}, #{tier}, #{films}, CASE WHEN #{width} > #{height} THEN #{width} ELSE #{height} END, CASE WHEN #{height} > #{width} THEN #{width} ELSE #{height} END, #{thickness}, #{number}, 0, #{sumtier}, 0)") |
| | | " VALUES (#{flowcard}, #{glasstype}, #{mateid}, #{glassid}, #{tier}, #{films}, CASE WHEN #{width} > #{height} THEN #{width} ELSE #{height} END, CASE WHEN #{height} > #{width} THEN #{width} ELSE #{height} END, #{thickness}, #{number}, 0, #{sumtier}, 0, #{Customer})") |
| | | void AddGlassinfo(String flowcard, Integer glasstype, Integer mateid, String glassid, Integer tier, String films, |
| | | Double width, Double height, Double thickness, Integer number, Integer sumtier); |
| | | Double width, Double height, Double thickness, Integer number, Integer sumtier,String Customer); |
| | | |
| | | // 最大玻璃类型 |
| | | @Select("select max(glasstype)+1 from glassinfo") |
| | |
| | | List<StorageCage> SelectStorageCageByCage(Integer cage); |
| | | |
| | | // 添加出片队列 |
| | | @Insert("INSERT INTO flowcard(`flowcard`, `totaltier`, `number`, `line`, `state`, `method`, `starttime`) " |
| | | +" select #{flowcard}, 0, #{number}, 0, 0, 0, now() where 0=( select count(*) from flowcard where flowcard=#{flowcard});") |
| | | void InsertFlowcard(String flowcard, Integer number); |
| | | @Insert("INSERT INTO flowcard(`flowcard`, `totaltier`, `number`, `line`, `state`, `method`, `starttime`,Customer) " |
| | | +" select #{flowcard}, 0, #{number}, 0, 0, 0, now(),#{Customer} where 0=( select count(*) from flowcard where flowcard=#{flowcard});") |
| | | void InsertFlowcard(String flowcard, Integer number,String Customer); |
| | | |
| | | @Delete("DELETE FROM queue WHERE id = (SELECT id FROM ( SELECT id FROM queue WHERE glasstype = #{glassId} ORDER BY time ASC LIMIT 1) AS temp);") |
| | | void DeletequeueByGlassid(String glassId); |
| | |
| | | //修改测量设定膜系和厚度 |
| | | @Update("UPDATE measuresetting SET `films` = #{films}, `thickness` = #{thickness} WHERE `id` = 1;") |
| | | int SaveMeasure(String films, Integer thickness); |
| | | //查询出片队列数据 |
| | | @Select("SELECT a.id,a.flowcard,customer,a.mateid,a.tier,b.films,b.thickness,b.width,b.height,a.task_state as state FROM `out_task` a left join glassinfo b on a.glasstype=b.glasstype where task_state!=1 ORDER BY task_state") |
| | | List<Map>SelectOutTask(); |
| | | //查询出片记录数据 |
| | | @Select(" select a.id,a.flowcard,customer,a.mateid,a.tier,b.films,b.thickness,b.width,b.height,a.task_state,a.shelf_rack as cell from storage_task a left join glassinfo b on a.glasstype=b.glasstype where task_state=1 and task_type=1 ORDER BY a.id desc LIMIT 6;") |
| | | List<Map>SelectOutLog(); |
| | | } |
| | |
| | | GlassInfoMapper.updatemeasurenumber(GlassInfo.getId()); |
| | | |
| | | System.out.println("添加条数:"+insertCount); |
| | | System.out.println("匹配成功"); |
| | | System.out.println("匹配成功测量宽高:"+width+" "+height); |
| | | System.out.println(GlassInfo.getGlassid()); |
| | | return true; |
| | | } else if (Result.size() > 1) { |
| | |
| | | |
| | | } else { |
| | | // 判断玻璃是否进入大片笼 |
| | | if (glassInfo.getThickness() > 4 &&glassInfo.getWidth()>= 1500) { |
| | | if (glassInfo.getThickness() > 14) { |
| | | cage = albaniaMapper.SelectNewCell(3, 5); |
| | | } else { |
| | | cage = albaniaMapper.SelectNewCell(0, 4); |
| | | |
| | | // System.out.println(cage + "理片笼判断"); |
| | | } |
| | | //当小片笼子不够,则符合条件的可以进入大片笼 |
| | | if(cage==null&&glassInfo.getWidth()>= 1500&&glassInfo.getThickness() > 4){ |
| | | cage = albaniaMapper.SelectNewCell(3, 5); |
| | | } |
| | | // 当返回的格子号为空时,返回400笼子已满 |
| | | if (cage != null) { |
| | | albaniaMapper.AddCage(cage.getId(), glassid, width, height, 1, glasstype, 0, thickness, |
| | |
| | | return storageTasks; |
| | | } |
| | | |
| | | //查询出片队列 |
| | | public List<Map> SelectOutTask() { |
| | | return homeMapper.SelectOutTask(); |
| | | } |
| | | //查询出片队列 |
| | | public List<Map> SelectOutLog() { |
| | | return homeMapper.SelectOutLog(); |
| | | } |
| | | |
| | | // 查询进/出片任务 |
| | | public List<GlassInfo> SelectMeasure() { |
| | | return homeMapper.SelectMeasure(); |
| | |
| | | // 删除数据 |
| | | Map<String, Object> map = new HashMap<>(); |
| | | // QueueMapper.DeleteQueue(); |
| | | System.out.println("人工匹配ID:"+glassInfo.getMateid()+"膜系:"+glassInfo.getFilms()); |
| | | int count = homeMapper.SelectQueue(); |
| | | if (count > 0) { |
| | | homeMapper.UpdateQueue(glassInfo.getFlowcard(), glassInfo.getWidth(), glassInfo.getHeight(), |
| | |
| | | homeMapper.StartChange(flowcard, orderstate); |
| | | Map<String, Object> map = new HashMap<>(); |
| | | int state = homeMapper.selectStartChange(flowcard); |
| | | map.put("message", "200"); |
| | | return Result.success(map); |
| | | } |
| | | // 开始/暂停出片队列 |
| | | public Result UpdateOutTask(Integer id, Integer state) { |
| | | homeMapper.UpdateOutTask(id, state); |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("message", "200"); |
| | | return Result.success(map); |
| | | } |
| | | //删除出片队列 |
| | | public Result DeleteOutTask(Integer id) { |
| | | homeMapper.DeleteOutTask(id); |
| | | Map<String, Object> map = new HashMap<>(); |
| | | map.put("message", "200"); |
| | | return Result.success(map); |
| | | } |
| | |
| | | && |
| | | item.get("films") != null && item.get("base") != null && item.get("height") != null |
| | | && item.get("thickness") != null && item.get("quantity") != null |
| | | && item.get("matching") != null)) |
| | | && item.get("matching") != null)&& item.get("Customer") != null) |
| | | .collect(Collectors.toList()); |
| | | |
| | | TypeDatas.forEach(item -> { |
| | |
| | | glasstype = Integer.valueOf(value); |
| | | } |
| | | // |
| | | |
| | | homeMapper.AddGlassinfo(map.get("order").toString(), glasstype, |
| | | Integer.parseInt(map.get("matching").toString()) // 需要计算 配片ID |
| | | , map.get("order").toString() + "-" + count + "" // 需要计算 玻璃ID |
| | | , Integer.parseInt(map.get("tier").toString()), map.get("films").toString(), |
| | | Double.parseDouble(map.get("base").toString()), Double.parseDouble(map.get("height").toString()), |
| | | Double.parseDouble(map.get("thickness").toString()), |
| | | Integer.parseInt(map.get("quantity").toString()), groupby.get(tierkey));// 需要计算总层数 |
| | | Integer.parseInt(map.get("quantity").toString()), groupby.get(tierkey),map.get("Customer").toString());// 需要计算总层数 |
| | | // 订单内总层数 |
| | | homeMapper.InsertFlowcard(map.get("order").toString(), OrderFinishedProduct.get(tierkey + "_Sum")); |
| | | homeMapper.InsertFlowcard(map.get("order").toString(), OrderFinishedProduct.get(tierkey + "_Sum"), map.get("Customer").toString()); |
| | | count++; |
| | | } |
| | | Map<String, Object> ResultCode = new HashMap<>(); |