| @@ -37,10 +37,10 @@ | |||||
| #navbar div li a:focus::after{ | #navbar div li a:focus::after{ | ||||
| content: ""; | content: ""; | ||||
| width: 80%; | width: 80%; | ||||
| height: 2px; | |||||
| height: 3px; | |||||
| background:#0C489E; | background:#0C489E; | ||||
| position: absolute; | position: absolute; | ||||
| bottom: 3px; | |||||
| bottom: -5px; | |||||
| left: 20px; | left: 20px; | ||||
| } | } | ||||
| #navbar div li ul { | #navbar div li ul { | ||||
| @@ -41,7 +41,7 @@ import AdminLogo from 'components/AdminLogo'; | |||||
| import MobileLogo from 'components/MobileLogo'; | import MobileLogo from 'components/MobileLogo'; | ||||
| import Profile from './HeaderContent/Profile'; | import Profile from './HeaderContent/Profile'; | ||||
| import "assets/style/navbarStyles.css"; | import "assets/style/navbarStyles.css"; | ||||
| import {isUserLoggedIn,isGLDLoggedIn} from "utils/Utils"; | |||||
| import {isUserLoggedIn,isGLDLoggedIn, isPrimaryLoggedIn} from "utils/Utils"; | |||||
| import { handleLogoutFunction } from 'auth/index'; | import { handleLogoutFunction } from 'auth/index'; | ||||
| // assets | // assets | ||||
| @@ -126,9 +126,14 @@ function Header(props) { | |||||
| <li> | <li> | ||||
| <Link className="userSetting" to='/dashboard'>設定<KeyboardArrowDownIcon/></Link> | <Link className="userSetting" to='/dashboard'>設定<KeyboardArrowDownIcon/></Link> | ||||
| <ul className='dropdown'> | <ul className='dropdown'> | ||||
| <li> | |||||
| <Link className="manageOrgUser" to='setting/manageUser'>公司/機構用戶記錄</Link> | |||||
| </li> | |||||
| { isPrimaryLoggedIn()? | |||||
| <li> | |||||
| <Link className="manageOrgUser" to='setting/manageUser'>公司/機構用戶記錄</Link> | |||||
| </li> | |||||
| : | |||||
| <></> | |||||
| } | |||||
| </ul> | </ul> | ||||
| </li> | </li> | ||||
| <li> | <li> | ||||
| @@ -8,6 +8,8 @@ import { | |||||
| Typography, Button, Grid | Typography, Button, Grid | ||||
| }from '@mui/material'; | }from '@mui/material'; | ||||
| import Checkbox from '@mui/material/Checkbox'; | |||||
| import MainCard from "../../components/MainCard"; | import MainCard from "../../components/MainCard"; | ||||
| import * as React from "react"; | import * as React from "react"; | ||||
| @@ -76,6 +78,18 @@ const ManageOrgUserPage = () => { | |||||
| } | } | ||||
| const setPrimaryUser=(params)=>{ | |||||
| HttpUtils.get( | |||||
| { | |||||
| url: (!params.row.primaryUser?UrlUtils.GET_SET_PRIMARY_USER:UrlUtils.GET_SET_UN_PRIMARY_USER)+"/"+params.row.id, | |||||
| onSuccess:function(){ | |||||
| loadData(); | |||||
| } | |||||
| } | |||||
| ); | |||||
| } | |||||
| const columns = [ | const columns = [ | ||||
| { | { | ||||
| @@ -122,8 +136,8 @@ const ManageOrgUserPage = () => { | |||||
| field: 'lastApply', | field: 'lastApply', | ||||
| headerName: getHeader('最後提交申請日期'), | headerName: getHeader('最後提交申請日期'), | ||||
| flex: 1, | flex: 1, | ||||
| valueGetter:(params)=>{ | |||||
| return DateUtils.datetimeStr(params.value); | |||||
| valueGetter:()=>{ | |||||
| return "--"; | |||||
| } | } | ||||
| }, | }, | ||||
| { | { | ||||
| @@ -135,6 +149,22 @@ const ManageOrgUserPage = () => { | |||||
| getActions: (params) => { | getActions: (params) => { | ||||
| return [getStatus(params)] | return [getStatus(params)] | ||||
| }, | }, | ||||
| }, | |||||
| { | |||||
| id: 'primaryUser', | |||||
| field: 'primaryUser', | |||||
| type: 'bool', | |||||
| headerName: getHeader('Primary'), | |||||
| flex: 1, | |||||
| renderCell: (params) => { | |||||
| console.log(params); | |||||
| return ( | |||||
| <Checkbox | |||||
| onClick={()=>{setPrimaryUser(params)}} | |||||
| checked={params.row.primaryUser} | |||||
| /> | |||||
| ); | |||||
| }, | |||||
| } | } | ||||
| ]; | ]; | ||||
| @@ -38,7 +38,7 @@ const AuthWrapper = ({ children }) => ( | |||||
| minHeight: '90vh' | minHeight: '90vh' | ||||
| }} | }} | ||||
| > | > | ||||
| <Grid item xs={12}> | |||||
| <Grid item xs={11}> | |||||
| <Stack direction="row" | <Stack direction="row" | ||||
| justifyContent="space-between" | justifyContent="space-between" | ||||
| alignItems="center" | alignItems="center" | ||||
| @@ -24,9 +24,9 @@ | |||||
| // ================================|| REGISTER ||================================ // | // ================================|| REGISTER ||================================ // | ||||
| const stepStyle = { | const stepStyle = { | ||||
| width:"80%", | |||||
| width:"40%", | |||||
| boxShadow: 2, | boxShadow: 2, | ||||
| backgroundColor: "rgba(0,0,0,0.1)", | |||||
| backgroundColor: "#FFFFFF", | |||||
| padding: 2, | padding: 2, | ||||
| "& .Mui-active": { | "& .Mui-active": { | ||||
| "&.MuiStepIcon-root": { | "&.MuiStepIcon-root": { | ||||
| @@ -23,9 +23,9 @@ | |||||
| const AuthWrapper = Loadable(lazy(() => import('./AuthWrapperCustom'))); | const AuthWrapper = Loadable(lazy(() => import('./AuthWrapperCustom'))); | ||||
| // ================================|| REGISTER ||================================ // | // ================================|| REGISTER ||================================ // | ||||
| const stepStyle = { | const stepStyle = { | ||||
| width:"80%", | |||||
| boxShadow: 2, | |||||
| backgroundColor: "rgba(0,0,0,0.1)", | |||||
| width:"40%", | |||||
| boxShadow: 1, | |||||
| backgroundColor: "#FFFFFF", | |||||
| padding: 2, | padding: 2, | ||||
| "& .Mui-active": { | "& .Mui-active": { | ||||
| "&.MuiStepIcon-root": { | "&.MuiStepIcon-root": { | ||||
| @@ -30,7 +30,7 @@ const RegisterCustom = () => ( | |||||
| <Box alignItems="center"> | <Box alignItems="center"> | ||||
| <Grid container> | <Grid container> | ||||
| <Grid item xs={12} md={12}> | <Grid item xs={12} md={12}> | ||||
| <Typography mt={4} variant="h1">立即成為<strong style={{color: '#FF5733'}}>憲報刊登公告</strong>用戶</Typography> | |||||
| <Typography mt={4} variant="h2">立即成為<strong style={{color: '#FF5733'}}>憲報刊登公告</strong>用戶</Typography> | |||||
| <Typography variant="body1">只需4-5分鐘</Typography> | <Typography variant="body1">只需4-5分鐘</Typography> | ||||
| </Grid> | </Grid> | ||||
| </Grid> | </Grid> | ||||
| @@ -260,7 +260,7 @@ const AuthLoginCustom = () => { | |||||
| </Grid> | </Grid> | ||||
| <Grid item xs={12}> | <Grid item xs={12}> | ||||
| <Stack direction="row" justifyContent="space-between" alignItems="center" spacing={2}> | <Stack direction="row" justifyContent="space-between" alignItems="center" spacing={2}> | ||||
| <Button size="large" variant="outlined" startIcon={<img src={iAmSmartICon} alt="iAM Smart" width="30" />}>智方便登入</Button> | |||||
| <Button fullWidth size="large" variant="outlined" startIcon={<img src={iAmSmartICon} alt="iAM Smart" width="30" />}>智方便登入</Button> | |||||
| </Stack> | </Stack> | ||||
| </Grid> | </Grid> | ||||
| <Grid item xs={12}> | <Grid item xs={12}> | ||||
| @@ -503,7 +503,6 @@ const BusCustomFormWizard = (props) => { | |||||
| <InputLabel htmlFor="password-signup">密碼 | <InputLabel htmlFor="password-signup">密碼 | ||||
| <span style={{color: '#f10000'}}>*</span> | <span style={{color: '#f10000'}}>*</span> | ||||
| </InputLabel> | </InputLabel> | ||||
| <InputLabel htmlFor="password-rule">密碼規則</InputLabel> | |||||
| </Stack> | </Stack> | ||||
| <OutlinedInput | <OutlinedInput | ||||
| fullWidth | fullWidth | ||||
| @@ -519,7 +519,6 @@ const CustomFormWizard = (props) => { | |||||
| <InputLabel htmlFor="password-signup">密碼 | <InputLabel htmlFor="password-signup">密碼 | ||||
| <span style={{color: '#f10000'}}>*</span> | <span style={{color: '#f10000'}}>*</span> | ||||
| </InputLabel> | </InputLabel> | ||||
| <InputLabel htmlFor="password-rule">密碼規則</InputLabel> | |||||
| </Stack> | </Stack> | ||||
| <OutlinedInput | <OutlinedInput | ||||
| fullWidth | fullWidth | ||||
| @@ -44,6 +44,8 @@ export const POST_PUBLIC_USER_REGISTER = apiPath+'/user/register'; | |||||
| //Public | //Public | ||||
| export const GET_PUBLIC_ORG_USER_LIST = apiPath+'/user/listOrg'; | export const GET_PUBLIC_ORG_USER_LIST = apiPath+'/user/listOrg'; | ||||
| export const GET_SET_PRIMARY_USER = apiPath+'/user/primary'; | |||||
| export const GET_SET_UN_PRIMARY_USER = apiPath+'/user/un-primary'; | |||||
| //GLD User | //GLD User | ||||
| export const POST_ADMIN_USER_REGISTER = apiPath+'/user/registry'; | export const POST_ADMIN_USER_REGISTER = apiPath+'/user/registry'; | ||||