| @@ -209,10 +209,11 @@ const SearchDemandNoteForm = ({ applySearch, orgComboData, searchCriteria, issue | |||||
| disablePortal | disablePortal | ||||
| id="orgId" | id="orgId" | ||||
| options={orgCombo} | options={orgCombo} | ||||
| groupBy={(option) => option.groupType} | |||||
| size="small" | size="small" | ||||
| value={orgSelected} | value={orgSelected} | ||||
| getOptionLabel={(option) => option.name? option.name : ""} | getOptionLabel={(option) => option.name? option.name : ""} | ||||
| inputValue={orgSelected ? orgSelected.name : ""} | |||||
| inputValue={orgSelected ? orgSelected.name : ""} | |||||
| onChange={(event, newValue) => { | onChange={(event, newValue) => { | ||||
| if (newValue !== null) { | if (newValue !== null) { | ||||
| setOrgSelected(newValue); | setOrgSelected(newValue); | ||||
| @@ -228,12 +229,19 @@ const SearchDemandNoteForm = ({ applySearch, orgComboData, searchCriteria, issue | |||||
| }} | }} | ||||
| /> | /> | ||||
| )} | )} | ||||
| renderGroup={(params) => ( | |||||
| <Grid item key={params.key}> | |||||
| <Typography fontSize={20} fontStyle="italic" p={1}> | |||||
| {params.group} | |||||
| </Typography> | |||||
| {params.children} | |||||
| </Grid> | |||||
| )} | |||||
| /> | /> | ||||
| </Grid> | </Grid> | ||||
| : <></> | : <></> | ||||
| } | } | ||||
| <Grid item xs={9} s={6} md={5} lg={3} sx={{ ml: 3, mr: 3, mb: 3 }}> | <Grid item xs={9} s={6} md={5} lg={3} sx={{ ml: 3, mr: 3, mb: 3 }}> | ||||
| <TextField | <TextField | ||||
| fullWidth | fullWidth | ||||
| @@ -31,6 +31,7 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| const [issueSelected, setIssueSelected] = React.useState({}); | const [issueSelected, setIssueSelected] = React.useState({}); | ||||
| const [issueCombo, setIssueCombo] = React.useState([]); | const [issueCombo, setIssueCombo] = React.useState([]); | ||||
| const [selectedStatus, setSelectedStatus] = React.useState({key: 0, label: 'All', type: 'all'}); | const [selectedStatus, setSelectedStatus] = React.useState({key: 0, label: 'All', type: 'all'}); | ||||
| const [groupSelected, setGroupSelected] = React.useState({}); | |||||
| const [minDate, setMinDate] = React.useState(searchCriteria.dateFrom); | const [minDate, setMinDate] = React.useState(searchCriteria.dateFrom); | ||||
| const [maxDate, setMaxDate] = React.useState(searchCriteria.dateTo); | const [maxDate, setMaxDate] = React.useState(searchCriteria.dateTo); | ||||
| @@ -74,6 +75,7 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| orgId: (orgSelected?.key && orgSelected?.key > 0) ? orgSelected?.key : "", | orgId: (orgSelected?.key && orgSelected?.key > 0) ? orgSelected?.key : "", | ||||
| issueId: issueSelected?.id, | issueId: issueSelected?.id, | ||||
| groupNo: data.groupNo, | groupNo: data.groupNo, | ||||
| gazettGroup: groupSelected?.type, | |||||
| }; | }; | ||||
| applySearch(temp); | applySearch(temp); | ||||
| // setSearchReady(true) | // setSearchReady(true) | ||||
| @@ -353,6 +355,30 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| /> | /> | ||||
| </Grid> | </Grid> | ||||
| <Grid item xs={9} s={6} md={5} lg={3} sx={{ ml: 3, mr: 3, mb: marginBottom }}> | |||||
| <Autocomplete | |||||
| {...register("gazettGroup")} | |||||
| disablePortal | |||||
| size="small" | |||||
| id="gazettGroup" | |||||
| options={ComboData.groupTitle} | |||||
| value={groupSelected} | |||||
| inputValue={(groupSelected?.label) ? groupSelected?.label : ""} | |||||
| getOptionLabel={(option) => option.label} | |||||
| onChange={(event, newValue) => { | |||||
| setGroupSelected(newValue); | |||||
| }} | |||||
| renderInput={(params) => ( | |||||
| <TextField {...params} | |||||
| label="Gazette Group" | |||||
| InputLabelProps={{ | |||||
| shrink: true | |||||
| }} | |||||
| /> | |||||
| )} | |||||
| /> | |||||
| </Grid> | |||||
| <Grid item xs={9} s={6} md={5} lg={3} sx={{ ml: 3, mr: 3, mb: marginBottom }}> | <Grid item xs={9} s={6} md={5} lg={3} sx={{ ml: 3, mr: 3, mb: marginBottom }}> | ||||
| <TextField | <TextField | ||||
| fullWidth | fullWidth | ||||
| @@ -365,6 +391,7 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| }} | }} | ||||
| /> | /> | ||||
| </Grid> | </Grid> | ||||
| </Grid> | </Grid> | ||||
| {/*last row*/} | {/*last row*/} | ||||
| @@ -295,6 +295,7 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| disablePortal | disablePortal | ||||
| id="orgId" | id="orgId" | ||||
| options={orgCombo} | options={orgCombo} | ||||
| groupBy={(option) => option.groupType} | |||||
| size="small" | size="small" | ||||
| value={orgSelected} | value={orgSelected} | ||||
| getOptionLabel={(option) => option.name? option.name : ""} | getOptionLabel={(option) => option.name? option.name : ""} | ||||
| @@ -314,6 +315,14 @@ const SearchPublicNoticeForm = ({ applySearch, orgComboData, searchCriteria, iss | |||||
| }} | }} | ||||
| /> | /> | ||||
| )} | )} | ||||
| renderGroup={(params) => ( | |||||
| <Grid item key={params.key}> | |||||
| <Typography fontSize={20} fontStyle="italic" p={1}> | |||||
| {params.group} | |||||
| </Typography> | |||||
| {params.children} | |||||
| </Grid> | |||||
| )} | |||||
| /> | /> | ||||
| </Grid> | </Grid> | ||||
| : <></> | : <></> | ||||
| @@ -91,8 +91,8 @@ export const publicNoticeStatic_GLD = [ | |||||
| export const groupTitle = [ | export const groupTitle = [ | ||||
| { key: 1, labelCht: 'A1 - 私人帳單', label: 'A1 - Private Bill', title: 'Private Bill', type: 'A'}, | |||||
| { key: 2, labelCht: 'A2 - ???', label: 'A2 - Stock Shares', title: 'Stock Shares', type: 'A'}, | |||||
| { key: 1, labelCht: 'A1 - 私人帳單', label: 'A1 - Private Bill', title: 'Private Bill', type: 'A001'}, | |||||
| { key: 2, labelCht: 'A2 - ???', label: 'A2 - Stock Shares', title: 'Stock Shares', type: 'A002'}, | |||||
| { key: 3, labelCht: 'B - 公司條例', label: 'B - Companies Ordinance', title: 'Companies Ordinance', type: 'B' }, | { key: 3, labelCht: 'B - 公司條例', label: 'B - Companies Ordinance', title: 'Companies Ordinance', type: 'B' }, | ||||
| { key: 4, labelCht: 'C - 高等法院', label: 'C - High Court', title: 'High Court', type: 'C' }, | { key: 4, labelCht: 'C - 高等法院', label: 'C - High Court', title: 'High Court', type: 'C' }, | ||||
| { key: 5, labelCht: 'D - 通知', label: 'D - Notices', title: 'Notices', type: 'D' }, | { key: 5, labelCht: 'D - 通知', label: 'D - Notices', title: 'Notices', type: 'D' }, | ||||