拣配(汇总&&交接)代码优化 问题修复

master
hou 4 years ago
parent 02e6c0b3cb
commit 1afca0deeb

@ -181,7 +181,7 @@ export default class productCheckReceipt extends BasePage {
this.form.productCode = '';
model.empty();
setTimeout(() => {
this.toPage(this.page.product.warehouse.wholeTransfer.index);
this.$forceUpdate();
}, 2000);
}
});

@ -2,7 +2,7 @@
<view class="page-picking-order">
<view class="header">
<view class="left">
<u-icon class="icon" name="arrow-left" @click="index" />
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view>
<view class="title">{{ $t('message.Pi_ByOrderPicking') }}</view>
<view class="right"></view>
@ -71,7 +71,7 @@
</u-button>
</u-col>
<u-col :span="4">
<u-button type="error" @click="index">
<u-button type="error" @click="uni.navigateBack()">
{{ $t('message.po_Return') }}
</u-button>
</u-col>
@ -120,7 +120,6 @@ export default class RawReceiptDetail extends BasePage {
someIndex: number = 0;
some: any = {};
qty: any = '';
again: any;
/**
* 表单数据
*/
@ -128,9 +127,6 @@ export default class RawReceiptDetail extends BasePage {
// locationCode: null,
amount: null,
};
index() {
this.toPage(this.page.raw.handover.picking.result);
}
/**
* 表单校验
*/
@ -255,28 +251,7 @@ export default class RawReceiptDetail extends BasePage {
this.model.proOrderResultList[this.someIndex].currentAmount = num;
}
async onReady() {
//
let means: any = JSON.parse(localStorage.getItem('__GWMS_APP_STATE_DATA__') as any);
let sendSpot = JSON.parse(localStorage.getItem('sendSpot') as any);
let content = {
loginName: means.session.user.loginName,
sendSpot: sendSpot,
factoryCode: means.session.user.factoryCode,
workArea: session.workareaCode,
};
let res: any = await this.model.queryByFactoryCodeAndWorkAreaCode(content);
res.forEach((item: any) => {
let pickerName: any = {};
pickerName.label = item.locationCode;
pickerName.value = item.locationCode + '(' + item.sendSpot + ')';
pickerName.sendSpot = item.sendSpot;
this.Location.push(pickerName);
});
// this.model.proOrderResultList.forEach((item: any) => {
// item.hvAmount = 0;
// });
this.again = JSON.parse(sessionStorage.getItem('params') as any);
sessionStorage.removeItem('params');
this.GetLocation();
}
async bill() {
if (this.some == {} || this.some.prdOrder == null) {
@ -304,12 +279,47 @@ export default class RawReceiptDetail extends BasePage {
dataList.push(item);
}
});
await this.model.saveProOrderResultUpload(dataList).then(() => {
this.model.queryProOrderResult(this.again).then(() => {
// this.toPage(this.page.raw.handover.picking.result);
this.model.queryAggregate();
this.toPage(this.page.raw.handover.picking.byorder);
if (dataList.length == 0) {
uni.showToast({
icon: 'none',
title: this.$t('message.Warehouse_Tip6') as any,
});
return;
}
await this.model.saveProOrderResultUpload(dataList);
if (this.model.code == '1') {
uni.showToast({
icon: 'none',
title: this.$t('message.Warehouse_Tip9') as any,
});
this.GetLocation();
setTimeout(() => {
this.onAggregate();
}, 2000);
}
}
async onAggregate() {
await this.model.queryProOrder(this.model.formParams);
await this.model.queryProOrderResult(this.model.NEWparams);
await this.model.lockProOrderResult(this.model.proOrderResultList);
}
async GetLocation() {
this.Location = [];
let means: any = JSON.parse(localStorage.getItem('__GWMS_APP_STATE_DATA__') as any);
let sendSpot = JSON.parse(localStorage.getItem('sendSpot') as any);
let content = {
loginName: means.session.user.loginName,
sendSpot: sendSpot,
factoryCode: means.session.user.factoryCode,
workArea: session.workareaCode,
};
let res: any = await this.model.queryByFactoryCodeAndWorkAreaCode(content);
res.forEach((item: any) => {
let pickerName: any = {};
pickerName.label = item.locationCode;
pickerName.value = item.locationCode + '(' + item.sendSpot + ')';
pickerName.sendSpot = item.sendSpot;
this.Location.push(pickerName);
});
}
}

@ -2,15 +2,16 @@
<view class="page-picking-order">
<view class="header">
<view class="left">
<u-icon class="icon" name="arrow-left" @click="index" />
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view>
<view class="title">{{ $t('message.Pi_SummaryPicking') }}</view>
<view class="right"></view>
</view>
<!-- 列表展示数据 -->
<view class="table-wrapper">
<wyb-table class="table" ref="table" width="100%" enable-check="single" show-left-and-right-border :headers="headers" :contents="model.aggregateList" :show-vert-border="false" @onCheck="handleRow"></wyb-table>
</view>
<!-- 列表展示数据 -->
<!-- 展示详细信息 -->
<view class="Exhibition">
<view class="Exhibition-left">
<view class="Exhibition-left-title">{{ $t('message.Pi_Station') }}:</view>
@ -47,9 +48,6 @@
<u-td class="u-td">{{ item.wlCode }}</u-td>
<u-td class="u-td">{{ item.qty }}</u-td>
<u-td class="u-td">
<!-- <div class="u-td" @click="deleteItem(index)">
{{ $t('message.product_Delete') }}
</div> -->
<u-button type="error" size="small" style="font-size: 20px" @click="deleteItem(index)">{{ $t('message.product_Delete') }}</u-button>
</u-td>
</u-tr>
@ -71,7 +69,7 @@
</u-button>
</u-col>
<u-col :span="4">
<u-button type="error" @click="index">
<u-button type="error" @click="uni.navigateBack()">
{{ $t('message.po_Return') }}
</u-button>
</u-col>
@ -80,7 +78,6 @@
</view>
</view>
</template>
<script lang="ts">
import { Component, Ref } from 'vue-property-decorator';
import { BasePage } from '@/components/base/page';
@ -96,9 +93,6 @@ import { pick } from 'lodash/fp';
},
})
export default class RawReceiptDetail extends BasePage {
/**
* 表单引用
*/
@Ref('form') readonly $form!: VForm;
@Ref('submitForm') readonly $submitForm!: VForm;
submitForm = {
@ -106,9 +100,6 @@ export default class RawReceiptDetail extends BasePage {
receiverName: '',
password: '',
};
/**
* 页面Module
*/
model = model;
type = 'text';
wlCode: any = '';
@ -120,17 +111,11 @@ export default class RawReceiptDetail extends BasePage {
someIndex: number = 0;
some: any = {};
qty: any = '';
again: any;
/**
* 表单数据
*/
//
form: any = {
// locationCode: null,
amount: null,
};
index() {
this.toPage(this.page.raw.handover.picking.result);
}
/**
* 表单校验
*/
@ -146,10 +131,7 @@ export default class RawReceiptDetail extends BasePage {
* 库存地点选择
*/
locationCodeSelect = false;
/**
* 表头
*/
//
headers = summaryHeaders;
//
LocationChoice(e: any) {
@ -260,8 +242,59 @@ export default class RawReceiptDetail extends BasePage {
});
this.model.aggregateList[this.someIndex].currentAmount = num;
}
//
async onReady() {
await this.GetLocation();
}
async bill() {
this.redirectTo(this.page.raw.handover.picking.SummaryLocal);
}
//
async onSubmit() {
const includeOrderOutIdList = this.model.proOrderResultList.map((_: any) => _.orderOutId);
const dataList: any = [];
this.model.aggregateList.forEach((item: any) => {
if (item.checked == true) {
dataList.push(item);
}
});
if (dataList.length == 0) {
uni.showToast({
icon: 'none',
title: this.$t('message.Warehouse_Tip6') as any,
});
return;
}
const params = {
factoryCode: session.factoryCode,
loginName: session.loginName,
dataList,
includeOrderOutIdList,
};
await this.model.saveAggregateUpload(params);
if (this.model.code == '1') {
uni.showToast({
icon: 'none',
title: this.$t('message.Warehouse_Tip9') as any,
});
this.GetLocation();
setTimeout(() => {
this.onAggregate();
}, 2000);
}
}
async onAggregate() {
await this.model.queryProOrder(this.model.formParams);
await this.model.queryProOrderResult(this.model.NEWparams);
const orderOutIdList = this.model.proOrderResultList.map((_: any) => _.orderOutId);
const params = {
factoryCode: session.factoryCode,
loginName: session.loginName,
orderOutIdList,
};
await this.model.queryAggregateList(params);
}
async GetLocation() {
this.Location = [];
let means: any = JSON.parse(localStorage.getItem('__GWMS_APP_STATE_DATA__') as any);
let sendSpot = JSON.parse(localStorage.getItem('sendSpot') as any);
let content = {
@ -278,52 +311,6 @@ export default class RawReceiptDetail extends BasePage {
pickerName.sendSpot = item.sendSpot;
this.Location.push(pickerName);
});
// this.model.aggregateList.forEach((item: any) => {
// item.hvAmount = 0;
// });
this.again = JSON.parse(sessionStorage.getItem('params') as any);
sessionStorage.removeItem('params');
}
async bill() {
// if (this.some == {} || this.some.prdOrder == null) {
// uni.showToast({
// icon: "none",
// title: "" as any,
// });
// return;
// }
// let person = JSON.parse(
// localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
// );
// let content = {
// loginName: person.session.user.loginName,
// prdOrder: this.some.prdOrder,
// };
// await this.model.querydetaildlist(content);
this.redirectTo(this.page.raw.handover.picking.SummaryLocal);
}
//
async onSubmit() {
const includeOrderOutIdList = this.model.proOrderResultList.map((_: any) => _.orderOutId);
const dataList: any = [];
this.model.aggregateList.forEach((item: any) => {
if (item.checked == true) {
dataList.push(item);
}
});
const params = {
factoryCode: session.factoryCode,
loginName: session.loginName,
dataList,
includeOrderOutIdList,
};
await this.model.saveAggregateUpload(params).then(() => {
this.model.queryProOrderResult(this.again).then(() => {
// this.toPage(this.page.raw.handover.picking.result);
this.model.queryAggregate();
this.toPage(this.page.raw.handover.picking.bysummary);
});
});
}
}
</script>

@ -4,64 +4,44 @@
<view class="left">
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view>
<view class="title">{{ $t("message.Pi_QueryResults") }}</view>
<view class="title">{{ $t('message.Pi_QueryResults') }}</view>
<view class="right"></view>
</view>
<u-form
class="form"
ref="form"
style="padding-left: 30px"
label-width="180rpx"
>
<u-form class="form" ref="form" style="padding-left: 30px" label-width="180rpx">
<u-form-item :label="$t('message.Pi_OrderNo')">
<u-input v-model="prdOrder" placeholder="" class="Transfer" />
<u-button
type="primary"
style="height: 60rpx; margin-left: 20rpx"
@click="generate"
>{{ $t("message.Query") }}</u-button
>
<u-button type="primary" style="height: 60rpx; margin-left: 20rpx" @click="generate">{{ $t('message.Query') }}</u-button>
</u-form-item>
</u-form>
<view class="table-wrapper">
<wyb-table
class="table"
ref="table"
width="100%"
show-left-and-right-border
:headers="headers"
:contents="detailedList"
:show-vert-border="false"
></wyb-table>
<wyb-table class="table" ref="table" width="100%" show-left-and-right-border :headers="headers" :contents="detailedList" :show-vert-border="false"></wyb-table>
</view>
</view>
</template>
<script lang="ts">
import { Component } from "vue-property-decorator";
import { BasePage } from "@/components/base/page";
import { Headers } from "./config";
import model from "./model";
import { Component } from 'vue-property-decorator';
import { BasePage } from '@/components/base/page';
import { Headers } from './config';
import model from './model';
@Component
export default class RawReceiptDetail extends BasePage {
model = model;
headers = Headers;
prdOrder: any = "";
prdOrder: any = '';
detailedList: any = [];
onShow() {
model.detailedList = [];
}
async generate() {
if (this.prdOrder == "") {
if (this.prdOrder == '') {
uni.showToast({
icon: "none",
title: this.$t("message._tips6") as any,
icon: 'none',
title: this.$t('message._tips6') as any,
});
return;
}
let person = JSON.parse(
localStorage.getItem("__GWMS_APP_STATE_DATA__") as any
);
let person = JSON.parse(localStorage.getItem('__GWMS_APP_STATE_DATA__') as any);
let content = {
loginName: person.session.user.loginName,
prdOrder: this.prdOrder,
@ -73,8 +53,7 @@ export default class RawReceiptDetail extends BasePage {
</script>
<style lang="scss" scoped>
.page-receipt-detail {
background: #f2f2f2
linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat;
background: #f2f2f2 linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat;
background-size: 100% 600rpx;
padding: 30rpx;
min-height: 100%;

@ -1,11 +1,26 @@
/**
*
*/
import vm from "@/main";
import vm from '@/main';
export const headers = [
{
label: vm.$t("message.Pi_OrderNo"),
key: "prdOrder",
label: vm.$t('message.Pi_OrderNo'),
key: 'prdOrder', //订单号
width: 550,
},
{
label: vm.$t('message.po_DemandQuantity'),
key: 'amount', //需求数量
width: 550,
},
{
label: vm.$t('message.Pi_materielNo'),
key: 'materialCode', //物料号
width: 550,
},
{
label: vm.$t('message.CommissionedMaterielDesc'),
key: 'materialDesc', //物料描述
width: 550,
},
];
@ -15,56 +30,56 @@ export const headers = [
*/
export const resultHeaders = [
{
label: vm.$t("message.po_MaterielNo"),
key: "materialCode",
label: vm.$t('message.po_MaterielNo'),
key: 'materialCode',
width: 220,
},
{
label: vm.$t("message.po_DemandQuantity"),
key: "amount",
label: vm.$t('message.po_DemandQuantity'),
key: 'amount',
},
{
label: vm.$t("message.Pi_CumulativePickingQuantity"),
key: "totalMoAmount",
label: vm.$t('message.Pi_CumulativePickingQuantity'),
key: 'totalMoAmount',
width: 300,
},
{
label: vm.$t("message.Pi_HandoverQuantity"),
key: "totalHvAmount",
label: vm.$t('message.Pi_HandoverQuantity'),
key: 'totalHvAmount',
},
{
label: vm.$t("message.Pi_factory"),
key: "sapFactoryCode",
label: vm.$t('message.Pi_factory'),
key: 'sapFactoryCode',
},
{
label: vm.$t("message.Pi_Station"),
key: "sendSpot",
label: vm.$t('message.Pi_Station'),
key: 'sendSpot',
},
{
label: vm.$t("message.po_MaterielDes"),
key: "materialDesc",
label: vm.$t('message.po_MaterielDes'),
key: 'materialDesc',
width: 350,
},
{
label: "MRP",
key: "mrpCode",
label: 'MRP',
key: 'mrpCode',
},
{
label: vm.$t("message.Pi_unit"),
key: "unit",
label: vm.$t('message.Pi_unit'),
key: 'unit',
},
{
label: vm.$t("message.Pi_OrderNo"),
key: "prdOrder",
label: vm.$t('message.Pi_OrderNo'),
key: 'prdOrder',
},
{
label: vm.$t("message.Pi_FinishedProductModel"),
key: "prdMaterialDesc",
label: vm.$t('message.Pi_FinishedProductModel'),
key: 'prdMaterialDesc',
width: 300,
},
{
label: vm.$t("message.po_Location"),
key: "wkposCode",
label: vm.$t('message.po_Location'),
key: 'wkposCode',
},
];
@ -73,40 +88,40 @@ export const resultHeaders = [
*/
export const summaryHeaders = [
{
label: vm.$t("message.po_MaterielNo"),
key: "materialCode",
label: vm.$t('message.po_MaterielNo'),
key: 'materialCode',
width: 220,
},
{
label: vm.$t("message.po_DemandQuantity"),
key: "amount",
label: vm.$t('message.po_DemandQuantity'),
key: 'amount',
},
{
label: vm.$t("message.Pi_CurrentPickingQuantity"),
key: "currentAmount",
label: vm.$t('message.Pi_CurrentPickingQuantity'),
key: 'currentAmount',
width: 300,
},
{
label: vm.$t("message.Pi_PickedQuantity"),
key: "totalMoAmount",
label: vm.$t('message.Pi_PickedQuantity'),
key: 'totalMoAmount',
},
{
label: vm.$t("message.Pi_QuantityHandedOver"),
key: "totalHvAmount",
label: vm.$t('message.Pi_QuantityHandedOver'),
key: 'totalHvAmount',
},
{
label: vm.$t("message.po_Location"),
label: vm.$t('message.po_Location'),
// key: 'currentWkposCode',
key: "wkposCode",
key: 'wkposCode',
},
{
label: vm.$t("message.po_MaterielDes"),
key: "materialDesc",
label: vm.$t('message.po_MaterielDes'),
key: 'materialDesc',
width: 350,
},
{
label: vm.$t("message.Pi_unit"),
key: "unit",
label: vm.$t('message.Pi_unit'),
key: 'unit',
},
// {
// label: '成品型号',
@ -128,103 +143,103 @@ export const summaryHeaders = [
*/
export const orderHeaders = [
{
label: vm.$t("message.po_MaterielNo"),
key: "materialCode",
label: vm.$t('message.po_MaterielNo'),
key: 'materialCode',
width: 220,
},
{
label: vm.$t("message.po_DemandQuantity"),
key: "amount",
label: vm.$t('message.po_DemandQuantity'),
key: 'amount',
},
{
label: vm.$t("message.Pi_CurrentPickingQuantity"),
key: "currentAmount",
label: vm.$t('message.Pi_CurrentPickingQuantity'),
key: 'currentAmount',
width: 300,
},
{
label: vm.$t("message.Pi_PickedQuantity"),
key: "totalMoAmount",
label: vm.$t('message.Pi_PickedQuantity'),
key: 'totalMoAmount',
},
{
label: vm.$t("message.Pi_QuantityHandedOver"),
key: "totalHvAmount",
label: vm.$t('message.Pi_QuantityHandedOver'),
key: 'totalHvAmount',
},
{
label: vm.$t("message.po_Location"),
label: vm.$t('message.po_Location'),
// key: 'currentWkposCode',
key: "wkposCode",
key: 'wkposCode',
},
{
label: vm.$t("message.po_MaterielDes"),
key: "materialDesc",
label: vm.$t('message.po_MaterielDes'),
key: 'materialDesc',
width: 350,
},
{
label: vm.$t("message.Pi_unit"),
key: "unit",
label: vm.$t('message.Pi_unit'),
key: 'unit',
},
{
label: vm.$t("message.Pi_FinishedProductModel"),
key: "prdMaterialDesc",
label: vm.$t('message.Pi_FinishedProductModel'),
key: 'prdMaterialDesc',
width: 300,
},
{
label: vm.$t("message.Pi_factory"),
key: "sapFactoryCode",
label: vm.$t('message.Pi_factory'),
key: 'sapFactoryCode',
},
{
label: vm.$t("message.Pi_Station"),
key: "sendSpot",
label: vm.$t('message.Pi_Station'),
key: 'sendSpot',
},
{
label: vm.$t("message.Pi_OrderNo"),
key: "prdOrder",
label: vm.$t('message.Pi_OrderNo'),
key: 'prdOrder',
},
];
export const Headers = [
{
label: vm.$t("message.po_MaterielNo"),
key: "materialCode",
label: vm.$t('message.po_MaterielNo'),
key: 'materialCode',
width: 220,
},
{
label: vm.$t("message.po_DemandQuantity"),
key: "amount",
label: vm.$t('message.po_DemandQuantity'),
key: 'amount',
},
{
label: vm.$t("message.Pi_CurrentPickingQuantity"),
key: "operatorAmount", //本次拣配数量
label: vm.$t('message.Pi_CurrentPickingQuantity'),
key: 'operatorAmount', //本次拣配数量
width: 300,
},
{
label: vm.$t("message.po_Location"),
label: vm.$t('message.po_Location'),
// key: 'currentWkposCode',
key: "originLocation",
key: 'originLocation',
},
{
label: vm.$t("message.po_MaterielDes"),
key: "materialDesc",
label: vm.$t('message.po_MaterielDes'),
key: 'materialDesc',
width: 350,
},
{
label: vm.$t("message.Pi_unit"),
key: "unit",
label: vm.$t('message.Pi_unit'),
key: 'unit',
},
{
label: vm.$t("message.Pi_factory"),
key: "sapFactoryCode",
label: vm.$t('message.Pi_factory'),
key: 'sapFactoryCode',
},
{
label: vm.$t("message.Pi_Station"),
key: "sendSpot",
label: vm.$t('message.Pi_Station'),
key: 'sendSpot',
},
{
label: vm.$t("message.Pi_OrderNo"),
key: "prdOrder",
label: vm.$t('message.Pi_OrderNo'),
key: 'prdOrder',
},
{
label: vm.$t("message.CommissionedLocation"),
key: "wlCode",
label: vm.$t('message.CommissionedLocation'),
key: 'wlCode',
},
];

@ -10,7 +10,7 @@
<u-form class="form" ref="form" :model="form" :error-type="['toast']" label-width="120rpx">
<u-row align="top">
<u-col :span="12">
<!-- mMRP -->
<!-- MRP -->
<u-form-item :required="true" label="MRP" prop="mrpCodeRegion">
<u-input v-model="form.mrpCodeRegion" :placeholder="$t('message.po_PleaseInput')" />
</u-form-item>
@ -192,6 +192,7 @@ export default class pickingDom extends BasePage {
loginName: session.loginName,
orderOutIdList,
};
this.model.NEWparams = params;
await this.model.queryProOrderResult(params);
sessionStorage.setItem('factory', JSON.stringify(params) as any);
this.toPage(this.page.raw.handover.picking.result);

@ -19,6 +19,9 @@ export class PickingModule extends VuexModule {
mrpCodeRegion: '';
sapFactoryCode: '';
formParams: '';
code = '';
orderOutIdList: any;
NEWparams: any;
/**
*
@ -288,20 +291,6 @@ export class PickingModule extends VuexModule {
aggregateList.forEach((_: any) => (_.loginName = params.loginName));
return { aggregateList };
}
@MutationAction
async queryAggregate() {
let params = JSON.parse(sessionStorage.getItem('factory'));
const { list: aggregateList }: any = await http.post(url.sortscan.query.aggregateList, params);
if (!aggregateList.length) {
uni.showToast({
icon: 'none',
title: 'No Data Found',
});
}
aggregateList.forEach((_: any) => (_.loginName = params.loginName));
return { aggregateList };
}
/**
* url.auth.locations listvalues item string
*/
@ -322,27 +311,25 @@ export class PickingModule extends VuexModule {
/**
*
*/
@Action({ commit: 'clearState' })
// @Action({ commit: 'clearState' })
@MutationAction
async saveAggregateUpload(params: any) {
await http.post(url.sortscan.save.aggregate, params);
uni.showToast({
icon: 'success',
title: 'success',
});
// await this.unlockProOrderResult(params.dataList);
const res: any = await http.post(url.sortscan.save.aggregate, params);
console.log('res', res);
const code = res.code;
return { code };
}
/**
*
*/
@Action({ commit: 'clearState' })
// @Action({ commit: 'clearState' })
@MutationAction
async saveProOrderResultUpload(dataList: any[]) {
await http.post(url.sortscan.save.order, dataList);
uni.showToast({
icon: 'success',
title: 'success',
});
// await this.unlockProOrderResult(dataList);
const res: any = await http.post(url.sortscan.save.order, dataList);
const code = res.code;
console.log('code', code);
return { code };
}
/**

@ -2,101 +2,78 @@
<view class="page-receipt-detail">
<view class="header">
<view class="left">
<u-icon class="icon" name="arrow-left" @click="index" />
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
</view>
<view class="title">{{ $t("message.Pi_QueryResults") }}</view>
<view class="title">{{ $t('message.Pi_QueryResults') }}</view>
<view class="right"></view>
</view>
<!-- 表格数据 -->
<view class="table-wrapper">
<wyb-table
class="table"
ref="table"
width="100%"
show-left-and-right-border
:headers="headers"
:contents="model.proOrderResultList"
:show-vert-border="false"
></wyb-table>
<wyb-table class="table" ref="table" width="100%" show-left-and-right-border :headers="headers" :contents="model.proOrderResultList" :show-vert-border="false"></wyb-table>
</view>
<view class="bottom-bar">
<div class="container">
<u-row>
<!-- 汇总 -->
<u-col :span="4">
<u-button type="primary" @click="onAggregate">
{{ $t("message.Pi_Summary") }}
{{ $t('message.Pi_Summary') }}
</u-button>
</u-col>
<!-- 按单 -->
<u-col :span="4">
<u-button type="success" @click="onOrder">
{{ $t("message.Pi_ByOrder") }}
{{ $t('message.Pi_ByOrder') }}
</u-button>
</u-col>
<!-- 返回 -->
<u-col :span="4">
<u-button type="error" @click="index">{{
$t("message.po_Return")
}}</u-button>
<u-button type="error" @click="uni.navigateBack()">{{ $t('message.po_Return') }}</u-button>
</u-col>
</u-row>
</div>
</view>
</view>
</template>
<script lang="ts">
import { Component } from "vue-property-decorator";
import { BasePage } from "@/components/base/page";
import model from "./model";
import { resultHeaders } from "./config";
import { session } from "@/store/modules/session";
import { Component } from 'vue-property-decorator';
import { BasePage } from '@/components/base/page';
import model from './model';
import { resultHeaders } from './config';
import { session } from '@/store/modules/session';
@Component
export default class RawReceiptDetail extends BasePage {
/**
* 页面Module
*/
model = model;
/**
* 表头
*/
//
headers = resultHeaders;
index() {
this.toPage(this.page.raw.handover.picking.index);
}
/**
* 按单
*/
//
async onOrder() {
const list = this.model.proOrderResultList;
await this.model.lockProOrderResult(list);
this.toPage(this.page.raw.handover.picking.byorder);
}
/**
* 汇总
*/
//
async onAggregate() {
const orderOutIdList = this.model.proOrderResultList.map(
(_: any) => _.orderOutId
);
const params = {
factoryCode: session.factoryCode,
loginName: session.loginName,
orderOutIdList,
};
await this.model.queryAggregateList(params);
if (this.model.aggregateList.length === 0) {
return;
}
// const orderOutIdList = this.model.proOrderResultList.map((_: any) => _.orderOutId);
// const params = {
// factoryCode: session.factoryCode,
// loginName: session.loginName,
// orderOutIdList,
// };
// await this.model.queryAggregateList(params);
// if (this.model.aggregateList.length === 0) {
// return;
// }
this.toPage(this.page.raw.handover.picking.bysummary);
}
}
</script>
<style lang="scss" scoped>
.page-receipt-detail {
background: #f2f2f2
linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat;
background: #f2f2f2 linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1b45b1 100%) no-repeat;
background-size: 100% 600rpx;
padding: 30rpx;
min-height: 100%;

Loading…
Cancel
Save