change - 新建生产任务:销售订单批量创建
parent
dbe44bba43
commit
5415413483
@ -0,0 +1,306 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="100px">
|
||||
<el-form-item label="类型" prop="saleOrderClassfication">
|
||||
<el-select v-model="queryParams.saleOrderClassfication" placeholder="请选择类型" clearable>
|
||||
<el-option
|
||||
v-for="dict in dict.type.mes_sale_order_classfication"
|
||||
:key="dict.value"
|
||||
:label="dict.label"
|
||||
:value="dict.value"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="销售订单编号" prop="saleorderCode">
|
||||
<el-input
|
||||
v-model="queryParams.saleorderCode"
|
||||
placeholder="请输入销售订单编号"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="物料编码" prop="materialCode">
|
||||
<el-input
|
||||
v-model="queryParams.materialCode"
|
||||
placeholder="请输入物料编码"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="物料名称" prop="materialName">
|
||||
<el-input
|
||||
v-model="queryParams.materialName"
|
||||
placeholder="请输入物料名称"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item label="物料规格" prop="materialSpec">
|
||||
<el-input
|
||||
v-model="queryParams.materialSpec"
|
||||
placeholder="请输入物料规格"
|
||||
clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-table v-loading="loading" :data="saleOrderList"
|
||||
@selection-change="handleSelectionChange"
|
||||
ref="selectSaleOrderRef">
|
||||
<el-table-column type="selection" width="50" />
|
||||
<el-table-column label="主键标识" align="center" prop="saleOrderId" v-if="columns[0].visible"/>
|
||||
<el-table-column label="ERP主键" align="center" prop="erpId" v-if="columns[1].visible"/>
|
||||
<el-table-column label="ERP订单明细ID" align="center" prop="fentryId" v-if="columns[2].visible"/>
|
||||
<el-table-column label="类型" align="center" prop="saleOrderClassfication">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.mes_sale_order_classfication" :value="scope.row.saleOrderClassfication"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="销售订单号" align="center" prop="saleorderCode" width="100">
|
||||
<template slot-scope="scope">
|
||||
<el-button
|
||||
type="text"
|
||||
class="wrap-text-button"
|
||||
@mouseover="hover = true"
|
||||
@mouseleave="hover = false"
|
||||
@click="getRelateList(scope.row)"
|
||||
v-if="scope.row.saleOrderClassfication!=='1'"
|
||||
>
|
||||
{{ scope.row.saleorderCode }}
|
||||
</el-button>
|
||||
<p v-if="scope.row.saleOrderClassfication==='1'">{{ scope.row.saleorderCode }}</p>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="单据状态" align="center" prop="documentStatus" v-if="columns[5].visible" >
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.document_status" :value="scope.row.documentStatus"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="所属工厂" align="center" prop="factoryId" v-if="columns[6].visible"/>
|
||||
<el-table-column label="所属产线" align="center" prop="prodlineId" v-if="columns[7].visible"/>
|
||||
<el-table-column label="物料ID" align="center" prop="materialId" v-if="columns[8].visible" width="120"/>
|
||||
<el-table-column label="物料编码" align="center" prop="materialCode" v-if="columns[9].visible" width="140"/>
|
||||
<el-table-column label="物料名称" align="center" prop="materialName" v-if="columns[10].visible" width="100"/>
|
||||
<el-table-column label="物料规格" align="center" prop="materialSpec" width="180"/>
|
||||
<el-table-column label="订单数量" align="center" prop="orderAmount" v-if="columns[12].visible"/>
|
||||
<el-table-column label="已发布数量" align="center" prop="releaseQty" v-if="columns[14].visible" width="100"/>
|
||||
<el-table-column label="下达任务标识" align="center" prop="isTaskFlag" v-if="columns[28].visible" width="100">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.is_release" :value="scope.row.isTaskFlag"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="完成数量" align="center" prop="completeAmount" v-if="columns[13].visible"/>
|
||||
<el-table-column label="是否已下达计划" align="center" prop="isRelease" v-if="columns[15].visible" >
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.is_release" :value="scope.row.isRelease"/>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="审核日期" align="center" prop="approveDate" width="180" v-if="columns[16].visible">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.approveDate, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="ERP最后修改日期" align="center" prop="erpModifyDate" width="180" v-if="columns[17].visible">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.erpModifyDate, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="计划交货日期" align="center" prop="planDeliveryDate" v-if="columns[18].visible" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.planDeliveryDate, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="备注" align="center" prop="remark" v-if="columns[23].visible"/>
|
||||
</el-table>
|
||||
<pagination
|
||||
v-show="total>0"
|
||||
:total="total"
|
||||
:page.sync="queryParams.pageNum"
|
||||
:limit.sync="queryParams.pageSize"
|
||||
@pagination="getList"
|
||||
/>
|
||||
<el-dialog :title="relateTitle" :visible.sync="relateOpen" append-to-body>
|
||||
<el-table v-loading="relateLoading" :data="relateSaleOrderList">
|
||||
<el-table-column label="销售订单号" align="center" prop="saleorderCode"/>
|
||||
<el-table-column label="物料ID" align="center" prop="materialId" v-if="false"/>
|
||||
<el-table-column label="物料编码" align="center" prop="materialCode"/>
|
||||
<el-table-column label="物料名称" align="center" prop="materialName"/>
|
||||
<el-table-column label="物料规格" align="center" prop="materialSpec"/>
|
||||
<el-table-column label="订单数量" align="center" prop="orderAmount"/>
|
||||
<el-table-column label="计划交货日期" align="center" prop="planDeliveryDate">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.planDeliveryDate, '{y}-{m}-{d} {h}:{i}:{s}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
<pagination
|
||||
v-show="relateTotal>0"
|
||||
:total="relateTotal"
|
||||
:page.sync="relateQueryParams.pageNum"
|
||||
:limit.sync="relateQueryParams.pageSize"
|
||||
@pagination="getRelateList"
|
||||
/>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listSaleOrder, getSaleOrder, delSaleOrder, addSaleOrder, updateSaleOrder } from "@/api/mes/saleOrder";
|
||||
import {getSaleOrders} from "@/api/mes/productOrder"
|
||||
|
||||
export default {
|
||||
name: "BatchSaleOrder",
|
||||
dicts: ['document_status', 'is_release', 'active_flag','mes_sale_order_classfication'],
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 销售订单信息表格数据
|
||||
saleOrderList: [],
|
||||
selectedRows: [],
|
||||
relateTotal:0,
|
||||
//关联的销售订单数据
|
||||
relateSaleOrderList:[],
|
||||
// 遮罩层
|
||||
relateLoading: true,
|
||||
// 弹出层标题
|
||||
relateTitle: "",
|
||||
// 是否显示弹出层
|
||||
relateOpen: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
erpId: null,
|
||||
fentryId: null,
|
||||
saleorderCode: null,
|
||||
saleorderLinenumber: null,
|
||||
documentStatus: null,
|
||||
factoryId: null,
|
||||
prodlineId: null,
|
||||
materialId: null,
|
||||
materialCode: null,
|
||||
materialName: null,
|
||||
matkl: null,
|
||||
orderAmount: null,
|
||||
completeAmount: null,
|
||||
releaseQty: null,
|
||||
isRelease: null,
|
||||
approveDate: null,
|
||||
erpModifyDate: null,
|
||||
planDeliveryDate: null,
|
||||
beginDate: null,
|
||||
endDate: null,
|
||||
completeDate: null,
|
||||
isFlag: null,
|
||||
},
|
||||
relateQueryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
},
|
||||
columns: [
|
||||
{ key: 0, label: `主键标识`, visible: false },
|
||||
{ key: 1, label: `ERP主键`, visible: false },
|
||||
{ key: 2, label: `ERP订单明细ID`, visible: false },
|
||||
{ key: 3, label: `销售订单编号`, visible: true },
|
||||
{ key: 4, label: `销售订单行号`, visible: true },
|
||||
{ key: 5, label: `单据状态`, visible: false },
|
||||
{ key: 6, label: `所属工厂`, visible: false },
|
||||
{ key: 7, label: `所属产线`, visible: false },
|
||||
{ key: 8, label: `物料ID`, visible: false },
|
||||
{ key: 9, label: `物料编码`, visible: true },
|
||||
{ key: 10, label: `物料名称`, visible: true },
|
||||
{ key: 11, label: `物料组`, visible: false },
|
||||
{ key: 12, label: `订单计划数量`, visible: true },
|
||||
{ key: 13, label: `完成数量`, visible: true },
|
||||
{ key: 14, label: `已发布数量`, visible: true },
|
||||
{ key: 15, label: `是否已下达计划`, visible: false },
|
||||
{ key: 16, label: `审核日期`, visible: false },
|
||||
{ key: 17, label: `ERP最后修改日期`, visible: false },
|
||||
{ key: 18, label: `计划交货日期`, visible: true },
|
||||
{ key: 19, label: `计划开始日期`, visible: true },
|
||||
{ key: 20, label: `计划结束日期`, visible: true },
|
||||
{ key: 21, label: `完成日期`, visible: true },
|
||||
{ key: 22, label: `是否标识`, visible: true },
|
||||
{ key: 23, label: `备注`, visible: false },
|
||||
{ key: 24, label: `创建人`, visible: false },
|
||||
{ key: 25, label: `创建时间`, visible: false },
|
||||
{ key: 26, label: `更新人`, visible: false },
|
||||
{ key: 27, label: `更新时间`, visible: false },
|
||||
{ key: 28, label: `下达任务标识`, visible: true },
|
||||
],
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.selectedRows = [];
|
||||
this.ids = []
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询销售订单信息列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
this.queryParams.selectFlag = "1";
|
||||
this.queryParams.relateFlag = null;
|
||||
getSaleOrders(this.queryParams).then(response => {
|
||||
this.saleOrderList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.selectedRows = selection;
|
||||
this.ids = selection.map(item => item.saleOrderId)
|
||||
this.single = selection.length!==1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 查询销售订单信息列表 */
|
||||
getRelateList(row) {
|
||||
this.relateOpen = true;
|
||||
this.relateTitle = "关联销售订单信息";
|
||||
this.relateLoading = true;
|
||||
this.relateQueryParams.selectFlag = null;
|
||||
this.relateQueryParams.relateFlag = "1";
|
||||
this.relateQueryParams.virtualSaleOrderId = row.saleOrderId;
|
||||
getSaleOrders(this.relateQueryParams).then(response => {
|
||||
this.relateSaleOrderList = response.rows;
|
||||
this.relateTotal = response.total;
|
||||
this.relateLoading = false;
|
||||
});
|
||||
},
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
clearSelection() {
|
||||
this.$refs.selectSaleOrderRef.clearSelection();
|
||||
this.selectedRows = [];
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
<style lang="less" scoped>
|
||||
.wrap-text-button {
|
||||
white-space: normal;
|
||||
word-break: break-all;
|
||||
}
|
||||
</style>
|
Loading…
Reference in New Issue