|
|
@@ -19,7 +19,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
<div class="main" style="padding: 0 10px">
|
|
|
- <div v-if="activeComp == 'collectionPlan'">
|
|
|
+ <div v-if="activeComp == 'paymentPlan'">
|
|
|
<div class="ele-border-lighter form-content" v-loading="loading">
|
|
|
<search-table @search="reload"></search-table>
|
|
|
|
|
|
@@ -51,13 +51,13 @@
|
|
|
</template>
|
|
|
|
|
|
<!-- 查看详情列 -->
|
|
|
- <template v-slot:relationName="{ row }">
|
|
|
+ <template v-slot:detailNo="{ row }">
|
|
|
<el-link
|
|
|
type="primary"
|
|
|
:underline="false"
|
|
|
@click="openDetail(row)"
|
|
|
>
|
|
|
- {{ row.relationName }}
|
|
|
+ {{ row.detailNo }}
|
|
|
</el-link>
|
|
|
</template>
|
|
|
<template v-slot:orderNo="{ row }">
|
|
|
@@ -131,7 +131,7 @@
|
|
|
</div>
|
|
|
</div>
|
|
|
</el-card>
|
|
|
- <detailDialog ref="detailDialogRef"></detailDialog>
|
|
|
+ <detailDialog ref="detailDialogRef" menu="purchase"></detailDialog>
|
|
|
<contractr-detail ref="contractDetailRef"></contractr-detail>
|
|
|
<purchasingDetail ref="purchasingDetailRef"></purchasingDetail>
|
|
|
<purchasePlanDetail ref="purchasePlanDetailRef"></purchasePlanDetail>
|
|
|
@@ -191,6 +191,8 @@ import exceptionList from '@/views/saleManage/saleOrder/exceptionManagement/exce
|
|
|
import { getToDoReminder } from '@/api/common/index';
|
|
|
import printPurchaseOrder from '@/views/purchasingManage/purchaseOrder/invoice/components/print-PurchaseOrder.vue';
|
|
|
import { enterprisePage } from '@/api/contractManage/contractBook';
|
|
|
+ import { receiptPaymentPlanPage } from '@/api/financialManage/payAndCollectPlan';
|
|
|
+ import { shippingModeOp, transactionMethodsOp } from '@/enum/dict.js';
|
|
|
|
|
|
export default {
|
|
|
mixins: [dictMixins, tabMixins],
|
|
|
@@ -210,9 +212,11 @@ export default {
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
|
- activeComp: 'collectionPlan',
|
|
|
+ activeComp: 'paymentPlan',
|
|
|
+ shippingModeOp,
|
|
|
+ transactionMethodsOp,
|
|
|
tabOptions: [
|
|
|
- { key: 'collectionPlan', name: '收款计划管理', reminder: 'purchaseOrderNum' },
|
|
|
+ { key: 'paymentPlan', name: '付款计划管理', reminder: 'purchaseOrderNum' },
|
|
|
],
|
|
|
|
|
|
selection: [], //单选中集合
|
|
|
@@ -242,33 +246,36 @@ export default {
|
|
|
fixed: 'left'
|
|
|
},
|
|
|
{
|
|
|
- prop: 'orderNo',
|
|
|
+ prop: 'detailNo',
|
|
|
label: '付款计划编码',
|
|
|
align: 'center',
|
|
|
sortable: true,
|
|
|
- slot: 'orderNo',
|
|
|
+ slot: 'detailNo',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 200,
|
|
|
},
|
|
|
{
|
|
|
- prop: 'orderNo',
|
|
|
+ prop: 'sourceOrderNo',
|
|
|
label: '订单编码',
|
|
|
align: 'center',
|
|
|
sortable: true,
|
|
|
- slot: 'orderNo',
|
|
|
+ slot: 'sourceOrderNo',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 200,
|
|
|
},
|
|
|
{
|
|
|
- prop: 'sourceTypeName',
|
|
|
+ prop: 'sourceOrderType',
|
|
|
label: '订单类型',
|
|
|
align: 'center',
|
|
|
sortable: true,
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 200,
|
|
|
+ formatter: (row) => {
|
|
|
+ return row.sourceOrderType == 2 ? '采购订单' : '销售订单';
|
|
|
+ }
|
|
|
},
|
|
|
{
|
|
|
- prop: 'sourceTypeName',
|
|
|
+ prop: 'contractNo',
|
|
|
label: '合同编码',
|
|
|
align: 'center',
|
|
|
sortable: true,
|
|
|
@@ -276,7 +283,7 @@ export default {
|
|
|
minWidth: 200,
|
|
|
},
|
|
|
{
|
|
|
- prop: 'sourceTypeName',
|
|
|
+ prop: 'contractCode',
|
|
|
label: '合同编号',
|
|
|
align: 'center',
|
|
|
sortable: true,
|
|
|
@@ -284,7 +291,7 @@ export default {
|
|
|
minWidth: 200,
|
|
|
},
|
|
|
{
|
|
|
- prop: 'sourceTypeName',
|
|
|
+ prop: 'contractName',
|
|
|
label: '合同名称',
|
|
|
align: 'center',
|
|
|
sortable: true,
|
|
|
@@ -292,7 +299,7 @@ export default {
|
|
|
minWidth: 200,
|
|
|
},
|
|
|
{
|
|
|
- prop: 'sourceTypeName',
|
|
|
+ prop: 'invoiceOrderNo',
|
|
|
label: '发票号',
|
|
|
align: 'center',
|
|
|
sortable: true,
|
|
|
@@ -300,97 +307,95 @@ export default {
|
|
|
minWidth: 200,
|
|
|
},
|
|
|
{
|
|
|
- prop: 'relationType',
|
|
|
+ prop: 'relatedReceivableOrderNo',
|
|
|
label: '关联应付编码',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 150,
|
|
|
- formatter: (_row, _column, cellValue) => {
|
|
|
- return _row.relationType == 1
|
|
|
- ? '采购需求单'
|
|
|
- : _row.relationType == 2
|
|
|
- ? '采购计划单'
|
|
|
- : _row.relationType == 3
|
|
|
- ? '采购核价单'
|
|
|
- : _row.relationType == 4
|
|
|
- ? '采购合同'
|
|
|
- : '';
|
|
|
- }
|
|
|
},
|
|
|
{
|
|
|
- prop: 'relationName',
|
|
|
+ prop: 'customerCode',
|
|
|
label: '客户编码',
|
|
|
align: 'center',
|
|
|
- slot: 'relationName',
|
|
|
+ slot: 'customerCode',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 250
|
|
|
},
|
|
|
{
|
|
|
- prop: 'deliveryDate',
|
|
|
+ prop: 'customerName',
|
|
|
label: '客户名称',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 200
|
|
|
},
|
|
|
{
|
|
|
- prop: 'purchaseTypeName',
|
|
|
+ prop: 'settlementMode',
|
|
|
label: '结算方式',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
- minWidth: 140
|
|
|
+ minWidth: 140,
|
|
|
+ formatter: (row) => {
|
|
|
+ return this.getDictValue('结算方式', row.settlementMode);
|
|
|
+ }
|
|
|
},
|
|
|
{
|
|
|
- prop: 'partaName',
|
|
|
+ prop: 'transactionMode',
|
|
|
label: '交易方式',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
- minWidth: 200
|
|
|
+ minWidth: 200,
|
|
|
+ formatter: (row) => {
|
|
|
+ return this.transactionMethodsOp.find(item => item.value == row.transactionMode)?.label || '';
|
|
|
+ }
|
|
|
},
|
|
|
{
|
|
|
- prop: 'partaLinkName',
|
|
|
+ prop: 'deliveryMode',
|
|
|
label: '发货模式',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
- minWidth: 130
|
|
|
+ minWidth: 130,
|
|
|
+ formatter: (row) => {
|
|
|
+ return this.shippingModeOp.find(item => item.value == row.deliveryMode)?.label || '';
|
|
|
+ }
|
|
|
},
|
|
|
|
|
|
{
|
|
|
- prop: 'partaTel',
|
|
|
+ prop: 'issueNumber',
|
|
|
label: '期数',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 130
|
|
|
},
|
|
|
{
|
|
|
- prop: 'productNames',
|
|
|
+ prop: 'paymentType',
|
|
|
label: '款项类型',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 200
|
|
|
},
|
|
|
{
|
|
|
- prop: 'productCodes',
|
|
|
+ prop: 'moneyName',
|
|
|
label: '款项名称',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 140
|
|
|
},
|
|
|
{
|
|
|
- prop: 'batchNos',
|
|
|
+ prop: 'paymentRatio',
|
|
|
label: '比例',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 140
|
|
|
},
|
|
|
{
|
|
|
- prop: 'productCount',
|
|
|
+ prop: 'planPaymentAmount',
|
|
|
label: '计划收款金额',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 140
|
|
|
},
|
|
|
{
|
|
|
- prop: 'inboundCount',
|
|
|
+ prop: 'planPaymentDate',
|
|
|
label: '计划收款日期',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
@@ -398,28 +403,31 @@ export default {
|
|
|
},
|
|
|
|
|
|
{
|
|
|
- prop: 'partbName',
|
|
|
+ prop: 'isInvoice',
|
|
|
label: '是否已开票',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
- minWidth: 250
|
|
|
+ minWidth: 150,
|
|
|
+ formatter: (_row, _column, cellValue) => {
|
|
|
+ return cellValue ? '是' : '否';
|
|
|
+ }
|
|
|
},
|
|
|
{
|
|
|
- prop: 'partbLinkName',
|
|
|
+ prop: 'invoiceAmount',
|
|
|
label: '已开票金额',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 120
|
|
|
},
|
|
|
{
|
|
|
- prop: 'partbTel',
|
|
|
+ prop: 'invoiceDate',
|
|
|
label: '开票日期',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 130
|
|
|
},
|
|
|
{
|
|
|
- prop: 'isInspection',
|
|
|
+ prop: 'isGenerateReceivablePayment',
|
|
|
label: '是否生成应付款项',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
@@ -429,76 +437,79 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
- prop: 'payAmount',
|
|
|
+ prop: 'receivableAmount',
|
|
|
label: '应付金额',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 140
|
|
|
},
|
|
|
{
|
|
|
- prop: 'createUserName',
|
|
|
+ prop: 'receivedAmount',
|
|
|
label: '已付款金额',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 170
|
|
|
},
|
|
|
{
|
|
|
- prop: 'createTime',
|
|
|
+ prop: 'actualReceivablePaymentDate',
|
|
|
label: '实际付款日期',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 170
|
|
|
},
|
|
|
{
|
|
|
- prop: 'progress',
|
|
|
+ prop: 'deliveryStatus',
|
|
|
label: '收货状态',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
formatter: (_row, _column, cellValue) => {
|
|
|
- return purchaseOrderProgressStatusEnum.find(
|
|
|
- (val) => val.value == _row.progress
|
|
|
- )?.label;
|
|
|
+ let options = [
|
|
|
+ { value: 0, label: '待发货' },
|
|
|
+ { value: 1, label: '部分发货' },
|
|
|
+ { value: 2, label: '全部发货' }
|
|
|
+ ];
|
|
|
+ return options.find(item => item.value == cellValue)?.label || '';
|
|
|
},
|
|
|
minWidth: 120
|
|
|
},
|
|
|
{
|
|
|
- prop: 'orderStatus',
|
|
|
- label: '审核状态',
|
|
|
- align: 'center',
|
|
|
- showOverflowTooltip: true,
|
|
|
- minWidth: 100,
|
|
|
- formatter: (_row, _column, cellValue) => {
|
|
|
- return reviewStatus[_row.orderStatus];
|
|
|
- }
|
|
|
- },
|
|
|
- {
|
|
|
- prop: 'orderStatus',
|
|
|
+ prop: 'reconciliationStatus',
|
|
|
label: '对账状态',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 100,
|
|
|
formatter: (_row, _column, cellValue) => {
|
|
|
- return reviewStatus[_row.orderStatus];
|
|
|
+ let options = [
|
|
|
+ { value: 0, label: '未对账' },
|
|
|
+ { value: 1, label: '部分对账' },
|
|
|
+ { value: 2, label: '全部对账' }
|
|
|
+ ];
|
|
|
+ return options.find(item => item.value == cellValue)?.label || '';
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
- prop: 'orderStatus',
|
|
|
+ prop: 'paymentStatus',
|
|
|
label: '付款状态',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 100,
|
|
|
formatter: (_row, _column, cellValue) => {
|
|
|
- return reviewStatus[_row.orderStatus];
|
|
|
+ let options = [
|
|
|
+ { value: 0, label: '未收款' },
|
|
|
+ { value: 1, label: '部分收款' },
|
|
|
+ { value: 2, label: '全部收款' }
|
|
|
+ ];
|
|
|
+ return options.find(item => item.value == cellValue)?.label || '';
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
- prop: 'orderStatus',
|
|
|
+ prop: 'overdueStatus',
|
|
|
label: '逾期状态',
|
|
|
align: 'center',
|
|
|
showOverflowTooltip: true,
|
|
|
minWidth: 100,
|
|
|
formatter: (_row, _column, cellValue) => {
|
|
|
- return reviewStatus[_row.orderStatus];
|
|
|
+ return _row.overdueStatus == 1 ? '逾期中' : '未逾期';
|
|
|
}
|
|
|
},
|
|
|
{
|
|
|
@@ -512,7 +523,7 @@ export default {
|
|
|
fixed: 'right'
|
|
|
}
|
|
|
],
|
|
|
- cacheKeyUrl: 'eos-5f2ac512-purchaseOrder-collectionPlan',
|
|
|
+ cacheKeyUrl: 'eos-5f2ac512-purchaseOrder-paymentPlan',
|
|
|
isRequired: true,
|
|
|
timeR: null,
|
|
|
toDoReminder: {}
|
|
|
@@ -520,6 +531,7 @@ export default {
|
|
|
},
|
|
|
computed: {},
|
|
|
created() {
|
|
|
+ this.requestDict('结算方式');
|
|
|
this.requestDict('客户状态');
|
|
|
parameterGetByCode({
|
|
|
code: 'order_person_info'
|
|
|
@@ -572,14 +584,15 @@ export default {
|
|
|
// this.curNodeData = data;
|
|
|
this.reload({ categoryId: data.id });
|
|
|
},
|
|
|
- /* 表格数据源 */
|
|
|
+ /* 表格数据源 1:销售订单、2:采购订单 */
|
|
|
datasource({ page, limit, where, order }) {
|
|
|
this.params = {
|
|
|
pageNum: page,
|
|
|
size: limit,
|
|
|
+ sourceType: 2,
|
|
|
...where
|
|
|
};
|
|
|
- return getTableList(this.params);
|
|
|
+ return receiptPaymentPlanPage(this.params);
|
|
|
},
|
|
|
|
|
|
/* 刷新表格 */
|