添加根据合同/卷宗的入口进行分类评查点列表,同时区分卷宗添加的分组属于卷宗,合同添加的分组属于合同
This commit is contained in:
@@ -162,6 +162,7 @@ export async function action({ request }: ActionFunctionArgs) {
|
||||
const status = formData.get("status") as string || "active";
|
||||
const groupType = formData.get("groupType") as string;
|
||||
const parentId = groupType === "secondary" ? formData.get("parentId") as string : null;
|
||||
const reviewType = formData.get("reviewType") as string || undefined;
|
||||
|
||||
// 表单验证
|
||||
// action是处于服务端的表单提交方法,这里再次验证表单数据也是出于安全考虑,防止客户端验证被绕过从而提交非法数据
|
||||
@@ -194,7 +195,8 @@ export async function action({ request }: ActionFunctionArgs) {
|
||||
code: code.trim(),
|
||||
description: description?.trim() || "",
|
||||
is_enabled: status === "active",
|
||||
pid: parentId === null ? "0" : parentId
|
||||
pid: parentId === null ? "0" : parentId,
|
||||
reviewType: reviewType // 传递 reviewType
|
||||
};
|
||||
|
||||
try {
|
||||
@@ -244,12 +246,15 @@ export default function RuleGroupNew() {
|
||||
const userRole = rootData?.userRole || 'common';
|
||||
|
||||
|
||||
// 判断表单是否为只读模式
|
||||
// 判断表单是否为只读模式
|
||||
const isReadOnly = userRole === 'common';
|
||||
|
||||
|
||||
// 解构数据
|
||||
const { group, parentGroups, isEdit, error } = data;
|
||||
|
||||
|
||||
// 从 sessionStorage 获取 reviewType
|
||||
const [reviewType, setReviewType] = useState<string | null>(null);
|
||||
|
||||
// 表单状态管理 - 使用受控组件
|
||||
const [formValues, setFormValues] = useState<{
|
||||
groupType: "primary" | "secondary";
|
||||
@@ -309,7 +314,20 @@ export default function RuleGroupNew() {
|
||||
});
|
||||
}
|
||||
}, [group]);
|
||||
|
||||
|
||||
// 在组件挂载时从 sessionStorage 获取 reviewType
|
||||
useEffect(() => {
|
||||
try {
|
||||
if (typeof window !== 'undefined') {
|
||||
const storedReviewType = sessionStorage.getItem('reviewType');
|
||||
// console.log("从 sessionStorage 获取 reviewType:", storedReviewType);
|
||||
setReviewType(storedReviewType);
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('获取 sessionStorage 中的 reviewType 失败:', error);
|
||||
}
|
||||
}, []);
|
||||
|
||||
// 验证表单字段
|
||||
const validateField = (field: string, value: string) => {
|
||||
switch (field) {
|
||||
@@ -471,7 +489,10 @@ export default function RuleGroupNew() {
|
||||
<Form method="post" id="group-form" ref={formRef} onSubmit={handleBeforeSubmit}>
|
||||
{/* 如果是编辑模式,添加ID */}
|
||||
{group?.id && <input type="hidden" name="id" value={group.id} />}
|
||||
|
||||
|
||||
{/* 传递 reviewType */}
|
||||
{reviewType && <input type="hidden" name="reviewType" value={reviewType} />}
|
||||
|
||||
{/* 基本信息区域 */}
|
||||
<Card className="form-section">
|
||||
<div className="form-section-header">
|
||||
|
||||
Reference in New Issue
Block a user