fix:更新

This commit is contained in:
uiuJun 2025-09-19 11:32:37 +08:00
parent d773694c97
commit e864d292f6
5 changed files with 78 additions and 137 deletions

View File

@ -367,26 +367,30 @@ export const Selects = {
hideInTable = true,
...rest
} = props ?? {};
return {
title: title,
key: key,
valueType: 'select',
hideInTable: hideInTable,
formItemProps: { ...(required ? rulesHelper.number : {}) },
request: async (params) =>
(
await Apis.Company.CompanyReceiptAccounts.Select({
keywords: params?.KeyWords,
...params,
})
).data,
request: async (params) => {
let res = await Apis.Company.CompanyReceiptAccounts.Select({
keywords: params?.KeyWords,
companies_id: params?.companies_id,
...params,
});
res?.data?.map((l: any) => {
l.label =
l.company_name + '-' + l.company_bank + '-' + l.company_account;
});
return res?.data;
},
...rest,
fieldProps: {
showSearch: true,
fieldNames: {
label: 'label',
value: 'value',
value: 'id',
},
...rest?.fieldProps,
},

View File

@ -11,7 +11,7 @@ import { Form, message } from 'antd';
export default function Create(props: MyBetaModalFormProps) {
const [form] = Form.useForm();
console.log(props.item, 'pppp');
return (
<BetaSchemaForm<ApiTypes.Company.CompanyProjectReceiptAccounts.Store>
{...MyModalFormProps.props}
@ -34,6 +34,8 @@ export default function Create(props: MyBetaModalFormProps) {
onFinish={async (values) =>
Apis.Company.CompanyProjectReceiptAccounts.Store({
...values,
companies_id: props?.item?.companies_id || values?.companies_id,
projects_id: props?.item?.id || values?.projects_id,
})
.then(() => {
props.reload?.();
@ -43,24 +45,58 @@ export default function Create(props: MyBetaModalFormProps) {
.catch(() => false)
}
columns={[
Selects?.Companies({
key: 'companies_id',
title: '选择机构',
colProps: { span: 24 },
formItemProps: { ...rulesHelper.number },
}),
Selects?.AssetProjects({
key: 'projects_id',
title: '选择项目',
colProps: { span: 24 },
formItemProps: { ...rulesHelper.number },
}),
Selects?.CompanyAccounts({
key: 'receipt_accounts_id',
title: '选择收款账户',
colProps: { span: 24 },
formItemProps: { ...rulesHelper.number },
}),
...(props?.item?.id
? []
: [
Selects?.Companies({
key: 'companies_id',
title: '选择机构',
colProps: { span: 24 },
required: true,
fieldProps: {
onChange: (val: any) => {
form.setFieldsValue({
projects_id: undefined,
receipt_accounts_id: undefined,
});
},
},
}),
]),
{
valueType: 'dependency',
name: ['companies_id'],
columns: ({ companies_id }) => {
return [
...(props?.item?.id
? []
: [
Selects?.AssetProjects({
key: 'projects_id',
title: '选择项目',
params: {
companies_id:
companies_id || props?.item?.companies_id || 0,
},
colProps: { span: 24 },
formItemProps: { ...rulesHelper.number },
fieldProps: {
showSearch: true,
},
}),
]),
Selects?.CompanyAccounts({
key: 'receipt_accounts_id',
title: '选择收款账户',
params: {
companies_id: companies_id || props?.item?.companies_id || 0,
},
colProps: { span: 24 },
formItemProps: { ...rulesHelper.number },
}),
];
},
},
]}
/>
);

View File

@ -1,99 +0,0 @@
import {
MyBetaModalFormProps,
MyButtons,
MyColumns,
MyProTableProps,
} from '@/common';
import { MyModal } from '@/components/MyModal';
import { Apis } from '@/gen/Apis';
import { ProTable } from '@ant-design/pro-components';
import { message } from 'antd';
import { useRef, useState } from 'react';
export default function Index(props: MyBetaModalFormProps) {
const modalRef: any = useRef(null);
const [selectedProjectsIds, setSelectedProjectsIds] = useState<any>([]);
const onShowContactPhone = () => {
console.log(selectedProjectsIds, 'selectedProjectsIds');
Apis.Company.CompanyProjectReceiptAccounts.Store({
companies_id: props?.item?.companies_id ?? 0,
projects_id: props?.item?.id,
receipt_accounts_id: selectedProjectsIds[0],
})
.then(() => {
props.reload?.();
message.success('收款账号添加成功!');
console.log(modalRef, 'modalRef.current');
modalRef.current?.close();
// todo 关闭页面
})
.catch(() => false);
};
console.log(props?.item, '0000');
return (
<MyModal
title={props.title || '查看'}
width="800px"
myRef={modalRef}
trigger={
<MyButtons.Default
type="primary"
size="middle"
title={`${props.title}`}
/>
}
node={
<ProTable
{...MyProTableProps.props}
request={async (params, sort) =>
MyProTableProps.request(
{
...params,
companies_id: props?.item?.companies_id,
projects_id: props?.item?.id,
},
sort,
Apis.Company.CompanyReceiptAccounts.List,
)
}
rowSelection={{
type: 'radio',
onChange: (selectedRowKeys) => {
console.log(selectedRowKeys, 'selectedRowKeys');
setSelectedProjectsIds(selectedRowKeys);
},
}}
tableAlertOptionRender={() => {
return (
<MyButtons.Create
title="确定添加"
type="primary"
key="create"
onClick={() => onShowContactPhone()}
/>
);
}}
search={false}
options={false}
columns={[
MyColumns.ID(),
{
title: '收款户名',
dataIndex: 'company_name',
},
{
title: '开户行',
dataIndex: 'company_bank',
search: false,
},
{
title: '收款账号',
dataIndex: 'company_account',
search: false,
},
]}
/>
}
/>
);
}

View File

@ -28,14 +28,14 @@ export default function Create(props: MyBetaModalFormProps) {
}
form={form}
key={new Date().getTime()}
// onOpenChange={(open: any) => {
// if (open) {
// form.resetFields(); // 清空表单数据
// form.setFieldsValue({
// asset_projects_id: props?.item?.id,
// });
// }
// }}
onOpenChange={(open: any) => {
if (open) {
form.resetFields(); // 清空表单数据
form.setFieldsValue({
asset_projects_id: props?.item?.id,
});
}
}}
onFinish={async (values: any) => {
return Apis.Grid.Grids.Store({
asset_projects_id: props?.item?.id || values?.asset_projects_id,

View File

@ -7,7 +7,7 @@ import {
import { Apis } from '@/gen/Apis';
import { ProTable } from '@ant-design/pro-components';
import { Space } from 'antd';
import AccountsSelect from '../../accounts/modals/AccountsSelect';
import AccountsGet from '../../accounts/modals/AccountsGet';
export default function ReceiptAccounts(props: MyBetaModalFormProps) {
return (
@ -27,7 +27,7 @@ export default function ReceiptAccounts(props: MyBetaModalFormProps) {
)
}
toolBarRender={(action) => [
<AccountsSelect
<AccountsGet
key="Select"
reload={action?.reload}
item={props?.item}