develop #10

Merged
zsq merged 5 commits from develop into main 2026-04-15 16:07:16 +08:00
8 changed files with 472 additions and 324 deletions
Showing only changes of commit 4d3b6b3b19 - Show all commits

View File

@ -247,7 +247,6 @@ export const Selects = {
keywords: keywords:
params?.keyWords === undefined ? params?.name : params?.keyWords, params?.keyWords === undefined ? params?.name : params?.keyWords,
}; };
console.log(params, 'Employees');
return ( return (
await Apis.Company.CompanyEmployees.Select({ await Apis.Company.CompanyEmployees.Select({
...params, ...params,

View File

@ -52,17 +52,25 @@ export default function Index({ title = '合同借用' }) {
title: '借用信息', title: '借用信息',
search: false, search: false,
render: (_, item: any) => { render: (_, item: any) => {
if (!item?.borrow_files || item.borrow_files.length === 0) { if (!item?.contract_archive_borrow_files) {
return '-'; return '-';
} }
return ( return (
<div> <div>
{item.borrow_files.map((res: any, index: number) => ( {item.contract_archive_borrow_files.map(
<div key={index} style={{ marginBottom: 4 }}> (res: any, index: number) => (
: {res?.file?.name}: {res?.borrow_number}:{' '} <div key={index} style={{ marginBottom: 4 }}>
{res?.lost_number}: {res?.damaged_number} : {res?.contract_archive_file?.name}:
</div> {res?.contract_archive_file?.borrow_number}:
))} {res?.contract_archive_file?.lost_number}:
{
res?.contract_archive_file?.contract_archive_file
?.lost_number
}
: {res?.contract_archive_file?.damaged_number}
</div>
),
)}
</div> </div>
); );
}, },

View File

@ -14,12 +14,12 @@ import {
} from '@/gen/Enums'; } from '@/gen/Enums';
import { BetaSchemaForm, ProCard } from '@ant-design/pro-components'; import { BetaSchemaForm, ProCard } from '@ant-design/pro-components';
import { Button, Form, message, Space } from 'antd'; import { Button, Form, message, Space } from 'antd';
import { useState } from 'react';
export default function Create(props: MyBetaModalFormProps) { export default function Create(props: MyBetaModalFormProps) {
const [form] = Form.useForm(); const [form] = Form.useForm();
const [ApprovalTemplates, setApprovalTemplates] = useState<any>([]); // const [ApprovalTemplates, setApprovalTemplates] = useState<any>([]);
let approval_templates_id_store = 0;
let ApprovalTemplates: any = [];
return ( return (
<BetaSchemaForm<ApiTypes.Contract.ContractArchiveBorrows.Store> <BetaSchemaForm<ApiTypes.Contract.ContractArchiveBorrows.Store>
{...MyModalFormProps.props} {...MyModalFormProps.props}
@ -35,9 +35,8 @@ export default function Create(props: MyBetaModalFormProps) {
}} }}
trigger={<MyButtons.Create title={`${props.title}`} />} trigger={<MyButtons.Create title={`${props.title}`} />}
onFinish={async (values: any) => { onFinish={async (values: any) => {
console.log(values, 'values');
const { node_approvers } = values; const { node_approvers } = values;
if (ApprovalTemplates?.length > 0 && node_approvers?.length > 0) { if (ApprovalTemplates?.length > 0 && node_approvers?.length > 0) {
// 遍历模板节点,通过名称找到对应的提交节点进行校验 // 遍历模板节点,通过名称找到对应的提交节点进行校验
for (const templateNode of ApprovalTemplates) { for (const templateNode of ApprovalTemplates) {
@ -317,17 +316,20 @@ export default function Create(props: MyBetaModalFormProps) {
}, },
colProps: { span: 24 }, colProps: { span: 24 },
formItemProps: { ...rulesHelper.number }, formItemProps: { ...rulesHelper.number },
fieldProps: { }),
onChange: (e: any) => { {
// 确保e是有效值并且使用正确的value字段 valueType: 'dependency',
if (e) { name: ['approval_templates_id'],
const templateId = typeof e === 'object' ? e.value : e; columns: ({ approval_templates_id }) => {
if (approval_templates_id) {
if (approval_templates_id_store !== approval_templates_id) {
approval_templates_id_store = approval_templates_id;
Apis.Approval.ApprovalTemplates.Show({ Apis.Approval.ApprovalTemplates.Show({
id: templateId, id: approval_templates_id,
}).then((res) => { }).then((res) => {
// setApprovalTemplates(res?.data?.approval_template_nodes); // setApprovalTemplates(res?.data?.approval_template_nodes);
ApprovalTemplates = res?.data?.approval_template_nodes;
form.setFieldsValue({ form.setFieldsValue({
approval_templates_id: templateId,
node_approvers: res?.data?.approval_template_nodes?.map( node_approvers: res?.data?.approval_template_nodes?.map(
(item: any) => ({ (item: any) => ({
...item, ...item,
@ -339,164 +341,304 @@ export default function Create(props: MyBetaModalFormProps) {
}); });
}); });
} }
// 不返回任何值,防止默认行为 }
}, return [
}, {
}), valueType: 'formList',
{ dataIndex: 'node_approvers',
valueType: 'dependency', // title: '审批节点',
name: ['approval_templates_id'], fieldProps: {
columns: ({ approval_templates_id }) => { copyIconProps: false,
return approval_templates_id deleteIconProps: false,
? [ creatorButtonProps: false,
actionRender: (field: any, action: any) => [
<Button
key="add"
type="link"
size="small"
onClick={() => {
const currentNodeType = form.getFieldValue([
'node_approvers',
field.name,
'node_type',
]);
if (
currentNodeType ===
ApprovalTemplateNodesNodeTypeEnum.CC.value
) {
message.warning('抄送节点不允许添加');
return;
}
action.add(
{
node_type:
ApprovalTemplateNodesNodeTypeEnum.Approver.value,
name: '审批人',
},
field.name + 1,
);
}}
>
</Button>,
<Button
key="delete"
type="link"
size="small"
danger
disabled={!field.name}
onClick={() => {
action.remove(field.name);
}}
>
</Button>,
],
},
formItemProps: {
...rulesHelper.array,
wrapperCol: { span: 24 },
},
columns: [
{ {
valueType: 'formList', valueType: 'group',
dataIndex: 'node_approvers', colProps: { span: 24 },
// title: '审批节点',
fieldProps: {
copyIconProps: false,
deleteIconProps: false,
creatorButtonProps: false,
actionRender: (field: any, action: any) => [
<Button
key="add"
type="link"
size="small"
onClick={() => {
const currentNodeType = form.getFieldValue([
'node_approvers',
field.name,
'node_type',
]);
if (
currentNodeType ===
ApprovalTemplateNodesNodeTypeEnum.CC.value
) {
message.warning('抄送节点不允许添加');
return;
}
action.add(
{
node_type:
ApprovalTemplateNodesNodeTypeEnum.Approver
.value,
},
field.name + 1,
);
}}
>
</Button>,
<Button
key="delete"
type="link"
size="small"
danger
onClick={() => {
action.remove(field.name);
}}
>
</Button>,
],
},
formItemProps: {
...rulesHelper.array,
wrapperCol: { span: 24 },
},
columns: [ columns: [
MyFormItems.EnumSelect({
key: 'node_type',
// title: `类型`,
valueEnum: ApprovalTemplateNodesNodeTypeEnum,
colProps: { span: 5 },
formItemProps: {
...rulesHelper.text,
},
}),
{ {
valueType: 'group', // title: '节点名称',
colProps: { span: 24 }, key: 'name',
columns: [ colProps: { span: 6 },
MyFormItems.EnumSelect({ formItemProps: {
key: 'node_type', ...rulesHelper.text,
// title: `类型`, },
valueEnum: ApprovalTemplateNodesNodeTypeEnum, },
colProps: { span: 5 }, {
formItemProps: { valueType: 'dependency',
...rulesHelper.text, name: ['node_type'],
}, columns: ({ node_type }) => {
fieldProps: { return [
disabled: true, Selects.Employees({
}, key: 'members',
}), title: ``,
{ colProps: { span: 13 },
// title: '节点名称', formItemProps: {
key: 'name', ...rulesHelper.array,
colProps: { span: 6 }, },
formItemProps: { fieldProps: {
...rulesHelper.text, mode: 'multiple',
}, showSearch: true,
fieldProps: { maxCount:
disabled: true, node_type ===
}, ApprovalTemplateNodesNodeTypeEnum.Approver
}, .value
{ ? 1
valueType: 'dependency', : 9,
name: ['node_type'], maxTagTextLength: 3,
columns: ({ node_type }) => { labelRender: (res: any) => {
return [ if (res?.label) {
Selects.Employees({ return res?.label;
key: 'members', } else {
title: ``, return ApprovalTemplates?.map(
colProps: { span: 13 }, (item: any) => {
formItemProps: { if (
...rulesHelper.array, item?.node_type === node_type &&
}, item?.approval_template_node_members
fieldProps: { ?.length
mode: 'multiple', ) {
showSearch: true, return item?.approval_template_node_members?.map(
maxCount: (i: any) => {
node_type === if (
ApprovalTemplateNodesNodeTypeEnum.Approver i?.company_employees_id ===
.value res?.value
? 1 ) {
: 9, return (
maxTagTextLength: 3, i?.company_employee?.name ||
labelRender: (res: any) => { ''
if (res?.label) { );
return res?.label; }
} else { },
return ApprovalTemplates?.map( );
(item: any) => { }
if ( },
item?.node_type === node_type && );
item }
?.approval_template_node_members },
?.length },
) { }),
return item?.approval_template_node_members?.map( ];
(i: any) => { },
if (
i?.company_employees_id ===
res?.value
) {
return (
i?.company_employee
?.name || ''
);
}
},
);
}
},
);
}
},
},
}),
];
},
},
],
}, },
], ],
}, },
] ],
: []; },
];
}, },
}, },
// {
// valueType: 'dependency',
// name: ['approval_templates_id'],
// columns: ({ approval_templates_id }) => {
// return approval_templates_id
// ? [
// {
// valueType: 'formList',
// dataIndex: 'node_approvers',
// // title: '审批节点',
// fieldProps: {
// copyIconProps: false,
// deleteIconProps: false,
// creatorButtonProps: false,
// actionRender: (field: any, action: any) => [
// <Button
// key="add"
// type="link"
// size="small"
// onClick={() => {
// const currentNodeType = form.getFieldValue([
// 'node_approvers',
// field.name,
// 'node_type',
// ]);
// if (
// currentNodeType ===
// ApprovalTemplateNodesNodeTypeEnum.CC.value
// ) {
// message.warning('抄送节点不允许添加');
// return;
// }
// action.add(
// {
// node_type:
// ApprovalTemplateNodesNodeTypeEnum.Approver
// .value,
// },
// field.name + 1,
// );
// }}
// >
// 添加
// </Button>,
// <Button
// key="delete"
// type="link"
// size="small"
// danger
// onClick={() => {
// action.remove(field.name);
// }}
// >
// 删除
// </Button>,
// ],
// },
// formItemProps: {
// ...rulesHelper.array,
// wrapperCol: { span: 24 },
// },
// columns: [
// {
// valueType: 'group',
// colProps: { span: 24 },
// columns: [
// MyFormItems.EnumSelect({
// key: 'node_type',
// // title: `类型`,
// valueEnum: ApprovalTemplateNodesNodeTypeEnum,
// colProps: { span: 5 },
// formItemProps: {
// ...rulesHelper.text,
// },
// fieldProps: {
// disabled: true,
// },
// }),
// {
// // title: '节点名称',
// key: 'name',
// colProps: { span: 6 },
// formItemProps: {
// ...rulesHelper.text,
// },
// fieldProps: {
// disabled: true,
// },
// },
// {
// valueType: 'dependency',
// name: ['node_type'],
// columns: ({ node_type }) => {
// return [
// Selects.Employees({
// key: 'members',
// title: ``,
// colProps: { span: 13 },
// formItemProps: {
// ...rulesHelper.array,
// },
// fieldProps: {
// mode: 'multiple',
// showSearch: true,
// maxCount:
// node_type ===
// ApprovalTemplateNodesNodeTypeEnum.Approver
// .value
// ? 1
// : 9,
// maxTagTextLength: 3,
// labelRender: (res: any) => {
// if (res?.label) {
// return res?.label;
// } else {
// return ApprovalTemplates?.map(
// (item: any) => {
// if (
// item?.node_type === node_type &&
// item
// ?.approval_template_node_members
// ?.length
// ) {
// return item?.approval_template_node_members?.map(
// (i: any) => {
// if (
// i?.company_employees_id ===
// res?.value
// ) {
// return (
// i?.company_employee
// ?.name || ''
// );
// }
// },
// );
// }
// },
// );
// }
// },
// },
// }),
// ];
// },
// },
// ],
// },
// ],
// },
// ]
// : [];
// },
// },
]} ]}
/> />
); );

View File

@ -41,16 +41,21 @@ export default function Index({ title = '合同借阅' }) {
title: '借阅信息', title: '借阅信息',
search: false, search: false,
render: (_, item: any) => { render: (_, item: any) => {
if (!item?.read_files || item.read_files.length === 0) { if (
!item?.contract_archive_read_files ||
item.contract_archive_read_files.length === 0
) {
return '-'; return '-';
} }
return ( return (
<div> <div>
{item.read_files.map((res: any, index: number) => ( {item.contract_archive_read_files.map(
<div key={index} style={{ marginBottom: 4 }}> (res: any, index: number) => (
: {res?.file?.name} <div key={`item_${index}`} style={{ marginBottom: 4 }}>
</div> : {res?.contract_archive_file?.name}
))} </div>
),
)}
</div> </div>
); );
}, },

View File

@ -3,7 +3,6 @@ import {
MyColumns, MyColumns,
MyPageContainer, MyPageContainer,
MyProTableProps, MyProTableProps,
useCurrentPermissions,
} from '@/common'; } from '@/common';
import { Selects } from '@/components/Select'; import { Selects } from '@/components/Select';
import { Apis } from '@/gen/Apis'; import { Apis } from '@/gen/Apis';
@ -25,79 +24,61 @@ import Voided from './modals/Voided';
export default function Index({ title = '补充协议' }) { export default function Index({ title = '补充协议' }) {
const navigate = useNavigate(); const navigate = useNavigate();
const [searchParams, setSearchParams]: any = useSearchParams(); const [searchParams, setSearchParams]: any = useSearchParams();
const getCurrentPermissions = useCurrentPermissions();
let tableRender = (item: any, action: any) => { let tableRender = (item: any, action: any) => {
console.log(item, 'item'); console.log(item, 'item');
let permissions = getCurrentPermissions({ let permissions = [
update: ( <MyButtons.Default
<MyButtons.Default key="Update"
key="Update" size="small"
size="small" type="primary"
type="primary" disabled={
disabled={ item.status !== 'TemporaryStorage' && item.status !== 'Rejected'
item.status !== 'TemporaryStorage' && item.status !== 'Rejected' }
} onClick={() => {
onClick={() => { navigate(
navigate( `/contract/contracts/pages/contract_add_update?id=${item.id}`,
`/contract/contracts/pages/contract_add_update?id=${item.id}`, );
); }}
}} title="编辑"
title="编辑" />,
/> ];
),
});
let permissionsSpace = getCurrentPermissions({ let permissionsSpace = [
useseal: { <UseSeal
key: '1', key="UseSeal"
label: ( item={{ ...item, disabled: true }}
<UseSeal reload={action?.reload}
item={{ ...item, disabled: true }} title="申请用印"
reload={action?.reload} />,
title="申请用印" <Archives
/> key="Archives"
), item={{ ...item, disabled: true }}
}, reload={action?.reload}
title="归档"
archives: { />,
key: '3', <Terminated
label: ( item={item}
<Archives reload={action?.reload}
item={{ ...item, disabled: true }} title="解除"
reload={action?.reload} key="Terminated"
title="归档" />,
/> <Voided item={item} reload={action?.reload} title="撤销" key="Voided" />,
), <MyButtons.Default
}, key="Delete"
title="取消"
terminated: { disabled={
key: '5', item?.status !== 'TemporaryStorage' && item?.status !== 'Voided'
label: <Terminated item={item} reload={action?.reload} title="解除" />, }
}, isConfirm={true}
voided: { description={`您正在操作取消「${item.name}」,取消后,合同不能做任何操作,是否继续?`}
key: '6', onConfirm={() =>
label: <Voided item={item} reload={action?.reload} title="撤销" />, Apis.Contract.Contracts.SoftDelete({
}, id: item.id,
delete: { }).then(() => action?.reload())
key: '8', }
label: ( />,
<MyButtons.Default ];
title="取消"
disabled={
item?.status !== 'TemporaryStorage' && item?.status !== 'Voided'
}
isConfirm={true}
description={`您正在操作取消「${item.name}」,取消后,合同不能做任何操作,是否继续?`}
onConfirm={() =>
Apis.Contract.Contracts.SoftDelete({
id: item.id,
}).then(() => action?.reload())
}
/>
),
},
});
let Others = ( let Others = (
<Dropdown menu={{ items: permissionsSpace }} trigger={['click']}> <Dropdown menu={{ items: permissionsSpace }} trigger={['click']}>

View File

@ -80,12 +80,6 @@ export default function Index({ title = '其他用印' }) {
title: '是否用印', title: '是否用印',
dataIndex: 'is_sealed', dataIndex: 'is_sealed',
}), }),
{
title: '用印日期',
dataIndex: 'use_sealed_date',
valueType: 'date',
search: false,
},
//company_employee //company_employee
{ {
title: '申请人', title: '申请人',
@ -97,16 +91,6 @@ export default function Index({ title = '其他用印' }) {
}, },
search: false, search: false,
}, },
{
title: '用印人',
dataIndex: 'use_sealed_by_name',
render: (_, item: any) => {
return `${item.use_sealed_by_name || '-'}${
item.use_sealed_by_phone || ''
}`;
},
search: false,
},
MyColumns.UpdatedAt(), MyColumns.UpdatedAt(),
MyColumns.Option({ MyColumns.Option({
render: (_, item: any, index, action) => ( render: (_, item: any, index, action) => (

View File

@ -10,13 +10,12 @@ import { SelectContract } from '@/components/SelectContract';
import { Apis } from '@/gen/Apis'; import { Apis } from '@/gen/Apis';
import { ApprovalTemplateNodesNodeTypeEnum } from '@/gen/Enums'; import { ApprovalTemplateNodesNodeTypeEnum } from '@/gen/Enums';
import { BetaSchemaForm } from '@ant-design/pro-components'; import { BetaSchemaForm } from '@ant-design/pro-components';
import { Button, Form, message } from 'antd'; import { Button, Form, message, Space } from 'antd';
import { useState } from 'react';
export default function Create(props: MyBetaModalFormProps) { export default function Create(props: MyBetaModalFormProps) {
const [form] = Form.useForm(); const [form] = Form.useForm();
const [ApprovalTemplates, setApprovalTemplates] = useState<any[]>([]); // const [ApprovalTemplates, setApprovalTemplates] = useState<any[]>([]);
let ApprovalTemplates: any = [];
return ( return (
<BetaSchemaForm<ApiTypes.Contract.ContractOthers.Store> <BetaSchemaForm<ApiTypes.Contract.ContractOthers.Store>
{...MyModalFormProps.props} {...MyModalFormProps.props}
@ -26,9 +25,9 @@ export default function Create(props: MyBetaModalFormProps) {
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
wrapperCol={{ span: 20 }} wrapperCol={{ span: 20 }}
labelAlign="left" labelAlign="left"
width="600px" width="680px"
form={form} form={form}
key={new Date().getDate()} key={new Date().getTime()}
onOpenChange={(open: any) => { onOpenChange={(open: any) => {
if (open && props.item) { if (open && props.item) {
form.resetFields(); form.resetFields();
@ -39,7 +38,6 @@ export default function Create(props: MyBetaModalFormProps) {
}} }}
onFinish={async (values: any) => { onFinish={async (values: any) => {
const { node_approvers } = values; const { node_approvers } = values;
if (ApprovalTemplates?.length > 0 && node_approvers?.length > 0) { if (ApprovalTemplates?.length > 0 && node_approvers?.length > 0) {
// 遍历模板节点,通过名称找到对应的提交节点进行校验 // 遍历模板节点,通过名称找到对应的提交节点进行校验
for (const templateNode of ApprovalTemplates) { for (const templateNode of ApprovalTemplates) {
@ -166,7 +164,10 @@ export default function Create(props: MyBetaModalFormProps) {
Apis.Approval.ApprovalTemplates.Show({ Apis.Approval.ApprovalTemplates.Show({
id: templateId, id: templateId,
}).then((res) => { }).then((res) => {
setApprovalTemplates(res?.data?.approval_template_nodes || []); ApprovalTemplates = res?.data?.approval_template_nodes || [];
// setApprovalTemplates(
// res?.data?.approval_template_nodes || [],
// );
form.setFieldsValue({ form.setFieldsValue({
approval_templates_id: templateId, approval_templates_id: templateId,
node_approvers: res?.data?.approval_template_nodes?.map( node_approvers: res?.data?.approval_template_nodes?.map(
@ -199,46 +200,48 @@ export default function Create(props: MyBetaModalFormProps) {
deleteIconProps: false, deleteIconProps: false,
creatorButtonProps: false, creatorButtonProps: false,
actionRender: (field: any, action: any) => [ actionRender: (field: any, action: any) => [
<Button <Space key={`items_${field.name}`}>
key="add" <Button
type="link" key="add"
size="small" type="link"
onClick={() => { size="small"
const currentNodeType = form.getFieldValue([ onClick={() => {
'node_approvers', const currentNodeType = form.getFieldValue([
field.name, 'node_approvers',
'node_type', field.name,
]); 'node_type',
if ( ]);
currentNodeType === if (
ApprovalTemplateNodesNodeTypeEnum.CC.value currentNodeType ===
) { ApprovalTemplateNodesNodeTypeEnum.CC.value
message.warning('抄送节点不允许添加'); ) {
return; message.warning('抄送节点不允许添加');
} return;
action.add( }
{ action.add(
node_type: {
ApprovalTemplateNodesNodeTypeEnum.Approver node_type:
.value, ApprovalTemplateNodesNodeTypeEnum.Approver
}, .value,
field.name + 1, },
); field.name + 1,
}} );
> }}
>
</Button>,
<Button </Button>
key="delete" <Button
type="link" key="delete"
size="small" type="link"
danger size="small"
onClick={() => { danger
action.remove(field.name); onClick={() => {
}} action.remove(field.name);
> }}
>
</Button>,
</Button>
</Space>,
], ],
}, },
formItemProps: { formItemProps: {
@ -254,7 +257,7 @@ export default function Create(props: MyBetaModalFormProps) {
key: 'node_type', key: 'node_type',
// title: `类型`, // title: `类型`,
valueEnum: ApprovalTemplateNodesNodeTypeEnum, valueEnum: ApprovalTemplateNodesNodeTypeEnum,
colProps: { span: 5 }, colProps: { span: 6 },
formItemProps: { formItemProps: {
...rulesHelper.text, ...rulesHelper.text,
}, },
@ -281,7 +284,7 @@ export default function Create(props: MyBetaModalFormProps) {
Selects.Employees({ Selects.Employees({
key: 'members', key: 'members',
title: ``, title: ``,
colProps: { span: 13 }, colProps: { span: 12 },
formItemProps: { formItemProps: {
...rulesHelper.array, ...rulesHelper.array,
}, },

View File

@ -8,25 +8,34 @@ import {
import { Selects } from '@/components/Select'; import { Selects } from '@/components/Select';
import { SelectContract } from '@/components/SelectContract'; import { SelectContract } from '@/components/SelectContract';
import { Apis } from '@/gen/Apis'; import { Apis } from '@/gen/Apis';
import { ApprovalTemplateNodesNodeTypeEnum } from '@/gen/Enums'; import {
ApprovalTemplateNodesNodeTypeEnum,
CompanySealsTypeEnum,
} from '@/gen/Enums';
import { BetaSchemaForm } from '@ant-design/pro-components'; import { BetaSchemaForm } from '@ant-design/pro-components';
import { Button, Form, message } from 'antd'; import { Button, Form, message } from 'antd';
import { useState } from 'react';
export default function Create(props: MyBetaModalFormProps) { export default function Create(props: MyBetaModalFormProps) {
const [form] = Form.useForm(); const [form] = Form.useForm();
const [ApprovalTemplates, setApprovalTemplates] = useState<any[]>([]); let ApprovalTemplates: any[] = [];
return ( return (
<BetaSchemaForm<ApiTypes.Contract.ContractOthers.Update> <BetaSchemaForm<ApiTypes.Contract.ContractOthers.Update>
{...MyModalFormProps.props} {...MyModalFormProps.props}
title={`其他用印申请`} title={`其他用印申请`}
trigger={<MyButtons.Default title="重新申请" />} trigger={
<MyButtons.Default
disabled={
props?.item?.status === 'Pending' ||
props?.item?.status === 'Approved'
}
title="重新申请"
/>
}
layout="horizontal" layout="horizontal"
labelCol={{ span: 4 }} labelCol={{ span: 4 }}
wrapperCol={{ span: 20 }} wrapperCol={{ span: 20 }}
labelAlign="left" labelAlign="left"
width="600px" width="680px"
form={form} form={form}
key={new Date().getTime()} key={new Date().getTime()}
onOpenChange={(open: any) => { onOpenChange={(open: any) => {
@ -34,6 +43,7 @@ export default function Create(props: MyBetaModalFormProps) {
form.resetFields(); form.resetFields();
form.setFieldsValue({ form.setFieldsValue({
...props.item, ...props.item,
seals: props.item?.seals?.map((i: any) => i?.id) || [],
}); });
} }
}} }}
@ -137,6 +147,22 @@ export default function Create(props: MyBetaModalFormProps) {
fieldProps: { fieldProps: {
showSearch: true, showSearch: true,
mode: 'multiple', mode: 'multiple',
labelRender: (res: any) => {
console.log(res, props?.item);
if (res?.label) {
return res?.label;
} else {
return props?.item?.seals?.map((i: any) => {
if (i?.id === res?.value) {
return `${i?.company_supplier?.name} (${
CompanySealsTypeEnum[
i?.type as keyof typeof CompanySealsTypeEnum
].text
})`;
}
});
}
},
}, },
}), }),
MyFormItems.UploadImages({ MyFormItems.UploadImages({
@ -167,7 +193,7 @@ export default function Create(props: MyBetaModalFormProps) {
Apis.Approval.ApprovalTemplates.Show({ Apis.Approval.ApprovalTemplates.Show({
id: templateId, id: templateId,
}).then((res) => { }).then((res) => {
setApprovalTemplates(res?.data?.approval_template_nodes || []); ApprovalTemplates = res?.data?.approval_template_nodes || [];
form.setFieldsValue({ form.setFieldsValue({
approval_templates_id: templateId, approval_templates_id: templateId,
node_approvers: res?.data?.approval_template_nodes?.map( node_approvers: res?.data?.approval_template_nodes?.map(
@ -255,7 +281,7 @@ export default function Create(props: MyBetaModalFormProps) {
key: 'node_type', key: 'node_type',
// title: `类型`, // title: `类型`,
valueEnum: ApprovalTemplateNodesNodeTypeEnum, valueEnum: ApprovalTemplateNodesNodeTypeEnum,
colProps: { span: 5 }, colProps: { span: 6 },
formItemProps: { formItemProps: {
...rulesHelper.text, ...rulesHelper.text,
}, },
@ -282,7 +308,7 @@ export default function Create(props: MyBetaModalFormProps) {
Selects.Employees({ Selects.Employees({
key: 'members', key: 'members',
title: ``, title: ``,
colProps: { span: 13 }, colProps: { span: 12 },
formItemProps: { formItemProps: {
...rulesHelper.array, ...rulesHelper.array,
}, },