Blame view

src/pages/crm_new/Settings/subpages/CloseClue/index.tsx 6.27 KB
0fddd13d   舒述军   暂停区域线索站岗分配资格
1
2
3
4
5
6
7
  import React, { useEffect, useState } from 'react';
  import { Button, Card, ConfigProvider, Form, InputNumber, message, Row, Switch, Space } from 'antd';
  import zhCN from 'antd/lib/locale-provider/zh_CN';
  import { PageHeaderWrapper } from '@ant-design/pro-layout';
  import { getInfoApi, saveInfoApi, Result } from './api';
  import './style.less';
  import { history } from 'umi';
4e10f6e0   舒述军   完善逻辑
8
  import { debounce } from 'lodash';
0fddd13d   舒述军   暂停区域线索站岗分配资格
9
10
11
12
  
  export default function CollectionFollowSetting() {
    const [edit, setEdit] = useState(false);
    const [loading, setLoading] = useState<boolean>(true);
4e10f6e0   舒述军   完善逻辑
13
    const [confirmLoading, setConfirmLoading]= useState<boolean>(false);
0fddd13d   舒述军   暂停区域线索站岗分配资格
14
15
16
17
    const [form] = Form.useForm();
    const [stageMinAssignCount, setStageMinAssignCount] = useState<number>(0);
    const [dailyMinAssignCount, setDailyMinAssignCount] = useState<number>(0);
    const [increaseCount, setIncreaseCount] = useState<number>(0);
4e10f6e0   舒述军   完善逻辑
18
    const [checked, setChecked] = useState<boolean>(false);
0fddd13d   舒述军   暂停区域线索站岗分配资格
19
20
  
    useEffect(() => {
4e10f6e0   舒述军   完善逻辑
21
22
23
24
      getInfo();
    }, []);
  
    const getInfo = () => {
0fddd13d   舒述军   暂停区域线索站岗分配资格
25
26
27
28
29
30
      getInfoApi().then(res => {
        if (res.data) {
          form.setFieldsValue({...res.data});
          setDailyMinAssignCount(res.data?.dailyMinAssignCount || 0);
          setStageMinAssignCount(res.data?.stageMinAssignCount || 0);
          setIncreaseCount(res.data?.increaseCount || 0);
4e10f6e0   舒述军   完善逻辑
31
          setChecked(res.data.onlineSaleShopAssignClue || false);
0fddd13d   舒述军   暂停区域线索站岗分配资格
32
33
34
35
36
37
        }
        setLoading(false);
      }).catch(error => {
        message.error(error.message);
        setLoading(false);
      });
4e10f6e0   舒述军   完善逻辑
38
39
40
41
42
43
    };
  
    const onCancle = () => {
      getInfo();
      setEdit(false);
    };
0fddd13d   舒述军   暂停区域线索站岗分配资格
44
45
46
47
48
49
50
51
  
    const onOk = async () => {
      const params: any = await form.validateFields();
      const _params: Result = {
        exclusiveClueConvertRate: params.exclusiveClueConvertRate,
        stageMinAssignCount,
        dailyMinAssignCount,
        increaseCount,
4e10f6e0   舒述军   完善逻辑
52
        onlineSaleShopAssignClue: checked,
0fddd13d   舒述军   暂停区域线索站岗分配资格
53
      };
4e10f6e0   舒述军   完善逻辑
54
      setConfirmLoading(true);
0fddd13d   舒述军   暂停区域线索站岗分配资格
55
56
57
      saveInfoApi(_params).then(res => {
        message.success(res.result);
        setEdit(false);
4e10f6e0   舒述军   完善逻辑
58
59
        setConfirmLoading(false);
        history.goBack();
0fddd13d   舒述军   暂停区域线索站岗分配资格
60
61
      }).catch(error => {
        message.error(error.message);
4e10f6e0   舒述军   完善逻辑
62
        setConfirmLoading(false);
0fddd13d   舒述军   暂停区域线索站岗分配资格
63
64
65
66
67
68
      });
    };
  
    return (
      <PageHeaderWrapper title="暂停区域线索站岗分配资格">
        <ConfigProvider locale={zhCN}>
072aa8b8   舒述军   样式修改
69
          <Card style={{paddingLeft: "60px", justifyContent: 'center'}} bordered={false} loading={loading}>
0fddd13d   舒述军   暂停区域线索站岗分配资格
70
71
            {/* <Spin> */}
            <Form
072aa8b8   舒述军   样式修改
72
73
              labelCol={{ span: 2 }}
              wrapperCol={{ span: 18 }} 
0fddd13d   舒述军   暂停区域线索站岗分配资格
74
75
              form={form}
            >
71853f20   舒述军   文字修改
76
              <Form.Item labelCol={{offset: 0}} label="区域站岗分配线索转化率标准" name="exclusiveClueConvertRate" labelAlign="right" rules={[{ required: true, message: '请输入' }]}>
0fddd13d   舒述军   暂停区域线索站岗分配资格
77
78
79
80
81
82
83
84
85
86
87
88
                <InputNumber
                  style={{width: '100%'}}
                  controls={false}
                  min={0}
                  max={100}
                  formatter={value => `${value}%`}
                  precision={2}
                  disabled={!edit}
                  parser={value => value?.replace('%', '')}
                />
              </Form.Item>
  
71853f20   舒述军   文字修改
89
90
              <Form.Item labelCol={{offset: 2}} label=" " name="stageMinAssignCount" colon={false} labelAlign="right">
                <span>{`(1)每阶段滚动判定,低于"区域站岗分配线索转化率标准",下一阶段线索每日仅分配`}</span>
0fddd13d   舒述军   暂停区域线索站岗分配资格
91
92
93
94
95
96
97
98
99
100
                <InputNumber
                  controls={false}
                  min={0}
                  disabled={!edit}
                  value={stageMinAssignCount}
                  onChange={(e) => setStageMinAssignCount(e || 0)}
                  formatter={value => `${value}个`}
                  precision={0}
                  parser={value => value?.replace('个', '')}
                />
072aa8b8   舒述军   样式修改
101
102
                <br />
                <span style={{color: "#F4333C"}}>(最低要求);阶段:1~10号;11~20号;21~月末</span>
0fddd13d   舒述军   暂停区域线索站岗分配资格
103
104
              </Form.Item>
  
71853f20   舒述军   文字修改
105
              <Form.Item labelCol={{offset: 2}} className="feewee-settings-form-closeClue" label=" " colon={false}>
0fddd13d   舒述军   暂停区域线索站岗分配资格
106
107
108
109
110
111
112
113
114
115
116
117
                <Form.Item colon={false} name="dailyMinAssignCount">
                  <span>(2)从</span>
                  <InputNumber
                    controls={false}
                    value={dailyMinAssignCount}
                    onChange={(e) => setDailyMinAssignCount(e || 0)}
                    min={0}
                    disabled={!edit}
                    formatter={value => `${value}个`}
                    precision={0}
                    parser={value => value?.replace('个', '')}
                  />
072aa8b8   舒述军   样式修改
118
                  <span>线索起,当天区域站岗分配线索跟进数每增加</span>
0fddd13d   舒述军   暂停区域线索站岗分配资格
119
120
                </Form.Item>
                <Form.Item colon={false} name="increaseCount">
0fddd13d   舒述军   暂停区域线索站岗分配资格
121
122
123
124
125
126
127
128
129
130
                  <InputNumber
                    controls={false}
                    min={0}
                    value={increaseCount}
                    onChange={(e) => setIncreaseCount(e || 0)}
                    formatter={value => `${value}个`}
                    precision={0}
                    disabled={!edit}
                    parser={value => value?.replace('个', '')}
                  />
71853f20   舒述军   文字修改
131
                  <span>,低于{`"区域站岗分配线索转化率标准"`},暂停当天资格;</span>
0fddd13d   舒述军   暂停区域线索站岗分配资格
132
133
                </Form.Item>
              </Form.Item>
072aa8b8   舒述军   样式修改
134
              <Form.Item labelCol={{offset: 0}} label="网销门店是否参与区域线索站岗分配" name="onlineSaleShopAssignClue" labelAlign="right">
0fddd13d   舒述军   暂停区域线索站岗分配资格
135
                <Switch
4e10f6e0   舒述军   完善逻辑
136
137
                  disabled={!edit}
                  checked={checked}
0fddd13d   舒述军   暂停区域线索站岗分配资格
138
139
140
                  checkedChildren="是"
                  unCheckedChildren="否"
                  size="default"
4e10f6e0   舒述军   完善逻辑
141
                  onChange={(e) => setChecked(e)}
0fddd13d   舒述军   暂停区域线索站岗分配资格
142
143
144
145
146
147
                />
              </Form.Item>
   
            </Form>
            <Row justify="space-around" align="middle">
              <Space>
4e10f6e0   舒述军   完善逻辑
148
149
150
151
152
                {
                  !edit ? <Button disabled={confirmLoading} type="default" onClick={() => setEdit(true)}>编辑</Button> : <Button disabled={confirmLoading} type="default" onClick={onCancle}>取消</Button>
                }
                <Button disabled={confirmLoading} loading={confirmLoading} type="primary" onClick={debounce(onOk, 380)}>确认</Button>
                <Button disabled={confirmLoading} type="link" onClick={() => { history.goBack(); }}>返回上一级</Button>
0fddd13d   舒述军   暂停区域线索站岗分配资格
153
154
155
156
157
158
159
160
              </Space>
            </Row>
            {/* </Spin> */}
          </Card>
        </ConfigProvider>
      </PageHeaderWrapper>
    );
  }