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.

1497 lines
48 KiB

<template>
<el-container>
<el-header style="width: 100%; height: 90px;font-size: 12px">
<el-row>
<el-col :span="16">
<el-form :inline="true" label-width="45px" label-position="left">
<el-form-item label="状态:">
<el-select v-model="queryParam.rqopt" placeholder="状态" clearable @change="ztChange" style="width: 80px">
<el-option
v-for="item in statusOptions"
:key="item.value"
:label="item.label"
:value="item.value"
>
</el-option>
</el-select>
</el-form-item>
<el-form-item label="船号:">
<vxe-pulldown ref="xDown6" transfer >
<template #default>
<vxe-input
v-model="queryParam.dcch"
placeholder="船号"
style="height: 28px;
line-height: 28px; width: 110px;"
suffix-icon="vxe-icon--search"
@keyup="keyupEvent6"
@focus="focusEvent6"
/>
</template>
<template #dropdown>
<div class="my-dropdown mytable " style="width: 250px">
<vxe-grid
highlight-hover-row
height="auto"
:data="projectData6"
:columns="projectColumns"
@cell-click="cellClickEvent6"
show-overflow
>
<template #wgbsEdit="{ row}">
<vxe-checkbox v-model="row.wgbs" checked-value="Y" unchecked-value="N" disabled ></vxe-checkbox>
</template>
</vxe-grid>
</div>
</template>
</vxe-pulldown>
</el-form-item>
<!-- <el-form-item label="期量:" label-width="40">-->
<!-- <el-select v-model="inParam.ql" placeholder="期量" clearable >-->
<!-- <el-option-->
<!-- v-for="item in this.dictData.dhql"-->
<!-- :key="item.bm"-->
<!-- :label="item.bmsm"-->
<!-- :value="item.bm"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-form-item>-->
<el-form-item label="库位:" >
<el-input v-model="queryParam.kwh" type="search" placeholder="库位号" style="width: 80px" ></el-input>
</el-form-item>
<el-form-item label="规格:">
<el-input v-model="queryParam.wpgg" type="search" placeholder="规格" ></el-input>
</el-form-item>
<el-form-item label="炉批:">
<el-input v-model="queryParam.lph" type="search" placeholder="炉批号" style="width: 100px" ></el-input>
<!-- </el-form-item>-->
<!-- <el-form-item> </el-form-item>-->
<!-- <el-form-item>-->
</el-form-item>
<el-checkbox v-model="queryParam.sdsl" style="width: 50px" >手动</el-checkbox>
</el-form>
</el-col>
<el-col :span="8" style="text-align: right">
<el-button type="success" @click="initList">查询</el-button>
<el-button type="success" @click="hdClick()">核对</el-button>
<!-- <el-button type="danger" @click="delOne('insert')">删除</el-button>-->
<el-button type="success" @click="saveOne()">保存</el-button>
<el-button type="success" @click="print()">打印</el-button>
<el-button type="success" @click="printzj()">直接打印</el-button>
<el-button type="success" @click="exportExcel()">导出</el-button>
</el-col>
<!-- <el-col :span="10">-->
<!-- <el-form :inline="true" label-width="80px" label-position="left">-->
<!-- <el-form-item label="生产船号:">-->
<!-- <vxe-pulldown ref="xDown4" transfer >-->
<!-- <template #default>-->
<!-- <vxe-input-->
<!-- v-model="queryParam.xqdcch"-->
<!-- placeholder="船号"-->
<!-- style="height: 28px;-->
<!-- line-height: 28px; width: 140px;"-->
<!-- suffix-icon="vxe-icon&#45;&#45;search"-->
<!-- @keyup="keyupEvent4"-->
<!-- @focus="focusEvent4"-->
<!-- />-->
<!-- </template>-->
<!-- <template #dropdown>-->
<!-- <div class="my-dropdown mytable " style="width: 250px">-->
<!-- <vxe-grid-->
<!-- highlight-hover-row-->
<!-- height="auto"-->
<!-- :data="projectData"-->
<!-- :columns="projectColumns"-->
<!-- @cell-click="cellClickEvent"-->
<!-- show-overflow-->
<!-- >-->
<!-- <template #wgbsEdit="{ row}">-->
<!-- <vxe-checkbox v-model="row.wgbs" checked-value="Y" unchecked-value="N" disabled ></vxe-checkbox>-->
<!-- </template>-->
<!-- </vxe-grid>-->
<!-- </div>-->
<!-- </template>-->
<!-- </vxe-pulldown>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="生产批量:">-->
<!-- <el-input v-model="queryParam.xqpl" type="search" placeholder="批量" ></el-input>-->
<!-- </el-form-item>-->
<!-- &lt;!&ndash; <el-form-item label="跨位:">&ndash;&gt;-->
<!-- &lt;!&ndash; <el-input v-model="queryParam.kw" type="search" placeholder="跨位" ></el-input>&ndash;&gt;-->
<!-- &lt;!&ndash; </el-form-item>&ndash;&gt;-->
<!-- <el-form-item style="float: right" >-->
<!-- <el-button type="success" @click="initList1">查询</el-button>-->
<!-- </el-form-item>-->
<!-- </el-form>-->
<!-- </el-col>-->
</el-row>
<el-row>
<el-col :span="24">
<!-- <el-select v-model="inParam.dcch" placeholder="需求船号" clearable >-->
<!-- <el-option-->
<!-- v-for="item in this.dictData.cbbm"-->
<!-- :key="item.cbbm"-->
<!-- :label="item.cbbm"-->
<!-- :value="item.cbbm"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<vxe-pulldown ref="xDown5" transfer >
<template #default>
<vxe-input
v-model="inParam.dcch"
placeholder="需求船号"
style="height: 28px;
line-height: 28px; width: 140px;"
suffix-icon="vxe-icon--search"
@keyup="keyupEvent5"
@focus="focusEvent5"
/>
</template>
<template #dropdown>
<div class="my-dropdown mytable " style="width: 250px">
<vxe-grid
highlight-hover-row
height="auto"
:data="projectData5"
:columns="projectColumns"
@cell-click="cellClickEvent5"
show-overflow
>
<template #wgbsEdit="{ row}">
<vxe-checkbox v-model="row.wgbs" checked-value="Y" unchecked-value="N" disabled ></vxe-checkbox>
</template>
</vxe-grid>
</div>
</template>
</vxe-pulldown>
<el-input v-model="inParam.dcpl" type="search" placeholder="需求批量"></el-input>
<el-select v-model="inParam.lx" placeholder="流向" clearable style="width: 15%">
<el-option
v-for="item in this.dictData.zylx"
:key="item.bm"
:label="item.bmsm"
:value="item.bm"
>
</el-option>
</el-select>
<!-- <el-select v-model="inParam.pwwz" placeholder="抛丸位置" clearable style="width: 15%">-->
<!-- <el-option-->
<!-- v-for="item in this.dictData.pwwz"-->
<!-- :key="item.bm"-->
<!-- :label="item.bmsm"-->
<!-- :value="item.bm"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<el-input v-model="inParam.pwwz" placeholder="抛丸位置" ></el-input>
<el-select v-model="inParam.qgkw" placeholder="切割跨位" clearable style="width: 15%">
<el-option
v-for="item in this.dictData.qgkw"
:key="item.bm"
:label="item.bmsm"
:value="item.bm"
>
</el-option>
</el-select>
<el-date-picker v-model="inParam.jhrq" value-format="yyyy/MM/dd" type="date" placeholder="计划日期"/>
<el-input v-model="inParam.bz" type="search" placeholder="备注" ></el-input>
<el-button type="info" @click="updates2()" >批量</el-button>
</el-col>
<!-- <el-col :span="10">-->
<!-- <el-select v-model="inParam.dw" placeholder="预处理垛位" clearable >-->
<!-- <el-option-->
<!-- v-for="item in this.dictData.ycldws"-->
<!-- :key="item.id"-->
<!-- :label="item.name"-->
<!-- :value="item.id"-->
<!-- >-->
<!-- </el-option>-->
<!-- </el-select>-->
<!-- </el-col>-->
</el-row>
<el-row>
<el-col :span="14">
<!-- <el-date-picker v-model="inParam.jhrq" value-format="yyyy/MM/dd" type="date" placeholder="计划日期"/>-->
</el-col>
</el-row>
</el-header>
<el-container :style="defaultHeight" style="margin-top: 10px">
<el-container>
<el-main>
<div class="mytableLfet" style="width: 100%">
<!-- <vxe-grid-->
<!-- id="id"-->
<!-- ref="xGrid"-->
<!-- border-->
<!-- resizable-->
<!-- keep-source-->
<!-- :height="height"-->
<!-- :auto-resize="true"-->
<!-- :columns="tableColumn1"-->
<!-- :data="tableOne"-->
<!-- :scroll-y="{enabled: true}"-->
<!-- :custom-config="{storage: true}"-->
<!-- :edit-config="{trigger: 'click', mode: 'cell', showStatus: true}"-->
<!-- highlight-hover-row-->
<!-- highlight-current-row-->
<!-- @current-change="rowClick"-->
<!-- :header-cell-style="{'text-align':'center'}"-->
<!-- >-->
<vxe-grid
id="id"
ref="xGrid"
border
resizable
keep-source
:height="height"
:auto-resize="true"
:columns="tableColumn1"
:data="tableOne"
:scroll-y="{enabled: true}"
:edit-config="{trigger: 'click', mode: 'cell', showStatus: true}"
highlight-hover-row
highlight-current-row
@current-change="rowClick"
:header-cell-style="{'text-align':'center'}"
show-footer
:footer-method="footerMethod"
>
<!-- <template #operation="{ row }">-->
<!-- <vxe-button type="text" icon="vxe-icon&#45;&#45;check" @click="tjClcik(row)" />-->
<!-- </template>-->
<template #numMx="{ items, _columnIndex }">
<span style="color: red">{{ items[_columnIndex] }}</span>
</template>
</vxe-grid>
</div>
<!-- <div class="mytableLfet" style="width: 40%">-->
<!-- <vxe-grid-->
<!-- id="id1"-->
<!-- ref="xGrid1"-->
<!-- border-->
<!-- resizable-->
<!-- keep-source-->
<!-- :scroll-y="{enabled: true}"-->
<!-- :height="height"-->
<!-- :columns="tableColumn2"-->
<!-- :data="tableTwo"-->
<!-- :custom-config="{storage: true}"-->
<!-- :edit-config="{trigger: 'click', mode: 'cell', showStatus: true,showIcon:false}"-->
<!-- highlight-hover-row-->
<!-- show-overflow-->
<!-- highlight-current-row-->
<!-- :header-cell-style="{'text-align':'center'}"-->
<!-- >-->
<!-- &lt;!&ndash; <template #operation="{ row }">&ndash;&gt;-->
<!-- &lt;!&ndash; <vxe-button type="text" icon="vxe-icon&#45;&#45;plus" @click="openMat(row)" />&ndash;&gt;-->
<!-- &lt;!&ndash; </template>&ndash;&gt;-->
<!-- </vxe-grid>-->
<!-- &lt;!&ndash; <el-button type="success" @click="addTwo()">增加</el-button>&ndash;&gt;-->
<!-- &lt;!&ndash; <el-button type="danger" @click="delTwo('insert')">删除</el-button>&ndash;&gt;-->
<!-- </div>-->
</el-main>
</el-container>
</el-container>
<div ref="print" id="print" v-show="wgzyprintFlag">
<SljhPrint :sljhPrintData="sljhPrintData" ref="dy"/>
</div>
</el-container>
</template>
<script>
import {
getSljhPgd,
saveSljhPgdFk,
saveSljhPgdXd,
saveSljhPgdXdBack,
saveSljhFk,
getPgdBase,
saveSljhPg,
saveSljhPgBack,
getKcAndSljh,
kcAdnSlBd,
kcAdnSlZx,
getydjhByid,
getKcAndSljh1,
slPrint,
slPrintD,
kcAdnSlBd1,
kcAdnSlBd2, slPrintqx, kcAdnSlBdQX
} from '@/api/jhzxgl/pgd'
import { mapGetters } from 'vuex'
import XEUtils from 'xe-utils'
import SljhPrint from "@/views/jhzxgl/components/SljhPrint";
import {exportByExcel, getSumAddDicByName, null2str} from "@/utils/rpkj";
import { getToken } from '@/utils/auth'
import { startLoading, endLoading } from '@/utils'
import { Message } from 'element-ui'
export default {
name:'SljhD',
components: {SljhPrint},
data() {
return {
queryParam: {
dcch:'',
ql:'',
xqdcch:'',
xqpl:'',
kw:'',
sljhrq:'',
rqopt:'01',
flag:false,
wpgg:'',
lph:'',
kwh:'',
sdsl:false
},
defaultHeight: { height: '' },
wgzyprintFlag:false,
sljhPrintData:[],
statusOptions: [
{
value: "01",
label: "未核对",
},
{
value: "02",
label: "未打印",
},
{
value: "03",
label: "已打印",
}
],
inParam:{
dcch:'',
dcpl:'',
pwwz:'',
qgkw:'',
jhrq:'',
bz:'',
lx:'',
dw:''
},
list: [],
tableOne: [],
bdbs: "",
tableTwo: [],
heads: { token: getToken() },
uploadAction: process.env.VUE_APP_BASE_API + '/dmCzplpNew/uploadPl',
dictData:{},
height: '500px',
projectData:[],
projectData5:[],
projectData6:[],
projectData1:[],
projectColumns: [
{field: 'cbbm', title: '船号',width: 110},
{ field: 'wgbs', title: '完工标识', width: 80,
slots:{
default: 'wgbsEdit'
},
},
],
tableColumn2: [
{ type: 'checkbox', width: 40 },
{ type: 'seq', width: '40px', title: '序号' },
// { field: 'id', title: 'id',width: 80,
// filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],},
// { field: 'zt', title: '状态',width: 80,
// filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],},
{ field: 'dcCh', title: '船号',width: 100,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'dcPl', title: '批量',width: 80,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'dcFd', title: '分段号',width: 100,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'zl', title: '组立',width: 80,formatter: ['dictFormat','ZLLB'],
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'kw', title: '跨位',width: 80,formatter: ['dictFormat','QGKW'],
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'tzbh', title: '套料图号',width: 90,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
// { field: 'lqlb', title: '领取类型',width: 90,formatter: ['dictFormat','CLlQ'],
// filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
// filterRender: { name: 'FilterCombination', }},
// { field: 'lx', title: '物资类型',width: 90,formatter:this.formatterLx,
// filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
// filterRender: { name: 'FilterCombination', }},
{ field: 'wpgg', title: '规格',width: 120,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'wpxh1', title: '材质1',width: 80,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'wpxh', title: '材质',width: 80,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],},
{
field: 'slkcdw',
title: '上料库存垛位',
editRender: { name: 'input' },
width: 100,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slcs',
title: '上料层数',editRender: { name: 'input' },
width: 120,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slhth',
title: '上料合同号',
width: 100, editRender: { name: 'input' },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slwlh',
title: '上料物料号',
width: 120, editRender: { name: 'input' },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
// {
// field: 'slkcxx',
// title: '上料库存信息',
// width: 120,
// filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
// filterRender: { name: 'FilterCombination' }
// },
{
field: 'slycldw',
title: '上料预处理垛位',editRender: {
name: '$select', options: [],
optionProps: {value: 'id', label: 'name'},
props: {clearable: true}
, events: {change: this.selectChange}
},
width: 120,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slyclcs',
title: '上料预处理层数',editRender: { name: 'input' },
width: 120,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slpgry',
title: '上料派工人',editRender: { name: 'input' },
width: 120,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slfkry',
title: '上料反馈人',
width: 120,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slfkrq',
title: '上料反馈日期',
width: 120,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'slbz',
title: '上料备注',
width: 100,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{
field: 'sljhrq',
title: '上料计划日期',
width: 100,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' }
},
{ field: 'jssj', title: '前方需求时间',width: 110,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
{ field: 'id', title: '生产id',width: 110,
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination', }},
],
tableColumn1: [
{ type: 'checkbox', width: 40 },
{ type: 'seq', width: 40, title: '序号' }, // 1
{
title: '合同号',
width: "120px",
field: 'dcFd',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '期量',
width: "70px",
field: 'dzwz',
formatter: ['dictFormat','DHQL'],
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '船号',
width: "80px",
field: 'dcch',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '材质',
width: "80px",
field: 'wpxh',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '规格',
width: "120px",
field: 'wpgg',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '炉批号',
width: "70px",
field: 'lph',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '数量',
width: "50px",
field: 'qxkcl',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '库存',
width: "50px",
field: 'kwh',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '层数',
width: "50px",
field: 'cfcs1',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '打印单',
width: "70px",
field: 'sllsh',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '套料图号',
width: "70px",
field: 'dcth',
editRender: { name: 'input' },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '需求船只',
width: "70px",
field: 'zych',
editRender: {
name: '$select', options: [],
optionProps: {value: 'cbbm', label: 'cbbm'},
props: {clearable: true}
, events: {change: this.selectChange}
},
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '需求批量',
width: "70px",
field: 'zypl',
editRender: { name: 'input' },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '流向',
width: "70px",
field: 'zylx', formatter: ['dictFormat', 'ZYLX'],
editRender: {
name: '$select', options: [],
optionProps: {value: 'bm', label: 'bmsm'},
props: {clearable: true}
, events: {change: this.selectChange}
},
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '切割跨位',
width: "80px",
field: 'sldw',
formatter: ['dictFormat', 'QGKW'],
editRender: {
name: '$select', options: [],
optionProps: {value: 'bm', label: 'bmsm'},
props: {clearable: true}
, events: {change: this.selectChange}
},
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '抛丸位置',
width: "70px",
field: 'pwwz',
editRender: { name: 'input' },
// formatter: ['dictFormat', 'PWWZ'],
// editRender: {
// name: '$select', options: [],
// optionProps: {value: 'bm', label: 'bmsm'},
// props: {clearable: true}
// , events: {change: this.selectChange}
// },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '计划日期',
width: "70px",
field: 'dhh',
editRender: { name: 'input' },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '物品状态',
width: "70px",
field: 'wpzt',
formatter: ['dictFormat', 'WPZT'],
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '备注',
width: "70px",
field: 'bz',
editRender: { name: 'input' },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '入库日期',
width: "70px",
field: 'rkrq',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '车号',
width: "70px",
field: 'dcTpbh',
slots: { footer: 'numMx' },
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '小合同号',
width: "120px",
field: 'gcddh',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '打印人',
width: "100px",
field: 'dyry',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '打印日期',
width: "100px",
field: 'dyrq',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
{
title: '生产id',
width: "120px",
field: 'ydid',
filters: [{ data: { checks: [], sVal: '', sMenu: '', fType1: '', fVal1: '', fMode: 'and', fType2: '', fVal2: '' } }],
filterRender: { name: 'FilterCombination' },
},
],
}
},
computed: {
...mapGetters(['name', 'bmbm'])
},
created() {
window.addEventListener('resize', this.getHeight)
this.getHeight()
this.initBase()
this.inParam.dw=0
},
methods: {
exportExcel(){
exportByExcel(this.tableColumn1,this.$refs.xGrid.getTableData().visibleData,1,'上料派工单.xlsx')
},
cellClickEvent({row}) {
this.queryParam.xqdcch = row.cbbm
this.$refs.xDown4.hidePanel()
},
focusEvent4() {
this.$refs.xDown4.showPanel()
},
keyupEvent4() {
if (this.queryParam.xqdcch) {
this.projectData = this.projectData1.filter(row => row.cbbm.indexOf(this.queryParam.xqdcch.toUpperCase()) > -1)
} else {
this.projectData = this.projectData1.slice(0)
}
},
cellClickEvent5({row}) {
this.inParam.dcch = row.cbbm
this.$refs.xDown5.hidePanel()
},
focusEvent5() {
this.$refs.xDown5.showPanel()
},
keyupEvent5() {
if (this.inParam.dcch) {
this.projectData5 = this.projectData1.filter(row => row.cbbm.indexOf(this.inParam.dcch.toUpperCase()) > -1)
} else {
this.projectData5 = this.projectData1.slice(0)
}
},
keyupEvent6() {
if (this.queryParam.dcch) {
console.log(111)
this.projectData6 = this.projectData1.filter(row => row.cbbm.indexOf(this.queryParam.dcch.toUpperCase()) > -1)
} else {
this.projectData6 = this.projectData1.slice(0)
}
},
cellClickEvent6({row}) {
this.queryParam.dcch = row.cbbm
this.$refs.xDown6.hidePanel()
},
focusEvent6() {
this.$refs.xDown6.showPanel()
},
ztChange(){
this.tableTwo=[]
this.tableOne=[]
},
bzClick(){
console.log(this.dictData.gxry)
console.log(this.inParam.scdw)
this.dictData.gxry= this.dictData.gxry.filter(fst=>fst.szcs===this.inParam.scdw)
console.log(this.dictData.gxry)
},
updates2(){
let selectRecords = this.$refs.xGrid.getCheckboxRecords()
if(this.queryParam.rqopt==='01'){
if(selectRecords.length>0){
for(let i = 0; i < selectRecords.length; i++) {
console.log(selectRecords[i].ydid)
if(this.inParam.dcch !==''){
// if(selectRecords[i].ydid!==null || selectRecords[i].ydid!==''){
// this.$message({ message: '改数据已经匹配生产计划', type: 'warning' })
// return
// }
selectRecords[i].zych = this.inParam.dcch
}
if(this.inParam.dcpl !==''){
// if(selectRecords[i].ydid!==null){
// this.$message({ message: '改数据已经匹配生产计划', type: 'warning' })
// return
// }
selectRecords[i].zypl = this.inParam.dcpl
}
if(this.inParam.lx !==''){
// if(selectRecords[i].ydid!==null){
// this.$message({ message: '改数据已经匹配生产计划', type: 'warning' })
// return
// }
selectRecords[i].zylx = this.inParam.lx
}
if(this.inParam.qgkw !==''){
// if(selectRecords[i].ydid!==null){
// this.$message({ message: '改数据已经匹配生产计划', type: 'warning' })
// return
// }
selectRecords[i].sldw = this.inParam.qgkw
}
if(this.inParam.pwwz!==''){
selectRecords[i].pwwz = this.inParam.pwwz
}
if(this.inParam.jhrq !==''){
selectRecords[i].dhh = this.inParam.jhrq
}
if(this.inParam.bz !==''){
selectRecords[i].bz = this.inParam.bz
}
}
this.$refs.xGrid.updateData(this.list)
}
}else{
if(selectRecords.length>0){
for(let i = 0; i < selectRecords.length; i++) {
if(this.inParam.bz !==''){
selectRecords[i].bz = this.inParam.bz
}
if(this.inParam.pwwz!==''){
selectRecords[i].pwwz = this.inParam.pwwz
}
}
this.$refs.xGrid.updateData(this.list)
}
}
},
updates(type){
let selectRecords = this.$refs.xGrid.getCheckboxRecords()
if(selectRecords.length>0){
for(let i = 0; i < selectRecords.length; i++) {
if(type==='1'){
selectRecords[i].slksrq = this.inParam.slks
}else if (type==='2'){
selectRecords[i].fkry = this.inParam.slry
selectRecords[i].fkrq = this.inParam.sljs
}
}
this.$refs.xGrid.updateData(this.list)
}
},
activeRowMethod({ row, rowIndex }){
// if(row.zt==="01"){
// return true
// }else{
// return false
// }
return true;
},
initBase(){
getPgdBase({}).then(res=>{
this.dictData = res.data
this.projectData=res.data.cbbm
this.projectData5=res.data.cbbm
this.projectData6=res.data.cbbm
this.projectData1=res.data.cbbm
const zych = this.$refs.xGrid.getColumnByField('zych')
zych.editRender.options = this.dictData.cbbm
const zylx = this.$refs.xGrid.getColumnByField('zylx')
zylx.editRender.options = this.dictData.zylx
const sldw = this.$refs.xGrid.getColumnByField('sldw')
sldw.editRender.options = this.dictData.qgkw
const pwwz = this.$refs.xGrid.getColumnByField('pwwz')
pwwz.editRender.options = this.dictData.pwwz
// const slycldw = this.$refs.xGrid1.getColumnByField('slycldw')
// slycldw.editRender.options = this.dictData.ycldws
})
},
plClick(){
let selectRecords = this.$refs.xGrid.getCheckboxRecords()
if(selectRecords.length>0){
for(let i = 0; i < selectRecords.length; i++) {
selectRecords[i].fkyy = this.queryParam.fkyy
}
this.$refs.xGrid.updateData(this.list)
}
},
printzj(){
if(this.queryParam.rqopt!=='03'){
this.$message({ message: '请在已打印中打印', type: 'warning' })
return
}else {
}
let selectRecords = this.$refs.xGrid.getCheckboxRecords()
if(selectRecords.length>0){
slPrintD(selectRecords).then(res=>{
this.sljhPrintData=res.data
this.$refs.dy.gegn();
console.log(this.sljhPrintData)
this.wgzyprintFlag=true
setTimeout(() => {
this.$print(this.$refs.print)
this.wgzyprintFlag = false
this.initList()
}, 50)
})
}
},
print(){
if(this.queryParam.rqopt=='03'){ // 取消打印
let selectRecords = this.$refs.xGrid.getCheckboxRecords()
if(selectRecords.length>0){
slPrintqx(selectRecords).then(res=>{
if(res.success){
this.initList()
}
})
}
}
if(this.queryParam.rqopt!='02'){
return
}
let selectRecords = this.$refs.xGrid.getCheckboxRecords()
console.log(this.queryParam.sdsl)
if(this.queryParam.sdsl){
}else {
for(let i = 0; i < selectRecords.length; i++) {
if(selectRecords[i].dcth =='' || selectRecords[i].dcth ===null){
this.$message({ message: '套料图为空', type: 'warning' })
return
}
}
}
if(selectRecords.length>0){
slPrint(selectRecords).then(res=>{
this.sljhPrintData=res.data
console.log(this.sljhPrintData)
this.wgzyprintFlag=true
this.$refs.dy.gegn();
setTimeout(() => {
this.$print(this.$refs.print)
this.wgzyprintFlag = false
this.initList()
}, 50)
})
}
},
async getlist1 (){
await getKcAndSljh1(this.queryParam).then((res) => {
this.tableTwo = res.data
if (this.$refs.xGrid1) {
this.$refs.xGrid1.loadData(res.data)
console.log(this.list)
}
})
},
async rowClick({ column, row }) {
if(row.ydid==='' || row.ydid==null){
this.$refs.xGrid1.setCurrentRow();
return
}
let a=true
getydjhByid({"id":row.ydid}).then(res=>{
if(res.success){
let subObj=this.$refs.xGrid1.getTableData().visibleData
for(let obj of subObj){
console.log(obj)
console.log(res.data)
let yds=res.data
// console.log(Object.assign(this.testClone(updateobj),obj))
if(obj.id===yds[0].id){
a=false
this.$refs.xGrid1.setCurrentRow( obj);
}
}
if(a){
this.$refs.xGrid1.loadData(res.data)
}
}
})
},
async initList() {
this.bdbs=""
if (this.queryParam.dcch === '') {
// this.queryParam.dcch=aaa
}
await getKcAndSljh(this.queryParam).then((res) => {
this.tableOne = res.data.slkcs
console.log(this.tableOne)
//this.tableTwo = res.data.ydjhs
console.log(this.tableTwo)
if (this.$refs.xGrid) {
this.$refs.xGrid.loadData(this.tableOne)
console.log(this.list)
}
// if (this.$refs.xGrid1) {
// this.$refs.xGrid1.loadData(this.tableTwo)
// console.log(this.list)
// }
})
},
initList1() {
this.bdbs=""
// if (this.queryParam.dcch === '') {
// this.$message.warning('选择船只编号')
// return
// }
getKcAndSljh1(this.queryParam).then((res) => {
this.tableTwo = res.data
if (this.$refs.xGrid1) {
this.$refs.xGrid1.loadData(res.data)
console.log(this.list)
this.initList()
}
})
},
hdClick(){
if(this.queryParam.rqopt=='02'){
this.$confirm('是否取消核对, 是否继续?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then((type) => {
kcAdnSlBdQX({ "data1":this.$refs.xGrid.getCheckboxRecords(),}).then(res=>{
if(res.success){
this.initList()
}
})
})
}
if(this.queryParam.rqopt!=='01'){
return
}
// this.bdbs='01' 核对 标识 等于 01 不能继续核对
if(this.inParam.dcch ===''){
this.$message({ message: '请输入需求船号', type: 'warning' })
return
}
if(this.inParam.dcpl ===''){
this.$message({ message: '请输入需求批量', type: 'warning' })
return
}
let obj =this.$refs.xGrid.getTableData().visibleData;
if(obj.length<=0){
this.$message({ message: '页面无数据', type: 'warning' })
}
kcAdnSlBd2({
"data1":this.$refs.xGrid.getTableData().visibleData,
"dcch":this.inParam.dcch,
"dcpl":this.inParam.dcpl,
"flag":this.queryParam.flag,
}).then(res=>{
if(res.success){
let array1 = this.$refs.xGrid.getTableData().visibleData
let array2=res.data.slkcs
console.log(array1)
console.log(array2)
array1.forEach(item1 => {
this.$refs.xGrid.setCheckboxRow(item1,false)
array2.forEach(item2 => {
if (item1.ckh === item2.ckh && item1.wph === item2.wph && item1.kwh === item2.kwh && item1.nbsbm === item2.nbsbm) {
//console.log(`Match found: ${item1.name} and ${item2.name}`);
//console.log(item1.nbsbm);
console.log(item2);
item1.zych = item2.dcch
item1.zypl = item2.zypl
item1.zylx =item2.zylx
item1.sldw = item2.sldw
item1.ydid = item2.ydid
item1.dhh = item2.dhh
item1.dcth = item2.dcth
// item1.dhh = item2.sljhrq
this.$refs.xGrid.setCheckboxRow(item1,true)
return
}
});
});
}
})
// this.initList().then(res=>{
// if(this.inParam.pl !=='') {
// this.queryParam.xqpl = this.inParam.pl
// }
// if(this.inParam.dcch !==''){
// this.queryParam.xqdcch=this.inParam.dcch
// this.getlist1().then(res=>{
// this.hd()
// })
//
// }else{
// this.hd()
// }
//
// // if(this.bdbs=='01'){
// // this.$message({ message: '核对结果未保存,重新查询后进行核对', type: 'warning' })
// // return
// // }
// console.log(this.$refs.xGrid.getTableData())
// })
},
footerMethod ({ columns, data }) {
return [
columns.map((column, columnIndex) => {
if (['dcTpbh'].includes(column.property)) {
console.log(1)
return getSumAddDicByName(data, column.property)
}
if (columnIndex === 1) {
return '合计'
}
return null
})
]
},
async hd (){
await kcAdnSlBd({
// "data1":this.$refs.xGrid.getTableData().visibleData,
// "data2":this.$refs.xGrid1.getTableData().visibleData
"data1":this.$refs.xGrid.getTableData().visibleData,
"data2":this.$refs.xGrid1.getTableData().visibleData,
"dw":this.inParam.dw
}).then((res) => {
if(res.success){
this.bdbs='01'
// 与现有数据进行比对
let array1 = this.$refs.xGrid.getTableData().visibleData
let array2=res.data.slkcs
console.log(array1)
console.log(array2)
array1.forEach(item1 => {
this.$refs.xGrid.setCheckboxRow(item1,false)
array2.forEach(item2 => {
if (item1.ckh === item2.ckh && item1.wph === item2.wph && item1.kwh === item2.kwh && item1.nbsbm === item2.nbsbm) {
//console.log(`Match found: ${item1.name} and ${item2.name}`);
//console.log(item1.nbsbm);
console.log(item2);
item1.zych = item2.dcch
item1.zypl = item2.zypl
item1.zylx =item2.zylx
item1.sldw = item2.sldw
item1.ydid = item2.ydid
item1.dhh = item2.dhh
// item1.dhh = item2.sljhrq
this.$refs.xGrid.setCheckboxRow(item1,true)
return
}
});
});
array1 = this.$refs.xGrid1.getTableData().visibleData
array2=res.data.slkcs
console.log(array1)
console.log(array2)
array1.forEach(item1 => {
array2.forEach(item2 => {
if (item1.id === item2.ydid) {
//console.log(`Match found: ${item1.name} and ${item2.name}`);
item1.slcs = item2.cfcs1
item1.slxhth = item2.gcddh
item1.slhth = item2.dcFd
item1.slwlh = item2.wph
item1.slkcdw = item2.kwh
console.log(item1.slycldw)
item1.slycldw = this.inParam.dw
item1.slyclcs = 1
this.$refs.xGrid1.setCheckboxRow(item1, true)
return
}
});
});
}
})
},
saveOne(){
// if(this.queryParam.rqopt!=='01'){
// return
// }
kcAdnSlBd1(
// "data1":this.$refs.xGrid.getTableData().visibleData,
// "data2":this.$refs.xGrid1.getTableData().visibleData
this.$refs.xGrid.getCheckboxRecords()
).then((res) => {
// if(res.success){
this.initList()
//}
})
},
selectChange(row) {
// this.$refs.xGrid.clearActived() // 清除单元格激活状态
this.$refs.xGrid.clearEdit() // 清除单元格激活状态
// this.$refs.xGrid.setEditCell(row.row, row.column.property) // 设置单元格为激活状态
null2str(row.row)
},
getHeight() {
this.height = window.innerHeight - 190
},
}
}
</script>
<style lang="scss" scoped >
.el-header{margin:0;padding: 5px;height:auto;
.el-input{
width: 140px;
}
.el-select{
width: 110px;
}
}
.el-container{padding: 0;margin:0;}
.el-main{padding: 0;}
.el-col{padding: 0;height: 32px;}
.el-aside{background: #fff;padding: 0}
.el-container{padding: 0}
.el-row {}
.el-row:last-child {margin-bottom: 0; }
.tableStyles{
background: #0a76a4;
}
.my-dropdown {
width: 300px;
height: 400px;
background-color: #fff;
border: 1px solid #dcdfe6;
box-shadow: 0 0 6px 2px rgba(0, 0, 0, 0.1);
font-size: 12px;
}
.mytable1{
}
.borderClass{
}
.vxe-input {
display: inline-block !important;
position: relative !important;
width: auto;
}
.el-input {
display: inline-block !important;
position: relative !important;
width: auto;
}
.keyword-lighten {
color: #000;
background-color: #FFFF00;
}
.vxe-textarea--inner {
line-height: inherit;
}
.el-form-item__label-wrap {
margin-left: 0px !important;
float: left;
}
.fontClass{
font-size: 12px;
font-weight: bold;
}
</style>