index.tsx
2.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
import React, { useEffect, useState } from "react";
import { Button, Card, Form, Row, Tabs } from "antd";
import { PageHeaderWrapper } from "@ant-design/pro-layout";
import { history } from "umi";
import { Provider, useStore } from "../../store";
import ShopTask from "./components/ShopTask";
import AdviserTask from "./components/AdviserTask";
import useInitial from "@/hooks/useInitail";
import * as API from "../../api";
import { isEmpty } from "lodash";
export default () => (
<Provider>
<TaskEdit />
</Provider>
);
function TaskEdit() {
const querys: any = history.location?.query;
const readOnly = querys?.readOnly === "1";
const shopId = querys?.shopId;
const taskDate = querys?.taskDate;
const queryTab = querys?.currTab;
const { shopTaskItem, setShopTaskItem, setIsReadOnly } = useStore();
const [currTab, setCurrTab] = useState(queryTab ?? "1");
const [shopTaskForm] = Form.useForm();
// 获取门店零售任务详情
const { data, setParams } = useInitial<
API.ShopTaskItem,
API.GetShopSaleTaskReq
>(API.getShopSaleTask, {} as API.ShopTaskItem, {
shopId,
taskDate,
});
useEffect(() => {
setShopTaskItem(data);
setIsReadOnly(readOnly);
}, [data, readOnly]);
return (
<PageHeaderWrapper title={false}>
<Card
bodyStyle={{ paddingTop: 0 }}
title={<span>当前选择门店:{shopTaskItem?.shopName}</span>}
>
<Tabs
defaultActiveKey={currTab}
onChange={(activeKey) => setCurrTab(activeKey)}
items={[
{
label: `门店任务分配${readOnly ? "详情" : ""}`,
key: "1",
children: !isEmpty(shopTaskItem) && (
<ShopTask
form={shopTaskForm}
onRefresh={() => setParams({}, true)}
/>
),
},
{
label: `销售顾问任务分配${readOnly ? "详情" : ""}`,
key: "2",
children: !isEmpty(shopTaskItem) && (
<AdviserTask
form={shopTaskForm}
onRefresh={() => setParams({}, true)}
/>
),
},
]}
/>
{isEmpty(shopTaskItem) && (
<Row align="middle" justify="center" style={{ marginTop: 50 }}>
<Button onClick={() => history.goBack()}>返回列表</Button>
</Row>
)}
</Card>
</PageHeaderWrapper>
);
}