Merge branch 'dev' into dev-yj

This commit is contained in:
yjnoh 2025-01-21 09:20:09 +09:00
commit 3a24cbc305
7 changed files with 131 additions and 23 deletions

View File

@ -10,7 +10,6 @@ import { useRecoilValue } from 'recoil'
import { useRouter } from 'next/navigation' import { useRouter } from 'next/navigation'
import { globalLocaleStore } from '@/store/localeAtom' import { globalLocaleStore } from '@/store/localeAtom'
import { queryStringFormatter } from '@/util/common-utils' import { queryStringFormatter } from '@/util/common-utils'
import MainSkeleton from '../ui/MainSkeleton'
import { useMainContentsController } from '@/hooks/main/useMainContentsController' import { useMainContentsController } from '@/hooks/main/useMainContentsController'
import { QcastContext } from '@/app/QcastProvider' import { QcastContext } from '@/app/QcastProvider'
import { useSwal } from '@/hooks/useSwal' import { useSwal } from '@/hooks/useSwal'
@ -31,7 +30,7 @@ export default function MainContents() {
//FAQ //FAQ
const [recentFaqList, setRecentFaqList] = useState([]) const [recentFaqList, setRecentFaqList] = useState([])
const { qcastState } = useContext(QcastContext) const { qcastState, setIsGlobalLoading } = useContext(QcastContext)
const { fetchObjectList, initObjectList } = useMainContentsController() const { fetchObjectList, initObjectList } = useMainContentsController()
useEffect(() => { useEffect(() => {
@ -105,6 +104,7 @@ export default function MainContents() {
key={row.objectNo} key={row.objectNo}
className="recently-item" className="recently-item"
onClick={() => { onClick={() => {
setIsGlobalLoading(true)
if (row.tempFlg === '0') { if (row.tempFlg === '0') {
router.push(`/management/stuff/detail?objectNo=${row.objectNo.toString()}`, { scroll: false }) router.push(`/management/stuff/detail?objectNo=${row.objectNo.toString()}`, { scroll: false })
} else { } else {

View File

@ -1631,11 +1631,21 @@ export default function StuffDetail() {
{getMessage('stuff.detail.btn.save')} {getMessage('stuff.detail.btn.save')}
</Button> </Button>
)} )}
<Link href="/management/stuff" scroll={false}> {/* <Link href="/management/stuff" scroll={false}>
<button type="button" className="btn-origin grey"> <button type="button" className="btn-origin grey">
{getMessage('stuff.detail.btn.moveList')} {getMessage('stuff.detail.btn.moveList')}
</button> </button>
</Link> </Link> */}
<button
type="button"
className="btn-origin grey"
onClick={() => {
setIsGlobalLoading(true)
router.push(`/management/stuff`, { scroll: false })
}}
>
{getMessage('stuff.detail.btn.moveList')}
</button>
</div> </div>
</div> </div>
<div className="infomation-table"> <div className="infomation-table">
@ -2131,11 +2141,21 @@ export default function StuffDetail() {
{getMessage('stuff.detail.btn.save')} {getMessage('stuff.detail.btn.save')}
</Button> </Button>
)} )}
<Link href="/management/stuff" scroll={false}> {/* <Link href="/management/stuff" scroll={false}>
<button type="button" className="btn-origin grey"> <button type="button" className="btn-origin grey">
{getMessage('stuff.detail.btn.moveList')} {getMessage('stuff.detail.btn.moveList')}
</button> </button>
</Link> </Link> */}
<button
type="button"
className="btn-origin grey"
onClick={() => {
setIsGlobalLoading(true)
router.push(`/management/stuff`, { scroll: false })
}}
>
{getMessage('stuff.detail.btn.moveList')}
</button>
</div> </div>
</div> </div>
</form> </form>
@ -2150,11 +2170,21 @@ export default function StuffDetail() {
{managementState?.tempFlg === '0' ? ( {managementState?.tempFlg === '0' ? (
<> <>
<div className="left-unit-box"> <div className="left-unit-box">
<Link href="/management/stuff" scroll={false}> {/* <Link href="/management/stuff" scroll={false}>
<button type="button" className="btn-origin grey mr5"> <button type="button" className="btn-origin grey mr5">
{getMessage('stuff.detail.btn.moveList')} {getMessage('stuff.detail.btn.moveList')}
</button> </button>
</Link> </Link> */}
<button
type="button"
className="btn-origin grey mr5"
onClick={() => {
setIsGlobalLoading(true)
router.push(`/management/stuff`, { scroll: false })
}}
>
{getMessage('stuff.detail.btn.moveList')}
</button>
<Button type="submit" className="btn-origin navy mr5" style={{ display: showButton }}> <Button type="submit" className="btn-origin navy mr5" style={{ display: showButton }}>
{getMessage('stuff.detail.btn.save')} {getMessage('stuff.detail.btn.save')}
</Button> </Button>
@ -2175,11 +2205,21 @@ export default function StuffDetail() {
{getMessage('stuff.detail.btn.save')} {getMessage('stuff.detail.btn.save')}
</Button> </Button>
)} )}
<Link href="/management/stuff" scroll={false}> {/* <Link href="/management/stuff" scroll={false}>
<button type="button" className="btn-origin grey"> <button type="button" className="btn-origin grey">
{getMessage('stuff.detail.btn.moveList')} {getMessage('stuff.detail.btn.moveList')}
</button> </button>
</Link> </Link> */}
<button
type="button"
className="btn-origin grey"
onClick={() => {
setIsGlobalLoading(true)
router.push(`/management/stuff`, { scroll: false })
}}
>
{getMessage('stuff.detail.btn.moveList')}
</button>
</div> </div>
</> </>
)} )}
@ -2729,11 +2769,21 @@ export default function StuffDetail() {
</div> </div>
{/* 진짜R 플랜끝 */} {/* 진짜R 플랜끝 */}
<div className="sub-right-footer"> <div className="sub-right-footer">
<Link href="/management/stuff" scroll={false}> {/* <Link href="/management/stuff" scroll={false}>
<button type="button" className="btn-origin grey mr5"> <button type="button" className="btn-origin grey mr5">
{getMessage('stuff.detail.btn.moveList')} {getMessage('stuff.detail.btn.moveList')}
</button> </button>
</Link> </Link> */}
<button
type="button"
className="btn-origin grey mr5"
onClick={() => {
setIsGlobalLoading(true)
router.push(`/management/stuff`, { scroll: false })
}}
>
{getMessage('stuff.detail.btn.moveList')}
</button>
<Button type="submit" className="btn-origin navy mr5" style={{ display: showButton }}> <Button type="submit" className="btn-origin navy mr5" style={{ display: showButton }}>
{getMessage('stuff.detail.btn.save')} {getMessage('stuff.detail.btn.save')}
</Button> </Button>
@ -2754,11 +2804,21 @@ export default function StuffDetail() {
{getMessage('stuff.detail.btn.save')} {getMessage('stuff.detail.btn.save')}
</Button> </Button>
)} )}
<Link href="/management/stuff" scroll={false}> {/* <Link href="/management/stuff" scroll={false}>
<button type="button" className="btn-origin grey"> <button type="button" className="btn-origin grey">
{getMessage('stuff.detail.btn.moveList')} {getMessage('stuff.detail.btn.moveList')}
</button> </button>
</Link> </Link> */}
<button
type="button"
className="btn-origin grey"
onClick={() => {
setIsGlobalLoading(true)
router.push(`/management/stuff`, { scroll: false })
}}
>
{getMessage('stuff.detail.btn.moveList')}
</button>
</div> </div>
</> </>
)} )}

View File

@ -10,7 +10,7 @@ import JA from '@/locales/ja.json'
import { stuffSearchState } from '@/store/stuffAtom' import { stuffSearchState } from '@/store/stuffAtom'
import { isEmptyArray } from '@/util/common-utils' import { isEmptyArray } from '@/util/common-utils'
import dayjs from 'dayjs' import dayjs from 'dayjs'
import Link from 'next/link' import { useRouter } from 'next/navigation'
import SingleDatePicker from '../common/datepicker/SingleDatePicker' import SingleDatePicker from '../common/datepicker/SingleDatePicker'
import { useMessage } from '@/hooks/useMessage' import { useMessage } from '@/hooks/useMessage'
import { isObjectNotEmpty } from '@/util/common-utils' import { isObjectNotEmpty } from '@/util/common-utils'
@ -20,6 +20,7 @@ import { SessionContext } from '@/app/SessionProvider'
import { QcastContext } from '@/app/QcastProvider' import { QcastContext } from '@/app/QcastProvider'
export default function StuffSearchCondition() { export default function StuffSearchCondition() {
const router = useRouter()
const { session } = useContext(SessionContext) const { session } = useContext(SessionContext)
const setAppMessageState = useSetRecoilState(appMessageStore) const setAppMessageState = useSetRecoilState(appMessageStore)
const globalLocaleState = useRecoilValue(globalLocaleStore) const globalLocaleState = useRecoilValue(globalLocaleStore)
@ -822,12 +823,21 @@ export default function StuffSearchCondition() {
<h3>{getMessage('stuff.search.title')}</h3> <h3>{getMessage('stuff.search.title')}</h3>
</div> </div>
<div className="left-unit-box"> <div className="left-unit-box">
<Link href="/management/stuff/tempReg" scroll={false}> {/* <Link href="/management/stuff/tempReg" scroll={false}>
{/* <Link href="/management/stuff/tempdetail" scroll={false}> */}
<button type="button" className="btn-origin navy mr5"> <button type="button" className="btn-origin navy mr5">
{getMessage('stuff.search.btn.register')} {getMessage('stuff.search.btn.register')}
</button> </button>
</Link> </Link> */}
<button
type="button"
className="btn-origin navy mr5"
onClick={() => {
setIsGlobalLoading(true)
router.push(`/management/stuff/tempReg`, { scroll: false })
}}
>
{getMessage('stuff.search.btn.register')}
</button>
<button type="button" className="btn-origin navy mr5" onClick={onSubmit}> <button type="button" className="btn-origin navy mr5" onClick={onSubmit}>
{getMessage('stuff.search.btn.search')} {getMessage('stuff.search.btn.search')}
</button> </button>

View File

@ -56,9 +56,6 @@ export default function FindAddressPop(props) {
// //
const searchPostNum = () => { const searchPostNum = () => {
// //7830060
// //9302226
// //0790177 3
const params = { const params = {
zipcode: watch('zipNo'), zipcode: watch('zipNo'),
} }
@ -122,6 +119,28 @@ export default function FindAddressPop(props) {
} }
} }
//
const getCellDoubleClicked = (event) => {
setAddress1(event.data.address1)
setAddress2(event.data.address2)
setAddress3(event.data.address3)
setPrefId(event.data.prefcode)
setZipNo(event.data.zipcode)
if (event.data.prefcode == null) {
return alert(getMessage('stuff.addressPopup.error.message2'))
} else {
props.zipInfo({
zipNo: event.data.zipcode,
address1: event.data.address1,
address2: event.data.address2,
address3: event.data.address3,
prefId: event.data.prefcode,
})
}
props.setShowAddressButtonValid(false)
}
return ( return (
<div className="modal-popup"> <div className="modal-popup">
<div className="modal-dialog middle"> <div className="modal-dialog middle">
@ -146,7 +165,7 @@ export default function FindAddressPop(props) {
<button className="search-btn" onClick={searchPostNum}></button> <button className="search-btn" onClick={searchPostNum}></button>
</div> </div>
<div className="address-grid"> <div className="address-grid">
<FindAddressPopQGrid {...gridProps} getSelectedRowdata={getSelectedRowdata} /> <FindAddressPopQGrid {...gridProps} getSelectedRowdata={getSelectedRowdata} getCellDoubleClicked={getCellDoubleClicked} />
</div> </div>
</div> </div>
<div className="footer-btn-wrap"> <div className="footer-btn-wrap">

View File

@ -48,6 +48,11 @@ export default function FindAddressPopGrid(props) {
props.getSelectedRowdata(selectedData) props.getSelectedRowdata(selectedData)
} }
//
const onCellDoubleClicked = useCallback((event) => {
props.getCellDoubleClicked(event)
}, [])
return ( return (
<div className="ag-theme-quartz" style={{ height: 400 }}> <div className="ag-theme-quartz" style={{ height: 400 }}>
<AgGridReact <AgGridReact
@ -58,6 +63,7 @@ export default function FindAddressPopGrid(props) {
defaultColDef={defaultColDef} defaultColDef={defaultColDef}
pagination={isPageable} pagination={isPageable}
onSelectionChanged={onSelectionChanged} onSelectionChanged={onSelectionChanged}
onCellDoubleClicked={onCellDoubleClicked}
overlayNoRowsTemplate={`<span className="ag-overlay-loading-center">${getMessage('stuff.grid.noData')}</span>`} overlayNoRowsTemplate={`<span className="ag-overlay-loading-center">${getMessage('stuff.grid.noData')}</span>`}
/> />
</div> </div>

View File

@ -243,6 +243,13 @@ export default function PlanRequestPop(props) {
} }
} }
//
const getCellDoubleClicked = (event) => {
setPlanReqObject(event.data)
props.planReqInfo(event.data)
props.setShowDesignRequestButtonValid(false)
}
return ( return (
<div className="modal-popup"> <div className="modal-popup">
<div className="modal-dialog big"> <div className="modal-dialog big">
@ -409,7 +416,7 @@ export default function PlanRequestPop(props) {
</div> </div>
</div> </div>
<div className="q-grid"> <div className="q-grid">
<PlanRequestPopQGrid {...gridProps} getSelectedRowdata={getSelectedRowdata} /> <PlanRequestPopQGrid {...gridProps} getSelectedRowdata={getSelectedRowdata} getCellDoubleClicked={getCellDoubleClicked} />
<div className="pagination-wrap"> <div className="pagination-wrap">
<QPagination pageNo={pageNo} pageSize={pageSize} pagePerBlock={10} totalCount={totalCount} handleChangePage={handleChangePage} /> <QPagination pageNo={pageNo} pageSize={pageSize} pagePerBlock={10} totalCount={totalCount} handleChangePage={handleChangePage} />
</div> </div>

View File

@ -48,6 +48,11 @@ export default function PlanRequestPopQGrid(props) {
props.getSelectedRowdata(selectedData) props.getSelectedRowdata(selectedData)
} }
//
const onCellDoubleClicked = useCallback((event) => {
props.getCellDoubleClicked(event)
}, [])
return ( return (
<div className="ag-theme-quartz" style={{ height: 350 }}> <div className="ag-theme-quartz" style={{ height: 350 }}>
<AgGridReact <AgGridReact
@ -58,6 +63,7 @@ export default function PlanRequestPopQGrid(props) {
defaultColDef={defaultColDef} defaultColDef={defaultColDef}
pagination={isPageable} pagination={isPageable}
onSelectionChanged={onSelectionChanged} onSelectionChanged={onSelectionChanged}
onCellDoubleClicked={onCellDoubleClicked}
autoSizeAllColumns={true} autoSizeAllColumns={true}
overlayNoRowsTemplate={`<span className="ag-overlay-loading-center">${getMessage('stuff.grid.noData')}</span>`} overlayNoRowsTemplate={`<span className="ag-overlay-loading-center">${getMessage('stuff.grid.noData')}</span>`}
/> />