feat: required check in dutyinfo; change service in dutyinfo
parent
8f062b0e8c
commit
31fca48feb
|
|
@ -1,4 +1,4 @@
|
|||
import { getDutyInfo, updateDutyInfo } from '@/services/api';
|
||||
import { getDutyInfo } from '@/services/api';
|
||||
import {
|
||||
EditableProTable,
|
||||
PageContainer,
|
||||
|
|
@ -12,6 +12,7 @@ import {
|
|||
} from '@ant-design/pro-components';
|
||||
import { Card, message } from 'antd';
|
||||
import { useEffect, useState } from 'react';
|
||||
import request from 'umi-request';
|
||||
import { Info } from './info';
|
||||
|
||||
type Shift = {
|
||||
|
|
@ -91,7 +92,21 @@ const DutyInfo: React.FC = () => {
|
|||
return <div style={{ textAlign: 'center' }}>{doms}</div>;
|
||||
},
|
||||
}}
|
||||
onFinish={updateDutyInfo}
|
||||
onFinish={async (values) => {
|
||||
setLoading(true);
|
||||
request('/admin/duty/update', {
|
||||
method: 'POST',
|
||||
data: values,
|
||||
})
|
||||
.then(() => {
|
||||
setLoading(false);
|
||||
message.success('提交成功');
|
||||
})
|
||||
.catch((err) => {
|
||||
setLoading(false);
|
||||
message.error('提交失败:' + err);
|
||||
});
|
||||
}}
|
||||
initialValues={dutyInfo}
|
||||
>
|
||||
<div style={{ justifyContent: 'center', display: 'flex' }}>
|
||||
|
|
@ -125,11 +140,13 @@ const DutyInfo: React.FC = () => {
|
|||
name="offDutyReason"
|
||||
label="值班暂停原因"
|
||||
placeholder="请输入暂停值班的原因"
|
||||
rules={[{ required: true }]}
|
||||
/>
|
||||
<ProFormDateTimePicker
|
||||
name="dutyRecoverTime"
|
||||
width="md"
|
||||
label="值班恢复时间"
|
||||
rules={[{ required: true }]}
|
||||
/>
|
||||
</div>
|
||||
);
|
||||
|
|
@ -142,6 +159,7 @@ const DutyInfo: React.FC = () => {
|
|||
width="md"
|
||||
min={0}
|
||||
max={10}
|
||||
rules={[{ required: true }]}
|
||||
/>
|
||||
);
|
||||
}}
|
||||
|
|
@ -158,6 +176,7 @@ const DutyInfo: React.FC = () => {
|
|||
initialValue={dutyInfo?.otherDutyTime}
|
||||
trigger="onValuesChange"
|
||||
style={{ width: '80%' }}
|
||||
rules={[{ required: true }]}
|
||||
>
|
||||
<EditableProTable<Shift>
|
||||
rowKey="id"
|
||||
|
|
|
|||
|
|
@ -208,7 +208,6 @@ const Login: React.FC = () => {
|
|||
</ProFormCheckbox>
|
||||
</div>
|
||||
<div style={{ marginBottom: '2vh' }}>
|
||||
{' '}
|
||||
<Button
|
||||
type="default"
|
||||
block
|
||||
|
|
|
|||
|
|
@ -1,6 +1,6 @@
|
|||
// @ts-ignore
|
||||
/* eslint-disable */
|
||||
import { Info, ServerInfo } from '@/pages/Admin/DutyInfo/info';
|
||||
import { ServerInfo } from '@/pages/Admin/DutyInfo/info';
|
||||
import { Stat } from '@/pages/Welcome/stat';
|
||||
import { request } from '@umijs/max';
|
||||
import { API } from './typings';
|
||||
|
|
@ -54,12 +54,3 @@ export async function getDutyInfo(options?: { [key: string]: any }) {
|
|||
...(options || {}),
|
||||
});
|
||||
}
|
||||
|
||||
/** 上传当前值班信息 POST /admin/duty/update */
|
||||
export async function updateDutyInfo(body: Info, options?: { [key: string]: any }) {
|
||||
return request<boolean | void>('/admin/duty/update', {
|
||||
method: 'POST',
|
||||
data: body,
|
||||
...(options || {}),
|
||||
});
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue