cosmoim-852 fix 新增俄罗斯交接界面
parent
5e827cf959
commit
ef716f655c
@ -0,0 +1,221 @@
|
||||
/**
|
||||
* 汇总查询表格列
|
||||
*/
|
||||
import vm from '@/main';
|
||||
export const headers = [
|
||||
{
|
||||
label: vm.$t('message.Pi_OrderNo'),
|
||||
key: 'prdOrder',
|
||||
width: 250,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount', //需求数量
|
||||
width: 255,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_materielNo'),
|
||||
key: 'materialCode', //物料号
|
||||
width: 250,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.CommissionedMaterielDesc'),
|
||||
key: 'materialDesc', //物料描述
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Summary_ProductionDate'),
|
||||
key: 'requireDate', //生产日期
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.product_FGCode'),
|
||||
key: 'prodCode', //成品编码
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_FinishedProductModel'),
|
||||
key: 'prodDesc', //成品型号
|
||||
width: 300,
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
* 汇总查询结果表格列
|
||||
*/
|
||||
export const resultHeaders = [
|
||||
{
|
||||
label: vm.$t('message.po_MaterielNo'),
|
||||
key: 'materialCode',
|
||||
width: 220,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_CumulativePickingQuantity'),
|
||||
key: 'totalMoAmount',
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_HandoverQuantity'),
|
||||
key: 'totalHvAmount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_Station'),
|
||||
key: 'sendSpot',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_MaterielDes'),
|
||||
key: 'materialDesc',
|
||||
width: 350,
|
||||
},
|
||||
{
|
||||
label: 'MRP',
|
||||
key: 'mrpCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_unit'),
|
||||
key: 'unit',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_OrderNo'),
|
||||
key: 'prdOrder',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_FinishedProductModel'),
|
||||
key: 'proType',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_Location'),
|
||||
key: 'wkposCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.product_FGCode'),
|
||||
key: 'prodCode', //成品编码
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_FinishedProductModel'),
|
||||
key: 'prodDesc', //成品型号
|
||||
width: 300,
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
* 汇总交接查询结果表格列
|
||||
*/
|
||||
export const summaryHeaders = [
|
||||
{
|
||||
label: vm.$t('message.po_MaterielNo'),
|
||||
key: 'materialCode',
|
||||
width: 220,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Summary_QuantityOfThisHandover'),
|
||||
key: 'hvAmount',
|
||||
},
|
||||
// {
|
||||
// label: vm.$t('message.po_DemandQuantity'),
|
||||
// key: 'amount',
|
||||
// },
|
||||
{
|
||||
label: vm.$t('message.Pi_CumulativePickingQuantity'),
|
||||
key: 'totalMoAmount',
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_HandoverQuantity'),
|
||||
key: 'totalHvAmount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_Station'),
|
||||
key: 'sendSpot',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_MaterielDes'),
|
||||
key: 'materialDesc',
|
||||
width: 350,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_unit'),
|
||||
key: 'unit',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Summary_FinishedProductMaterialNumber'),
|
||||
key: 'prdMaterialCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_Location'),
|
||||
key: 'wkposCode',
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
* 按单查询结果表格列
|
||||
*/
|
||||
export const orderHeaders = [
|
||||
{
|
||||
label: vm.$t('message.po_MaterielNo'),
|
||||
key: 'materialCode',
|
||||
width: 220,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Summary_QuantityOfThisHandover'),
|
||||
key: 'hvAmount',
|
||||
},
|
||||
// {
|
||||
// label: vm.$t('message.po_DemandQuantity'),
|
||||
// key: 'amount',
|
||||
// },
|
||||
{
|
||||
label: vm.$t('message.Pi_CumulativePickingQuantity'),
|
||||
key: 'totalMoAmount',
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_HandoverQuantity'),
|
||||
key: 'totalHvAmount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_Station'),
|
||||
key: 'sendSpot',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_MaterielDes'),
|
||||
key: 'materialDesc',
|
||||
width: 350,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_unit'),
|
||||
key: 'unit',
|
||||
},
|
||||
{
|
||||
label: 'MRP',
|
||||
key: 'mrpCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_OrderNo'),
|
||||
key: 'prdOrder',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_Location'),
|
||||
key: 'wkposCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.product_FGCode'),
|
||||
key: 'prodCode', //成品编码
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_FinishedProductModel'),
|
||||
key: 'prodDesc', //成品型号
|
||||
width: 300,
|
||||
},
|
||||
];
|
@ -0,0 +1,177 @@
|
||||
<template>
|
||||
<view class="page-receipt-detail">
|
||||
<view class="header">
|
||||
<view class="left">
|
||||
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack({})" />
|
||||
</view>
|
||||
<view class="title">{{ $t('message.Summary_Result') }}</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>
|
||||
</view>
|
||||
<view class="bottom-bar">
|
||||
<div class="container">
|
||||
<u-row>
|
||||
<u-col :span="4">
|
||||
<u-button type="primary" @click="onAggregate">
|
||||
{{ $t('message.Pi_Summary') }}
|
||||
</u-button>
|
||||
</u-col>
|
||||
<u-col :span="4">
|
||||
<u-button type="success" @click="onOrder">
|
||||
{{ $t('message.Pi_ByOrder') }}
|
||||
</u-button>
|
||||
</u-col>
|
||||
<!-- <u-col :span="3">-->
|
||||
<!-- <u-button type="warning"> 辅料 </u-button>-->
|
||||
<!-- </u-col>-->
|
||||
<u-col :span="4">
|
||||
<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';
|
||||
|
||||
@Component
|
||||
export default class AggregatingResult extends BasePage {
|
||||
/**
|
||||
* 页面Module
|
||||
*/
|
||||
model = model;
|
||||
|
||||
/**
|
||||
* 表头
|
||||
*/
|
||||
headers = resultHeaders;
|
||||
|
||||
/**
|
||||
* 汇总
|
||||
*/
|
||||
async onAggregate() {
|
||||
const orderOutIdList = this.model.proOrderResultList.map((_: any) => _.orderOutId);
|
||||
const params = {
|
||||
factoryCode: session.factoryCode,
|
||||
loginName: session.loginName,
|
||||
orderOutIdList,
|
||||
};
|
||||
await this.model.queryAggregateList(params);
|
||||
this.model.orderOutIdListParams = params;
|
||||
this.toPage(this.page.raw.handover.RUSaggregating.summary);
|
||||
}
|
||||
|
||||
/**
|
||||
* 按单
|
||||
*/
|
||||
async onOrder() {
|
||||
const orderOutIdList = await this.model.proOrderResultList.map((_: any) => _.orderOutId);
|
||||
const params = {
|
||||
factoryCode: session.factoryCode,
|
||||
loginName: session.loginName,
|
||||
orderOutIdList,
|
||||
};
|
||||
await this.model.queryOrderList({
|
||||
queryParams: params,
|
||||
proOrderResultList: this.model.proOrderResultList,
|
||||
});
|
||||
this.model.orderOutIdListParams = params;
|
||||
this.toPage(this.page.raw.handover.RUSaggregating.order);
|
||||
}
|
||||
|
||||
/**
|
||||
* 辅料
|
||||
*/
|
||||
async onAccessory() {
|
||||
const orderOutIdList = this.model.proOrderResultList.map((_: any) => _.orderOutId);
|
||||
const params = {
|
||||
factoryCode: session.factoryCode,
|
||||
loginName: session.loginName,
|
||||
orderOutIdList,
|
||||
};
|
||||
await this.model.queryAccessoryList(params);
|
||||
this.toPage(this.page.raw.handover.aggregating.accessory);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.page-receipt-detail {
|
||||
background: #f2f2f2 linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat;
|
||||
background-size: 100% 600rpx;
|
||||
padding: 30rpx;
|
||||
min-height: 100%;
|
||||
padding-top: 118rpx;
|
||||
padding-bottom: 132rpx;
|
||||
|
||||
.header {
|
||||
position: fixed;
|
||||
top: 36rpx;
|
||||
left: 0;
|
||||
right: 0;
|
||||
display: flex;
|
||||
height: 88rpx;
|
||||
line-height: 88rpx;
|
||||
color: #fff;
|
||||
font-size: 34rpx;
|
||||
font-weight: 500;
|
||||
text-align: center;
|
||||
|
||||
.title {
|
||||
flex: 3;
|
||||
}
|
||||
|
||||
.left,
|
||||
.right {
|
||||
flex: 1;
|
||||
}
|
||||
|
||||
.icon {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 88rpx;
|
||||
height: 88rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.table-wrapper {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.form {
|
||||
background-color: #fff;
|
||||
padding: 40rpx;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
|
||||
.bottom-bar {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
z-index: 30;
|
||||
|
||||
.container {
|
||||
background: #ffffff;
|
||||
box-shadow: 0 1rpx 20rpx 0 rgba(128, 128, 128, 0.2);
|
||||
padding: 20rpx;
|
||||
}
|
||||
|
||||
.extra {
|
||||
background-color: #fff;
|
||||
margin: 5px;
|
||||
border-radius: 5px;
|
||||
padding: 0 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
@ -0,0 +1,186 @@
|
||||
/**
|
||||
* 汇总查询表格列
|
||||
*/
|
||||
import vm from '@/main';
|
||||
export const headers = [
|
||||
{
|
||||
label: vm.$t('message.Pi_OrderNo'),
|
||||
key: 'prdOrder',
|
||||
width: 250,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount',
|
||||
width: 255,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_materielNo'),
|
||||
key: 'materialCode',
|
||||
width: 250,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.CommissionedMaterielDesc'),
|
||||
key: 'materialDesc',
|
||||
width: 300,
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
* 汇总查询结果表格列
|
||||
*/
|
||||
export const resultHeaders = [
|
||||
{
|
||||
label: vm.$t('message.po_MaterielNo'),
|
||||
key: 'materialCode',
|
||||
width: 220,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_CumulativePickingQuantity'),
|
||||
key: 'totalMoAmount',
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_HandoverQuantity'),
|
||||
key: 'totalHvAmount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_Station'),
|
||||
key: 'sendSpot',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_MaterielDes'),
|
||||
key: 'materialDesc',
|
||||
width: 350,
|
||||
},
|
||||
{
|
||||
label: 'MRP',
|
||||
key: 'mrpCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_unit'),
|
||||
key: 'unit',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_OrderNo'),
|
||||
key: 'prdOrder',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_FinishedProductModel'),
|
||||
key: 'proType',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_Location'),
|
||||
key: 'wkposCode',
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
* 汇总交接查询结果表格列
|
||||
*/
|
||||
export const summaryHeaders = [
|
||||
{
|
||||
label: vm.$t('message.po_MaterielNo'),
|
||||
key: 'materialCode',
|
||||
width: 220,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Summary_QuantityOfThisHandover'),
|
||||
key: 'hvAmount',
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_CumulativePickingQuantity'),
|
||||
key: 'totalMoAmount',
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_HandoverQuantity'),
|
||||
key: 'totalHvAmount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_Station'),
|
||||
key: 'sendSpot',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_MaterielDes'),
|
||||
key: 'materialDesc',
|
||||
width: 350,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_unit'),
|
||||
key: 'unit',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_Location'),
|
||||
key: 'wkposCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.inventory'),
|
||||
key: 'virtualAmount',
|
||||
},
|
||||
];
|
||||
|
||||
/**
|
||||
* 按单查询结果表格列
|
||||
*/
|
||||
export const orderHeaders = [
|
||||
{
|
||||
label: vm.$t('message.po_MaterielNo'),
|
||||
key: 'materialCode',
|
||||
width: 220,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_DemandQuantity'),
|
||||
key: 'amount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Summary_QuantityOfThisHandover'),
|
||||
key: 'hvAmount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_CumulativePickingQuantity'),
|
||||
key: 'totalMoAmount',
|
||||
width: 300,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_HandoverQuantity'),
|
||||
key: 'totalHvAmount',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_Station'),
|
||||
key: 'sendSpot',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_MaterielDes'),
|
||||
key: 'materialDesc',
|
||||
width: 350,
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_unit'),
|
||||
key: 'unit',
|
||||
},
|
||||
{
|
||||
label: 'MRP',
|
||||
key: 'mrpCode',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_OrderNo'),
|
||||
key: 'prdOrder',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.Pi_FinishedProductModel'),
|
||||
key: 'proType',
|
||||
},
|
||||
{
|
||||
label: vm.$t('message.po_Location'),
|
||||
key: 'wkposCode',
|
||||
},
|
||||
];
|
@ -0,0 +1,184 @@
|
||||
import { Action, getModule, Module, Mutation, MutationAction, VuexModule } from 'vuex-module-decorators';
|
||||
import store from '@/store';
|
||||
import http from '@/utils/request';
|
||||
import { url } from '@/utils/url';
|
||||
import vm from '@/main';
|
||||
export interface SummaryItem {
|
||||
checked: any;
|
||||
materialCode: string;
|
||||
amount: number;
|
||||
totalMoAmount: number;
|
||||
totalHvAmount: number;
|
||||
materialDesc: string;
|
||||
unit: string;
|
||||
wkposCode: string;
|
||||
hvAmount: number;
|
||||
prdMaterialDesc: string;
|
||||
prdMaterialCode: string;
|
||||
sapFactoryCode: string;
|
||||
prdOrder: string;
|
||||
sendSpot: string;
|
||||
oriSendSpot: string;
|
||||
mrpCode: string;
|
||||
}
|
||||
|
||||
@Module({
|
||||
namespaced: true,
|
||||
dynamic: true,
|
||||
store,
|
||||
name: 'raw.handover.RUS-virtual',
|
||||
})
|
||||
export class VirtualModule extends VuexModule {
|
||||
/**
|
||||
* sap 工厂代码
|
||||
*/
|
||||
sapFactoryCode = '';
|
||||
nextQueryParams: any = {};
|
||||
CategoryList: any = [];
|
||||
|
||||
/**
|
||||
* 查询列表
|
||||
*/
|
||||
proOrderList = [];
|
||||
|
||||
/**
|
||||
* 查询结果列表
|
||||
*/
|
||||
proOrderResultList = [];
|
||||
|
||||
/**
|
||||
* 汇总列表
|
||||
*/
|
||||
summaryList: SummaryItem[] = [];
|
||||
|
||||
/**
|
||||
* 是否全选
|
||||
*/
|
||||
get isCheckedAll() {
|
||||
return !this.proOrderList.filter((_: any) => !_.checked).length;
|
||||
}
|
||||
|
||||
/**
|
||||
* 是否有选择项
|
||||
*/
|
||||
get hasChecked() {
|
||||
return this.checkedProOrderList.length > 0;
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取选中的查询列表
|
||||
*/
|
||||
get checkedProOrderList() {
|
||||
return this.proOrderList.filter((_: any) => _.checked);
|
||||
}
|
||||
|
||||
/**
|
||||
* 设置 sap 工厂代码
|
||||
*/
|
||||
@Mutation
|
||||
setSapFactoryCode(params: { sapFactoryCode: string }) {
|
||||
this.sapFactoryCode = params.sapFactoryCode;
|
||||
}
|
||||
|
||||
/**
|
||||
* 清空查询结果列表
|
||||
*/
|
||||
@Mutation
|
||||
clearProOrderResultList() {
|
||||
this.proOrderResultList = [];
|
||||
}
|
||||
/**
|
||||
* 保存查询条件
|
||||
*/
|
||||
@MutationAction
|
||||
async QueryParams(params: any) {
|
||||
const nextQueryParams = params;
|
||||
return { nextQueryParams };
|
||||
}
|
||||
/**
|
||||
* 查询列表
|
||||
*/
|
||||
@Mutation
|
||||
clearProOrderList() {
|
||||
this.proOrderList = [];
|
||||
}
|
||||
/**
|
||||
* 更新汇总列表项
|
||||
*/
|
||||
@Mutation
|
||||
updateSummaryItem({ index, newItem }: { index: number; newItem: SummaryItem }) {
|
||||
this.summaryList.splice(index, 1, newItem);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询看单号
|
||||
* @param params
|
||||
*/
|
||||
@MutationAction
|
||||
async queryProOrder(params: any) {
|
||||
const { list: proOrderList }: any = await http.post(url.virtual.query.orderno, params);
|
||||
//const proOrderList = list.map((v: any) => ({ prdOrder: v.prdOrder, amount: v.amount, materialCode: v.materialCode, materialDesc: v.materialDesc }));
|
||||
proOrderList.forEach((_: any) => (_.checked = true));
|
||||
if (!proOrderList.length) {
|
||||
vm.customToast(vm.$t('message.Pi_NoDataFound') as any);
|
||||
}
|
||||
return { proOrderList };
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询结果列表
|
||||
* @param params
|
||||
*/
|
||||
@MutationAction
|
||||
async queryProOrderResult(params: any) {
|
||||
const { list: proOrderResultList }: any = await http.post(url.virtual.query.ordoutlist, params);
|
||||
proOrderResultList.forEach((item: any) => {
|
||||
item.hvAmount = 0;
|
||||
});
|
||||
return { proOrderResultList };
|
||||
}
|
||||
//查询目标库位
|
||||
@MutationAction
|
||||
async getSendSpotList1(params: any = {}) {
|
||||
const res: any = await http.post(url.sumscan.query.getSendSpotList, params);
|
||||
const CategoryList = [];
|
||||
res.data.forEach((item: any) => {
|
||||
const arr: any = {
|
||||
label: item.sendSpot,
|
||||
value: item.sendSpot,
|
||||
};
|
||||
CategoryList.push(arr);
|
||||
});
|
||||
console.log('res', res);
|
||||
console.log('LocList', CategoryList);
|
||||
return { CategoryList };
|
||||
}
|
||||
|
||||
/**
|
||||
* 汇总-查询列表
|
||||
* @param params
|
||||
*/
|
||||
@MutationAction
|
||||
async querySummaryList(params: any) {
|
||||
const { list: summaryList }: any = await http.post(url.virtual.query.hzlist, params);
|
||||
return { summaryList };
|
||||
}
|
||||
|
||||
/**
|
||||
* 汇总-检查数量
|
||||
*/
|
||||
@Action
|
||||
async checkAmount(params: { sapFactoryCode: string; loginName: string; materialCode: string; unit: string; mrpCode: string; factoryCode: string; sendSpot: string; amount: string }) {
|
||||
return await http.post(url.virtual.check.amount, params);
|
||||
}
|
||||
|
||||
/**
|
||||
* 汇总-上传结果
|
||||
*/
|
||||
@Action
|
||||
async uploadSummaryList(params: { sapFactoryCode: string; operatorPass: string; factoryCode: string; loginName: string; dataList: any[]; includeOrderOutIdList: string[] }) {
|
||||
return await http.post(url.virtual.u.hzlist, params);
|
||||
}
|
||||
}
|
||||
|
||||
export default getModule(VirtualModule);
|
@ -0,0 +1,131 @@
|
||||
<template>
|
||||
<view class="page-receipt-detail">
|
||||
<view class="header">
|
||||
<view class="left">
|
||||
<u-icon class="icon" name="arrow-left" @click="uni.navigateBack()" />
|
||||
</view>
|
||||
<view class="title">{{ $t('message.Summary_Result') }}</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>
|
||||
</view>
|
||||
<view class="bottom-bar">
|
||||
<div class="container">
|
||||
<u-row>
|
||||
<u-col :span="8">
|
||||
<u-button type="primary" @click="onVirtual"> {{ $t('message.dn_Confirm') }} </u-button>
|
||||
</u-col>
|
||||
<u-col :span="4">
|
||||
<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';
|
||||
|
||||
@Component
|
||||
export default class AggregatingResult extends BasePage {
|
||||
/**
|
||||
* 页面Module
|
||||
*/
|
||||
model = model;
|
||||
|
||||
/**
|
||||
* 表头
|
||||
*/
|
||||
headers = resultHeaders;
|
||||
|
||||
/**
|
||||
* 汇总
|
||||
*/
|
||||
async onVirtual() {
|
||||
// const orderOutIdList = this.model.proOrderResultList.map((_: any) => _.orderOutId);
|
||||
// const params = {
|
||||
// factoryCode: session.factoryCode,
|
||||
// loginName: session.loginName,
|
||||
// orderOutIdList,
|
||||
// };
|
||||
// await this.model.querySummaryList(params);
|
||||
this.toPage(this.page.raw.handover.RUSvirtual.summary);
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style lang="scss" scoped>
|
||||
.page-receipt-detail {
|
||||
background: #f2f2f2 linear-gradient(0deg, #f2f2f2 0%, #4a78ea 51%, #1753ea 100%) no-repeat;
|
||||
background-size: 100% 600rpx;
|
||||
padding: 30rpx;
|
||||
min-height: 100%;
|
||||
padding-top: calc(var(--status-bar-height) + 118rpx);
|
||||
padding-bottom: 132rpx;
|
||||
|
||||
.header {
|
||||
position: fixed;
|
||||
top: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
display: flex;
|
||||
padding-top: var(--status-bar-height);
|
||||
height: calc(var(--status-bar-height) + 88rpx);
|
||||
line-height: 88rpx;
|
||||
color: #fff;
|
||||
font-size: 34rpx;
|
||||
font-weight: 500;
|
||||
text-align: center;
|
||||
.title {
|
||||
flex: 3;
|
||||
}
|
||||
.left,
|
||||
.right {
|
||||
flex: 1;
|
||||
}
|
||||
.icon {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
width: 88rpx;
|
||||
height: 88rpx;
|
||||
}
|
||||
}
|
||||
|
||||
.table-wrapper {
|
||||
background-color: #fff;
|
||||
}
|
||||
|
||||
.form {
|
||||
background-color: #fff;
|
||||
padding: 40rpx;
|
||||
border-radius: 10rpx;
|
||||
}
|
||||
|
||||
.bottom-bar {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
left: 0;
|
||||
right: 0;
|
||||
z-index: 1000;
|
||||
|
||||
.container {
|
||||
background: #ffffff;
|
||||
box-shadow: 0 1rpx 20rpx 0 rgba(128, 128, 128, 0.2);
|
||||
padding: 20rpx;
|
||||
}
|
||||
|
||||
.extra {
|
||||
background-color: #fff;
|
||||
margin: 5px;
|
||||
border-radius: 5px;
|
||||
padding: 0 10px;
|
||||
}
|
||||
}
|
||||
}
|
||||
</style>
|
Loading…
Reference in New Issue