import {
dispatchOrder,
ignoreTaskRequest,
setTaskAutomation,
} from '@/services/TaskManage';
import { UnityAction } from '@/utils/utils';
import { CloseCircleFilled } from '@ant-design/icons';
import { connect, useLocation, useParams, useRequest } from '@umijs/max';
import { Button, Divider, Tabs } from 'antd';
import { useEffect, useState } from 'react';
import MandateDetail from '../components/MandateDetail';
import styles from './index.less';
const TaskModal = (props) => {
const { projectID } = useParams();
const location = useLocation();
const queryParams = new URLSearchParams(location.search);
const mandateIDs =
queryParams.get('mandate_id')?.split(',').length === 1
? queryParams.get('mandate_id')
: queryParams.get('mandate_id')?.split(',');
const { userList, dispatch } = props;
const [modalTitle, setModalTitle] = useState(null);
const [tabItems, setTabItems] = useState([]);
const [activeKey, setActiveKey] = useState();
const { run: runIgnore } = useRequest(ignoreTaskRequest, {
manual: true,
});
const { run: runDispatch } = useRequest(dispatchOrder, {
manual: true,
});
const { run: runAutomate } = useRequest(setTaskAutomation, {
manual: true,
});
const onTabChange = (key) => {
setActiveKey(String(key));
};
const closePage = () => {
// send message to unity close this modal page
UnityAction.sendMsg('CloseTask');
};
// 忽略
const onIgnoreTaskConfirm = async (mandateID, reason) => {
const params = {
Id: mandateID,
Status: 4,
note: reason,
};
const result = await runIgnore(params);
if (result) {
return true;
}
};
// 派单
const onDispatchTaskConfirm = async (params) => {
const result = await runDispatch(params);
if (result) {
return true;
}
};
// 自动处理
const onAutoHandleTaskConfirm = async (pw, mandate) => {
const params = {
mandate_id: mandate.Id,
pw,
};
const result = runAutomate(params, mandate);
if (result) {
return true;
}
};
useEffect(() => {
if (mandateIDs !== undefined) {
if (Array.isArray(mandateIDs)) {
setModalTitle(null);
setTabItems(
mandateIDs.map((item, index) => {
return {
key: String(item),
label: 任务{index + 1},
children: (