import type { BasicFetchResult, BasicPageParams, FilterJson } from '@/api'; // eslint-disable-next-line @typescript-eslint/no-namespace namespace CancellationService { /** 获取付款申请单列表接口参数 */ export type GetCancellationListParams = BasicPageParams & Pick; /** 获取收款申请单列表接口返回值 */ export type GetCancellationListResult = BasicFetchResult; export interface CancellationItem { id: number; billNo: string; matchStatus: number; matchStatusName: string; receiveBillNo: string; contactUnitName: string; contactUnitNo: string; contactUnitCompany: string; contactUnitCompanyNo: string; currencyID: number; currencyName: string; receiveBillAmount: number; matchAmount: number; billStatus: number; billStatusName: string; ownerId: number; ownerName: string; creditDate: Date; settleOrgId: number; } /** 核销单创建获取销售发票列表 */ export interface GetInvoiceListParams { recmatchId: number; clientId: number; invoiceNo: string; matchStatus: number; orderNo: string; invoiceTimeStart: string | Date; invoiceTimeEnd: string | Date; isAdvance: number; } export interface GetInvoiceListItem { invoiceId: number; invoiceNo: string; noMatchAmount?: number; totalAmount: number; currencyId: number; currencyName: string; selectionRows?: any[]; selectKeys?: any[]; detailList: { id: number; amount: number; name: string; orderNo: string; matchedAmount: number; matchingdAmount: number; recMatchingdAmount: number; rate: number; currencyId: number; currencyName: string; }[]; orderNo: string[]; invoiceTime: Date; pm: string[]; matchStatus: number; matchStatusName: string; rate?: number; totalMatchedAmount?: number; popVisible?: boolean; } /** 获取核销单详细 */ export interface GetInvoiceDetailItem { id: string; isAdvance: boolean; billNo: string; totalAmount: number; matchedAmount: number; clientId: number; clientName: string; receiveBankAccount: string; currencyID: number; currencyName: string; receiveAmount: number; receiveDate: Date; charges: number; salesList: string[]; pmList: string[]; remark: string; attach: string; contactUnitName: string; settleOrgName: string; ownerId: number; ownerName: string; recMatchEditInvoices: { id: number; totalAmount: number; currencyId: number; currencyName: string; invoiceId: number; invoiceNo: string; selectionRows?: any[]; selectKeys?: any[]; rate?: number; totalMatchedAmount?: number; noMatchAmount?: number; detailList: { id: number; amount: number; name: string; orderNo: string; matchedAmount: number; matchingdAmount: number; recMatchingdAmount: number; rate: number; currencyId: number; currencyName: string; }[]; }[]; } export interface SaveCancellationParams { id: number; attach: string; details: { id: number; invoiceId: number; amount: number; exchangeAmount: number; rate: number; invoiceCurrencyId: number; }[]; } export type GetInvoiceListResult = GetInvoiceListItem[]; } export type { CancellationService };