You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2409 lines
78 KiB
2409 lines
78 KiB
<template>
|
|
<div class="customer-css">
|
|
<!-- 菜单按钮区域 -->
|
|
<fieldset class="customer-field" style="width: 200px; padding: 0.35em 0.75em 0.425em;">
|
|
<legend>菜单</legend>
|
|
<el-form :inline="true" label-position="top" label-width="100px" style="">
|
|
<el-form-item :label="''">
|
|
<el-button type="primary" @click="refreshPageTables()" class="customer-bun-mid"
|
|
style="margin-left: 10px; margin-bottom: 5px;">{{ buttons.searchButton }}
|
|
</el-button>
|
|
</el-form-item>
|
|
<el-form-item :label="''">
|
|
<el-button type="primary" @click="switchOperatorModal(0)" class="customer-bun-mid"
|
|
:disabled="reportButton.normalReportButton"
|
|
style="margin-left: 10px; margin-bottom: 5px;">{{ buttons.reportButton }}
|
|
</el-button>
|
|
</el-form-item>
|
|
</el-form>
|
|
</fieldset>
|
|
<!-- 查询时间和产品 -->
|
|
<el-form :inline="true" label-position="top" label-width="100px" style="margin-top: 5px;">
|
|
<el-form-item :label=labels.siteNo>
|
|
<el-input v-model="searchData.site" style="width: 85px"></el-input>
|
|
</el-form-item>
|
|
<el-form-item :label=labels.resourceId>
|
|
<span slot="label" @click="getBaseList(95)"><a herf="#">机台编号:</a></span>
|
|
<el-input v-model="searchData.resourceId" clearable style="width: 110px"></el-input>
|
|
</el-form-item>
|
|
<el-form-item :label=labels.planStartTime>
|
|
<el-date-picker class="el-time-width"
|
|
style=""
|
|
v-model="searchData.planStartTime1"
|
|
value-format="yyyy-MM-dd">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
<el-form-item :label="''">
|
|
<el-date-picker class="el-time-width"
|
|
style="margin-top: 20px;"
|
|
v-model="searchData.planStartTime2"
|
|
format="yyyy-MM-dd"
|
|
value-format="yyyy-MM-dd"
|
|
placeholder="">
|
|
</el-date-picker>
|
|
</el-form-item>
|
|
<el-form-item :label=labels.orderNo>
|
|
<el-input v-model="searchData.orderNo" style="width: 120px" @keyup.enter.native="refreshPageTables"></el-input>
|
|
</el-form-item>
|
|
<el-form-item :label=labels.seqNo>
|
|
<el-input v-model="searchData.seqNo" style="width: 120px" @keyup.enter.native="refreshPageTables"></el-input>
|
|
</el-form-item>
|
|
<el-form-item :label="''" style="margin-left: -5px;">
|
|
<el-checkbox style="margin-top: 20px;" true-label="Y" false-label="N" v-model="searchData.closedFlag">{{ labels.showFinishedSeqNo }}
|
|
</el-checkbox>
|
|
</el-form-item>
|
|
</el-form>
|
|
|
|
<!-- 右键操作菜单 -->
|
|
<el-form :inline="true">
|
|
<el-form-item :label=labels.shopOrderList>
|
|
<el-dropdown trigger="click" style="margin-top: 3px" class="customer-dropdown" @command="handleCommand">
|
|
<el-button type="primary" @click="menuButtonFlag" :disabled="authEdit">
|
|
{{ labels.primaryMenu }}<i class="el-icon-arrow-down el-icon--right"></i>
|
|
</el-button>
|
|
<el-dropdown-menu v-show="menuShow" slot="dropdown">
|
|
<el-dropdown-item class="customer-li" command="0" :disabled="menuButton.prdButton">
|
|
<span>{{ labels.shopOrderLabel }}</span>
|
|
</el-dropdown-item>
|
|
<hr width="95%"/>
|
|
<el-dropdown-item class="customer-li" command="1" :disabled="menuButton.closedButton">{{
|
|
labels.closeLabel
|
|
}}
|
|
</el-dropdown-item>
|
|
<el-dropdown-item class="customer-li" command="2" :disabled="menuButton.openButton">{{ labels.openLabel }}
|
|
</el-dropdown-item>
|
|
<hr width="95%"/>
|
|
<el-dropdown-item class="customer-li" command="3" :disabled="menuButton.pauseButton">{{
|
|
labels.pauseLabel
|
|
}}
|
|
</el-dropdown-item>
|
|
<el-dropdown-item class="customer-li" command="4" :disabled="menuButton.openReverseButton">
|
|
{{ labels.reopenLabel }}
|
|
</el-dropdown-item>
|
|
<hr width="95%"/>
|
|
<el-dropdown-item class="customer-li" command="5" :disabled="menuButton.createRecheckButton">
|
|
{{ labels.createReCheckSeqNo }}
|
|
</el-dropdown-item>
|
|
<hr width="95%"/>
|
|
<el-dropdown-item class="customer-li" command="6" :disabled="menuButton.canceledAllPrdButton">
|
|
{{ labels.cancelAllScheduleOperations }}
|
|
</el-dropdown-item>
|
|
<hr width="95%"/>
|
|
<!-- <el-dropdown-item class="customer-li" command="7" :disabled="menuButton.costRollUpFlagButton">-->
|
|
<!-- {{ labels.prodIssued }}-->
|
|
<!-- </el-dropdown-item>-->
|
|
<!-- <el-dropdown-item class="customer-li" command="8" :disabled="menuButton.canceledCostRollUpFlagButton">-->
|
|
<!-- {{ labels.cancelProdIssued }}-->
|
|
<!-- </el-dropdown-item>-->
|
|
<el-dropdown-item class="customer-li" command="查看物料库存"
|
|
:disabled="menuButton.partStockFlag">{{ labels.viewPartStock }}
|
|
</el-dropdown-item>
|
|
<hr width="95%"/>
|
|
<!-- <el-dropdown-item class="customer-li" command="9" :disabled="menuButton.manualFlagButton">-->
|
|
<!-- {{ labels.toolIssued }}-->
|
|
<!-- </el-dropdown-item>-->
|
|
<!-- <el-dropdown-item class="customer-li" command="10" :disabled="menuButton.canceledManualFlagButton">-->
|
|
<!-- {{ labels.cancelToolIssued }}-->
|
|
<!-- </el-dropdown-item>-->
|
|
<!-- <hr width="95%"/>-->
|
|
<!-- <el-dropdown-item class="customer-li" command="11" :disabled="menuButton.repairSOFlagButton">-->
|
|
<!-- {{ labels.printIssued }}-->
|
|
<!-- </el-dropdown-item>-->
|
|
<!-- <el-dropdown-item class="customer-li" command="12" :disabled="menuButton.canceledRepairSOFlagButton">-->
|
|
<!-- {{ labels.cancelPrintIssued }}-->
|
|
<!-- </el-dropdown-item>-->
|
|
<!-- <hr width="95%"/>-->
|
|
</el-dropdown-menu>
|
|
</el-dropdown>
|
|
<!-- <el-button @click="userSetting" type="primary">{{ buttons.settingTable }}</el-button>-->
|
|
<!-- <el-button v-if="showDefault" @click="saveColumnList()" type="primary">{{ buttons.defaultTable }}</el-button>-->
|
|
<download-excel
|
|
:fields="fields()"
|
|
:data="exportList"
|
|
type="xls"
|
|
:name="exportName"
|
|
:header="exportHeader"
|
|
:footer="exportFooter"
|
|
:defaultValue="exportDefaultValue"
|
|
:fetch="createExportData"
|
|
:before-generate="startDownload"
|
|
:before-finish="finishDownload"
|
|
worksheet="导出信息"
|
|
class="el-button el-button--primary el-button--medium">
|
|
{{ buttons.download||'导出' }}
|
|
</download-excel>
|
|
</el-form-item>
|
|
</el-form>
|
|
<!-- 工单主表信息 -->
|
|
<el-main style="margin-left: -20px; margin-top: -20px; width: 104%;">
|
|
<el-table @row-click="setCurrentRow"
|
|
:height="height"
|
|
highlight-current-row
|
|
:data="produceScheduleList"
|
|
border
|
|
v-loading="dataListLoading"
|
|
style="width: 100%;">
|
|
<el-table-column
|
|
v-for="(item,index) in columnList" :key="index"
|
|
:sortable="item.columnSortable"
|
|
:prop="item.columnProp"
|
|
:header-align="item.headerAlign"
|
|
:show-overflow-tooltip="item.showOverflowTooltip"
|
|
:align="item.align"
|
|
:fixed="item.fixed==''?false:item.fixed"
|
|
:width="item.columnWidth"
|
|
:label="item.columnLabel">
|
|
<template slot-scope="scope">
|
|
<span v-if="!item.columnHidden"> {{ scope.row[item.columnProp] }}</span>
|
|
<span v-if="item.columnImage"><img :src="scope.row[item.columnProp]"
|
|
style="width: 100px; height: 80px"/></span>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
</el-main>
|
|
|
|
<!-- 切换操作员 -->
|
|
<comSwitchOperator ref="comSwitchOperator" :close-on-click-modal="false"
|
|
:visible.sync="showOperatorFlag"
|
|
@initOperatorData="initOperatorData"
|
|
@notInitOperatorData="notInitOperatorData">
|
|
|
|
</comSwitchOperator>
|
|
|
|
<!-- 正常报工的组件 -->
|
|
<comProduceReportNormal :close-on-click-modal="false"
|
|
:visible.sync="showReportFlag" ref="comProduceReportNormal">
|
|
|
|
</comProduceReportNormal>
|
|
<!-- 分切报工的组件 -->
|
|
<comSplitOrderReport :close-on-click-modal="false"
|
|
:visible.sync="showSplitReportFlag" ref="comSplitOrderReport">
|
|
|
|
</comSplitOrderReport>
|
|
|
|
|
|
<!-- 正常的结束派工单组件 -->
|
|
<comFinishSchedule :close-on-click-modal="false"
|
|
:visible.sync="showFinishScheduleFlag" ref="comFinishSchedule"
|
|
@processFinishScheduleOperation="processFinishScheduleOperation">
|
|
|
|
</comFinishSchedule>
|
|
<!-- fqc报工的组件 -->
|
|
<fqcProduceReportNormal :close-on-click-modal="false"
|
|
:visible.sync="fqcShowReportFlag" ref="fqcProduceReportNormal">
|
|
</fqcProduceReportNormal>
|
|
|
|
<!-- 返工重检 -->
|
|
<reworkInspectReport :close-on-click-modal="false"
|
|
:visible.sync="reworkShowReportFlag" ref="reworkInspectReport"></reworkInspectReport>
|
|
<!-- FQC分卷 -->
|
|
<fqcSplitRollReport :close-on-click-modal="false"
|
|
:visible.sync="fqcRollShowReportFlag" ref="fqcSplitRollReport"></fqcSplitRollReport>
|
|
<!-- 创建重检派工单 -->
|
|
<createRecheck ref="createRecheck"></createRecheck>
|
|
<!-- 换包装 -->
|
|
<changePackaging :close-on-click-modal="false"
|
|
:visible.sync="changePackagingFlag" ref="changePackaging"></changePackaging>
|
|
|
|
<!-- 物料库存查询 -->
|
|
<comPartStock ref="comPartStock" :close-on-click-modal="false"
|
|
:visible.sync="showPartStockFlag">
|
|
</comPartStock>
|
|
|
|
<!--列表的组件-->
|
|
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
|
|
|
|
<!-- 动态列 -->
|
|
<column v-if="visible" ref="column" @refreshData="getTableUserColumn" v-drag></column>
|
|
</div>
|
|
</template>
|
|
|
|
<script>
|
|
|
|
import {
|
|
getProduceScheduleList,
|
|
reportCheck,
|
|
getUserSpecialSecurity,
|
|
closeOrOpenProduceOrder,
|
|
pauseOrOpenProduceOrder,
|
|
costRollUpProduceOrder,
|
|
manualProduceOrder,
|
|
repairSOFlagProduceOrder,
|
|
workbenchCancelallops,
|
|
getShopOrder,
|
|
getScheduleMultiReportSpecialAuth,/* 获取派工单的特殊权限 */
|
|
getResourceByUser
|
|
} from '@/api/yieldReport/produce_order.js'
|
|
|
|
/* 动态表头 */
|
|
import {
|
|
saveTableDefaultList,
|
|
getTableDefaultListLanguage,
|
|
getTableUserListLanguage,
|
|
removerDefault,
|
|
removerUser
|
|
} from '@/api/table.js'
|
|
|
|
/* 引入组件 */
|
|
import Chooselist from '@/views/modules/common/Chooselist_eam'
|
|
import comSwitchOperator from './com_switch_operator'/* 切换操作员 */
|
|
import comProduceReportNormal from './com_produce_report_normal'/* 报工的组件 */
|
|
import comFinishSchedule from './com_finish_schedule'/* 结束派工的组件 */
|
|
import fqcProduceReportNormal from './otherReport/fqc_produce_report_normal'/* 结束派工的组件 */
|
|
import reworkInspectReport from './otherReport/rework_inspect_report'/* 结束派工的组件 */
|
|
import fqcSplitRollReport from './otherReport/fqc_split_roll_report'/* 结束派工的组件 */
|
|
import changePackaging from './otherReport/change_packaging'/* 结束派工的组件 */
|
|
import createRecheck from './com_create_recheck'
|
|
import Com_split_schedule from '../schedule/com_split_schedule'
|
|
import comSplitOrderReport from './com_split_order_report'
|
|
import comPartStock from '../common/com_part_stock'
|
|
import column from '@/views/modules/common/column'
|
|
/* 展示物料库存的组件 */
|
|
/* 分切报工 */
|
|
|
|
import {
|
|
searchSysLanguagePackList,
|
|
searchSysLanguageParam,
|
|
searchFunctionButtonList,
|
|
saveButtonList,
|
|
searchSysLanguage,
|
|
searchLanguageListByLanguageCode,
|
|
saveSysLanguageOne,
|
|
searchPageLanguageData,
|
|
removerLanguage,
|
|
saveSysLanguageList
|
|
} from "@/api/sysLanguage.js";
|
|
|
|
var functionId = '104003006';
|
|
|
|
export default {
|
|
data() {
|
|
return {
|
|
height: 800,
|
|
authEdit: false,
|
|
authAdd: false,
|
|
authDelete: false,
|
|
menuId: this.$route.meta.menuId,
|
|
menuShow: false,
|
|
showOperatorFlag: false,
|
|
showReportFlag: false,
|
|
showSplitReportFlag: false,
|
|
showDefault: false,
|
|
visible: false,
|
|
fqcShowReportFlag: false,
|
|
reworkShowReportFlag: false,
|
|
fqcRollShowReportFlag: false,
|
|
showFinishScheduleFlag: false,
|
|
changePackagingFlag: false,
|
|
showPartStockFlag: false,
|
|
searchData: {
|
|
site: this.$store.state.user.site,
|
|
resourceId: '',
|
|
orderNo: '',
|
|
seqNo: '',
|
|
planStartTime1: '',
|
|
planStartTime2: '',
|
|
closedFlag: 'N',
|
|
status: 1,
|
|
username: this.$store.state.user.name,
|
|
searchFlag: false,
|
|
exportFlag: "N",
|
|
},
|
|
currentRow: {},
|
|
operatorData: {
|
|
site: this.$store.state.user.site,
|
|
username: this.$store.state.user.name,
|
|
userDisplay: this.$store.state.user.userDisplay,
|
|
operatorId: '',
|
|
operatorName: '',
|
|
status: '',
|
|
showFlag: false
|
|
},
|
|
produceScheduleList: [],
|
|
dataListLoading: false,
|
|
columnList: [
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceSerialNumber',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'serialNumber',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '序号',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceOrderNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'orderNo',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '生产订单号',
|
|
columnWidth: 120,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceSeqNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'seqNo',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '派工单号',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceItemNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'itemNo',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '生产工序',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceItemDesc',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'itemDesc',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '工序名称',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceResourceId',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'resourceId',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '生产机台',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePartNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'partNo',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '产品编码',
|
|
columnWidth: 120,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePartDesc',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'partDesc',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '产品名称',
|
|
columnWidth: 200,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceSpec',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'spec',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '规格型号',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceQtyRequired',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'qtyRequired',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '需求数量',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceQtyReported',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'qtyReported',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '完工数量',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceQtyToReport',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'qtyToReport',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '未完数量',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceTimeRequired',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'timeRequired',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '需求时间',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceTimeReported',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'timeReported',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '累计工时(m)',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceQtyApprove',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'qtyApprove',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '合格数量',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceQtyScrapt',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'qtyScrapt',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '不良数量',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceScheduledDate',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'scheduledDate',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '排产日期',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePlanStartTime',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'planStartTime',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '计划开工时间',
|
|
columnWidth: 130,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePlanFinishTime',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'planFinishTime',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '计划完工时间',
|
|
columnWidth: 130,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceShiftNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'shiftNo',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '班次',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceMachSetupTime',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'machSetupTime',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '调机时间',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceMachRunFactor',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'machRunFactor',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '单位产出',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceFactorUnit',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'factorUnit',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '产出单位',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceEfficiency',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'efficiency',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '效率',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceNextItemNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'nextItemNo',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '下道工序号',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceNextItemDesc',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'nextItemDesc',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '下道工序名称',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePreItemNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'preItemNo',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '前道工序号',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePreItemDesc',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'preItemDesc',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '前道工序名称',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceCustomerName',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'customerName',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '客户名称',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceCustPartNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'custPartNo',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '客户料号',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePreResourceInfo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'preResourceInfo',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '上工序机台信息',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProducePreQtyFinished',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'preQtyFinished',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '上工序完工数',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceNeedDate',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'needDate',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '生产订单要求完工日期',
|
|
columnWidth: 160,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: true,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceClosedFlag',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'closedFlag',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '已关闭',
|
|
columnWidth: 50,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceBarcodeId',
|
|
tableId: '5302Produce',
|
|
tableName: '条形码',
|
|
columnProp: 'barcodeId',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '条形码',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceRemark',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'remark',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '备注',
|
|
columnWidth: 200,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceCrewSize',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'crewSize',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '操作工人数',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceOutWorkFlag',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'outWorkFlag',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '是否外协',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceScheduledSeqNo',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'scheduledSeqNo',
|
|
headerAlign: 'center',
|
|
align: 'left',
|
|
columnLabel: '次序号',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceParkFlag',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'parkFlag',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '暂停',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceQtyRequiredOriginal',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'qtyRequiredOriginal',
|
|
headerAlign: 'center',
|
|
align: 'right',
|
|
columnLabel: '原始派工单需求数量',
|
|
columnWidth: 80,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceClosedBy',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'closedBy',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '关闭人',
|
|
columnWidth: 100,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
},
|
|
{
|
|
userId: this.$store.state.user.name,
|
|
functionId: 5302,
|
|
serialNumber: '5302ProduceClosedDate',
|
|
tableId: '5302Produce',
|
|
tableName: '待生产工单',
|
|
columnProp: 'closedDate',
|
|
headerAlign: 'center',
|
|
align: 'center',
|
|
columnLabel: '关闭日期',
|
|
columnWidth: 130,
|
|
columnHidden: false,
|
|
columnImage: false,
|
|
columnSortable: false,
|
|
sortLv: 0,
|
|
status: true,
|
|
fixed: ''
|
|
}
|
|
],
|
|
reportButton: {
|
|
normalReportButton: true,
|
|
fqcReportButton: true,
|
|
reworkReportButton: true,
|
|
packReportButton: true,
|
|
fqcSegmentReportButton: true,
|
|
slitReportButton: true
|
|
},
|
|
menuButton: {
|
|
prdButton: true,
|
|
openButton: true,
|
|
closedButton: true,
|
|
pauseButton: true,
|
|
openReverseButton: true,
|
|
costRollUpFlagButton: true,
|
|
canceledCostRollUpFlagButton: false,
|
|
manualFlagButton: false,
|
|
canceledManualFlagButton: false,
|
|
repairSOFlagButton: false,
|
|
canceledRepairSOFlagButton: false,
|
|
canceledAllPrdButton: false,
|
|
createRecheckButton: false,
|
|
partStockFlag: true/* 查看物料库存 */
|
|
},
|
|
queryTable: {
|
|
userId: this.$store.state.user.name,
|
|
functionId: this.$route.meta.menuId,
|
|
tableId: '5302Produce',
|
|
languageCode: this.$i18n.locale
|
|
},
|
|
// 用户table 查询参数
|
|
queryTableUser: {
|
|
userId: this.$store.state.user.name,
|
|
functionId: this.$route.meta.menuId,
|
|
tableId: '5302Produce',
|
|
status: true,
|
|
languageCode: this.$i18n.locale
|
|
},
|
|
// 用户table 配置集合
|
|
userColumnList: [],
|
|
buttons: {
|
|
searchButton: '查询',
|
|
reportButton: '报工',
|
|
fqcReportButton: 'FQC报工',
|
|
reworkInspectReport: '返工重检',
|
|
repackageReport: '换包装',
|
|
fqcSplitRollReport: 'FQC分卷',
|
|
splitReport: '分切报工',
|
|
settingTable: '设置列表',
|
|
defaultTable: '设置默认配置',
|
|
},
|
|
queryButton: {
|
|
functionId: functionId,
|
|
table_id: '*',
|
|
languageCode: this.$i18n.locale,
|
|
objectType: 'button'
|
|
},
|
|
labels: {
|
|
menuLabel: '菜单',
|
|
siteNo: '工厂编号:',
|
|
resourceId: '机台编号:',
|
|
planStartTime: '计划开工时间:',
|
|
orderNo: '生产订单号:',
|
|
seqNo: '派工单号:',
|
|
showFinishedSeqNo: '显示已结束派工单',
|
|
shopOrderList: '生产工单列表 ',
|
|
primaryMenu: '主菜单',
|
|
shopOrderLabel: '生产订单',
|
|
closeLabel: '关闭',
|
|
openLabel: '打开',
|
|
pauseLabel: '暂停',
|
|
reopenLabel: '重新开工',
|
|
createReCheckSeqNo: '创建重检派工单',
|
|
cancelAllScheduleOperations: '取消所有派工单操作',
|
|
prodIssued: '生产已排料',
|
|
cancelProdIssued: '取消生产已排料',
|
|
viewPartStock: '查看物料库存',
|
|
toolIssued: '刀模已发',
|
|
cancelToolIssued: '取消刀模已发',
|
|
printIssued: '印版已发',
|
|
cancelPrintIssued: '取消印版已发',
|
|
pleaseSelectSchedule: '请先选择派工单!',
|
|
confirmLabel: '确定',
|
|
cancelLabel: '取消',
|
|
sureCloseThisSchedule: '确定要关闭当前派工单吗?',
|
|
closeScheduleLabel: '关闭派工单',
|
|
sureOpenThisSchedule: '确定要打开当前派工单吗?',
|
|
surePauseThisSchedule: '确定要暂停当前派工单吗??',
|
|
sureReopenThisSchedule: '确定要重开当前派工单吗?',
|
|
sureCancelScheduleAllOperations: '确定取消所有派工单操作?',
|
|
sureThisOrderMaterialIsIssued: '确定该订单的料已排?',
|
|
sureCancelThisOrderMaterialIssued: '确定要撤销该订单的排料?',
|
|
cancelOrderMaterialIssued: '撤销订单排料',
|
|
sureThisOrderToolIsIssued: '确定该订单的刀模已发?',
|
|
sureCancelThisOrderToolIssued: '确定要撤销该订单的刀模已发?',
|
|
sureThisOrderPrintIsIssued: '确定该订单的印版已发?',
|
|
sureCancelThisOrderPrintIssued: '确定要撤销该订单的印版已发?',
|
|
thisScheduleCantReport: '当前派工单无法使用报工!',
|
|
thisOrderIsNotSplitOrder: '当前工单非分切工单!',
|
|
thisScheduleIsNotFqc: '当前派工单非FQC报工派工单!',
|
|
thisOrderIsNotSpecialOrder: '该订单不是特殊订单,不能采用该功能!',
|
|
operatorCantBeUsed: '操作员信息不可用!',
|
|
},
|
|
queryLabel: {
|
|
functionId: functionId,
|
|
table_id: '*',
|
|
languageCode: this.$i18n.locale,
|
|
objectType: 'label'
|
|
},
|
|
// 导出 start
|
|
exportList: [],
|
|
exportName: "生产工单",
|
|
exportHeader: [],
|
|
exportFooter: [],
|
|
exportDefaultValue: "",
|
|
// 导出 end
|
|
}
|
|
},
|
|
components: {
|
|
Chooselist, /* 选择的组件 */
|
|
Com_split_schedule,
|
|
comSwitchOperator, /* 切换用户的组件 */
|
|
comProduceReportNormal, /* 报工页面的组件 */
|
|
comSplitOrderReport, /* 分切报工 */
|
|
comFinishSchedule, /* 结束派工单的组件 */
|
|
fqcProduceReportNormal, /* FQC报工 */
|
|
reworkInspectReport, /* 返工重建 */
|
|
fqcSplitRollReport, /* FQC分卷 */
|
|
createRecheck, /* 创建重检派工单 */
|
|
changePackaging, /* 换包装 */
|
|
comPartStock, /* 展示物料库存的组件 */
|
|
column/* 动态列 */
|
|
},
|
|
mounted() {
|
|
this.$nextTick(() => {
|
|
this.height = window.innerHeight - 235
|
|
})
|
|
},
|
|
methods: {
|
|
|
|
|
|
// 控制是否显示功能
|
|
menuButtonFlag() {
|
|
this.menuShow = false
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.menuButton.prdButton = true
|
|
this.menuButton.openButton = true
|
|
this.menuButton.closedButton = true
|
|
this.menuButton.pauseButton = true
|
|
this.menuButton.costRollUpFlagButton = true
|
|
this.menuButton.canceledCostRollUpFlagButton = true
|
|
this.menuButton.manualFlagButton = true
|
|
this.menuButton.canceledManualFlagButton = true
|
|
this.menuButton.repairSOFlagButton = true
|
|
this.menuButton.canceledRepairSOFlagButton = true
|
|
this.menuButton.canceledAllPrdButton = true
|
|
this.menuButton.createRecheckButton = true
|
|
} else {
|
|
let currentRow = null
|
|
// 获取订单信息
|
|
let searchOrder = {
|
|
orderNo: this.currentRow.orderNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
site: this.currentRow.site,
|
|
username: this.$store.state.user.name,
|
|
searchFlag: true,
|
|
exportFlag: 'N',
|
|
}
|
|
getProduceScheduleList(searchOrder).then(({data}) => {
|
|
// 设置查询数据
|
|
currentRow = data.rows[0]
|
|
if (currentRow == null) {
|
|
return
|
|
}
|
|
// this.menuButton.canceledAllPrdButton = false
|
|
this.menuButton.createRecheckButton = false
|
|
this.menuButton.partStockFlag = false
|
|
// 判断是否具有该页面权限
|
|
let menList = JSON.parse(sessionStorage.getItem('dynamicMenuRoutes') || '[]').filter(item => item.path == 'shopOrder-shopOrder/shopOrder')
|
|
if (menList.length > 0) {
|
|
this.menuButton.prdButton = false
|
|
}
|
|
let canceledAllPrd = {
|
|
userSpecialSecurityNo: 232,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(canceledAllPrd).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.canceledAllPrdButton = false
|
|
} else {
|
|
this.menuButton.canceledAllPrdButton = true
|
|
}
|
|
})
|
|
// 关闭按钮
|
|
if (currentRow.closedFlag == 'N') {
|
|
let data = {
|
|
userSpecialSecurityNo: 230,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(data).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.closedButton = false
|
|
} else {
|
|
this.menuButton.closedButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.closedButton = true
|
|
}
|
|
// 打开按钮
|
|
if (currentRow.closedFlag == 'Y') {
|
|
let data = {
|
|
userSpecialSecurityNo: 231,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(data).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.openButton = false
|
|
} else {
|
|
this.menuButton.openButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.openButton = true
|
|
}
|
|
// 暂停
|
|
if (currentRow.closedFlag == 'N' && currentRow.parkFlag == 'N') {
|
|
this.menuButton.pauseButton = false
|
|
} else {
|
|
this.menuButton.pauseButton = true
|
|
}
|
|
// 重开
|
|
if (currentRow.closedFlag == 'N' && currentRow.parkFlag == 'Y') {
|
|
this.menuButton.openReverseButton = false
|
|
} else {
|
|
this.menuButton.openReverseButton = true
|
|
}
|
|
// 生产排料
|
|
if (currentRow.matIssueFlag == 'N') {
|
|
// 获取特殊权限
|
|
let data = {
|
|
userSpecialSecurityNo: 238,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(data).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.costRollUpFlagButton = false
|
|
} else {
|
|
this.menuButton.costRollUpFlagButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.costRollUpFlagButton = true
|
|
}
|
|
// 取消生产排料
|
|
if (currentRow.matIssueFlag == 'Y') {
|
|
// 获取特殊权限
|
|
let data = {
|
|
userSpecialSecurityNo: 238,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(data).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.canceledCostRollUpFlagButton = false
|
|
} else {
|
|
this.menuButton.canceledCostRollUpFlagButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.canceledCostRollUpFlagButton = true
|
|
}
|
|
// 刀模已发 确认
|
|
if (currentRow.toolIssueFlag == 'N') {
|
|
// 获取特殊权限
|
|
let data = {
|
|
userSpecialSecurityNo: 258,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(data).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.manualFlagButton = false
|
|
} else {
|
|
this.menuButton.manualFlagButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.manualFlagButton = true
|
|
}
|
|
// 刀模已发 取消
|
|
if (currentRow.toolIssueFlag == 'Y') {
|
|
// 获取特殊权限
|
|
let canceledAllPrdData = {
|
|
userSpecialSecurityNo: 259,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(canceledAllPrdData).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.canceledManualFlagButton = false
|
|
} else {
|
|
this.menuButton.canceledManualFlagButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.canceledManualFlagButton = true
|
|
}
|
|
// 印版已发 确认
|
|
if (currentRow.plateIssueFlag == 'N') {
|
|
// 获取特殊权限
|
|
let data = {
|
|
userSpecialSecurityNo: 259,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(data).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.repairSOFlagButton = false
|
|
} else {
|
|
this.menuButton.repairSOFlagButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.repairSOFlagButton = true
|
|
}
|
|
// 印版已发 取消
|
|
if (currentRow.plateIssueFlag == 'Y') {
|
|
// 获取特殊权限
|
|
let data = {
|
|
userSpecialSecurityNo: 259,
|
|
username: this.$store.state.user.name
|
|
}
|
|
getUserSpecialSecurity(data).then(({data}) => {
|
|
if (data.userSpecialSecurity == 'Y') {
|
|
this.menuButton.canceledRepairSOFlagButton = false
|
|
} else {
|
|
this.menuButton.canceledRepairSOFlagButton = true
|
|
}
|
|
})
|
|
} else {
|
|
this.menuButton.canceledRepairSOFlagButton = true
|
|
}
|
|
this.menuShow = true
|
|
})
|
|
}
|
|
},
|
|
/* 区分不同的菜单 调用不同的方法 调用不同的方法 */
|
|
handleCommand(val) {
|
|
// 区分是哪一个方法调用
|
|
// 页面跳转
|
|
if (val == '0') {
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
this.$router.push({
|
|
path: '/shopOrder-shopOrder/shopOrder',
|
|
query: {
|
|
order: this.currentRow.orderNo,
|
|
site: this.currentRow.site,
|
|
user: this.$store.state.user.name
|
|
}
|
|
})
|
|
}
|
|
|
|
if (val === '查看物料库存') {
|
|
// 判断是否选择好了工单
|
|
if (this.currentRow == null || this.currentRow == {}) {
|
|
// 重置按钮
|
|
this.menuButton.partStockFlag = true
|
|
// 返回错误
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
let tempData = {'site': this.currentRow.site, 'orderNo': this.currentRow.orderNo}
|
|
// 打开组件 需要的数据 展示需要的数据
|
|
this.$nextTick(() => {
|
|
this.showPartStockFlag = true
|
|
this.$refs.comPartStock.init(tempData)
|
|
})
|
|
}
|
|
// 关闭
|
|
if (val == '1') {
|
|
// 调用提示的方法
|
|
this.$confirm(this.labels.sureCloseThisSchedule, this.labels.closeScheduleLabel, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
username: this.$store.state.user.name,
|
|
itemNo: this.currentRow.itemNo,
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
closedFlag: 'Y'
|
|
}
|
|
closeOrOpenProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.error(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 打开
|
|
if (val == '2') {
|
|
// 调用提示的方法
|
|
this.$confirm(this.labels.sureOpenThisSchedule, this.labels.closeScheduleLabel, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
username: this.$store.state.user.name,
|
|
itemNo: this.currentRow.itemNo,
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
closedFlag: 'N'
|
|
}
|
|
closeOrOpenProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.error(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 暂停
|
|
if (val == '3') {
|
|
// 调用提示的方法
|
|
this.$confirm(this.labels.surePauseThisSchedule, this.labels.closeScheduleLabel, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
username: this.$store.state.user.name,
|
|
itemNo: this.currentRow.itemNo,
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
parkFlag: 'Y'
|
|
}
|
|
pauseOrOpenProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.error(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 重开
|
|
if (val == '4') {
|
|
// 调用提示的方法
|
|
this.$confirm(this.labels.sureReopenThisSchedule, this.labels.closeScheduleLabel, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
username: this.$store.state.user.name,
|
|
itemNo: this.currentRow.itemNo,
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
parkFlag: 'N'
|
|
}
|
|
pauseOrOpenProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.error(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 创建重检派工单
|
|
if (val == '5') {
|
|
this.$nextTick(() => {
|
|
this.$refs.createRecheck.init(this.currentRow)
|
|
})
|
|
}
|
|
// 取消所有派工单操作
|
|
if (val == '6') {
|
|
// 调用提示的方法
|
|
this.$confirm(this.labels.sureCancelScheduleAllOperations, this.labels.shopOrderLabel, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
orderNo: this.currentRow.orderNo,
|
|
itemNo: this.currentRow.itemNo,
|
|
site: this.currentRow.site,
|
|
seqNo: this.currentRow.seqNo,
|
|
username: this.searchData.username,
|
|
userDisplay: this.searchData.userDisplay
|
|
}
|
|
workbenchCancelallops(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 生产已排料 确认
|
|
if (val == '7') {
|
|
// 调用提示的方法
|
|
this.$confirm(this.labels.sureThisOrderMaterialIsIssued, this.labels.prodIssued, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
itemNo: this.currentRow.itemNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
username: this.$store.state.user.name,
|
|
matIssueFlag: 'Y',
|
|
orderChangeStatus: '订单已排料'
|
|
}
|
|
costRollUpProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 生产已排料 取消
|
|
if (val == '8') {
|
|
// 调用提示的方法
|
|
this.$confirm(this.labels.sureCancelThisOrderMaterialIssued, this.labels.cancelOrderMaterialIssued, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
itemNo: this.currentRow.itemNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
matIssueFlag: 'N',
|
|
orderChangeStatus: '撤销订单排料'
|
|
}
|
|
costRollUpProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 刀模 确认
|
|
if (val == '9') {
|
|
this.$confirm(this.labels.sureCancelThisOrderToolIssued, this.labels.toolIssued, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
itemNo: this.currentRow.itemNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
toolIssueFlag: 'Y',
|
|
orderChangeStatus: '订单刀模已发'
|
|
}
|
|
manualProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 刀模 取消
|
|
if (val == '10') {
|
|
this.$confirm(this.labels.sureCancelThisOrderToolIssued, this.labels.toolIssued, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
itemNo: this.currentRow.itemNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
toolIssueFlag: 'N',
|
|
orderChangeStatus: '撤销订单刀模已发'
|
|
}
|
|
manualProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 印版已发
|
|
if (val == '11') {
|
|
this.$confirm(this.labels.sureThisOrderPrintIsIssued, this.labels.printIssued, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
itemNo: this.currentRow.itemNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
plateIssueFlag: 'Y',
|
|
orderChangeStatus: '订单印版已发'
|
|
}
|
|
repairSOFlagProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
// 印版已发 取消
|
|
if (val == '12') {
|
|
this.$confirm(this.labels.sureCancelThisOrderPrintIssued, this.labels.printIssued, {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
let data = {
|
|
site: this.currentRow.site,
|
|
orderNo: this.currentRow.orderNo,
|
|
itemNo: this.currentRow.itemNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
plateIssueFlag: 'N',
|
|
orderChangeStatus: '订单印版已发'
|
|
}
|
|
repairSOFlagProduceOrder(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
this.$message.success(data.msg)
|
|
} else {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
})
|
|
})
|
|
}
|
|
},
|
|
// FQC 报工
|
|
fqcReportModal() {
|
|
// 首先判断是否选择好派工单
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
// 打开操作员切换功能
|
|
this.fqcShowReportFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.fqcProduceReportNormal.init(this.currentRow.seqNo, this.operatorData)
|
|
})
|
|
},
|
|
// FQC 分卷
|
|
fqcSplitRollModal() {
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
// 打开操作员切换功能
|
|
this.fqcRollShowReportFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.fqcSplitRollReport.init(this.currentRow.seqNo, this.operatorData)
|
|
})
|
|
},
|
|
// 返工重捡
|
|
reworkInspectModal() {
|
|
// 首先判断是否选择好派工单
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
// 打开操作员切换功能
|
|
this.reworkShowReportFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.reworkInspectReport.init(this.currentRow.seqNo, this.operatorData)
|
|
})
|
|
},
|
|
// 换包装
|
|
changePackaging() {
|
|
// 首先判断是否选择好派工单
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
// 打开操作员切换功能
|
|
this.changePackagingFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.changePackaging.init(this.currentRow.seqNo, this.operatorData)
|
|
})
|
|
},
|
|
|
|
/* 查询派工单 */
|
|
getProduceScheduleList() {
|
|
// 开始真的查询;
|
|
this.searchData.searchFlag = true
|
|
getProduceScheduleList(this.searchData).then(({data}) => {
|
|
// 设置查询数据
|
|
this.produceScheduleList = data.rows
|
|
})
|
|
},
|
|
|
|
/* 刷新页面table */
|
|
refreshPageTables() {
|
|
this.currentRow = {}
|
|
this.getProduceScheduleList()
|
|
},
|
|
/* 设置选中行的参数 */
|
|
setCurrentRow(row, column, event) {
|
|
this.currentRow = JSON.parse(JSON.stringify(row))
|
|
},
|
|
|
|
// 设置参数
|
|
initOperatorData(operatorData) {
|
|
this.showOperatorFlag = false
|
|
this.operatorData = JSON.parse(JSON.stringify(operatorData))
|
|
if (operatorData.reportType == 0) {
|
|
// 切换到报工组件
|
|
this.switchProduceReportModal()
|
|
}
|
|
|
|
if (operatorData.reportType == 1) {
|
|
// 切换到fqc报工组件
|
|
this.fqcReportModal()
|
|
}
|
|
|
|
if (operatorData.reportType == 2) {
|
|
// 切换到返工 重检组件
|
|
this.reworkInspectModal()
|
|
}
|
|
if (operatorData.reportType == 3) {
|
|
// 切换到fqc分卷组件
|
|
this.fqcSplitRollModal()
|
|
}
|
|
if (operatorData.reportType == 4) {
|
|
// 换包装
|
|
this.changePackaging()
|
|
}
|
|
|
|
/* 分切报工 */
|
|
if (operatorData.reportType == 8) {
|
|
// 分切报工
|
|
this.showSplitOrderReportModal()
|
|
}
|
|
},
|
|
|
|
notInitOperatorData(val) {
|
|
// 注意:现在关闭对话框时会自动设置为当前登录人,不再清空操作员信息
|
|
// 关闭切换用户模态框
|
|
this.showOperatorFlag = false
|
|
if (val == 0) {
|
|
// 切换到报工组件
|
|
this.switchProduceReportModal()
|
|
}
|
|
|
|
if (val == 1) {
|
|
// 切换到fqc报工组件
|
|
this.fqcReportModal()
|
|
}
|
|
|
|
if (val == 2) {
|
|
// 切换到返工 重检组件
|
|
this.reworkInspectModal()
|
|
}
|
|
if (val == 3) {
|
|
// 切换到fqc分卷组件
|
|
this.fqcSplitRollModal()
|
|
}
|
|
if (val == 4) {
|
|
// 切换到换包装
|
|
this.changePackaging()
|
|
}
|
|
|
|
// 分切报工
|
|
if (val == 8) {
|
|
// 分切报工
|
|
this.showSplitOrderReportModal()
|
|
}
|
|
},
|
|
// 切换员工modal
|
|
switchOperatorModal(val) {
|
|
// 首先判断是否选择好派工单
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
//获取下一道工序
|
|
let nextItemNo = this.currentRow.nextItemNo;
|
|
|
|
if (val == 0) {
|
|
let orderType = this.currentRow.orderType
|
|
let workCenterNo = this.currentRow.workCenterNo
|
|
// if (orderType != 'S' || workCenterNo === 'FQC' || nextItemNo == 0) {
|
|
// // 验证通过
|
|
// this.$message.error(this.labels.thisScheduleCantReport)
|
|
// return false
|
|
// }
|
|
let data = {
|
|
site: this.currentRow.site,
|
|
resourceId: this.currentRow.resourceId,
|
|
workCenterNo: this.currentRow.workCenterNo,
|
|
seqNo: this.currentRow.seqNo,
|
|
username: this.$store.state.user.name
|
|
}
|
|
reportCheck(data).then(({data}) => {
|
|
if (data.code == 0) {
|
|
// 打开操作员切换功能
|
|
this.showOperatorFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.comSwitchOperator.init(val, this.currentRow, false, false)
|
|
})
|
|
}
|
|
if (data.code == 300) {
|
|
this.$message.warning(data.msg)
|
|
}
|
|
if (data.code == 400) {
|
|
this.$confirm(`${data.msg}`, '提示', {
|
|
confirmButtonText: this.labels.confirmLabel,
|
|
cancelButtonText: this.labels.cancelLabel,
|
|
type: 'warning'
|
|
}).then(() => {
|
|
// 打开操作员切换功能
|
|
this.showOperatorFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.comSwitchOperator.init(val, this.currentRow, false, false)
|
|
})
|
|
})
|
|
}
|
|
})
|
|
} else if (val == 8) { // 处理 分切工单
|
|
// 判断当前工单是否是分切工单
|
|
let orderType = this.currentRow.orderType
|
|
if (orderType === 'D') {
|
|
this.showOperatorFlag = true
|
|
this.$refs.comSwitchOperator.init(val, this.currentRow, false, false)
|
|
} else {
|
|
this.$message.error(this.labels.thisOrderIsNotSplitOrder)
|
|
return false
|
|
}
|
|
} else if (val == 1) { // 处理 FQC
|
|
// 判断订单类型和加工中心
|
|
let workCenterNo = this.currentRow.workCenterNo
|
|
if (workCenterNo === 'FQC' || nextItemNo == 0) {
|
|
this.showOperatorFlag = true
|
|
this.$refs.comSwitchOperator.init(val, this.currentRow, false, false)
|
|
} else {
|
|
this.$message.error(this.labels.thisScheduleIsNotFqc)
|
|
return false
|
|
}
|
|
} else {
|
|
if (val == 4) {
|
|
getShopOrder(this.currentRow).then(({data}) => {
|
|
if (data.code == 0) {
|
|
if (data.data == 'P') {
|
|
// 打开操作员切换功能
|
|
this.showOperatorFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.comSwitchOperator.init(val, this.currentRow, false, false)
|
|
})
|
|
} else {
|
|
this.$alert(this.labels.thisOrderIsNotSpecialOrder, '提示', {
|
|
confirmButtonText: this.labels.confirmLabel
|
|
})
|
|
}
|
|
}
|
|
})
|
|
} else {
|
|
// 打开操作员切换功能
|
|
this.showOperatorFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.comSwitchOperator.init(val, this.currentRow, false, false)
|
|
})
|
|
}
|
|
}
|
|
},
|
|
|
|
// 切换报工modal
|
|
switchProduceReportModal() {
|
|
// 首先判断是否选择好派工单
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
// 打开操作员切换功能
|
|
this.showReportFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.comProduceReportNormal.init(this.currentRow.seqNo, this.operatorData)
|
|
})
|
|
},
|
|
|
|
// 打开分切报工的
|
|
showSplitOrderReportModal() {
|
|
// 首先判断是否选择好派工单
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
this.$nextTick(() => {
|
|
// 打开分切报工功能
|
|
this.showSplitReportFlag = true
|
|
this.$refs.comSplitOrderReport.init(this.currentRow.seqNo, this.operatorData)
|
|
})
|
|
},
|
|
|
|
// 打开结束派工单的modal
|
|
showFinishScheduleModal() {
|
|
// 首先判断是否选择好派工单
|
|
if (JSON.stringify(this.currentRow) == '{}') {
|
|
this.$message.error(this.labels.pleaseSelectSchedule)
|
|
return false
|
|
}
|
|
// 打开操作员切换功能
|
|
this.showFinishScheduleFlag = true
|
|
this.$nextTick(() => {
|
|
this.$refs.comFinishSchedule.init(this.currentRow, this.operatorData)
|
|
})
|
|
},
|
|
|
|
// 结束派工单后刷新页面
|
|
processFinishScheduleOperation() {
|
|
// 刷新当前页面的数据
|
|
this.refreshPageTables()
|
|
},
|
|
|
|
// 保存操作员的信息
|
|
saveOperatorData() {
|
|
// 查询操作员信息
|
|
getOperatorData(this.operatorData).then(({data}) => {
|
|
let operatorData = data.row
|
|
let status = operatorData.status
|
|
this.operatorData.operatorName = data.row.operatorName
|
|
// 重置操作员信息状态
|
|
this.operatorData.status = status
|
|
// 判断是否验证通过
|
|
if (status == 'N') {
|
|
this.operatorFlag = false
|
|
} else {
|
|
this.operatorFlag = true
|
|
}
|
|
if (!this.operatorFlag) {
|
|
this.$message.error(this.labels.operatorCantBeUsed)
|
|
}
|
|
})
|
|
// 判断是否检查通过--不通过不在继续
|
|
.then(() => {
|
|
if (!this.operatorFlag) {
|
|
return false
|
|
}
|
|
// 关闭操作员切换功能
|
|
this.operatorData.showFlag = false
|
|
// 打开组件
|
|
this.showReportFlag = true
|
|
// 打开报工操作页面
|
|
this.$nextTick(() => {
|
|
this.$refs.comProduceReportNormal.init(this.currentRow.seqNo, this.operatorData)
|
|
})
|
|
})
|
|
},
|
|
|
|
/* 列表方法的回调 */
|
|
getBaseData(val) {
|
|
if (this.tagNo === 95) {
|
|
this.searchData.resourceId = val.ResourceID
|
|
}
|
|
},
|
|
|
|
// 获取基础数据列表
|
|
getBaseList(val) {
|
|
this.tagNo = val
|
|
this.$nextTick(() => {
|
|
let strVal = ''
|
|
if (val === 95) {
|
|
strVal = this.searchData.resourceId
|
|
}
|
|
this.$refs.baseList.init(val, strVal, " AND WorkCenterNo <> 'FQC'")
|
|
})
|
|
},
|
|
|
|
// 打开页面设置
|
|
userSetting() {
|
|
this.visible = true
|
|
let queryTable = {
|
|
userId: this.$store.state.user.name,
|
|
functionId: this.$route.meta.menuId,
|
|
tableId: '5302Produce',
|
|
languageCode: this.$i18n.locale
|
|
}
|
|
this.$nextTick(() => {
|
|
this.$refs.column.init(queryTable)
|
|
})
|
|
},
|
|
// 获取 用户保存的 格式列
|
|
getTableUserColumn() {
|
|
getTableUserListLanguage(this.queryTableUser).then(({data}) => {
|
|
if (data && data.code == 0 && data.rows.length > 0) {
|
|
// this.columnList = []
|
|
this.columnList = data.rows
|
|
} else {
|
|
this.getColumnList()
|
|
}
|
|
})
|
|
},
|
|
// 保存 默认配置 列
|
|
async saveColumnList() {
|
|
// 删除所有的该页面下保存的数据
|
|
if (this.userColumnList) {
|
|
// 删除 user自定义的数据
|
|
await removerUser(this.queryTable)
|
|
}
|
|
// 删除默认配置
|
|
await removerDefault(this.queryTable)
|
|
// 保存页面 table属性
|
|
let sumColumnList = this.columnList// concat(this.columnList1);
|
|
sumColumnList = sumColumnList.map(item => {
|
|
return item = {
|
|
tableId: item.tableId,
|
|
tableName: item.tableName,
|
|
columnProp: item.columnProp,
|
|
columnLabel: item.columnLabel,
|
|
columnHidden: item.columnHidden,
|
|
columnImage: item.columnImage,
|
|
columnSortable: item.columnSortable,
|
|
columnWidth: item.columnWidth,
|
|
format: item.format,
|
|
functionId: this.$route.meta.menuId,
|
|
sortLv: item.sortLv,
|
|
status: true,
|
|
fixed: item.fixed,
|
|
serialNumber: item.serialNumber,
|
|
columnType: item.columnType,
|
|
align: item.align
|
|
}
|
|
})
|
|
|
|
await saveTableDefaultList(sumColumnList)
|
|
// 保存页面 button label title 属性
|
|
/* let buttons = this.buttonList.map(item => {
|
|
return item = {
|
|
functionId: this.$route.meta.menuId,
|
|
languageValue: item.languageValue,
|
|
objectId: item.objectId,
|
|
objectType: item.objectType,
|
|
tableId: item.tableId
|
|
}
|
|
})
|
|
await saveButtonList(buttons) */
|
|
this.getFunctionButtonList()
|
|
this.getColumnList()
|
|
},
|
|
// 获取 tableDefault 列
|
|
getColumnList() {
|
|
getTableDefaultListLanguage(this.queryTable).then(({data}) => {
|
|
if (data && data.code == 0) {
|
|
// this.showDefault = false
|
|
this.columnList = data.rows
|
|
} else {
|
|
// this.showDefault = true
|
|
}
|
|
})
|
|
},
|
|
|
|
//获取按钮的权限数据
|
|
getButtonAuthData() {
|
|
let updateFlag = this.isAuth(this.menuId + ":revise");
|
|
let fullControFlag = this.isAuth(this.menuId + ":fullContro");
|
|
let deleteFlag = this.isAuth(this.menuId + ":remove");
|
|
//处理页面的权限数据
|
|
this.authEdit = !updateFlag && !fullControFlag;
|
|
this.authAdd = !fullControFlag;
|
|
this.authDelete = !deleteFlag;
|
|
},
|
|
|
|
|
|
//获取多语言的信息
|
|
getMultiLanguageList() {
|
|
//首先查询当前按钮的多语言
|
|
searchFunctionButtonList(this.queryButton).then(({data}) => {
|
|
if (data && data.code == 0) {
|
|
this.buttons = data.data
|
|
} else {
|
|
// saveButtonList(this.buttonList).then(({data}) => {
|
|
// })
|
|
}
|
|
});
|
|
//其次查询当前标签的多语言
|
|
searchFunctionButtonList(this.queryLabel).then(({data}) => {
|
|
if (data && data.code == 0) {
|
|
this.labels = data.data
|
|
} else {
|
|
// saveButtonList(this.buttonList).then(({data}) => {
|
|
// })
|
|
}
|
|
});
|
|
},
|
|
fields() {
|
|
let json = "{"
|
|
this.columnList.forEach((item, index) => {
|
|
if (index == this.columnList.length - 1) {
|
|
json += "\"" + item.columnLabel + "\"" + ":" + "\"" + item.columnProp + "\""
|
|
} else {
|
|
json += "\"" + item.columnLabel + "\"" + ":" + "\"" + item.columnProp + "\"" + ","
|
|
}
|
|
})
|
|
json += "}"
|
|
let s = eval("(" + json + ")")
|
|
return s
|
|
},
|
|
|
|
//导出excel
|
|
async createExportData() {
|
|
// 开始真的查询;
|
|
this.searchData.searchFlag = true;
|
|
this.searchData.exportFlag = "Y";
|
|
await getProduceScheduleList(this.searchData).then(({data}) => {
|
|
// 设置查询数据
|
|
this.exportList = data.rows
|
|
})
|
|
//重置判断是否是导出的sql
|
|
this.searchData.exportFlag = "N";
|
|
return this.exportList;
|
|
},
|
|
startDownload() {
|
|
// this.exportData = this.dataList
|
|
|
|
},
|
|
finishDownload() {
|
|
|
|
},
|
|
|
|
},
|
|
|
|
created() {
|
|
// 根据登陆人员的username 查询机台授权表中的权限,筛选出对应的机台(默认第一个)
|
|
let tempData = {
|
|
username: this.$store.state.user.name,
|
|
}
|
|
getResourceByUser(tempData).then(({data}) => {
|
|
if (data.code === 0) {
|
|
if (data.rows.length > 0) {
|
|
this.searchData.resourceId = data.rows[0].resourceID
|
|
}
|
|
}
|
|
|
|
// 等待getResourceByUser执行完成后,再查询生产排程列表
|
|
this.searchData.searchFlag = true;
|
|
// 不查询
|
|
getProduceScheduleList(this.searchData).then(({data}) => {
|
|
// 设置查询数据
|
|
//this.searchData.searchFlag = false;
|
|
this.searchData.exportFlag = 'N';
|
|
this.produceScheduleList = data.rows
|
|
})
|
|
})
|
|
|
|
/* 获取报工的特殊权限 */
|
|
getScheduleMultiReportSpecialAuth(this.searchData).then(({data}) => {
|
|
let authMap = data.authMap
|
|
// 区分是否打开按钮
|
|
if (authMap.normalReportFlag === 'Y') {
|
|
this.reportButton.normalReportButton = false
|
|
} else {
|
|
this.reportButton.normalReportButton = true
|
|
}
|
|
if (authMap.fqcReportFlag === 'Y') {
|
|
this.reportButton.fqcReportButton = false
|
|
} else {
|
|
this.reportButton.fqcReportButton = true
|
|
}
|
|
if (authMap.reworkReportFlag === 'Y') {
|
|
this.reportButton.reworkReportButton = false
|
|
} else {
|
|
this.reportButton.reworkReportButton = true
|
|
}
|
|
if (authMap.packReportFlag === 'Y') {
|
|
this.reportButton.packReportButton = false
|
|
} else {
|
|
this.reportButton.packReportButton = true
|
|
}
|
|
if (authMap.fqcSegmentReportFlag === 'Y') {
|
|
this.reportButton.fqcSegmentReportButton = false
|
|
} else {
|
|
this.reportButton.fqcSegmentReportButton = true
|
|
}
|
|
if (authMap.slitReportFlag === 'Y') {
|
|
this.reportButton.slitReportButton = false
|
|
} else {
|
|
this.reportButton.slitReportButton = true
|
|
}
|
|
})
|
|
// 获取动态表头的信息
|
|
// this.getTableUserColumn()
|
|
|
|
|
|
//获取按钮的权限
|
|
this.getButtonAuthData();
|
|
//
|
|
// this.getMultiLanguageList(); //刷新多语言的信息
|
|
|
|
}
|
|
|
|
}
|
|
</script>
|
|
|
|
<style>
|
|
.el-textarea__inner {
|
|
padding: 5px 5px;
|
|
}
|
|
|
|
</style>
|
|
|
|
<!--当前页面的标签样式-->
|
|
<style scoped lang="scss">
|
|
|
|
/*针对el-card*/
|
|
.customer-card .el-form-item__content {
|
|
margin-top: -15px;
|
|
}
|
|
|
|
.customer-card .el-form-item {
|
|
height: 22px;
|
|
}
|
|
|
|
.customer-border .el-form-item__content {
|
|
margin-top: -30px;
|
|
}
|
|
|
|
/*全局年与日类型 宽度*/
|
|
div.el-time-width {
|
|
width: 110px !important;
|
|
}
|
|
|
|
/* 全局时间右边框*/
|
|
.customer-css input.el-input__inner {
|
|
height: 22px !important;
|
|
padding-right: 0px !important;
|
|
}
|
|
|
|
/* 控制el-card标签的数据*/
|
|
div.customer-el-card {
|
|
margin-left: 110px;
|
|
margin-top: -15px;
|
|
height: 20px;
|
|
width: 60px;
|
|
}
|
|
|
|
/* 颜色控制 */
|
|
div.customer-el-card-pink {
|
|
background: #FF00FF;
|
|
}
|
|
|
|
div.customer-el-card-orange {
|
|
background: #FFD700;
|
|
}
|
|
|
|
div.customer-el-card-blue {
|
|
background: #0000CD;
|
|
}
|
|
|
|
/*清掉样式*/
|
|
.el-radio + .el-radio {
|
|
margin-left: 0px;
|
|
}
|
|
|
|
/*当前按钮的通用样式*/
|
|
.customer-css .customer-bun-mid {
|
|
width: 65px;
|
|
text-align: center;
|
|
}
|
|
|
|
/*当前按钮的通用样式*/
|
|
.customer-css .el-button--medium {
|
|
padding: 5px 5px;
|
|
}
|
|
|
|
/*添加主菜单和明细菜单的样式*/
|
|
.customer-css .customer-dropdown .el-button--primary {
|
|
padding: 2px;
|
|
font-size: 12px;
|
|
}
|
|
|
|
.el-dropdown-menu--medium .el-dropdown-menu__item {
|
|
line-height: 18px;
|
|
padding: 0 17px;
|
|
font-size: 12px;
|
|
}
|
|
|
|
hr {
|
|
margin-top: 0px;
|
|
}
|
|
|
|
|
|
/*控制上下间距*/
|
|
</style>
|