Procházet zdrojové kódy

update public application page

master
jason.lam před 1 rokem
rodič
revize
9b4b87c11b
8 změnil soubory, kde provedl 58 přidání a 52 odebrání
  1. +18
    -22
      src/pages/PublicNotice/ListPanel/SearchPublicNoticeForm.js
  2. +2
    -2
      src/pages/PublicNotice/ListPanel/SearchPublicNoticeTab.js
  3. +10
    -4
      src/pages/PublicNotice/ListPanel/SearchPublicNoticeTable.js
  4. +13
    -6
      src/pages/PublicNotice/ListPanel/index.js
  5. +2
    -8
      src/pages/PublicNotice/Search_GLD/SearchForm.js
  6. +7
    -5
      src/themes/buttonConst.js
  7. +4
    -3
      src/themes/themeConst.js
  8. +2
    -2
      src/themes/typography.js

+ 18
- 22
src/pages/PublicNotice/ListPanel/SearchPublicNoticeForm.js Zobrazit soubor

@@ -1,7 +1,6 @@
// material-ui
import {
Button,
CardContent,
Grid, TextField,
Autocomplete,
Typography
@@ -14,6 +13,8 @@ import * as DateUtils from "utils/DateUtils";
import {
isORGLoggedIn,
} from "utils/Utils";
import {PNSPS_BUTTON_THEME} from "../../../themes/buttonConst";
import {ThemeProvider} from "@emotion/react";
// ==============================|| DASHBOARD - DEFAULT ||============================== //


@@ -27,6 +28,8 @@ const SearchPublicNoticeForm = ({ applySearch, searchCriteria }) => {
const [selectedLabelsString, setSelectedLabelsString] = React.useState('');

const { reset, register, handleSubmit } = useForm()
const marginBottom = 2.5;

const onSubmit = (data) => {
data.status = selectedLabelsString
let typeArray = [];
@@ -59,12 +62,11 @@ const SearchPublicNoticeForm = ({ applySearch, searchCriteria }) => {

<form onSubmit={handleSubmit(onSubmit)}>
{/*row 1*/}
<CardContent sx={{ px: 2.5, pt: 3 }}>
<Grid item justifyContent="space-between" alignItems="center">
<Typography variant="h4">搜尋</Typography>
</Grid>
</CardContent>

<Grid item justifyContent="space-between" alignItems="center" sx={{mt:1,ml:3,mb:marginBottom}}>
<Typography variant="pnspsFormTitle" >
搜尋
</Typography>
</Grid>
{/*row 2*/}
<Grid container alignItems={"center"}>
<Grid item xs={9} s={6} md={5} lg={3} sx={{ ml: 3, mr: 3, mb: 3 }}>
@@ -148,6 +150,7 @@ const SearchPublicNoticeForm = ({ applySearch, searchCriteria }) => {
multiple
{...register("status")}
id="status"
size="small"
// filterOptions={(options)=>options}
options={
localStorage.getItem('userData').creditor ?
@@ -203,32 +206,25 @@ const SearchPublicNoticeForm = ({ applySearch, searchCriteria }) => {

{/*last row*/}
<Grid container maxWidth justifyContent="flex-end">
<Grid item sx={{ ml: 3, mr: 3, mb: 3, mt: 3 }}>
<ThemeProvider theme={PNSPS_BUTTON_THEME}>
<Grid item sx={{ ml: 3, mr: 3 }}>
<Button
size="large"
variant="contained"
onClick={resetForm}
sx={{
textTransform: 'capitalize',
alignItems: 'end'
}}>
<Typography variant="h5">重置</Typography>
>
<Typography variant="pnspsButtonText">重置</Typography>
</Button>
</Grid>

<Grid item sx={{ ml: 3, mr: 3, mb: 3, mt: 3 }}>
<Grid item sx={{ ml: 3, mr: 3}}>
<Button
size="large"
variant="contained"
type="submit"
sx={{
textTransform: 'capitalize',
alignItems: 'end'
}}>
<Typography variant="h5">搜尋</Typography>
>
<Typography variant="pnspsButtonText">搜尋</Typography>
</Button>
</Grid>
</ThemeProvider>
</Grid>
</form>
</MainCard>


+ 2
- 2
src/pages/PublicNotice/ListPanel/SearchPublicNoticeTab.js Zobrazit soubor

@@ -45,9 +45,9 @@ const UserSearchPage_Individual = () => {
}

return (
<Grid container rowSpacing={4.5} columnSpacing={2.75}>
<Grid container>
{/*row 1*/}
<Grid item xs={12} md={12} lg={12}>
<Grid item xs={12} md={12} lg={12} sx={{mb:-4}}>
<SearchForm
applySearch={applySearch}
searchCriteria={searchCriteria}


+ 10
- 4
src/pages/PublicNotice/ListPanel/SearchPublicNoticeTable.js Zobrazit soubor

@@ -2,7 +2,7 @@
import * as React from 'react';
import {
Button,
Typography
Typography, useMediaQuery
} from '@mui/material';
import * as DateUtils from "utils/DateUtils";
import * as StatusUtils from "utils/statusUtils/PublicNoteStatusUtils";
@@ -11,11 +11,14 @@ import {FiDataGrid} from "components/FiDataGrid";
import {
isORGLoggedIn,
} from "utils/Utils";
import {useTheme} from "@emotion/react";
// ==============================|| EVENT TABLE ||============================== //

export default function SearchPublicNoticeTable({ recordList }) {
const [rows, setRows] = React.useState([]);
const navigate = useNavigate()
const theme = useTheme();
const isMdOrLg = useMediaQuery(theme.breakpoints.up('md'));

const handleDetailClick = (params) => () => {
navigate('/publicNotice/'+ params.id);
@@ -30,13 +33,15 @@ export default function SearchPublicNoticeTable({ recordList }) {
id: 'appNo',
field: 'appNo',
headerName: '申請編號',
flex: 1,
width: isMdOrLg ? 'auto' : 160,
flex: isMdOrLg ? 1 : undefined,
},
{
id: 'created',
field: 'created',
headerName: '提交日期',
flex: 1,
width: isMdOrLg ? 'auto' : 160,
flex: isMdOrLg ? 1 : undefined,
valueGetter: (params) => {
return DateUtils.datetimeStr(params?.value);
}
@@ -71,7 +76,8 @@ export default function SearchPublicNoticeTable({ recordList }) {
id: 'remarks',
field: 'remarks',
headerName: isORGLoggedIn()?"Care Of / 我的備註":"我的備註",
flex: 3,
width: isMdOrLg ? 'auto' : 400,
flex: isMdOrLg ? 3 : undefined,
renderCell: (params) => (
isORGLoggedIn()?
<div>


+ 13
- 6
src/pages/PublicNotice/ListPanel/index.js Zobrazit soubor

@@ -23,6 +23,8 @@ const LoadingComponent = Loadable(lazy(() => import('../../extra-pages/LoadingCo
const SearchTab = Loadable(lazy(() => import('./SearchPublicNoticeTab')));

import titleBackgroundImg from 'assets/images/dashboard/gazette-bar.png'
import {PNSPS_LONG_BUTTON_THEME} from "../../../themes/buttonConst";
import {ThemeProvider} from "@emotion/react";


// ==============================|| DASHBOARD - DEFAULT ||============================== //
@@ -48,6 +50,9 @@ const PublicNotice = () => {
'& .MuiDataGrid-footerContainer': {
border: 1,
borderColor: "#EEE"
},
'& .MuiTabPanel-root': {
padding: '0px',
}
}

@@ -105,21 +110,23 @@ const PublicNotice = () => {
</Stack>
</div>
</Grid>
<Grid item xs={12} mt={1} sx={{ mt: 3 }} >
<Grid item xs={12} mt={1} sx={{ mt: 3}} >
<Stack direction="row" justifyContent="flex-end" alignItems="center">
<ThemeProvider theme={PNSPS_LONG_BUTTON_THEME}>
<Box sx={{ mr: { md: "47px" } }}>
<Button variant="contained" onClick={() => { onBtnClick() }}><Typography variant="h5">申請公共啟事</Typography></Button>
<Button variant="contained" onClick={() => { onBtnClick() }}><Typography variant="pnspsButtonText">申請公共啟事</Typography></Button>
</Box>
</ThemeProvider>
</Stack>
</Grid>
{/*col 2*/}

{
JSON.parse(localStorage.getItem('userData')).creditor ? (
<Grid item xs={12} sx={{ minHeight: '75vh', maxWidth: '95%', backgroundColor: "#fff", mt: 3, mr: 3, ml: 3, mb: 3, ..._sx }}>
<Grid item xs={12} sx={{ minHeight: '75vh', maxWidth: '1%', backgroundColor: "#fff", mt: 3, mr: 3, ml: 3, mb: 3, ..._sx }}>
<TabContext value={selectedTab}>
<Box sx={{ borderBottom: 1, borderColor: 'divider' }}>
<TabList onChange={handleChange} aria-label="lab API tabs example">
<Box sx={{ borderBottom: 1, borderColor: 'divider', overflowX: 'auto' }}>
<TabList onChange={handleChange} aria-label="lab API tabs example" sx={{ display: 'flex', flexDirection: 'row' }}>
<Tab label={"處理中 (" + submittedList?.length + ")"} value="1" />
<Tab label={"待發布 (" + pendingPublishList?.length + ")"} value="3" />
<Tab label={"待付款 (" + pendingPaymentList?.length + ")"} value="4" />
@@ -153,7 +160,7 @@ const PublicNotice = () => {
</TabContext>
</Grid>
) : (
<Grid item xs={12} sx={{ minHeight: '75vh', backgroundColor: "#fff", mt: 3, mr: 3, ml: 3, mb: 3, ..._sx }}>
<Grid item xs={12} sx={{ minHeight: '75vh', maxWidth: '95%',backgroundColor: "#fff", mt: 3, mr: 3, ml: 3, mb: 3, ..._sx }}>
<TabContext value={selectedTab}>
<Box sx={{ borderBottom: 1, borderColor: 'divider' }}>
<TabList onChange={handleChange} aria-label="lab API tabs example">


+ 2
- 8
src/pages/PublicNotice/Search_GLD/SearchForm.js Zobrazit soubor

@@ -304,10 +304,7 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss
<Button
variant="contained"
onClick={resetForm}
sx={{
textTransform: 'capitalize',
alignItems: 'end'
}}>
>
Clear
</Button>
</Grid>
@@ -316,10 +313,7 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss
<Button
variant="contained"
type="submit"
sx={{
textTransform: 'capitalize',
alignItems: 'end'
}}>
>
Submit
</Button>
</Grid>


+ 7
- 5
src/themes/buttonConst.js Zobrazit soubor

@@ -53,7 +53,8 @@ export const PNSPS_BUTTON_THEME = createTheme({
MuiButton: {
styleOverrides: {
root: {
fontSize: '1.0rem',
fontSize: '1.2rem',
fontWeight: '600',
height: '40px',
width: '40vw', // Default width for xs screen sizes
'@media (min-width: 600px)': { // sm breakpoint
@@ -126,17 +127,18 @@ export const PNSPS_LONG_BUTTON_THEME = createTheme({
MuiButton: {
styleOverrides: {
root: {
fontSize: '1.0rem',
fontSize: '1.2rem',
fontWeight: '600',
height: '40px',
width: '70vw', // Default width for xs screen sizes
width: '60vw', // Default width for xs screen sizes
'@media (min-width: 600px)': { // sm breakpoint
width: '30vw',
width: '33vw',
},
'@media (min-width: 960px)': { // md breakpoint
width: '25vw',
},
'@media (min-width: 1280px)': { // lg breakpoint
width: '19vw',
width: '16vw',
},
textTransform: "none",
alignItems: 'center'


+ 4
- 3
src/themes/themeConst.js Zobrazit soubor

@@ -158,15 +158,16 @@ export const PNSPS_THEME = createTheme({
fontSize: '1.25rem'
},
sizeMedium: {
width: theme.spacing(4.5),
height: theme.spacing(4.5),
width: theme.spacing(3.75),
height: theme.spacing(3.75),
fontSize: '1rem'
},
sizeSmall: {
width: theme.spacing(3.75),
height: theme.spacing(3.75),
fontSize: '0.75rem'
}
},
top: "auto"
},
},
},


+ 2
- 2
src/themes/typography.js Zobrazit soubor

@@ -8,7 +8,7 @@ const Typography = (fontFamily) => ({
fontWeightMedium: 500,
fontWeightBold: 600,
pnspsFormTitle: {
fontWeight: 600,
fontWeight: 500,
fontSize: '1.175rem',
lineHeight: 1.4
},
@@ -23,7 +23,7 @@ const Typography = (fontFamily) => ({
lineHeight: 1.5
},
pnspsFormParagraph: {
fontWeight: 600,
fontWeight: 400,
fontSize: '1.1rem',
lineHeight: 0.8
},


Načítá se…
Zrušit
Uložit