From ff2f7d7bad0132c130c305364a863ff446e926b2 Mon Sep 17 00:00:00 2001 From: 小小儁爺 <1694218219@qq.com> Date: 星期一, 30 十二月 2024 13:47:24 +0800 Subject: [PATCH] 1.在缓存模式下 页面切换会请求接口 --- src/views/produce/reportVerify.vue | 1138 ++++++++++++++++++++++++++++++----------------------------- 1 files changed, 572 insertions(+), 566 deletions(-) diff --git a/src/views/produce/reportVerify.vue b/src/views/produce/reportVerify.vue index bae9dc5..2b1224e 100644 --- a/src/views/produce/reportVerify.vue +++ b/src/views/produce/reportVerify.vue @@ -1,566 +1,572 @@ -<template> - <div> - <div class="body" :style="{height:mainHeight+'px'}"> - - <div class="bodyTopButtonGroup" style="justify-content: space-between"> - <el-button v-waves type="primary" icon="el-icon-circle-check" @click="reportAdjust()">鎶ュ伐瀹℃牳</el-button> - <!-- <el-button v-waves type="success" icon="el-icon-download" @click="$router.push('./../systemSetting/dataImport?fileCode=2')">瀵煎叆</el-button>--> - </div> - - <div class="bodyTopFormGroup"> - <el-form - ref="form" - :model="form" - label-width="100px" - inline - style="display: flex;" - > - <div class="elForm"> - <el-form-item label="瀹℃牳鐘舵��" style=" display: flex;"> - <el-select - v-model="form.reviewstatus" - filterable - :popper-append-to-body="false" - style="width: 200px" - placeholder="璇烽�夋嫨" - > - <el-option - v-for="item in reviewstatusArr" - :key="item.code" - :label="item.name" - :value="item.code" - /> - </el-select> - </el-form-item> - <el-form-item label="杞﹂棿鍚嶇О" style=" display: flex;"> - <el-select - v-model="form.wkshopcode" - filterable - :popper-append-to-body="false" - style="width: 200px" - placeholder="璇烽�夋嫨" - > - <el-option - v-for="item in wkshopcodeArr" - :key="item.torg_code" - :label="item.torg_name" - :value="item.torg_code" - /> - </el-select> - </el-form-item> - <el-form-item label="宸ュ崟缂栫爜" style=" display: flex;"> - <el-input v-model="form.wo_code" placeholder="璇疯緭鍏�" style="width: 200px" /> - </el-form-item> - <el-form-item label="浜у搧缂栫爜" style=" display: flex;"> - <el-input v-model="form.partnumber" placeholder="璇疯緭鍏�" style="width: 200px" /> - </el-form-item> - <el-form-item v-show="isExpandForm" label="浜у搧鍚嶇О" style=" display: flex;"> - <el-input v-model="form.partname" placeholder="璇疯緭鍏�" style="width: 200px" /> - </el-form-item> - <!-- <el-form-item v-show="isExpandForm" label="浜у搧瑙勬牸" style=" display: flex;">--> - <!-- <el-input v-model="form.partspec" placeholder="璇疯緭鍏�" style="width: 200px" />--> - <!-- </el-form-item>--> - - <el-form-item v-show="isExpandForm" label="宸ュ簭鍚嶇О" style=" display: flex;"> - <el-input v-model="form.stepname" placeholder="璇疯緭鍏�" style="width: 200px" /> - </el-form-item> - - <el-form-item v-show="isExpandForm" label="鎶ュ伐浜哄憳" style=" display: flex;"> - <el-input v-model="form.reportuser" placeholder="璇疯緭鍏�" style="width: 200px" /> - </el-form-item> - <el-form-item v-show="isExpandForm" label="鎶ュ伐鏃堕棿" style=" display: flex;"> - <el-date-picker - v-model="form.reportdate" - type="daterange" - range-separator="~" - class="timeMini" - size="mini" - style="width: 200px;" - :clearable="false" - start-placeholder="寮�濮嬫棩鏈�" - end-placeholder="缁撴潫鏃ユ湡" - /> - </el-form-item> - </div> - <div - class="bodySearchReset" - :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}" - > - <el-button v-waves type="primary" icon="el-icon-search" @click="getMesOrderStepReportVerifySearch">鏌ヨ - </el-button> - <el-button v-waves type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button> - </div> - </el-form> - <div - class="bodyTopFormExpand" - > - <svg-icon - v-show="mouseHoverType==='mouseout'" - style="cursor: pointer" - :icon-class="!isExpandForm?'doubleDown3':'doubleUp3'" - @mouseenter="mouseHoverType=$event.type" - /> - <svg-icon - v-show="mouseHoverType==='mouseenter'" - style="cursor: pointer" - :icon-class="!isExpandForm?'doubleDown':'doubleUp'" - @click="isExpandForm=!isExpandForm" - @mouseout="mouseHoverType=$event.type" - /> - </div> - </div> - - <div class="elTableDiv"> - <el-table - ref="tableDataRef" - class="tableFixed" - :data="tableData" - :height="isExpandForm?tableHeight:(tableHeight+40)+'px'" - border - row-class-name="custom-row" - :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px',}" - highlight-current-row - :header-cell-style="this.$headerCellStyle" - :cell-style="this.$cellStyle" - @sort-change="sortChange" - @selection-change="handleSelectionChange" - > - <el-table-column - type="selection" - width="50" - :selectable="selected" - fixed - /> - <el-table-column - prop="rowNum" - width="80" - fixed - label="搴忓彿" - /> - <el-table-column - prop="verify" - label="鏄惁宸插鏍�" - sortable="custom" - width="120" - show-overflow-tooltip - > - <template slot-scope="{row}"> - <el-tag v-if="row.verify==='Y'" size="small" type="success">宸插鏍�</el-tag> - <el-tag v-if="row.verify==='N'" size="small" type="danger">鏈鏍�</el-tag> - </template> - </el-table-column> - <el-table-column - prop="wo_code" - label="鎶ュ伐宸ュ崟" - sortable="custom" - min-width="160" - show-overflow-tooltip - /> - <el-table-column - prop="partnumber" - label="浜у搧缂栫爜" - show-overflow-tooltip - sortable="custom" - min-width="110" - /> - <el-table-column - prop="partname" - label="浜у搧鍚嶇О" - sortable="custom" - show-overflow-tooltip - min-width="110" - /> - <el-table-column - prop="wkshp_name" - label="杞﹂棿鍚嶇О" - sortable="custom" - show-overflow-tooltip - min-width="110" - /> - <el-table-column - prop="task_qty" - label="浠诲姟鏁伴噺" - sortable="custom" - show-overflow-tooltip - min-width="110" - /> - <!-- <el-table-column--> - <!-- prop="wkshp_name"--> - <!-- label="杞﹂棿鍚嶇О"--> - <!-- show-overflow-tooltip--> - <!-- sortable="custom"--> - <!-- min-width="110"--> - <!-- />--> - <!-- <el-table-column--> - <!-- prop="eqp_name"--> - <!-- label="璁惧鍚嶇О"--> - <!-- sortable="custom"--> - <!-- show-overflow-tooltip--> - <!-- min-width="110"--> - <!-- />--> - <el-table-column - prop="stepname" - label="宸ュ簭鍚嶇О" - show-overflow-tooltip - sortable="custom" - min-width="110" - /> - <!-- <el-table-column--> - <!-- prop="step_price"--> - <!-- label="宸ュ簭鍗曚环"--> - <!-- show-overflow-tooltip--> - <!-- sortable="custom"--> - <!-- min-width="110"--> - <!-- />--> - <el-table-column - prop="steptype" - label="宸ュ簭绫诲瀷" - show-overflow-tooltip - sortable="custom" - min-width="110" - > - <template slot-scope="{row}"> - {{ row.steptype === 'Z' ? '鑷埗' : '澶栧崗' }} - </template> - </el-table-column> - <el-table-column - prop="wx_name" - label="渚涘簲鍟�" - show-overflow-tooltip - sortable="custom" - min-width="110" - > - <template slot-scope="{row}"> - {{ row.wx_name ? row.wx_name : '/' }} - </template> - </el-table-column> - <el-table-column - prop="usergroup_name" - label="鎶ュ伐鐝粍" - show-overflow-tooltip - min-width="110" - sortable="custom" - > - <template slot-scope="{row}"> - {{ row.usergroup_name ? row.usergroup_name : '/' }} - </template> - </el-table-column> - <el-table-column - prop="username" - label="鎶ュ伐浜哄憳" - show-overflow-tooltip - min-width="110" - sortable="custom" - /> - <el-table-column - prop="report_qty" - label="鍚堟牸鏁伴噺" - show-overflow-tooltip - sortable="custom" - min-width="110" - /> - <el-table-column - prop="ng_qty" - label="涓嶈壇鏁伴噺" - show-overflow-tooltip - min-width="110" - sortable="custom" - /> - <el-table-column - prop="laborbad_qty" - label="宸ュ簾鏁伴噺" - min-width="110" - show-overflow-tooltip - sortable="custom" - /> - <el-table-column - prop="materielbad_qty" - label="鏂欏簾鏁伴噺" - show-overflow-tooltip - min-width="110" - sortable="custom" - /> - <el-table-column - prop="report_date" - label="鎶ュ伐鏃堕棿" - min-width="160" - show-overflow-tooltip - sortable="custom" - /> - <el-table-column - label="鎿嶄綔" - width="100" - fixed="right" - > - <template slot-scope="{row}"> - <div class="operationClass"> - <el-button - v-if="row.verify!=='Y'" - type="text" - style="cursor: pointer;font-size: 14px" - @click="reportAdjust(row)" - >鎶ュ伐瀹℃牳 - </el-button> - <el-button - v-if="row.verify==='Y'" - type="text" - style="cursor: pointer;font-size: 14px;color: rgba(255,0,0,0.8)" - @click="reportGiveUp(row)" - >寮冨 - </el-button> - - </div> - </template> - </el-table-column> - </el-table> - </div> - <!--鍒嗛〉--> - <pagination - :total="total" - :page.sync="form.page" - :limit.sync="form.rows" - align="right" - layout="total,prev, pager, next,sizes,jumper" - popper-class="select_bottom" - @pagination="getMesOrderStepReportVerifySearch" - /> - </div> - - </div> -</template> - -<script> -import Pagination from '@/components/Pagination' -import { handleDatetime } from '@/utils/global' -import elDragDialog from '@/directive/el-drag-dialog' -import waves from '@/directive/waves' -import { - MesOrderDistribution, - MesOrderStepReportNotVerifySeave, - MesOrderStepReportVerifySearch, - MesOrderStepReportVerifySeave -} from '@/api/WorkOrder' -import { PrentOrganizationNoCompany } from '@/api/GeneralBasicData' - -export default { - name: 'ReportVerify', - components: { - Pagination - }, - directives: { elDragDialog, waves }, - data() { - return { - mouseHoverType: 'mouseout', - isExpandForm: false, - mainHeight: 0, - tableHeight: 0, - form: { - wkshopcode: '', - wo_code: '', // 宸ュ崟缂栫爜 - partnumber: '', // 浜у搧缂栫爜 - partname: '', // 浜у搧鍚嶇О - partspec: '', // 浜у搧瑙勬牸 - - stepname: '', // 宸ュ簭鍚嶇О - reportuser: '', // 鎶ュ伐浜哄憳 - reportdate: '', // 鎶ュ伐鏃堕棿 - - reviewstatus: '', // 瀹℃牳鐘舵�� - - prop: 'report_date', // 鎺掑簭瀛楁 - order: 'desc', // 鎺掑簭瀛楁 - page: 1, // 绗嚑椤� - rows: 20 // 姣忛〉澶氬皯鏉� - }, - total: 10, - tableData: [], - wkshopcodeArr: [], - - multipleSelection: [], - reviewstatusArr: [ - { code: 'Y', name: '宸插鏍�' }, - { code: 'N', name: '鏈鏍�' } - ] - - } - }, - activated() { window.addEventListener('resize', this.getHeight) this.getHeight() }, created() { - }, - mounted() { - window.addEventListener('resize', this.getHeight) - this.getHeight() - - this.getMesOrderStepReportVerifySearch() - this.getPrentOrganizationNoCompany() - }, - methods: { - async getPrentOrganizationNoCompany() { - const { data: res } = await PrentOrganizationNoCompany() - this.wkshopcodeArr = res - }, - // 鎶ュ伐璋冩暣鍒楄〃鏌ヨ - async getMesOrderStepReportVerifySearch() { - let tempDate = this.form.reportdate - if (tempDate.length > 0) { - tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1]) - } - const data = { - wkshopcode: this.form.wkshopcode, - wo_code: this.form.wo_code, - reviewstatus: this.form.reviewstatus, - partnumber: this.form.partnumber, - partname: this.form.partname, - partspec: this.form.partspec, - reportuser: this.form.reportuser, - stepname: this.form.stepname, - reportdate: tempDate, - - prop: this.form.prop, // 鎺掑簭瀛楁 - order: this.form.order, // 鎺掑簭瀛楁 - page: this.form.page, // 绗嚑椤� - rows: this.form.rows // 姣忛〉澶氬皯鏉� - } - const res = await MesOrderStepReportVerifySearch(data) - this.tableData = res.data - this.total = res.count - }, - // 鎺掑簭鏀瑰彉鏃� - sortChange({ column, prop, order }) { - if (order === 'descending') { - order = 'desc' - } else if (order === 'ascending') { - order = 'asc' - } else { - order = 'desc' - } - this.form.order = order - this.form.prop = prop - this.getMesOrderStepReportVerifySearch() - }, - // 閲嶇疆 - reset() { - this.form.wkshopcode = '' - this.form.wo_code = '' - this.form.partnumber = '' - this.form.partname = '' - this.form.partspec = '' - this.form.stepname = '' - this.form.reportuser = '' - this.form.reportdate = '' - this.form.reviewstatus = '' - this.getMesOrderStepReportVerifySearch() - }, - - // 鎶ュ伐瀹℃牳 - async reportAdjust(row) { - // if (row && row.verify === 'Y') { - // return this.$message.info('姝ゅ伐鍗曞凡瀹℃牳锛�') - // } - this.$confirm('鏄惁纭瀹℃牳?', '鎻愮ず', { - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - type: 'warning' - }).then(() => { - if (row) { - this.multipleSelection = [row] - } - const data = { - zdata: [], - wdata: [] - } - this.multipleSelection.forEach(i => { - if (i.steptype === 'Z') { - data.zdata.push(i.id) - } else { - data.wdata.push(i.id) - } - }) - MesOrderStepReportVerifySeave(data).then(res => { - if (res.code === '200') { - this.$notify.success('瀹℃牳鎴愬姛锛�') - this.getMesOrderStepReportVerifySearch() - } - }) - }).catch(() => { - this.$notify.info('宸插彇娑堝鏍革紒') - }) - }, - // 寮冨 - reportGiveUp(row) { - this.$confirm('鏄惁纭寮冨?', '鎻愮ず', { - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - type: 'warning' - }).then(() => { - const data = { - id: row.id, - steptype: row.steptype - } - - MesOrderStepReportNotVerifySeave(data).then(res => { - if (res.code === '200') { - this.$notify.success('寮冨鎴愬姛锛�') - this.getMesOrderStepReportVerifySearch() - } - }) - }).catch(() => { - this.$notify.info('宸插彇娑堝純瀹★紒') - }) - }, - - handleSelectionChange(val) { - this.multipleSelection = val - }, - selected(row) { - return row.verify === 'N' - }, - // 鑾峰彇椤甸潰楂樺害 - getHeight() { - this.$nextTick(() => { - this.mainHeight = window.innerHeight - 85 - this.tableHeight = this.mainHeight - 255 - this.$refs.tableDataRef.doLayout() - }) - } - } -} -</script> - -<style scoped lang="scss"> -.dialogFormItem { - margin: 0 10px 0 0; -} - -::v-deep .el-dialog .el-divider__text { - font-weight: bolder !important; -} - -::v-deep .el-dialog .el-form-item__label { - font-weight: lighter !important; -} - -::v-deep .el-select__caret { - display: flex; - align-items: center; - justify-content: center; -} - -::v-deep .el-range__icon { - line-height: 28px !important; -} - -::v-deep .el-range-separator { - line-height: 28px !important; -} - -::v-deep .el-range-input { - font-size: 14px; -} - -::v-deep .el-range-separator { - display: flex; - justify-content: center; - align-items: center; -} - -</style> +<template> + <div> + <div class="body" :style="{height:mainHeight+'px'}"> + + <div class="bodyTopButtonGroup" style="justify-content: space-between"> + <el-button v-waves type="primary" icon="el-icon-circle-check" @click="reportAdjust()">鎶ュ伐瀹℃牳</el-button> + <!-- <el-button v-waves type="success" icon="el-icon-download" @click="$router.push('./../systemSetting/dataImport?fileCode=2')">瀵煎叆</el-button>--> + </div> + + <div class="bodyTopFormGroup"> + <el-form + ref="form" + :model="form" + label-width="100px" + inline + style="display: flex;" + > + <div class="elForm"> + <el-form-item label="瀹℃牳鐘舵��" style=" display: flex;"> + <el-select + v-model="form.reviewstatus" + filterable + :popper-append-to-body="false" + style="width: 200px" + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in reviewstatusArr" + :key="item.code" + :label="item.name" + :value="item.code" + /> + </el-select> + </el-form-item> + <el-form-item label="杞﹂棿鍚嶇О" style=" display: flex;"> + <el-select + v-model="form.wkshopcode" + filterable + :popper-append-to-body="false" + style="width: 200px" + placeholder="璇烽�夋嫨" + > + <el-option + v-for="item in wkshopcodeArr" + :key="item.torg_code" + :label="item.torg_name" + :value="item.torg_code" + /> + </el-select> + </el-form-item> + <el-form-item label="宸ュ崟缂栫爜" style=" display: flex;"> + <el-input v-model="form.wo_code" placeholder="璇疯緭鍏�" style="width: 200px" /> + </el-form-item> + <el-form-item label="浜у搧缂栫爜" style=" display: flex;"> + <el-input v-model="form.partnumber" placeholder="璇疯緭鍏�" style="width: 200px" /> + </el-form-item> + <el-form-item v-show="isExpandForm" label="浜у搧鍚嶇О" style=" display: flex;"> + <el-input v-model="form.partname" placeholder="璇疯緭鍏�" style="width: 200px" /> + </el-form-item> + <!-- <el-form-item v-show="isExpandForm" label="浜у搧瑙勬牸" style=" display: flex;">--> + <!-- <el-input v-model="form.partspec" placeholder="璇疯緭鍏�" style="width: 200px" />--> + <!-- </el-form-item>--> + + <el-form-item v-show="isExpandForm" label="宸ュ簭鍚嶇О" style=" display: flex;"> + <el-input v-model="form.stepname" placeholder="璇疯緭鍏�" style="width: 200px" /> + </el-form-item> + + <el-form-item v-show="isExpandForm" label="鎶ュ伐浜哄憳" style=" display: flex;"> + <el-input v-model="form.reportuser" placeholder="璇疯緭鍏�" style="width: 200px" /> + </el-form-item> + <el-form-item v-show="isExpandForm" label="鎶ュ伐鏃堕棿" style=" display: flex;"> + <el-date-picker + v-model="form.reportdate" + type="daterange" + range-separator="~" + class="timeMini" + size="mini" + style="width: 200px;" + :clearable="false" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" + /> + </el-form-item> + </div> + <div + class="bodySearchReset" + :style="{marginLeft:$store.state.app.sidebar.opened? $store.state.settings.menuIsHorizontal?'15%':'3%':'10%'}" + > + <el-button v-waves type="primary" icon="el-icon-search" @click="getMesOrderStepReportVerifySearch">鏌ヨ + </el-button> + <el-button v-waves type="info" icon="el-icon-refresh" @click="reset">閲嶇疆</el-button> + </div> + </el-form> + <div + class="bodyTopFormExpand" + > + <svg-icon + v-show="mouseHoverType==='mouseout'" + style="cursor: pointer" + :icon-class="!isExpandForm?'doubleDown3':'doubleUp3'" + @mouseenter="mouseHoverType=$event.type" + /> + <svg-icon + v-show="mouseHoverType==='mouseenter'" + style="cursor: pointer" + :icon-class="!isExpandForm?'doubleDown':'doubleUp'" + @click="isExpandForm=!isExpandForm" + @mouseout="mouseHoverType=$event.type" + /> + </div> + </div> + + <div class="elTableDiv"> + <el-table + ref="tableDataRef" + class="tableFixed" + :data="tableData" + :height="isExpandForm?tableHeight:(tableHeight+40)+'px'" + border + row-class-name="custom-row" + :style="{width: 100+'%',height:isExpandForm?tableHeight:(tableHeight+40)+'px',}" + highlight-current-row + :header-cell-style="this.$headerCellStyle" + :cell-style="this.$cellStyle" + @sort-change="sortChange" + @selection-change="handleSelectionChange" + > + <el-table-column + type="selection" + width="50" + :selectable="selected" + fixed + /> + <el-table-column + prop="rowNum" + width="80" + fixed + label="搴忓彿" + /> + <el-table-column + prop="verify" + label="鏄惁宸插鏍�" + sortable="custom" + width="120" + show-overflow-tooltip + > + <template slot-scope="{row}"> + <el-tag v-if="row.verify==='Y'" size="small" type="success">宸插鏍�</el-tag> + <el-tag v-if="row.verify==='N'" size="small" type="danger">鏈鏍�</el-tag> + </template> + </el-table-column> + <el-table-column + prop="wo_code" + label="鎶ュ伐宸ュ崟" + sortable="custom" + min-width="160" + show-overflow-tooltip + /> + <el-table-column + prop="partnumber" + label="浜у搧缂栫爜" + show-overflow-tooltip + sortable="custom" + min-width="110" + /> + <el-table-column + prop="partname" + label="浜у搧鍚嶇О" + sortable="custom" + show-overflow-tooltip + min-width="110" + /> + <el-table-column + prop="wkshp_name" + label="杞﹂棿鍚嶇О" + sortable="custom" + show-overflow-tooltip + min-width="110" + /> + <el-table-column + prop="task_qty" + label="浠诲姟鏁伴噺" + sortable="custom" + show-overflow-tooltip + min-width="110" + /> + <!-- <el-table-column--> + <!-- prop="wkshp_name"--> + <!-- label="杞﹂棿鍚嶇О"--> + <!-- show-overflow-tooltip--> + <!-- sortable="custom"--> + <!-- min-width="110"--> + <!-- />--> + <!-- <el-table-column--> + <!-- prop="eqp_name"--> + <!-- label="璁惧鍚嶇О"--> + <!-- sortable="custom"--> + <!-- show-overflow-tooltip--> + <!-- min-width="110"--> + <!-- />--> + <el-table-column + prop="stepname" + label="宸ュ簭鍚嶇О" + show-overflow-tooltip + sortable="custom" + min-width="110" + /> + <!-- <el-table-column--> + <!-- prop="step_price"--> + <!-- label="宸ュ簭鍗曚环"--> + <!-- show-overflow-tooltip--> + <!-- sortable="custom"--> + <!-- min-width="110"--> + <!-- />--> + <el-table-column + prop="steptype" + label="宸ュ簭绫诲瀷" + show-overflow-tooltip + sortable="custom" + min-width="110" + > + <template slot-scope="{row}"> + {{ row.steptype === 'Z' ? '鑷埗' : '澶栧崗' }} + </template> + </el-table-column> + <el-table-column + prop="wx_name" + label="渚涘簲鍟�" + show-overflow-tooltip + sortable="custom" + min-width="110" + > + <template slot-scope="{row}"> + {{ row.wx_name ? row.wx_name : '/' }} + </template> + </el-table-column> + <el-table-column + prop="usergroup_name" + label="鎶ュ伐鐝粍" + show-overflow-tooltip + min-width="110" + sortable="custom" + > + <template slot-scope="{row}"> + {{ row.usergroup_name ? row.usergroup_name : '/' }} + </template> + </el-table-column> + <el-table-column + prop="username" + label="鎶ュ伐浜哄憳" + show-overflow-tooltip + min-width="110" + sortable="custom" + /> + <el-table-column + prop="report_qty" + label="鍚堟牸鏁伴噺" + show-overflow-tooltip + sortable="custom" + min-width="110" + /> + <el-table-column + prop="ng_qty" + label="涓嶈壇鏁伴噺" + show-overflow-tooltip + min-width="110" + sortable="custom" + /> + <el-table-column + prop="laborbad_qty" + label="宸ュ簾鏁伴噺" + min-width="110" + show-overflow-tooltip + sortable="custom" + /> + <el-table-column + prop="materielbad_qty" + label="鏂欏簾鏁伴噺" + show-overflow-tooltip + min-width="110" + sortable="custom" + /> + <el-table-column + prop="report_date" + label="鎶ュ伐鏃堕棿" + min-width="160" + show-overflow-tooltip + sortable="custom" + /> + <el-table-column + label="鎿嶄綔" + width="100" + fixed="right" + > + <template slot-scope="{row}"> + <div class="operationClass"> + <el-button + v-if="row.verify!=='Y'" + type="text" + style="cursor: pointer;font-size: 14px" + @click="reportAdjust(row)" + >鎶ュ伐瀹℃牳 + </el-button> + <el-button + v-if="row.verify==='Y'" + type="text" + style="cursor: pointer;font-size: 14px;color: rgba(255,0,0,0.8)" + @click="reportGiveUp(row)" + >寮冨 + </el-button> + + </div> + </template> + </el-table-column> + </el-table> + </div> + <!--鍒嗛〉--> + <pagination + :total="total" + :page.sync="form.page" + :limit.sync="form.rows" + align="right" + layout="total,prev, pager, next,sizes,jumper" + popper-class="select_bottom" + @pagination="getMesOrderStepReportVerifySearch" + /> + </div> + + </div> +</template> + +<script> +import Pagination from '@/components/Pagination' +import { handleDatetime } from '@/utils/global' +import elDragDialog from '@/directive/el-drag-dialog' +import waves from '@/directive/waves' +import { + MesOrderDistribution, + MesOrderStepReportNotVerifySeave, + MesOrderStepReportVerifySearch, + MesOrderStepReportVerifySeave +} from '@/api/WorkOrder' +import { PrentOrganizationNoCompany } from '@/api/GeneralBasicData' + +export default { + name: 'ReportVerify', + components: { + Pagination + }, + directives: { elDragDialog, waves }, + data() { + return { + mouseHoverType: 'mouseout', + isExpandForm: false, + mainHeight: 0, + tableHeight: 0, + form: { + wkshopcode: '', + wo_code: '', // 宸ュ崟缂栫爜 + partnumber: '', // 浜у搧缂栫爜 + partname: '', // 浜у搧鍚嶇О + partspec: '', // 浜у搧瑙勬牸 + + stepname: '', // 宸ュ簭鍚嶇О + reportuser: '', // 鎶ュ伐浜哄憳 + reportdate: '', // 鎶ュ伐鏃堕棿 + + reviewstatus: '', // 瀹℃牳鐘舵�� + + prop: 'report_date', // 鎺掑簭瀛楁 + order: 'desc', // 鎺掑簭瀛楁 + page: 1, // 绗嚑椤� + rows: 20 // 姣忛〉澶氬皯鏉� + }, + total: 10, + tableData: [], + wkshopcodeArr: [], + + multipleSelection: [], + reviewstatusArr: [ + { code: 'Y', name: '宸插鏍�' }, + { code: 'N', name: '鏈鏍�' } + ] + + } + }, + activated() { + window.addEventListener('resize', this.getHeight) + this.getHeight() + this.getMesOrderStepReportVerifySearch() + this.getPrentOrganizationNoCompany() + }, + created() { + }, + mounted() { + window.addEventListener('resize', this.getHeight) + this.getHeight() + + this.getMesOrderStepReportVerifySearch() + this.getPrentOrganizationNoCompany() + }, + methods: { + async getPrentOrganizationNoCompany() { + const { data: res } = await PrentOrganizationNoCompany() + this.wkshopcodeArr = res + }, + // 鎶ュ伐璋冩暣鍒楄〃鏌ヨ + async getMesOrderStepReportVerifySearch() { + let tempDate = this.form.reportdate + if (tempDate.length > 0) { + tempDate = handleDatetime(tempDate[0]) + '~' + handleDatetime(tempDate[1]) + } + const data = { + wkshopcode: this.form.wkshopcode, + wo_code: this.form.wo_code, + reviewstatus: this.form.reviewstatus, + partnumber: this.form.partnumber, + partname: this.form.partname, + partspec: this.form.partspec, + reportuser: this.form.reportuser, + stepname: this.form.stepname, + reportdate: tempDate, + + prop: this.form.prop, // 鎺掑簭瀛楁 + order: this.form.order, // 鎺掑簭瀛楁 + page: this.form.page, // 绗嚑椤� + rows: this.form.rows // 姣忛〉澶氬皯鏉� + } + const res = await MesOrderStepReportVerifySearch(data) + this.tableData = res.data + this.total = res.count + }, + // 鎺掑簭鏀瑰彉鏃� + sortChange({ column, prop, order }) { + if (order === 'descending') { + order = 'desc' + } else if (order === 'ascending') { + order = 'asc' + } else { + order = 'desc' + } + this.form.order = order + this.form.prop = prop + this.getMesOrderStepReportVerifySearch() + }, + // 閲嶇疆 + reset() { + this.form.wkshopcode = '' + this.form.wo_code = '' + this.form.partnumber = '' + this.form.partname = '' + this.form.partspec = '' + this.form.stepname = '' + this.form.reportuser = '' + this.form.reportdate = '' + this.form.reviewstatus = '' + this.getMesOrderStepReportVerifySearch() + }, + + // 鎶ュ伐瀹℃牳 + async reportAdjust(row) { + // if (row && row.verify === 'Y') { + // return this.$message.info('姝ゅ伐鍗曞凡瀹℃牳锛�') + // } + this.$confirm('鏄惁纭瀹℃牳?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + if (row) { + this.multipleSelection = [row] + } + const data = { + zdata: [], + wdata: [] + } + this.multipleSelection.forEach(i => { + if (i.steptype === 'Z') { + data.zdata.push(i.id) + } else { + data.wdata.push(i.id) + } + }) + MesOrderStepReportVerifySeave(data).then(res => { + if (res.code === '200') { + this.$notify.success('瀹℃牳鎴愬姛锛�') + this.getMesOrderStepReportVerifySearch() + } + }) + }).catch(() => { + this.$notify.info('宸插彇娑堝鏍革紒') + }) + }, + // 寮冨 + reportGiveUp(row) { + this.$confirm('鏄惁纭寮冨?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + const data = { + id: row.id, + steptype: row.steptype + } + + MesOrderStepReportNotVerifySeave(data).then(res => { + if (res.code === '200') { + this.$notify.success('寮冨鎴愬姛锛�') + this.getMesOrderStepReportVerifySearch() + } + }) + }).catch(() => { + this.$notify.info('宸插彇娑堝純瀹★紒') + }) + }, + + handleSelectionChange(val) { + this.multipleSelection = val + }, + selected(row) { + return row.verify === 'N' + }, + // 鑾峰彇椤甸潰楂樺害 + getHeight() { + this.$nextTick(() => { + this.mainHeight = window.innerHeight - 85 + this.tableHeight = this.mainHeight - 255 + this.$refs.tableDataRef.doLayout() + }) + } + } +} +</script> + +<style scoped lang="scss"> +.dialogFormItem { + margin: 0 10px 0 0; +} + +::v-deep .el-dialog .el-divider__text { + font-weight: bolder !important; +} + +::v-deep .el-dialog .el-form-item__label { + font-weight: lighter !important; +} + +::v-deep .el-select__caret { + display: flex; + align-items: center; + justify-content: center; +} + +::v-deep .el-range__icon { + line-height: 28px !important; +} + +::v-deep .el-range-separator { + line-height: 28px !important; +} + +::v-deep .el-range-input { + font-size: 14px; +} + +::v-deep .el-range-separator { + display: flex; + justify-content: center; + align-items: center; +} + +</style> -- Gitblit v1.9.3