Merge branch 'dev' of http://10.10.11.66:3000/mes/nalinv-ui into dev
This commit is contained in:
commit
a19a82a7b1
@ -41,5 +41,12 @@ export function saveValueSet(obj) {
|
||||
})
|
||||
}
|
||||
|
||||
export function soLineValueSetExists(query) {
|
||||
return request({
|
||||
url: nlv_print('/sales-order-line-label-value-config/so-line-value-set-exists'),
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
|
||||
98
src/api/wms/documentCommon.js
Normal file
98
src/api/wms/documentCommon.js
Normal file
@ -0,0 +1,98 @@
|
||||
import request from '@/router/axios'
|
||||
|
||||
export function getSubmitDocumentDetail(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/detail/getSubmitDocumentDetail',
|
||||
method: 'get',
|
||||
params: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function getCloseDocumentDetail(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/detail/getCloseDocumentDetail',
|
||||
method: 'get',
|
||||
params: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function getPickDocumentDetail(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/detail/getPickDocumentDetail',
|
||||
method: 'get',
|
||||
params: obj
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
export function scanCode(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/scanCode',
|
||||
method: 'get',
|
||||
params: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function pickingSave(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/picking/save',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function pickingSavecheckingScanAll(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/picking/save/checkingScanAll',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function pickingClean(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/picking/clean',
|
||||
method: 'delete',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function rejectDocument(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/rejectDocument',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function submitDocument(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/submitDocument',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function postIn(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/postIn',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function postOut(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/postOut',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
|
||||
export function postTransfer(obj) {
|
||||
return request({
|
||||
url: '/mom-wms/document/postTransfer',
|
||||
method: 'post',
|
||||
data: obj
|
||||
})
|
||||
}
|
||||
@ -229,7 +229,7 @@ import { isBlank } from '@/util/string'
|
||||
import { copyJSON } from '@/util/util'
|
||||
import { initForm, initFieldSetForm, initQueryParam } from '@/views/mes/print/customer-label/init'
|
||||
import { renderSpecNameHeader } from '@/components/table-header-pop/render'
|
||||
import {fetchList, listSoLineLabelValueSet, getConfigLabelTemplate} from '@/api/mes/print/sales-order-line-label-value-config'
|
||||
import {fetchList, listSoLineLabelValueSet, getConfigLabelTemplate, soLineValueSetExists} from '@/api/mes/print/sales-order-line-label-value-config'
|
||||
import {fetchList as fetchSalesOrderList} from '@/api/mes/prd/sales-order'
|
||||
import {remote} from '@/api/admin/dict'
|
||||
import {showLoading, hideLoading} from "@/const/loading";
|
||||
@ -365,9 +365,18 @@ export default {
|
||||
}, 100)
|
||||
},
|
||||
handleSetValue(row) {
|
||||
setTimeout(() => {
|
||||
let soLineRow = this.currentRow
|
||||
let param = {
|
||||
soNumber: soLineRow.soNumber,
|
||||
soLineId: soLineRow.soLineId
|
||||
}
|
||||
showLoading()
|
||||
soLineValueSetExists(param).then((response) => {
|
||||
hideLoading()
|
||||
if(response.data.data && response.data.data.configItem !== soLineRow.configItem) {
|
||||
return this.$message.warning("当前订单行已在标签样式[" + this.formatConfigItem(response.data.data.configItem) + "]中配置过值集")
|
||||
}
|
||||
this.fieldValueSetDialogVisible = true
|
||||
let soLineRow = this.currentRow
|
||||
this.fieldValueSetForm = copyJSON(row)
|
||||
this.fieldValueSetForm.soNumber = soLineRow.soNumber
|
||||
this.fieldValueSetForm.soLineId = soLineRow.soLineId
|
||||
@ -375,7 +384,10 @@ export default {
|
||||
this.fieldValueSetForm.salesOrderLineBo = soLineRow.salesOrderLineBo
|
||||
this.fieldValueSetForm.configItem = soLineRow.configItem
|
||||
this.fieldValueSetForm.labelTempleCode = soLineRow.labelTempleCode
|
||||
}, 100)
|
||||
})
|
||||
.catch(() => {
|
||||
hideLoading()
|
||||
})
|
||||
},
|
||||
updateSoLineTemplate(row) {
|
||||
for(let i = 0; i < this.tableData.length; i++) {
|
||||
|
||||
@ -34,7 +34,7 @@
|
||||
<el-form ref="formObj" :rules="rules" :model="formObj" label-width="100px">
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="8">
|
||||
<el-form-item label="工厂代码:" prop="fabNo">
|
||||
<el-form-item label="车间代码:" prop="fabNo">
|
||||
<el-input v-model="formObj.fabNo">
|
||||
<i slot="suffix" class="el-input__icon el-icon-search" @click.stop="showFabNoDialog()"></i>
|
||||
</el-input>
|
||||
@ -76,7 +76,7 @@
|
||||
<el-input size="mini" v-model="scope.row.customerCode" :disabled="!scope.row.editable" @change="setRowModified(scope.row)"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="fabNo" label="工厂代码" align="center">
|
||||
<el-table-column prop="fabNo" label="车间代码" align="center">
|
||||
<template slot-scope="scope">
|
||||
<el-input v-model="scope.row.fabNo" :disabled="!scope.row.editable" @change="setRowModified(scope.row)">
|
||||
<i
|
||||
@ -125,18 +125,21 @@
|
||||
<div style="height: 40px"></div>
|
||||
<el-button type="primary" @click="doAddPageConfig()">新增</el-button>
|
||||
<el-row>
|
||||
<el-col :span="9">
|
||||
<el-col :span="7">
|
||||
<span style="text-align: center;display:block;">标签类别</span>
|
||||
</el-col>
|
||||
<el-col :span="9">
|
||||
<el-col :span="7">
|
||||
<span style="text-align: center;display:block;">标签模板</span>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<span style="text-align: center;display:block;">打印场景</span>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<span style="text-align: center;display:block;">打印次数</span>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<el-row v-for="(pageItem, index) in printPageList" :key="index">
|
||||
<el-col :span="9">
|
||||
<el-col :span="7">
|
||||
<div style="text-align: center;display:block;">
|
||||
<el-select v-model="pageItem.labelCategory" @change="handleLabelCategoryChange(pageItem)">
|
||||
<el-option v-for="item in templateCategoryList" :key="item.LABEL_CATEGORY_ID"
|
||||
@ -144,7 +147,7 @@
|
||||
</el-select>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="9">
|
||||
<el-col :span="7">
|
||||
<div style="text-align: center;display:block;">
|
||||
<el-input v-model="pageItem.templateCode" :readOnly="true">
|
||||
<i slot="suffix" class="el-input__icon el-icon-search"
|
||||
@ -153,6 +156,16 @@
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="6">
|
||||
<div style="text-align: center;display:block;">
|
||||
<el-select placeHolder="请选择" v-model="pageItem.printScenario">
|
||||
<el-option key="operation" label="工序打印" value="operation"/>
|
||||
<el-option key="barcode" label="条码补打印" value="barcode"/>
|
||||
<el-option key="package" label="包装批次打印" value="package"/>
|
||||
<el-option key="tool" label="物流载具打印" value="tool"/>
|
||||
</el-select>
|
||||
</div>
|
||||
</el-col>
|
||||
<el-col :span="4">
|
||||
<div style="text-align: center;display:flex;">
|
||||
<el-select v-model="pageItem.printPages" placeholder="1">
|
||||
<el-option key="1" label="1" value="1"/>
|
||||
@ -292,6 +305,7 @@ export default {
|
||||
this.printPageList.push({
|
||||
labelCategory: '',
|
||||
templateCode: '',
|
||||
printScenario: '',
|
||||
printPages: '1'
|
||||
});
|
||||
this.$forceUpdate();
|
||||
@ -387,8 +401,11 @@ export default {
|
||||
if(isBlank(operation)) {
|
||||
return me.$message.error("第" + (i + 1) + "行工序不能为空");
|
||||
}
|
||||
if(isBlank(fabNo)) {
|
||||
return me.$message.error("第" + (i + 1) + "行车间代码不能为空");
|
||||
}
|
||||
if(isBlank(key)) {
|
||||
return me.$message.error("第" + (i + 1) + "行客户代码,工厂代码,工序不能同时为空");
|
||||
return me.$message.error("第" + (i + 1) + "行客户代码,车间代码,工序不能同时为空");
|
||||
}
|
||||
if (i > 0) {
|
||||
for (let j = 0; j < i; j++) {
|
||||
@ -404,7 +421,10 @@ export default {
|
||||
if ((!record.printPageList || record.printPageList.length === 0) && record.status === "Y") {
|
||||
return me.$message.error("客户编码" + record.customerCode + "没有维护一条以上的规则,规则状态不可为启用");
|
||||
}
|
||||
let handle = "PrintRuleBO:" + me.formObj.site + "," + record.customerCode;
|
||||
let handle = "PrintRuleBO:" + me.formObj.site;
|
||||
if(!isBlank(record.customerCode)) {
|
||||
handle = handle + "," + record.customerCode
|
||||
}
|
||||
if(!isBlank(fabNo)) {
|
||||
handle = handle + "," + fabNo
|
||||
}
|
||||
@ -452,7 +472,10 @@ export default {
|
||||
let param = [];
|
||||
for (var m = 0; m < me.multipleSelection.length; m++) {
|
||||
let record = me.multipleSelection[m];
|
||||
let handle = "PrintRuleBO:" + me.formObj.site + "," + record.customerCode;
|
||||
let handle = "PrintRuleBO:" + me.formObj.site;
|
||||
if(!isBlank(record.customerCode)) {
|
||||
handle = handle + "," + record.customerCode
|
||||
}
|
||||
if(!isBlank(record.fabNo)) {
|
||||
handle = handle + "," + record.fabNo
|
||||
}
|
||||
@ -517,10 +540,10 @@ export default {
|
||||
if(isBlank(record.labelCategory) && isBlank(record.templateCode)) {
|
||||
return me.$message.error("第" + (i + 1) + "行标签类别和模板不能全部为空");
|
||||
}
|
||||
// 判断标签类别+模板是否重复
|
||||
// 判断标签类别+模板+场景是否重复
|
||||
for(let j = 0; j < me.printPageList.length; j++) {
|
||||
if(i !== j) {
|
||||
if(record.labelCategory === me.printPageList[j].labelCategory && record.templateCode === me.printPageList[j].templateCode) {
|
||||
if(record.labelCategory === me.printPageList[j].labelCategory && record.templateCode === me.printPageList[j].templateCode && record.printScenario === me.printPageList[j].printScenario) {
|
||||
return me.$message.error("第" + (i + 1) + "行标签类别+模板重复");
|
||||
}
|
||||
}
|
||||
|
||||
@ -43,10 +43,10 @@
|
||||
<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<el-form-item label="打印场景:" prop="printScenario">
|
||||
<el-select placeHolder="请选择" v-model="formObj.printScenario">
|
||||
<el-option key="工序打印-operation" label="工序打印" value="工序打印-operation"/>
|
||||
<el-option key="条码补打印-barcode" label="条码补打印" value="条码补打印-barcode"/>
|
||||
<el-option key="包装批次打印-package" label="包装批次打印" value="包装批次打印-package"/>
|
||||
<el-option key="物流载具打印-tool" label="物流载具打印" value="物流载具打印-tool"/>
|
||||
<el-option key="operation" label="工序打印" value="operation"/>
|
||||
<el-option key="barcode" label="条码补打印" value="barcode"/>
|
||||
<el-option key="package" label="包装批次打印" value="package"/>
|
||||
<el-option key="tool" label="物流载具打印" value="tool"/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
|
||||
@ -145,31 +145,120 @@
|
||||
' 其他字串\n' +
|
||||
' 若是空字符串,此处填写EMPTY',
|
||||
region: '{\n' +
|
||||
' "dateTime": "2021-09-02 03:59:50",\n' +
|
||||
' "shopOrder": "X921H1DM020",\n' +
|
||||
' "item": "D1120343101",\n' +
|
||||
' "site": "1000",\n' +
|
||||
' "barcodeNumber": "P100020210902-0004",\n' +
|
||||
' "shopOrderData": {\n' +
|
||||
' "handle": "ShopOrderBO:1000,X921H1DM020",\n' +
|
||||
' "itemBo": "ItemBO:1000,D1120343101,1.0",\n' +
|
||||
' "qtyDone": 0,\n' +
|
||||
' "qtyOrdered": 1000,\n' +
|
||||
' "qtyReleased": 4,\n' +
|
||||
' "qtyScrapped": 0,\n' +
|
||||
' "qtyToBuild": 1000,\n' +
|
||||
' "releasedDate": "2021-09-02T10:55:20",\n' +
|
||||
' "statusBo": "StatusBO:1000,501"\n' +
|
||||
' },\n' +
|
||||
' "barcodeType": "CP",\n' +
|
||||
' "shopOrderCustomData": {\n' +
|
||||
' "shippingCustomer": "HW01"\n' +
|
||||
' },\n' +
|
||||
' "user": "SITE_ADMIN",\n' +
|
||||
' "itemCustomData": {\n' +
|
||||
' "itemModel": "ST173XX002BKF",\n' +
|
||||
' "packageCapacity": "2"\n' +
|
||||
' }\n' +
|
||||
' "externalLabelFlag": "Y",\n' +
|
||||
' "dateTime": "2024-11-25 04:35:31",\n' +
|
||||
' "shopOrder": "20241109002",\n' +
|
||||
' "fabNo": "FQCJ",\n' +
|
||||
' "resource": "FQ001",\n' +
|
||||
' "shopOrderData": {\n' +
|
||||
' "bomBo": "BOMBO:2031,20241109002,H,1.0",\n' +
|
||||
' "creator": "liaohechuan",\n' +
|
||||
' "dateCreate": "2024-11-09T18:03:43",\n' +
|
||||
' "handle": "ShopOrderBO:2031,20241109002",\n' +
|
||||
' "itemBo": "ItemBO:2031,ITEM01,A",\n' +
|
||||
' "originalStatusBo": "StatusBO:2031,RELEASABLE,SHOP_ORDER",\n' +
|
||||
' "plannedBomBo": "BOMBO:2031,20241109002,H,1.0",\n' +
|
||||
' "plannedItemBo": "ItemBO:2031,ITEM01,A",\n' +
|
||||
' "plannedRouterBo": "RouterBO:2031,LHCCS01,0,A",\n' +
|
||||
' "plannedWorkCenterBo": "WorkCenterBO:2031,20311003",\n' +
|
||||
' "priority": 999,\n' +
|
||||
' "qty": 999.000000,\n' +
|
||||
' "qtyDone": 0.000000,\n' +
|
||||
' "qtyReleased": 42.000000,\n' +
|
||||
' "qtyScrapped": 0.000000,\n' +
|
||||
' "routerBo": "RouterBO:2031,LHCCS01,0,A",\n' +
|
||||
' "shopOrder": "20241109002",\n' +
|
||||
' "shopOrderType": "0",\n' +
|
||||
' "site": "2031",\n' +
|
||||
' "statusBo": "StatusBO:2031,RELEASABLE,SHOP_ORDER",\n' +
|
||||
' "updater": "syngna",\n' +
|
||||
' "version": 1\n' +
|
||||
' },\n' +
|
||||
' "shopOrderCustomData": {\n' +
|
||||
' "zctZbk": "1",\n' +
|
||||
' "zctFwt": "1",\n' +
|
||||
' "orderType": "1",\n' +
|
||||
' "sepcOrder": "1",\n' +
|
||||
' "zctWl": "1",\n' +
|
||||
' "zctBz": "1",\n' +
|
||||
' "zctCd": "1",\n' +
|
||||
' "zctZxxg": "1",\n' +
|
||||
' "zctKh": "1",\n' +
|
||||
' "zctCb": "1",\n' +
|
||||
' "zctXsbgs": "1",\n' +
|
||||
' "zctPmys": "1",\n' +
|
||||
' "zctZxbqys": "1",\n' +
|
||||
' "zctTpsm": "1",\n' +
|
||||
' "zctWxbqys": "1",\n' +
|
||||
' "customerTemplateCode": "C01",\n' +
|
||||
' "zctGx": "1",\n' +
|
||||
' "zctXl": "1",\n' +
|
||||
' "ext5": "1",\n' +
|
||||
' "ext4": "1",\n' +
|
||||
' "bigOrder": "1",\n' +
|
||||
' "ext3": "1",\n' +
|
||||
' "zctTd": "1",\n' +
|
||||
' "ext2": "1",\n' +
|
||||
' "saleOrder": "SO01",\n' +
|
||||
' "zctHjt": "1",\n' +
|
||||
' "ext1": "1",\n' +
|
||||
' "zctGxmys": "1",\n' +
|
||||
' "zctTp": "1",\n' +
|
||||
' "zctDbd": "1",\n' +
|
||||
' "saleOrderLine": "1",\n' +
|
||||
' "zctHgz": "1",\n' +
|
||||
' "zctZxsg": "1",\n' +
|
||||
' "zctFktsl": "1",\n' +
|
||||
' "zctPp": "1",\n' +
|
||||
' "orderTypeDesc": "1",\n' +
|
||||
' "specialRemark": "1",\n' +
|
||||
' "zctWxys": "1",\n' +
|
||||
' "zctWbxh": "1",\n' +
|
||||
' "zctKhxh": "1",\n' +
|
||||
' "zctFx": "1",\n' +
|
||||
' "zctFxjd": "1",\n' +
|
||||
' "zctSf": "1",\n' +
|
||||
' "zctFkt": "1",\n' +
|
||||
' "zctDt": "1"\n' +
|
||||
' },\n' +
|
||||
' "workCenter": "WC-2031-001",\n' +
|
||||
' "salesOrder": "0010000352",\n' +
|
||||
' "lotBasisData": {\n' +
|
||||
' "creator": "snow",\n' +
|
||||
' "dateCreate": "2024-11-13T14:52:24.482",\n' +
|
||||
' "dateUpdate": "2024-11-13T16:43:28.172",\n' +
|
||||
' "handle": "LotBasisBO:2031,20241109002",\n' +
|
||||
' "hotLot": "N",\n' +
|
||||
' "itemBo": "ItemBO:2031,ITEM01,A",\n' +
|
||||
' "lotNo": "20241109002",\n' +
|
||||
' "orgLotNo": "20241109002",\n' +
|
||||
' "parentLotNo": "N/A",\n' +
|
||||
' "priority": 999,\n' +
|
||||
' "qty": 32.000000,\n' +
|
||||
' "qtyDone": 0.000000,\n' +
|
||||
' "qtyScrap": 0.000000,\n' +
|
||||
' "shopOrderBo": "ShopOrderBO:2031,20241109002",\n' +
|
||||
' "site": "2031",\n' +
|
||||
' "status": "1",\n' +
|
||||
' "updater": "syngna"\n' +
|
||||
' },\n' +
|
||||
' "site": "2031",\n' +
|
||||
' "lotStateData": {\n' +
|
||||
' "eventTime": "2024-11-13T16:43:30",\n' +
|
||||
' "handle": "LotState:LotBasisBO:2031,20241109002",\n' +
|
||||
' "lotBasisBo": "LotBasisBO:2031,20241109002",\n' +
|
||||
' "lotNo": "20241109002",\n' +
|
||||
' "lotSerial": "2024110900200001",\n' +
|
||||
' "qty": 32.000000,\n' +
|
||||
' "resourceBo": "ResourceBO:2031,FQ001",\n' +
|
||||
' "routerStepBo": "RouterStepBO:RouterBO:2031,LHCCS01,0,A,10",\n' +
|
||||
' "status": "R",\n' +
|
||||
' "userNo": "syngna"\n' +
|
||||
' },\n' +
|
||||
' "lotNo": "20241109002",\n' +
|
||||
' "user": "syngna",\n' +
|
||||
' "operation": "FQ",\n' +
|
||||
' "salesOrderLine": "20"\n' +
|
||||
'}',
|
||||
},
|
||||
formLabelWidth: '120px'
|
||||
|
||||
@ -145,7 +145,7 @@
|
||||
<el-row :gutter="24">
|
||||
<el-col :span="6">
|
||||
<el-form-item label="班次" prop="userShift">
|
||||
<el-select v-model="searchFormObj.userShift" style="width: 100%" clearable>
|
||||
<el-select v-model="searchFormObj.userWorkShift" style="width: 100%" clearable>
|
||||
<el-option v-for="item in userShiftList" :key="item.userWorkShift" :label="item.description"
|
||||
:value="item.userWorkShift"></el-option>
|
||||
</el-select>
|
||||
@ -184,6 +184,7 @@
|
||||
highlight-current-row
|
||||
ref="mtrlConsMultipleTable"
|
||||
@selection-change="mtrlConsSelectionChange"
|
||||
:row-class-name="tableRowClassName"
|
||||
:cell-style="{ 'text-align': 'center' }" tooltip-effect="dark" border style="width: 100%">
|
||||
<el-table-column type="selection" width="50"></el-table-column>
|
||||
<el-table-column type="index" width="60" fixed="left" label="序号"></el-table-column>
|
||||
@ -200,8 +201,12 @@
|
||||
<el-table-column prop="subUom" label="辅单位"></el-table-column>
|
||||
<el-table-column prop="transactionType" label="事务类型"></el-table-column>
|
||||
<el-table-column prop="transactionDate" label="事务日期" width="160"></el-table-column>
|
||||
<el-table-column prop="" label="班次"></el-table-column>
|
||||
<el-table-column prop="syncPostingDate" label="过账日期"></el-table-column>
|
||||
<el-table-column prop="userWorkShift" label="班次">
|
||||
<template slot-scope="scope">
|
||||
{{ getValConvertShow(scope.row.userWorkShift, userShiftList) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="syncPostingDate" label="过账日期" width="110"></el-table-column>
|
||||
<el-table-column prop="warehouseCode" label="仓库"></el-table-column>
|
||||
<el-table-column prop="storageLocation" label="存储位置"></el-table-column>
|
||||
<el-table-column prop="erpInventory" label="ERP仓库"></el-table-column>
|
||||
@ -209,7 +214,7 @@
|
||||
<el-table-column prop="reservedLine" label="预留行号"></el-table-column>
|
||||
<el-table-column prop="syncStatus" label="SAP同步状态" width="110"></el-table-column>
|
||||
<el-table-column prop="syncMsgText" label="SAP回复文本" width="160"></el-table-column>
|
||||
<el-table-column prop="syncMsgNo" label="SAP消息编号" width="80"></el-table-column>
|
||||
<el-table-column prop="syncMsgNo" label="SAP消息编号" width="120"></el-table-column>
|
||||
<el-table-column prop="syncSubmitter" label="SAP提交用户" width="110"></el-table-column>
|
||||
<el-table-column prop="syncPostingDate" label="SAP同步日期" width="110"></el-table-column>
|
||||
<el-table-column prop="syncVoucherNo" label="SAP凭证编号" width="110"></el-table-column>
|
||||
@ -247,6 +252,7 @@
|
||||
<el-table :data="materialCompleteList" max-height="360" :header-cell-style="{ 'text-align': 'center' }"
|
||||
highlight-current-row
|
||||
ref="mtrlCompleteMultipleTable"
|
||||
:row-class-name="tableRowClassName"
|
||||
@selection-change="mtrlCompleteSelectionChange"
|
||||
:cell-style="{ 'text-align': 'center' }" tooltip-effect="dark" border style="width: 100%">
|
||||
<el-table-column type="selection" width="50"></el-table-column>
|
||||
@ -257,7 +263,7 @@
|
||||
<el-table-column prop="lotNo" label="LOT号" width="120"></el-table-column>
|
||||
<el-table-column prop="item" label="产出物料"></el-table-column>
|
||||
<el-table-column prop="item" label="物料描述"></el-table-column>
|
||||
<el-table-column prop="sapBatchNo" label="SAP批次" width="150"></el-table-column>
|
||||
<el-table-column prop="sapBatchNo" label="SAP批次" width="130"></el-table-column>
|
||||
<el-table-column prop="externalLot" label="客户批号"></el-table-column>
|
||||
<el-table-column prop="productType" label="入库类型"></el-table-column>
|
||||
<el-table-column prop="mainQty" label="数量"></el-table-column>
|
||||
@ -267,7 +273,11 @@
|
||||
<el-table-column prop="qcGrade" label="判定等级"></el-table-column>
|
||||
<el-table-column prop="transactionType" label="事务类型"></el-table-column>
|
||||
<el-table-column prop="transactionDate" label="事务日期" width="160"></el-table-column>
|
||||
<el-table-column prop="" label="班次"></el-table-column>
|
||||
<el-table-column prop="userWorkShift" label="班次">
|
||||
<template slot-scope="scope">
|
||||
{{ getValConvertShow(scope.row.userWorkShift, userShiftList) }}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="syncPostingDate" label="过账日期" width="110"></el-table-column>
|
||||
<el-table-column prop="warehouseCode" label="仓库"></el-table-column>
|
||||
<el-table-column prop="storageLocation" label="存储位置"></el-table-column>
|
||||
@ -420,7 +430,7 @@ export default {
|
||||
statusList: [],
|
||||
searchFormObj: {
|
||||
site: getStore({name: 'tenantId'}),
|
||||
userShift: '',
|
||||
userWorkShift: '',
|
||||
fabNo: '',
|
||||
fabNoBo: '',
|
||||
workCenter: '',
|
||||
@ -747,8 +757,8 @@ export default {
|
||||
// 字典状态值映射通用
|
||||
getValConvertShow(srcVal, sourceList) {
|
||||
let me = this;
|
||||
let obj = sourceList.find(item => item.value === srcVal);
|
||||
return obj != undefined ? obj.label : srcVal;
|
||||
let obj = sourceList.find(item => item.userWorkShift === srcVal);
|
||||
return obj != undefined ? obj.description : srcVal;
|
||||
},
|
||||
|
||||
// 同步扣料数据报工数据
|
||||
@ -864,6 +874,15 @@ export default {
|
||||
|
||||
mtrlCompleteSelectionChange(val){
|
||||
this.mtrlCompleteSelection = val;
|
||||
},
|
||||
|
||||
tableRowClassName({row, rowIndex}) {
|
||||
if (row.syncStatus === 'E') {
|
||||
return 'warning-row';
|
||||
} else if (row.syncStatus === 'S') {
|
||||
return 'success-row';
|
||||
}
|
||||
return '';
|
||||
}
|
||||
|
||||
}
|
||||
@ -871,5 +890,11 @@ export default {
|
||||
</script>
|
||||
|
||||
<style lang="scss">
|
||||
.el-table .warning-row {
|
||||
background: oldlace;
|
||||
}
|
||||
|
||||
.el-table .success-row {
|
||||
background: #f0f9eb;
|
||||
}
|
||||
</style>
|
||||
|
||||
@ -420,6 +420,7 @@ export default {
|
||||
site: this.site,
|
||||
operation: this.searchForm.operation,
|
||||
resrce: this.searchForm.resrce,
|
||||
userWorkShift: this.searchForm.userWorkShift,
|
||||
operationList: this.operationList,
|
||||
autoOperationList: this.autoOperationList,
|
||||
autoResource: this.getResource,
|
||||
|
||||
@ -499,6 +499,7 @@ export default {
|
||||
operation: this.searchForm.operation,
|
||||
resrce: this.searchForm.resrce,
|
||||
rollType: this.searchForm.rollType,
|
||||
userWorkShift: this.searchForm.userWorkShift,
|
||||
operationList: this.operationList,
|
||||
autoOperationList: this.autoOperationList,
|
||||
autoResource: this.getResource,
|
||||
|
||||
@ -577,6 +577,7 @@ export default {
|
||||
operation: this.searchForm.operation,
|
||||
resrce: this.searchForm.resrce,
|
||||
rollType: this.searchForm.rollType,
|
||||
userWorkShift: this.searchForm.userWorkShift,
|
||||
operationList: this.operationList,
|
||||
autoOperationList: this.autoOperationList,
|
||||
autoResource: this.getResource,
|
||||
|
||||
@ -47,14 +47,14 @@
|
||||
<el-table-column prop="iqcResults" label="IQC状态"></el-table-column>
|
||||
<el-table-column prop="item" label="物料"></el-table-column>
|
||||
<el-table-column prop="itemDescription" label="物料名称"></el-table-column>
|
||||
<el-table-column prop="vendorBatch" label="供应商批次"></el-table-column>
|
||||
<el-table-column prop="productionDate" label="生产日期"></el-table-column>
|
||||
<el-table-column prop="batch" label="到货批次"></el-table-column>
|
||||
<el-table-column prop="unitOfMeasure" label="单位"></el-table-column>
|
||||
<el-table-column prop="createUser" label="PR申请人"></el-table-column>
|
||||
<el-table-column prop="state" label="行状态"></el-table-column>
|
||||
<el-table-column prop="applicationsQuantity" label="申请数量"></el-table-column>
|
||||
<el-table-column prop="actualQuantity" label="实际数量" ></el-table-column>
|
||||
<el-table-column prop="salesBatch" label="出货批次"></el-table-column>
|
||||
<el-table-column prop="registeredQty" label="已登记数量" width="110"></el-table-column>
|
||||
<el-table-column prop="completedQty" label="已入库数量" width="110"></el-table-column>
|
||||
<el-table-column prop="createDate" label="生产日期"></el-table-column>
|
||||
<el-table-column prop="applicationsQuantity" label="到货数量"></el-table-column>
|
||||
<el-table-column prop="completedQty" label="入库数量" width="110"></el-table-column>
|
||||
</el-table>
|
||||
</el-tab-pane>
|
||||
</el-tabs>
|
||||
|
||||
@ -70,7 +70,7 @@
|
||||
|
||||
<div style="margin-top: 10px;">
|
||||
<el-button type="primary" @click="submit">提交</el-button>
|
||||
<el-button type="primary" @click="oneClickExecute">一键入库</el-button>
|
||||
<!-- <el-button type="primary" @click="oneClickExecute">一键入库</el-button>-->
|
||||
<el-button type="warning" @click="doClear">清除</el-button>
|
||||
</div>
|
||||
|
||||
@ -106,16 +106,17 @@
|
||||
</el-input>
|
||||
</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
<div style="margin-top: 10px;" v-if="itemForm.itemType === 'ROH' || itemForm.itemType === 'VERP'">
|
||||
<div style="margin-top: 10px;">
|
||||
<el-row :gutter="10">
|
||||
<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<el-form-item label="存储区域">
|
||||
<el-input v-model="itemForm.storageLocation" :disabled="isUse">
|
||||
<i slot="suffix" class="el-input__icon el-icon-search"
|
||||
@click.stop="showStorageLocationDialog"></i>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<!-- 存储区域 注释掉-->
|
||||
<!-- <el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">-->
|
||||
<!-- <el-form-item label="存储区域">-->
|
||||
<!-- <el-input v-model="itemForm.storageLocation" :disabled="isUse">-->
|
||||
<!-- <i slot="suffix" class="el-input__icon el-icon-search"-->
|
||||
<!-- @click.stop="showStorageLocationDialog"></i>-->
|
||||
<!-- </el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
<el-col :xs="24" :sm="24" :md="12" :lg="12" :xl="12">
|
||||
<el-form-item label="最小包装数量">
|
||||
<el-input type="number" v-model="itemForm.minNum" :disabled="isUse"
|
||||
@ -164,14 +165,21 @@
|
||||
|
||||
<el-dialog :visible.sync="detailDialogVisible" center fullscreen>
|
||||
<el-table :data="itemForm.inventoryList" border>
|
||||
<el-table-column label="序号" prop="seq"></el-table-column>
|
||||
<!-- <el-table-column label="序号" prop="seq"></el-table-column>-->
|
||||
<el-table-column type="index" label="序号">
|
||||
<template slot-scope="scope">
|
||||
<div>
|
||||
{{ scope.$index + 1 }}
|
||||
</div>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="数量" prop="inventoryQty">
|
||||
<template slot-scope="scope">
|
||||
<el-input v-model="scope.row.inventoryQty" type="number" @change="reSetRemainderNum($event,scope.row)"
|
||||
:disabled="isUse"></el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="存储区域" prop="storageLocation"></el-table-column>
|
||||
<!-- <el-table-column label="存储区域" prop="storageLocation"></el-table-column>-->
|
||||
<el-table-column label="组" prop="group" v-if="itemForm.itemType === 'ROH'"></el-table-column>
|
||||
<el-table-column label="操作">
|
||||
<template slot-scope="scope">
|
||||
@ -185,70 +193,71 @@
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog :visible.sync="dialogItemType1Form2Visible" center fullscreen @close="backUpCodeList">
|
||||
<div style="margin-top: 10px;">
|
||||
<el-form :model="itemForm" label-width="auto">
|
||||
<el-descriptions :column="1" border :labelStyle="lableWidth">
|
||||
<el-descriptions-item label="单据号">
|
||||
{{ itemForm.documentNo }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="物料号">
|
||||
{{ itemForm.item }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="物料描述">
|
||||
{{ itemForm.itemDescription }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="客户编码">
|
||||
{{ itemForm.customer }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="目标仓">
|
||||
{{ itemForm.targetWarehouse }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="需求数量">
|
||||
{{ itemForm.applicationsQuantity }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="汇总数量">
|
||||
{{ itemForm.sumQuantity }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="单位">
|
||||
{{ itemForm.unitOfMeasure }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item label="批次">
|
||||
{{ itemForm.batch }}
|
||||
</el-descriptions-item>
|
||||
<!--<el-descriptions-item label="存储区域">
|
||||
<el-input v-model="itemForm.storageLocation" :disabled="isUse">
|
||||
<i slot="suffix" class="el-input__icon el-icon-search"
|
||||
@click.stop="showStorageLocationDialog"></i>
|
||||
</el-input>
|
||||
</el-descriptions-item>-->
|
||||
</el-descriptions>
|
||||
<div style="margin-top: 10px;">
|
||||
<el-form-item prop="code">
|
||||
<el-input v-model="itemForm.code" placeholder="扫描条码" autofocus
|
||||
@keyup.enter.native="scanCode" :disabled="isUse">
|
||||
<i slot="suffix" class="el-input__icon el-icon-full-screen"></i>
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
<el-table :data="itemForm.inventoryList" border>
|
||||
<el-table-column label="条码" prop="inventoryIdOrCarrier"></el-table-column>
|
||||
<el-table-column label="数量" prop="inventoryQty"></el-table-column>
|
||||
<el-table-column label="载具类型" prop="type"></el-table-column>
|
||||
<el-table-column label="操作">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="primary" @click="delRow2(scope.$index, scope.row)"
|
||||
:disabled="scope.row.isScan === 'N'">删除
|
||||
</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</div>
|
||||
</el-form>
|
||||
</div>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="saveItemType1" :disabled="isUse">保存</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
<!-- <el-dialog :visible.sync="dialogItemType1Form2Visible" center fullscreen @close="backUpCodeList">-->
|
||||
<!-- <div style="margin-top: 10px;">-->
|
||||
<!-- <el-form :model="itemForm" label-width="auto">-->
|
||||
<!-- <el-descriptions :column="1" border :labelStyle="lableWidth">-->
|
||||
<!-- <el-descriptions-item label="单据号">-->
|
||||
<!-- {{ itemForm.documentNo }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="物料号">-->
|
||||
<!-- {{ itemForm.item }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="物料描述">-->
|
||||
<!-- {{ itemForm.itemDescription }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="客户编码">-->
|
||||
<!-- {{ itemForm.customer }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="目标仓">-->
|
||||
<!-- {{ itemForm.targetWarehouse }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="需求数量">-->
|
||||
<!-- {{ itemForm.applicationsQuantity }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="汇总数量">-->
|
||||
<!-- {{ itemForm.sumQuantity }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="单位">-->
|
||||
<!-- {{ itemForm.unitOfMeasure }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <el-descriptions-item label="批次">-->
|
||||
<!-- {{ itemForm.batch }}-->
|
||||
<!-- </el-descriptions-item>-->
|
||||
<!-- <!–<el-descriptions-item label="存储区域">-->
|
||||
<!-- <el-input v-model="itemForm.storageLocation" :disabled="isUse">-->
|
||||
<!-- <i slot="suffix" class="el-input__icon el-icon-search"-->
|
||||
<!-- @click.stop="showStorageLocationDialog"></i>-->
|
||||
<!-- </el-input>-->
|
||||
<!-- </el-descriptions-item>–>-->
|
||||
<!-- </el-descriptions>-->
|
||||
<!-- <div style="margin-top: 10px;">-->
|
||||
<!-- <el-form-item prop="code">-->
|
||||
<!-- <el-input v-model="itemForm.code" placeholder="扫描条码" autofocus-->
|
||||
<!-- @keyup.enter.native="scanCode" :disabled="isUse">-->
|
||||
<!-- <i slot="suffix" class="el-input__icon el-icon-full-screen"></i>-->
|
||||
<!-- </el-input>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- <el-table :data="itemForm.inventoryList" border>-->
|
||||
<!-- <el-table-column label="条码" prop="inventoryIdOrCarrier"></el-table-column>-->
|
||||
<!-- <el-table-column label="数量" prop="inventoryQty"></el-table-column>-->
|
||||
<!-- <el-table-column label="载具类型" prop="type"></el-table-column>-->
|
||||
<!-- <el-table-column label="操作">-->
|
||||
<!-- <template slot-scope="scope">-->
|
||||
<!-- <el-button size="mini" type="primary" @click="delRow2(scope.$index, scope.row)"-->
|
||||
<!-- :disabled="scope.row.isScan === 'N'">删除-->
|
||||
<!-- </el-button>-->
|
||||
<!-- </template>-->
|
||||
<!-- </el-table-column>-->
|
||||
<!-- </el-table>-->
|
||||
<!-- </div>-->
|
||||
<!-- </el-form>-->
|
||||
<!-- </div>-->
|
||||
<!-- <div slot="footer" class="dialog-footer">-->
|
||||
<!-- <el-button type="primary" @click="saveItemType1" :disabled="isUse">保存</el-button>-->
|
||||
<!-- </div>-->
|
||||
<!-- </el-dialog>-->
|
||||
<!-- -->
|
||||
</basic-container>
|
||||
</div>
|
||||
</template>
|
||||
@ -431,7 +440,7 @@
|
||||
showProductionRequisitionDialog() {
|
||||
let me = this;
|
||||
me.productionRequisitionDialogVisible = true;
|
||||
me.$refs.documentDialog.clear();
|
||||
// me.$refs.documentDialog.clear();
|
||||
me.productionRequisitionDialogObj.queryParam = {"documentType": me.documentType};
|
||||
},
|
||||
productionRequisitionSelect(row) {
|
||||
@ -442,6 +451,8 @@
|
||||
me.documentNo = me.formObj.documentNo;
|
||||
getDocumentDetail(me.formObj.documentNo).then(res => {
|
||||
if (res.data.code == 0) {
|
||||
console.log(res.data.data)
|
||||
debugger
|
||||
for (let i = 0; i < res.data.data.length; i++) {
|
||||
let obj = Object.assign({}, {
|
||||
"item": res.data.data[i].item,
|
||||
@ -483,6 +494,7 @@
|
||||
me.formObj.itemList = [];
|
||||
me.submitList = [];
|
||||
getDocumentDetail(me.formObj.documentNo).then(res => {
|
||||
debugger
|
||||
if (res.data.code == 0) {
|
||||
if (res.data.data[0].documentType !== me.documentType) {
|
||||
if (me.documentType === 'PROCUREMENT_STORAGE') {
|
||||
@ -523,6 +535,7 @@
|
||||
showItemDialog(index, row) {
|
||||
//判断是物料类型弹出不同的表单
|
||||
let me = this;
|
||||
debugger
|
||||
//判断行项目是否已经关闭,关闭则不可扫描条码和保存
|
||||
if (row.state === "CLOSE") {
|
||||
this.isUse = true;
|
||||
@ -538,40 +551,57 @@
|
||||
obj.inventoryList = saveObj.inventoryList.slice();
|
||||
}
|
||||
}
|
||||
if (row.itemType === 'ROH' || row.itemType === 'VERP') {
|
||||
obj = obj == null ? Object.assign({
|
||||
"inventoryList": [],
|
||||
"code": "",
|
||||
"storageLocation": "",
|
||||
"minNum": 0,
|
||||
"barCodeNum": 0,
|
||||
"remainderNum": row.applicationsQuantity,
|
||||
"sumRemainderNum": 0,
|
||||
"minGroupNum": 0,
|
||||
}, row) : obj;
|
||||
me.itemForm = obj;
|
||||
me.dialogItemType1FormVisible = true;
|
||||
} else if (row.itemType === 'KMAT') {
|
||||
obj = obj == null ? Object.assign({
|
||||
"inventoryList": [{
|
||||
inventoryQty: row.applicationsQuantity
|
||||
}],
|
||||
"code": "",
|
||||
"storageLocation": "",
|
||||
}, row) : obj;
|
||||
me.itemForm = obj;
|
||||
me.dialogItemType1FormVisible = true;
|
||||
} else if (row.itemType === 'FERT') {
|
||||
obj = obj == null ? Object.assign({
|
||||
"inventoryList": [],
|
||||
"code": "",
|
||||
"sumQuantity": 0,
|
||||
}, row) : obj;
|
||||
me.itemForm = obj;
|
||||
me.dialogItemType1Form2Visible = true;
|
||||
} else {
|
||||
me.$message.error("不支持的物料类型");
|
||||
}
|
||||
|
||||
// 注释掉按物料类型进行显示入库执行的弹窗,改为只有包材这一种类型
|
||||
// if (row.itemType === 'ROH' || row.itemType === 'VERP') {
|
||||
// obj = obj == null ? Object.assign({
|
||||
// "inventoryList": [],
|
||||
// "code": "",
|
||||
// "storageLocation": "",
|
||||
// "minNum": 0,
|
||||
// "barCodeNum": 0,
|
||||
// "remainderNum": row.applicationsQuantity,
|
||||
// "sumRemainderNum": 0,
|
||||
// "minGroupNum": 0,
|
||||
// }, row) : obj;
|
||||
// me.itemForm = obj;
|
||||
// me.dialogItemType1FormVisible = true;
|
||||
// } else if (row.itemType === 'KMAT') {
|
||||
// obj = obj == null ? Object.assign({
|
||||
// "inventoryList": [{
|
||||
// inventoryQty: row.applicationsQuantity
|
||||
// }],
|
||||
// "code": "",
|
||||
// "storageLocation": "",
|
||||
// }, row) : obj;
|
||||
// me.itemForm = obj;
|
||||
// me.dialogItemType1FormVisible = true;
|
||||
// } else if (row.itemType === 'FERT') {
|
||||
// obj = obj == null ? Object.assign({
|
||||
// "inventoryList": [],
|
||||
// "code": "",
|
||||
// "sumQuantity": 0,
|
||||
// }, row) : obj;
|
||||
// me.itemForm = obj;
|
||||
// me.dialogItemType1Form2Visible = true;
|
||||
// } else {
|
||||
// me.$message.error("不支持的物料类型");
|
||||
// }
|
||||
|
||||
// VERP包材 现在只有包材概念,其他几种都不要了
|
||||
obj = obj == null ? Object.assign({
|
||||
"inventoryList": [],
|
||||
"code": "",
|
||||
"storageLocation": "",
|
||||
"minNum": 0,
|
||||
"barCodeNum": 0,
|
||||
"remainderNum": row.applicationsQuantity,
|
||||
"sumRemainderNum": 0,
|
||||
"minGroupNum": 0,
|
||||
}, row) : obj;
|
||||
me.itemForm = obj;
|
||||
me.dialogItemType1FormVisible = true;
|
||||
|
||||
},
|
||||
|
||||
submit() {
|
||||
@ -621,7 +651,9 @@
|
||||
} else if (me.itemForm.inventoryList.length === 0) {
|
||||
me.$message.error("无信息可以保存,请点击返回按钮");
|
||||
} else {
|
||||
if (((me.itemForm.itemType === 'ROH' || me.itemForm.itemType === 'VERP') && me.itemForm.remainderNum !== 0) || (me.itemForm.itemType === 'FERT' && me.itemForm.sumQuantity !== me.itemForm.applicationsQuantity && isBlank(me.finishQtyControl))) {
|
||||
|
||||
// if (((me.itemForm.itemType === 'ROH' || me.itemForm.itemType === 'VERP') && me.itemForm.remainderNum !== 0) || (me.itemForm.itemType === 'FERT' && me.itemForm.sumQuantity !== me.itemForm.applicationsQuantity && isBlank(me.finishQtyControl))) {
|
||||
if (me.itemForm.remainderNum !== 0) {
|
||||
me.$message.error("剩余数量不为0,请继续输入");
|
||||
} else {
|
||||
me.backUpList = [];
|
||||
@ -647,29 +679,50 @@
|
||||
//最小包装数量改变事件
|
||||
minNumChange() {
|
||||
let me = this;
|
||||
if (isBlank(me.itemForm.storageLocation)) {
|
||||
|
||||
// 改为不校验存储位置
|
||||
if (!me.itemForm.minNum) {
|
||||
me.itemForm.minNum = 0;
|
||||
me.$message.error("存储位置为空");
|
||||
me.$message.error("最小包装数量必须大于0");
|
||||
} else {
|
||||
if (!me.itemForm.minNum) {
|
||||
me.itemForm.minNum = 0;
|
||||
me.$message.error("最小包装数量必须大于0");
|
||||
//最小数量
|
||||
let minNum = me.itemForm.minNum;
|
||||
//剩余数量
|
||||
let remainderNum = me.itemForm.remainderNum;
|
||||
let num = 0;
|
||||
num = remainderNum % minNum;
|
||||
if (num == 0) {
|
||||
me.itemForm.barCodeNum = remainderNum / minNum;
|
||||
} else {
|
||||
//最小数量
|
||||
let minNum = me.itemForm.minNum;
|
||||
//剩余数量
|
||||
let remainderNum = me.itemForm.remainderNum;
|
||||
let num = 0;
|
||||
num = remainderNum % minNum;
|
||||
if (num == 0) {
|
||||
me.itemForm.barCodeNum = remainderNum / minNum;
|
||||
} else {
|
||||
let barCodeNum = Math.floor(remainderNum / minNum);
|
||||
me.itemForm.barCodeNum = barCodeNum;
|
||||
}
|
||||
me.inputFocus("barCodeNum");
|
||||
let barCodeNum = Math.floor(remainderNum / minNum);
|
||||
me.itemForm.barCodeNum = barCodeNum;
|
||||
}
|
||||
me.inputFocus("barCodeNum");
|
||||
}
|
||||
|
||||
// if (isBlank(me.itemForm.storageLocation)) {
|
||||
// me.itemForm.minNum = 0;
|
||||
// me.$message.error("存储位置为空");
|
||||
// } else {
|
||||
// if (!me.itemForm.minNum) {
|
||||
// me.itemForm.minNum = 0;
|
||||
// me.$message.error("最小包装数量必须大于0");
|
||||
// } else {
|
||||
// //最小数量
|
||||
// let minNum = me.itemForm.minNum;
|
||||
// //剩余数量
|
||||
// let remainderNum = me.itemForm.remainderNum;
|
||||
// let num = 0;
|
||||
// num = remainderNum % minNum;
|
||||
// if (num == 0) {
|
||||
// me.itemForm.barCodeNum = remainderNum / minNum;
|
||||
// } else {
|
||||
// let barCodeNum = Math.floor(remainderNum / minNum);
|
||||
// me.itemForm.barCodeNum = barCodeNum;
|
||||
// }
|
||||
// me.inputFocus("barCodeNum");
|
||||
// }
|
||||
// }
|
||||
},
|
||||
//条码数量改变事件
|
||||
barCodeNumChange() {
|
||||
|
||||
@ -50,7 +50,7 @@
|
||||
<el-table-column label="出货数量" prop="applicationsQuantity" align="center"></el-table-column>
|
||||
<el-table-column label="单位" prop="unitOfMeasure" align="center"></el-table-column>
|
||||
<el-table-column label="拣货数量" prop="pickQty" align="center"></el-table-column>
|
||||
<el-table-column label="出货批次" prop="salesBatch" align="center"></el-table-column>
|
||||
<el-table-column label="涂布批次" prop="salesBatch" align="center"></el-table-column>
|
||||
<el-table-column label="拣货状态" prop="pickStatus" align="center">
|
||||
<template slot-scope="scope">
|
||||
{{formatterConst[scope.column.property][scope.row[scope.column.property]]}}
|
||||
@ -171,14 +171,17 @@
|
||||
import {
|
||||
pickingPost,
|
||||
pickingPrint,
|
||||
saleOutPost,
|
||||
selectPickingSuggest,
|
||||
selectSaleOutDetail,
|
||||
saleOutPostCancel,
|
||||
pickingPostCancel,
|
||||
pickingPrintA4
|
||||
} from '@/api/wms/sale-out-platform';
|
||||
import {fetchList as fetchProductionRequisitionList, pickingRemove} from "@/api/wms/picking";
|
||||
import {fetchList as fetchProductionRequisitionList} from "@/api/wms/picking";
|
||||
import {
|
||||
pickingClean,
|
||||
postOut
|
||||
} from "@/api/wms/documentCommon";
|
||||
import {getByCode} from '@/api/mes/sys/fast-code';
|
||||
import {inputShowDialog, inputCallBack} from '@/util/inputSelectDialogUtil';
|
||||
import {isBlank} from "@/util/string";
|
||||
@ -399,13 +402,16 @@
|
||||
return me.$message.error("第" + (i + 1) + "行拣货状态不允许清除");
|
||||
}
|
||||
}
|
||||
let param = {
|
||||
let param = /*{
|
||||
activityId: me.$route.query.ACTIVITY_ID,
|
||||
documentNo: me.saleOutListSelection[0].documentNo,
|
||||
seqList: me.saleOutListSelection.map(o => o.seq),
|
||||
};*/{
|
||||
str: me.saleOutListSelection[0].documentNo,
|
||||
list: me.saleOutListSelection.map(o => o.seq),
|
||||
};
|
||||
showLoading();
|
||||
pickingRemove(param).then(res => {
|
||||
pickingClean(param).then(res => {
|
||||
hideLoading();
|
||||
if (!res.data.data) {
|
||||
return me.$message.error("该单据无拣货记录");
|
||||
@ -489,8 +495,8 @@
|
||||
saleOutPost() {
|
||||
let me = this;
|
||||
showLoading();
|
||||
saleOutPost({
|
||||
documentNo: me.formObj.documentNo,
|
||||
postOut({
|
||||
str: me.formObj.documentNo,
|
||||
dateTime: dateFormat(me.formObj.dateTime)
|
||||
}).then(res => {
|
||||
hideLoading();
|
||||
|
||||
Loading…
Reference in New Issue
Block a user