물건현황 목록화면 수정

This commit is contained in:
basssy 2024-10-31 17:57:06 +09:00
parent d077b6b50d
commit d7316560b3
3 changed files with 104 additions and 39 deletions

View File

@ -15,7 +15,7 @@ export default function MainContents() {
const { getMessage } = useMessage()
const router = useRouter()
const globalLocaleState = useRecoilValue(globalLocaleStore)
const { promiseGet, get } = useAxios(globalLocaleState)
const { promiseGet } = useAxios(globalLocaleState)
const sessionState = useRecoilValue(sessionStore)
@ -118,7 +118,7 @@ export default function MainContents() {
key={row.objectNo}
className="recently-item"
onClick={() => {
if (row.objectNo.substring(0, 1) === 'R') {
if (row.tempFlg === '0') {
router.push(`/management/stuff/detail?objectNo=${row.objectNo.toString()}`)
} else {
router.push(`/management/stuff/tempdetail?objectNo=${row.objectNo.toString()}`)

View File

@ -1,12 +1,11 @@
'use client'
import React, { useEffect, useState, useRef } from 'react'
import { useEffect, useState, useRef, useContext } from 'react'
import { useRouter, usePathname } from 'next/navigation'
import { Button } from '@nextui-org/react'
import { useAxios } from '@/hooks/useAxios'
import { useMessage } from '@/hooks/useMessage'
import StuffQGrid from './StuffQGrid'
import { useRecoilValue, useRecoilState } from 'recoil'
import { useRecoilValue, useRecoilState, useSetRecoilState } from 'recoil'
import { stuffSearchState } from '@/store/stuffAtom'
import { queryStringFormatter, isEmptyArray } from '@/util/common-utils'
import dayjs from 'dayjs'
@ -17,10 +16,12 @@ import KO from '@/locales/ko.json'
import JA from '@/locales/ja.json'
import QPagination from '../common/pagination/QPagination'
import { sessionStore } from '@/store/commonAtom'
import { SessionContext } from '@/app/SessionProvider'
export default function Stuff() {
const sessionState = useRecoilValue(sessionStore)
const [appMessageState, setAppMessageState] = useRecoilState(appMessageStore)
const { session } = useContext(SessionContext)
const setAppMessageState = useSetRecoilState(appMessageStore)
const stuffSearchParams = useRecoilValue(stuffSearchState)
const [stuffSearch, setStuffSearch] = useRecoilState(stuffSearchState)
const { getMessage } = useMessage()
@ -224,11 +225,31 @@ export default function Stuff() {
//
useEffect(() => {
if (isObjectNotEmpty(sessionState)) {
// sessionState
// if (isObjectNotEmpty(sessionState)) {
if (isObjectNotEmpty(session)) {
//
if (stuffSearchParams?.code === 'S') {
// const params = {
// saleStoreId: sessionState?.storeId,
// schObjectNo: stuffSearchParams?.schObjectNo,
// schAddress: stuffSearchParams?.schAddress,
// schObjectName: stuffSearchParams?.schObjectName,
// schSaleStoreName: stuffSearchParams?.schSaleStoreName,
// schReceiveUser: stuffSearchParams?.schReceiveUser,
// schDispCompanyName: stuffSearchParams?.schDispCompanyName,
// schDateType: stuffSearchParams.schDateType,
// schFromDt: dayjs(new Date()).add(-1, 'year').format('YYYY-MM-DD'),
// schToDt: dayjs(new Date()).format('YYYY-MM-DD'),
// startRow: (pageNo - 1) * pageSize + 1,
// endRow: pageNo * pageSize,
// schSelSaleStoreId: stuffSearchParams?.schOtherSelSaleStoreId
// ? stuffSearchParams.schOtherSelSaleStoreId
// : stuffSearchParams.schSelSaleStoreId,
// schSortType: stuffSearchParams.schSortType,
// }
const params = {
saleStoreId: sessionState?.storeId,
saleStoreId: session?.storeId,
schObjectNo: stuffSearchParams?.schObjectNo,
schAddress: stuffSearchParams?.schAddress,
schObjectName: stuffSearchParams?.schObjectName,
@ -260,8 +281,26 @@ export default function Stuff() {
fetchData()
} else if (stuffSearchParams?.code === 'M') {
//
// const params = {
// saleStoreId: sessionState?.storeId,
// schObjectNo: stuffSearchParams.schObjectNo,
// schAddress: 'dfdfdfdfdf',
// schObjectName: '',
// schSaleStoreName: '',
// schReceiveUser: '',
// schDispCompanyName: '',
// schDateType: 'U',
// schFromDt: dayjs(new Date()).add(-1, 'year').format('YYYY-MM-DD'),
// schToDt: dayjs(new Date()).format('YYYY-MM-DD'),
// startRow: (pageNo - 1) * pageSize + 1,
// endRow: pageNo * pageSize,
// schSelSaleStoreId: stuffSearchParams?.schOtherSelSaleStoreId
// ? stuffSearchParams.schOtherSelSaleStoreId
// : stuffSearchParams.schSelSaleStoreId,
// schSortType: 'R',
// }
const params = {
saleStoreId: sessionState?.storeId,
saleStoreId: session?.storeId,
schObjectNo: stuffSearchParams.schObjectNo,
schAddress: 'dfdfdfdfdf',
schObjectName: '',
@ -309,7 +348,8 @@ export default function Stuff() {
//
async function fetchData() {
const apiUrl = `/api/object/list?saleStoreId=${sessionState?.storeId}&${queryStringFormatter(stuffSearchParams)}`
// const apiUrl = `/api/object/list?saleStoreId=${sessionState?.storeId}&${queryStringFormatter(stuffSearchParams)}`
const apiUrl = `/api/object/list?saleStoreId=${session?.storeId}&${queryStringFormatter(stuffSearchParams)}`
await get({ url: apiUrl }).then((res) => {
if (!isEmptyArray(res)) {
setGridProps({ ...gridProps, gridData: res, count: res[0].totCnt })
@ -341,7 +381,8 @@ export default function Stuff() {
})
setPageNo(1)
const apiUrl = `/api/object/list?saleStoreId=${sessionState?.storeId}&${queryStringFormatter(stuffSearchParams)}`
// const apiUrl = `/api/object/list?saleStoreId=${sessionState?.storeId}&${queryStringFormatter(stuffSearchParams)}`
const apiUrl = `/api/object/list?saleStoreId=${session?.storeId}&${queryStringFormatter(stuffSearchParams)}`
get({ url: apiUrl }).then((res) => {
if (!isEmptyArray(res)) {
setGridProps({ ...gridProps, gridData: res, count: res[0].totCnt })
@ -373,7 +414,8 @@ export default function Stuff() {
})
setPageNo(1)
const apiUrl = `/api/object/list?saleStoreId=${sessionState?.storeId}&${queryStringFormatter(stuffSearchParams)}`
// const apiUrl = `/api/object/list?saleStoreId=${sessionState?.storeId}&${queryStringFormatter(stuffSearchParams)}`
const apiUrl = `/api/object/list?saleStoreId=${session?.storeId}&${queryStringFormatter(stuffSearchParams)}`
get({ url: apiUrl }).then((res) => {
if (!isEmptyArray(res)) {
setGridProps({ ...gridProps, gridData: res, count: res[0].totCnt })

View File

@ -1,8 +1,8 @@
'use client'
import React, { useEffect, useRef, useState } from 'react'
import { useEffect, useRef, useState, useContext } from 'react'
import { useAxios } from '@/hooks/useAxios'
import { useRecoilState, useRecoilValue, useResetRecoilState } from 'recoil'
import { useRecoilState, useRecoilValue, useResetRecoilState, useSetRecoilState } from 'recoil'
import { appMessageStore, globalLocaleStore } from '@/store/localeAtom'
import Select from 'react-select'
import KO from '@/locales/ko.json'
@ -15,10 +15,13 @@ import SingleDatePicker from '../common/datepicker/SingleDatePicker'
import { sessionStore } from '@/store/commonAtom'
import { useMessage } from '@/hooks/useMessage'
import { isObjectNotEmpty } from '@/util/common-utils'
import { searchState } from '@/store/boardAtom'
import { SessionContext } from '@/app/SessionProvider'
export default function StuffSearchCondition() {
const { session } = useContext(SessionContext)
const sessionState = useRecoilValue(sessionStore)
const [appMessageState, setAppMessageState] = useRecoilState(appMessageStore)
const setAppMessageState = useSetRecoilState(appMessageStore)
const globalLocaleState = useRecoilValue(globalLocaleStore)
const { getMessage } = useMessage()
const ref = useRef()
@ -128,7 +131,8 @@ export default function StuffSearchCondition() {
setDateType('U')
setStartDate(dayjs(new Date()).add(-1, 'year').format('YYYY-MM-DD'))
setEndDate(dayjs(new Date()).format('YYYY-MM-DD'))
if (sessionState?.storeId === 'T01') {
// if (sessionState?.storeId === 'T01') {
if (session?.storeId === 'T01') {
setSchSelSaleStoreId('')
handleClear1() //
resetStuffRecoil()
@ -152,18 +156,24 @@ export default function StuffSearchCondition() {
}
useEffect(() => {
if (isObjectNotEmpty(sessionState)) {
// if (isObjectNotEmpty(sessionState)) {
if (isObjectNotEmpty(session)) {
// storeId T01 storeLvl 1
let url
if (sessionState?.storeId === 'T01') {
// if (sessionState?.storeId === 'T01') {
if (session?.storeId === 'T01') {
//T01
url = `/api/object/saleStore/${sessionState?.storeId}/firstList?userId=${sessionState?.userId}`
// url = `/api/object/saleStore/${sessionState?.storeId}/firstList?userId=${sessionState?.userId}`
url = `/api/object/saleStore/${session?.storeId}/firstList?userId=${session?.userId}`
} else {
if (sessionState.storeLvl === '1') {
// if (sessionState.storeLvl === '1') {
if (session.storeLvl === '1') {
//T01 1
url = `/api/object/saleStore/${sessionState?.storeId}/list?firstFlg=1&userId=${sessionState?.userId}`
// url = `/api/object/saleStore/${sessionState?.storeId}/list?firstFlg=1&userId=${sessionState?.userId}`
url = `/api/object/saleStore/${session?.storeId}/list?firstFlg=1&userId=${sessionState?.userId}`
} else {
url = `/api/object/saleStore/${sessionState?.storeId}/list?firstFlg=1&userId=${sessionState?.userId}`
// url = `/api/object/saleStore/${sessionState?.storeId}/list?firstFlg=1&userId=${sessionState?.userId}`
url = `/api/object/saleStore/${session?.storeId}/list?firstFlg=1&userId=${session?.userId}`
}
}
@ -177,22 +187,26 @@ export default function StuffSearchCondition() {
let allList
let favList
let otherList
if (sessionState?.storeId === 'T01') {
// if (sessionState?.storeId === 'T01') {
if (session?.storeId === 'T01') {
allList = res
allList.sort((a, b) => (a.saleStoreId !== 'T01') - (b.saleStoreId !== 'T01') || a.saleStoreId - b.saleStoreId)
favList = res.filter((row) => row.saleStoreId === 'T01' || row.priority !== 'B')
setSchSelSaleStoreList(allList)
setFavoriteStoreList(favList)
setShowSaleStoreList(favList)
setSchSelSaleStoreId(sessionState?.storeId)
// setSchSelSaleStoreId(sessionState?.storeId)
setSchSelSaleStoreId(session?.storeId)
setStuffSearch({
...stuffSearch,
code: 'S',
schSelSaleStoreId: sessionState?.storeId,
// schSelSaleStoreId: sessionState?.storeId,
schSelSaleStoreId: session?.storeId,
})
//T01 2
url = `/api/object/saleStore/${sessionState?.storeId}/list?firstFlg=0&userId=${sessionState?.userId}`
//T01 2 1 storeId
// url = `/api/object/saleStore/${sessionState?.storeId}/list?firstFlg=0&userId=${sessionState?.userId}`
url = `/api/object/saleStore/${session?.storeId}/list?firstFlg=0&userId=${session?.userId}`
get({ url: url }).then((res) => {
if (!isEmptyArray(res)) {
@ -208,7 +222,8 @@ export default function StuffSearchCondition() {
}
})
} else {
if (sessionState?.storeLvl === '1') {
// if (sessionState?.storeLvl === '1') {
if (session?.storeLvl === '1') {
allList = res
favList = res.filter((row) => row.priority !== 'B')
otherList = res.filter((row) => row.firstAgentYn === 'N')
@ -235,7 +250,8 @@ export default function StuffSearchCondition() {
setOtherSaleStoreList(otherList)
// 2
setOtherSaleStoreId(sessionState?.storeId)
// setOtherSaleStoreId(sessionState?.storeId)
setOtherSaleStoreId(session?.storeId)
setStuffSearch({
...stuffSearch,
code: 'S',
@ -246,7 +262,8 @@ export default function StuffSearchCondition() {
}
})
}
}, [sessionState])
// }, [sessionState])
}, [session])
// 1 ..
const handleClear1 = () => {
@ -279,7 +296,8 @@ export default function StuffSearchCondition() {
stuffSearch.schSelSaleStoreId = key.saleStoreId
//T01 1
// 1 saleStoreId 2 API
let url = `/api/object/saleStore/${key.saleStoreId}/list?firstFlg=0&userId=${sessionState?.userId}`
// let url = `/api/object/saleStore/${key.saleStoreId}/list?firstFlg=0&userId=${sessionState?.userId}`
let url = `/api/object/saleStore/${key.saleStoreId}/list?firstFlg=0&userId=${session?.userId}`
let otherList
get({ url: url }).then((res) => {
if (!isEmptyArray(res)) {
@ -470,7 +488,8 @@ export default function StuffSearchCondition() {
<td colSpan={3}>
<div className="form-flex-wrap">
<div className="select-wrap mr5" style={{ flex: 1 }}>
{sessionState?.storeId === 'T01' && (
{/* {sessionState?.storeId === 'T01' && ( */}
{session?.storeId === 'T01' && (
<Select
id="long-value-select1"
instanceId="long-value-select1"
@ -483,7 +502,7 @@ export default function StuffSearchCondition() {
onChange={onSelectionChange}
getOptionLabel={(x) => x.saleStoreName}
getOptionValue={(x) => x.saleStoreId}
value={showSaleStoreList.filter(function (option) {
value={schSelSaleStoreList.filter(function (option) {
if (stuffSearch?.code === 'S' && schSelSaleStoreId === '') {
return false
} else if (stuffSearch?.code === 'S' && schSelSaleStoreId !== '') {
@ -498,11 +517,13 @@ export default function StuffSearchCondition() {
}
}
})}
isDisabled={sessionState?.storeLvl !== '1' ? true : sessionState?.storeId !== 'T01' ? true : false}
// isDisabled={sessionState?.storeLvl !== '1' ? true : sessionState?.storeId !== 'T01' ? true : false}
isDisabled={session?.storeLvl !== '1' ? true : session?.storeId !== 'T01' ? true : false}
isClearable={true}
/>
)}
{sessionState?.storeId !== 'T01' && sessionState?.storeLvl === '1' && (
{/* {sessionState?.storeId !== 'T01' && sessionState?.storeLvl === '1' && ( */}
{session?.storeId !== 'T01' && session?.storeLvl === '1' && (
<Select
id="long-value-select1"
instanceId="long-value-select1"
@ -529,11 +550,13 @@ export default function StuffSearchCondition() {
}
}
})}
isDisabled={sessionState?.storeLvl !== '1' ? true : sessionState?.storeId !== 'T01' ? true : false}
// isDisabled={sessionState?.storeLvl !== '1' ? true : sessionState?.storeId !== 'T01' ? true : false}
isDisabled={session?.storeLvl !== '1' ? true : session?.storeId !== 'T01' ? true : false}
isClearable={false}
/>
)}
{sessionState?.storeId !== 'T01' && sessionState?.storeLvl !== '1' && (
{/* {sessionState?.storeId !== 'T01' && sessionState?.storeLvl !== '1' && ( */}
{session?.storeId !== 'T01' && session?.storeLvl !== '1' && (
<Select
id="long-value-select1"
instanceId="long-value-select1"