修改付款单流程

This commit is contained in:
yangjun 2026-04-08 10:13:53 +08:00
parent a4925a96b6
commit 93aec1886e
8 changed files with 91 additions and 39 deletions

View File

@ -6,19 +6,19 @@ import { getWeekMonthQuarterYear } from '/@/utils';
//列表数据
export const columns: BasicColumn[] = [
{
title: '付款单号',
title: '付款单号',
align: 'center',
dataIndex: 'fkdNo',
width: 200,
},
{
title: '供应商名称',
title: '供应商',
align: 'center',
dataIndex: 'gysName',
width: 400,
},
{
title: '金额(元)',
title: '付款金额(元)',
align: 'center',
dataIndex: 'totalPrice',
customRender: ({ text }) => {

View File

@ -21,12 +21,12 @@
</a-col>
<a-col :lg="6">
<a-form-item name="fksj">
<template #label><span title="付款时间">付款时间</span></template>
<template #label><span title="付款日期">付款日期</span></template>
<a-range-picker value-format="YYYY-MM-DD" v-model:value="queryParam.fksj" class="query-group-cust" />
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<span style="float: left; overflow: hidden" class="table-page-search-submitButtons">
<span style="float: right; overflow: hidden" class="table-page-search-submitButtons">
<a-col :lg="6">
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery">查询</a-button>
<a-button type="primary" preIcon="ant-design:reload-outlined" @click="searchReset"
@ -107,13 +107,13 @@ const { prefixCls, tableContext, onExportXls, onImportXls } = useListPage({
const [registerTable, { reload, collapseAll, updateTableDataRecord, findTableDataRecord, getDataSource }, { rowSelection, selectedRowKeys }] = tableContext;
const labelCol = reactive({
xs: 24,
sm: 4,
xl: 6,
xxl: 4
sm: 8,
xl: 8,
xxl: 8
});
const wrapperCol = reactive({
xs: 24,
sm: 20,
sm: 16,
});
/**

View File

@ -4,12 +4,18 @@
<div style="width:100%;display: flex;justify-content: space-between;">
<div class="divider-content">
<!-- 总金额{{ zongJinE }} -->
<!-- <j-dict-select-tag type='radio' v-model:value="ddNo" :dictCode="`nu_invoicing_fkd_info,`" /> -->
<a-radio-group v-model:value="ddNo" >
<a-radio v-for="item of ddList" :value="item.id" @click="(e) => handleRadioClick(item, e)"
>{{ item.cgdNo }}
</a-radio>
</a-radio-group>
</div>
<div style="float: right;">
<span style="color: red;font-size: 16px; font-weight: bold;">
总金额{{ handlePriceFormat(zongJinE || zongJinECalc) }}
订单金额{{ handlePriceFormat(xiaoji) }}
</span>
<span style="margin-left: 20px;"> 单位</span>
<!-- <span style="margin-left: 20px;"> 单位</span> -->
</div>
</div>
</template>
@ -28,6 +34,7 @@ import { useListPage } from '/@/hooks/system/useListPage';
import { listAndJh } from '../../cgd/NuInvoicingCgdInfo.api';
import { wlColumns } from './cgd.data';
import { any } from 'vue-types';
import { defHttp } from '/@/utils/http/axios';
// props
const props = defineProps({
@ -47,6 +54,9 @@ const zongJinECalc = ref()
const emit = defineEmits(['total-amount-change']);
const queryParam = reactive<any>({});
const ddNo = ref<string>('');
const ddList = ref<any>([]);
const xiaoji = ref<string>('');
// table
const { tableContext } = useListPage({
@ -66,7 +76,8 @@ const { tableContext } = useListPage({
fixed: 'right',
},
beforeFetch: async (params) => {
queryParam.cgdId = props.cgdId;
queryParam.cgdId = ddNo.value;
console.log("🚀 ~ ddNo.value:", ddNo.value)
return Object.assign(params, queryParam);
},
afterFetch: (data) => {
@ -75,6 +86,8 @@ const { tableContext } = useListPage({
const totalAmount = data[0].zongJinE || '';
zongJinECalc.value = totalAmount
emit('total-amount-change', totalAmount);
xiaoji.value = data[0].zongJinE
}
return data;
}
@ -83,10 +96,26 @@ const { tableContext } = useListPage({
const [registerTable, { reload, setLoading }] = tableContext;
function handleRadioClick(item, e) {
ddNo.value = item.id
queryParam.ddNo = item.id
reload()
}
// cgdId
watch(() => props.cgdId, (newCgdId) => {
if (newCgdId) {
//
defHttp.get({ url: '/cgd/nuInvoicingCgdInfo/getFkdList', params: { pkId: newCgdId} }).then(res => {
console.log("🚀 ~ res:", res)
// ddNo.value = res.data;
ddList.value = res;
if(res.length > 0){
ddNo.value = res[0].id
}
queryParam.cgdNo = ddNo.value
reload();
});
}
});
@ -102,6 +131,7 @@ function handlePriceFormat(text) {
}
}
//
defineExpose({
reload

View File

@ -1,6 +1,6 @@
<template>
<a-spin :spinning="confirmLoading">
<JFormContainer :disabled="true">
<JFormContainer :disabled="true" v-show="formData.izXq =='N' && formData.status=='0'">
<template #detail>
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol2" :wrapperCol="wrapperCol2"
name="NuInvoicingFkdMainForm">
@ -18,7 +18,7 @@
</a-form>
</template>
</JFormContainer>
<JFormContainer :disabled="true" style="margin-top:-63px ;">
<JFormContainer :disabled="true" style="margin-top:-63px ;" v-show="formData.izXq =='N' && formData.status=='0'">
<template #detail>
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol" :wrapperCol="wrapperCol"
name="NuInvoicingFkdMainForm">
@ -30,7 +30,7 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="账号信息" v-bind="validateInfos.openingBankNo" id="NuInvoicingFkdMainForm-openingBankNo"
<a-form-item label="开户行账号" v-bind="validateInfos.openingBankNo" id="NuInvoicingFkdMainForm-openingBankNo"
name="openingBankNo">
<a-input v-model:value="formData.openingBankNo"></a-input>
</a-form-item>
@ -51,7 +51,7 @@
</a-form>
</template>
</JFormContainer>
<JFormContainer :disabled="disabled" style="margin-top:-60px ;">
<JFormContainer :disabled="disabled" style="margin-top:-60px ;" v-show="formData.izXq =='N' && formData.status=='0'">
<template #detail>
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol2" :wrapperCol="wrapperCol2"
name="NuInvoicingFkdMainForm">
@ -75,7 +75,7 @@
</a-form>
</template>
</JFormContainer>
<JFormContainer :disabled="disabled" style="margin-top:-60px ;">
<JFormContainer :disabled="disabled" style="margin-top:-60px ;" v-show="formData.izXq =='N' && formData.status=='0'">
<template #detail>
<a-form ref="formRef" class="antd-modal-form" :labelCol="labelCol3" :wrapperCol="wrapperCol3"
name="NuInvoicingFkdMainForm">
@ -130,6 +130,8 @@ const formData = reactive<Record<string, any>>({
fp: '',
bz: '',
status_dictText: '',
izXq: '',
status: '',
});
const { createMessage, createConfirm } = useMessage();
const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 4 } });
@ -170,6 +172,7 @@ function add() {
* 编辑
*/
function edit(record) {
console.log("🚀 ~ edit ~ record:", record)
queryFkdCgdIds({ pkId: record.id }).then(res => {
cgdIdsValue.value = res.result
})

View File

@ -52,6 +52,7 @@ function edit(record) {
title.value = disableSubmit.value ? '详情' : '付款';
visible.value = true;
nextTick(() => {
record.izXq = disableSubmit.value ? 'Y' : 'N';
registerForm.value.edit(record);
});
}

View File

@ -2,24 +2,16 @@
<div>
<!--供应商选择-->
<div class="jeecg-basic-table-form-container">
<a-form ref="formRef" @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol2"
:wrapper-col="wrapperCol2">
<a-form ref="formRef" @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol"
:wrapper-col="wrapperCol">
<a-row :gutter="24">
<a-col :lg="8">
<a-col :lg="6">
<a-form-item name="gysId">
<template #label><span title="供应商">供应商</span></template>
<j-search-select placeholder="请选择供应商" v-model:value="queryParam.gysId"
dict="view_cgd_gys,gys_name,gys_id,cgd_type = '2'" allow-clear @change="changeGysFunc()" />
</a-form-item>
</a-col>
</a-row>
</a-form>
</div>
<!-- 时间查询 -->
<div class="jeecg-basic-table-form-container">
<a-form ref="formRef" @keyup.enter.native="searchQuery" :model="queryParam" :label-col="labelCol2"
:wrapper-col="wrapperCol2">
<a-row :gutter="24">
<a-col :lg="8">
<a-form-item>
<template #label>
@ -33,8 +25,8 @@
class="query-group-cust" />
</a-form-item>
</a-col>
<a-col :xl="6" :lg="7" :md="8" :sm="24">
<span style="float: left; overflow: hidden" class="table-page-search-submitButtons">
<a-col :lg="10" :sm="24">
<span style="float: right; overflow: hidden" class="table-page-search-submitButtons">
<a-col :lg="6">
<a-button type="primary" preIcon="ant-design:search-outlined" @click="searchQuery">查询</a-button>
<a-button type="primary" preIcon="ant-design:reload-outlined" @click="searchReset"

View File

@ -17,7 +17,7 @@ export const columns: BasicColumn[] = [
width: 400,
},
{
title: '付款金额(元)',
title: '订单金额(元)',
align: 'center',
dataIndex: 'xiaoJi',
customRender: ({ text }) => {
@ -73,7 +73,17 @@ export const wlColumns: BasicColumn[] = [
dataIndex: 'wlUnits',
},
{
title: '采购单价',
title: '品牌型号',
align: 'center',
dataIndex: 'brandType',
},
{
title: '生产厂家',
align: 'center',
dataIndex: 'manufacturer',
},
{
title: '采购价格',
align: 'center',
dataIndex: 'procurementPrice',
customRender: ({ text }) => {
@ -87,7 +97,7 @@ export const wlColumns: BasicColumn[] = [
},
},
{
title: '到货价',
title: '到货',
align: 'center',
dataIndex: 'crkje',
customRender: ({ text }) => {
@ -100,11 +110,21 @@ export const wlColumns: BasicColumn[] = [
return num.toFixed(2);
},
},
{
title: '采购数量',
align: 'center',
dataIndex: 'purchaseQuantity',
},
{
title: '入库数量',
align: 'center',
dataIndex: 'crksl',
},
{
title: '销账数量',
align: 'center',
dataIndex: 'xzsl',
},
{
title: '小计',
align: 'center',

View File

@ -6,7 +6,7 @@
name="NuInvoicingFkdMainForm">
<a-row class="card-class">
<a-col :span="24" style="border-bottom: 2px solid #f7f7f7; margin-bottom: 14px;">
<SectionDivider :title="'采购单信息'" />
<SectionDivider :title="'采购单'" />
</a-col>
<a-col :span="12">
<a-form-item label="采购单号" v-bind="validateInfos.cgdNo" id="NuInvoicingFkdMainForm-cgdNo" name="cgdNo">
@ -31,16 +31,21 @@
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="总金额(元)" v-bind="validateInfos.zje" id="NuInvoicingFkdMainForm-zje" name="zje">
<a-form-item label="总金额(元)" v-bind="validateInfos.zje" id="NuInvoicingFkdMainForm-zje" name="zje">
<a-input v-model:value="formData.zje"></a-input>
</a-form-item>
</a-col>
<a-col :span="12">
<a-form-item label="供应商" v-bind="validateInfos.gysName" id="NuInvoicingFkdMainForm-gysName" name="gysName">
<a-input v-model:value="formData.gysName"></a-input>
</a-form-item>
</a-col>
<a-col :span="24" style="border-bottom: 2px solid #f7f7f7; margin-bottom: 14px;">
<SectionDivider :title="'随行单'" />
</a-col>
<a-col :span="23" :push="1">
<a-form-item label="" :value="sxdValue">
<j-image-upload :fileMax="0" :value="sxdValue" :disabled="true"
<a-col :span="12" :push="1">
<a-form-item label="随货同行单">
<j-image-upload :fileMax="1" :value="sxdValue" :disabled="true"
:show-upload-button="false"></j-image-upload>
</a-form-item>
</a-col>
@ -78,6 +83,7 @@ const formData = reactive<Record<string, any>>({
arrivalPrice: '',//
wlUnits: '',//
rksl: '',//
gysName: '',
});
const { createMessage } = useMessage();
const labelCol = ref<any>({ xs: { span: 24 }, sm: { span: 5 } });