fix(project): dispatchModal

This commit is contained in:
zhangheng
2026-04-15 18:36:28 +08:00
parent c8ded60d5f
commit 915c9ddd86

View File

@@ -3,15 +3,7 @@
import { taskDispatch } from "@/components/label/api/task"
import { Task } from "@/components/label/api/task/typing"
import { usePermissionStore } from "@/components/label/store/auth"
import {
Button,
Group,
Modal,
Select,
Stack,
Switch,
Text,
} from "@mantine/core"
import { Badge, Button, Group, Modal, Select, Stack, Text } from "@mantine/core"
import { useForm } from "@mantine/form"
import { notifications } from "@mantine/notifications"
import { useEffect } from "react"
@@ -30,7 +22,6 @@ export default function DispatchModal(props: {
const form = useForm({
initialValues: {
reject: false,
task_status_dst: "",
uid_dst: "",
},
@@ -41,7 +32,6 @@ export default function DispatchModal(props: {
const resetFormState = () => {
form.setValues({
reject: false,
task_status_dst: "",
uid_dst: "",
})
@@ -61,6 +51,7 @@ export default function DispatchModal(props: {
const taskStatusSrc = dispatchData?.status ?? 0
const taskStatusSrcLabel = dispatchOpts[taskStatusSrc]?.label ?? "-"
const taskRejected = Boolean(dispatchData?.reject)
const dstOptions =
dispatchOpts[taskStatusSrc]?.opts?.map((o) => ({
label: o.label,
@@ -116,7 +107,7 @@ export default function DispatchModal(props: {
try {
await taskDispatch({
operation_uid: opUid,
reject: values.reject,
reject: taskRejected,
task_ids: task_ids.map((item) => item.id),
task_status_src: taskStatusSrc,
task_status_dst: taskStatusDst,
@@ -143,9 +134,16 @@ export default function DispatchModal(props: {
{task_ids.map((item) => item.project_name).join("、") ?? "-"}
</Text>
<Text size="sm" c="dimmed">
{taskStatusSrcLabel}
</Text>
<Group gap={6}>
<Text size="sm" c="dimmed">
{taskStatusSrcLabel}
</Text>
{taskRejected ? (
<Badge variant="outline" color="yellow" size="sm">
</Badge>
) : null}
</Group>
<Select
label="目标状态"
@@ -168,14 +166,6 @@ export default function DispatchModal(props: {
onChange={(v) => form.setFieldValue("uid_dst", v ?? "")}
/>
<Switch
label="是否返工"
checked={form.values.reject}
onChange={(e) =>
form.setFieldValue("reject", e.currentTarget.checked)
}
/>
<Group justify="flex-end" gap="sm">
<Button
variant="default"