已重命名25个文件
已添加2个文件
已修改5个文件
已删除1个文件
| | |
| | | import clearTabIndex from './utils/clearTabIndex.js' // å é¤el-tooltip tabindex |
| | | clearTabIndex.install(Vue) |
| | | |
| | | import vGanttChart from './components/v-gantt-chart/index' // å¼ç¨ä¿®æ¹è¿çgantt |
| | | Vue.use(vGanttChart) |
| | | |
| | | new Vue({ |
| | | el: '#app', |
| | | router, |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div id="app"> |
| | | <div class="app-container"> |
| | | <el-tabs> |
| | | <el-form ref="form" :model="form" :rules="rulescx" label-width="100px" size="medium"> |
| | | <el-row> |
| | | <el-col :span="6" :offset="1"> |
| | | <el-form-item prop="WorkShop" label="ç产车é´"> |
| | | <el-select v-model="form.WorkShop" style="width:257px" filterable> |
| | | <el-option |
| | | v-for="item in list" |
| | | :key="item.CODE" |
| | | :label="item.NAME" |
| | | :value="item.CODE" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="6" :offset="1"> |
| | | <el-form-item prop="PartNumber" label="产åç¼ç "> |
| | | <el-input v-model="form.PartNumber" placeholder="请è¾å
¥" style="width:257px" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | <el-col :span="5" :offset="1"> |
| | | <el-form-item prop="PartName" label="产ååç§°"> |
| | | <el-input v-model="form.PartName" placeholder="请è¾å
¥" style="width:257px" /> |
| | | </el-form-item> |
| | | </el-col> |
| | | |
| | | <el-col :span="3" :offset="1"> |
| | | <el-button type="text" class="marginLeft rg color" @click="resetFormcx()">éç½®</el-button> |
| | | <el-button |
| | | class="filter-item marginLeft button_style rg" |
| | | size="medium" |
| | | icon="el-icon-search" |
| | | @click="Search()" |
| | | >æ¥è¯¢ |
| | | </el-button> |
| | | </el-col> |
| | | </el-row> |
| | | </el-form> |
| | | </el-tabs> |
| | | <el-table |
| | | class="table" |
| | | :data="mn_data" |
| | | :header-cell-style="{background:'#f5f5f5'}" |
| | | height="280" |
| | | @sort-change="sortChange" |
| | | > |
| | | <el-table-column width="34" fixed> |
| | | <template slot-scope="scope"> |
| | | <el-radio |
| | | v-model="radio" |
| | | :label="scope.$index" |
| | | class="textRadio" |
| | | @change.native="getCurrentRow(scope.row)" |
| | | > |
| | | </el-radio> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="åºå·" |
| | | prop="AdvaScheSeq" |
| | | width="80" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column |
| | | label="ä¼å
级" |
| | | prop="AdvaSchePiroQue" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.AdvaSchePiroQue == 'æ£å¸¸'"> |
| | | <span class="icon_true" /> |
| | | {{ scope.row.AdvaSchePiroQue }} |
| | | </div> |
| | | <div v-if="scope.row.AdvaSchePiroQue == 'ç´§æ¥'"> |
| | | <span class="icon_gz" /> |
| | | {{ scope.row.AdvaSchePiroQue }} |
| | | </div> |
| | | <div v-if="scope.row.AdvaSchePiroQue == 'ç¹æ¥'"> |
| | | <span class="icon_ty" /> |
| | | {{ scope.row.AdvaSchePiroQue }} |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="ç产车é´" |
| | | prop="AdvaScheWorkShop" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column |
| | | label="å·¥åç¼å·" |
| | | prop="AdvaScheWorkCode" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column |
| | | label="产åç¼ç " |
| | | prop="AdvaSchePartNumber" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column |
| | | label="产ååç§°" |
| | | prop="AdvaSchePartName" |
| | | width="150" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column |
| | | label="产åè§æ ¼" |
| | | prop="AdvaSchePartSpec" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column |
| | | label="æ°é" |
| | | prop="AdvaScheQty" |
| | | width="80" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | /> |
| | | <el-table-column |
| | | label="è¦æ±äº¤ä»æ¶é´" |
| | | prop="AdvaScheEndDate" |
| | | width="200" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | > |
| | | <template slot-scope="scope">{{ scope.row.AdvaScheEndDate }}</template> |
| | | </el-table-column> |
| | | <!-- <el-table-column label="ç»ææ¥æ" prop="AdvaScheEndDate"> |
| | | </el-table-column>--> |
| | | <el-table-column label="交ä»ç¶æ" prop="AdvaScheSpeed" sortable="custom" :sort-orders="['ascending', 'descending']"> |
| | | <template slot-scope="scope"> |
| | | <div v-if="scope.row.Flag == 'Y' && scope.row.AdvaScheStus != 'NEW'"> |
| | | <span class="icon_true" /> æ£å¸¸ |
| | | </div> |
| | | <div v-if="scope.row.Flag == 'N' && scope.row.AdvaScheStus != 'NEW'"> |
| | | <span v-if="scope.row.Flag == 'N'" class="icon_ty" />å»¶æ |
| | | </div> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="æç¨å·¥åº" |
| | | prop="AdvaScheBotProcName" |
| | | sortable="custom" |
| | | :sort-orders="['ascending', 'descending']" |
| | | width="160" |
| | | /> |
| | | <el-table-column label="计åæç¨æ¶é´" width="200" sortable="custom" :sort-orders="['ascending', 'descending']"> |
| | | <template |
| | | slot-scope="scope" |
| | | >{{ scope.row.AdvaSchePCStartDate }} ~ {{ scope.row.AdvaSchePCEndDate }} |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | <!-- <pagination-view--> |
| | | <!-- :currentPage="form.page"--> |
| | | <!-- :total="total"--> |
| | | <!-- @size-change="sizeChange"--> |
| | | <!-- @current-change="pageChange"--> |
| | | <!-- ></pagination-view>--> |
| | | </div> |
| | | |
| | | <el-dialog title="æ¥ç" :visible.sync="showDialog" width="60%"> |
| | | <el-table class="table" :data="look_data" :header-cell-style="{background:'#f5f5f5'}"> |
| | | <el-table-column label="åºå·" prop="AdvaTaskSeq" width="80" /> |
| | | <el-table-column label="å·¥åç¼å·" prop="AdvaTaskWork" /> |
| | | <el-table-column label="å·¥åç¶æ" prop="AdvaTaskStatus" /> |
| | | <el-table-column label="产åç¼ç " prop="AdvaTaskPartNumber" /> |
| | | <el-table-column label="å¼å§æ¶é´" prop="AdvaTaskStartDate" width="160" /> |
| | | <el-table-column label="ç»ææ¶é´" prop="AdvaTaskEndDate" width="160" /> |
| | | <el-table-column label="ç产æ°é" prop="AdvaTaskQty" /> |
| | | <el-table-column label="ç产工åº" prop="AdvaTaskBotProcName" /> |
| | | </el-table> |
| | | <div style="overflow: hidden"> |
| | | <!-- <pagination-view--> |
| | | <!-- :currentPage="search_from.page"--> |
| | | <!-- :total="look_total"--> |
| | | <!-- @size-change="sizeChange_look"--> |
| | | <!-- @current-change="pageChange_look"--> |
| | | <!-- ></pagination-view>--> |
| | | </div> |
| | | </el-dialog> |
| | | |
| | | <el-tabs v-show="show"> |
| | | <el-row style="margin-bottom:20px"> |
| | | <!-- <el-col :span="2"> |
| | | <el-input v-model="form.Seach" @keyup.enter.native="SeachKey" placeholder="请è¾å
¥å
³é®è¯" size="small"></el-input> |
| | | </el-col>--> |
| | | <el-col :span="7" :offset="1"> |
| | | <span class="t_size" style="margin-left:7px">æç¨æ¥æ</span> |
| | | <el-date-picker |
| | | v-model="value1" |
| | | type="daterange" |
| | | range-separator="~" |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | end-placeholder="ç»ææ¥æ" |
| | | size="small" |
| | | :picker-options="pickerOptions1" |
| | | @change="change_time" |
| | | /> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <span class="t_size">æç¨æ¹å¼</span> |
| | | <el-select v-model="types" size="small" style="width:120px" @change="changeTypes"> |
| | | <el-option value="N" label="设å¤ä¼å
" /> |
| | | <el-option value="Y" label="æ¶é´ä¼å
" /> |
| | | </el-select> |
| | | </el-col> |
| | | |
| | | <el-col :span="3" :offset="1"> |
| | | <div style="height:32px;"> |
| | | <span class="t_size">æ¶é´å»åº¦</span> |
| | | <select id="scale" v-model.number="scale"> |
| | | <option v-for="i in scaleList" :key="i">{{ i }}</option> |
| | | </select> |
| | | <span class="t_size">åé</span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <div style="height:32px;"> |
| | | <span class="t_size">æ¢åæ¶é´</span> |
| | | <el-input |
| | | id="scale" |
| | | v-model="times" |
| | | type="number" |
| | | size="mini" |
| | | style="display:inline-block;width:80px;" |
| | | @change="no_zero" |
| | | /> |
| | | <span class="t_size">åé</span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <div style="height:32px;line-height: 28px;"> |
| | | <span class="t_size">颿è¿åº¦</span> |
| | | <span> |
| | | <span style="text-decoration:underline;">{{ real_num }}</span> / |
| | | <span style="text-decoration:underline">{{ meter }}</span> |
| | | </span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | icon="el-icon-document-remove" |
| | | style="margin-left:20px;" |
| | | @click="click_schedule" |
| | | >颿 |
| | | </el-button> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | icon="el-icon-document-checked" |
| | | @click="click_yes" |
| | | >æäº¤ |
| | | </el-button> |
| | | <p /> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row /> |
| | | </el-tabs> |
| | | <div v-show="show" class="container"> |
| | | <v-gantt-chart |
| | | :start-time="time_data[0]" |
| | | :end-time="time_data[1]" |
| | | :cell-width="cellWidth" |
| | | :cell-height="cellHeight" |
| | | :time-lines="timeLines" |
| | | :title-height="titleHeight" |
| | | :scale="scale" |
| | | :title-width="titleWidth" |
| | | show-current-time |
| | | :hide-header="hideHeader" |
| | | :data-key="dataKey" |
| | | :array-keys="arrayKeys" |
| | | :scroll-to-postion="positionA" |
| | | :datas="bm_data" |
| | | @scrollLeft="scrollLeftA" |
| | | > |
| | | <!-- <template v-slot:block="{data,item}"> --> |
| | | <template slot="block" slot-scope="{data,item}"> |
| | | <Test |
| | | :data="data" |
| | | :update-time-lines="updateTimeLines" |
| | | :cell-height="cellHeight" |
| | | :current-time="currentTime" |
| | | :item="item" |
| | | /> |
| | | </template> |
| | | <template slot="left" slot-scope="{data}"> |
| | | <div class="name"> |
| | | <div class="carId"> |
| | | <el-checkbox |
| | | v-model="data.status" |
| | | style="margin-right:5px;" |
| | | @change="click_box(data)" |
| | | /> |
| | | {{ data.id }} {{ data.name }} |
| | | </div> |
| | | <div class="speed"> |
| | | <el-tooltip class="item" effect="dark" content="æ¥ç" placement="top"> |
| | | <el-button type="text" size="mini" @click="look(data)"> |
| | | <i class="el-icon-document size i-color" /> |
| | | </el-button> |
| | | </el-tooltip> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <template slot="title"> |
| | | <span class="tc">å·¥ä½å表</span> |
| | | |
| | | <el-checkbox v-model="all_status" class="box_style" @change="changeLift()" /> |
| | | <input v-model.number="cellWidth" type="range" min="20" max="100" class="box_styles"> |
| | | </template> |
| | | </v-gantt-chart> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import Test from '@/components/Test' |
| | | // import PaginationView from '@/components/PaginationView' |
| | | // import TestLeft from '@/components/TestLeft' |
| | | // import { mockDatas } from './index1.js' |
| | | import dayjs from 'dayjs' |
| | | // import automaticScheduling from '@/api/automaticScheduling' |
| | | |
| | | const scaleList = `30,60,240,360`.split(',').map(n => parseInt(n)) |
| | | const timeList = `0,30,60,120,240,480`.split(',').map(n => parseInt(n)) |
| | | // import { mockDatas } from './index1.js' |
| | | |
| | | export default { |
| | | components: { Test }, |
| | | data() { |
| | | return { |
| | | show: false, |
| | | pickerOptions1: { |
| | | disabledDate(time) { |
| | | return time.getTime() <= Date.now() - 24 * 60 * 60 * 1000 |
| | | } |
| | | }, |
| | | real_num: 0, |
| | | keep_data: [], |
| | | all_status: true, |
| | | look_data: [], |
| | | look_total: 0, |
| | | cl_name: '', |
| | | cl_code: '', |
| | | work_order: '', |
| | | false_arr: [], |
| | | ckeckVal: true, |
| | | AdvaScheUom: '', |
| | | list: [], |
| | | form: { |
| | | WorkShop: '', |
| | | PartNumber: '', |
| | | PartName: '', |
| | | rows: 10, |
| | | page: 1 |
| | | }, |
| | | showDialog: false, |
| | | time_data: [], |
| | | forms: { |
| | | WorkCode: '', |
| | | WorkShop: '', |
| | | PartNumber: '', |
| | | BotProceCode: '', |
| | | StartTime: '', |
| | | EndTime: '' |
| | | }, |
| | | click_one: 0, |
| | | datasC: [], |
| | | radio: '', |
| | | value1: '', |
| | | types: 'N', |
| | | no: false, |
| | | total: 0, |
| | | mn_data: [], |
| | | bm_data: [], |
| | | facility_data: [], |
| | | end_start: '', |
| | | timeLines: [ |
| | | { |
| | | time: dayjs() |
| | | .add(2, 'hour') |
| | | .toString() |
| | | }, |
| | | { |
| | | time: dayjs() |
| | | .add(5, 'hour') |
| | | .toString(), |
| | | color: '#747e80' |
| | | } |
| | | ], |
| | | formUpdata: { |
| | | WorkCode: '', |
| | | BotProceCode: '', |
| | | json: [] |
| | | }, |
| | | currentTime: dayjs(), |
| | | startTime: dayjs() |
| | | .subtract(5, 'hour') |
| | | .toString(), |
| | | endTime: dayjs() |
| | | .add(2, 'day') |
| | | .add(2, 'hour') |
| | | .toString(), |
| | | cellWidth: 50, |
| | | cellHeight: 30, |
| | | titleHeight: 40, |
| | | titleWidth: 250, |
| | | scale: 60, |
| | | datasNum: 100, |
| | | datasA: [], |
| | | datasB: mockDatas(100), |
| | | dataKey: 'id', |
| | | times: 0, |
| | | timeList: timeList, |
| | | scaleList: scaleList, |
| | | scrollToTime: dayjs() |
| | | .add(1, 'day') |
| | | .toString(), |
| | | scrollToPostion: { x: 10000, y: 10000 }, |
| | | hideHeader: false, |
| | | arrayKeys: ['gtArray', 'error'], |
| | | scrollToY: 0, |
| | | positionB: {}, |
| | | positionA: {}, |
| | | meter: 0, // èæ |
| | | title_list: [], |
| | | imp_id: '', |
| | | submit_flag: false, |
| | | search_from: { |
| | | page: 1, |
| | | rows: 10, |
| | | WorkTime: '', |
| | | BotProceName: '' |
| | | } |
| | | } |
| | | }, |
| | | |
| | | watch: { |
| | | datasNum(newV) { |
| | | this.datasA = mockDatas(newV) |
| | | this.datasB = mockDatas(newV) |
| | | }, |
| | | scrollToY(val) { |
| | | this.positionA = { x: val } |
| | | } |
| | | }, |
| | | created: function() { |
| | | this.AdvancedSchedulingSearch() |
| | | this.AdvancedSchedulingWorkShop() |
| | | }, |
| | | |
| | | methods: { |
| | | AdvancedSchedulingWorkShop() { |
| | | automaticScheduling.AdvancedSchedulingWorkShop().then(res => { |
| | | this.list = res |
| | | }) |
| | | }, |
| | | Search() { |
| | | this.form.page = 1 |
| | | this.show = false |
| | | this.radio = '' |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | resetFormcx() { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | }) |
| | | }, |
| | | no_zero() { |
| | | if (this.times < 0) { |
| | | this.times = 0 |
| | | } |
| | | }, |
| | | sortChange(column, prop, order) { |
| | | this.radio = ''; |
| | | (this.form.prop = column.prop), (this.form.order = column.order) |
| | | this.show = false |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | SeachKey() { |
| | | this.form.page = 1 |
| | | this.AdvancedSchedulingSearch() |
| | | this.show = false |
| | | this.radio = '' |
| | | }, |
| | | changeLift() { |
| | | if (this.all_status) { |
| | | this.false_arr = [] |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | } else { |
| | | for (const i in this.bm_data) { |
| | | this.bm_data[i].status = false |
| | | this.bm_data[i].gtArray = [] |
| | | } |
| | | for (const i in this.facility_data) { |
| | | this.facility_data[i].gtArray = [] |
| | | } |
| | | } |
| | | }, |
| | | changeTypes() { |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | }, |
| | | change_time() { |
| | | this.time_data[0] = this.value1[0] + ' 00:00' |
| | | this.time_data[1] = this.value1[1] + ' 23:59' |
| | | this.forms.StartTime = this.value1[0] |
| | | this.forms.EndTime = this.value1[1] |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | }, |
| | | click_box(val) { |
| | | if (!val.status) { |
| | | for (const i in this.facility_data) { |
| | | const new_arr = [] |
| | | for (const j in this.facility_data[i].gtArray) { |
| | | if (this.facility_data[i].gtArray[j].id == val.id) { |
| | | } else { |
| | | new_arr.push(this.facility_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.facility_data[i].gtArray = new_arr |
| | | } |
| | | } else { |
| | | this.false_arr = [] |
| | | for (const i in this.bm_data) { |
| | | if (!this.bm_data[i].status) { |
| | | this.false_arr.push(this.bm_data[i].id) |
| | | } |
| | | } |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | } |
| | | |
| | | if (!val.status) { |
| | | for (const i in this.bm_data) { |
| | | if (!this.bm_data[i].status) { |
| | | this.bm_data[i].gtArray = [] |
| | | } |
| | | } |
| | | } else { |
| | | this.false_arr = [] |
| | | for (const i in this.bm_data) { |
| | | if (!this.bm_data[i].status) { |
| | | this.false_arr.push(this.bm_data[i].id) |
| | | } |
| | | } |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | } |
| | | for (const i in this.bm_data) { |
| | | const arr = [] |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if (this.bm_data[i].gtArray[j].type != 'schedule') { |
| | | arr.push(this.bm_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.bm_data[i].gtArray = arr |
| | | } |
| | | this.real_num = 0 |
| | | }, |
| | | look(data) { |
| | | this.showDialog = true |
| | | this.search_from.DeviceCode = data.id |
| | | this.AdvancedSchedulingEquipmenTask() |
| | | }, |
| | | AdvancedSchedulingEquipmenTask() { |
| | | automaticScheduling |
| | | .AdvancedSchedulingEquipmenTask(this.search_from) |
| | | .then(res => { |
| | | this.look_data = res.rows |
| | | this.look_total = res.total |
| | | }) |
| | | }, |
| | | sizeChange_look(val) { |
| | | this.search_from.rows = val |
| | | this.AdvancedSchedulingEquipmenTask() |
| | | }, |
| | | pageChange_look(val) { |
| | | this.search_from.page = val |
| | | this.AdvancedSchedulingEquipmenTask() |
| | | }, |
| | | sizeChange(val) { |
| | | this.form.rows = val |
| | | this.show = false |
| | | this.radio = '' |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | pageChange(val) { |
| | | this.form.page = val |
| | | this.show = false |
| | | this.radio = '' |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | // æ¥è¯¢ |
| | | AdvancedSchedulingSearch() { |
| | | automaticScheduling.AdvancedSchedulingSearch(this.form).then(res => { |
| | | this.mn_data = res.rows |
| | | this.total = res.total |
| | | this.oneClick() |
| | | }) |
| | | }, |
| | | // ç¹å»å¸¦åºæ°æ® |
| | | OnclickAdvancedSchedulingDevice() { |
| | | this.facility_top() |
| | | |
| | | automaticScheduling |
| | | .OnclickAdvancedSchedulingDevice(this.forms) |
| | | .then(res => { |
| | | if (res.rus.message) { |
| | | this.$message({ |
| | | showClose: true, |
| | | type: 'error', |
| | | message: res.rus.message |
| | | }) |
| | | } |
| | | this.submit_flag = false |
| | | const list = [] |
| | | this.time_all = res |
| | | const cont = res.Cont |
| | | this.real_num = 0 |
| | | for (const i in this.time_all.rows[0].children) { |
| | | const obj = { |
| | | id: '', |
| | | name: '', |
| | | AdvaDevicRhythm: '', |
| | | status: true, |
| | | colorPair: { |
| | | dark: 'rgb(83, 186, 241,0.8)', |
| | | light: 'rgb(83, 186, 241,0.1)', |
| | | light_capacity: 'rgb(209,239,237,0.8)', |
| | | h_schedule: ' rgb(100,255,192,0.8)', |
| | | scheduleing: 'rgb(20,182,231,0.8)' |
| | | }, |
| | | gtArray: [] |
| | | } |
| | | obj.id = this.time_all.rows[0].children[i].AdvaDevicNumber |
| | | obj.name = this.time_all.rows[0].children[i].AdvaDevicName |
| | | obj.AdvaDevicRhythm = this.time_all.rows[0].children[ |
| | | i |
| | | ].AdvaDevicRhythm |
| | | list.push(obj) |
| | | } |
| | | |
| | | for (const i in this.time_all.rows) { |
| | | for (const j in this.time_all.rows[i].children) { |
| | | if (this.time_all.rows[i].children[j].OneStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].OneStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].OneStartDate.split('~') |
| | | this.time_all.rows[i].children[j].OneStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].OneStartDate[0] |
| | | this.time_all.rows[i].children[j].OneStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].OneStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].TwoStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].TwoStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].TwoStartDate.split('~') |
| | | this.time_all.rows[i].children[j].TwoStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].TwoStartDate[0] |
| | | this.time_all.rows[i].children[j].TwoStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].TwoStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].ThreeStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate.split('~') |
| | | this.time_all.rows[i].children[j].ThreeStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].ThreeStartDate[0] |
| | | this.time_all.rows[i].children[j].ThreeStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].ThreeStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].FourStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate.split('~') |
| | | this.time_all.rows[i].children[j].FourStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FourStartDate[0] |
| | | this.time_all.rows[i].children[j].FourStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FourStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].FiveStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate.split('~') |
| | | this.time_all.rows[i].children[j].FiveStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FiveStartDate[0] |
| | | this.time_all.rows[i].children[j].FiveStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FiveStartDate[1] |
| | | } |
| | | } |
| | | } |
| | | // ç»åæ°çç»æ |
| | | const newList = [] |
| | | for (const i in this.time_all.rows) { |
| | | for (const j in this.time_all.rows[i].children) { |
| | | if (this.time_all.rows[i].children[j].OneStartDate != '') { |
| | | const data1 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data1.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data1.start = this.time_all.rows[i].children[j].OneStartDate[0] |
| | | data1.end = this.time_all.rows[i].children[j].OneStartDate[1] |
| | | data1.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data1) |
| | | } |
| | | if (this.time_all.rows[i].children[j].TwoStartDate != '') { |
| | | const data2 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data2.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data2.start = this.time_all.rows[i].children[j].TwoStartDate[0] |
| | | data2.end = this.time_all.rows[i].children[j].TwoStartDate[1] |
| | | data2.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data2) |
| | | } |
| | | if (this.time_all.rows[i].children[j].ThreeStartDate != '') { |
| | | const data3 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data3.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data3.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate[0] |
| | | data3.end = this.time_all.rows[i].children[j].ThreeStartDate[1] |
| | | data3.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data3) |
| | | } |
| | | if (this.time_all.rows[i].children[j].FourStartDate != '') { |
| | | const data4 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data4.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data4.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate[0] |
| | | data4.end = this.time_all.rows[i].children[j].FourStartDate[1] |
| | | data4.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data4) |
| | | } |
| | | if (this.time_all.rows[i].children[j].FiveStartDate != '') { |
| | | const data5 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data5.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data5.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate[0] |
| | | data5.end = this.time_all.rows[i].children[j].FiveStartDate[1] |
| | | data5.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data5) |
| | | } |
| | | } |
| | | } |
| | | for (const i in list) { |
| | | this.pushTiem(newList, list[i].id, list[i].gtArray) |
| | | } |
| | | this.bm_data = list |
| | | const _this = this |
| | | if (cont != '') { |
| | | for (const i in cont) { |
| | | for (const j in this.bm_data) { |
| | | if (this.bm_data[j].id == cont[i].EQP_CODE) { |
| | | const data = { |
| | | id: cont[i].EQP_CODE, |
| | | number: cont[i].ALLOC_QTY, |
| | | cl_name: cont[i].PART_NAME, |
| | | cl_code: this.cl_code, |
| | | work_order: cont[i].WO_CODE, |
| | | STATUS: _this.AdvaScheUom, |
| | | start: cont[i].TIME_START, |
| | | end: cont[i].TIME_END, |
| | | type: cont[i].STATUS == 'S' ? 'h_schedule' : 'bm_schedule' |
| | | } |
| | | |
| | | this.bm_data[j].flag = 'isCont' |
| | | |
| | | this.bm_data[j].gtArray.unshift(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | if (this.false_arr != '') { |
| | | for (const j in this.bm_data) { |
| | | if (this.false_arr.indexOf(this.bm_data[j].id) >= 0) { |
| | | this.bm_data[j].gtArray = [] |
| | | this.bm_data[j].status = false |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | // æ¢åæ¶é´ |
| | | MinutesTest(time) { |
| | | var sdate1 = new Date(time) |
| | | sdate1.setMinutes(sdate1.getMinutes() + this.times * 1) |
| | | var now = |
| | | sdate1.getFullYear() + |
| | | '-' + |
| | | this.add_one(sdate1.getMonth()) + |
| | | '-' + |
| | | sdate1.getDate() + |
| | | ' ' + |
| | | sdate1.getHours() + |
| | | ':' + |
| | | sdate1.getMinutes() + |
| | | ':' + |
| | | sdate1.getSeconds() |
| | | return now |
| | | }, |
| | | // +1 |
| | | add_one(date) { |
| | | return parseInt(date) + 1 |
| | | }, |
| | | // æå
¥äº§è½æ¶é´æ®µ |
| | | pushTiem(newList, id, arr) { |
| | | for (const i in newList) { |
| | | if (newList[i].id == id) { |
| | | const data = { |
| | | start: newList[i].start, |
| | | end: newList[i].end, |
| | | id: newList[i].id, |
| | | mod: newList[i].mod, |
| | | type: 'capacity' |
| | | } |
| | | arr.push(data) |
| | | } |
| | | } |
| | | }, |
| | | getNowFormatDate() { |
| | | var date = new Date() |
| | | var seperator1 = '-' |
| | | var year = date.getFullYear() |
| | | var month = date.getMonth() + 1 |
| | | // var strDate = date.getDate()+1; |
| | | var strDate = date.getDate() |
| | | if (month >= 1 && month <= 9) { |
| | | month = '0' + month |
| | | } |
| | | if (strDate >= 0 && strDate <= 9) { |
| | | strDate = '0' + strDate |
| | | } |
| | | var currentdate = year + seperator1 + month + seperator1 + strDate |
| | | return currentdate |
| | | }, |
| | | getCurrentRow(row) { |
| | | // this.show =true |
| | | this.meter = row.AdvaScheQty * 1 - row.AdvaScheYPQty * 1 // å¯ä»¥åä¸ªæ° |
| | | this.value1 = [] |
| | | this.cl_name = row.AdvaSchePartName |
| | | this.cl_code = row.AdvaSchePartNumber |
| | | this.AdvaScheUom = row.AdvaScheUom |
| | | this.work_order = row.AdvaScheWorkCode |
| | | this.value1.push(this.getNowFormatDate()) |
| | | this.value1.push(row.AdvaScheEndDate) |
| | | if (this.value1 != '') { |
| | | this.time_data[0] = this.value1[0] + ' 00:00' |
| | | this.time_data[1] = this.value1[1] + ' 23:59' |
| | | } |
| | | this.forms.WorkCode = row.AdvaScheWorkCode |
| | | this.forms.WorkShop = row.AdvaScheWorkShopid |
| | | this.forms.PartNumber = row.AdvaSchePartNumber |
| | | this.forms.BotProceCode = row.AdvaScheBotProcid |
| | | this.forms.StartTime = this.getNowFormatDate() |
| | | this.forms.EndTime = row.AdvaScheEndDate |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | this.formUpdata.WorkCode = row.AdvaScheWorkCode |
| | | this.formUpdata.BotProceCode = row.AdvaScheBotProcid |
| | | this.search_from.WorkTime = |
| | | this.getNowFormatDate() + '~' + row.AdvaScheEndDate |
| | | this.search_from.BotProceName = row.AdvaScheBotProcName |
| | | }, |
| | | // æäº¤æç¨ |
| | | click_yes() { |
| | | if (this.submit_flag) { |
| | | this.$message({ |
| | | showClose: true, |
| | | type: 'error', |
| | | message: 'æ°éæªæå®,è¯·è®¾ç½®äº§è½æ¶é´' |
| | | }) |
| | | } else { |
| | | const list = [] // æäº¤æ°ç» |
| | | for (const i in this.bm_data) { |
| | | const arr = [] |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if (this.bm_data[i].gtArray[j].type == 'schedule') { |
| | | arr.push(this.bm_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | if (arr != '') { |
| | | for (const i in arr) { |
| | | const data = { |
| | | AlreDevicNumber: '', |
| | | AlreStartDate: '', |
| | | AlreEndDate: '', |
| | | AlreQty: '' |
| | | } |
| | | data.AlreDevicNumber = arr[i].id |
| | | data.AlreStartDate = arr[i].start |
| | | data.AlreEndDate = arr[i].end |
| | | data.AlreQty = arr[i].number |
| | | list.push(data) |
| | | } |
| | | } |
| | | } |
| | | // æç¨ç¸å设å¤è·åå¼å§æ¶é´ ç»ææ¶é´ æ°éçæ»å |
| | | // è¿æ»¤ |
| | | let updata = [] |
| | | for (const i in list) { |
| | | if (list[i].AlreStartDate != '') { |
| | | updata.push(list[i]) |
| | | } |
| | | } |
| | | |
| | | updata = JSON.stringify(updata) |
| | | this.formUpdata.json = updata |
| | | if (list == '') { |
| | | this.$message({ |
| | | showClose: true, |
| | | message: '请å
颿', |
| | | type: 'error' |
| | | }) |
| | | return false |
| | | } |
| | | automaticScheduling |
| | | .SubmitAlreadyScheduling(this.formUpdata) |
| | | .then(res => { |
| | | if (res.statusCode == 300) { |
| | | this.$message({ |
| | | showClose: true, |
| | | message: res.message, |
| | | type: 'error' |
| | | }) |
| | | } else { |
| | | this.$message({ |
| | | showClose: true, |
| | | message: res.message, |
| | | type: 'success' |
| | | }) |
| | | } |
| | | this.meter = 0 |
| | | this.real_num = 0 |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | this.AdvancedSchedulingSearch() |
| | | }) |
| | | } |
| | | }, |
| | | |
| | | // æ¶é´/设å¤ä¼å
æç¨ |
| | | click_schedule() { |
| | | const timestamp = new Date().toLocaleDateString() |
| | | if (new Date(this.value1[0]) < new Date(timestamp)) { |
| | | this.$message({ |
| | | showClose: true, |
| | | type: 'error', |
| | | message: 'æç¨æ¶é´ä¸å¯ä»¥å°äºå½åæ¶é´' |
| | | }) |
| | | return false |
| | | } |
| | | |
| | | this.nitialize() |
| | | // 设å¤ä¼å
|
| | | if (this.bm_data != '' && this.types == 'N') { |
| | | this.fun_time() |
| | | this.change_num(this.bm_data) |
| | | } else if (this.facility_data != '' && this.types == 'Y') { |
| | | this.time_nitalize() |
| | | this.fun_facility() |
| | | this.dataTransition() |
| | | this.change_num(this.bm_data) |
| | | } |
| | | }, |
| | | // æå¨è¿æ»¤æææ¶é´å·²æç¨ |
| | | time_nitalize() { |
| | | for (const i in this.facility_data) { |
| | | this.facility_data[i].gtArray = this.facility_data[i].gtArray.filter(item => item.type != 'schedule') |
| | | } |
| | | }, |
| | | |
| | | // æå¨è¿æ»¤ææè®¾å¤å·²æç¨ |
| | | nitialize() { |
| | | for (const i in this.bm_data) { |
| | | const newArr = [] |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if (this.bm_data[i].gtArray[j].type != 'schedule') { |
| | | newArr.push(this.bm_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.bm_data[i].gtArray = newArr |
| | | } |
| | | }, |
| | | |
| | | // ç»æç¨æåä¸ä¸ªä¿®æ¹æ°é |
| | | change_num(arr) { |
| | | this.real_num = 0 // çå®å·²ææ°é |
| | | let num = 0 // åæ´å·²ææ°é |
| | | const arr_num = [] // å·²ææ°æ® |
| | | let mend_num = 0 |
| | | const len = 0 |
| | | for (const i in arr) { |
| | | for (const j in arr[i].gtArray) { |
| | | if (arr[i].gtArray[j].type == 'schedule') { |
| | | arr_num.unshift(arr[i].gtArray[j]) |
| | | } |
| | | } |
| | | } |
| | | |
| | | for (const n in arr_num) { |
| | | this.real_num += arr_num[n].real_number |
| | | num += arr_num[n].number * 1 |
| | | } |
| | | |
| | | this.real_num = Math.ceil(this.real_num) |
| | | const y10 = this.meter - this.real_num |
| | | if (y10 <= 10) { |
| | | this.real_num = this.meter |
| | | mend_num = this.meter - num |
| | | } else { |
| | | } |
| | | if (this.real_num * 1 == this.meter * 1) { |
| | | // mend_num = this.meter - num |
| | | } else { |
| | | this.submit_flag = true |
| | | } |
| | | for (const i in this.bm_data) { |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if ( |
| | | this.bm_data[i].gtArray[j].type == 'schedule' && |
| | | this.bm_data[i].gtArray[j].end_num |
| | | ) { |
| | | this.bm_data[i].gtArray[j].number = |
| | | this.bm_data[i].gtArray[j].number * 1 + mend_num |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | fun_time() { |
| | | let all_num = this.meter |
| | | const all_time = [] |
| | | let flag1 = 0 |
| | | const mod = this.bm_data[0].mod |
| | | // let nowTime = this.bm_data[0].AdvaDevicRhythm*all_num |
| | | for (const i in this.bm_data) { |
| | | let end_arr = [] // å·²æç¨çæ°ç» |
| | | let nend_arr = [] // å¾
æç¨çæ°ç» |
| | | const add_arr = [] // å·²æç¨çæ°ç» |
| | | let capacity_arr = [] // è¦æç¨çæ°ç» |
| | | this.bm_data[i].gtArray.sort((a, b) => new Date(a.end).getTime() - new Date(b.end).getTime()) |
| | | // let capacity_end = '' |
| | | end_arr = this.bm_data[i].gtArray.filter(item => item.type == 'h_schedule') |
| | | nend_arr = this.bm_data[i].gtArray.filter(item => item.type == 'capacity') |
| | | if (end_arr && end_arr.length > 0) { |
| | | capacity_arr = nend_arr.map(item => { |
| | | // æé¤æå·²ç»æç¨çåå¨hsheduleï¼startï¼endé½ç¸ççæ
åµ |
| | | const schedule = end_arr.filter(schedule => { |
| | | return new Date(item.start).getTime() <= new Date(schedule.start).getTime() && |
| | | new Date(item.end).getTime() > new Date(schedule.end).getTime() |
| | | }) |
| | | if (schedule && schedule.length > 0) { |
| | | item.start = this.MinutesTest(schedule[0]['end']) |
| | | } |
| | | |
| | | const schedule1 = end_arr.filter(schedule => { |
| | | return new Date(item.start).getTime() == new Date(schedule.start).getTime() && |
| | | new Date(item.end).getTime() == new Date(schedule.end).getTime() |
| | | }) |
| | | if (schedule1 && schedule1.length > 0) { |
| | | item.capacity = false |
| | | } |
| | | |
| | | return item |
| | | }).filter(item => item.capacity != false) |
| | | } else { |
| | | capacity_arr = nend_arr |
| | | } |
| | | |
| | | const id_obj = { |
| | | id: '', |
| | | start_time: '' |
| | | } |
| | | if (end_arr != '') { |
| | | (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end) |
| | | } |
| | | for (const w in capacity_arr) { |
| | | let end_time = '' |
| | | let mistiming = '' |
| | | const data = { |
| | | id: capacity_arr[w].id, |
| | | start: '', |
| | | end: '', |
| | | type: 'schedule', |
| | | cl_name: this.cl_name, |
| | | cl_code: this.cl_code, |
| | | work_order: this.work_order, |
| | | number: 0, |
| | | real_number: 0 |
| | | } |
| | | if ( |
| | | id_obj.start_time != '' && |
| | | flag1 == 0 && |
| | | new Date(id_obj.start_time) >= new Date(capacity_arr[w].start) |
| | | ) { |
| | | data.start = this.MinutesTest(id_obj.start_time) |
| | | flag1 = 1 |
| | | } else { |
| | | data.start = capacity_arr[w].start |
| | | } |
| | | let nowTime = |
| | | (this.bm_data[i].AdvaDevicRhythm * all_num) / capacity_arr[w].mod |
| | | end_time = this.formSeconds(nowTime, data.start, capacity_arr[w].mod) // æ»å
±çç»ææ¶é´ |
| | | data.end = end_time |
| | | mistiming = this.formTime( |
| | | end_time, |
| | | capacity_arr[w].end, |
| | | capacity_arr[w].mod |
| | | ) // æ»å
±çç»ææ¶é´-å½åçç»ææ¶é´ = å©ä¸å¤ä¹
æ¶é´ |
| | | if (mistiming >= 0) { |
| | | console.log( |
| | | new Date(data.end) - new Date(data.start), |
| | | capacity_arr[w].mod, |
| | | this.bm_data[i].AdvaDevicRhythm, |
| | | 'é¿æ¯é¡¿åæ¯èè¬' |
| | | ) |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | data.end_num = true |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.bm_data[i].gtArray.push(data) |
| | | } |
| | | |
| | | return false |
| | | } else { |
| | | data.end = capacity_arr[w].end |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | |
| | | nowTime = |
| | | (all_num - data.real_number) * this.bm_data[i].AdvaDevicRhythm |
| | | all_num = all_num - data.real_number |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.bm_data[i].gtArray.push(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | // è®¾å¤æç¨æ¹æ³ |
| | | fun_facility() { |
| | | // æé¤æªå¾é项 |
| | | for (const i in this.facility_data) { |
| | | const newArr = [] |
| | | for (const j in this.facility_data[i].gtArray) { |
| | | if (this.false_arr.indexOf(this.facility_data[i].gtArray[j].id) < 0) { |
| | | newArr.push(this.facility_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.facility_data[i].gtArray = newArr |
| | | } |
| | | let all_num = this.meter |
| | | const all_time = [] |
| | | const flag1 = 0 |
| | | // let nowTime = this.facility_data[0].AdvaDevicRhythm*all_num //æ°éOK |
| | | |
| | | for (const i in this.facility_data) { |
| | | let end_arr = [] |
| | | let nend_arr = [] // æç¨çæ°ç» |
| | | const add_arr = [] // å·²æç¨çæ°ç» |
| | | let capacity_arr = [] // è¦æç¨çæ°ç» |
| | | |
| | | // this.facility_data[i].gtArray.sort((a,b) => new Date(a.end).getTime() - new Date(b.end).getTime()) |
| | | // let capacity_end = '' |
| | | end_arr = this.facility_data[i].gtArray.filter(item => item.type == 'h_schedule') |
| | | nend_arr = this.facility_data[i].gtArray.filter(item => item.type == 'capacity') |
| | | console.log(nend_arr) |
| | | capacity_arr = JSON.parse(JSON.stringify(nend_arr)) |
| | | end_arr.forEach(item => { |
| | | for (let i = 0; i < capacity_arr.length; i++) { |
| | | if (new Date(capacity_arr[i].start).getTime() === new Date(item.start).getTime()) { |
| | | console.log(i, capacity_arr[i], 'ååå') |
| | | capacity_arr.splice(i, 1) |
| | | break |
| | | } |
| | | } |
| | | }) |
| | | console.log(capacity_arr, '大西ç') |
| | | |
| | | if (!capacity_arr || capacity_arr.length == 0) break |
| | | // const firstCapacity = capacity_arr[0] |
| | | |
| | | const schedule_arr = end_arr.filter(item => { |
| | | const remain = nend_arr.some(sitem => { |
| | | return new Date(sitem.start).getTime() === new Date(item.start).getTime() && |
| | | new Date(item.end).getTime() < new Date(sitem.end).getTime() |
| | | }) |
| | | return remain |
| | | }) |
| | | console.log(schedule_arr) |
| | | if (schedule_arr && schedule_arr.length > 0) { |
| | | const scheduleCan = schedule_arr.map(item => { |
| | | const capcity = nend_arr.filter(sitem => { |
| | | return new Date(sitem.start).getTime() === new Date(item.start).getTime() && |
| | | new Date(item.end).getTime() < new Date(sitem.end).getTime() |
| | | })[0] |
| | | console.log('capacity', capcity) |
| | | capcity.start = this.MinutesTest(item.end) |
| | | return capcity |
| | | }) |
| | | const newSchedule = JSON.parse(JSON.stringify(scheduleCan)) |
| | | capacity_arr = newSchedule.concat(capacity_arr) |
| | | } |
| | | console.log(schedule_arr) |
| | | console.log('å¯æç¨æ°ç»', capacity_arr) |
| | | const id_obj = {} |
| | | if (end_arr != '') { |
| | | (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end) |
| | | } |
| | | |
| | | for (const w in capacity_arr) { |
| | | let end_time |
| | | let mistiming |
| | | const data = { |
| | | id: capacity_arr[w].id, |
| | | start: '', |
| | | end: '', |
| | | type: 'schedule', |
| | | cl_name: this.cl_name, |
| | | cl_code: this.cl_code, |
| | | work_order: this.work_order, |
| | | number: 0, |
| | | real_number: 0 |
| | | } |
| | | // console.log(id_obj.start_time) |
| | | if ( |
| | | id_obj && |
| | | new Date(id_obj.start_time).getTime() >= |
| | | new Date(capacity_arr[w].start).getTime() |
| | | ) { |
| | | if (data.id == id_obj.id) { |
| | | data.start = this.MinutesTest(id_obj.start_time) |
| | | // flag1 =1 |
| | | } else { |
| | | data.start = capacity_arr[w].start |
| | | // console.log(data.start) |
| | | // flag1 =1 |
| | | } |
| | | } else { |
| | | data.start = capacity_arr[w].start |
| | | } |
| | | // let nowTime = this.facility_data[0].AdvaDevicRhythm*all_num |
| | | let nowTime = |
| | | (capacity_arr[w].rhythm * all_num) / capacity_arr[w].mod |
| | | |
| | | end_time = this.formSeconds(nowTime, data.start) |
| | | |
| | | data.end = end_time |
| | | mistiming = this.formTime(end_time, capacity_arr[w].end) |
| | | if (mistiming >= 0) { |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | data.end_num = true |
| | | |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.facility_data[i].gtArray.push(data) |
| | | } |
| | | |
| | | return false |
| | | } else { |
| | | data.end = capacity_arr[w].end |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | nowTime = (all_num - data.real_number) * capacity_arr[w].rhythm |
| | | all_num = all_num - data.real_number |
| | | |
| | | // nowTime = mistiming * -1 |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.facility_data[i].gtArray.push(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | // ç»è®¾å¤è½¬æ¢æ ¼å¼ |
| | | dataTransition() { |
| | | this.bm_data = [] |
| | | const data = this.facility_data |
| | | |
| | | const all = [] |
| | | const list = this.title_list |
| | | for (const i in data) { |
| | | for (const j in data[i].gtArray) { |
| | | all.push(data[i].gtArray[j]) |
| | | } |
| | | } |
| | | |
| | | for (const i in list) { |
| | | list[i].gtArray = [] |
| | | this.pushTiemsss(all, list[i].id, list[i].gtArray) |
| | | } |
| | | |
| | | for (const n in list) { |
| | | if (list[n].gtArray.length == 0) { |
| | | list[n].status = false |
| | | } |
| | | } |
| | | |
| | | // console.log(list) |
| | | this.bm_data = list |
| | | }, |
| | | // æå
¥äº§è½æ¶é´æ®µ |
| | | pushTiemsss(newList, id, arr) { |
| | | for (const i in newList) { |
| | | if (newList[i].id == id) { |
| | | arr.push(newList[i]) |
| | | } |
| | | } |
| | | }, |
| | | // 设å¤ä¼å
|
| | | facility_top() { |
| | | automaticScheduling |
| | | .OnclickAdvancedSchedulingDevice(this.forms) |
| | | .then(res => { |
| | | this.show = true |
| | | const data = res.rows |
| | | const cont = res.Cont |
| | | this.title_list = [] |
| | | for (const i in data[0].children) { |
| | | const obj = { |
| | | id: '', |
| | | name: '', |
| | | status: true, |
| | | AdvaDevicRhythm: '', |
| | | // mod:'', |
| | | colorPair: { |
| | | dark: 'rgb(83, 186, 241,0.8)', |
| | | light: 'rgb(83, 186, 241,0.1)', |
| | | light_capacity: 'rgb(209,239,237,0.8)', |
| | | h_schedule: ' rgb(100,255,192,0.8)', |
| | | scheduleing: 'rgb(20,182,231,0.8)' |
| | | }, |
| | | gtArray: [] |
| | | } |
| | | obj.id = data[0].children[i].AdvaDevicNumber |
| | | obj.name = data[0].children[i].AdvaDevicName |
| | | obj.AdvaDevicRhythm = data[0].children[i].AdvaDevicRhythm |
| | | // obj.mod =data[0].children[i].AdvaDevicCropMob *1 |
| | | |
| | | this.title_list.push(obj) |
| | | } |
| | | for (const i in data) { |
| | | for (const j in data[i].children) { |
| | | if (data[i].children[j].OneStartDate != '') { |
| | | data[i].children[j].OneStartDate = data[i].children[ |
| | | j |
| | | ].OneStartDate.split('~') |
| | | data[i].children[j].OneStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].OneStartDate[0] |
| | | data[i].children[j].OneStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].OneStartDate[1] |
| | | } |
| | | if (data[i].children[j].TwoStartDate != '') { |
| | | data[i].children[j].TwoStartDate = data[i].children[ |
| | | j |
| | | ].TwoStartDate.split('~') |
| | | data[i].children[j].TwoStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[0] |
| | | data[i].children[j].TwoStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[1] |
| | | } |
| | | if (data[i].children[j].ThreeStartDate != '') { |
| | | data[i].children[j].ThreeStartDate = data[i].children[ |
| | | j |
| | | ].ThreeStartDate.split('~') |
| | | data[i].children[j].ThreeStartDate[0] = |
| | | data[i].YearDate + |
| | | ' ' + |
| | | data[i].children[j].ThreeStartDate[0] |
| | | data[i].children[j].ThreeStartDate[1] = |
| | | data[i].YearDate + |
| | | ' ' + |
| | | data[i].children[j].ThreeStartDate[1] |
| | | } |
| | | if (data[i].children[j].FourStartDate != '') { |
| | | data[i].children[j].FourStartDate = data[i].children[ |
| | | j |
| | | ].FourStartDate.split('~') |
| | | data[i].children[j].FourStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FourStartDate[0] |
| | | data[i].children[j].FourStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FourStartDate[1] |
| | | } |
| | | if (data[i].children[j].FiveStartDate != '') { |
| | | data[i].children[j].FiveStartDate = data[i].children[ |
| | | j |
| | | ].FiveStartDate.split('~') |
| | | data[i].children[j].FiveStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[0] |
| | | data[i].children[j].FiveStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[1] |
| | | } |
| | | } |
| | | } |
| | | // æ´æ¹æ ¼å¼ |
| | | this.facility_data = [] |
| | | |
| | | for (const i in data) { |
| | | const time = { |
| | | date: data[i].YearDate, |
| | | AdvaDevicRhythm: '', |
| | | gtArray: [] |
| | | } |
| | | if (data[i].children != '') { |
| | | time.AdvaDevicRhythm = data[i].children[0].AdvaDevicRhythm |
| | | } |
| | | for (const j in data[i].children) { |
| | | if (data[i].children[j].OneStartDate != '') { |
| | | const icu1 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].OneStartDate[0], |
| | | end: data[i].children[j].OneStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu1) |
| | | } |
| | | if (data[i].children[j].TwoStartDate != '') { |
| | | const icu2 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].TwoStartDate[0], |
| | | end: data[i].children[j].TwoStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu2) |
| | | } |
| | | if (data[i].children[j].ThreeStartDate != '') { |
| | | const icu3 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].ThreeStartDate[0], |
| | | end: data[i].children[j].ThreeStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu3) |
| | | } |
| | | if (data[i].children[j].FourStartDate != '') { |
| | | const icu4 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].FourStartDate[0], |
| | | end: data[i].children[j].FourStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu4) |
| | | } |
| | | if (data[i].children[j].FiveStartDate != '') { |
| | | const icu5 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].FiveStartDate[0], |
| | | end: data[i].children[j].FiveStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu5) |
| | | } |
| | | } |
| | | |
| | | this.facility_data.push(time) |
| | | } |
| | | |
| | | if (cont != '') { |
| | | for (const i in cont) { |
| | | const date_time = cont[i].TIME_START.split(' ') |
| | | const cont_date = date_time[0] |
| | | for (const j in this.facility_data) { |
| | | const data = { |
| | | id: cont[i].EQP_CODE, |
| | | date: cont_date, |
| | | number: cont[i].ALLOC_QTY, |
| | | cl_name: cont[i].PART_NAME, |
| | | cl_code: this.cl_code, |
| | | work_order: cont[i].WO_CODE, |
| | | start: cont[i].TIME_START, |
| | | end: cont[i].TIME_END, |
| | | type: 'h_schedule' |
| | | } |
| | | if (this.facility_data[j].date == data.date) { |
| | | this.facility_data[j].gtArray.unshift(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }) |
| | | }, |
| | | // æç¨æ¹æ³ |
| | | formSeconds(s1, start, mod) { |
| | | const nowData = new Date(start) |
| | | // ç®åºå½åæç¨çç»ææ¶é´ |
| | | return this.transitionTime( |
| | | new Date(nowData.setSeconds(nowData.getSeconds() + s1)) |
| | | ) |
| | | }, |
| | | // è½¬åæ åæ¶é´ |
| | | transitionTime(time) { |
| | | const d = new Date(time) |
| | | return ( |
| | | d.getFullYear() + |
| | | '-' + |
| | | (d.getMonth() + 1) + |
| | | '-' + |
| | | d.getDate() + |
| | | ' ' + |
| | | d.getHours() + |
| | | ':' + |
| | | d.getMinutes() + |
| | | ':' + |
| | | d.getSeconds() |
| | | ) |
| | | }, |
| | | // æ¶é´æ¯è¾ |
| | | formTime(d1, d2, mod) { |
| | | // d1 æé¤ç»ææ¶é´ d2 å½å产è½ç»ææ¶é´ |
| | | const time1 = new Date(d1) |
| | | const time2 = new Date(d2) |
| | | return parseInt(time2 - time1) / 1000 |
| | | }, |
| | | formatSeconds(value) { |
| | | var secondTime = parseInt(value) // ç§ |
| | | var minuteTime = 0 // å |
| | | var hourTime = 0 // å°æ¶ |
| | | if (secondTime > 60) { |
| | | // å¦æç§æ°å¤§äº60ï¼å°ç§æ°è½¬æ¢ææ´æ° |
| | | // è·ååéï¼é¤ä»¥60åæ´æ°ï¼å¾å°æ´æ°åé |
| | | minuteTime = parseInt(secondTime / 60) |
| | | // è·åç§æ°ï¼ç§æ°åä½ï¼å¾å°æ´æ°ç§æ° |
| | | secondTime = parseInt(secondTime % 60) |
| | | // 妿åé大äº60ï¼å°åéè½¬æ¢æå°æ¶ |
| | | if (minuteTime > 60) { |
| | | // è·åå°æ¶ï¼è·ååéé¤ä»¥60ï¼å¾å°æ´æ°å°æ¶ |
| | | hourTime = parseInt(minuteTime / 60) |
| | | // è·åå°æ¶ååä½çåï¼è·ååéé¤ä»¥60åä½çå |
| | | minuteTime = parseInt(minuteTime % 60) |
| | | } |
| | | } |
| | | var result = '' + parseInt(secondTime) + '' |
| | | |
| | | if (minuteTime > 0) { |
| | | result = '' + parseInt(minuteTime) + ':' + result |
| | | } |
| | | if (hourTime > 0) { |
| | | result = '' + parseInt(hourTime) + ':' + result |
| | | } |
| | | return result |
| | | }, |
| | | updateTimeLines(timeA, timeB) { |
| | | this.timeLines = [ |
| | | { |
| | | time: timeA |
| | | }, |
| | | { |
| | | time: timeB, |
| | | color: '#747e80' |
| | | } |
| | | ] |
| | | }, |
| | | scrollLeftA(val) { |
| | | this.positionB = { x: val } |
| | | }, |
| | | scrollLeftB(val) { |
| | | this.positionA = { x: val } |
| | | }, |
| | | // 设置åå§åæ°æ® |
| | | oneClick() { |
| | | // this.getCurrentRow(this.mn_data[0]) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | body { |
| | | font: 12px; |
| | | margin: 0; |
| | | padding: 0; |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .box_style { |
| | | position: relative; |
| | | top: 40px; |
| | | left: -75px; |
| | | } |
| | | |
| | | .box_styles { |
| | | position: relative; |
| | | top: 40px; |
| | | left: 0; |
| | | } |
| | | |
| | | #app { |
| | | display: flex; |
| | | flex-direction: column; |
| | | padding: 0 10px; |
| | | /* height: calc(100vh - 100px); */ |
| | | } |
| | | |
| | | label { |
| | | margin-left: 10px; |
| | | } |
| | | |
| | | input { |
| | | width: 40px; |
| | | height: 20px; |
| | | vertical-align: middle; |
| | | } |
| | | |
| | | input[type="range"] { |
| | | width: 100px; |
| | | } |
| | | |
| | | .top-bar { |
| | | /* height: 30px; */ |
| | | margin-bottom: 20px; |
| | | } |
| | | |
| | | .container { |
| | | display: flex; |
| | | flex-direction: column; |
| | | flex: 1; |
| | | } |
| | | |
| | | .main-footer { |
| | | /* height: 30px; */ |
| | | } |
| | | |
| | | .ib { |
| | | display: inline-block; |
| | | } |
| | | |
| | | .w250 { |
| | | width: 250px; |
| | | } |
| | | |
| | | .el-slider { |
| | | width: 100px; |
| | | } |
| | | |
| | | .tc { |
| | | text-align: center; |
| | | } |
| | | |
| | | .name { |
| | | display: flex; |
| | | box-sizing: border-box; |
| | | overflow: hidden; |
| | | height: 100%; |
| | | width: 100%; |
| | | padding: 0 5px 0 0; |
| | | border-radius: 8px 0 0 8px; |
| | | align-items: center; |
| | | } |
| | | |
| | | .colorBar { |
| | | width: 10px; |
| | | height: 100%; |
| | | } |
| | | |
| | | .carId { |
| | | flex: 1; |
| | | } |
| | | |
| | | .tc { |
| | | color: #909399; |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .type { |
| | | padding: 0 5px 0 0; |
| | | font-size: 1.2rem; |
| | | } |
| | | |
| | | .t_size { |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .icon_true { |
| | | height: 8px; |
| | | display: inline-block; |
| | | width: 8px; |
| | | background: #00a79d; |
| | | margin-right: 7px; |
| | | border-radius: 15px; |
| | | } |
| | | |
| | | .icon_ty { |
| | | height: 8px; |
| | | display: inline-block; |
| | | width: 8px; |
| | | background: red; |
| | | margin-right: 7px; |
| | | border-radius: 15px; |
| | | } |
| | | |
| | | .icon_gz { |
| | | height: 8px; |
| | | display: inline-block; |
| | | width: 8px; |
| | | background: yellow; |
| | | margin-right: 7px; |
| | | border-radius: 15px; |
| | | } |
| | | |
| | | /* .el-col-offset-1 { |
| | | margin-left: 0.5% !important; |
| | | } */ |
| | | .marginLeft { |
| | | margin-left: 15px; |
| | | } |
| | | |
| | | .button_style { |
| | | background: #00a79d; |
| | | color: #ffff; |
| | | border-color: #00a79d; |
| | | } |
| | | |
| | | .rg { |
| | | float: right; |
| | | } |
| | | |
| | | .color { |
| | | color: #909399; |
| | | } |
| | | </style> |
| ¶Ô±ÈÐÂÎļþ |
| | |
| | | <template> |
| | | <div id="app"> |
| | | |
| | | <el-tabs style="margin: 30px"> |
| | | <el-row style="margin-bottom:20px"> |
| | | |
| | | <el-col :span="7" :offset="1"> |
| | | <span class="t_size" style="margin-left:7px">æç¨æ¥æ</span> |
| | | <el-date-picker |
| | | v-model="value1" |
| | | type="daterange" |
| | | range-separator="~" |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | end-placeholder="ç»ææ¥æ" |
| | | size="small" |
| | | :picker-options="pickerOptions1" |
| | | @change="change_time" |
| | | /> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <span class="t_size">æç¨æ¹å¼</span> |
| | | <el-select v-model="types" size="small" style="width:120px" @change="changeTypes"> |
| | | <el-option value="N" label="设å¤ä¼å
" /> |
| | | <el-option value="Y" label="æ¶é´ä¼å
" /> |
| | | </el-select> |
| | | </el-col> |
| | | |
| | | <el-col :span="3" :offset="1"> |
| | | <div style="height:32px;"> |
| | | <span class="t_size">æ¶é´å»åº¦</span> |
| | | <select id="scale" v-model.number="scale"> |
| | | <option v-for="i in scaleList" :key="i">{{ i }}</option> |
| | | </select> |
| | | <span class="t_size">åé</span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <div style="height:32px;"> |
| | | <span class="t_size">æ¢åæ¶é´</span> |
| | | <el-input |
| | | id="scale" |
| | | v-model="times" |
| | | type="number" |
| | | size="mini" |
| | | style="display:inline-block;width:80px;" |
| | | @change="no_zero" |
| | | /> |
| | | <span class="t_size">åé</span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <div style="height:32px;line-height: 28px;"> |
| | | <span class="t_size">颿è¿åº¦</span> |
| | | <span> |
| | | <span style="text-decoration:underline;">{{ real_num }}</span> / |
| | | <span style="text-decoration:underline">{{ meter }}</span> |
| | | </span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | icon="el-icon-document-remove" |
| | | style="margin-left:20px;" |
| | | @click="click_schedule" |
| | | >颿 |
| | | </el-button> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | icon="el-icon-document-checked" |
| | | @click="click_yes" |
| | | >æäº¤ |
| | | </el-button> |
| | | <p /> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row /> |
| | | </el-tabs> |
| | | <div class="container" style="margin: 30px;"> |
| | | <v-gantt-chart |
| | | :start-time="time_data[0]" |
| | | :end-time="time_data[1]" |
| | | :cell-width="cellWidth" |
| | | :cell-height="cellHeight" |
| | | :time-lines="timeLines" |
| | | :title-height="titleHeight" |
| | | :scale="scale" |
| | | :title-width="titleWidth" |
| | | show-current-time |
| | | :hide-header="hideHeader" |
| | | :data-key="dataKey" |
| | | :array-keys="arrayKeys" |
| | | :scroll-to-postion="positionA" |
| | | :datas="bm_data" |
| | | @scrollLeft="scrollLeftA" |
| | | > |
| | | <!-- <template v-slot:block="{data,item}"> --> |
| | | <template slot="block" slot-scope="{data,item}"> |
| | | <Test |
| | | :data="data" |
| | | :update-time-lines="updateTimeLines" |
| | | :cell-height="cellHeight" |
| | | :current-time="currentTime" |
| | | :item="item" |
| | | /> |
| | | </template> |
| | | <template slot="left" slot-scope="{data}"> |
| | | <div class="name"> |
| | | <div class="carId"> |
| | | <el-checkbox |
| | | v-model="data.status" |
| | | style="margin-right:5px;" |
| | | @change="click_box(data)" |
| | | /> |
| | | {{ data.id }} {{ data.name }} |
| | | </div> |
| | | <div class="speed"> |
| | | <el-tooltip class="item" effect="dark" content="æ¥ç" placement="top"> |
| | | <el-button type="text" size="mini" @click="look(data)"> |
| | | <i class="el-icon-document size i-color" /> |
| | | </el-button> |
| | | </el-tooltip> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <template slot="title"> |
| | | <span class="tc">å·¥ä½å表</span> |
| | | |
| | | <el-checkbox v-model="all_status" class="box_style" @change="changeLift()" /> |
| | | <input v-model.number="cellWidth" type="range" min="20" max="100" class="box_styles"> |
| | | </template> |
| | | </v-gantt-chart> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import Test from '@/components/Test' |
| | | // import PaginationView from '@/components/PaginationView' |
| | | // import TestLeft from '@/components/TestLeft' |
| | | // import { mockDatas } from './index1.js' |
| | | import dayjs from 'dayjs' |
| | | // import automaticScheduling from '@/api/automaticScheduling' |
| | | |
| | | const scaleList = `30,60,240,360`.split(',').map(n => parseInt(n)) |
| | | const timeList = `0,30,60,120,240,480`.split(',').map(n => parseInt(n)) |
| | | |
| | | export default { |
| | | components: { Test }, |
| | | data() { |
| | | return { |
| | | show: false, |
| | | pickerOptions1: { |
| | | disabledDate(time) { |
| | | return time.getTime() <= Date.now() - 24 * 60 * 60 * 1000 |
| | | } |
| | | }, |
| | | real_num: 0, |
| | | keep_data: [], |
| | | all_status: true, |
| | | look_data: [], |
| | | look_total: 0, |
| | | cl_name: '', |
| | | cl_code: '', |
| | | work_order: '', |
| | | false_arr: [], |
| | | ckeckVal: true, |
| | | AdvaScheUom: '', |
| | | list: [], |
| | | form: { |
| | | WorkShop: '', |
| | | PartNumber: '', |
| | | PartName: '', |
| | | rows: 10, |
| | | page: 1 |
| | | }, |
| | | showDialog: false, |
| | | time_data: [], |
| | | forms: { |
| | | WorkCode: '', |
| | | WorkShop: '', |
| | | PartNumber: '', |
| | | BotProceCode: '', |
| | | StartTime: '', |
| | | EndTime: '' |
| | | }, |
| | | click_one: 0, |
| | | datasC: [], |
| | | radio: '', |
| | | value1: '', |
| | | types: 'N', |
| | | no: false, |
| | | total: 0, |
| | | mn_data: [], |
| | | bm_data: [], |
| | | facility_data: [], |
| | | end_start: '', |
| | | timeLines: [ |
| | | { |
| | | time: dayjs() |
| | | .add(2, 'hour') |
| | | .toString() |
| | | }, |
| | | { |
| | | time: dayjs() |
| | | .add(5, 'hour') |
| | | .toString(), |
| | | color: '#747e80' |
| | | } |
| | | ], |
| | | formUpdata: { |
| | | WorkCode: '', |
| | | BotProceCode: '', |
| | | json: [] |
| | | }, |
| | | currentTime: dayjs(), |
| | | startTime: dayjs() |
| | | .subtract(5, 'hour') |
| | | .toString(), |
| | | endTime: dayjs() |
| | | .add(2, 'day') |
| | | .add(2, 'hour') |
| | | .toString(), |
| | | cellWidth: 50, |
| | | cellHeight: 30, |
| | | titleHeight: 40, |
| | | titleWidth: 250, |
| | | scale: 60, |
| | | datasNum: 100, |
| | | datasA: [], |
| | | // datasB: mockDatas(100), |
| | | dataKey: 'id', |
| | | times: 0, |
| | | timeList: timeList, |
| | | scaleList: scaleList, |
| | | scrollToTime: dayjs() |
| | | .add(1, 'day') |
| | | .toString(), |
| | | scrollToPostion: { x: 10000, y: 10000 }, |
| | | hideHeader: false, |
| | | arrayKeys: ['gtArray', 'error'], |
| | | scrollToY: 0, |
| | | positionB: {}, |
| | | positionA: {}, |
| | | meter: 0, // èæ |
| | | title_list: [], |
| | | imp_id: '', |
| | | submit_flag: false, |
| | | search_from: { |
| | | page: 1, |
| | | rows: 10, |
| | | WorkTime: '', |
| | | BotProceName: '' |
| | | }, |
| | | testValue: { |
| | | 'rus': { |
| | | 'statusCode': '', |
| | | 'message': '', |
| | | 'MOD_S': '', |
| | | 'MAR_S': '', |
| | | 'EQP_S': '', |
| | | 'CUT_S': '', |
| | | 'FIXT_S': '', |
| | | 'HouseNumber': '', |
| | | 'navTabId': '', |
| | | 'dialogid': '', |
| | | 'rel': '', |
| | | 'dt': null, |
| | | 'list': {}, |
| | | 'callbackType': '', |
| | | 'forwardUrl': '' |
| | | }, |
| | | 'rows': [ |
| | | { |
| | | 'YearDate': '2022-09-01', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-02', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-03', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-04', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-05', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-06', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | } |
| | | ], |
| | | 'Cont': null |
| | | } |
| | | } |
| | | }, |
| | | |
| | | watch: { |
| | | datasNum(newV) { |
| | | // this.datasA = mockDatas(newV) |
| | | // this.datasB = mockDatas(newV) |
| | | }, |
| | | scrollToY(val) { |
| | | this.positionA = { x: val } |
| | | } |
| | | }, |
| | | created() { |
| | | this.AdvancedSchedulingSearch() |
| | | // this.AdvancedSchedulingWorkShop() |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | }, |
| | | |
| | | methods: { |
| | | AdvancedSchedulingWorkShop() { |
| | | // automaticScheduling.AdvancedSchedulingWorkShop().then(res => { |
| | | // this.list = res |
| | | // }) |
| | | }, |
| | | Search() { |
| | | this.form.page = 1 |
| | | this.show = false |
| | | this.radio = '' |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | resetFormcx() { |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | }) |
| | | }, |
| | | no_zero() { |
| | | if (this.times < 0) { |
| | | this.times = 0 |
| | | } |
| | | }, |
| | | sortChange(column, prop, order) { |
| | | this.radio = ''; |
| | | (this.form.prop = column.prop), (this.form.order = column.order) |
| | | this.show = false |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | SeachKey() { |
| | | this.form.page = 1 |
| | | this.AdvancedSchedulingSearch() |
| | | this.show = false |
| | | this.radio = '' |
| | | }, |
| | | changeLift() { |
| | | if (this.all_status) { |
| | | this.false_arr = [] |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | } else { |
| | | for (const i in this.bm_data) { |
| | | this.bm_data[i].status = false |
| | | this.bm_data[i].gtArray = [] |
| | | } |
| | | for (const i in this.facility_data) { |
| | | this.facility_data[i].gtArray = [] |
| | | } |
| | | } |
| | | }, |
| | | changeTypes() { |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | }, |
| | | change_time() { |
| | | this.time_data[0] = this.value1[0] + ' 00:00' |
| | | this.time_data[1] = this.value1[1] + ' 23:59' |
| | | this.forms.StartTime = this.value1[0] |
| | | this.forms.EndTime = this.value1[1] |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | }, |
| | | click_box(val) { |
| | | if (!val.status) { |
| | | for (const i in this.facility_data) { |
| | | const new_arr = [] |
| | | for (const j in this.facility_data[i].gtArray) { |
| | | if (this.facility_data[i].gtArray[j].id == val.id) { |
| | | } else { |
| | | new_arr.push(this.facility_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.facility_data[i].gtArray = new_arr |
| | | } |
| | | } else { |
| | | this.false_arr = [] |
| | | for (const i in this.bm_data) { |
| | | if (!this.bm_data[i].status) { |
| | | this.false_arr.push(this.bm_data[i].id) |
| | | } |
| | | } |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | } |
| | | |
| | | if (!val.status) { |
| | | for (const i in this.bm_data) { |
| | | if (!this.bm_data[i].status) { |
| | | this.bm_data[i].gtArray = [] |
| | | } |
| | | } |
| | | } else { |
| | | this.false_arr = [] |
| | | for (const i in this.bm_data) { |
| | | if (!this.bm_data[i].status) { |
| | | this.false_arr.push(this.bm_data[i].id) |
| | | } |
| | | } |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | } |
| | | for (const i in this.bm_data) { |
| | | const arr = [] |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if (this.bm_data[i].gtArray[j].type != 'schedule') { |
| | | arr.push(this.bm_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.bm_data[i].gtArray = arr |
| | | } |
| | | this.real_num = 0 |
| | | }, |
| | | look(data) { |
| | | this.showDialog = true |
| | | this.search_from.DeviceCode = data.id |
| | | this.AdvancedSchedulingEquipmenTask() |
| | | }, |
| | | AdvancedSchedulingEquipmenTask() { |
| | | // automaticScheduling |
| | | // .AdvancedSchedulingEquipmenTask(this.search_from) |
| | | // .then(res => { |
| | | // this.look_data = res.rows |
| | | // this.look_total = res.total |
| | | // }) |
| | | }, |
| | | sizeChange_look(val) { |
| | | this.search_from.rows = val |
| | | this.AdvancedSchedulingEquipmenTask() |
| | | }, |
| | | pageChange_look(val) { |
| | | this.search_from.page = val |
| | | this.AdvancedSchedulingEquipmenTask() |
| | | }, |
| | | sizeChange(val) { |
| | | this.form.rows = val |
| | | this.show = false |
| | | this.radio = '' |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | pageChange(val) { |
| | | this.form.page = val |
| | | this.show = false |
| | | this.radio = '' |
| | | this.AdvancedSchedulingSearch() |
| | | }, |
| | | // æ¥è¯¢ |
| | | AdvancedSchedulingSearch() { |
| | | // automaticScheduling.AdvancedSchedulingSearch(this.form).then(res => { |
| | | // this.mn_data = res.rows |
| | | // this.total = res.total |
| | | // this.oneClick() |
| | | // }) |
| | | }, |
| | | // ç¹å»å¸¦åºæ°æ® |
| | | OnclickAdvancedSchedulingDevice() { |
| | | // this.facility_top() |
| | | |
| | | // automaticScheduling |
| | | // .OnclickAdvancedSchedulingDevice(this.forms) |
| | | // .then(res => { |
| | | const res = this.testValue |
| | | if (res.rus.message) { |
| | | this.$message({ |
| | | showClose: true, |
| | | type: 'error', |
| | | message: res.rus.message |
| | | }) |
| | | } |
| | | this.submit_flag = false |
| | | const list = [] |
| | | this.time_all = res |
| | | const cont = res.Cont |
| | | this.real_num = 0 |
| | | for (const i in this.time_all.rows[0].children) { |
| | | const obj = { |
| | | id: '', |
| | | name: '', |
| | | AdvaDevicRhythm: '', |
| | | status: true, |
| | | colorPair: { |
| | | dark: 'rgb(83, 186, 241,0.8)', |
| | | light: 'rgb(83, 186, 241,0.1)', |
| | | light_capacity: 'rgb(209,239,237,0.8)', |
| | | h_schedule: ' rgb(100,255,192,0.8)', |
| | | scheduleing: 'rgb(20,182,231,0.8)' |
| | | }, |
| | | gtArray: [] |
| | | } |
| | | obj.id = this.time_all.rows[0].children[i].AdvaDevicNumber |
| | | obj.name = this.time_all.rows[0].children[i].AdvaDevicName |
| | | obj.AdvaDevicRhythm = this.time_all.rows[0].children[ |
| | | i |
| | | ].AdvaDevicRhythm |
| | | list.push(obj) |
| | | } |
| | | |
| | | for (const i in this.time_all.rows) { |
| | | for (const j in this.time_all.rows[i].children) { |
| | | if (this.time_all.rows[i].children[j].OneStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].OneStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].OneStartDate.split('~') |
| | | this.time_all.rows[i].children[j].OneStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].OneStartDate[0] |
| | | this.time_all.rows[i].children[j].OneStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].OneStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].TwoStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].TwoStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].TwoStartDate.split('~') |
| | | this.time_all.rows[i].children[j].TwoStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].TwoStartDate[0] |
| | | this.time_all.rows[i].children[j].TwoStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].TwoStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].ThreeStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate.split('~') |
| | | this.time_all.rows[i].children[j].ThreeStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].ThreeStartDate[0] |
| | | this.time_all.rows[i].children[j].ThreeStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].ThreeStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].FourStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate.split('~') |
| | | this.time_all.rows[i].children[j].FourStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FourStartDate[0] |
| | | this.time_all.rows[i].children[j].FourStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FourStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].FiveStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate.split('~') |
| | | this.time_all.rows[i].children[j].FiveStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FiveStartDate[0] |
| | | this.time_all.rows[i].children[j].FiveStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FiveStartDate[1] |
| | | } |
| | | } |
| | | } |
| | | // ç»åæ°çç»æ |
| | | const newList = [] |
| | | for (const i in this.time_all.rows) { |
| | | for (const j in this.time_all.rows[i].children) { |
| | | if (this.time_all.rows[i].children[j].OneStartDate != '') { |
| | | const data1 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data1.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data1.start = this.time_all.rows[i].children[j].OneStartDate[0] |
| | | data1.end = this.time_all.rows[i].children[j].OneStartDate[1] |
| | | data1.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data1) |
| | | } |
| | | if (this.time_all.rows[i].children[j].TwoStartDate != '') { |
| | | const data2 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data2.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data2.start = this.time_all.rows[i].children[j].TwoStartDate[0] |
| | | data2.end = this.time_all.rows[i].children[j].TwoStartDate[1] |
| | | data2.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data2) |
| | | } |
| | | if (this.time_all.rows[i].children[j].ThreeStartDate != '') { |
| | | const data3 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data3.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data3.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate[0] |
| | | data3.end = this.time_all.rows[i].children[j].ThreeStartDate[1] |
| | | data3.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data3) |
| | | } |
| | | if (this.time_all.rows[i].children[j].FourStartDate != '') { |
| | | const data4 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data4.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data4.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate[0] |
| | | data4.end = this.time_all.rows[i].children[j].FourStartDate[1] |
| | | data4.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data4) |
| | | } |
| | | if (this.time_all.rows[i].children[j].FiveStartDate != '') { |
| | | const data5 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data5.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data5.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate[0] |
| | | data5.end = this.time_all.rows[i].children[j].FiveStartDate[1] |
| | | data5.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data5) |
| | | } |
| | | } |
| | | } |
| | | for (const i in list) { |
| | | this.pushTiem(newList, list[i].id, list[i].gtArray) |
| | | } |
| | | this.bm_data = list |
| | | const _this = this |
| | | if (cont != '') { |
| | | for (const i in cont) { |
| | | for (const j in this.bm_data) { |
| | | if (this.bm_data[j].id == cont[i].EQP_CODE) { |
| | | const data = { |
| | | id: cont[i].EQP_CODE, |
| | | number: cont[i].ALLOC_QTY, |
| | | cl_name: cont[i].PART_NAME, |
| | | cl_code: this.cl_code, |
| | | work_order: cont[i].WO_CODE, |
| | | STATUS: _this.AdvaScheUom, |
| | | start: cont[i].TIME_START, |
| | | end: cont[i].TIME_END, |
| | | type: cont[i].STATUS == 'S' ? 'h_schedule' : 'bm_schedule' |
| | | } |
| | | |
| | | this.bm_data[j].flag = 'isCont' |
| | | |
| | | this.bm_data[j].gtArray.unshift(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | if (this.false_arr != '') { |
| | | for (const j in this.bm_data) { |
| | | if (this.false_arr.indexOf(this.bm_data[j].id) >= 0) { |
| | | this.bm_data[j].gtArray = [] |
| | | this.bm_data[j].status = false |
| | | } |
| | | } |
| | | } |
| | | // }) |
| | | }, |
| | | // æ¢åæ¶é´ |
| | | MinutesTest(time) { |
| | | var sdate1 = new Date(time) |
| | | sdate1.setMinutes(sdate1.getMinutes() + this.times * 1) |
| | | var now = |
| | | sdate1.getFullYear() + |
| | | '-' + |
| | | this.add_one(sdate1.getMonth()) + |
| | | '-' + |
| | | sdate1.getDate() + |
| | | ' ' + |
| | | sdate1.getHours() + |
| | | ':' + |
| | | sdate1.getMinutes() + |
| | | ':' + |
| | | sdate1.getSeconds() |
| | | return now |
| | | }, |
| | | // +1 |
| | | add_one(date) { |
| | | return parseInt(date) + 1 |
| | | }, |
| | | // æå
¥äº§è½æ¶é´æ®µ |
| | | pushTiem(newList, id, arr) { |
| | | for (const i in newList) { |
| | | if (newList[i].id == id) { |
| | | const data = { |
| | | start: newList[i].start, |
| | | end: newList[i].end, |
| | | id: newList[i].id, |
| | | mod: newList[i].mod, |
| | | type: 'capacity' |
| | | } |
| | | arr.push(data) |
| | | } |
| | | } |
| | | }, |
| | | getNowFormatDate() { |
| | | var date = new Date() |
| | | var seperator1 = '-' |
| | | var year = date.getFullYear() |
| | | var month = date.getMonth() + 1 |
| | | // var strDate = date.getDate()+1; |
| | | var strDate = date.getDate() |
| | | if (month >= 1 && month <= 9) { |
| | | month = '0' + month |
| | | } |
| | | if (strDate >= 0 && strDate <= 9) { |
| | | strDate = '0' + strDate |
| | | } |
| | | var currentdate = year + seperator1 + month + seperator1 + strDate |
| | | return currentdate |
| | | }, |
| | | getCurrentRow(row) { |
| | | // this.show =true |
| | | this.meter = row.AdvaScheQty * 1 - row.AdvaScheYPQty * 1 // å¯ä»¥åä¸ªæ° |
| | | this.value1 = [] |
| | | this.cl_name = row.AdvaSchePartName |
| | | this.cl_code = row.AdvaSchePartNumber |
| | | this.AdvaScheUom = row.AdvaScheUom |
| | | this.work_order = row.AdvaScheWorkCode |
| | | this.value1.push(this.getNowFormatDate()) |
| | | this.value1.push(row.AdvaScheEndDate) |
| | | if (this.value1 != '') { |
| | | this.time_data[0] = this.value1[0] + ' 00:00' |
| | | this.time_data[1] = this.value1[1] + ' 23:59' |
| | | } |
| | | this.forms.WorkCode = row.AdvaScheWorkCode |
| | | this.forms.WorkShop = row.AdvaScheWorkShopid |
| | | this.forms.PartNumber = row.AdvaSchePartNumber |
| | | this.forms.BotProceCode = row.AdvaScheBotProcid |
| | | this.forms.StartTime = this.getNowFormatDate() |
| | | this.forms.EndTime = row.AdvaScheEndDate |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | this.formUpdata.WorkCode = row.AdvaScheWorkCode |
| | | this.formUpdata.BotProceCode = row.AdvaScheBotProcid |
| | | this.search_from.WorkTime = |
| | | this.getNowFormatDate() + '~' + row.AdvaScheEndDate |
| | | this.search_from.BotProceName = row.AdvaScheBotProcName |
| | | }, |
| | | // æäº¤æç¨ |
| | | click_yes() { |
| | | if (this.submit_flag) { |
| | | this.$message({ |
| | | showClose: true, |
| | | type: 'error', |
| | | message: 'æ°éæªæå®,è¯·è®¾ç½®äº§è½æ¶é´' |
| | | }) |
| | | } else { |
| | | const list = [] // æäº¤æ°ç» |
| | | for (const i in this.bm_data) { |
| | | const arr = [] |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if (this.bm_data[i].gtArray[j].type == 'schedule') { |
| | | arr.push(this.bm_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | if (arr != '') { |
| | | for (const i in arr) { |
| | | const data = { |
| | | AlreDevicNumber: '', |
| | | AlreStartDate: '', |
| | | AlreEndDate: '', |
| | | AlreQty: '' |
| | | } |
| | | data.AlreDevicNumber = arr[i].id |
| | | data.AlreStartDate = arr[i].start |
| | | data.AlreEndDate = arr[i].end |
| | | data.AlreQty = arr[i].number |
| | | list.push(data) |
| | | } |
| | | } |
| | | } |
| | | // æç¨ç¸å设å¤è·åå¼å§æ¶é´ ç»ææ¶é´ æ°éçæ»å |
| | | // è¿æ»¤ |
| | | let updata = [] |
| | | for (const i in list) { |
| | | if (list[i].AlreStartDate != '') { |
| | | updata.push(list[i]) |
| | | } |
| | | } |
| | | |
| | | updata = JSON.stringify(updata) |
| | | this.formUpdata.json = updata |
| | | if (list == '') { |
| | | this.$message({ |
| | | showClose: true, |
| | | message: '请å
颿', |
| | | type: 'error' |
| | | }) |
| | | return false |
| | | } |
| | | automaticScheduling |
| | | .SubmitAlreadyScheduling(this.formUpdata) |
| | | .then(res => { |
| | | if (res.statusCode == 300) { |
| | | this.$message({ |
| | | showClose: true, |
| | | message: res.message, |
| | | type: 'error' |
| | | }) |
| | | } else { |
| | | this.$message({ |
| | | showClose: true, |
| | | message: res.message, |
| | | type: 'success' |
| | | }) |
| | | } |
| | | this.meter = 0 |
| | | this.real_num = 0 |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | this.AdvancedSchedulingSearch() |
| | | }) |
| | | } |
| | | }, |
| | | |
| | | // æ¶é´/设å¤ä¼å
æç¨ |
| | | click_schedule() { |
| | | const timestamp = new Date().toLocaleDateString() |
| | | if (new Date(this.value1[0]) < new Date(timestamp)) { |
| | | this.$message({ |
| | | showClose: true, |
| | | type: 'error', |
| | | message: 'æç¨æ¶é´ä¸å¯ä»¥å°äºå½åæ¶é´' |
| | | }) |
| | | return false |
| | | } |
| | | |
| | | this.nitialize() |
| | | // 设å¤ä¼å
|
| | | if (this.bm_data != '' && this.types == 'N') { |
| | | this.fun_time() |
| | | this.change_num(this.bm_data) |
| | | } else if (this.facility_data != '' && this.types == 'Y') { |
| | | this.time_nitalize() |
| | | this.fun_facility() |
| | | this.dataTransition() |
| | | this.change_num(this.bm_data) |
| | | } |
| | | }, |
| | | // æå¨è¿æ»¤æææ¶é´å·²æç¨ |
| | | time_nitalize() { |
| | | for (const i in this.facility_data) { |
| | | this.facility_data[i].gtArray = this.facility_data[i].gtArray.filter(item => item.type != 'schedule') |
| | | } |
| | | }, |
| | | |
| | | // æå¨è¿æ»¤ææè®¾å¤å·²æç¨ |
| | | nitialize() { |
| | | for (const i in this.bm_data) { |
| | | const newArr = [] |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if (this.bm_data[i].gtArray[j].type != 'schedule') { |
| | | newArr.push(this.bm_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.bm_data[i].gtArray = newArr |
| | | } |
| | | }, |
| | | |
| | | // ç»æç¨æåä¸ä¸ªä¿®æ¹æ°é |
| | | change_num(arr) { |
| | | this.real_num = 0 // çå®å·²ææ°é |
| | | let num = 0 // åæ´å·²ææ°é |
| | | const arr_num = [] // å·²ææ°æ® |
| | | let mend_num = 0 |
| | | const len = 0 |
| | | for (const i in arr) { |
| | | for (const j in arr[i].gtArray) { |
| | | if (arr[i].gtArray[j].type == 'schedule') { |
| | | arr_num.unshift(arr[i].gtArray[j]) |
| | | } |
| | | } |
| | | } |
| | | |
| | | for (const n in arr_num) { |
| | | this.real_num += arr_num[n].real_number |
| | | num += arr_num[n].number * 1 |
| | | } |
| | | |
| | | this.real_num = Math.ceil(this.real_num) |
| | | const y10 = this.meter - this.real_num |
| | | if (y10 <= 10) { |
| | | this.real_num = this.meter |
| | | mend_num = this.meter - num |
| | | } else { |
| | | } |
| | | if (this.real_num * 1 == this.meter * 1) { |
| | | // mend_num = this.meter - num |
| | | } else { |
| | | this.submit_flag = true |
| | | } |
| | | for (const i in this.bm_data) { |
| | | for (const j in this.bm_data[i].gtArray) { |
| | | if ( |
| | | this.bm_data[i].gtArray[j].type == 'schedule' && |
| | | this.bm_data[i].gtArray[j].end_num |
| | | ) { |
| | | this.bm_data[i].gtArray[j].number = |
| | | this.bm_data[i].gtArray[j].number * 1 + mend_num |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | fun_time() { |
| | | let all_num = this.meter |
| | | const all_time = [] |
| | | let flag1 = 0 |
| | | const mod = this.bm_data[0].mod |
| | | // let nowTime = this.bm_data[0].AdvaDevicRhythm*all_num |
| | | for (const i in this.bm_data) { |
| | | let end_arr = [] // å·²æç¨çæ°ç» |
| | | let nend_arr = [] // å¾
æç¨çæ°ç» |
| | | const add_arr = [] // å·²æç¨çæ°ç» |
| | | let capacity_arr = [] // è¦æç¨çæ°ç» |
| | | this.bm_data[i].gtArray.sort((a, b) => new Date(a.end).getTime() - new Date(b.end).getTime()) |
| | | // let capacity_end = '' |
| | | end_arr = this.bm_data[i].gtArray.filter(item => item.type == 'h_schedule') |
| | | nend_arr = this.bm_data[i].gtArray.filter(item => item.type == 'capacity') |
| | | if (end_arr && end_arr.length > 0) { |
| | | capacity_arr = nend_arr.map(item => { |
| | | // æé¤æå·²ç»æç¨çåå¨hsheduleï¼startï¼endé½ç¸ççæ
åµ |
| | | const schedule = end_arr.filter(schedule => { |
| | | return new Date(item.start).getTime() <= new Date(schedule.start).getTime() && |
| | | new Date(item.end).getTime() > new Date(schedule.end).getTime() |
| | | }) |
| | | if (schedule && schedule.length > 0) { |
| | | item.start = this.MinutesTest(schedule[0]['end']) |
| | | } |
| | | |
| | | const schedule1 = end_arr.filter(schedule => { |
| | | return new Date(item.start).getTime() == new Date(schedule.start).getTime() && |
| | | new Date(item.end).getTime() == new Date(schedule.end).getTime() |
| | | }) |
| | | if (schedule1 && schedule1.length > 0) { |
| | | item.capacity = false |
| | | } |
| | | |
| | | return item |
| | | }).filter(item => item.capacity != false) |
| | | } else { |
| | | capacity_arr = nend_arr |
| | | } |
| | | |
| | | const id_obj = { |
| | | id: '', |
| | | start_time: '' |
| | | } |
| | | if (end_arr != '') { |
| | | (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end) |
| | | } |
| | | for (const w in capacity_arr) { |
| | | let end_time = '' |
| | | let mistiming = '' |
| | | const data = { |
| | | id: capacity_arr[w].id, |
| | | start: '', |
| | | end: '', |
| | | type: 'schedule', |
| | | cl_name: this.cl_name, |
| | | cl_code: this.cl_code, |
| | | work_order: this.work_order, |
| | | number: 0, |
| | | real_number: 0 |
| | | } |
| | | if ( |
| | | id_obj.start_time != '' && |
| | | flag1 == 0 && |
| | | new Date(id_obj.start_time) >= new Date(capacity_arr[w].start) |
| | | ) { |
| | | data.start = this.MinutesTest(id_obj.start_time) |
| | | flag1 = 1 |
| | | } else { |
| | | data.start = capacity_arr[w].start |
| | | } |
| | | let nowTime = |
| | | (this.bm_data[i].AdvaDevicRhythm * all_num) / capacity_arr[w].mod |
| | | end_time = this.formSeconds(nowTime, data.start, capacity_arr[w].mod) // æ»å
±çç»ææ¶é´ |
| | | data.end = end_time |
| | | mistiming = this.formTime( |
| | | end_time, |
| | | capacity_arr[w].end, |
| | | capacity_arr[w].mod |
| | | ) // æ»å
±çç»ææ¶é´-å½åçç»ææ¶é´ = å©ä¸å¤ä¹
æ¶é´ |
| | | if (mistiming >= 0) { |
| | | console.log( |
| | | new Date(data.end) - new Date(data.start), |
| | | capacity_arr[w].mod, |
| | | this.bm_data[i].AdvaDevicRhythm, |
| | | 'é¿æ¯é¡¿åæ¯èè¬' |
| | | ) |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | data.end_num = true |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.bm_data[i].gtArray.push(data) |
| | | } |
| | | |
| | | return false |
| | | } else { |
| | | data.end = capacity_arr[w].end |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | this.bm_data[i].AdvaDevicRhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | |
| | | nowTime = |
| | | (all_num - data.real_number) * this.bm_data[i].AdvaDevicRhythm |
| | | all_num = all_num - data.real_number |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.bm_data[i].gtArray.push(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | // è®¾å¤æç¨æ¹æ³ |
| | | fun_facility() { |
| | | // æé¤æªå¾é项 |
| | | for (const i in this.facility_data) { |
| | | const newArr = [] |
| | | for (const j in this.facility_data[i].gtArray) { |
| | | if (this.false_arr.indexOf(this.facility_data[i].gtArray[j].id) < 0) { |
| | | newArr.push(this.facility_data[i].gtArray[j]) |
| | | } |
| | | } |
| | | this.facility_data[i].gtArray = newArr |
| | | } |
| | | let all_num = this.meter |
| | | const all_time = [] |
| | | const flag1 = 0 |
| | | // let nowTime = this.facility_data[0].AdvaDevicRhythm*all_num //æ°éOK |
| | | |
| | | for (const i in this.facility_data) { |
| | | let end_arr = [] |
| | | let nend_arr = [] // æç¨çæ°ç» |
| | | const add_arr = [] // å·²æç¨çæ°ç» |
| | | let capacity_arr = [] // è¦æç¨çæ°ç» |
| | | |
| | | // this.facility_data[i].gtArray.sort((a,b) => new Date(a.end).getTime() - new Date(b.end).getTime()) |
| | | // let capacity_end = '' |
| | | end_arr = this.facility_data[i].gtArray.filter(item => item.type == 'h_schedule') |
| | | nend_arr = this.facility_data[i].gtArray.filter(item => item.type == 'capacity') |
| | | console.log(nend_arr) |
| | | capacity_arr = JSON.parse(JSON.stringify(nend_arr)) |
| | | end_arr.forEach(item => { |
| | | for (let i = 0; i < capacity_arr.length; i++) { |
| | | if (new Date(capacity_arr[i].start).getTime() === new Date(item.start).getTime()) { |
| | | console.log(i, capacity_arr[i], 'ååå') |
| | | capacity_arr.splice(i, 1) |
| | | break |
| | | } |
| | | } |
| | | }) |
| | | console.log(capacity_arr, '大西ç') |
| | | |
| | | if (!capacity_arr || capacity_arr.length == 0) break |
| | | // const firstCapacity = capacity_arr[0] |
| | | |
| | | const schedule_arr = end_arr.filter(item => { |
| | | const remain = nend_arr.some(sitem => { |
| | | return new Date(sitem.start).getTime() === new Date(item.start).getTime() && |
| | | new Date(item.end).getTime() < new Date(sitem.end).getTime() |
| | | }) |
| | | return remain |
| | | }) |
| | | console.log(schedule_arr) |
| | | if (schedule_arr && schedule_arr.length > 0) { |
| | | const scheduleCan = schedule_arr.map(item => { |
| | | const capcity = nend_arr.filter(sitem => { |
| | | return new Date(sitem.start).getTime() === new Date(item.start).getTime() && |
| | | new Date(item.end).getTime() < new Date(sitem.end).getTime() |
| | | })[0] |
| | | console.log('capacity', capcity) |
| | | capcity.start = this.MinutesTest(item.end) |
| | | return capcity |
| | | }) |
| | | const newSchedule = JSON.parse(JSON.stringify(scheduleCan)) |
| | | capacity_arr = newSchedule.concat(capacity_arr) |
| | | } |
| | | console.log(schedule_arr) |
| | | console.log('å¯æç¨æ°ç»', capacity_arr) |
| | | const id_obj = {} |
| | | if (end_arr != '') { |
| | | (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end) |
| | | } |
| | | |
| | | for (const w in capacity_arr) { |
| | | let end_time |
| | | let mistiming |
| | | const data = { |
| | | id: capacity_arr[w].id, |
| | | start: '', |
| | | end: '', |
| | | type: 'schedule', |
| | | cl_name: this.cl_name, |
| | | cl_code: this.cl_code, |
| | | work_order: this.work_order, |
| | | number: 0, |
| | | real_number: 0 |
| | | } |
| | | // console.log(id_obj.start_time) |
| | | if ( |
| | | id_obj && |
| | | new Date(id_obj.start_time).getTime() >= |
| | | new Date(capacity_arr[w].start).getTime() |
| | | ) { |
| | | if (data.id == id_obj.id) { |
| | | data.start = this.MinutesTest(id_obj.start_time) |
| | | // flag1 =1 |
| | | } else { |
| | | data.start = capacity_arr[w].start |
| | | // console.log(data.start) |
| | | // flag1 =1 |
| | | } |
| | | } else { |
| | | data.start = capacity_arr[w].start |
| | | } |
| | | // let nowTime = this.facility_data[0].AdvaDevicRhythm*all_num |
| | | let nowTime = |
| | | (capacity_arr[w].rhythm * all_num) / capacity_arr[w].mod |
| | | |
| | | end_time = this.formSeconds(nowTime, data.start) |
| | | |
| | | data.end = end_time |
| | | mistiming = this.formTime(end_time, capacity_arr[w].end) |
| | | if (mistiming >= 0) { |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | data.end_num = true |
| | | |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.facility_data[i].gtArray.push(data) |
| | | } |
| | | |
| | | return false |
| | | } else { |
| | | data.end = capacity_arr[w].end |
| | | data.number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.real_number = |
| | | ((new Date(data.end) - new Date(data.start)) * |
| | | capacity_arr[w].mod) / |
| | | capacity_arr[w].rhythm / |
| | | 1000 |
| | | data.number = data.number.toFixed(0) |
| | | nowTime = (all_num - data.real_number) * capacity_arr[w].rhythm |
| | | all_num = all_num - data.real_number |
| | | |
| | | // nowTime = mistiming * -1 |
| | | if (new Date(data.start) >= new Date(data.end)) { |
| | | } else { |
| | | this.facility_data[i].gtArray.push(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | }, |
| | | // ç»è®¾å¤è½¬æ¢æ ¼å¼ |
| | | dataTransition() { |
| | | this.bm_data = [] |
| | | const data = this.facility_data |
| | | |
| | | const all = [] |
| | | const list = this.title_list |
| | | for (const i in data) { |
| | | for (const j in data[i].gtArray) { |
| | | all.push(data[i].gtArray[j]) |
| | | } |
| | | } |
| | | |
| | | for (const i in list) { |
| | | list[i].gtArray = [] |
| | | this.pushTiemsss(all, list[i].id, list[i].gtArray) |
| | | } |
| | | |
| | | for (const n in list) { |
| | | if (list[n].gtArray.length == 0) { |
| | | list[n].status = false |
| | | } |
| | | } |
| | | |
| | | // console.log(list) |
| | | this.bm_data = list |
| | | }, |
| | | // æå
¥äº§è½æ¶é´æ®µ |
| | | pushTiemsss(newList, id, arr) { |
| | | for (const i in newList) { |
| | | if (newList[i].id == id) { |
| | | arr.push(newList[i]) |
| | | } |
| | | } |
| | | }, |
| | | // 设å¤ä¼å
|
| | | facility_top() { |
| | | // automaticScheduling |
| | | // .OnclickAdvancedSchedulingDevice(this.forms) |
| | | // .then(res => { |
| | | const res = this.testValue |
| | | this.show = true |
| | | const data = res.rows |
| | | const cont = res.Cont |
| | | this.title_list = [] |
| | | for (const i in data[0].children) { |
| | | const obj = { |
| | | id: '', |
| | | name: '', |
| | | status: true, |
| | | AdvaDevicRhythm: '', |
| | | // mod:'', |
| | | colorPair: { |
| | | dark: 'rgb(83, 186, 241,0.8)', |
| | | light: 'rgb(83, 186, 241,0.1)', |
| | | light_capacity: 'rgb(209,239,237,0.8)', |
| | | h_schedule: ' rgb(100,255,192,0.8)', |
| | | scheduleing: 'rgb(20,182,231,0.8)' |
| | | }, |
| | | gtArray: [] |
| | | } |
| | | obj.id = data[0].children[i].AdvaDevicNumber |
| | | obj.name = data[0].children[i].AdvaDevicName |
| | | obj.AdvaDevicRhythm = data[0].children[i].AdvaDevicRhythm |
| | | // obj.mod =data[0].children[i].AdvaDevicCropMob *1 |
| | | |
| | | this.title_list.push(obj) |
| | | } |
| | | for (const i in data) { |
| | | for (const j in data[i].children) { |
| | | if (data[i].children[j].OneStartDate != '') { |
| | | data[i].children[j].OneStartDate = data[i].children[ |
| | | j |
| | | ].OneStartDate.split('~') |
| | | data[i].children[j].OneStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].OneStartDate[0] |
| | | data[i].children[j].OneStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].OneStartDate[1] |
| | | } |
| | | if (data[i].children[j].TwoStartDate != '') { |
| | | data[i].children[j].TwoStartDate = data[i].children[ |
| | | j |
| | | ].TwoStartDate.split('~') |
| | | data[i].children[j].TwoStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[0] |
| | | data[i].children[j].TwoStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[1] |
| | | } |
| | | if (data[i].children[j].ThreeStartDate != '') { |
| | | data[i].children[j].ThreeStartDate = data[i].children[ |
| | | j |
| | | ].ThreeStartDate.split('~') |
| | | data[i].children[j].ThreeStartDate[0] = |
| | | data[i].YearDate + |
| | | ' ' + |
| | | data[i].children[j].ThreeStartDate[0] |
| | | data[i].children[j].ThreeStartDate[1] = |
| | | data[i].YearDate + |
| | | ' ' + |
| | | data[i].children[j].ThreeStartDate[1] |
| | | } |
| | | if (data[i].children[j].FourStartDate != '') { |
| | | data[i].children[j].FourStartDate = data[i].children[ |
| | | j |
| | | ].FourStartDate.split('~') |
| | | data[i].children[j].FourStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FourStartDate[0] |
| | | data[i].children[j].FourStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FourStartDate[1] |
| | | } |
| | | if (data[i].children[j].FiveStartDate != '') { |
| | | data[i].children[j].FiveStartDate = data[i].children[ |
| | | j |
| | | ].FiveStartDate.split('~') |
| | | data[i].children[j].FiveStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[0] |
| | | data[i].children[j].FiveStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[1] |
| | | } |
| | | } |
| | | } |
| | | // æ´æ¹æ ¼å¼ |
| | | this.facility_data = [] |
| | | |
| | | for (const i in data) { |
| | | const time = { |
| | | date: data[i].YearDate, |
| | | AdvaDevicRhythm: '', |
| | | gtArray: [] |
| | | } |
| | | if (data[i].children != '') { |
| | | time.AdvaDevicRhythm = data[i].children[0].AdvaDevicRhythm |
| | | } |
| | | for (const j in data[i].children) { |
| | | if (data[i].children[j].OneStartDate != '') { |
| | | const icu1 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].OneStartDate[0], |
| | | end: data[i].children[j].OneStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu1) |
| | | } |
| | | if (data[i].children[j].TwoStartDate != '') { |
| | | const icu2 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].TwoStartDate[0], |
| | | end: data[i].children[j].TwoStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu2) |
| | | } |
| | | if (data[i].children[j].ThreeStartDate != '') { |
| | | const icu3 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].ThreeStartDate[0], |
| | | end: data[i].children[j].ThreeStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu3) |
| | | } |
| | | if (data[i].children[j].FourStartDate != '') { |
| | | const icu4 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].FourStartDate[0], |
| | | end: data[i].children[j].FourStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu4) |
| | | } |
| | | if (data[i].children[j].FiveStartDate != '') { |
| | | const icu5 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].FiveStartDate[0], |
| | | end: data[i].children[j].FiveStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu5) |
| | | } |
| | | } |
| | | |
| | | this.facility_data.push(time) |
| | | } |
| | | |
| | | if (cont != '') { |
| | | for (const i in cont) { |
| | | const date_time = cont[i].TIME_START.split(' ') |
| | | const cont_date = date_time[0] |
| | | for (const j in this.facility_data) { |
| | | const data = { |
| | | id: cont[i].EQP_CODE, |
| | | date: cont_date, |
| | | number: cont[i].ALLOC_QTY, |
| | | cl_name: cont[i].PART_NAME, |
| | | cl_code: this.cl_code, |
| | | work_order: cont[i].WO_CODE, |
| | | start: cont[i].TIME_START, |
| | | end: cont[i].TIME_END, |
| | | type: 'h_schedule' |
| | | } |
| | | if (this.facility_data[j].date == data.date) { |
| | | this.facility_data[j].gtArray.unshift(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // }) |
| | | }, |
| | | // æç¨æ¹æ³ |
| | | formSeconds(s1, start, mod) { |
| | | const nowData = new Date(start) |
| | | // ç®åºå½åæç¨çç»ææ¶é´ |
| | | return this.transitionTime( |
| | | new Date(nowData.setSeconds(nowData.getSeconds() + s1)) |
| | | ) |
| | | }, |
| | | // è½¬åæ åæ¶é´ |
| | | transitionTime(time) { |
| | | const d = new Date(time) |
| | | return ( |
| | | d.getFullYear() + |
| | | '-' + |
| | | (d.getMonth() + 1) + |
| | | '-' + |
| | | d.getDate() + |
| | | ' ' + |
| | | d.getHours() + |
| | | ':' + |
| | | d.getMinutes() + |
| | | ':' + |
| | | d.getSeconds() |
| | | ) |
| | | }, |
| | | // æ¶é´æ¯è¾ |
| | | formTime(d1, d2, mod) { |
| | | // d1 æé¤ç»ææ¶é´ d2 å½å产è½ç»ææ¶é´ |
| | | const time1 = new Date(d1) |
| | | const time2 = new Date(d2) |
| | | return parseInt(time2 - time1) / 1000 |
| | | }, |
| | | formatSeconds(value) { |
| | | var secondTime = parseInt(value) // ç§ |
| | | var minuteTime = 0 // å |
| | | var hourTime = 0 // å°æ¶ |
| | | if (secondTime > 60) { |
| | | // å¦æç§æ°å¤§äº60ï¼å°ç§æ°è½¬æ¢ææ´æ° |
| | | // è·ååéï¼é¤ä»¥60åæ´æ°ï¼å¾å°æ´æ°åé |
| | | minuteTime = parseInt(secondTime / 60) |
| | | // è·åç§æ°ï¼ç§æ°åä½ï¼å¾å°æ´æ°ç§æ° |
| | | secondTime = parseInt(secondTime % 60) |
| | | // 妿åé大äº60ï¼å°åéè½¬æ¢æå°æ¶ |
| | | if (minuteTime > 60) { |
| | | // è·åå°æ¶ï¼è·ååéé¤ä»¥60ï¼å¾å°æ´æ°å°æ¶ |
| | | hourTime = parseInt(minuteTime / 60) |
| | | // è·åå°æ¶ååä½çåï¼è·ååéé¤ä»¥60åä½çå |
| | | minuteTime = parseInt(minuteTime % 60) |
| | | } |
| | | } |
| | | var result = '' + parseInt(secondTime) + '' |
| | | |
| | | if (minuteTime > 0) { |
| | | result = '' + parseInt(minuteTime) + ':' + result |
| | | } |
| | | if (hourTime > 0) { |
| | | result = '' + parseInt(hourTime) + ':' + result |
| | | } |
| | | return result |
| | | }, |
| | | updateTimeLines(timeA, timeB) { |
| | | this.timeLines = [ |
| | | { |
| | | time: timeA |
| | | }, |
| | | { |
| | | time: timeB, |
| | | color: '#747e80' |
| | | } |
| | | ] |
| | | }, |
| | | scrollLeftA(val) { |
| | | this.positionB = { x: val } |
| | | }, |
| | | scrollLeftB(val) { |
| | | this.positionA = { x: val } |
| | | }, |
| | | // 设置åå§åæ°æ® |
| | | oneClick() { |
| | | // this.getCurrentRow(this.mn_data[0]) |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | body { |
| | | font: 12px; |
| | | margin: 0; |
| | | padding: 0; |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .box_style { |
| | | position: relative; |
| | | top: 40px; |
| | | left: -75px; |
| | | } |
| | | |
| | | .box_styles { |
| | | position: relative; |
| | | top: 40px; |
| | | left: 0; |
| | | } |
| | | |
| | | #app { |
| | | display: flex; |
| | | flex-direction: column; |
| | | padding: 0 10px; |
| | | /* height: calc(100vh - 100px); */ |
| | | } |
| | | |
| | | label { |
| | | margin-left: 10px; |
| | | } |
| | | |
| | | input { |
| | | width: 40px; |
| | | height: 20px; |
| | | vertical-align: middle; |
| | | } |
| | | |
| | | input[type="range"] { |
| | | width: 100px; |
| | | } |
| | | |
| | | .top-bar { |
| | | /* height: 30px; */ |
| | | margin-bottom: 20px; |
| | | } |
| | | |
| | | .container { |
| | | display: flex; |
| | | flex-direction: column; |
| | | flex: 1; |
| | | } |
| | | |
| | | .main-footer { |
| | | /* height: 30px; */ |
| | | } |
| | | |
| | | .ib { |
| | | display: inline-block; |
| | | } |
| | | |
| | | .w250 { |
| | | width: 250px; |
| | | } |
| | | |
| | | .el-slider { |
| | | width: 100px; |
| | | } |
| | | |
| | | .tc { |
| | | text-align: center; |
| | | } |
| | | |
| | | .name { |
| | | display: flex; |
| | | box-sizing: border-box; |
| | | overflow: hidden; |
| | | height: 100%; |
| | | width: 100%; |
| | | padding: 0 5px 0 0; |
| | | border-radius: 8px 0 0 8px; |
| | | align-items: center; |
| | | } |
| | | |
| | | .colorBar { |
| | | width: 10px; |
| | | height: 100%; |
| | | } |
| | | |
| | | .carId { |
| | | flex: 1; |
| | | } |
| | | |
| | | .tc { |
| | | color: #909399; |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .type { |
| | | padding: 0 5px 0 0; |
| | | font-size: 1.2rem; |
| | | } |
| | | |
| | | .t_size { |
| | | font-size: 14px; |
| | | } |
| | | |
| | | .icon_true { |
| | | height: 8px; |
| | | display: inline-block; |
| | | width: 8px; |
| | | background: #00a79d; |
| | | margin-right: 7px; |
| | | border-radius: 15px; |
| | | } |
| | | |
| | | .icon_ty { |
| | | height: 8px; |
| | | display: inline-block; |
| | | width: 8px; |
| | | background: red; |
| | | margin-right: 7px; |
| | | border-radius: 15px; |
| | | } |
| | | |
| | | .icon_gz { |
| | | height: 8px; |
| | | display: inline-block; |
| | | width: 8px; |
| | | background: yellow; |
| | | margin-right: 7px; |
| | | border-radius: 15px; |
| | | } |
| | | |
| | | /* .el-col-offset-1 { |
| | | margin-left: 0.5% !important; |
| | | } */ |
| | | .marginLeft { |
| | | margin-left: 15px; |
| | | } |
| | | |
| | | .button_style { |
| | | background: #00a79d; |
| | | color: #ffff; |
| | | border-color: #00a79d; |
| | | } |
| | | |
| | | .rg { |
| | | float: right; |
| | | } |
| | | |
| | | .color { |
| | | color: #909399; |
| | | } |
| | | </style> |
| ÎļþÃû´Ó src/views/sbgl/index1.js ÐÞ¸Ä |
| | |
| | | import dayjs from 'dayjs' |
| | | import Mock from 'mockjs' |
| | | |
| | | const colorList = ['(252, 105, 100)', '(247, 167, 71)', '(116, 202, 90)', '(83, 186, 241)', '(208, 142, 2231)'] |
| | | const nameList = '叿å·,é£ç¿¼å·,å
æå·,窥æ¢å·,åç¥å·,è¦å®å·,éªçµæµæå·,å士å·,é¹é³ç«ç¥å·,ç廿å·,叿ä¹å
å·,åæµ·å¿è
å·,ç«éE3å·,å±±ç¥å·,å®å
¨å«å£«å·,éé¤å·,寿æå·,ææå·,ç½æ¼æ¯å¡,欲æå·,é¹é³é·çµå·,æ¶é²å·,æ¬§æ´²ä¹æå·'.split(',') |
| | | |
| | |
| | | <template> |
| | | <div> |
| | | <el-tabs> |
| | | <el-row style="margin-bottom:20px"> |
| | | <!-- <el-col :span="2"> |
| | | <el-input v-model="form.Seach" @keyup.enter.native="SeachKey" placeholder="请è¾å
¥å
³é®è¯" size="small"></el-input> |
| | | </el-col>--> |
| | | <el-col :span="7" :offset="1"> |
| | | <span class="t_size" style="margin-left:7px">æç¨æ¥æ</span> |
| | | <el-date-picker |
| | | v-model="value1" |
| | | type="daterange" |
| | | range-separator="~" |
| | | format="yyyy-MM-dd" |
| | | value-format="yyyy-MM-dd" |
| | | start-placeholder="å¼å§æ¥æ" |
| | | end-placeholder="ç»ææ¥æ" |
| | | size="small" |
| | | :picker-options="pickerOptions1" |
| | | /> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <span class="t_size">æç¨æ¹å¼</span> |
| | | <el-select v-model="types" size="small" style="width:120px" @change="changeTypes"> |
| | | <el-option value="N" label="设å¤ä¼å
" /> |
| | | <el-option value="Y" label="æ¶é´ä¼å
" /> |
| | | </el-select> |
| | | </el-col> |
| | | |
| | | <el-col :span="3" :offset="1"> |
| | | <div style="height:32px;"> |
| | | <span class="t_size">æ¶é´å»åº¦</span> |
| | | <select id="scale" v-model.number="scale"> |
| | | <option v-for="i in scaleList" :key="i">{{ i }}</option> |
| | | </select> |
| | | <span class="t_size">åé</span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <div style="height:32px;"> |
| | | <span class="t_size">æ¢åæ¶é´</span> |
| | | <el-input |
| | | id="scale" |
| | | v-model="times" |
| | | type="number" |
| | | size="mini" |
| | | style="display:inline-block;width:80px;" |
| | | @change="no_zero" |
| | | /> |
| | | <span class="t_size">åé</span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <div style="height:32px;line-height: 28px;"> |
| | | <span class="t_size">颿è¿åº¦</span> |
| | | <span> |
| | | <span style="text-decoration:underline;">{{ real_num }}</span> / |
| | | <span style="text-decoration:underline">{{ meter }}</span> |
| | | </span> |
| | | </div> |
| | | </el-col> |
| | | |
| | | <el-col :span="3"> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | icon="el-icon-document-remove" |
| | | style="margin-left:20px;" |
| | | >颿 |
| | | <!-- @click="click_schedule"--> |
| | | |
| | | </el-button> |
| | | <el-button |
| | | type="primary" |
| | | size="mini" |
| | | icon="el-icon-document-checked" |
| | | >æäº¤ |
| | | <!-- @click="click_yes"--> |
| | | |
| | | </el-button> |
| | | <p /> |
| | | </el-col> |
| | | </el-row> |
| | | <el-row /> |
| | | </el-tabs> |
| | | <div class="container"> |
| | | <v-gantt-chart |
| | | :start-time="time_data[0]" |
| | | :end-time="time_data[1]" |
| | | :cell-width="cellWidth" |
| | | :cell-height="cellHeight" |
| | | :time-lines="timeLines" |
| | | :title-height="titleHeight" |
| | | :scale="scale" |
| | | :title-width="titleWidth" |
| | | show-current-time |
| | | :hide-header="hideHeader" |
| | | :data-key="dataKey" |
| | | :array-keys="arrayKeys" |
| | | :scroll-to-postion="positionA" |
| | | :datas="bm_data" |
| | | > |
| | | <!-- @scrollLeft="scrollLeftA"--> |
| | | |
| | | <template slot="block" slot-scope="{data,item}"> |
| | | <Test |
| | | :data="data" |
| | | :update-time-lines="updateTimeLines" |
| | | :cell-height="cellHeight" |
| | | :current-time="currentTime" |
| | | :item="item" |
| | | /> |
| | | </template> |
| | | <template slot="left" slot-scope="{data}"> |
| | | <div class="name"> |
| | | <div class="carId"> |
| | | <el-checkbox |
| | | v-model="data.status" |
| | | style="margin-right:5px;" |
| | | /> |
| | | <!-- @change="click_box(data)"--> |
| | | |
| | | {{ data.id }} {{ data.name }} |
| | | </div> |
| | | <div class="speed"> |
| | | <el-tooltip class="item" effect="dark" content="æ¥ç" placement="top"> |
| | | <el-button type="text" size="mini"> |
| | | <!-- @click="look(data)"--> |
| | | <i class="el-icon-document size i-color" /> |
| | | </el-button> |
| | | </el-tooltip> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | <template slot="title"> |
| | | <span class="tc">å·¥ä½å表</span> |
| | | |
| | | <el-checkbox v-model="all_status" class="box_style" @change="changeLift()" /> |
| | | <input v-model.number="cellWidth" type="range" min="20" max="100" class="box_styles"> |
| | | </template> |
| | | </v-gantt-chart> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import dayjs from 'dayjs' |
| | | import { mockDatas } from '@/views/sbgl/index1' |
| | | |
| | | export default { |
| | | name: 'Byjl', |
| | | data() { |
| | | return { |
| | | show: true, |
| | | pickerOptions1: { |
| | | disabledDate(time) { |
| | | return time.getTime() <= Date.now() - 24 * 60 * 60 * 1000 |
| | | } |
| | | }, |
| | | real_num: 0, |
| | | keep_data: [], |
| | | all_status: true, |
| | | look_data: [], |
| | | look_total: 0, |
| | | cl_name: '', |
| | | cl_code: '', |
| | | work_order: '', |
| | | false_arr: [], |
| | | ckeckVal: true, |
| | | AdvaScheUom: '', |
| | | list: [], |
| | | form: { |
| | | WorkShop: '', |
| | | PartNumber: '', |
| | | PartName: '', |
| | | rows: 10, |
| | | page: 1 |
| | | }, |
| | | showDialog: false, |
| | | time_data: [], |
| | | forms: { |
| | | WorkCode: '', |
| | | WorkShop: '', |
| | | PartNumber: '', |
| | | BotProceCode: '', |
| | | StartTime: '', |
| | | EndTime: '' |
| | | }, |
| | | click_one: 0, |
| | | datasC: [], |
| | | radio: '', |
| | | value1: '', |
| | | types: 'N', |
| | | no: false, |
| | | total: 0, |
| | | mn_data: [], |
| | | bm_data: [], |
| | | facility_data: [], |
| | | end_start: '', |
| | | timeLines: [ |
| | | { |
| | | time: dayjs() |
| | | .add(2, 'hour') |
| | | .toString() |
| | | }, |
| | | { |
| | | time: dayjs() |
| | | .add(5, 'hour') |
| | | .toString(), |
| | | color: '#747e80' |
| | | } |
| | | ], |
| | | formUpdata: { |
| | | WorkCode: '', |
| | | BotProceCode: '', |
| | | json: [] |
| | | }, |
| | | currentTime: dayjs(), |
| | | startTime: dayjs() |
| | | .subtract(5, 'hour') |
| | | .toString(), |
| | | endTime: dayjs() |
| | | .add(2, 'day') |
| | | .add(2, 'hour') |
| | | .toString(), |
| | | cellWidth: 50, |
| | | cellHeight: 30, |
| | | titleHeight: 40, |
| | | titleWidth: 250, |
| | | scale: 60, |
| | | datasNum: 100, |
| | | // datasA: [], |
| | | // datasB: mockDatas(100), |
| | | dataKey: 'id', |
| | | times: 0, |
| | | timeList: timeList, |
| | | scaleList: scaleList, |
| | | scrollToTime: dayjs() |
| | | .add(1, 'day') |
| | | .toString(), |
| | | scrollToPostion: { x: 10000, y: 10000 }, |
| | | hideHeader: false, |
| | | arrayKeys: ['gtArray', 'error'], |
| | | scrollToY: 0, |
| | | positionB: {}, |
| | | positionA: {}, |
| | | meter: 0, // èæ |
| | | title_list: [], |
| | | imp_id: '', |
| | | submit_flag: false, |
| | | search_from: { |
| | | page: 1, |
| | | rows: 10, |
| | | WorkTime: '', |
| | | BotProceName: '' |
| | | }, |
| | | testValue: { |
| | | 'rus': { |
| | | 'statusCode': '', |
| | | 'message': '', |
| | | 'MOD_S': '', |
| | | 'MAR_S': '', |
| | | 'EQP_S': '', |
| | | 'CUT_S': '', |
| | | 'FIXT_S': '', |
| | | 'HouseNumber': '', |
| | | 'navTabId': '', |
| | | 'dialogid': '', |
| | | 'rel': '', |
| | | 'dt': null, |
| | | 'list': {}, |
| | | 'callbackType': '', |
| | | 'forwardUrl': '' |
| | | }, |
| | | 'rows': [ |
| | | { |
| | | 'YearDate': '2022-09-01', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-02', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-03', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-04', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-05', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | }, |
| | | { |
| | | 'YearDate': '2022-09-06', |
| | | 'children': [ |
| | | { |
| | | 'AdvaDevicNumber': 'LKFDL_SC-PC029', |
| | | 'AdvaDevicName': 'é鼿°æ§è½¦åº029', |
| | | 'AdvaDevicCropMob': '78', |
| | | 'AdvaDevicRhythm': '10', |
| | | 'OneStartDate': '08:00~11:30', |
| | | 'TwoStartDate': '12:30~17:00', |
| | | 'ThreeStartDate': '', |
| | | 'FourStartDate': '', |
| | | 'FiveStartDate': '' |
| | | } |
| | | ] |
| | | } |
| | | ], |
| | | 'Cont': null |
| | | } |
| | | } |
| | | }, |
| | | mounted() { |
| | | this.OnclickAdvancedSchedulingDevice() |
| | | }, |
| | | methods: { |
| | | OnclickAdvancedSchedulingDevice() { |
| | | this.facility_top() |
| | | |
| | | // automaticScheduling |
| | | // .OnclickAdvancedSchedulingDevice(this.forms) |
| | | // .then(res => { |
| | | const res = this.testValue |
| | | // if (res.rus.message) { |
| | | // this.$message({ |
| | | // showClose: true, |
| | | // type: 'error', |
| | | // message: res.rus.message |
| | | // }) |
| | | // } |
| | | this.submit_flag = false |
| | | const list = [] |
| | | this.time_all = res |
| | | const cont = res.Cont |
| | | this.real_num = 0 |
| | | for (const i in this.time_all.rows[0].children) { |
| | | const obj = { |
| | | id: '', |
| | | name: '', |
| | | AdvaDevicRhythm: '', |
| | | status: true, |
| | | colorPair: { |
| | | dark: 'rgb(83, 186, 241,0.8)', |
| | | light: 'rgb(83, 186, 241,0.1)', |
| | | light_capacity: 'rgb(209,239,237,0.8)', |
| | | h_schedule: ' rgb(100,255,192,0.8)', |
| | | scheduleing: 'rgb(20,182,231,0.8)' |
| | | }, |
| | | gtArray: [] |
| | | } |
| | | obj.id = this.time_all.rows[0].children[i].AdvaDevicNumber |
| | | obj.name = this.time_all.rows[0].children[i].AdvaDevicName |
| | | obj.AdvaDevicRhythm = this.time_all.rows[0].children[ |
| | | i |
| | | ].AdvaDevicRhythm |
| | | list.push(obj) |
| | | } |
| | | console.log(list, 1) |
| | | for (const i in this.time_all.rows) { |
| | | for (const j in this.time_all.rows[i].children) { |
| | | if (this.time_all.rows[i].children[j].OneStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].OneStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].OneStartDate.split('~') |
| | | this.time_all.rows[i].children[j].OneStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].OneStartDate[0] |
| | | this.time_all.rows[i].children[j].OneStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].OneStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].TwoStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].TwoStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].TwoStartDate.split('~') |
| | | this.time_all.rows[i].children[j].TwoStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].TwoStartDate[0] |
| | | this.time_all.rows[i].children[j].TwoStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].TwoStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].ThreeStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate.split('~') |
| | | this.time_all.rows[i].children[j].ThreeStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].ThreeStartDate[0] |
| | | this.time_all.rows[i].children[j].ThreeStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].ThreeStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].FourStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate.split('~') |
| | | this.time_all.rows[i].children[j].FourStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FourStartDate[0] |
| | | this.time_all.rows[i].children[j].FourStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FourStartDate[1] |
| | | } |
| | | if (this.time_all.rows[i].children[j].FiveStartDate != '') { |
| | | this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate = this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate.split('~') |
| | | this.time_all.rows[i].children[j].FiveStartDate[0] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FiveStartDate[0] |
| | | this.time_all.rows[i].children[j].FiveStartDate[1] = |
| | | this.time_all.rows[i].YearDate + |
| | | ' ' + |
| | | this.time_all.rows[i].children[j].FiveStartDate[1] |
| | | } |
| | | } |
| | | } |
| | | // ç»åæ°çç»æ |
| | | const newList = [] |
| | | for (const i in this.time_all.rows) { |
| | | for (const j in this.time_all.rows[i].children) { |
| | | if (this.time_all.rows[i].children[j].OneStartDate != '') { |
| | | const data1 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data1.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data1.start = this.time_all.rows[i].children[j].OneStartDate[0] |
| | | data1.end = this.time_all.rows[i].children[j].OneStartDate[1] |
| | | data1.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data1) |
| | | } |
| | | if (this.time_all.rows[i].children[j].TwoStartDate != '') { |
| | | const data2 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data2.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data2.start = this.time_all.rows[i].children[j].TwoStartDate[0] |
| | | data2.end = this.time_all.rows[i].children[j].TwoStartDate[1] |
| | | data2.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data2) |
| | | } |
| | | if (this.time_all.rows[i].children[j].ThreeStartDate != '') { |
| | | const data3 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data3.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data3.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].ThreeStartDate[0] |
| | | data3.end = this.time_all.rows[i].children[j].ThreeStartDate[1] |
| | | data3.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data3) |
| | | } |
| | | if (this.time_all.rows[i].children[j].FourStartDate != '') { |
| | | const data4 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data4.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data4.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].FourStartDate[0] |
| | | data4.end = this.time_all.rows[i].children[j].FourStartDate[1] |
| | | data4.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data4) |
| | | } |
| | | if (this.time_all.rows[i].children[j].FiveStartDate != '') { |
| | | const data5 = { |
| | | id: '', |
| | | start: '', |
| | | end: '', |
| | | mod: '' |
| | | } |
| | | data5.id = this.time_all.rows[i].children[j].AdvaDevicNumber |
| | | data5.start = this.time_all.rows[i].children[ |
| | | j |
| | | ].FiveStartDate[0] |
| | | data5.end = this.time_all.rows[i].children[j].FiveStartDate[1] |
| | | data5.mod = |
| | | (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) / |
| | | 100 |
| | | newList.push(data5) |
| | | } |
| | | } |
| | | } |
| | | for (const i in list) { |
| | | this.pushTiem(newList, list[i].id, list[i].gtArray) |
| | | } |
| | | this.bm_data = list |
| | | const _this = this |
| | | if (cont != '') { |
| | | for (const i in cont) { |
| | | for (const j in this.bm_data) { |
| | | if (this.bm_data[j].id == cont[i].EQP_CODE) { |
| | | const data = { |
| | | id: cont[i].EQP_CODE, |
| | | number: cont[i].ALLOC_QTY, |
| | | cl_name: cont[i].PART_NAME, |
| | | cl_code: this.cl_code, |
| | | work_order: cont[i].WO_CODE, |
| | | STATUS: _this.AdvaScheUom, |
| | | start: cont[i].TIME_START, |
| | | end: cont[i].TIME_END, |
| | | type: cont[i].STATUS == 'S' ? 'h_schedule' : 'bm_schedule' |
| | | } |
| | | |
| | | this.bm_data[j].flag = 'isCont' |
| | | |
| | | this.bm_data[j].gtArray.unshift(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | if (this.false_arr != '') { |
| | | for (const j in this.bm_data) { |
| | | if (this.false_arr.indexOf(this.bm_data[j].id) >= 0) { |
| | | this.bm_data[j].gtArray = [] |
| | | this.bm_data[j].status = false |
| | | } |
| | | } |
| | | } |
| | | // }) |
| | | }, |
| | | // 设å¤ä¼å
|
| | | facility_top() { |
| | | // automaticScheduling |
| | | // .OnclickAdvancedSchedulingDevice(this.forms) |
| | | // .then(res => { |
| | | const res = this.testValue |
| | | this.show = true |
| | | const data = res.rows |
| | | const cont = res.Cont |
| | | this.title_list = [] |
| | | for (const i in data[0].children) { |
| | | const obj = { |
| | | id: '', |
| | | name: '', |
| | | status: true, |
| | | AdvaDevicRhythm: '', |
| | | // mod:'', |
| | | colorPair: { |
| | | dark: 'rgb(83, 186, 241,0.8)', |
| | | light: 'rgb(83, 186, 241,0.1)', |
| | | light_capacity: 'rgb(209,239,237,0.8)', |
| | | h_schedule: ' rgb(100,255,192,0.8)', |
| | | scheduleing: 'rgb(20,182,231,0.8)' |
| | | }, |
| | | gtArray: [] |
| | | } |
| | | obj.id = data[0].children[i].AdvaDevicNumber |
| | | obj.name = data[0].children[i].AdvaDevicName |
| | | obj.AdvaDevicRhythm = data[0].children[i].AdvaDevicRhythm |
| | | // obj.mod =data[0].children[i].AdvaDevicCropMob *1 |
| | | |
| | | this.title_list.push(obj) |
| | | } |
| | | for (const i in data) { |
| | | for (const j in data[i].children) { |
| | | if (data[i].children[j].OneStartDate != '') { |
| | | data[i].children[j].OneStartDate = data[i].children[ |
| | | j |
| | | ].OneStartDate.split('~') |
| | | data[i].children[j].OneStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].OneStartDate[0] |
| | | data[i].children[j].OneStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].OneStartDate[1] |
| | | } |
| | | if (data[i].children[j].TwoStartDate != '') { |
| | | data[i].children[j].TwoStartDate = data[i].children[ |
| | | j |
| | | ].TwoStartDate.split('~') |
| | | data[i].children[j].TwoStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[0] |
| | | data[i].children[j].TwoStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[1] |
| | | } |
| | | if (data[i].children[j].ThreeStartDate != '') { |
| | | data[i].children[j].ThreeStartDate = data[i].children[ |
| | | j |
| | | ].ThreeStartDate.split('~') |
| | | data[i].children[j].ThreeStartDate[0] = |
| | | data[i].YearDate + |
| | | ' ' + |
| | | data[i].children[j].ThreeStartDate[0] |
| | | data[i].children[j].ThreeStartDate[1] = |
| | | data[i].YearDate + |
| | | ' ' + |
| | | data[i].children[j].ThreeStartDate[1] |
| | | } |
| | | if (data[i].children[j].FourStartDate != '') { |
| | | data[i].children[j].FourStartDate = data[i].children[ |
| | | j |
| | | ].FourStartDate.split('~') |
| | | data[i].children[j].FourStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FourStartDate[0] |
| | | data[i].children[j].FourStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FourStartDate[1] |
| | | } |
| | | if (data[i].children[j].FiveStartDate != '') { |
| | | data[i].children[j].FiveStartDate = data[i].children[ |
| | | j |
| | | ].FiveStartDate.split('~') |
| | | data[i].children[j].FiveStartDate[0] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[0] |
| | | data[i].children[j].FiveStartDate[1] = |
| | | data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[1] |
| | | } |
| | | } |
| | | } |
| | | // æ´æ¹æ ¼å¼ |
| | | this.facility_data = [] |
| | | |
| | | for (const i in data) { |
| | | const time = { |
| | | date: data[i].YearDate, |
| | | AdvaDevicRhythm: '', |
| | | gtArray: [] |
| | | } |
| | | if (data[i].children != '') { |
| | | time.AdvaDevicRhythm = data[i].children[0].AdvaDevicRhythm |
| | | } |
| | | for (const j in data[i].children) { |
| | | if (data[i].children[j].OneStartDate != '') { |
| | | const icu1 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].OneStartDate[0], |
| | | end: data[i].children[j].OneStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu1) |
| | | } |
| | | if (data[i].children[j].TwoStartDate != '') { |
| | | const icu2 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].TwoStartDate[0], |
| | | end: data[i].children[j].TwoStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu2) |
| | | } |
| | | if (data[i].children[j].ThreeStartDate != '') { |
| | | const icu3 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].ThreeStartDate[0], |
| | | end: data[i].children[j].ThreeStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu3) |
| | | } |
| | | if (data[i].children[j].FourStartDate != '') { |
| | | const icu4 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].FourStartDate[0], |
| | | end: data[i].children[j].FourStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu4) |
| | | } |
| | | if (data[i].children[j].FiveStartDate != '') { |
| | | const icu5 = { |
| | | name: data[i].children[j].AdvaDevicName, |
| | | id: data[i].children[j].AdvaDevicNumber, |
| | | type: 'capacity', |
| | | rhythm: data[i].children[j].AdvaDevicRhythm, |
| | | start: data[i].children[j].FiveStartDate[0], |
| | | end: data[i].children[j].FiveStartDate[1], |
| | | mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100 |
| | | } |
| | | time.gtArray.push(icu5) |
| | | } |
| | | } |
| | | |
| | | this.facility_data.push(time) |
| | | } |
| | | |
| | | if (cont != '') { |
| | | for (const i in cont) { |
| | | const date_time = cont[i].TIME_START.split(' ') |
| | | const cont_date = date_time[0] |
| | | for (const j in this.facility_data) { |
| | | const data = { |
| | | id: cont[i].EQP_CODE, |
| | | date: cont_date, |
| | | number: cont[i].ALLOC_QTY, |
| | | cl_name: cont[i].PART_NAME, |
| | | cl_code: this.cl_code, |
| | | work_order: cont[i].WO_CODE, |
| | | start: cont[i].TIME_START, |
| | | end: cont[i].TIME_END, |
| | | type: 'h_schedule' |
| | | } |
| | | if (this.facility_data[j].date == data.date) { |
| | | this.facility_data[j].gtArray.unshift(data) |
| | | } |
| | | } |
| | | } |
| | | } |
| | | // }) |
| | | }, |
| | | updateTimeLines() { |
| | | |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style scoped> |
| | | |
| | | </style> |
| | |
| | | <!--<template>--> |
| | | <!-- <div id="app">--> |
| | | <!-- <div class="app-container">--> |
| | | <!-- <el-tabs>--> |
| | | <!-- <el-form ref="form" :model="form" :rules="rulescx" label-width="100px" size="medium">--> |
| | | <!-- <el-row>--> |
| | | <!-- <el-col :span="6" :offset="1">--> |
| | | <!-- <el-form-item prop="WorkShop" label="ç产车é´">--> |
| | | <!-- <el-select v-model="form.WorkShop" style="width:257px" filterable>--> |
| | | <!-- <el-option--> |
| | | <!-- v-for="item in list"--> |
| | | <!-- :key="item.CODE"--> |
| | | <!-- :label="item.NAME"--> |
| | | <!-- :value="item.CODE"--> |
| | | <!-- />--> |
| | | <!-- </el-select>--> |
| | | <!-- </el-form-item>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="6" :offset="1">--> |
| | | <!-- <el-form-item prop="PartNumber" label="产åç¼ç ">--> |
| | | <!-- <el-input v-model="form.PartNumber" placeholder="请è¾å
¥" style="width:257px" />--> |
| | | <!-- </el-form-item>--> |
| | | <!-- </el-col>--> |
| | | <!-- <el-col :span="5" :offset="1">--> |
| | | <!-- <el-form-item prop="PartName" label="产ååç§°">--> |
| | | <!-- <el-input v-model="form.PartName" placeholder="请è¾å
¥" style="width:257px" />--> |
| | | <!-- </el-form-item>--> |
| | | <!-- </el-col>--> |
| | | |
| | | <!-- <el-col :span="3" :offset="1">--> |
| | | <!-- <el-button type="text" class="marginLeft rg color" @click="resetFormcx()">éç½®</el-button>--> |
| | | <!-- <el-button--> |
| | | <!-- class="filter-item marginLeft button_style rg"--> |
| | | <!-- size="medium"--> |
| | | <!-- icon="el-icon-search"--> |
| | | <!-- @click="Search()"--> |
| | | <!-- >æ¥è¯¢--> |
| | | <!-- </el-button>--> |
| | | <!-- </el-col>--> |
| | | <!-- </el-row>--> |
| | | <!-- </el-form>--> |
| | | <!-- </el-tabs>--> |
| | | <!-- <el-table--> |
| | | <!-- class="table"--> |
| | | <!-- :data="mn_data"--> |
| | | <!-- :header-cell-style="{background:'#f5f5f5'}"--> |
| | | <!-- height="280"--> |
| | | <!-- @sort-change="sortChange"--> |
| | | <!-- >--> |
| | | <!-- <el-table-column width="34" fixed>--> |
| | | <!-- <template slot-scope="scope">--> |
| | | <!-- <el-radio--> |
| | | <!-- v-model="radio"--> |
| | | <!-- :label="scope.$index"--> |
| | | <!-- class="textRadio"--> |
| | | <!-- @change.native="getCurrentRow(scope.row)"--> |
| | | <!-- > --> |
| | | <!-- </el-radio>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="åºå·"--> |
| | | <!-- prop="AdvaScheSeq"--> |
| | | <!-- width="80"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="ä¼å
级"--> |
| | | <!-- prop="AdvaSchePiroQue"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="scope">--> |
| | | <!-- <div v-if="scope.row.AdvaSchePiroQue == 'æ£å¸¸'">--> |
| | | <!-- <span class="icon_true" />--> |
| | | <!-- {{ scope.row.AdvaSchePiroQue }}--> |
| | | <!-- </div>--> |
| | | <!-- <div v-if="scope.row.AdvaSchePiroQue == 'ç´§æ¥'">--> |
| | | <!-- <span class="icon_gz" />--> |
| | | <!-- {{ scope.row.AdvaSchePiroQue }}--> |
| | | <!-- </div>--> |
| | | <!-- <div v-if="scope.row.AdvaSchePiroQue == 'ç¹æ¥'">--> |
| | | <!-- <span class="icon_ty" />--> |
| | | <!-- {{ scope.row.AdvaSchePiroQue }}--> |
| | | <!-- </div>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="ç产车é´"--> |
| | | <!-- prop="AdvaScheWorkShop"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="å·¥åç¼å·"--> |
| | | <!-- prop="AdvaScheWorkCode"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="产åç¼ç "--> |
| | | <!-- prop="AdvaSchePartNumber"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="产ååç§°"--> |
| | | <!-- prop="AdvaSchePartName"--> |
| | | <!-- width="150"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="产åè§æ ¼"--> |
| | | <!-- prop="AdvaSchePartSpec"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="æ°é"--> |
| | | <!-- prop="AdvaScheQty"--> |
| | | <!-- width="80"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="è¦æ±äº¤ä»æ¶é´"--> |
| | | <!-- prop="AdvaScheEndDate"--> |
| | | <!-- width="200"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- >--> |
| | | <!-- <template slot-scope="scope">{{ scope.row.AdvaScheEndDate }}</template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <!– <el-table-column label="ç»ææ¥æ" prop="AdvaScheEndDate">--> |
| | | <!-- </el-table-column>–>--> |
| | | <!-- <el-table-column label="交ä»ç¶æ" prop="AdvaScheSpeed" sortable="custom" :sort-orders="['ascending', 'descending']">--> |
| | | <!-- <template slot-scope="scope">--> |
| | | <!-- <div v-if="scope.row.Flag == 'Y' && scope.row.AdvaScheStus != 'NEW'">--> |
| | | <!-- <span class="icon_true" /> æ£å¸¸--> |
| | | <!-- </div>--> |
| | | <!-- <div v-if="scope.row.Flag == 'N' && scope.row.AdvaScheStus != 'NEW'">--> |
| | | <!-- <span v-if="scope.row.Flag == 'N'" class="icon_ty" />å»¶æ--> |
| | | <!-- </div>--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- <el-table-column--> |
| | | <!-- label="æç¨å·¥åº"--> |
| | | <!-- prop="AdvaScheBotProcName"--> |
| | | <!-- sortable="custom"--> |
| | | <!-- :sort-orders="['ascending', 'descending']"--> |
| | | <!-- width="160"--> |
| | | <!-- />--> |
| | | <!-- <el-table-column label="计åæç¨æ¶é´" width="200" sortable="custom" :sort-orders="['ascending', 'descending']">--> |
| | | <!-- <template--> |
| | | <!-- slot-scope="scope"--> |
| | | <!-- >{{ scope.row.AdvaSchePCStartDate }} ~ {{ scope.row.AdvaSchePCEndDate }}--> |
| | | <!-- </template>--> |
| | | <!-- </el-table-column>--> |
| | | <!-- </el-table>--> |
| | | <!-- <!– <pagination-view–>--> |
| | | <!-- <!– :currentPage="form.page"–>--> |
| | | <!-- <!– :total="total"–>--> |
| | | <!-- <!– @size-change="sizeChange"–>--> |
| | | <!-- <!– @current-change="pageChange"–>--> |
| | | <!-- <!– ></pagination-view>–>--> |
| | | <!-- </div>--> |
| | | |
| | | <!-- <el-dialog title="æ¥ç" :visible.sync="showDialog" width="60%">--> |
| | | <!-- <el-table class="table" :data="look_data" :header-cell-style="{background:'#f5f5f5'}">--> |
| | | <!-- <el-table-column label="åºå·" prop="AdvaTaskSeq" width="80" />--> |
| | | <!-- <el-table-column label="å·¥åç¼å·" prop="AdvaTaskWork" />--> |
| | | <!-- <el-table-column label="å·¥åç¶æ" prop="AdvaTaskStatus" />--> |
| | | <!-- <el-table-column label="产åç¼ç " prop="AdvaTaskPartNumber" />--> |
| | | <!-- <el-table-column label="å¼å§æ¶é´" prop="AdvaTaskStartDate" width="160" />--> |
| | | <!-- <el-table-column label="ç»ææ¶é´" prop="AdvaTaskEndDate" width="160" />--> |
| | | <!-- <el-table-column label="ç产æ°é" prop="AdvaTaskQty" />--> |
| | | <!-- <el-table-column label="ç产工åº" prop="AdvaTaskBotProcName" />--> |
| | | <!-- </el-table>--> |
| | | <!-- <div style="overflow: hidden">--> |
| | | <!-- <!– <pagination-view–>--> |
| | | <!-- <!– :currentPage="search_from.page"–>--> |
| | | <!-- <!– :total="look_total"–>--> |
| | | <!-- <!– @size-change="sizeChange_look"–>--> |
| | | <!-- <!– @current-change="pageChange_look"–>--> |
| | | <!-- <!– ></pagination-view>–>--> |
| | | <!-- </div>--> |
| | | <!-- </el-dialog>--> |
| | | |
| | | <!-- <el-tabs v-show="show">--> |
| | | <!-- <el-row style="margin-bottom:20px">--> |
| | | <!-- <!– <el-col :span="2">--> |
| | | <!-- <el-input v-model="form.Seach" @keyup.enter.native="SeachKey" placeholder="请è¾å
¥å
³é®è¯" size="small"></el-input>--> |
| | | <!-- </el-col>–>--> |
| | | <!-- <el-col :span="7" :offset="1">--> |
| | | <!-- <span class="t_size" style="margin-left:7px">æç¨æ¥æ</span>--> |
| | | <!-- <el-date-picker--> |
| | | <!-- v-model="value1"--> |
| | | <!-- type="daterange"--> |
| | | <!-- range-separator="~"--> |
| | | <!-- format="yyyy-MM-dd"--> |
| | | <!-- value-format="yyyy-MM-dd"--> |
| | | <!-- start-placeholder="å¼å§æ¥æ"--> |
| | | <!-- end-placeholder="ç»ææ¥æ"--> |
| | | <!-- size="small"--> |
| | | <!-- :picker-options="pickerOptions1"--> |
| | | <!-- @change="change_time"--> |
| | | <!-- />--> |
| | | <!-- </el-col>--> |
| | | |
| | | <!-- <el-col :span="3">--> |
| | | <!-- <span class="t_size">æç¨æ¹å¼</span>--> |
| | | <!-- <el-select v-model="types" size="small" style="width:120px" @change="changeTypes">--> |
| | | <!-- <el-option value="N" label="设å¤ä¼å
" />--> |
| | | <!-- <el-option value="Y" label="æ¶é´ä¼å
" />--> |
| | | <!-- </el-select>--> |
| | | <!-- </el-col>--> |
| | | |
| | | <!-- <el-col :span="3" :offset="1">--> |
| | | <!-- <div style="height:32px;">--> |
| | | <!-- <span class="t_size">æ¶é´å»åº¦</span>--> |
| | | <!-- <select id="scale" v-model.number="scale">--> |
| | | <!-- <option v-for="i in scaleList" :key="i">{{ i }}</option>--> |
| | | <!-- </select>--> |
| | | <!-- <span class="t_size">åé</span>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | |
| | | <!-- <el-col :span="3">--> |
| | | <!-- <div style="height:32px;">--> |
| | | <!-- <span class="t_size">æ¢åæ¶é´</span>--> |
| | | <!-- <el-input--> |
| | | <!-- id="scale"--> |
| | | <!-- v-model="times"--> |
| | | <!-- type="number"--> |
| | | <!-- size="mini"--> |
| | | <!-- style="display:inline-block;width:80px;"--> |
| | | <!-- @change="no_zero"--> |
| | | <!-- />--> |
| | | <!-- <span class="t_size">åé</span>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | |
| | | <!-- <el-col :span="3">--> |
| | | <!-- <div style="height:32px;line-height: 28px;">--> |
| | | <!-- <span class="t_size">颿è¿åº¦</span>--> |
| | | <!-- <span>--> |
| | | <!-- <span style="text-decoration:underline;">{{ real_num }}</span> /--> |
| | | <!-- <span style="text-decoration:underline">{{ meter }}</span>--> |
| | | <!-- </span>--> |
| | | <!-- </div>--> |
| | | <!-- </el-col>--> |
| | | |
| | | <!-- <el-col :span="3">--> |
| | | <!-- <el-button--> |
| | | <!-- type="primary"--> |
| | | <!-- size="mini"--> |
| | | <!-- icon="el-icon-document-remove"--> |
| | | <!-- style="margin-left:20px;"--> |
| | | <!-- @click="click_schedule"--> |
| | | <!-- >颿--> |
| | | <!-- </el-button>--> |
| | | <!-- <el-button--> |
| | | <!-- type="primary"--> |
| | | <!-- size="mini"--> |
| | | <!-- icon="el-icon-document-checked"--> |
| | | <!-- @click="click_yes"--> |
| | | <!-- >æäº¤--> |
| | | <!-- </el-button>--> |
| | | <!-- <p />--> |
| | | <!-- </el-col>--> |
| | | <!-- </el-row>--> |
| | | <!-- <el-row />--> |
| | | <!-- </el-tabs>--> |
| | | <!-- <div v-show="show" class="container">--> |
| | | <!-- <v-gantt-chart--> |
| | | <!-- :start-time="time_data[0]"--> |
| | | <!-- :end-time="time_data[1]"--> |
| | | <!-- :cell-width="cellWidth"--> |
| | | <!-- :cell-height="cellHeight"--> |
| | | <!-- :time-lines="timeLines"--> |
| | | <!-- :title-height="titleHeight"--> |
| | | <!-- :scale="scale"--> |
| | | <!-- :title-width="titleWidth"--> |
| | | <!-- show-current-time--> |
| | | <!-- :hide-header="hideHeader"--> |
| | | <!-- :data-key="dataKey"--> |
| | | <!-- :array-keys="arrayKeys"--> |
| | | <!-- :scroll-to-postion="positionA"--> |
| | | <!-- :datas="bm_data"--> |
| | | <!-- @scrollLeft="scrollLeftA"--> |
| | | <!-- >--> |
| | | <!-- <!– <template v-slot:block="{data,item}"> –>--> |
| | | <!-- <template slot="block" slot-scope="{data,item}">--> |
| | | <!-- <Test--> |
| | | <!-- :data="data"--> |
| | | <!-- :update-time-lines="updateTimeLines"--> |
| | | <!-- :cell-height="cellHeight"--> |
| | | <!-- :current-time="currentTime"--> |
| | | <!-- :item="item"--> |
| | | <!-- />--> |
| | | <!-- </template>--> |
| | | <!-- <template slot="left" slot-scope="{data}">--> |
| | | <!-- <div class="name">--> |
| | | <!-- <div class="carId">--> |
| | | <!-- <el-checkbox--> |
| | | <!-- v-model="data.status"--> |
| | | <!-- style="margin-right:5px;"--> |
| | | <!-- @change="click_box(data)"--> |
| | | <!-- />--> |
| | | <!-- {{ data.id }} {{ data.name }}--> |
| | | <!-- </div>--> |
| | | <!-- <div class="speed">--> |
| | | <!-- <el-tooltip class="item" effect="dark" content="æ¥ç" placement="top">--> |
| | | <!-- <el-button type="text" size="mini" @click="look(data)">--> |
| | | <!-- <i class="el-icon-document size i-color" />--> |
| | | <!-- </el-button>--> |
| | | <!-- </el-tooltip>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!-- </template>--> |
| | | <!-- <template slot="title">--> |
| | | <!-- <span class="tc">å·¥ä½å表</span>--> |
| | | |
| | | <!-- <el-checkbox v-model="all_status" class="box_style" @change="changeLift()" />--> |
| | | <!-- <input v-model.number="cellWidth" type="range" min="20" max="100" class="box_styles">--> |
| | | <!-- </template>--> |
| | | <!-- </v-gantt-chart>--> |
| | | <!-- </div>--> |
| | | <!-- </div>--> |
| | | <!--</template>--> |
| | | |
| | | <!--<script>--> |
| | | <!--import Test from '@/components/Test'--> |
| | | <!--// import PaginationView from '@/components/PaginationView'--> |
| | | <!--// import TestLeft from '@/components/TestLeft'--> |
| | | <!--import { mockDatas } from './index1.js'--> |
| | | <!--import dayjs from 'dayjs'--> |
| | | <!--import automaticScheduling from '@/api/automaticScheduling'--> |
| | | |
| | | <!--const scaleList = `30,60,240,360`.split(',').map(n => parseInt(n))--> |
| | | <!--const timeList = `0,30,60,120,240,480`.split(',').map(n => parseInt(n))--> |
| | | |
| | | <!--export default {--> |
| | | <!-- components: { Test },--> |
| | | <!-- data() {--> |
| | | <!-- return {--> |
| | | <!-- show: false,--> |
| | | <!-- pickerOptions1: {--> |
| | | <!-- disabledDate(time) {--> |
| | | <!-- return time.getTime() <= Date.now() - 24 * 60 * 60 * 1000--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- real_num: 0,--> |
| | | <!-- keep_data: [],--> |
| | | <!-- all_status: true,--> |
| | | <!-- look_data: [],--> |
| | | <!-- look_total: 0,--> |
| | | <!-- cl_name: '',--> |
| | | <!-- cl_code: '',--> |
| | | <!-- work_order: '',--> |
| | | <!-- false_arr: [],--> |
| | | <!-- ckeckVal: true,--> |
| | | <!-- AdvaScheUom: '',--> |
| | | <!-- list: [],--> |
| | | <!-- form: {--> |
| | | <!-- WorkShop: '',--> |
| | | <!-- PartNumber: '',--> |
| | | <!-- PartName: '',--> |
| | | <!-- rows: 10,--> |
| | | <!-- page: 1--> |
| | | <!-- },--> |
| | | <!-- showDialog: false,--> |
| | | <!-- time_data: [],--> |
| | | <!-- forms: {--> |
| | | <!-- WorkCode: '',--> |
| | | <!-- WorkShop: '',--> |
| | | <!-- PartNumber: '',--> |
| | | <!-- BotProceCode: '',--> |
| | | <!-- StartTime: '',--> |
| | | <!-- EndTime: ''--> |
| | | <!-- },--> |
| | | <!-- click_one: 0,--> |
| | | <!-- datasC: [],--> |
| | | <!-- radio: '',--> |
| | | <!-- value1: '',--> |
| | | <!-- types: 'N',--> |
| | | <!-- no: false,--> |
| | | <!-- total: 0,--> |
| | | <!-- mn_data: [],--> |
| | | <!-- bm_data: [],--> |
| | | <!-- facility_data: [],--> |
| | | <!-- end_start: '',--> |
| | | <!-- timeLines: [--> |
| | | <!-- {--> |
| | | <!-- time: dayjs()--> |
| | | <!-- .add(2, 'hour')--> |
| | | <!-- .toString()--> |
| | | <!-- },--> |
| | | <!-- {--> |
| | | <!-- time: dayjs()--> |
| | | <!-- .add(5, 'hour')--> |
| | | <!-- .toString(),--> |
| | | <!-- color: '#747e80'--> |
| | | <!-- }--> |
| | | <!-- ],--> |
| | | <!-- formUpdata: {--> |
| | | <!-- WorkCode: '',--> |
| | | <!-- BotProceCode: '',--> |
| | | <!-- json: []--> |
| | | <!-- },--> |
| | | <!-- currentTime: dayjs(),--> |
| | | <!-- startTime: dayjs()--> |
| | | <!-- .subtract(5, 'hour')--> |
| | | <!-- .toString(),--> |
| | | <!-- endTime: dayjs()--> |
| | | <!-- .add(2, 'day')--> |
| | | <!-- .add(2, 'hour')--> |
| | | <!-- .toString(),--> |
| | | <!-- cellWidth: 50,--> |
| | | <!-- cellHeight: 30,--> |
| | | <!-- titleHeight: 40,--> |
| | | <!-- titleWidth: 250,--> |
| | | <!-- scale: 60,--> |
| | | <!-- datasNum: 100,--> |
| | | <!-- datasA: [],--> |
| | | <!-- datasB: mockDatas(100),--> |
| | | <!-- dataKey: 'id',--> |
| | | <!-- times: 0,--> |
| | | <!-- timeList: timeList,--> |
| | | <!-- scaleList: scaleList,--> |
| | | <!-- scrollToTime: dayjs()--> |
| | | <!-- .add(1, 'day')--> |
| | | <!-- .toString(),--> |
| | | <!-- scrollToPostion: { x: 10000, y: 10000 },--> |
| | | <!-- hideHeader: false,--> |
| | | <!-- arrayKeys: ['gtArray', 'error'],--> |
| | | <!-- scrollToY: 0,--> |
| | | <!-- positionB: {},--> |
| | | <!-- positionA: {},--> |
| | | <!-- meter: 0, // èæ--> |
| | | <!-- title_list: [],--> |
| | | <!-- imp_id: '',--> |
| | | <!-- submit_flag: false,--> |
| | | <!-- search_from: {--> |
| | | <!-- page: 1,--> |
| | | <!-- rows: 10,--> |
| | | <!-- WorkTime: '',--> |
| | | <!-- BotProceName: ''--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | |
| | | <!-- watch: {--> |
| | | <!-- datasNum(newV) {--> |
| | | <!-- this.datasA = mockDatas(newV)--> |
| | | <!-- this.datasB = mockDatas(newV)--> |
| | | <!-- },--> |
| | | <!-- scrollToY(val) {--> |
| | | <!-- this.positionA = { x: val }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- created: function() {--> |
| | | <!-- this.AdvancedSchedulingSearch()--> |
| | | <!-- this.AdvancedSchedulingWorkShop()--> |
| | | <!-- },--> |
| | | |
| | | <!-- methods: {--> |
| | | <!-- AdvancedSchedulingWorkShop() {--> |
| | | <!-- automaticScheduling.AdvancedSchedulingWorkShop().then(res => {--> |
| | | <!-- this.list = res--> |
| | | <!-- })--> |
| | | <!-- },--> |
| | | <!-- Search() {--> |
| | | <!-- this.form.page = 1--> |
| | | <!-- this.show = false--> |
| | | <!-- this.radio = ''--> |
| | | <!-- this.AdvancedSchedulingSearch()--> |
| | | <!-- },--> |
| | | <!-- resetFormcx() {--> |
| | | <!-- this.$nextTick(() => {--> |
| | | <!-- this.$refs.form.resetFields()--> |
| | | <!-- })--> |
| | | <!-- },--> |
| | | <!-- no_zero() {--> |
| | | <!-- if (this.times < 0) {--> |
| | | <!-- this.times = 0--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- sortChange(column, prop, order) {--> |
| | | <!-- this.radio = '';--> |
| | | <!-- (this.form.prop = column.prop), (this.form.order = column.order)--> |
| | | <!-- this.show = false--> |
| | | <!-- this.AdvancedSchedulingSearch()--> |
| | | <!-- },--> |
| | | <!-- SeachKey() {--> |
| | | <!-- this.form.page = 1--> |
| | | <!-- this.AdvancedSchedulingSearch()--> |
| | | <!-- this.show = false--> |
| | | <!-- this.radio = ''--> |
| | | <!-- },--> |
| | | <!-- changeLift() {--> |
| | | <!-- if (this.all_status) {--> |
| | | <!-- this.false_arr = []--> |
| | | <!-- this.OnclickAdvancedSchedulingDevice()--> |
| | | <!-- } else {--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- this.bm_data[i].status = false--> |
| | | <!-- this.bm_data[i].gtArray = []--> |
| | | <!-- }--> |
| | | <!-- for (const i in this.facility_data) {--> |
| | | <!-- this.facility_data[i].gtArray = []--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- changeTypes() {--> |
| | | <!-- this.OnclickAdvancedSchedulingDevice()--> |
| | | <!-- },--> |
| | | <!-- change_time() {--> |
| | | <!-- this.time_data[0] = this.value1[0] + ' 00:00'--> |
| | | <!-- this.time_data[1] = this.value1[1] + ' 23:59'--> |
| | | <!-- this.forms.StartTime = this.value1[0]--> |
| | | <!-- this.forms.EndTime = this.value1[1]--> |
| | | <!-- this.OnclickAdvancedSchedulingDevice()--> |
| | | <!-- },--> |
| | | <!-- click_box(val) {--> |
| | | <!-- if (!val.status) {--> |
| | | <!-- for (const i in this.facility_data) {--> |
| | | <!-- const new_arr = []--> |
| | | <!-- for (const j in this.facility_data[i].gtArray) {--> |
| | | <!-- if (this.facility_data[i].gtArray[j].id == val.id) {--> |
| | | <!-- } else {--> |
| | | <!-- new_arr.push(this.facility_data[i].gtArray[j])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- this.facility_data[i].gtArray = new_arr--> |
| | | <!-- }--> |
| | | <!-- } else {--> |
| | | <!-- this.false_arr = []--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- if (!this.bm_data[i].status) {--> |
| | | <!-- this.false_arr.push(this.bm_data[i].id)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- this.OnclickAdvancedSchedulingDevice()--> |
| | | <!-- }--> |
| | | |
| | | <!-- if (!val.status) {--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- if (!this.bm_data[i].status) {--> |
| | | <!-- this.bm_data[i].gtArray = []--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- } else {--> |
| | | <!-- this.false_arr = []--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- if (!this.bm_data[i].status) {--> |
| | | <!-- this.false_arr.push(this.bm_data[i].id)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- this.OnclickAdvancedSchedulingDevice()--> |
| | | <!-- }--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- const arr = []--> |
| | | <!-- for (const j in this.bm_data[i].gtArray) {--> |
| | | <!-- if (this.bm_data[i].gtArray[j].type != 'schedule') {--> |
| | | <!-- arr.push(this.bm_data[i].gtArray[j])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- this.bm_data[i].gtArray = arr--> |
| | | <!-- }--> |
| | | <!-- this.real_num = 0--> |
| | | <!-- },--> |
| | | <!-- look(data) {--> |
| | | <!-- this.showDialog = true--> |
| | | <!-- this.search_from.DeviceCode = data.id--> |
| | | <!-- this.AdvancedSchedulingEquipmenTask()--> |
| | | <!-- },--> |
| | | <!-- AdvancedSchedulingEquipmenTask() {--> |
| | | <!-- automaticScheduling--> |
| | | <!-- .AdvancedSchedulingEquipmenTask(this.search_from)--> |
| | | <!-- .then(res => {--> |
| | | <!-- this.look_data = res.rows--> |
| | | <!-- this.look_total = res.total--> |
| | | <!-- })--> |
| | | <!-- },--> |
| | | <!-- sizeChange_look(val) {--> |
| | | <!-- this.search_from.rows = val--> |
| | | <!-- this.AdvancedSchedulingEquipmenTask()--> |
| | | <!-- },--> |
| | | <!-- pageChange_look(val) {--> |
| | | <!-- this.search_from.page = val--> |
| | | <!-- this.AdvancedSchedulingEquipmenTask()--> |
| | | <!-- },--> |
| | | <!-- sizeChange(val) {--> |
| | | <!-- this.form.rows = val--> |
| | | <!-- this.show = false--> |
| | | <!-- this.radio = ''--> |
| | | <!-- this.AdvancedSchedulingSearch()--> |
| | | <!-- },--> |
| | | <!-- pageChange(val) {--> |
| | | <!-- this.form.page = val--> |
| | | <!-- this.show = false--> |
| | | <!-- this.radio = ''--> |
| | | <!-- this.AdvancedSchedulingSearch()--> |
| | | <!-- },--> |
| | | <!-- // æ¥è¯¢--> |
| | | <!-- AdvancedSchedulingSearch() {--> |
| | | <!-- automaticScheduling.AdvancedSchedulingSearch(this.form).then(res => {--> |
| | | <!-- this.mn_data = res.rows--> |
| | | <!-- this.total = res.total--> |
| | | <!-- this.oneClick()--> |
| | | <!-- })--> |
| | | <!-- },--> |
| | | <!-- // ç¹å»å¸¦åºæ°æ®--> |
| | | <!-- OnclickAdvancedSchedulingDevice() {--> |
| | | <!-- this.facility_top()--> |
| | | |
| | | <!-- automaticScheduling--> |
| | | <!-- .OnclickAdvancedSchedulingDevice(this.forms)--> |
| | | <!-- .then(res => {--> |
| | | <!-- if (res.rus.message) {--> |
| | | <!-- this.$message({--> |
| | | <!-- showClose: true,--> |
| | | <!-- type: 'error',--> |
| | | <!-- message: res.rus.message--> |
| | | <!-- })--> |
| | | <!-- }--> |
| | | <!-- this.submit_flag = false--> |
| | | <!-- const list = []--> |
| | | <!-- this.time_all = res--> |
| | | <!-- const cont = res.Cont--> |
| | | <!-- this.real_num = 0--> |
| | | <!-- for (const i in this.time_all.rows[0].children) {--> |
| | | <!-- const obj = {--> |
| | | <!-- id: '',--> |
| | | <!-- name: '',--> |
| | | <!-- AdvaDevicRhythm: '',--> |
| | | <!-- status: true,--> |
| | | <!-- colorPair: {--> |
| | | <!-- dark: 'rgb(83, 186, 241,0.8)',--> |
| | | <!-- light: 'rgb(83, 186, 241,0.1)',--> |
| | | <!-- light_capacity: 'rgb(209,239,237,0.8)',--> |
| | | <!-- h_schedule: ' rgb(100,255,192,0.8)',--> |
| | | <!-- scheduleing: 'rgb(20,182,231,0.8)'--> |
| | | <!-- },--> |
| | | <!-- gtArray: []--> |
| | | <!-- }--> |
| | | <!-- obj.id = this.time_all.rows[0].children[i].AdvaDevicNumber--> |
| | | <!-- obj.name = this.time_all.rows[0].children[i].AdvaDevicName--> |
| | | <!-- obj.AdvaDevicRhythm = this.time_all.rows[0].children[--> |
| | | <!-- i--> |
| | | <!-- ].AdvaDevicRhythm--> |
| | | <!-- list.push(obj)--> |
| | | <!-- }--> |
| | | |
| | | <!-- for (const i in this.time_all.rows) {--> |
| | | <!-- for (const j in this.time_all.rows[i].children) {--> |
| | | <!-- if (this.time_all.rows[i].children[j].OneStartDate != '') {--> |
| | | <!-- this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].OneStartDate = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].OneStartDate.split('~')--> |
| | | <!-- this.time_all.rows[i].children[j].OneStartDate[0] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].OneStartDate[0]--> |
| | | <!-- this.time_all.rows[i].children[j].OneStartDate[1] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].OneStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].TwoStartDate != '') {--> |
| | | <!-- this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].TwoStartDate = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].TwoStartDate.split('~')--> |
| | | <!-- this.time_all.rows[i].children[j].TwoStartDate[0] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].TwoStartDate[0]--> |
| | | <!-- this.time_all.rows[i].children[j].TwoStartDate[1] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].TwoStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].ThreeStartDate != '') {--> |
| | | <!-- this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].ThreeStartDate = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].ThreeStartDate.split('~')--> |
| | | <!-- this.time_all.rows[i].children[j].ThreeStartDate[0] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].ThreeStartDate[0]--> |
| | | <!-- this.time_all.rows[i].children[j].ThreeStartDate[1] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].ThreeStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].FourStartDate != '') {--> |
| | | <!-- this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FourStartDate = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FourStartDate.split('~')--> |
| | | <!-- this.time_all.rows[i].children[j].FourStartDate[0] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].FourStartDate[0]--> |
| | | <!-- this.time_all.rows[i].children[j].FourStartDate[1] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].FourStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].FiveStartDate != '') {--> |
| | | <!-- this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FiveStartDate = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FiveStartDate.split('~')--> |
| | | <!-- this.time_all.rows[i].children[j].FiveStartDate[0] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].FiveStartDate[0]--> |
| | | <!-- this.time_all.rows[i].children[j].FiveStartDate[1] =--> |
| | | <!-- this.time_all.rows[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- this.time_all.rows[i].children[j].FiveStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- // ç»åæ°çç»æ--> |
| | | <!-- const newList = []--> |
| | | <!-- for (const i in this.time_all.rows) {--> |
| | | <!-- for (const j in this.time_all.rows[i].children) {--> |
| | | <!-- if (this.time_all.rows[i].children[j].OneStartDate != '') {--> |
| | | <!-- const data1 = {--> |
| | | <!-- id: '',--> |
| | | <!-- start: '',--> |
| | | <!-- end: '',--> |
| | | <!-- mod: ''--> |
| | | <!-- }--> |
| | | <!-- data1.id = this.time_all.rows[i].children[j].AdvaDevicNumber--> |
| | | <!-- data1.start = this.time_all.rows[i].children[j].OneStartDate[0]--> |
| | | <!-- data1.end = this.time_all.rows[i].children[j].OneStartDate[1]--> |
| | | <!-- data1.mod =--> |
| | | <!-- (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) /--> |
| | | <!-- 100--> |
| | | <!-- newList.push(data1)--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].TwoStartDate != '') {--> |
| | | <!-- const data2 = {--> |
| | | <!-- id: '',--> |
| | | <!-- start: '',--> |
| | | <!-- end: '',--> |
| | | <!-- mod: ''--> |
| | | <!-- }--> |
| | | <!-- data2.id = this.time_all.rows[i].children[j].AdvaDevicNumber--> |
| | | <!-- data2.start = this.time_all.rows[i].children[j].TwoStartDate[0]--> |
| | | <!-- data2.end = this.time_all.rows[i].children[j].TwoStartDate[1]--> |
| | | <!-- data2.mod =--> |
| | | <!-- (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) /--> |
| | | <!-- 100--> |
| | | <!-- newList.push(data2)--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].ThreeStartDate != '') {--> |
| | | <!-- const data3 = {--> |
| | | <!-- id: '',--> |
| | | <!-- start: '',--> |
| | | <!-- end: '',--> |
| | | <!-- mod: ''--> |
| | | <!-- }--> |
| | | <!-- data3.id = this.time_all.rows[i].children[j].AdvaDevicNumber--> |
| | | <!-- data3.start = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].ThreeStartDate[0]--> |
| | | <!-- data3.end = this.time_all.rows[i].children[j].ThreeStartDate[1]--> |
| | | <!-- data3.mod =--> |
| | | <!-- (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) /--> |
| | | <!-- 100--> |
| | | <!-- newList.push(data3)--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].FourStartDate != '') {--> |
| | | <!-- const data4 = {--> |
| | | <!-- id: '',--> |
| | | <!-- start: '',--> |
| | | <!-- end: '',--> |
| | | <!-- mod: ''--> |
| | | <!-- }--> |
| | | <!-- data4.id = this.time_all.rows[i].children[j].AdvaDevicNumber--> |
| | | <!-- data4.start = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FourStartDate[0]--> |
| | | <!-- data4.end = this.time_all.rows[i].children[j].FourStartDate[1]--> |
| | | <!-- data4.mod =--> |
| | | <!-- (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) /--> |
| | | <!-- 100--> |
| | | <!-- newList.push(data4)--> |
| | | <!-- }--> |
| | | <!-- if (this.time_all.rows[i].children[j].FiveStartDate != '') {--> |
| | | <!-- const data5 = {--> |
| | | <!-- id: '',--> |
| | | <!-- start: '',--> |
| | | <!-- end: '',--> |
| | | <!-- mod: ''--> |
| | | <!-- }--> |
| | | <!-- data5.id = this.time_all.rows[i].children[j].AdvaDevicNumber--> |
| | | <!-- data5.start = this.time_all.rows[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FiveStartDate[0]--> |
| | | <!-- data5.end = this.time_all.rows[i].children[j].FiveStartDate[1]--> |
| | | <!-- data5.mod =--> |
| | | <!-- (this.time_all.rows[i].children[j].AdvaDevicCropMob * 1) /--> |
| | | <!-- 100--> |
| | | <!-- newList.push(data5)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- for (const i in list) {--> |
| | | <!-- this.pushTiem(newList, list[i].id, list[i].gtArray)--> |
| | | <!-- }--> |
| | | <!-- this.bm_data = list--> |
| | | <!-- const _this = this--> |
| | | <!-- if (cont != '') {--> |
| | | <!-- for (const i in cont) {--> |
| | | <!-- for (const j in this.bm_data) {--> |
| | | <!-- if (this.bm_data[j].id == cont[i].EQP_CODE) {--> |
| | | <!-- const data = {--> |
| | | <!-- id: cont[i].EQP_CODE,--> |
| | | <!-- number: cont[i].ALLOC_QTY,--> |
| | | <!-- cl_name: cont[i].PART_NAME,--> |
| | | <!-- cl_code: this.cl_code,--> |
| | | <!-- work_order: cont[i].WO_CODE,--> |
| | | <!-- STATUS: _this.AdvaScheUom,--> |
| | | <!-- start: cont[i].TIME_START,--> |
| | | <!-- end: cont[i].TIME_END,--> |
| | | <!-- type: cont[i].STATUS == 'S' ? 'h_schedule' : 'bm_schedule'--> |
| | | <!-- }--> |
| | | |
| | | <!-- this.bm_data[j].flag = 'isCont'--> |
| | | |
| | | <!-- this.bm_data[j].gtArray.unshift(data)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | |
| | | <!-- if (this.false_arr != '') {--> |
| | | <!-- for (const j in this.bm_data) {--> |
| | | <!-- if (this.false_arr.indexOf(this.bm_data[j].id) >= 0) {--> |
| | | <!-- this.bm_data[j].gtArray = []--> |
| | | <!-- this.bm_data[j].status = false--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- })--> |
| | | <!-- },--> |
| | | <!-- // æ¢åæ¶é´--> |
| | | <!-- MinutesTest(time) {--> |
| | | <!-- var sdate1 = new Date(time)--> |
| | | <!-- sdate1.setMinutes(sdate1.getMinutes() + this.times * 1)--> |
| | | <!-- var now =--> |
| | | <!-- sdate1.getFullYear() +--> |
| | | <!-- '-' +--> |
| | | <!-- this.add_one(sdate1.getMonth()) +--> |
| | | <!-- '-' +--> |
| | | <!-- sdate1.getDate() +--> |
| | | <!-- ' ' +--> |
| | | <!-- sdate1.getHours() +--> |
| | | <!-- ':' +--> |
| | | <!-- sdate1.getMinutes() +--> |
| | | <!-- ':' +--> |
| | | <!-- sdate1.getSeconds()--> |
| | | <!-- return now--> |
| | | <!-- },--> |
| | | <!-- // +1--> |
| | | <!-- add_one(date) {--> |
| | | <!-- return parseInt(date) + 1--> |
| | | <!-- },--> |
| | | <!-- // æå
¥äº§è½æ¶é´æ®µ--> |
| | | <!-- pushTiem(newList, id, arr) {--> |
| | | <!-- for (const i in newList) {--> |
| | | <!-- if (newList[i].id == id) {--> |
| | | <!-- const data = {--> |
| | | <!-- start: newList[i].start,--> |
| | | <!-- end: newList[i].end,--> |
| | | <!-- id: newList[i].id,--> |
| | | <!-- mod: newList[i].mod,--> |
| | | <!-- type: 'capacity'--> |
| | | <!-- }--> |
| | | <!-- arr.push(data)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- getNowFormatDate() {--> |
| | | <!-- var date = new Date()--> |
| | | <!-- var seperator1 = '-'--> |
| | | <!-- var year = date.getFullYear()--> |
| | | <!-- var month = date.getMonth() + 1--> |
| | | <!-- // var strDate = date.getDate()+1;--> |
| | | <!-- var strDate = date.getDate()--> |
| | | <!-- if (month >= 1 && month <= 9) {--> |
| | | <!-- month = '0' + month--> |
| | | <!-- }--> |
| | | <!-- if (strDate >= 0 && strDate <= 9) {--> |
| | | <!-- strDate = '0' + strDate--> |
| | | <!-- }--> |
| | | <!-- var currentdate = year + seperator1 + month + seperator1 + strDate--> |
| | | <!-- return currentdate--> |
| | | <!-- },--> |
| | | <!-- getCurrentRow(row) {--> |
| | | <!-- // this.show =true--> |
| | | <!-- this.meter = row.AdvaScheQty * 1 - row.AdvaScheYPQty * 1 // å¯ä»¥å个æ°--> |
| | | <!-- this.value1 = []--> |
| | | <!-- this.cl_name = row.AdvaSchePartName--> |
| | | <!-- this.cl_code = row.AdvaSchePartNumber--> |
| | | <!-- this.AdvaScheUom = row.AdvaScheUom--> |
| | | <!-- this.work_order = row.AdvaScheWorkCode--> |
| | | <!-- this.value1.push(this.getNowFormatDate())--> |
| | | <!-- this.value1.push(row.AdvaScheEndDate)--> |
| | | <!-- if (this.value1 != '') {--> |
| | | <!-- this.time_data[0] = this.value1[0] + ' 00:00'--> |
| | | <!-- this.time_data[1] = this.value1[1] + ' 23:59'--> |
| | | <!-- }--> |
| | | <!-- this.forms.WorkCode = row.AdvaScheWorkCode--> |
| | | <!-- this.forms.WorkShop = row.AdvaScheWorkShopid--> |
| | | <!-- this.forms.PartNumber = row.AdvaSchePartNumber--> |
| | | <!-- this.forms.BotProceCode = row.AdvaScheBotProcid--> |
| | | <!-- this.forms.StartTime = this.getNowFormatDate()--> |
| | | <!-- this.forms.EndTime = row.AdvaScheEndDate--> |
| | | <!-- this.OnclickAdvancedSchedulingDevice()--> |
| | | <!-- this.formUpdata.WorkCode = row.AdvaScheWorkCode--> |
| | | <!-- this.formUpdata.BotProceCode = row.AdvaScheBotProcid--> |
| | | <!-- this.search_from.WorkTime =--> |
| | | <!-- this.getNowFormatDate() + '~' + row.AdvaScheEndDate--> |
| | | <!-- this.search_from.BotProceName = row.AdvaScheBotProcName--> |
| | | <!-- },--> |
| | | <!-- // æäº¤æç¨--> |
| | | <!-- click_yes() {--> |
| | | <!-- if (this.submit_flag) {--> |
| | | <!-- this.$message({--> |
| | | <!-- showClose: true,--> |
| | | <!-- type: 'error',--> |
| | | <!-- message: 'æ°éæªæå®,è¯·è®¾ç½®äº§è½æ¶é´'--> |
| | | <!-- })--> |
| | | <!-- } else {--> |
| | | <!-- const list = [] // æäº¤æ°ç»--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- const arr = []--> |
| | | <!-- for (const j in this.bm_data[i].gtArray) {--> |
| | | <!-- if (this.bm_data[i].gtArray[j].type == 'schedule') {--> |
| | | <!-- arr.push(this.bm_data[i].gtArray[j])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- if (arr != '') {--> |
| | | <!-- for (const i in arr) {--> |
| | | <!-- const data = {--> |
| | | <!-- AlreDevicNumber: '',--> |
| | | <!-- AlreStartDate: '',--> |
| | | <!-- AlreEndDate: '',--> |
| | | <!-- AlreQty: ''--> |
| | | <!-- }--> |
| | | <!-- data.AlreDevicNumber = arr[i].id--> |
| | | <!-- data.AlreStartDate = arr[i].start--> |
| | | <!-- data.AlreEndDate = arr[i].end--> |
| | | <!-- data.AlreQty = arr[i].number--> |
| | | <!-- list.push(data)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- // æç¨ç¸å设å¤è·åå¼å§æ¶é´ ç»ææ¶é´ æ°éçæ»å--> |
| | | <!-- // è¿æ»¤--> |
| | | <!-- let updata = []--> |
| | | <!-- for (const i in list) {--> |
| | | <!-- if (list[i].AlreStartDate != '') {--> |
| | | <!-- updata.push(list[i])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | |
| | | <!-- updata = JSON.stringify(updata)--> |
| | | <!-- this.formUpdata.json = updata--> |
| | | <!-- if (list == '') {--> |
| | | <!-- this.$message({--> |
| | | <!-- showClose: true,--> |
| | | <!-- message: '请å
颿',--> |
| | | <!-- type: 'error'--> |
| | | <!-- })--> |
| | | <!-- return false--> |
| | | <!-- }--> |
| | | <!-- automaticScheduling--> |
| | | <!-- .SubmitAlreadyScheduling(this.formUpdata)--> |
| | | <!-- .then(res => {--> |
| | | <!-- if (res.statusCode == 300) {--> |
| | | <!-- this.$message({--> |
| | | <!-- showClose: true,--> |
| | | <!-- message: res.message,--> |
| | | <!-- type: 'error'--> |
| | | <!-- })--> |
| | | <!-- } else {--> |
| | | <!-- this.$message({--> |
| | | <!-- showClose: true,--> |
| | | <!-- message: res.message,--> |
| | | <!-- type: 'success'--> |
| | | <!-- })--> |
| | | <!-- }--> |
| | | <!-- this.meter = 0--> |
| | | <!-- this.real_num = 0--> |
| | | <!-- this.OnclickAdvancedSchedulingDevice()--> |
| | | <!-- this.AdvancedSchedulingSearch()--> |
| | | <!-- })--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | |
| | | <!-- // æ¶é´/设å¤ä¼å
æç¨--> |
| | | <!-- click_schedule() {--> |
| | | <!-- const timestamp = new Date().toLocaleDateString()--> |
| | | <!-- if (new Date(this.value1[0]) < new Date(timestamp)) {--> |
| | | <!-- this.$message({--> |
| | | <!-- showClose: true,--> |
| | | <!-- type: 'error',--> |
| | | <!-- message: 'æç¨æ¶é´ä¸å¯ä»¥å°äºå½åæ¶é´'--> |
| | | <!-- })--> |
| | | <!-- return false--> |
| | | <!-- }--> |
| | | |
| | | <!-- this.nitialize()--> |
| | | <!-- // 设å¤ä¼å
--> |
| | | <!-- if (this.bm_data != '' && this.types == 'N') {--> |
| | | <!-- this.fun_time()--> |
| | | <!-- this.change_num(this.bm_data)--> |
| | | <!-- } else if (this.facility_data != '' && this.types == 'Y') {--> |
| | | <!-- this.time_nitalize()--> |
| | | <!-- this.fun_facility()--> |
| | | <!-- this.dataTransition()--> |
| | | <!-- this.change_num(this.bm_data)--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- // æå¨è¿æ»¤æææ¶é´å·²æç¨--> |
| | | <!-- time_nitalize() {--> |
| | | <!-- for (const i in this.facility_data) {--> |
| | | <!-- this.facility_data[i].gtArray = this.facility_data[i].gtArray.filter(item => item.type != 'schedule')--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | |
| | | <!-- // æå¨è¿æ»¤ææè®¾å¤å·²æç¨--> |
| | | <!-- nitialize() {--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- const newArr = []--> |
| | | <!-- for (const j in this.bm_data[i].gtArray) {--> |
| | | <!-- if (this.bm_data[i].gtArray[j].type != 'schedule') {--> |
| | | <!-- newArr.push(this.bm_data[i].gtArray[j])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- this.bm_data[i].gtArray = newArr--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | |
| | | <!-- // ç»æç¨æåä¸ä¸ªä¿®æ¹æ°é--> |
| | | <!-- change_num(arr) {--> |
| | | <!-- this.real_num = 0 // çå®å·²ææ°é--> |
| | | <!-- let num = 0 // åæ´å·²ææ°é--> |
| | | <!-- const arr_num = [] // å·²ææ°æ®--> |
| | | <!-- let mend_num = 0--> |
| | | <!-- const len = 0--> |
| | | <!-- for (const i in arr) {--> |
| | | <!-- for (const j in arr[i].gtArray) {--> |
| | | <!-- if (arr[i].gtArray[j].type == 'schedule') {--> |
| | | <!-- arr_num.unshift(arr[i].gtArray[j])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | |
| | | <!-- for (const n in arr_num) {--> |
| | | <!-- this.real_num += arr_num[n].real_number--> |
| | | <!-- num += arr_num[n].number * 1--> |
| | | <!-- }--> |
| | | |
| | | <!-- this.real_num = Math.ceil(this.real_num)--> |
| | | <!-- const y10 = this.meter - this.real_num--> |
| | | <!-- if (y10 <= 10) {--> |
| | | <!-- this.real_num = this.meter--> |
| | | <!-- mend_num = this.meter - num--> |
| | | <!-- } else {--> |
| | | <!-- }--> |
| | | <!-- if (this.real_num * 1 == this.meter * 1) {--> |
| | | <!-- // mend_num = this.meter - num--> |
| | | <!-- } else {--> |
| | | <!-- this.submit_flag = true--> |
| | | <!-- }--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- for (const j in this.bm_data[i].gtArray) {--> |
| | | <!-- if (--> |
| | | <!-- this.bm_data[i].gtArray[j].type == 'schedule' &&--> |
| | | <!-- this.bm_data[i].gtArray[j].end_num--> |
| | | <!-- ) {--> |
| | | <!-- this.bm_data[i].gtArray[j].number =--> |
| | | <!-- this.bm_data[i].gtArray[j].number * 1 + mend_num--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- fun_time() {--> |
| | | <!-- let all_num = this.meter--> |
| | | <!-- const all_time = []--> |
| | | <!-- let flag1 = 0--> |
| | | <!-- const mod = this.bm_data[0].mod--> |
| | | <!-- // let nowTime = this.bm_data[0].AdvaDevicRhythm*all_num--> |
| | | <!-- for (const i in this.bm_data) {--> |
| | | <!-- let end_arr = [] // å·²æç¨çæ°ç»--> |
| | | <!-- let nend_arr = [] // å¾
æç¨çæ°ç»--> |
| | | <!-- const add_arr = [] // å·²æç¨çæ°ç»--> |
| | | <!-- let capacity_arr = [] // è¦æç¨çæ°ç»--> |
| | | <!-- this.bm_data[i].gtArray.sort((a, b) => new Date(a.end).getTime() - new Date(b.end).getTime())--> |
| | | <!-- // let capacity_end = ''--> |
| | | <!-- end_arr = this.bm_data[i].gtArray.filter(item => item.type == 'h_schedule')--> |
| | | <!-- nend_arr = this.bm_data[i].gtArray.filter(item => item.type == 'capacity')--> |
| | | <!-- if (end_arr && end_arr.length > 0) {--> |
| | | <!-- capacity_arr = nend_arr.map(item => {--> |
| | | <!-- // æé¤æå·²ç»æç¨çåå¨hsheduleï¼startï¼endé½ç¸ççæ
åµ--> |
| | | <!-- const schedule = end_arr.filter(schedule => {--> |
| | | <!-- return new Date(item.start).getTime() <= new Date(schedule.start).getTime() &&--> |
| | | <!-- new Date(item.end).getTime() > new Date(schedule.end).getTime()--> |
| | | <!-- })--> |
| | | <!-- if (schedule && schedule.length > 0) {--> |
| | | <!-- item.start = this.MinutesTest(schedule[0]['end'])--> |
| | | <!-- }--> |
| | | |
| | | <!-- const schedule1 = end_arr.filter(schedule => {--> |
| | | <!-- return new Date(item.start).getTime() == new Date(schedule.start).getTime() &&--> |
| | | <!-- new Date(item.end).getTime() == new Date(schedule.end).getTime()--> |
| | | <!-- })--> |
| | | <!-- if (schedule1 && schedule1.length > 0) {--> |
| | | <!-- item.capacity = false--> |
| | | <!-- }--> |
| | | |
| | | <!-- return item--> |
| | | <!-- }).filter(item => item.capacity != false)--> |
| | | <!-- } else {--> |
| | | <!-- capacity_arr = nend_arr--> |
| | | <!-- }--> |
| | | |
| | | <!-- const id_obj = {--> |
| | | <!-- id: '',--> |
| | | <!-- start_time: ''--> |
| | | <!-- }--> |
| | | <!-- if (end_arr != '') {--> |
| | | <!-- (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end)--> |
| | | <!-- }--> |
| | | <!-- for (const w in capacity_arr) {--> |
| | | <!-- let end_time = ''--> |
| | | <!-- let mistiming = ''--> |
| | | <!-- const data = {--> |
| | | <!-- id: capacity_arr[w].id,--> |
| | | <!-- start: '',--> |
| | | <!-- end: '',--> |
| | | <!-- type: 'schedule',--> |
| | | <!-- cl_name: this.cl_name,--> |
| | | <!-- cl_code: this.cl_code,--> |
| | | <!-- work_order: this.work_order,--> |
| | | <!-- number: 0,--> |
| | | <!-- real_number: 0--> |
| | | <!-- }--> |
| | | <!-- if (--> |
| | | <!-- id_obj.start_time != '' &&--> |
| | | <!-- flag1 == 0 &&--> |
| | | <!-- new Date(id_obj.start_time) >= new Date(capacity_arr[w].start)--> |
| | | <!-- ) {--> |
| | | <!-- data.start = this.MinutesTest(id_obj.start_time)--> |
| | | <!-- flag1 = 1--> |
| | | <!-- } else {--> |
| | | <!-- data.start = capacity_arr[w].start--> |
| | | <!-- }--> |
| | | <!-- let nowTime =--> |
| | | <!-- (this.bm_data[i].AdvaDevicRhythm * all_num) / capacity_arr[w].mod--> |
| | | <!-- end_time = this.formSeconds(nowTime, data.start, capacity_arr[w].mod) // æ»å
±çç»ææ¶é´--> |
| | | <!-- data.end = end_time--> |
| | | <!-- mistiming = this.formTime(--> |
| | | <!-- end_time,--> |
| | | <!-- capacity_arr[w].end,--> |
| | | <!-- capacity_arr[w].mod--> |
| | | <!-- ) // æ»å
±çç»ææ¶é´-å½åçç»ææ¶é´ = å©ä¸å¤ä¹
æ¶é´--> |
| | | <!-- if (mistiming >= 0) {--> |
| | | <!-- console.log(--> |
| | | <!-- new Date(data.end) - new Date(data.start),--> |
| | | <!-- capacity_arr[w].mod,--> |
| | | <!-- this.bm_data[i].AdvaDevicRhythm,--> |
| | | <!-- 'é¿æ¯é¡¿åæ¯èè¬'--> |
| | | <!-- )--> |
| | | <!-- data.number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- this.bm_data[i].AdvaDevicRhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.real_number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- this.bm_data[i].AdvaDevicRhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.number = data.number.toFixed(0)--> |
| | | <!-- data.end_num = true--> |
| | | <!-- if (new Date(data.start) >= new Date(data.end)) {--> |
| | | <!-- } else {--> |
| | | <!-- this.bm_data[i].gtArray.push(data)--> |
| | | <!-- }--> |
| | | |
| | | <!-- return false--> |
| | | <!-- } else {--> |
| | | <!-- data.end = capacity_arr[w].end--> |
| | | <!-- data.number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- this.bm_data[i].AdvaDevicRhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.real_number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- this.bm_data[i].AdvaDevicRhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.number = data.number.toFixed(0)--> |
| | | |
| | | <!-- nowTime =--> |
| | | <!-- (all_num - data.real_number) * this.bm_data[i].AdvaDevicRhythm--> |
| | | <!-- all_num = all_num - data.real_number--> |
| | | <!-- if (new Date(data.start) >= new Date(data.end)) {--> |
| | | <!-- } else {--> |
| | | <!-- this.bm_data[i].gtArray.push(data)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- // è®¾å¤æç¨æ¹æ³--> |
| | | <!-- fun_facility() {--> |
| | | <!-- // æé¤æªå¾é项--> |
| | | <!-- for (const i in this.facility_data) {--> |
| | | <!-- const newArr = []--> |
| | | <!-- for (const j in this.facility_data[i].gtArray) {--> |
| | | <!-- if (this.false_arr.indexOf(this.facility_data[i].gtArray[j].id) < 0) {--> |
| | | <!-- newArr.push(this.facility_data[i].gtArray[j])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- this.facility_data[i].gtArray = newArr--> |
| | | <!-- }--> |
| | | <!-- let all_num = this.meter--> |
| | | <!-- const all_time = []--> |
| | | <!-- const flag1 = 0--> |
| | | <!-- // let nowTime = this.facility_data[0].AdvaDevicRhythm*all_num //æ°éOK--> |
| | | |
| | | <!-- for (const i in this.facility_data) {--> |
| | | <!-- let end_arr = []--> |
| | | <!-- let nend_arr = [] // æç¨çæ°ç»--> |
| | | <!-- const add_arr = [] // å·²æç¨çæ°ç»--> |
| | | <!-- let capacity_arr = [] // è¦æç¨çæ°ç»--> |
| | | |
| | | <!-- // this.facility_data[i].gtArray.sort((a,b) => new Date(a.end).getTime() - new Date(b.end).getTime())--> |
| | | <!-- // let capacity_end = ''--> |
| | | <!-- end_arr = this.facility_data[i].gtArray.filter(item => item.type == 'h_schedule')--> |
| | | <!-- nend_arr = this.facility_data[i].gtArray.filter(item => item.type == 'capacity')--> |
| | | <!-- console.log(nend_arr)--> |
| | | <!-- capacity_arr = JSON.parse(JSON.stringify(nend_arr))--> |
| | | <!-- end_arr.forEach(item => {--> |
| | | <!-- for (let i = 0; i < capacity_arr.length; i++) {--> |
| | | <!-- if (new Date(capacity_arr[i].start).getTime() === new Date(item.start).getTime()) {--> |
| | | <!-- console.log(i, capacity_arr[i], 'ååå')--> |
| | | <!-- capacity_arr.splice(i, 1)--> |
| | | <!-- break--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- })--> |
| | | <!-- console.log(capacity_arr, '大西ç')--> |
| | | |
| | | <!-- if (!capacity_arr || capacity_arr.length == 0) break--> |
| | | <!-- // const firstCapacity = capacity_arr[0]--> |
| | | |
| | | <!-- const schedule_arr = end_arr.filter(item => {--> |
| | | <!-- const remain = nend_arr.some(sitem => {--> |
| | | <!-- return new Date(sitem.start).getTime() === new Date(item.start).getTime() &&--> |
| | | <!-- new Date(item.end).getTime() < new Date(sitem.end).getTime()--> |
| | | <!-- })--> |
| | | <!-- return remain--> |
| | | <!-- })--> |
| | | <!-- console.log(schedule_arr)--> |
| | | <!-- if (schedule_arr && schedule_arr.length > 0) {--> |
| | | <!-- const scheduleCan = schedule_arr.map(item => {--> |
| | | <!-- const capcity = nend_arr.filter(sitem => {--> |
| | | <!-- return new Date(sitem.start).getTime() === new Date(item.start).getTime() &&--> |
| | | <!-- new Date(item.end).getTime() < new Date(sitem.end).getTime()--> |
| | | <!-- })[0]--> |
| | | <!-- console.log('capacity', capcity)--> |
| | | <!-- capcity.start = this.MinutesTest(item.end)--> |
| | | <!-- return capcity--> |
| | | <!-- })--> |
| | | <!-- const newSchedule = JSON.parse(JSON.stringify(scheduleCan))--> |
| | | <!-- capacity_arr = newSchedule.concat(capacity_arr)--> |
| | | <!-- }--> |
| | | <!-- console.log(schedule_arr)--> |
| | | <!-- console.log('å¯æç¨æ°ç»', capacity_arr)--> |
| | | <!-- const id_obj = {}--> |
| | | <!-- if (end_arr != '') {--> |
| | | <!-- (id_obj.id = end_arr[0].id), (id_obj.start_time = end_arr[0].end)--> |
| | | <!-- }--> |
| | | |
| | | <!-- for (const w in capacity_arr) {--> |
| | | <!-- let end_time--> |
| | | <!-- let mistiming--> |
| | | <!-- const data = {--> |
| | | <!-- id: capacity_arr[w].id,--> |
| | | <!-- start: '',--> |
| | | <!-- end: '',--> |
| | | <!-- type: 'schedule',--> |
| | | <!-- cl_name: this.cl_name,--> |
| | | <!-- cl_code: this.cl_code,--> |
| | | <!-- work_order: this.work_order,--> |
| | | <!-- number: 0,--> |
| | | <!-- real_number: 0--> |
| | | <!-- }--> |
| | | <!-- // console.log(id_obj.start_time)--> |
| | | <!-- if (--> |
| | | <!-- id_obj &&--> |
| | | <!-- new Date(id_obj.start_time).getTime() >=--> |
| | | <!-- new Date(capacity_arr[w].start).getTime()--> |
| | | <!-- ) {--> |
| | | <!-- if (data.id == id_obj.id) {--> |
| | | <!-- data.start = this.MinutesTest(id_obj.start_time)--> |
| | | <!-- // flag1 =1--> |
| | | <!-- } else {--> |
| | | <!-- data.start = capacity_arr[w].start--> |
| | | <!-- // console.log(data.start)--> |
| | | <!-- // flag1 =1--> |
| | | <!-- }--> |
| | | <!-- } else {--> |
| | | <!-- data.start = capacity_arr[w].start--> |
| | | <!-- }--> |
| | | <!-- // let nowTime = this.facility_data[0].AdvaDevicRhythm*all_num--> |
| | | <!-- let nowTime =--> |
| | | <!-- (capacity_arr[w].rhythm * all_num) / capacity_arr[w].mod--> |
| | | |
| | | <!-- end_time = this.formSeconds(nowTime, data.start)--> |
| | | |
| | | <!-- data.end = end_time--> |
| | | <!-- mistiming = this.formTime(end_time, capacity_arr[w].end)--> |
| | | <!-- if (mistiming >= 0) {--> |
| | | <!-- data.number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- capacity_arr[w].rhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.real_number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- capacity_arr[w].rhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.number = data.number.toFixed(0)--> |
| | | <!-- data.end_num = true--> |
| | | |
| | | <!-- if (new Date(data.start) >= new Date(data.end)) {--> |
| | | <!-- } else {--> |
| | | <!-- this.facility_data[i].gtArray.push(data)--> |
| | | <!-- }--> |
| | | |
| | | <!-- return false--> |
| | | <!-- } else {--> |
| | | <!-- data.end = capacity_arr[w].end--> |
| | | <!-- data.number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- capacity_arr[w].rhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.real_number =--> |
| | | <!-- ((new Date(data.end) - new Date(data.start)) *--> |
| | | <!-- capacity_arr[w].mod) /--> |
| | | <!-- capacity_arr[w].rhythm /--> |
| | | <!-- 1000--> |
| | | <!-- data.number = data.number.toFixed(0)--> |
| | | <!-- nowTime = (all_num - data.real_number) * capacity_arr[w].rhythm--> |
| | | <!-- all_num = all_num - data.real_number--> |
| | | |
| | | <!-- // nowTime = mistiming * -1--> |
| | | <!-- if (new Date(data.start) >= new Date(data.end)) {--> |
| | | <!-- } else {--> |
| | | <!-- this.facility_data[i].gtArray.push(data)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- // ç»è®¾å¤è½¬æ¢æ ¼å¼--> |
| | | <!-- dataTransition() {--> |
| | | <!-- this.bm_data = []--> |
| | | <!-- const data = this.facility_data--> |
| | | |
| | | <!-- const all = []--> |
| | | <!-- const list = this.title_list--> |
| | | <!-- for (const i in data) {--> |
| | | <!-- for (const j in data[i].gtArray) {--> |
| | | <!-- all.push(data[i].gtArray[j])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | |
| | | <!-- for (const i in list) {--> |
| | | <!-- list[i].gtArray = []--> |
| | | <!-- this.pushTiemsss(all, list[i].id, list[i].gtArray)--> |
| | | <!-- }--> |
| | | |
| | | <!-- for (const n in list) {--> |
| | | <!-- if (list[n].gtArray.length == 0) {--> |
| | | <!-- list[n].status = false--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | |
| | | <!-- // console.log(list)--> |
| | | <!-- this.bm_data = list--> |
| | | <!-- },--> |
| | | <!-- // æå
¥äº§è½æ¶é´æ®µ--> |
| | | <!-- pushTiemsss(newList, id, arr) {--> |
| | | <!-- for (const i in newList) {--> |
| | | <!-- if (newList[i].id == id) {--> |
| | | <!-- arr.push(newList[i])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- },--> |
| | | <!-- // 设å¤ä¼å
--> |
| | | <!-- facility_top() {--> |
| | | <!-- automaticScheduling--> |
| | | <!-- .OnclickAdvancedSchedulingDevice(this.forms)--> |
| | | <!-- .then(res => {--> |
| | | <!-- this.show = true--> |
| | | <!-- const data = res.rows--> |
| | | <!-- const cont = res.Cont--> |
| | | <!-- this.title_list = []--> |
| | | <!-- for (const i in data[0].children) {--> |
| | | <!-- const obj = {--> |
| | | <!-- id: '',--> |
| | | <!-- name: '',--> |
| | | <!-- status: true,--> |
| | | <!-- AdvaDevicRhythm: '',--> |
| | | <!-- // mod:'',--> |
| | | <!-- colorPair: {--> |
| | | <!-- dark: 'rgb(83, 186, 241,0.8)',--> |
| | | <!-- light: 'rgb(83, 186, 241,0.1)',--> |
| | | <!-- light_capacity: 'rgb(209,239,237,0.8)',--> |
| | | <!-- h_schedule: ' rgb(100,255,192,0.8)',--> |
| | | <!-- scheduleing: 'rgb(20,182,231,0.8)'--> |
| | | <!-- },--> |
| | | <!-- gtArray: []--> |
| | | <!-- }--> |
| | | <!-- obj.id = data[0].children[i].AdvaDevicNumber--> |
| | | <!-- obj.name = data[0].children[i].AdvaDevicName--> |
| | | <!-- obj.AdvaDevicRhythm = data[0].children[i].AdvaDevicRhythm--> |
| | | <!-- // obj.mod =data[0].children[i].AdvaDevicCropMob *1--> |
| | | |
| | | <!-- this.title_list.push(obj)--> |
| | | <!-- }--> |
| | | <!-- for (const i in data) {--> |
| | | <!-- for (const j in data[i].children) {--> |
| | | <!-- if (data[i].children[j].OneStartDate != '') {--> |
| | | <!-- data[i].children[j].OneStartDate = data[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].OneStartDate.split('~')--> |
| | | <!-- data[i].children[j].OneStartDate[0] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].OneStartDate[0]--> |
| | | <!-- data[i].children[j].OneStartDate[1] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].OneStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].TwoStartDate != '') {--> |
| | | <!-- data[i].children[j].TwoStartDate = data[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].TwoStartDate.split('~')--> |
| | | <!-- data[i].children[j].TwoStartDate[0] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[0]--> |
| | | <!-- data[i].children[j].TwoStartDate[1] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].TwoStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].ThreeStartDate != '') {--> |
| | | <!-- data[i].children[j].ThreeStartDate = data[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].ThreeStartDate.split('~')--> |
| | | <!-- data[i].children[j].ThreeStartDate[0] =--> |
| | | <!-- data[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- data[i].children[j].ThreeStartDate[0]--> |
| | | <!-- data[i].children[j].ThreeStartDate[1] =--> |
| | | <!-- data[i].YearDate +--> |
| | | <!-- ' ' +--> |
| | | <!-- data[i].children[j].ThreeStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].FourStartDate != '') {--> |
| | | <!-- data[i].children[j].FourStartDate = data[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FourStartDate.split('~')--> |
| | | <!-- data[i].children[j].FourStartDate[0] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].FourStartDate[0]--> |
| | | <!-- data[i].children[j].FourStartDate[1] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].FourStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].FiveStartDate != '') {--> |
| | | <!-- data[i].children[j].FiveStartDate = data[i].children[--> |
| | | <!-- j--> |
| | | <!-- ].FiveStartDate.split('~')--> |
| | | <!-- data[i].children[j].FiveStartDate[0] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[0]--> |
| | | <!-- data[i].children[j].FiveStartDate[1] =--> |
| | | <!-- data[i].YearDate + ' ' + data[i].children[j].FiveStartDate[1]--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- // æ´æ¹æ ¼å¼--> |
| | | <!-- this.facility_data = []--> |
| | | |
| | | <!-- for (const i in data) {--> |
| | | <!-- const time = {--> |
| | | <!-- date: data[i].YearDate,--> |
| | | <!-- AdvaDevicRhythm: '',--> |
| | | <!-- gtArray: []--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children != '') {--> |
| | | <!-- time.AdvaDevicRhythm = data[i].children[0].AdvaDevicRhythm--> |
| | | <!-- }--> |
| | | <!-- for (const j in data[i].children) {--> |
| | | <!-- if (data[i].children[j].OneStartDate != '') {--> |
| | | <!-- const icu1 = {--> |
| | | <!-- name: data[i].children[j].AdvaDevicName,--> |
| | | <!-- id: data[i].children[j].AdvaDevicNumber,--> |
| | | <!-- type: 'capacity',--> |
| | | <!-- rhythm: data[i].children[j].AdvaDevicRhythm,--> |
| | | <!-- start: data[i].children[j].OneStartDate[0],--> |
| | | <!-- end: data[i].children[j].OneStartDate[1],--> |
| | | <!-- mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100--> |
| | | <!-- }--> |
| | | <!-- time.gtArray.push(icu1)--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].TwoStartDate != '') {--> |
| | | <!-- const icu2 = {--> |
| | | <!-- name: data[i].children[j].AdvaDevicName,--> |
| | | <!-- id: data[i].children[j].AdvaDevicNumber,--> |
| | | <!-- type: 'capacity',--> |
| | | <!-- rhythm: data[i].children[j].AdvaDevicRhythm,--> |
| | | <!-- start: data[i].children[j].TwoStartDate[0],--> |
| | | <!-- end: data[i].children[j].TwoStartDate[1],--> |
| | | <!-- mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100--> |
| | | <!-- }--> |
| | | <!-- time.gtArray.push(icu2)--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].ThreeStartDate != '') {--> |
| | | <!-- const icu3 = {--> |
| | | <!-- name: data[i].children[j].AdvaDevicName,--> |
| | | <!-- id: data[i].children[j].AdvaDevicNumber,--> |
| | | <!-- type: 'capacity',--> |
| | | <!-- rhythm: data[i].children[j].AdvaDevicRhythm,--> |
| | | <!-- start: data[i].children[j].ThreeStartDate[0],--> |
| | | <!-- end: data[i].children[j].ThreeStartDate[1],--> |
| | | <!-- mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100--> |
| | | <!-- }--> |
| | | <!-- time.gtArray.push(icu3)--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].FourStartDate != '') {--> |
| | | <!-- const icu4 = {--> |
| | | <!-- name: data[i].children[j].AdvaDevicName,--> |
| | | <!-- id: data[i].children[j].AdvaDevicNumber,--> |
| | | <!-- type: 'capacity',--> |
| | | <!-- rhythm: data[i].children[j].AdvaDevicRhythm,--> |
| | | <!-- start: data[i].children[j].FourStartDate[0],--> |
| | | <!-- end: data[i].children[j].FourStartDate[1],--> |
| | | <!-- mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100--> |
| | | <!-- }--> |
| | | <!-- time.gtArray.push(icu4)--> |
| | | <!-- }--> |
| | | <!-- if (data[i].children[j].FiveStartDate != '') {--> |
| | | <!-- const icu5 = {--> |
| | | <!-- name: data[i].children[j].AdvaDevicName,--> |
| | | <!-- id: data[i].children[j].AdvaDevicNumber,--> |
| | | <!-- type: 'capacity',--> |
| | | <!-- rhythm: data[i].children[j].AdvaDevicRhythm,--> |
| | | <!-- start: data[i].children[j].FiveStartDate[0],--> |
| | | <!-- end: data[i].children[j].FiveStartDate[1],--> |
| | | <!-- mod: (data[i].children[j].AdvaDevicCropMob * 1) / 100--> |
| | | <!-- }--> |
| | | <!-- time.gtArray.push(icu5)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | |
| | | <!-- this.facility_data.push(time)--> |
| | | <!-- }--> |
| | | |
| | | <!-- if (cont != '') {--> |
| | | <!-- for (const i in cont) {--> |
| | | <!-- const date_time = cont[i].TIME_START.split(' ')--> |
| | | <!-- const cont_date = date_time[0]--> |
| | | <!-- for (const j in this.facility_data) {--> |
| | | <!-- const data = {--> |
| | | <!-- id: cont[i].EQP_CODE,--> |
| | | <!-- date: cont_date,--> |
| | | <!-- number: cont[i].ALLOC_QTY,--> |
| | | <!-- cl_name: cont[i].PART_NAME,--> |
| | | <!-- cl_code: this.cl_code,--> |
| | | <!-- work_order: cont[i].WO_CODE,--> |
| | | <!-- start: cont[i].TIME_START,--> |
| | | <!-- end: cont[i].TIME_END,--> |
| | | <!-- type: 'h_schedule'--> |
| | | <!-- }--> |
| | | <!-- if (this.facility_data[j].date == data.date) {--> |
| | | <!-- this.facility_data[j].gtArray.unshift(data)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- })--> |
| | | <!-- },--> |
| | | <!-- // æç¨æ¹æ³--> |
| | | <!-- formSeconds(s1, start, mod) {--> |
| | | <!-- const nowData = new Date(start)--> |
| | | <!-- // ç®åºå½åæç¨çç»ææ¶é´--> |
| | | <!-- return this.transitionTime(--> |
| | | <!-- new Date(nowData.setSeconds(nowData.getSeconds() + s1))--> |
| | | <!-- )--> |
| | | <!-- },--> |
| | | <!-- // è½¬åæ åæ¶é´--> |
| | | <!-- transitionTime(time) {--> |
| | | <!-- const d = new Date(time)--> |
| | | <!-- return (--> |
| | | <!-- d.getFullYear() +--> |
| | | <!-- '-' +--> |
| | | <!-- (d.getMonth() + 1) +--> |
| | | <!-- '-' +--> |
| | | <!-- d.getDate() +--> |
| | | <!-- ' ' +--> |
| | | <!-- d.getHours() +--> |
| | | <!-- ':' +--> |
| | | <!-- d.getMinutes() +--> |
| | | <!-- ':' +--> |
| | | <!-- d.getSeconds()--> |
| | | <!-- )--> |
| | | <!-- },--> |
| | | <!-- // æ¶é´æ¯è¾--> |
| | | <!-- formTime(d1, d2, mod) {--> |
| | | <!-- // d1 æé¤ç»ææ¶é´ d2 å½å产è½ç»ææ¶é´--> |
| | | <!-- const time1 = new Date(d1)--> |
| | | <!-- const time2 = new Date(d2)--> |
| | | <!-- return parseInt(time2 - time1) / 1000--> |
| | | <!-- },--> |
| | | <!-- formatSeconds(value) {--> |
| | | <!-- var secondTime = parseInt(value) // ç§--> |
| | | <!-- var minuteTime = 0 // å--> |
| | | <!-- var hourTime = 0 // å°æ¶--> |
| | | <!-- if (secondTime > 60) {--> |
| | | <!-- // å¦æç§æ°å¤§äº60ï¼å°ç§æ°è½¬æ¢ææ´æ°--> |
| | | <!-- // è·ååéï¼é¤ä»¥60åæ´æ°ï¼å¾å°æ´æ°åé--> |
| | | <!-- minuteTime = parseInt(secondTime / 60)--> |
| | | <!-- // è·åç§æ°ï¼ç§æ°åä½ï¼å¾å°æ´æ°ç§æ°--> |
| | | <!-- secondTime = parseInt(secondTime % 60)--> |
| | | <!-- // 妿åé大äº60ï¼å°åéè½¬æ¢æå°æ¶--> |
| | | <!-- if (minuteTime > 60) {--> |
| | | <!-- // è·åå°æ¶ï¼è·ååéé¤ä»¥60ï¼å¾å°æ´æ°å°æ¶--> |
| | | <!-- hourTime = parseInt(minuteTime / 60)--> |
| | | <!-- // è·åå°æ¶ååä½çåï¼è·ååéé¤ä»¥60åä½çå--> |
| | | <!-- minuteTime = parseInt(minuteTime % 60)--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!-- var result = '' + parseInt(secondTime) + ''--> |
| | | |
| | | <!-- if (minuteTime > 0) {--> |
| | | <!-- result = '' + parseInt(minuteTime) + ':' + result--> |
| | | <!-- }--> |
| | | <!-- if (hourTime > 0) {--> |
| | | <!-- result = '' + parseInt(hourTime) + ':' + result--> |
| | | <!-- }--> |
| | | <!-- return result--> |
| | | <!-- },--> |
| | | <!-- updateTimeLines(timeA, timeB) {--> |
| | | <!-- this.timeLines = [--> |
| | | <!-- {--> |
| | | <!-- time: timeA--> |
| | | <!-- },--> |
| | | <!-- {--> |
| | | <!-- time: timeB,--> |
| | | <!-- color: '#747e80'--> |
| | | <!-- }--> |
| | | <!-- ]--> |
| | | <!-- },--> |
| | | <!-- scrollLeftA(val) {--> |
| | | <!-- this.positionB = { x: val }--> |
| | | <!-- },--> |
| | | <!-- scrollLeftB(val) {--> |
| | | <!-- this.positionA = { x: val }--> |
| | | <!-- },--> |
| | | <!-- // 设置åå§åæ°æ®--> |
| | | <!-- oneClick() {--> |
| | | <!-- // this.getCurrentRow(this.mn_data[0])--> |
| | | <!-- }--> |
| | | <!-- }--> |
| | | <!--}--> |
| | | <!--</script>--> |
| | | |
| | | <!--<style scoped>--> |
| | | <!--body {--> |
| | | <!-- font: 12px;--> |
| | | <!-- margin: 0;--> |
| | | <!-- padding: 0;--> |
| | | <!-- width: 100%;--> |
| | | <!-- height: 100%;--> |
| | | <!--}--> |
| | | |
| | | <!--.box_style {--> |
| | | <!-- position: relative;--> |
| | | <!-- top: 40px;--> |
| | | <!-- left: -75px;--> |
| | | <!--}--> |
| | | |
| | | <!--.box_styles {--> |
| | | <!-- position: relative;--> |
| | | <!-- top: 40px;--> |
| | | <!-- left: 0;--> |
| | | <!--}--> |
| | | |
| | | <!--#app {--> |
| | | <!-- display: flex;--> |
| | | <!-- flex-direction: column;--> |
| | | <!-- padding: 0 10px;--> |
| | | <!-- /* height: calc(100vh - 100px); */--> |
| | | <!--}--> |
| | | |
| | | <!--label {--> |
| | | <!-- margin-left: 10px;--> |
| | | <!--}--> |
| | | |
| | | <!--input {--> |
| | | <!-- width: 40px;--> |
| | | <!-- height: 20px;--> |
| | | <!-- vertical-align: middle;--> |
| | | <!--}--> |
| | | |
| | | <!--input[type="range"] {--> |
| | | <!-- width: 100px;--> |
| | | <!--}--> |
| | | |
| | | <!--.top-bar {--> |
| | | <!-- /* height: 30px; */--> |
| | | <!-- margin-bottom: 20px;--> |
| | | <!--}--> |
| | | |
| | | <!--.container {--> |
| | | <!-- display: flex;--> |
| | | <!-- flex-direction: column;--> |
| | | <!-- flex: 1;--> |
| | | <!--}--> |
| | | |
| | | <!--.main-footer {--> |
| | | <!-- /* height: 30px; */--> |
| | | <!--}--> |
| | | |
| | | <!--.ib {--> |
| | | <!-- display: inline-block;--> |
| | | <!--}--> |
| | | |
| | | <!--.w250 {--> |
| | | <!-- width: 250px;--> |
| | | <!--}--> |
| | | |
| | | <!--.el-slider {--> |
| | | <!-- width: 100px;--> |
| | | <!--}--> |
| | | |
| | | <!--.tc {--> |
| | | <!-- text-align: center;--> |
| | | <!--}--> |
| | | |
| | | <!--.name {--> |
| | | <!-- display: flex;--> |
| | | <!-- box-sizing: border-box;--> |
| | | <!-- overflow: hidden;--> |
| | | <!-- height: 100%;--> |
| | | <!-- width: 100%;--> |
| | | <!-- padding: 0 5px 0 0;--> |
| | | <!-- border-radius: 8px 0 0 8px;--> |
| | | <!-- align-items: center;--> |
| | | <!--}--> |
| | | |
| | | <!--.colorBar {--> |
| | | <!-- width: 10px;--> |
| | | <!-- height: 100%;--> |
| | | <!--}--> |
| | | |
| | | <!--.carId {--> |
| | | <!-- flex: 1;--> |
| | | <!--}--> |
| | | |
| | | <!--.tc {--> |
| | | <!-- color: #909399;--> |
| | | <!-- font-size: 14px;--> |
| | | <!--}--> |
| | | |
| | | <!--.type {--> |
| | | <!-- padding: 0 5px 0 0;--> |
| | | <!-- font-size: 1.2rem;--> |
| | | <!--}--> |
| | | |
| | | <!--.t_size {--> |
| | | <!-- font-size: 14px;--> |
| | | <!--}--> |
| | | |
| | | <!--.icon_true {--> |
| | | <!-- height: 8px;--> |
| | | <!-- display: inline-block;--> |
| | | <!-- width: 8px;--> |
| | | <!-- background: #00a79d;--> |
| | | <!-- margin-right: 7px;--> |
| | | <!-- border-radius: 15px;--> |
| | | <!--}--> |
| | | |
| | | <!--.icon_ty {--> |
| | | <!-- height: 8px;--> |
| | | <!-- display: inline-block;--> |
| | | <!-- width: 8px;--> |
| | | <!-- background: red;--> |
| | | <!-- margin-right: 7px;--> |
| | | <!-- border-radius: 15px;--> |
| | | <!--}--> |
| | | |
| | | <!--.icon_gz {--> |
| | | <!-- height: 8px;--> |
| | | <!-- display: inline-block;--> |
| | | <!-- width: 8px;--> |
| | | <!-- background: yellow;--> |
| | | <!-- margin-right: 7px;--> |
| | | <!-- border-radius: 15px;--> |
| | | <!--}--> |
| | | |
| | | <!--/* .el-col-offset-1 {--> |
| | | <!-- margin-left: 0.5% !important;--> |
| | | <!--} */--> |
| | | <!--.marginLeft {--> |
| | | <!-- margin-left: 15px;--> |
| | | <!--}--> |
| | | |
| | | <!--.button_style {--> |
| | | <!-- background: #00a79d;--> |
| | | <!-- color: #ffff;--> |
| | | <!-- border-color: #00a79d;--> |
| | | <!--}--> |
| | | |
| | | <!--.rg {--> |
| | | <!-- float: right;--> |
| | | <!--}--> |
| | | |
| | | <!--.color {--> |
| | | <!-- color: #909399;--> |
| | | <!--}--> |
| | | <!--</style>--> |
| | |
| | | }, |
| | | // å¯¹è¯æ¡å
³éäºä»¶ |
| | | handleClose() { |
| | | this.judgeIsScanningArr = [] |
| | | this.form.orderstepqrcode = '' |
| | | this.WXform.orderstepqrcode = '' |
| | | this.badForm.orderstepqrcode = '' |
| | |
| | | this.badDialogForm = {} |
| | | this.badDialogForm.operation = getCookie('navTabId') |
| | | this.badTableDataDialog = [] |
| | | this.judgeIsScanningArr = [] |
| | | }, |
| | | async getMesOrderSelectUserAll() { |
| | | const { data: res } = await MesOrderSelectUser({ usercode: '' }) |
| | |
| | | this.form.stepcode = '' |
| | | this.form.stepname = '' |
| | | |
| | | this.judgeIsScanningArr = [] |
| | | |
| | | this.isCancel = true |
| | | }, |
| | | |