Browse Source

status align, hidden uploadBtn when confirm

master
Anna Ho 1 year ago
parent
commit
dedccf3217
2 changed files with 81 additions and 57 deletions
  1. +9
    -9
      src/pages/ProofReply_Public/ApplicationDetails.js
  2. +72
    -48
      src/pages/ProofReply_Public/ProofForm.js

+ 9
- 9
src/pages/ProofReply_Public/ApplicationDetails.js View File

@@ -92,13 +92,13 @@ const ApplicationDetailCard = ({ formData, }) => {
</Grid>
</Grid>
<Grid item xs={12} md={5} lg={5} sx={{ mb: 1, ml: 1 }}>
<Grid container alignItems={"center"}>
<Grid container alignItems={"left"}>
<Grid item xs={12} md={3} lg={3}
sx={{ display: 'flex', alignItems: 'center' }}>
<FormLabel>申請狀態:</FormLabel>
</Grid>

<Grid item xs={12} md={9} lg={9}>
<Grid item xs={12} md={9} lg={9} sx={{ display: 'flex', alignItems: 'center' }}>
<FormControl variant="outlined">
{StatusUtils.getStatusByText(data.appStatus)}
</FormControl>
@@ -191,7 +191,7 @@ const ApplicationDetailCard = ({ formData, }) => {
<Grid item xs={12} md={6} lg={6} sx={{ mb: 1, }}>
<Grid container alignItems={"center"}>
<Grid item xs={12} md={12} lg={12} sx={{ display: 'flex', alignItems: 'center' }}>
<FormLabel>請下載下列印刷稿檔案,並仔細校對:</FormLabel>
<Typography>請下載下列印刷稿檔案,並仔細校對:</Typography>
</Grid>
</Grid>
<FileList
@@ -211,25 +211,25 @@ const ApplicationDetailCard = ({ formData, }) => {
<Grid container alignItems={"center"}>
<Grid item xs={12} md={12} lg={12}
sx={{ display: 'flex', alignItems: 'center' }}>
<FormLabel>繳費及返稿最後限期:</FormLabel>
<Typography>繳費及返稿最後限期:</Typography>
</Grid>
<Grid item xs={12} md={12} lg={12} sx={{ mb: 4, display: 'flex', alignItems: 'center' }}>
<FormLabel>{DateUtils.dateStr_Cht(data.returnBeforeDate)} 下午 2:00前</FormLabel>
<Typography>{DateUtils.dateStr_Cht(data.returnBeforeDate)} 下午 2:00前</Typography>
</Grid>
<Grid item xs={12} md={3} lg={3}
sx={{ mb: 1, display: 'flex', alignItems: 'center' }}>
<FormLabel>應繳費用:</FormLabel>
<Typography>應繳費用:</Typography>
</Grid>
<Grid item xs={12} md={9} lg={9} sx={{ mb: 1, display: 'flex', alignItems: 'center' }}>
<FormLabel style={{ color: "blue", fontWeight: "bold", }}>{currencyFormat(data.fee)}</FormLabel>
<Typography style={{ color: "blue", fontWeight: "bold", }}>{currencyFormat(data.fee)}</Typography>
</Grid>
<Grid item xs={12} md={12} lg={12} sx={{ mb: 4, display: 'flex', alignItems: 'center' }}>
{
formik.values.groupType == "A"
?
<FormLabel>( {data.length} 頁 x $6,552 )</FormLabel>
<Typography>( {data.noOfPages} 頁 x $6,552 )</Typography>
:
<FormLabel>( {data.length} cm x {data.colCount == 2 ? "$364 二格位" : "$182 一格位"} )</FormLabel>
<Typography>( {data.length} cm x {data.colCount == 2 ? "$364 二格位" : "$182 一格位"} )</Typography>
}
</Grid>
</Grid>


+ 72
- 48
src/pages/ProofReply_Public/ProofForm.js View File

@@ -31,6 +31,8 @@ const FormPanel = ({ formData }) => {
const [data, setData] = React.useState({});
const [attachments, setAttachments] = React.useState([]);

const [actionValue, setActionValue] = React.useState(true);

const [isWarningPopUp, setIsWarningPopUp] = React.useState(false);
const [warningText, setWarningText] = React.useState("");

@@ -50,19 +52,25 @@ const FormPanel = ({ formData }) => {
vaild: yup.string().max(255, "請輸入你的登入密碼").required('請輸入你的登入密碼'),
}),
onSubmit: values => {
if (!values.action) {
if (!actionValue) {
if (!attachments || attachments.length <= 0) {
setWarningText("請選擇上傳檔案");
setIsWarningPopUp(true);
return;
}
}

if(isOverTime()){
setWarningText("回覆逾時,請重新申請。");
setIsWarningPopUp(true);
return;
}
// console.log(values);
HttpUtils.postWithFiles({
url: UrlUtils.REPLY_PROOF,
params: {
id: data.id,
action: values.action,
action: actionValue,
vaild: values.vaild,
},
files: attachments ? attachments : [],
@@ -138,19 +146,25 @@ const FormPanel = ({ formData }) => {
<Grid item xs={12} md={12} textAlign="left">
校對回覆: {formik.values.action ? "可以付印(稿件正確)" : "未能付印(需要修改)"}
</Grid>
<Grid item xs={12} md={12} textAlign="left">
<FileList
lang="ch"
refId={params.id}
refType={"proofReply"}
dateHideable={true}
disablePagination
disableSelectionOnClick
disableColumnMenu
disableColumnSelector
hideFooter
/>
</Grid>
{
formik.values.action ?
null
:
<Grid item xs={12} md={12} textAlign="left">
<FileList
lang="ch"
refId={params.id}
refType={"proofReply"}
dateHideable={true}
disablePagination
disableSelectionOnClick
disableColumnMenu
disableColumnSelector
hideFooter
/>
</Grid>
}

</Grid>
:
(
@@ -169,57 +183,67 @@ const FormPanel = ({ formData }) => {
id="action"
name="action"
defaultValue={true}
onChange={(event)=>{
setActionValue(event.target.value=="true"?true:false);
}}
>
<FormControlLabel value={true} control={<Radio />} label="可以付印(稿件正確)" />
<FormControlLabel value={false} control={<Radio />} label="未能付印(需要修改)" />
</RadioGroup>
</Grid>

<Grid item xs={12} md={12} textAlign="left">
請上載稿件修改的檔案:
</Grid>

<Grid item xs={12} md={12} textAlign="left">
<input
id="uploadFileBtn"
name="file"
type="file"
accept=".pdf"
style={{ display: 'none' }}
disabled={attachments.length >= (formik.values.groupType == "A" ? 2 : 1)}
onChange={(event) => {
readFile(event)
}}
/>
<label htmlFor="uploadFileBtn">
<Button
component="span"
variant="contained"
size="large"
disabled={attachments.length >= (formik.values.groupType == "A" ? 2 : 1)}
>上載</Button>
</label>
</Grid>


<Grid item xs={12} md={12} textAlign="left">
<UploadFileTable key="uploadTable" recordList={attachments} setRecordList={setAttachments} />
</Grid>

{
actionValue ?
null
:
<>
<Grid item xs={12} md={12} textAlign="left">
請上載稿件修改的檔案:
</Grid>

<Grid item xs={12} md={12} textAlign="left">
<input
id="uploadFileBtn"
name="file"
type="file"
accept=".pdf"
style={{ display: 'none' }}
disabled={attachments.length >= (formik.values.groupType == "A" ? 2 : 1)}
onChange={(event) => {
readFile(event)
}}
/>
<label htmlFor="uploadFileBtn">
<Button
component="span"
variant="contained"
size="large"
disabled={attachments.length >= (formik.values.groupType == "A" ? 2 : 1)}
>上載</Button>
</label>
</Grid>


<Grid item xs={12} md={12} textAlign="left">
<UploadFileTable key="uploadTable" recordList={attachments} setRecordList={setAttachments} />
</Grid>
</>
}

<Grid item xs={12} md={12} lg={12}>
<Stack direction="row" alignItems="center">
<FormLabel sx={{ paddingRight: 2, textAlign: "center" }}>
<FormLabel sx={{ paddingRight: 2, paddingBottom: 3, textAlign: "center" }}>
簽署:
</FormLabel>
<TextField
fullWidth
type="text"
type="password"
onChange={formik.handleChange}
name="vaild"
variant="outlined"
error={Boolean(formik.errors["vaild"])}
helperText={formik.errors["vaild"] ? formik.errors["vaild"] : ''}
helperText={formik.errors["vaild"] ? formik.errors["vaild"] : ' '}
placeholder="請輸入你的登入密碼"
sx={
{


Loading…
Cancel
Save