Commit 4cbecaac1c14e38d829543b52534e1861242d516

Authored by 舒述军
1 parent 166b8697

添加商业险和装潢产值目标

src/pages/order3/AddValueTaskConfig/api.ts
@@ -24,6 +24,8 @@ export interface ListResult { @@ -24,6 +24,8 @@ export interface ListResult {
24 endTime?: number // 结束时间 24 endTime?: number // 结束时间
25 enable?: boolean // 启用/禁用 25 enable?: boolean // 启用/禁用
26 addedValueType?: number // 附加值类型 26 addedValueType?: number // 附加值类型
  27 + vciOutputValueTask?: number // 商业险产值目标
  28 + decoOutputValueTask?: number // 装潢产值目标
27 } 29 }
28 30
29 /** 查询附加值任务配置服务列表 */ 31 /** 查询附加值任务配置服务列表 */
src/pages/order3/AddValueTaskConfig/components/EditModal.tsx
1 import React, { useState, useEffect } from 'react'; 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 import {useStore} from '../index'; 3 import {useStore} from '../index';
4 import {ListResult, saveConfigApi} from '../api'; 4 import {ListResult, saveConfigApi} from '../api';
5 import { debounce, isNil } from 'lodash'; 5 import { debounce, isNil } from 'lodash';
@@ -57,7 +57,9 @@ export default function DetailModal() { @@ -57,7 +57,9 @@ export default function DetailModal() {
57 decoOutputValueRatio: currentData.data?.decoOutputValueRatio, 57 decoOutputValueRatio: currentData.data?.decoOutputValueRatio,
58 shopList: currentData.data?.shopList?.map((v: any) => ({value: v.shopId, label: v.shopName})) || [], 58 shopList: currentData.data?.shopList?.map((v: any) => ({value: v.shopId, label: v.shopName})) || [],
59 rangeDate: [moment(currentData.data.beginTime), moment(currentData.data.endTime)], 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 setType(currentData.data?.addedValueType || 2); 64 setType(currentData.data?.addedValueType || 2);
63 }; 65 };
@@ -75,7 +77,9 @@ export default function DetailModal() { @@ -75,7 +77,9 @@ export default function DetailModal() {
75 shopList: params.shopList.map((v: any) => ({shopId: v.value, shopName: v.label})), 77 shopList: params.shopList.map((v: any) => ({shopId: v.value, shopName: v.label})),
76 beginTime: moment(params.rangeDate[0]).valueOf(), 78 beginTime: moment(params.rangeDate[0]).valueOf(),
77 endTime: moment(params.rangeDate[1]).valueOf(), 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 saveConfigApi(_params) 84 saveConfigApi(_params)
81 .then(res => { 85 .then(res => {
@@ -129,6 +133,54 @@ export default function DetailModal() { @@ -129,6 +133,54 @@ export default function DetailModal() {
129 parser={(value: string) => value?.replace('元/台', '')} 133 parser={(value: string) => value?.replace('元/台', '')}
130 /> 134 />
131 </Form.Item> 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 <div className="addValue_wrapper"><span className="addvalue_text">&#65290;</span><span>产值构成:</span></div> 184 <div className="addValue_wrapper"><span className="addvalue_text">&#65290;</span><span>产值构成:</span></div>
133 <Form.Item 185 <Form.Item
134 label={type === 2 ? "1.计算保险毛利" : "1.计算保险产值:"} 186 label={type === 2 ? "1.计算保险毛利" : "1.计算保险产值:"}
src/pages/order3/AddValueTaskConfig/components/List.tsx
@@ -43,13 +43,19 @@ export default function LargeList({addedValueType} : Props) { @@ -43,13 +43,19 @@ export default function LargeList({addedValueType} : Props) {
43 rowKey="id" 43 rowKey="id"
44 pagination={paginationConfig} 44 pagination={paginationConfig}
45 > 45 >
46 - <Column 46 + <Column
47 title="单车附加值目标" 47 title="单车附加值目标"
48 dataIndex="addedValueTask" 48 dataIndex="addedValueTask"
49 align="left" 49 align="left"
50 render={(_text) => (isNil(_text) ? '-' : <span style={{color: "#FF921C", fontSize: '14px'}}>{_text}元<span style={{color: "#333"}}>/台</span></span>)} 50 render={(_text) => (isNil(_text) ? '-' : <span style={{color: "#FF921C", fontSize: '14px'}}>{_text}元<span style={{color: "#333"}}>/台</span></span>)}
51 /> 51 />
52 <Column 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 title={addedValueType === 2 ? "计算保险毛利" : "计算保险产值"} 59 title={addedValueType === 2 ? "计算保险毛利" : "计算保险产值"}
54 dataIndex="addedValueTask" 60 dataIndex="addedValueTask"
55 align="left" 61 align="left"
@@ -61,6 +67,12 @@ export default function LargeList({addedValueType} : Props) { @@ -61,6 +67,12 @@ export default function LargeList({addedValueType} : Props) {
61 </div> 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 <Column 76 <Column
65 title={addedValueType === 2 ? "计算装潢毛利" : "计算装潢产值"} 77 title={addedValueType === 2 ? "计算装潢毛利" : "计算装潢产值"}
66 dataIndex="decoOutputValueRatio" 78 dataIndex="decoOutputValueRatio"