|
@@ -8,7 +8,7 @@ import { downloadFile, getToken } from '@/utils/utils.js';
|
|
const { RangePicker } = DatePicker;
|
|
const { RangePicker } = DatePicker;
|
|
|
|
|
|
function Finance(props) {
|
|
function Finance(props) {
|
|
- const { dispatch, loading, finance } = props;
|
|
|
|
|
|
+ const { dispatch, loading, finance, userList } = props;
|
|
const [form] = Form.useForm();
|
|
const [form] = Form.useForm();
|
|
const [modalFilter, setModalFilter] = useState({});
|
|
const [modalFilter, setModalFilter] = useState({});
|
|
|
|
|
|
@@ -42,7 +42,7 @@ function Finance(props) {
|
|
{ title: '有效工时', dataIndex: 'workload' },
|
|
{ title: '有效工时', dataIndex: 'workload' },
|
|
{ title: '工时类型', dataIndex: 'type_name' },
|
|
{ title: '工时类型', dataIndex: 'type_name' },
|
|
];
|
|
];
|
|
-
|
|
|
|
|
|
+
|
|
const STATUS = [
|
|
const STATUS = [
|
|
{ value: 0, label: '售前' },
|
|
{ value: 0, label: '售前' },
|
|
{ value: 1, label: '转执行' },
|
|
{ value: 1, label: '转执行' },
|
|
@@ -62,9 +62,10 @@ function Finance(props) {
|
|
});
|
|
});
|
|
};
|
|
};
|
|
const handleSearch = () => {
|
|
const handleSearch = () => {
|
|
- const { time, project_name, project_status } = form.getFieldsValue();
|
|
|
|
|
|
+ const { time, user_id, project_name, project_status } = form.getFieldsValue();
|
|
filterRef.current.s_time = time[0] ? moment(time[0]).format('YYYY-MM-DD') : null;
|
|
filterRef.current.s_time = time[0] ? moment(time[0]).format('YYYY-MM-DD') : null;
|
|
filterRef.current.e_time = time[1] ? moment(time[1]).format('YYYY-MM-DD') : null;
|
|
filterRef.current.e_time = time[1] ? moment(time[1]).format('YYYY-MM-DD') : null;
|
|
|
|
+ filterRef.current.user_id = user_id;
|
|
filterRef.current.project_name = project_name;
|
|
filterRef.current.project_name = project_name;
|
|
filterRef.current.project_status = project_status;
|
|
filterRef.current.project_status = project_status;
|
|
|
|
|
|
@@ -79,10 +80,11 @@ function Finance(props) {
|
|
const token = getToken();
|
|
const token = getToken();
|
|
const s_time = filterRef.current?.s_time || '';
|
|
const s_time = filterRef.current?.s_time || '';
|
|
const e_time = filterRef.current?.e_time || '';
|
|
const e_time = filterRef.current?.e_time || '';
|
|
|
|
+ const user_id = filterRef.current?.user_id || '';
|
|
const project_name = filterRef.current?.project_name || '';
|
|
const project_name = filterRef.current?.project_name || '';
|
|
const project_status = filterRef.current?.project_status || '';
|
|
const project_status = filterRef.current?.project_status || '';
|
|
downloadFile(
|
|
downloadFile(
|
|
- `/api/v2/workload/finance/export2excel?JWT-TOKEN=${token}&s_time=${s_time}&e_time=${e_time}&project_name=${project_name}&project_status${project_status}`,
|
|
|
|
|
|
+ `/api/v2/workload/finance/export2excel?JWT-TOKEN=${token}&s_time=${s_time}&e_time=${e_time}&user_id=${user_id}&project_name=${project_name}&project_status${project_status}`,
|
|
`财务报表${moment().format('YYYYMMDDHHMMSS')}.xlsx`
|
|
`财务报表${moment().format('YYYYMMDDHHMMSS')}.xlsx`
|
|
);
|
|
);
|
|
};
|
|
};
|
|
@@ -92,6 +94,16 @@ function Finance(props) {
|
|
<Form.Item label="时间" name="time" initialValue={initDate}>
|
|
<Form.Item label="时间" name="time" initialValue={initDate}>
|
|
<RangePicker placeholder="选择时间" allowClear={false} />
|
|
<RangePicker placeholder="选择时间" allowClear={false} />
|
|
</Form.Item>
|
|
</Form.Item>
|
|
|
|
+ <Form.Item label="资源名称" name="user_id">
|
|
|
|
+ <Select
|
|
|
|
+ options={userList}
|
|
|
|
+ fieldNames={{ label: 'CName', value: 'ID' }}
|
|
|
|
+ style={{ width: 150 }}
|
|
|
|
+ showSearch
|
|
|
|
+ filterOption={(inputValue, option) => option.CName.includes(inputValue)}
|
|
|
|
+ allowClear
|
|
|
|
+ />
|
|
|
|
+ </Form.Item>
|
|
<Form.Item label="项目名称" name="project_name">
|
|
<Form.Item label="项目名称" name="project_name">
|
|
<Input />
|
|
<Input />
|
|
</Form.Item>
|
|
</Form.Item>
|
|
@@ -113,6 +125,9 @@ function Finance(props) {
|
|
};
|
|
};
|
|
useEffect(() => {
|
|
useEffect(() => {
|
|
handleSearch();
|
|
handleSearch();
|
|
|
|
+ dispatch({
|
|
|
|
+ type: 'user/fetch',
|
|
|
|
+ });
|
|
}, []);
|
|
}, []);
|
|
|
|
|
|
return (
|
|
return (
|
|
@@ -136,7 +151,8 @@ function Finance(props) {
|
|
);
|
|
);
|
|
}
|
|
}
|
|
|
|
|
|
-export default connect(({ report, loading }) => ({
|
|
|
|
|
|
+export default connect(({ report, user, loading }) => ({
|
|
finance: report.finance,
|
|
finance: report.finance,
|
|
|
|
+ userList: user.list,
|
|
loading: loading.models.report,
|
|
loading: loading.models.report,
|
|
}))(Finance);
|
|
}))(Finance);
|