浏览代码

add please wait

master
Anna Ho 1年前
父节点
当前提交
3cb6b5d94a
共有 1 个文件被更改,包括 32 次插入4 次删除
  1. +32
    -4
      src/pages/Setting/DrImport/index.js

+ 32
- 4
src/pages/Setting/DrImport/index.js 查看文件

@@ -1,6 +1,7 @@


import * as React from "react"; import * as React from "react";
import * as HttpUtils from "utils/HttpUtils"; import * as HttpUtils from "utils/HttpUtils";
import * as DateUtils from "utils/DateUtils";
import * as UrlUtils from "utils/ApiPathConst"; import * as UrlUtils from "utils/ApiPathConst";


import { import {
@@ -20,6 +21,7 @@ const Index = () => {
const [isWarningPopUp, setIsWarningPopUp] = React.useState(false); const [isWarningPopUp, setIsWarningPopUp] = React.useState(false);
const [warningText, setWarningText] = React.useState(""); const [warningText, setWarningText] = React.useState("");
const [resultStr, setResultStr] = React.useState(""); const [resultStr, setResultStr] = React.useState("");
const [wait, setWait] = React.useState(false);


const intl = useIntl(); const intl = useIntl();


@@ -37,7 +39,9 @@ const Index = () => {


const readFile = (event) => { const readFile = (event) => {
let file = event.target.files[0]; let file = event.target.files[0];
setWait(true);
if (file) { if (file) {
if (file.name.toLowerCase().substr(file.name.length - 5).includes(".xlsx") if (file.name.toLowerCase().substr(file.name.length - 5).includes(".xlsx")
) { ) {
HttpUtils.postWithFiles({ HttpUtils.postWithFiles({
@@ -45,20 +49,27 @@ const Index = () => {
params:null, params:null,
files: [event.target.files[0]], files: [event.target.files[0]],
onSuccess: function (responData) { onSuccess: function (responData) {
setWait(false);
if(responData?.msg){ if(responData?.msg){
setResultStr(<><span style={{"color": "red"}}>Error</span><br/><span style={{"whiteSpace": "pre-line"}}>{responData?.msg}</span></>)
setResultStr(<>{DateUtils.datetimeStr(new Date())}<br/><span style={{"color": "red"}}>Error</span><br/><span style={{"whiteSpace": "pre-line"}}>{responData?.msg}</span></>)
}else if(responData?.success){ }else if(responData?.success){
setResultStr(<><span style={{"color": "green"}}>Success</span><br/>Record Count: {responData.recordCount}</>)
setResultStr(<>{DateUtils.datetimeStr(new Date())}<br/><span style={{"color": "green"}}>Success</span><br/>Record Count: {responData.recordCount}</>)
} }
},
onError: function(){
setWait(false);
setResultStr(<>{DateUtils.datetimeStr(new Date())}<br/><span style={{"color": "red"}}>Error</span><br/>Action Fail: Please import valid file.</>)
} }
}); });
} else { } else {
setWarningText(intl.formatMessage({ id: 'requireValidFileWithFormat' }));
setWait(false);
setWarningText("Please upload a valid file (file format: .xlsx)");
setIsWarningPopUp(true); setIsWarningPopUp(true);
setAttachment({});
document.getElementById("uploadFileBtn").value = ""; document.getElementById("uploadFileBtn").value = "";
return; return;
} }
}else{
setWait(false);
} }
document.getElementById("uploadFileBtn").value = ""; document.getElementById("uploadFileBtn").value = "";
} }
@@ -169,6 +180,23 @@ const Index = () => {
</DialogActions> </DialogActions>
</Dialog> </Dialog>
</div> </div>
<div>
<Dialog
open={wait}
onClose={() => setWait(false)}
PaperProps={{
sx: {
minWidth: '40vw',
maxWidth: { xs: '90vw', s: '90vw', m: '70vw', lg: '70vw' },
maxHeight: { xs: '90vh', s: '70vh', m: '70vh', lg: '60vh' }
}
}}
>
<DialogContent style={{ display: 'flex', }}>
<Typography variant="h4" style={{ padding: '16px' }}>Please wait ...</Typography>
</DialogContent>
</Dialog>
</div>
</Grid> </Grid>
); );
}; };


正在加载...
取消
保存