瀏覽代碼

add application panel

master
Anna Ho 1 年之前
父節點
當前提交
e41283121e
共有 12 個檔案被更改,包括 696 行新增175 行删除
  1. +177
    -0
      src/pages/PublicNotice/ApplyForm/index.js
  2. +85
    -0
      src/pages/PublicNotice/ListPanel/InProgressTab.js
  3. +93
    -0
      src/pages/PublicNotice/ListPanel/PendingPaymentTab.js
  4. +85
    -0
      src/pages/PublicNotice/ListPanel/PendingPublishTab.js
  5. +107
    -0
      src/pages/PublicNotice/ListPanel/SearchTab.js
  6. +2
    -3
      src/pages/PublicNotice/ListPanel/SubmittedTab.js
  7. +132
    -0
      src/pages/PublicNotice/ListPanel/index.js
  8. +0
    -166
      src/pages/PublicNotice/index.js
  9. +6
    -1
      src/routes/PublicUserRoutes.js
  10. +2
    -0
      src/utils/ApiPathConst.js
  11. +1
    -1
      src/utils/FieldUtils.js
  12. +6
    -4
      src/utils/HttpUtils.js

+ 177
- 0
src/pages/PublicNotice/ApplyForm/index.js 查看文件

@@ -0,0 +1,177 @@
// material-ui
import {
Grid,
Typography,
Button
} from '@mui/material';
import { useFormik } from 'formik';
import * as yup from 'yup';
import * as React from "react";
import * as HttpUtils from "../../../utils/HttpUtils";
import * as UrlUtils from "../../../utils/ApiPathConst";
import * as FieldUtils from "../../../utils/FieldUtils";

import Loadable from 'components/Loadable';
import { lazy } from 'react';
const LoadingComponent = Loadable(lazy(() => import('../../extra-pages/LoadingComponent')));


// ==============================|| DASHBOARD - DEFAULT ||============================== //

const PublicNoticeApplyForm = () => {
const [userData, setUserData] = React.useState([]);
const [isLoading, setLoding] = React.useState(true);
const [attachment, setAttachment] = React.useState({});

const formik = useFormik({
enableReinitialize:true,
initialValues:userData,
validationSchema:yup.object().shape({
group: yup.string().max(255),
groupTitle: yup.string().max(255),
groupNo: yup.string().max(255),
issueId: yup.string().max(255).nullable(),
contactPerson: yup.string().max(40).nullable(),
tel_countryCode: yup.string().min(3,'請輸入3位數字').required('請輸入國際區號'),
fax_countryCode: yup.string().min(3,'請輸入3位數字'),
phoneNumber: yup.string().min(8,'請輸入8位數字').required('請輸入聯絡電話'),
faxNumber: yup.string().min(8,'請輸入8位數字').required('請輸入8位數字'),
remarks: yup.string().max(255).nullable(),
}),
onSubmit:values=>{
console.log(values);
HttpUtils.post({
url: UrlUtils.POST_PUBLIC_NOTICE_SAVE,
params: {
id: 0,
group: values.chName,
groupTitle: values.groupTitle,
groupNo: values.groupNo,
issueId: values.issueId,
contactPerson: values.contactPerson,
contactTelNo: {
countryCode: values.tel_countryCode,
phoneNumber: values.phoneNumber
},
contactFaxNo:{
countryCode: values.fax_countryCode,
faxNumber: values.faxNumber
},
remarks:values.remarks,
file: attachment
},
onSuccess: function(){
loadDataFun();
}
});
}
});



React.useEffect(()=>{
loadUserData();
},[]);

const loadUserData = ()=>{
setLoding(true);
HttpUtils.get({
url: `${UrlUtils.GET_PUBLIC_NOTICE_getApplyUser}`,
onSuccess: function(response){
response["tel_countryCode"] = response?.contactTelNo?.countryCode;
response["phoneNumber"] = response?.contactTelNo?.phoneNumber;
response["fax_countryCode"] = response?.contactFaxNo?.countryCode;
response["faxNumber"] = response?.contactFaxNo?.faxNumber;
setUserData(response);
}
});
};

React.useEffect(() => {
setLoding(false);
}, [userData]);

// const onUploadClick=()=>{
// document.getElementById('uploadFileBtn').click();
// }

const readFile=(event)=>{
setAttachment(event.target.files[0]);
}

return (
isLoading ?
<LoadingComponent/>
:
<Grid container style={{ padding: 24}} rowSpacing={4.5} columnSpacing={2.75}>
<Grid item xs={12}>
<Typography variant="h5">申請公共啟事</Typography>
</Grid>
<form style={{ width: "100%"}} onSubmit={formik.handleSubmit} >

<Grid container spacing={1}>
<Grid item lg={4}></Grid>
{FieldUtils.getTextField({
label:"聯絡人:",
valueName:"contactPerson",
form: formik
})}
<Grid item lg={4}></Grid>
<Grid item lg={4}></Grid>
{FieldUtils.getPhoneField({
label:"聯繫電話:",
valueName:{
code: "tel_countryCode",
num:"phoneNumber"
},
form: formik
})}
<Grid item lg={4}></Grid>
<Grid item lg={4}></Grid>
{FieldUtils.getPhoneField({
label:"聯繫傳真:",
valueName:{
code: "fax_countryCode",
num:"faxNumber"
},
form: formik
})}
<Grid item lg={4}></Grid>
<Grid item lg={12}>
<center>
<input
id="uploadFileBtn"
name="file"
type="file"
accept="image/png, image/jpeg"
onChange={(event)=> {
readFile(event)
}}
/>
{/* <Button
variant="contained"
size="large"
onClick={()=>{
onUploadClick();
}}
>上傳文件</Button> */}
</center>
</Grid>
<Grid item lg={12}>
<center>
<Button
variant="contained"
type="submit"
size="large"
>申請公共啟事</Button>
</center>
</Grid>
</Grid>
</form>
</Grid>
);
};


export default PublicNoticeApplyForm;

+ 85
- 0
src/pages/PublicNotice/ListPanel/InProgressTab.js 查看文件

@@ -0,0 +1,85 @@
// material-ui
import * as React from 'react';
import {
DataGrid,
GridActionsCellItem,
} from "@mui/x-data-grid";
import * as Icon from '../../../utils/IconUtils';
import * as DateUtils from "../../../utils/DateUtils"
// ==============================|| EVENT TABLE ||============================== //

export default function SubmittedTab({rows}) {
const [rowModesModel] = React.useState({});

const columns = [
{
id: 'appNo',
field: 'appNo',
headerName: '申請編號',
flex: 1,
},
{
id: 'created',
field: 'created',
headerName: '提交日期',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'remarks',
field: 'remarks',
headerName: '我的備註',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'status',
field: 'status',
headerName: '狀態',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
field: 'actions',
type: 'actions',
headerName: '',
width: 50,
cellClassName: 'actions',
getActions: (params) => {
return [
<GridActionsCellItem
key="OutSave"
icon={<Icon.Download/>}
label="查看詳細"
className="textPrimary"
onClick={onDownloadClick(params.id, params.row.skey, params.row.filename)}
color="primary"
/>]
},
}
];

return (
<div style={{height: 400, width: '100%'}}>
<DataGrid
rows={rows}
columns={columns}
editMode="row"
rowModesModel={rowModesModel}
initialState={{
pagination: {
paginationModel: {page: 0, pageSize: 5},
},
}}
pageSizeOptions={[5, 10]}
autoHeight = {true}
/>
</div>
);
}

+ 93
- 0
src/pages/PublicNotice/ListPanel/PendingPaymentTab.js 查看文件

@@ -0,0 +1,93 @@
// material-ui
import * as React from 'react';
import {
DataGrid,
GridActionsCellItem,
} from "@mui/x-data-grid";
import {
Button
} from '@mui/material';
import * as Icon from 'utils/IconUtils';
import * as DateUtils from "utils/DateUtils"
// ==============================|| EVENT TABLE ||============================== //

export default function SubmittedTab({rows}) {
const [rowModesModel] = React.useState({});

const columns = [
{
id: 'appNo',
field: 'appNo',
headerName: '申請編號',
flex: 1,
},
{
id: 'created',
field: 'created',
headerName: '提交日期',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'remarks',
field: 'remarks',
headerName: '我的備註',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'status',
field: 'status',
headerName: '狀態',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
field: 'actions',
type: 'actions',
headerName: '',
width: 50,
cellClassName: 'actions',
getActions: (params) => {
return [
<GridActionsCellItem
key="OutSave"
icon={<Icon.Download/>}
label="查看詳細"
className="textPrimary"
onClick={onDownloadClick(params.id, params.row.skey, params.row.filename)}
color="primary"
/>]
},
}
];

const onPaymentClick=()=>{
}

return (
<div style={{height: 400, width: '100%'}}>
<DataGrid
rows={rows}
columns={columns}
editMode="row"
rowModesModel={rowModesModel}
initialState={{
pagination: {
paginationModel: {page: 0, pageSize: 5},
},
}}
pageSizeOptions={[5, 10]}
autoHeight = {true}
/>
<Button variant="contained" onClick={()=>{onPaymentClick()}}>付款</Button>
</div>
);
}

+ 85
- 0
src/pages/PublicNotice/ListPanel/PendingPublishTab.js 查看文件

@@ -0,0 +1,85 @@
// material-ui
import * as React from 'react';
import {
DataGrid,
GridActionsCellItem,
} from "@mui/x-data-grid";
import * as Icon from 'utils/IconUtils';
import * as DateUtils from "utils/DateUtils"
// ==============================|| EVENT TABLE ||============================== //

export default function SubmittedTab({rows}) {
const [rowModesModel] = React.useState({});

const columns = [
{
id: 'appNo',
field: 'appNo',
headerName: '申請編號',
flex: 1,
},
{
id: 'created',
field: 'created',
headerName: '提交日期',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'remarks',
field: 'remarks',
headerName: '我的備註',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'status',
field: 'status',
headerName: '狀態',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
field: 'actions',
type: 'actions',
headerName: '',
width: 50,
cellClassName: 'actions',
getActions: (params) => {
return [
<GridActionsCellItem
key="OutSave"
icon={<Icon.Download/>}
label="查看詳細"
className="textPrimary"
onClick={onDownloadClick(params.id, params.row.skey, params.row.filename)}
color="primary"
/>]
},
}
];

return (
<div style={{height: 400, width: '100%'}}>
<DataGrid
rows={rows}
columns={columns}
editMode="row"
rowModesModel={rowModesModel}
initialState={{
pagination: {
paginationModel: {page: 0, pageSize: 5},
},
}}
pageSizeOptions={[5, 10]}
autoHeight = {true}
/>
</div>
);
}

+ 107
- 0
src/pages/PublicNotice/ListPanel/SearchTab.js 查看文件

@@ -0,0 +1,107 @@
// material-ui
import * as React from 'react';
import {
OutlinedInput,
Button
} from '@mui/material';
import {
DataGrid,
GridActionsCellItem,
} from "@mui/x-data-grid";
import * as Icon from '../../../utils/IconUtils';
import * as DateUtils from "../../../utils/DateUtils"
// ==============================|| EVENT TABLE ||============================== //

export default function SubmittedTab({rows}) {
const [rowModesModel] = React.useState({});

const columns = [
{
id: 'appNo',
field: 'appNo',
headerName: '申請編號',
flex: 1,
},
{
id: 'created',
field: 'created',
headerName: '提交日期',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'remarks',
field: 'remarks',
headerName: '我的備註',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
id: 'status',
field: 'status',
headerName: '狀態',
flex: 1,
valueGetter:(params)=>{
return DateUtils.datetimeStr(params.value);
}
},
{
field: 'actions',
type: 'actions',
headerName: '',
width: 50,
cellClassName: 'actions',
getActions: (params) => {
return [
<GridActionsCellItem
key="OutSave"
icon={<Icon.Download/>}
label="查看詳細"
className="textPrimary"
onClick={onDownloadClick(params.id, params.row.skey, params.row.filename)}
color="primary"
/>]
},
}
];

const doSearch=()=>{

}

return (
<div style={{height: 400, width: '100%'}}>

<center>
<div>
<OutlinedInput
style={{width: 400}}
id="chName-signup"
type="text"
name="chName"
placeholder="搜尋..."
/>
<Button variant="contained" onClick={()=>{doSearch()}}>搜尋</Button>
</div>
</center>
<DataGrid
rows={rows}
columns={columns}
editMode="row"
rowModesModel={rowModesModel}
initialState={{
pagination: {
paginationModel: {page: 0, pageSize: 5},
},
}}
pageSizeOptions={[5, 10]}
autoHeight = {true}
/>
</div>
);
}

src/pages/PublicNotice/SubmittedTab.js → src/pages/PublicNotice/ListPanel/SubmittedTab.js 查看文件

@@ -4,8 +4,8 @@ import {
DataGrid,
GridActionsCellItem,
} from "@mui/x-data-grid";
import * as Icon from '../../utils/IconUtils';
import * as DateUtils from "../../utils/DateUtils"
import * as Icon from '../../../utils/IconUtils';
import * as DateUtils from "../../../utils/DateUtils"
// ==============================|| EVENT TABLE ||============================== //

export default function SubmittedTab({rows}) {
@@ -68,7 +68,6 @@ export default function SubmittedTab({rows}) {
return (
<div style={{height: 400, width: '100%'}}>
<DataGrid
sx={sx}
rows={rows}
columns={columns}
editMode="row"

+ 132
- 0
src/pages/PublicNotice/ListPanel/index.js 查看文件

@@ -0,0 +1,132 @@
// material-ui
import {
Grid,
Typography,
Tab,
Box,
Button
} from '@mui/material';

import {TabPanel, TabContext, TabList } from '@mui/lab';
import {useEffect, useState} from "react";
import {useNavigate} from "react-router-dom";
import * as React from "react";
import * as HttpUtils from "../../../utils/HttpUtils";
import * as UrlUtils from "../../../utils/ApiPathConst";

import Loadable from 'components/Loadable';
import { lazy } from 'react';
const SubmittedTab = Loadable(lazy(() => import('./SubmittedTab')));
const InProgressTab = Loadable(lazy(() => import('./InProgressTab')));
const PendingPaymentTab = Loadable(lazy(() => import('./PendingPaymentTab')));
const PendingPublishTab = Loadable(lazy(() => import('./PendingPublishTab')));
const LoadingComponent = Loadable(lazy(() => import('../../extra-pages/LoadingComponent')));
const SearchTab = Loadable(lazy(() => import('./SearchTab')));


// ==============================|| DASHBOARD - DEFAULT ||============================== //

const PublicNotice = () => {
const [submittedList, setSubmittedList] = useState([]);
const [inProgressList, setInProgressList] = useState([]);
const [pendingPaymentList, setPendingPaymentList] = useState([]);
const [pendingPublishList, setPendingPublishList] = useState([]);
const [isLoading, setLoding] = useState(true);
const [selectedTab, setSelectedTab] = useState("1");
const navigate=useNavigate();


useEffect(()=>{
loadData();
},[]);

const reloadPage=()=>{
window.location.reload(false);
}

const loadData = ()=>{
setLoding(true);
HttpUtils.get({
url: `${UrlUtils.GET_PUBLIC_NOTICE_LIST}`,
onSuccess: function(response){
setSubmittedList(response.data["submitted"]);
setInProgressList(response.data["inProgress"]);
setPendingPaymentList(response.data["pendingPayment"]);
setPendingPublishList(response.data["pendingPublish"]);
}
});
};

useEffect(() => {
setLoding(false);
}, [submittedList]);

const handleChange = (event, newValue)=>{
setSelectedTab(newValue);
}

const onBtnClick=()=>{
navigate('/publicNotice/apply')
}

return (
isLoading ?
<LoadingComponent/>
:
<Grid container rowSpacing={4.5} columnSpacing={2.75}>
<Grid item xs={12} sx={{mb: -2.25}}>
<Typography variant="h5">我的公共啟事</Typography>
</Grid>
<Grid item xs={12} sx={{mb: -2.25}}>
<Button variant="contained" onClick={()=>{onBtnClick()}}>申請公共啟事</Button>
</Grid>
{/*col 2*/}
<Grid item xs={12}>
<TabContext value={selectedTab}>
<Box sx={{ borderBottom: 1, borderColor: 'divider' }}>
<TabList onChange={handleChange} aria-label="lab API tabs example">
<Tab label="已提交" value="1" />
<Tab label="處理中" value="2" />
<Tab label="待付款" value="3" />
<Tab label="待發佈" value="4" />
<Tab label="搜尋申請記錄" value="5" />
</TabList>
</Box>
<TabPanel value="1">
<SubmittedTab
rows={submittedList}
reloadFunction={reloadPage}
/>
</TabPanel>
<TabPanel value="2">
<InProgressTab
rows={inProgressList}
reloadFunction={reloadPage}
/>
</TabPanel>
<TabPanel value="3">
<PendingPaymentTab
rows={pendingPaymentList}
reloadFunction={reloadPage}
/>
</TabPanel>
<TabPanel value="4">
<PendingPublishTab
rows={pendingPublishList}
reloadFunction={reloadPage}
/>
</TabPanel>
<TabPanel value="5">
<SearchTab
rows={pendingPublishList}
reloadFunction={reloadPage}
/>
</TabPanel>
</TabContext>
</Grid>
</Grid>
);
};


export default PublicNotice;

+ 0
- 166
src/pages/PublicNotice/index.js 查看文件

@@ -1,166 +0,0 @@
// material-ui
import {
// Grid,
Typography,
Tabs,
Tab,
Box
} from '@mui/material';
// import {TabPanel, TabContext, TabList } from '@mui/lab';
// import {useEffect, useState} from "react";
import * as React from "react";
// import * as HttpUtils from "../../utils/HttpUtils";
// import * as UrlUtils from "../../utils/ApiPathConst";

// import Loadable from 'components/Loadable';
// import { lazy } from 'react';
// const SubmittedTab = Loadable(lazy(() => import('./SubmittedTab')));
// const LoadingComponent = Loadable(lazy(() => import('../extra-pages/LoadingComponent')));


// ==============================|| DASHBOARD - DEFAULT ||============================== //
function a11yProps(index) {
return {
id: `simple-tab-${index}`,
'aria-controls': `simple-tabpanel-${index}`,
};
}
function CustomTabPanel(props) {
const { children, value, index, ...other } = props;
return (
<div
role="tabpanel"
hidden={value !== index}
id={`simple-tabpanel-${index}`}
aria-labelledby={`simple-tab-${index}`}
{...other}
>
{value === index && (
<Box sx={{ p: 3 }}>
<Typography>{children}</Typography>
</Box>
)}
</div>
);
}

export default function BasicTabs() {
const [value, setValue] = React.useState(0);
const handleChange = (event, newValue) => {
setValue(newValue);
};
return (
<>
<Box sx={{ p: 3 }}>
<Typography>123</Typography>
</Box>
<Box sx={{ width: '100%' }}>
<Box sx={{ borderBottom: 1, borderColor: 'divider' }}>
<Tabs value={value} onChange={handleChange} aria-label="basic tabs example">
<Tab label="Item One" {...a11yProps(0)} />
<Tab label="Item Two" {...a11yProps(1)} />
<Tab label="Item Three" {...a11yProps(2)} />
</Tabs>
</Box>
<CustomTabPanel value={value} index={0}>
Item One
</CustomTabPanel>
<CustomTabPanel value={value} index={1}>
Item Two
</CustomTabPanel>
<CustomTabPanel value={value} index={2}>
Item Three
</CustomTabPanel>
</Box>
</>
);
}

// const PublicNotice = () => {
// const [submittedList, setSubmittedList] = useState([]);
// // const [inProgressList, setInProgressList] = useState([]);
// // const [pendingPaymentList, setPendingPaymentList] = useState([]);
// // const [pendingPublishList, setPendingPublishList] = useState([]);
// const [isLoading, setLoding] = useState(true);
// const [selectedTab, setSelectedTab] = useState("1");


// useEffect(()=>{
// loadData();
// },[]);

// const reloadPage=()=>{
// window.location.reload(false);
// }

// const loadData = ()=>{
// setLoding(true);
// HttpUtils.get({
// url: `${UrlUtils.GET_PUBLIC_NOTICE_LIST}`,
// onSuccess: function(response){
// setSubmittedList(response.data["submitted"]);
// // setInProgressList(response.data["inProgress"]);
// // setPendingPaymentList(response.data["pendingPayment"]);
// // setPendingPublishList(response.data["pendingPublish"]);
// }
// });
// };


// useEffect(() => {
// setLoding(false);
// }, [submittedList]);

// const handleChange = (event, newValue)=>{
// setSelectedTab(newValue);
// }

// return (
// isLoading ?
// <LoadingComponent/>
// :
// <Grid container rowSpacing={4.5} columnSpacing={2.75}>
// <Grid item xs={12} sx={{mb: -2.25}}>
// <Typography variant="h5">我的公共啟事</Typography>
// </Grid>
// {/*col 2*/}
// <Grid item xs={12}>
// <TabContext value={selectedTab}>
// <Box sx={{ borderBottom: 1, borderColor: 'divider' }}>
// <TabList onChange={handleChange} aria-label="lab API tabs example">
// <Tab label="已提交" value="1" />
// <Tab label="處理中" value="2" />
// <Tab label="待付款" value="3" />
// <Tab label="待發佈" value="4" />
// <Tab label="搜尋申請記錄" value="5" />
// </TabList>
// </Box>
// <TabPanel value="1">
// <SubmittedTab
// rows={submittedList}
// reloadFunction={reloadPage}
// />
// </TabPanel>
// <TabPanel value="2">
// TODO
// </TabPanel>
// <TabPanel value="3">
// TODO
// </TabPanel>
// <TabPanel value="4">
// TODO
// </TabPanel>
// <TabPanel value="5">TODO</TabPanel>
// </TabContext>
// </Grid>
// </Grid>
// );
// };


// export default PublicNotice;

+ 6
- 1
src/routes/PublicUserRoutes.js 查看文件

@@ -8,7 +8,8 @@ const MainLayout = Loadable(lazy(() => import('layout/MainLayout')));
// render - dashboard
const DashboardDefault = Loadable(lazy(() => import('pages/publicDashboard')));
const ManageOrgUser = Loadable(lazy(() => import('pages/ManageOrgUserPage')));
const PublicNotice = Loadable(lazy(() => import('pages/PublicNotice')));
const PublicNotice = Loadable(lazy(() => import('pages/PublicNotice/ListPanel')));
const PublicNoticeApplyForm = Loadable(lazy(() => import('pages/PublicNotice/ApplyForm')));

// ==============================|| MAIN ROUTING ||============================== //

@@ -34,6 +35,10 @@ const PublicDashboard = {
{
path: 'publicNotice',
element: <PublicNotice/>
},
{
path: 'publicNotice/apply',
element: <PublicNoticeApplyForm/>
}
]
},


+ 2
- 0
src/utils/ApiPathConst.js 查看文件

@@ -49,6 +49,8 @@ export const GET_SET_UN_PRIMARY_USER = apiPath+'/user/un-primary';

export const GET_PUBLIC_NOTICE_LIST = apiPath+'/application/list';
export const GET_PUBLIC_NOTICE_LIST_ListByStatus = apiPath+'/application/status-list';
export const GET_PUBLIC_NOTICE_getApplyUser = apiPath+'/application/get-apply-user';
export const POST_PUBLIC_NOTICE_SAVE = apiPath+'/application/save';

//GLD User
export const POST_ADMIN_USER_REGISTER = apiPath+'/user/registry';


+ 1
- 1
src/utils/FieldUtils.js 查看文件

@@ -177,4 +177,4 @@ export const initField=({type, valueName, form, disabled, placeholder, inputProp
},
}}
/>
}
}

+ 6
- 4
src/utils/HttpUtils.js 查看文件

@@ -20,12 +20,14 @@ export const put = ({url,params, onSuccess, onFail, onError}) =>{
});
};

export const post = ({url, params, onSuccess, onFail, onError}) =>{
export const post = ({url, params, onSuccess, onFail, onError, headers}) =>{
headers = headers?headers:{
"Content-Type":"application/json"
};
axios.post(url,params,
{
headers: {
"Content-Type":"application/json"
}
headers:headers
}).then(
(response)=>{onResponse(response, onSuccess, onFail);}
).catch(error => {


Loading…
取消
儲存