5246686f
jiangwei
配件流水明细
|
1
|
import {Table, Popconfirm, Divider, Modal, Input, Button, message, Form} from 'antd';
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
2
|
import React, {useEffect, useState} from 'react';
|
f33cc9f7
by1642146903
计划池
|
3
4
5
|
import useInitial from "@/hooks/useInitail";
import {getList, ListVO} from "@/pages/pms/partPlan/PlanPool/api";
import {useStore} from "@/pages/pms/partPlan/PlanPool";
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
6
|
import {deleteApi, editApi} from '../api';
|
f33cc9f7
by1642146903
计划池
|
7
8
|
const { Column } = Table;
|
5246686f
jiangwei
配件流水明细
|
9
|
const {Item} = Form;
|
f33cc9f7
by1642146903
计划池
|
10
11
12
13
14
|
interface Props {
// eslint-disable-next-line react/no-unused-prop-types
type?: number, // 类型1区域库2库房3车系4车型5配件
}
export default function Index(props: Props = {}) {
|
57b51c35
jiangwei
配件计划池增加查看90天出库详情和...
|
15
|
const { dfParams, key, setItem, setOutVisible, setCustVisible } = useStore();
|
5246686f
jiangwei
配件流水明细
|
16
|
const [form] = Form.useForm();
|
48df7798
jiangwei
计划池展示信息优化
|
17
|
const { data: parts, setParams, loading } = useInitial(getList, [], dfParams);
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
18
|
const [visible, setVisible] = useState(false);
|
57b51c35
jiangwei
配件计划池增加查看90天出库详情和...
|
19
|
const [itemPrice, setItemPrice] = useState<ListVO>();
|
f33cc9f7
by1642146903
计划池
|
20
21
22
23
24
25
26
|
useEffect(() => {
if (key == props.type) {
setParams(dfParams, true);
}
}, [dfParams, key]);
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
27
|
useEffect(() => {
|
57b51c35
jiangwei
配件计划池增加查看90天出库详情和...
|
28
29
|
if (visible && itemPrice?.poolId) {
form.setFieldsValue({ cnt: itemPrice.cnt});
|
5246686f
jiangwei
配件流水明细
|
30
31
|
} else {
form.resetFields;
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
32
33
34
|
}
}, [visible]);
|
f33cc9f7
by1642146903
计划池
|
35
36
|
return (
<div>
|
48df7798
jiangwei
计划池展示信息优化
|
37
|
<Table rowKey={(v: ListVO) => `${v.poolId}`} scroll={{y: 500, x: 3000}} dataSource={parts || []} pagination={false} loading={loading}>
|
f33cc9f7
by1642146903
计划池
|
38
|
<Column title="配件编码" dataIndex="code" fixed="left" />
|
5f69c1aa
jiangwei
样式交互优化
|
39
40
|
<Column title="配件名称" dataIndex="name" fixed="left" />
<Column title="本次计划数量(个)" dataIndex="cnt" fixed="left" />
|
8bd72c50
by1642146903
展示滚动90天出库信息
|
41
|
<Column
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
42
|
title="操作"
|
5f69c1aa
jiangwei
样式交互优化
|
43
|
fixed="left"
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
44
45
|
render={r => (
<>
|
57b51c35
jiangwei
配件计划池增加查看90天出库详情和...
|
46
|
<a onClick={() => { setVisible(true); setItemPrice(r); }}>编辑</a>
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
47
48
49
50
|
<Divider type="vertical" />
<Popconfirm
title="确认删除?"
onConfirm={() => {
|
5f69c1aa
jiangwei
样式交互优化
|
51
|
deleteApi({ poolId: r.poolId }).then(res => {
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
52
53
54
55
56
57
58
59
60
61
|
message.success("操作成功");
setParams({}, true);
}).catch(e => message.error(e.message));
}}
>
<a>删除</a>
</Popconfirm>
</>
)}
/>
|
5f69c1aa
jiangwei
样式交互优化
|
62
63
64
|
<Column title="库房名称" dataIndex="storageName" />
<Column title="门店名称" dataIndex="shopName" />
<Column title="来源类型" dataIndex="typeName" />
|
c8dc9e64
jiangwei
配件类型
|
65
|
<Column title="配件类型" dataIndex="partTypeName" />
|
5f69c1aa
jiangwei
样式交互优化
|
66
67
68
69
70
|
<Column title="计划前库销比" dataIndex="ratio" render={t => (t || 0).toFixed(2)} />
<Column title="计划后库销比" dataIndex="planeRatio" render={t => (t || 0).toFixed(2)} />
<Column title="本次计划金额(元)" dataIndex="thisTimeAmount" />
|
57b51c35
jiangwei
配件计划池增加查看90天出库详情和...
|
71
|
<Column title="客户订件数量(个)" render={r => <a onClick={() => { setCustVisible(true); setItem(r); }}>{r.buyCnt}</a>} />
|
5f69c1aa
jiangwei
样式交互优化
|
72
73
74
75
|
<Column title="客户订件金额(元)" dataIndex="buyAmount" />
<Column title="在途未锁(个)" dataIndex="onTheWayUnlockCnt" />
<Column title="在库未锁(个)" dataIndex="storageUnlockCnt" />
<Column title="在库已锁(个)" dataIndex="storageLockedCnt" />
|
57b51c35
jiangwei
配件计划池增加查看90天出库详情和...
|
76
|
<Column title="滚动90天出库(个)" render={r => <a onClick={() => { setOutVisible(true); setItem(r); }}>{r.outStockCnt}</a>} />
|
5f69c1aa
jiangwei
样式交互优化
|
77
|
|
f33cc9f7
by1642146903
计划池
|
78
|
</Table>
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
79
80
81
82
83
84
85
|
<Modal
title="编辑采购数量"
visible={visible}
maskClosable={false}
onCancel={() => setVisible(false)}
footer={[
<Button key="cancel" onClick={() => setVisible(false)}>取消</Button>,
|
8bd72c50
by1642146903
展示滚动90天出库信息
|
86
87
88
|
<Button
key="ok"
type="primary"
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
89
|
style={{marginLeft: 10}}
|
5246686f
jiangwei
配件流水明细
|
90
|
htmlType="submit"
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
91
|
onClick={() => {
|
5246686f
jiangwei
配件流水明细
|
92
|
form.validateFields().then(fields => {
|
57b51c35
jiangwei
配件计划池增加查看90天出库详情和...
|
93
|
editApi({ poolId: itemPrice?.poolId, partCnt: fields.cnt}).then(res => {
|
5246686f
jiangwei
配件流水明细
|
94
95
96
|
setVisible(false);
message.success("操作成功");
setParams({}, true);
|
8bd72c50
by1642146903
展示滚动90天出库信息
|
97
98
99
|
}).catch(e => {
message.error(e.message);
setVisible(false);
|
5246686f
jiangwei
配件流水明细
|
100
101
|
});
});
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
102
103
104
105
106
|
}}
>保存
</Button>
]}
>
|
5246686f
jiangwei
配件流水明细
|
107
108
109
110
111
|
<Form
form={form}
labelCol={{span: 7}}
wrapperCol={{span: 10}}
>
|
8bd72c50
by1642146903
展示滚动90天出库信息
|
112
113
114
|
<Item
label="配件采购数量"
name="cnt"
|
5246686f
jiangwei
配件流水明细
|
115
|
rules={[
|
8bd72c50
by1642146903
展示滚动90天出库信息
|
116
|
{required: true},
|
5246686f
jiangwei
配件流水明细
|
117
118
119
120
121
122
123
124
125
126
127
128
129
|
() => ({
validator(_, value) {
if (value > 0) {
return Promise.resolve();
}
return Promise.reject(new Error('配件采购数量不能低于0'));
},
}),
]}
>
<Input placeholder="请输入配件采购数量" />
</Item>
</Form>
|
ca0a8559
jiangwei
计划池新增编辑删除功能
|
130
|
</Modal>
|
f33cc9f7
by1642146903
计划池
|
131
132
133
|
</div>
);
}
|