fix: 1. 继续对齐交叉评查的接口,完善创建交叉评查的逻辑 和 相关组件的渲染布局。
2. 文档的基本信息修改改用接口。 3. 重新完善角色权限管理的页面逻辑。 4.将评查点列表中的返回逻辑改用浏览器的记忆返回。
This commit is contained in:
@@ -5,6 +5,7 @@ import { Button } from '~/components/ui/Button';
|
||||
import { Card } from '~/components/ui/Card';
|
||||
import { Tag } from '~/components/ui/Tag';
|
||||
import { DocumentListModal } from '~/components/cross-checking';
|
||||
import { usePermission } from '~/hooks/usePermission';
|
||||
|
||||
import crossCheckingStyles from "~/styles/pages/cross-checking_index.css?url";
|
||||
import { Table } from '~/components/ui/Table';
|
||||
@@ -249,6 +250,11 @@ export default function CrossCheckingIndex() {
|
||||
const navigate = useNavigate();
|
||||
const fetcher = useFetcher();
|
||||
|
||||
// 权限控制
|
||||
const { canCreate, canView } = usePermission();
|
||||
const canCreateTask = canCreate('cross_review');
|
||||
const canViewTask = canView('cross_review');
|
||||
|
||||
// 状态管理
|
||||
const [isDeleting, setIsDeleting] = useState(false);
|
||||
const [hasAutoOpened, setHasAutoOpened] = useState(false); // 标记是否已自动打开模态框
|
||||
@@ -390,11 +396,16 @@ export default function CrossCheckingIndex() {
|
||||
|
||||
// 渲染操作按钮
|
||||
const renderOperation = (task: CrossCheckingTask) => {
|
||||
// 无权限时不显示操作按钮
|
||||
if (!canViewTask) {
|
||||
return <span className="text-gray-400">-</span>;
|
||||
}
|
||||
|
||||
switch (task.status) {
|
||||
case CrossCheckingTaskStatus.PENDING:
|
||||
return (
|
||||
<Button
|
||||
type="primary"
|
||||
<Button
|
||||
type="primary"
|
||||
size="small"
|
||||
className="operation-btn primary"
|
||||
onClick={() => handleViewResult(task.id,task.taskName)}
|
||||
@@ -405,8 +416,8 @@ export default function CrossCheckingIndex() {
|
||||
);
|
||||
case CrossCheckingTaskStatus.IN_PROGRESS:
|
||||
return (
|
||||
<Button
|
||||
type="default"
|
||||
<Button
|
||||
type="default"
|
||||
size="small"
|
||||
className="operation-btn secondary"
|
||||
onClick={() => handleViewResult(task.id,task.taskName)}
|
||||
@@ -417,8 +428,8 @@ export default function CrossCheckingIndex() {
|
||||
);
|
||||
case CrossCheckingTaskStatus.COMPLETED:
|
||||
return (
|
||||
<Button
|
||||
type="default"
|
||||
<Button
|
||||
type="default"
|
||||
size="small"
|
||||
className="operation-btn secondary"
|
||||
onClick={() => handleViewResult(task.id,task.taskName)}
|
||||
@@ -739,9 +750,11 @@ export default function CrossCheckingIndex() {
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<Button type="primary" icon="ri-add-line" to="/cross-checking/upload">
|
||||
创建任务
|
||||
</Button>
|
||||
{canCreateTask && (
|
||||
<Button type="primary" icon="ri-add-line" to="/cross-checking/upload">
|
||||
创建任务
|
||||
</Button>
|
||||
)}
|
||||
</div>
|
||||
|
||||
{/* 筛选区域 */}
|
||||
|
||||
Reference in New Issue
Block a user