Browse Source

申请单退料

master
shenzhouyu 4 months ago
parent
commit
6796fb4548
  1. 48
      src/api/orderIssure/productionInboundRequest.js
  2. 409
      src/views/modules/productionInbound/productionInboundRequest.vue

48
src/api/orderIssure/productionInboundRequest.js

@ -0,0 +1,48 @@
import { createAPI } from "@/utils/httpRequest.js";
export const getSOScheduledRoutingListForUnissure= data => createAPI(`/orderUnissue/unissueNotify/getSOScheduledRoutingListForUnissure`,'post',data)
export const saveIssureNotifyByExcel = data => createAPI(`/orderIssure/issureNotify/saveIssureNotifyByExcel`,'post',data)
export const createNotify = data => createAPI(`/orderUnissue/unissueNotify/createNotify`,'post',data)
export const getUserNotifyNo = data => createAPI(`/orderUnissue/unissueNotify/getUserNotifyNo`,'post',data)
export const deleteUnissueNotifyHeader = data => createAPI(`/orderUnissue/unissueNotify/deleteUnissueNotifyHeader`,'post',data)
export const getNotifyNoDetail = data => createAPI(`/orderUnissue/unissueNotify/getNotifyNoDetail`,'post',data)
export const getAllNotifyStatus = data => createAPI(`/sys/enum/list`,'get',data)
export const searchNotifyHeader= data => createAPI(`/orderIssure/issureNotify/searchNotifyHeader`,'post',data)
export const getPartList= data => createAPI(`/orderIssure/issureNotify/getPartList`,'post',data)
export const getSOSBOMForIssure= data => createAPI(`/orderUnissue/unissueNotify/getSOSBOMForUnissure`,'post',data)
export const saveUnissueNotifyOrderList= data => createAPI(`/orderUnissue/unissueNotify/saveUnissueNotifyOrderList`,'post',data)
export const saveUnissueMaterialDetail= data => createAPI(`/orderUnissue/unissueNotify/saveUnissueMaterialDetail`,'post',data)
export const deleteNotifyUnissue= data => createAPI(`/orderUnissue/unissueNotify/deleteNotifyUnissue`,'post',data)
export const xiadaNotify= data => createAPI(`/orderIssure/issureNotify/xiadaNotify`,'post',data)
export const searchNotifyOrderList= data => createAPI(`/orderIssure/issureNotify/searchNotifyOrderList`,'post',data)
export const searchUnissueNotifyMaterialList= data => createAPI(`/orderUnissue/unissueNotify/searchUnissueNotifyMaterialList`,'post',data)
export const searchSumNotifyMaterialList= data => createAPI(`/orderIssure/issureNotify/searchSumNotifyMaterialList`,'post',data)
export const updateNotifyBu= data => createAPI(`/orderIssure/issureNotify/updateNotifyBu`,'post',data)
export const checkPartStock= data => createAPI(`/orderIssure/issureNotify/checkPartStock`,'post',data)
export const deleteNotifySOSPlus= data => createAPI(`/orderIssure/issureNotify/deleteNotifySOSPlus`,'post',data)
export const updateNotifyStatus= data => createAPI(`/orderUnissue/unissueNotify/updateNotifyStatus`,'post',data)
export const deleteNotifyMaterial= data => createAPI(`/orderIssure/issureNotify/deleteNotifyMaterial`,'post',data)
export const saveOtherPart= data => createAPI(`/orderIssure/issureNotify/saveOtherPart`,'post',data)
export const getNoControlPartList= data => createAPI(`/orderIssure/issureNotify/getNoControlPartList`,'post',data)
export const searchOtherPart= data => createAPI(`/orderIssure/issureNotify/searchOtherPart`,'post',data)
export const searchNotifyLog= data => createAPI(`/orderIssure/issureNotify/searchNotifyLog`,'post',data)
export const deleteNotifyMaterialWithOutLog= data => createAPI(`/orderIssure/issureNotify/deleteNotifyMaterialWithOutLog`,'post',data)
export const searchNotifyLogClose= data => createAPI(`/orderIssure/issureNotify/searchNotifyLogClose`,'post',data)
export const updateNotifyConfirmStatus= data => createAPI(`/orderIssure/issureNotify/updateNotifyConfirmStatus`,'post',data)
export const updateNotifyBatchConfirmStatus= data => createAPI(`/orderIssure/issureNotify/updateNotifyBatchConfirmStatus`,'post',data)
export const getSiteAndBuByUserName = data => createAPI(`/orderIssure/issureNotify/getSiteAndBuByUserName`,'post',data)
export const getEamWorkShop = data => createAPI(`/orderIssure/issureNotify/getEamWorkShop`,'post',data)
export const getIFSShopOrderByOrderNo = data => createAPI(`/orderUnissue/unissueNotify/getIFSShopOrderByOrderNo`,'post',data)

409
src/views/modules/productionInbound/productionInboundRequest.vue

@ -3,27 +3,15 @@
<el-form label-position="top" style="margin-top: -0px">
<el-row :gutter="20">
<el-col :span="20">
<!-- <el-button v-if="notifyNo===''" @click="addNotify()" type="primary" class="yzzButtonAn">新建申请单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="chooseSOSModal()" class="yzzButtonAn">选择派工单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="xiadaNotifyModel()" class="yzzButtonAn">下达申请单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="deleteNotify()" class="yzzButtonAn">删除申请单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="updateBuModel()" class="yzzButtonAn">修改BU</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="noBomModel()" class="yzzButtonAn">非BOM物料</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="noControlModel()" class="yzzButtonAn">不管控物料</el-button> -->
<el-button v-if="notifyNo===''" @click="addNotify()" type="primary" class="yzzButtonAn">新建申请单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="chooseSOSModal()" class="yzzButtonAn">选择工单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="xiadaNotifyModel()"
class="yzzButtonAn">下达申请单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="deleteNotify()" class="yzzButtonAn">删除申请单</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="noBomModel()" class="yzzButtonAn">非BOM物料</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="noControlModel()" class="yzzButtonAn">不管控物料</el-button>
<el-button @click="importModel()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'导入'}}</el-button>
<!-- <el-button v-if="notifyNo!=''" type="primary" @click="noBomModel()" class="yzzButtonAn">非BOM物料</el-button>
<el-button v-if="notifyNo!=''" type="primary" @click="noControlModel()" class="yzzButtonAn">不管控物料</el-button> -->
<!-- <el-button @click="importModel()" type="primary" style="margin-left: 2px;margin-top: 0px">{{'导入'}}</el-button> -->
</el-col>
<!-- <el-col :span="4">
<span @click="favoriteFunction()">
<icon-svg :name="favorite?'xiangqufill':'xiangqu'" class="sl-svg"></icon-svg>
</span>
</el-col> -->
</el-row>
<el-row :gutter="10" v-if="notifyNo!=''">
<el-col :span="3">
@ -31,11 +19,6 @@
<el-input v-model="notifyData.site" disabled></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="2">
<el-form-item :label="'BU'" >
<el-input v-model="notifyData.bu" disabled ></el-input>
</el-form-item>
</el-col> -->
<el-col :span="3">
<el-form-item :label="'申请单号'">
<el-input v-model="notifyData.notifyNo" disabled style="width: 100%;"></el-input>
@ -47,42 +30,10 @@
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item :label="'申请时间'">
<el-form-item :label="'申请日期'">
<el-input v-model="notifyData.notifyDate" disabled></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="3">
<el-form-item :label="'仓库编码'">
<el-input v-model="notifyData.warehouseId" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item :label="'仓库时间'">
<el-input v-model="notifyData.warehouseName" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item :label="'经手人'">
<el-input v-model="notifyData.handlerDisplay" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item :label="'要求发料日期'">
<el-date-picker v-model="notifyData.planIssueDate" type="date" value-format='yyyy-MM-dd' format='yyyy-MM-dd'
style="width: 100%;"></el-date-picker>
</el-form-item>
</el-col> -->
<!-- <el-col :span="3">
<el-form-item :label="'项目编码'">
<el-input v-model="notifyData.enteredDate" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item :label="'项目名称'">
<el-input v-model="notifyData.enteredDate" disabled></el-input>
</el-form-item>
</el-col> -->
<el-col :span="3">
<el-form-item :label="'状态'">
<el-select v-model="notifyData.status" style="width: 100%" disabled>
@ -92,44 +43,14 @@
</el-select>
</el-form-item>
</el-col>
<!-- <el-col :span="3">
<el-form-item :label="' '">
<el-checkbox v-model="isOutsourcedOrder" @change="queryAllProjectPartModelDetail">外协订单领料</el-checkbox>
</el-form-item>
</el-col> -->
</el-row>
<el-row :gutter="10" v-if="notifyNo!=''">
<!-- <el-col :span="3">
<el-form-item :label="'实际发料日期'">
<el-date-picker v-model="notifyData.realIssueDate" type="date" value-format='yyyy-MM-dd' format='yyyy-MM-dd'
style="width: 100%;"></el-date-picker>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item :label="'发料状态'">
<el-select v-model="notifyData.confirmStatus" style="width: 100%">
<el-option label="全部" value=""></el-option>
</el-select>
</el-form-item>
</el-col> -->
<!-- <el-col :span="3">
<el-form-item :label="'录入人'">
<el-input v-model="notifyData.enteredDate" disabled></el-input>
</el-form-item>
</el-col>
<el-col :span="3">
<el-form-item :label="'录入日期'">
<el-date-picker v-model="notifyData.detailExcalCompletionDate" type="date" value-format='yyyy-MM-dd'
format='yyyy-MM-dd' style="width: 100%;"></el-date-picker>
</el-form-item>
</el-col> -->
<!-- <el-row :gutter="10" v-if="notifyNo!=''">
<el-col :span="12">
<el-form-item :label="'备注'">
<el-input v-model="notifyData.remark" style="width: 100%;"></el-input>
</el-form-item>
</el-col>
</el-row>
</el-row> -->
</el-form>
@ -155,7 +76,7 @@
</el-table-column>
</el-table>
</el-tab-pane>
<el-tab-pane label="非BOM物料" name="noBom">
<!-- <el-tab-pane label="非BOM物料" name="noBom">
<el-table :data="dataList2" :height="height" border style="width: 100%; ">
<el-table-column v-for="(item,index) in columnList4" :key="index" :sortable="item.columnSortable"
:prop="item.columnProp" :header-align="item.headerAlign" :show-overflow-tooltip="item.showOverflowTooltip"
@ -194,7 +115,7 @@
</template>
</el-table-column>
</el-table>
</el-tab-pane>
</el-tab-pane> -->
</el-tabs>
<el-dialog title="选择工单" :close-on-click-modal="false" v-drag :visible.sync="seqNoModalFlag" width="1000px">
<el-form :inline="true" label-position="top" style="margin-left: 7px;margin-top: -5px;">
@ -204,24 +125,12 @@
<el-input v-model="seqNoData.orderNo"></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="4">
<el-form-item :label="'工单号'">
<el-input v-model="seqNoData.seqno"></el-input>
</el-form-item>
</el-col> -->
<!-- <el-col :span="4">
<el-form-item>
<span slot="label" style="" @click="getBaseList(515)"><a herf="#">机台</a></span>
<el-input v-model="seqNoData.sResourceid"></el-input>
</el-form-item>
</el-col> -->
<el-col :span="4">
<el-form-item>
<span slot="label" style="" @click="getBaseList(216)"><a herf="#">加工中心</a></span>
<el-input v-model="seqNoData.sWorkcenterno"></el-input>
</el-form-item>
</el-col>
</el-col> -->
<el-col :span="4">
<el-form-item :label="'日期'">
<el-date-picker style="width: 100%" v-model="seqNoData.startDate" type="date" value-format="yyyy-MM-dd"
@ -246,7 +155,7 @@
</el-col>
</el-row>
</el-form>
<el-table :height="400" :data="seqNoList" border style="width: 100%;">
<el-table :height="400" :data="seqNoList" border style="width: 100%;" class="choose-sos-table">
<el-table-column v-for="(item,index) in columnList2" :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" :min-width="item.columnWidth"
@ -257,9 +166,9 @@
style="width: 100px; height: 80px" /></span>
</template>
</el-table-column>
<el-table-column fixed="left" header-align="center" align="center" width="60" label="操作">
<el-table-column fixed="left" header-align="center" align="center" width="80" label="操作">
<template slot-scope="scope">
<el-link style="cursor: pointer" size="small" @click="chooseSOS(scope.row)">选择</el-link>
<el-button type="primary" size="mini" plain class="choose-sos-btn" :loading="chooseLoading" @click="chooseSOS(scope.row)">选择</el-button>
</template>
</el-table-column>
</el-table>
@ -275,16 +184,6 @@
<el-input v-model="notifyOrderData.orderNo" disabled></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="6">
<el-form-item :label="'派工单号'">
<el-input v-model="notifyOrderData.seqno" disabled></el-input>
</el-form-item>
</el-col> -->
<!-- <el-col :span="6">
<el-form-item :label="'机台'">
<el-input v-model="notifyOrderData.sResourceID" disabled></el-input>
</el-form-item>
</el-col> -->
<el-col :span="6">
<el-form-item :label="'工单数量'">
<el-input v-model="notifyOrderData.qtyRequired" disabled></el-input>
@ -305,29 +204,22 @@
</el-row>
<el-row :gutter="20">
<el-col :span="6">
<el-form-item :label="'要求发料时间'">
<el-form-item :label="'退料时间'">
<el-date-picker style="width: 100%" v-model="notifyOrderData.needDate" type="datetime"
value-format="yyyy-MM-dd HH:mm" placeholder="选择日期">
</el-date-picker>
</el-form-item>
</el-col>
<!-- <el-col :span="6">
<el-form-item label="机台">
<el-input v-model="notifyOrderData.locationNo" disabled></el-input>
</el-form-item>
</el-col> -->
<el-col :span="6">
<el-form-item :label="'此次领料数量'">
<!-- <el-input-number v-model="notifyOrderData.issureQty" style="padding: 0px;width: 100%" :controls="false"
:step="0" :min="0" class="text-right"></el-input-number> -->
<el-input v-model="notifyOrderData.issureQty" @input=" value=>notifyOrderData.issureQty = value.match(/0$|^[1-9]\d*/) ? value.match(/0$|^[1-9]\d*/)[0] : ''"></el-input>
<el-form-item :label="'此次退料数量'">
<el-input v-model="notifyOrderData.unissureQty" @input=" value=>notifyOrderData.unissureQty = value.match(/0$|^[1-9]\d*/) ? value.match(/0$|^[1-9]\d*/)[0] : ''"></el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<!-- <el-col :span="6">
<el-form-item :label="' '">
<el-button type="primary" @click="qtyAllForSeqNo()">全数</el-button>
<el-button type="primary" @click="qtyAllForSeqNo()">全数退</el-button>
</el-form-item>
</el-col>
</el-col> -->
</el-row>
</el-form>
<el-footer style="height:40px;margin-top: 10px;text-align:center">
@ -368,14 +260,9 @@
<el-row :gutter="20">
<el-col :span="6">
<el-form-item :label="'生产订单号'">
<el-input v-model="sobomData.orderno" disabled></el-input>
<el-input v-model="sobomData.orderNo" disabled></el-input>
</el-form-item>
</el-col>
<!-- <el-col :span="6">
<el-form-item :label="'派工单号'">
<el-input v-model="sobomData.seqno" disabled></el-input>
</el-form-item>
</el-col> -->
<el-col :span="6">
<el-form-item :label="'产品编码'">
<el-input v-model="sobomData.partNo" disabled></el-input>
@ -390,8 +277,8 @@
:align="item.align" :fixed="item.fixed==''?false:item.fixed" :min-width="item.columnWidth"
:label="item.columnLabel">
<template slot-scope="scope">
<div v-if="item.columnProp === 'qtyToIssue'">
<el-input v-model="scope.row.qtyToIssue" style="height: 11px; width: 98%;" :step="0" :min="0"></el-input>
<div v-if="item.columnProp === 'qtyToUnissue'">
<el-input v-model="scope.row.qtyToUnissue" style="height: 11px; width: 98%;" :step="0" :min="0"></el-input>
</div>
<div v-else-if="item.columnProp === 'remark'">
<el-input v-model="scope.row.remark" style="padding: 0;width: 100%"></el-input>
@ -404,11 +291,11 @@
</div>
</template>
</el-table-column>
<el-table-column prop="" header-align="center" align="center" min-width="50" label="操作">
<!-- <el-table-column prop="" header-align="center" align="center" min-width="50" label="操作">
<template slot-scope="scope">
<el-button type="primary" @click="qtyAllForBom(scope.row)" style="width: 100%">全数领料</el-button>
</template>
</el-table-column>
</el-table-column> -->
</el-table>
</div>
@ -592,17 +479,31 @@
</el-footer>
</el-dialog>
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
<walUploadExcel ref="walUploadExcel" @refreshTable="searchTable" v-drag></walUploadExcel>
</div>
</template>
<script>
import {
getSOScheduledRoutingListForUnissure,
createNotify,
getUserNotifyNo,
deleteUnissueNotifyHeader,
getAllNotifyStatus,
getNotifyNoDetail,
saveUnissueNotifyOrderList,
getSOSBOMForIssure,
saveUnissueMaterialDetail,
deleteNotifyUnissue,
getIFSShopOrderByOrderNo,
searchUnissueNotifyMaterialList,
updateNotifyStatus,
} from '@/api/orderIssure/productionInboundRequest.js'
import Chooselist from '@/views/modules/common/Chooselist_eam'
export default {
name: 'newSoIssueNotify',
components: {
Chooselist,
walUploadExcel,
},
watch: {
// notifyOrderData: {
@ -671,7 +572,7 @@ export default {
partDesc: '',
qtyrequired: '',
sResourceID: '',
issureQty: '',
unissureQty: '',
locationNo: '',
needDate: '',
},
@ -803,31 +704,13 @@ export default {
fixed: '',
columnWidth: 50,
},
/* {
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table1SeqNo',
tableId: '701001Table1',
tableName: '领料申请派工单子表',
columnProp: 'seqNo',
headerAlign: 'center',
align: 'center',
columnLabel: '派工单号',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 150,
}, */
{
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table1SOOrderNo',
tableId: '701001Table1',
tableName: '领料申请工单子表',
columnProp: 'sOOrderNo',
columnProp: 'soorderNo',
headerAlign: 'center',
align: 'center',
columnLabel: '生产订单号',
@ -839,7 +722,7 @@ export default {
fixed: '',
columnWidth: 120,
},
{
/* {
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table1OpsItemNo',
@ -892,7 +775,7 @@ export default {
status: true,
fixed: '',
columnWidth: 80,
},
}, */
{
userId: this.$store.state.user.name,
functionId: 701001,
@ -902,7 +785,7 @@ export default {
columnProp: 'needDate',
headerAlign: 'center',
align: 'left',
columnLabel: '要求发料时间',
columnLabel: '退料时间',
columnHidden: false,
columnImage: false,
columnSortable: false,
@ -917,10 +800,10 @@ export default {
serialNumber: '701001Table1IssureQty',
tableId: '701001Table1',
tableName: '领料申请派工单子表',
columnProp: 'issureQty',
columnProp: 'unissureQty',
headerAlign: 'center',
align: 'right',
columnLabel: '料数量',
columnLabel: '退料数量',
columnHidden: false,
columnImage: false,
columnSortable: false,
@ -949,7 +832,7 @@ export default {
fixed: '',
columnWidth: 120,
},
{
/* {
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table2Itemno',
@ -984,42 +867,43 @@ export default {
status: true,
fixed: '',
columnWidth: 100,
},
/* {
}, */
{
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table2Seqno',
serialNumber: '701001Table2PartNo',
tableId: '701001Table2',
tableName: '查询派工单',
columnProp: 'seqno',
columnProp: 'partNo',
headerAlign: 'center',
align: 'center',
columnLabel: '派工单号',
align: 'left',
columnLabel: '物料编码',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 150,
}, */
columnWidth: 80,
},
{
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table2PartNo',
tableId: '701001Table2',
tableName: '查询派工单',
columnProp: 'partNo',
columnProp: 'partDesc',
headerAlign: 'center',
align: 'left',
columnLabel: '物料编码',
columnLabel: '物料名称',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 80,
columnWidth: 120,
showOverflowTooltip: true,
},
{
userId: this.$store.state.user.name,
@ -1027,7 +911,7 @@ export default {
serialNumber: '701001Table2Qtyrequired',
tableId: '701001Table2',
tableName: '查询派工单',
columnProp: 'qtyRequired',
columnProp: 'lotSize',
headerAlign: 'center',
align: 'right',
columnLabel: '工单数量',
@ -1055,7 +939,7 @@ export default {
sortLv: 0,
status: true,
fixed: '',
columnWidth: 100,
columnWidth: 80,
},
{
userId: this.$store.state.user.name,
@ -1063,10 +947,10 @@ export default {
serialNumber: '701001Table2SScheduleddate',
tableId: '701001Table2',
tableName: '查询工单',
columnProp: 'sScheduledDate',
columnProp: 'startDate',
headerAlign: 'center',
align: 'left',
columnLabel: '工单日期',
columnLabel: '工单开始日期',
columnHidden: false,
columnImage: false,
columnSortable: false,
@ -1076,6 +960,24 @@ export default {
columnWidth: 100,
},
{
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table2SScheduleddate',
tableId: '701001Table2',
tableName: '查询工单',
columnProp: 'finishDate',
headerAlign: 'center',
align: 'left',
columnLabel: '工单结束日期',
columnHidden: false,
columnImage: false,
columnSortable: false,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 100,
},
/* {
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table2SWorkcenterno',
@ -1128,7 +1030,7 @@ export default {
status: true,
fixed: '',
columnWidth: 60,
},
},
{
userId: this.$store.state.user.name,
functionId: 701001,
@ -1164,7 +1066,7 @@ export default {
status: true,
fixed: '',
columnWidth: 100,
},
},*/
],
columnList3: [
{
@ -1191,7 +1093,7 @@ export default {
serialNumber: '701001Table3PartDesc',
tableId: '701001Table3',
tableName: '领料申请BOM子表',
columnProp: 'partDesc',
columnProp: 'componentPartDesc',
headerAlign: 'center',
align: 'left',
columnLabel: '物料描述',
@ -1203,7 +1105,7 @@ export default {
fixed: '',
columnWidth: 120,
},
{
/* {
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table3QtyRequired',
@ -1256,17 +1158,17 @@ export default {
status: true,
fixed: '',
columnWidth: 50,
},
}, */
{
userId: this.$store.state.user.name,
functionId: 701001,
serialNumber: '701001Table3QtyToIssue',
tableId: '701001Table3',
tableName: '领料申请BOM子表',
columnProp: 'qtyToIssue',
columnProp: 'qtyToUnissue',
headerAlign: 'center',
align: 'right',
columnLabel: '本次申请数量',
columnLabel: '本次退货数量',
columnHidden: false,
columnImage: false,
columnSortable: false,
@ -1354,6 +1256,7 @@ export default {
showAddNotifyTypeDialog: false,
selectedNotifyType: 'production',
selectedNotifyRemark:'',
chooseLoading: false,
}
},
@ -1549,7 +1452,27 @@ export default {
})
},
addNotify() {
this.showAddNotifyTypeDialog = true
//this.showAddNotifyTypeDialog = true
let inData = {
site: this.$store.state.user.site,
userName: this.$store.state.user.name,
}
createNotify(inData).then(({ data }) => {
if (data.code === 0) {
this.showAddNotifyTypeDialog = false
this.$message({
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {},
})
this.getUserNotifyNo()
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定',
})
}
})
},
confirmAddNotify() {
let outWorkOrderFlag = 'N'
@ -1599,20 +1522,21 @@ export default {
}
}
let inData = {
site: '55',
orderNo: '3006856',
site: this.$store.state.user.site,
orderNo: row.orderNo,
}
this.chooseLoading = true
getIFSShopOrderByOrderNo(inData).then(({ data }) => {
if (data.code === 0) {
console.log("data",data);
this.notifyOrderData.partNo = data.shopOrderVo[0].partNo
this.notifyOrderData.orderNo = data.shopOrderVo[0].orderNo
this.notifyOrderData.itemNo = row.itemNo
this.notifyOrderData.seqNo = row.seqNo
this.notifyOrderData.itemNo = data.shopOrderVo[0].itemNo
this.notifyOrderData.seqNo = data.shopOrderVo[0].seqNo
this.notifyOrderData.partDesc = data.shopOrderVo[0].partDesc
this.notifyOrderData.qtyRequired = row.qtyRequired
this.notifyOrderData.qtyRequired = data.shopOrderVo[0].lotSize
this.notifyOrderData.sResourceID = row.sResourceID
this.notifyOrderData.issureQty = ''
this.notifyOrderData.unissureQty = ''
this.notifyOrderData.needDate = this.dayjs().format('YYYY-MM-DD HH:mm')
this.notifyOrderData.locationNo = row.sResourceID
this.saveSeqNoModalFlag = true
@ -1620,6 +1544,8 @@ export default {
this.$meassage.error(data.msg)
return;
}
}).finally(() => {
this.chooseLoading = false
})
@ -1637,14 +1563,15 @@ export default {
// return false
// }
if (
this.notifyOrderData.issureQty == null ||
this.notifyOrderData.issureQty == '' ||
this.notifyOrderData.issureQty <= 0
this.notifyOrderData.unissureQty == null ||
this.notifyOrderData.unissureQty == '' ||
this.notifyOrderData.unissureQty <= 0
) {
this.$message.warning('请填写领取数量!')
return false
}
let row = this.notifyOrderData
console.log("row",row);
if (this.dataList.length > 0) {
let stop = false
for (let i = 0; i < this.dataList.length; i++) {
@ -1673,13 +1600,13 @@ export default {
seqNo: row.seqNo,
locationNo: row.locationNo,
needDate: row.needDate,
issureQty: row.issureQty,
unissureQty: row.unissureQty,
}
console.log("inData",inData);
saveSOIssueNotifyOrderList(inData).then(({ data }) => {
saveUnissueNotifyOrderList(inData).then(({ data }) => {
if (data.code === 0) {
this.saveSeqNoModalFlag = false
row.itemNo = data.itemNo
this.getNotifyNoDetail()
this.enterSOS(row)
} else {
@ -1691,7 +1618,7 @@ export default {
})
},
qtyAllForSeqNo() {
this.notifyOrderData.issureQty = this.notifyOrderData.qtyRequired
this.notifyOrderData.unissureQty = this.notifyOrderData.qtyRequired
},
qtyAllForBom(row) {
row.qtyToIssue = row.qtyRequired
@ -1700,14 +1627,27 @@ export default {
let rows = {
site: this.$store.state.user.site,
notifyNo: this.notifyNo,
orderno: row.sOOrderNo,
seqno: row.seqNo,
partNo: row.fGPartNo,
itemno: row.opsItemNo,
soorderNo: row.soorderNo,
seqNo: row.seqNo,
partNo: row.fgPartNo,
itemNo: row.itemNo,
}
this.itemNo = row.itemNo
this.enterSOS(rows)
this.searchUnissueNotifyMaterialList(rows)
//this.enterSOS(rows)
},
searchUnissueNotifyMaterialList(row){
this.bomLoadFlag = true
this.materialModalFlag = true
searchUnissueNotifyMaterialList(row).then(({ data }) => {
if (data.code === 0) {
this.sobomList = data.rows
}
}).finally(() => {
this.bomLoadFlag = false
})
},
enterSOS(row) {
console.log("row",row);
@ -1732,6 +1672,9 @@ export default {
this.bomLoadFlag = false
if (data.code === 0) {
this.sobomList = data.rows
for (let i = 0; i < this.sobomList.length; i++) {
this.sobomList[i].itemNo = inData.itemNo
}
}
})
},
@ -1751,11 +1694,11 @@ export default {
startDate: this.dayjs().format('YYYY-MM-DD'),
endDate: this.dayjs().format('YYYY-MM-DD'),
}
this.searchSOSRouting()
//this.searchSOSRouting()
this.seqNoModalFlag = true
},
searchSOSRouting() {
getSOScheduledRoutingListForIssure(this.seqNoData).then(({ data }) => {
getSOScheduledRoutingListForUnissure(this.seqNoData).then(({ data }) => {
if (data.code === 0) {
this.seqNoList = data.rows
}
@ -1770,9 +1713,11 @@ export default {
) {
this.sobomList[i].applyQty = 0
}
this.sobomList[i].notifyNo = this.notifyNo
this.sobomList[i].site = this.$store.state.user.site
}
let materialList = this.sobomList.filter((item) => item.qtyToIssue > 0)
let materialList = this.sobomList.filter((item) => item.qtyToUnissue > 0)
if (materialList.length == 0) {
this.$alert('没有需要保存的内容!', '提示', {
confirmButtonText: '确定',
@ -1780,7 +1725,7 @@ export default {
return false
}
console.log("this.sobomList",materialList);
saveMaterialDetail(materialList).then(({ data }) => {
saveUnissueMaterialDetail(materialList).then(({ data }) => {
if (data.code === 0) {
this.materialModalFlag = false
this.chooseSOSModal()
@ -1921,12 +1866,26 @@ export default {
})
return false
}
checkPartStock(this.notifyData).then(({ data }) => {
this.$confirm('确定下达' + '?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
updateNotifyStatus(this.notifyData).then(({ data }) => {
if (data.code === 0) {
this.$message.success('下达成功')
this.getUserNotifyNo()
}
}).catch(() => {
this.$message.error(data.msg)
})
})
/* checkPartStock(this.notifyData).then(({ data }) => {
if (data.code === 0) {
this.xiadaList = data.rows
}
})
this.xiadaModelFlag = true
}) */
//this.xiadaModelFlag = true
},
xiadaNotify() {
xiadaNotify(this.notifyData).then(({ data }) => {
@ -1984,7 +1943,7 @@ export default {
})
return false
}
deleteNotify(this.notifyData).then(({ data }) => {
deleteUnissueNotifyHeader(this.notifyData).then(({ data }) => {
if (data.code === 0) {
this.getUserNotifyNo()
this.$message.success(data.msg)
@ -2065,7 +2024,7 @@ export default {
type: 'warning',
})
.then(() => {
deleteNotifySOS(row).then(({ data }) => {
deleteNotifyUnissue(row).then(({ data }) => {
if (data && data.code === 0) {
this.getNotifyNoDetail()
this.$message({
@ -2156,13 +2115,6 @@ export default {
this.authUpdate = !updateFlag
this.authDelete = !deleteFlag
},
//
importModel() {
this.$nextTick(() => {
this.$refs.walUploadExcel.init()
})
},
searchTable() {},
getAllNotifyStatus() {
let inData = {
@ -2214,4 +2166,17 @@ export default {
height: 20px;
}
</style>
<style scoped>
/* 选择工单弹窗:紧凑表格与按钮样式 */
.choose-sos-btn {
height: 14px;
box-sizing: border-box;
padding: 0 6px;
line-height: 12px;
font-size: 12px;
display: inline-flex;
align-items: center;
justify-content: center;
}
</style>
Loading…
Cancel
Save