Merge remote-tracking branch 'websoft/master'

This commit is contained in:
2026-08-28 16:01:49 +08:00
24 changed files with 490 additions and 156 deletions
@@ -6,7 +6,19 @@
<el-input v-model="query.paymentNo" clearable placeholder="请输入" />
</el-form-item>
<el-form-item label="使用部门">
<el-input v-model="query.deptName" clearable placeholder="请输入" />
<el-tree-select
:model-value="query.deptName"
:data="organizationTreeOptions"
node-key="id"
check-strictly
filterable
clearable
render-after-expand
style="width: 100%"
placeholder="请选择 所属组织"
:props="{ label: 'label', value: 'id', children: 'children' }"
@update:model-value="val => { query.deptName = findOrgById(val)?.rawLabel || val }"
/>
</el-form-item>
<el-form-item label="付款日期">
<el-date-picker
@@ -47,9 +59,11 @@
<script>
import { ArrowDown, ArrowUp } from '@element-plus/icons-vue';
import { approvalStatusOptions } from '@/api/payment/billPayment';
import organizationSearch from '@/mixins/organization-search';
export default {
name: 'BillPaymentSearch',
mixins: [organizationSearch],
props: {
query: { type: Object, required: true },
loading: { type: Boolean, default: false },
@@ -58,6 +72,9 @@ export default {
data() {
return { ArrowDown, ArrowUp, expanded: false, approvalStatusOptions };
},
mounted() {
this.loadOrganizationOptions();
},
};
</script>
+16 -1
View File
@@ -10,7 +10,19 @@
<el-input v-model="query.projectName" clearable placeholder="请输入" />
</el-form-item>
<el-form-item label="所属组织">
<el-input v-model="query.deptName" clearable placeholder="请输入" />
<el-tree-select
:model-value="query.deptName"
:data="organizationTreeOptions"
node-key="id"
check-strictly
filterable
clearable
render-after-expand
style="width: 100%"
placeholder="请选择 所属组织"
:props="{ label: 'label', value: 'id', children: 'children' }"
@update:model-value="val => { query.deptName = findOrgById(val)?.rawLabel || val }"
/>
</el-form-item>
<el-form-item class="invoice-kingdee-item" label="金蝶单据状态">
<el-select v-model="query.kingdeeStatus" clearable placeholder="请选择">
@@ -234,6 +246,7 @@ import * as XLSX from 'xlsx';
import * as api from '@/api/payment/invoiceApplication';
import * as formalSettlementApi from '@/api/settlement/formalSettlement';
import { invoiceApplicationTableColumns } from '@/option/payment/invoiceApplication';
import organizationSearch from '@/mixins/organization-search';
const emptyQuery = () => ({
applicationNo: '',
@@ -245,6 +258,7 @@ const emptyQuery = () => ({
export default {
name: 'InvoiceApplication',
mixins: [organizationSearch],
data() {
return {
ArrowDown,
@@ -266,6 +280,7 @@ export default {
...mapGetters(['permission']),
},
mounted() {
this.loadOrganizationOptions();
this.loadTable();
},
methods: {
+16 -1
View File
@@ -19,7 +19,19 @@
<el-input v-model="query.projectName" clearable placeholder="请输入" />
</el-form-item>
<el-form-item label="所属组织">
<el-input v-model="query.deptName" clearable placeholder="请输入" />
<el-tree-select
:model-value="query.deptName"
:data="organizationTreeOptions"
node-key="id"
check-strictly
filterable
clearable
render-after-expand
style="width: 100%"
placeholder="请选择 所属组织"
:props="{ label: 'label', value: 'id', children: 'children' }"
@update:model-value="val => { query.deptName = findOrgById(val)?.rawLabel || val }"
/>
</el-form-item>
<el-form-item v-if="searchExpanded" label="审核状态">
<el-select v-model="query.approvalStatus" clearable placeholder="请选择">
@@ -226,6 +238,7 @@ import { mapGetters } from 'vuex';
import * as XLSX from 'xlsx';
import * as api from '@/api/payment/invoiceReceipt';
import { invoiceReceiptTableColumns } from '@/option/payment/invoiceReceipt';
import organizationSearch from '@/mixins/organization-search';
const emptyQuery = () => ({
invoiceNo: '',
@@ -238,6 +251,7 @@ const emptyQuery = () => ({
export default {
name: 'InvoiceReceipt',
mixins: [organizationSearch],
data() {
return {
ArrowDown,
@@ -259,6 +273,7 @@ export default {
...mapGetters(['permission']),
},
mounted() {
this.loadOrganizationOptions();
this.loadTable();
},
methods: {
+15 -1
View File
@@ -23,7 +23,18 @@
/></el-form-item>
<template v-if="searchExpanded">
<el-form-item label="所属组织"
><el-input v-model="query.deptName" clearable
><el-tree-select
:model-value="query.deptName"
:data="organizationTreeOptions"
node-key="id"
check-strictly
filterable
clearable
render-after-expand
style="width: 100%"
placeholder="请选择 所属组织"
:props="{ label: 'label', value: 'id', children: 'children' }"
@update:model-value="val => { query.deptName = findOrgById(val)?.rawLabel || val }"
/></el-form-item>
<el-form-item label="关联结算单"
><el-input v-model="query.settlementNo" clearable
@@ -224,6 +235,7 @@ import { ArrowDown, ArrowUp, Refresh } from '@element-plus/icons-vue';
import { mapGetters } from 'vuex';
import * as api from '@/api/payment/paymentApplication';
import { paymentApplicationTableColumns } from '@/option/payment/paymentApplication';
import organizationSearch from '@/mixins/organization-search';
const emptyQuery = () => ({
paymentNo: '',
@@ -238,6 +250,7 @@ const emptyQuery = () => ({
});
export default {
name: 'PaymentApplication',
mixins: [organizationSearch],
data() {
return {
ArrowDown,
@@ -263,6 +276,7 @@ export default {
},
},
mounted() {
this.loadOrganizationOptions();
this.loadTable();
},
methods: {