Commit 4cbecaac1c14e38d829543b52534e1861242d516
1 parent
166b8697
添加商业险和装潢产值目标
Showing
3 changed files
with
70 additions
and
4 deletions
src/pages/order3/AddValueTaskConfig/api.ts
src/pages/order3/AddValueTaskConfig/components/EditModal.tsx
1 | 1 | import React, { useState, useEffect } from 'react'; |
2 | -import { Modal, Button, message, Form, InputNumber, DatePicker, Radio } from 'antd'; | |
2 | +import { Modal, Button, message, Form, InputNumber, DatePicker, Radio, Row, Col } from 'antd'; | |
3 | 3 | import {useStore} from '../index'; |
4 | 4 | import {ListResult, saveConfigApi} from '../api'; |
5 | 5 | import { debounce, isNil } from 'lodash'; |
... | ... | @@ -57,7 +57,9 @@ export default function DetailModal() { |
57 | 57 | decoOutputValueRatio: currentData.data?.decoOutputValueRatio, |
58 | 58 | shopList: currentData.data?.shopList?.map((v: any) => ({value: v.shopId, label: v.shopName})) || [], |
59 | 59 | rangeDate: [moment(currentData.data.beginTime), moment(currentData.data.endTime)], |
60 | - addedValueType: currentData?.data.addedValueType | |
60 | + addedValueType: currentData?.data?.addedValueType, | |
61 | + vciOutputValueTask: currentData?.data?.vciOutputValueTask, | |
62 | + decoOutputValueTask: currentData?.data?.decoOutputValueTask | |
61 | 63 | }); |
62 | 64 | setType(currentData.data?.addedValueType || 2); |
63 | 65 | }; |
... | ... | @@ -75,7 +77,9 @@ export default function DetailModal() { |
75 | 77 | shopList: params.shopList.map((v: any) => ({shopId: v.value, shopName: v.label})), |
76 | 78 | beginTime: moment(params.rangeDate[0]).valueOf(), |
77 | 79 | endTime: moment(params.rangeDate[1]).valueOf(), |
78 | - addedValueType: params.addedValueType | |
80 | + addedValueType: params.addedValueType, | |
81 | + vciOutputValueTask: params.vciOutputValueTask, | |
82 | + decoOutputValueTask: params.decoOutputValueTask | |
79 | 83 | }; |
80 | 84 | saveConfigApi(_params) |
81 | 85 | .then(res => { |
... | ... | @@ -129,6 +133,54 @@ export default function DetailModal() { |
129 | 133 | parser={(value: string) => value?.replace('元/台', '')} |
130 | 134 | /> |
131 | 135 | </Form.Item> |
136 | + <Row style={{marginLeft: 30}}> | |
137 | + | |
138 | + <Form.Item | |
139 | + label={<span>其中:<span>商业险产值目标</span></span>} | |
140 | + name="vciOutputValueTask" | |
141 | + style={{width: '100%'}} | |
142 | + rules={[({ getFieldValue }) => ({ | |
143 | + validator(_, value) { | |
144 | + if (isNil(value)) { | |
145 | + return Promise.reject(new Error('请输入')); | |
146 | + } | |
147 | + return Promise.resolve(); | |
148 | + }, | |
149 | + })]} | |
150 | + > | |
151 | + <InputNumber | |
152 | + style={{width: '100%'}} | |
153 | + controls={false} | |
154 | + min={0} | |
155 | + formatter={(value: any) => `${value}元/台`} | |
156 | + precision={2} | |
157 | + parser={(value: string) => value?.replace('元/台', '')} | |
158 | + /> | |
159 | + </Form.Item> | |
160 | + <Form.Item | |
161 | + label={<span style={{textIndent: '42px'}}>装潢产值目标</span>} | |
162 | + name="decoOutputValueTask" | |
163 | + style={{width: '100%'}} | |
164 | + rules={[({ getFieldValue }) => ({ | |
165 | + validator(_, value) { | |
166 | + if (isNil(value)) { | |
167 | + return Promise.reject(new Error('请输入')); | |
168 | + } | |
169 | + return Promise.resolve(); | |
170 | + }, | |
171 | + })]} | |
172 | + > | |
173 | + <InputNumber | |
174 | + style={{width: '100%'}} | |
175 | + controls={false} | |
176 | + min={0} | |
177 | + formatter={(value: any) => `${value}元/台`} | |
178 | + precision={2} | |
179 | + parser={(value: string) => value?.replace('元/台', '')} | |
180 | + /> | |
181 | + </Form.Item> | |
182 | + </Row> | |
183 | + | |
132 | 184 | <div className="addValue_wrapper"><span className="addvalue_text">*</span><span>产值构成:</span></div> |
133 | 185 | <Form.Item |
134 | 186 | label={type === 2 ? "1.计算保险毛利" : "1.计算保险产值:"} | ... | ... |
src/pages/order3/AddValueTaskConfig/components/List.tsx
... | ... | @@ -43,13 +43,19 @@ export default function LargeList({addedValueType} : Props) { |
43 | 43 | rowKey="id" |
44 | 44 | pagination={paginationConfig} |
45 | 45 | > |
46 | - <Column | |
46 | + <Column | |
47 | 47 | title="单车附加值目标" |
48 | 48 | dataIndex="addedValueTask" |
49 | 49 | align="left" |
50 | 50 | render={(_text) => (isNil(_text) ? '-' : <span style={{color: "#FF921C", fontSize: '14px'}}>{_text}元<span style={{color: "#333"}}>/台</span></span>)} |
51 | 51 | /> |
52 | 52 | <Column |
53 | + title="商业险产值目标" | |
54 | + dataIndex="vciOutputValueTask" | |
55 | + align="left" | |
56 | + render={(_text) => (isNil(_text) ? '-' : <div style={{display: 'flex', flexDirection: 'column'}}><span style={{color: "#FF921C", fontSize: '14px'}}>{_text}元<span style={{color: "#333"}}>/台</span></span><span>(含驾意险)</span></div>)} | |
57 | + /> | |
58 | + <Column | |
53 | 59 | title={addedValueType === 2 ? "计算保险毛利" : "计算保险产值"} |
54 | 60 | dataIndex="addedValueTask" |
55 | 61 | align="left" |
... | ... | @@ -61,6 +67,12 @@ export default function LargeList({addedValueType} : Props) { |
61 | 67 | </div> |
62 | 68 | )} |
63 | 69 | /> |
70 | + <Column | |
71 | + title="装潢产值目标" | |
72 | + dataIndex="decoOutputValueTask" | |
73 | + align="left" | |
74 | + render={(_text) => (isNil(_text) ? '-' : <span style={{color: "#FF921C", fontSize: '14px'}}>{_text}元<span style={{color: "#333"}}>/台</span></span>)} | |
75 | + /> | |
64 | 76 | <Column |
65 | 77 | title={addedValueType === 2 ? "计算装潢毛利" : "计算装潢产值"} |
66 | 78 | dataIndex="decoOutputValueRatio" | ... | ... |