diff --git a/src/pages/pnspsUserDetailPage_Public/UserInformationCard_Public.js b/src/pages/pnspsUserDetailPage_Public/UserInformationCard_Public.js index a75eba5..6ec92c1 100644 --- a/src/pages/pnspsUserDetailPage_Public/UserInformationCard_Public.js +++ b/src/pages/pnspsUserDetailPage_Public/UserInformationCard_Public.js @@ -9,8 +9,7 @@ import {useEffect, useState} from "react"; import Checkbox from "@mui/material/Checkbox"; import LoadingComponent from "../extra-pages/LoadingComponent"; -import {POST_UP_FILE} from "../../utils/ApiPathConst"; -import axios from "axios"; +import { HttpFileDownload,HttpFileUpload } from 'utils/HttpUtils'; //import {useParams} from "react-router-dom"; // ==============================|| DASHBOARD - DEFAULT ||============================== // @@ -54,28 +53,33 @@ const UserInformationCard_Public = ({isCollectData, updateUserObject,userData}) const uploadFile = (event)=>{ - var formData = new FormData(); - formData.append("multipartFile", event.target.files[0]); - formData.append("refType", "userId"); - formData.append("refId", currentUserData.id); - axios.post(POST_UP_FILE,formData,{ - headers: { - "Content-Type":"multipart/form-data" + HttpFileUpload( + { + refType:"identification", + refId: currentUserData.id, + file: event.target.files[0], + onSuccess: (response)=>{ + console.log(response); + setOpen(true); + } } - }).then( - (response)=>{ + ); + }; + + const downloadFile = ()=>{ + HttpFileDownload({ + fileId: 1, + skey: "W6biVNvk50YVC2T6", + filename: "idCardSample.jpg", + onSuccess: function(response){ console.log(response); setOpen(true); } - ).catch(error => { - console.log(error); - return false; }); }; const [open, setOpen] = React.useState(false); const handleClose = () => { - setOpen(false); }; @@ -94,7 +98,7 @@ const UserInformationCard_Public = ({isCollectData, updateUserObject,userData})
- This is a success message! + Upload success. @@ -163,14 +167,14 @@ const UserInformationCard_Public = ({isCollectData, updateUserObject,userData}) - + diff --git a/src/utils/ApiPathConst.js b/src/utils/ApiPathConst.js index 325cb2b..9f0d626 100644 --- a/src/utils/ApiPathConst.js +++ b/src/utils/ApiPathConst.js @@ -15,8 +15,8 @@ export const GET_USER_COMBO_LIST = '/user/combo'; //File Up/Download -export const POST_UP_FILE = apiPath+'/file/ul'; -export const GET_DOWN_FILE = apiPath+'/file/dl/{id}/{skey}/{filename}'; +export const FILE_UP_POST = apiPath+'/file/ul'; +export const FILE_DOWN_GET = apiPath+'/file/dl/{id}/{skey}/{filename}'; // POST request //Login diff --git a/src/utils/HttpUtils.js b/src/utils/HttpUtils.js new file mode 100644 index 0000000..5474ea4 --- /dev/null +++ b/src/utils/HttpUtils.js @@ -0,0 +1,68 @@ +import axios from "axios"; +import {FILE_UP_POST, FILE_DOWN_GET} from "../utils/ApiPathConst"; + +export const HttpGet = ({url, onSuccess, onFail, onError}) =>{ + axios.get(url).then( + (response)=>{onResponse(response, onSuccess, onFail);} + ).catch(error => { + return handleError(error,onError); + }); +}; + +export const HttpFileDownload = ({fileId, skey, filename, onSuccess, onFail, onError}) =>{ + axios.get( + FILE_DOWN_GET + .replace("{id}",fileId) + .replace("{skey}",skey) + .replace("{filename}", filename) + ).then( + (response)=>{onResponse(response, onSuccess, onFail);} + ).catch(error => { + return handleError(error,onError); + }); +}; + +export const HttpFileUpload = ({ refType, refId, file,refCode, onSuccess, onFail, onError}) =>{ + var formData = new FormData(); + formData.append("multipartFile", file); + formData.append("refType", refType); + formData.append("refId", refId); + if(refCode){ + formData.append("refCode", refCode); + } + axios.post(FILE_UP_POST,formData,{ + headers: { + "Content-Type":"multipart/form-data" + } + }).then( + (response)=>{ + onResponse(response,onSuccess,onFail); + } + ).catch(error => { return handleError(error, onError); }); +}; + + +const onResponse= (response, onSuccess, onFail) =>{ + if (response.status >= 300 ||response.status < 200) { + console.log("onFail"); + if(onFail){ + onFail(response); + }else{ + console.log(response); + } + return; + } + + if(onSuccess){ + onSuccess(response.data); + } +} + +const handleError= (error, onError) =>{ + if(onError){ + return onError(error); + }else{ + console.log(error); + return false; + } +} \ No newline at end of file