MId 셋팅 변경

This commit is contained in:
focp212@naver.com
2025-09-30 11:37:35 +09:00
parent bd197bde15
commit f3d028da85
24 changed files with 164 additions and 305 deletions

View File

@@ -8,6 +8,7 @@ import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { AccountHolderAuthFilterProps, AuthAndTransferStatus } from '@/entities/additional-service/model/types';
import { authStatusBtnGroup } from '@/entities/additional-service/model/account-holder-auth/constant';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const AccountHolderAuthFilter = ({
filterOn,
@@ -27,10 +28,7 @@ export const AccountHolderAuthFilter = ({
const [filterEndDate, setFilterEndDate] = useState<string>(moment(endDate).format('YYYY.MM.DD'));
const [filterAuthStatus, setFilterAuthStatus] = useState<AuthAndTransferStatus>(authStatus);
let MidOptions = [
{ name: 'nictest00m', value: 'nictest00m' },
{ name: 'nictest002m', value: 'nictest002m' }
];
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
@@ -76,7 +74,7 @@ export const AccountHolderAuthFilter = ({
title='가맹점'
selectValue={mid}
selectSetter={setMid}
selectOptions={MidOptions}
selectOptions={midOptions}
></FilterSelect>
<FilterCalendar

View File

@@ -13,6 +13,7 @@ import { FilterDateOptions } from '@/entities/common/model/types';
import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const AccountHolderSearchFilter = ({
filterOn,
@@ -41,6 +42,8 @@ export const AccountHolderSearchFilter = ({
const [filterBank, setFilterBank] = useState<string>(bank)
const [filterProcessResult, setFilterProcessResult] = useState<ProcessResult>(processResult);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -60,11 +63,6 @@ export const AccountHolderSearchFilter = ({
onClickToClose();
};
let MidOptions = [
{ name: 'nictest00m', value: 'nictest00m' },
{ name: 'nictest002m', value: 'nictest002m' }
];
let bankOptions = [
{ name: '우리은행', value: '우리은행' },
{ name: '토스뱅킹', value: '토스뱅킹' }
@@ -113,7 +111,7 @@ export const AccountHolderSearchFilter = ({
title='가맹점'
selectValue={mid}
selectSetter={setMid}
selectOptions={MidOptions}
selectOptions={midOptions}
></FilterSelect>
<FilterSelectInput

View File

@@ -14,6 +14,7 @@ import moment from 'moment';
import { FilterInput } from '@/shared/ui/filter/input';
import { OrderStatus, PaymentStatus } from '../../model/ars/types';
import { ArsOrderStatusBtnGroup, ArsPaymentStatusBtnGroup } from '../../model/ars/constant';
import { useStore } from '@/shared/model/store';
export interface AlimtalkFilterProps {
filterOn: boolean;
@@ -66,6 +67,8 @@ export const AlimtalkFilter = ({
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -82,10 +85,6 @@ export const AlimtalkFilter = ({
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterPaymentStatus(paymentStatus);
}, [paymentStatus]);
@@ -121,7 +120,7 @@ export const AlimtalkFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterInput
title='주문번호'

View File

@@ -14,6 +14,7 @@ import moment from 'moment';
import { FilterInput } from '@/shared/ui/filter/input';
import { OrderStatus, PaymentStatus } from '../../model/ars/types';
import { ArsOrderStatusBtnGroup, ArsPaymentStatusBtnGroup } from '../../model/ars/constant';
import { useStore } from '@/shared/model/store';
export interface ArsFilterProps {
filterOn: boolean;
@@ -66,6 +67,8 @@ export const ArsFilter = ({
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -82,10 +85,6 @@ export const ArsFilter = ({
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterPaymentStatus(paymentStatus);
}, [paymentStatus]);
@@ -121,7 +120,7 @@ export const ArsFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterInput
title='주문번호'

View File

@@ -9,6 +9,7 @@ import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FundAccountReceiveAccountNameNoOptionsGroup, FundAccountReceiveBankCodeOptionsGroup, FundAccountResultTypeBtnGroup, FundAccountStatusBtnGroup } from '../../model/fund-account/constant';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterSelectInput } from '@/shared/ui/filter/select-input';
import { useStore } from '@/shared/model/store';
export interface FundAccountResultFilterProps {
filterOn: boolean;
@@ -68,6 +69,8 @@ export const FundAccountResultFilter = ({
setFilterReceiveAccountNameNoInputValue
] = useState<string>('');
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -90,10 +93,6 @@ export const FundAccountResultFilter = ({
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterStatus(status);
}, [status]);
@@ -129,7 +128,7 @@ export const FundAccountResultFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterSelectInput
title='수취인/계좌번호'

View File

@@ -9,6 +9,7 @@ import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FundAccountReceiveAccountNameNoOptionsGroup, FundAccountReceiveBankCodeOptionsGroup, FundAccountStatusBtnGroup } from '../../model/fund-account/constant';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterSelectInput } from '@/shared/ui/filter/select-input';
import { useStore } from '@/shared/model/store';
export interface FundAccountTransactionFilterProps {
filterOn: boolean;
@@ -63,6 +64,8 @@ export const FundAccountTransactionFilter = ({
setFilterReceiveAccountNameNoInputValue
] = useState<string>('');
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -85,10 +88,6 @@ export const FundAccountTransactionFilter = ({
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterStatus(status);
}, [status]);
@@ -124,7 +123,7 @@ export const FundAccountTransactionFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterSelectInput
title='수취인/계좌번호'

View File

@@ -19,6 +19,7 @@ import {
FilterMotionVariants
} from '@/entities/common/model/constant';
import moment from 'moment';
import { useStore } from '@/shared/model/store';
export interface PayoutFilterProps {
filterOn: boolean;
@@ -66,6 +67,8 @@ export const PayoutFilter = ({
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -81,10 +84,6 @@ export const PayoutFilter = ({
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterDisbursementStatus(disbursementStatus);
}, [disbursementStatus]);
@@ -120,7 +119,7 @@ export const PayoutFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterButtonGroups
title='조회기준'

View File

@@ -13,6 +13,7 @@ import {
KeyInPaymentTransactionStatus
} from '../../../model/types';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const KeyInPaymentFilter = ({
filterOn,
@@ -38,6 +39,8 @@ export const KeyInPaymentFilter = ({
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -55,9 +58,6 @@ export const KeyInPaymentFilter = ({
setMaxAmount(filterMaxAmount);
onClickToClose();
};
let MidOptions = [
{ name: 'nictest00m', value: 'nictest00m' }
];
let transactionStatusOption = [
{ name: '전체', value: KeyInPaymentTransactionStatus.ALL },
@@ -98,7 +98,7 @@ export const KeyInPaymentFilter = ({
title='가맹점'
selectValue={filterMid}
selectSetter={setMid}
selectOptions={MidOptions}
selectOptions={midOptions}
></FilterSelect>
<FilterCalendar
title='조회기간'

View File

@@ -16,6 +16,7 @@ import { FilterDateOptions } from '@/entities/common/model/types';
import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const LinkPaymentHistoryFilter = ({
filterOn,
@@ -52,6 +53,8 @@ export const LinkPaymentHistoryFilter = ({
const [calendarOpen, setCalendarOpen] = useState<boolean>(false);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -72,11 +75,6 @@ export const LinkPaymentHistoryFilter = ({
onClickToClose();
};
let MidOptions = [
{ name: 'nictest00m', value: 'nictest00m' },
{ name: 'nictest002m', value: 'nictest002m' }
];
let searchTypeOption = [
{ name: '휴대폰번호', value: LinkPaymentSearchType.PHONE },
{ name: '이메일', value: LinkPaymentSearchType.EMAIL },
@@ -136,7 +134,7 @@ export const LinkPaymentHistoryFilter = ({
title='가맹점'
selectValue={filterMid}
selectSetter={setFilterMid}
selectOptions={MidOptions}
selectOptions={midOptions}
></FilterSelect>
<FilterSelectInput

View File

@@ -15,6 +15,7 @@ import { FilterDateOptions } from '@/entities/common/model/types';
import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const LinkPaymentWaitSendFilter = ({
filterOn,
@@ -48,6 +49,8 @@ export const LinkPaymentWaitSendFilter = ({
const [calendarOpen, setCalendarOpen] = useState<boolean>(false);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -67,11 +70,6 @@ export const LinkPaymentWaitSendFilter = ({
onClickToClose();
};
let MidOptions = [
{ name: 'nictest00m', value: 'nictest00m' },
{ name: 'nictest002m', value: 'nictest002m' }
];
let searchTypeOption = [
{ name: '휴대폰번호', value: LinkPaymentSearchType.PHONE },
{ name: '이메일', value: LinkPaymentSearchType.EMAIL },
@@ -122,7 +120,7 @@ export const LinkPaymentWaitSendFilter = ({
title='가맹점'
selectValue={mid}
selectSetter={setFilterMid}
selectOptions={MidOptions}
selectOptions={midOptions}
></FilterSelect>
<FilterSelectInput

View File

@@ -8,6 +8,8 @@ import { FilterDateOptions } from '@/entities/common/model/types';
import { FilterCalendar } from '@/shared/ui/filter/calendar';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { SmsPaymentFilterProps, SmsPaymentSearchType, SmsType } from '../../model/sms-payment/types';
import { useStore } from '@/shared/model/store';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
export const SmsPaymentFilter = ({
filterOn,
setFilterOn,
@@ -32,10 +34,7 @@ export const SmsPaymentFilter = ({
const [filterToDate, setFilterToDate] = useState<string>(moment(toDate).format('YYYY.MM.DD'));
const [filterSmsCl, setFilterSmsCl] = useState<SmsType>(smsCl);
const variants = {
hidden: { x: '100%' },
visible: { x: '0%' },
};
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToSetFilter = () => {
setMid(filterMid);
@@ -73,12 +72,9 @@ export const SmsPaymentFilter = ({
className="full-menu-modal"
initial="hidden"
animate={(filterOn) ? 'visible' : 'hidden'}
variants={variants}
transition={{ duration: 0.3 }}
style={{
width: '100%',
height: '100%',
}}
variants={ FilterMotionVariants }
transition={ FilterMotionDuration }
style={ FilterMotionStyle }
>
<div className="full-menu-container">
<div className="full-menu-header">
@@ -102,7 +98,7 @@ export const SmsPaymentFilter = ({
title='가맹점'
selectValue={mid}
selectSetter={setMid}
selectOptions={MidOptions}
selectOptions={midOptions}
></FilterSelect>
<FilterSelectInput

View File

@@ -74,7 +74,7 @@ export interface HomeMonthResponse {
settlement: Settlement;
};
export interface HomeGroupsParams {
userid: string;
userid?: string;
};
export interface HomeGroupsResponse {
mids: Array<string>;

View File

@@ -1,6 +1,7 @@
import { useEffect, useState } from 'react';
import { motion } from 'framer-motion';
import { IMAGE_ROOT } from '@/shared/constants/common';
import { useStore } from '@/shared/model/store';
import {
SettlementPaymentMethod,
SettlementPeriodType
@@ -51,6 +52,8 @@ export const ListFilter = ({
const [filterEndDate, setFilterEndDate] = useState<string>(endDate);
const [filterPaymentMethod, setFilterPaymentMethod] = useState<SettlementPaymentMethod>(paymentMethod);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -64,10 +67,6 @@ export const ListFilter = ({
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterPeriodType(periodType);
}, [periodType]);
@@ -103,7 +102,7 @@ export const ListFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterButtonGroups
title='조회기준'

View File

@@ -1,179 +0,0 @@
import { IMAGE_ROOT } from '@/shared/constants/common';
import { FilterProps } from '../model/types';
import { motion } from 'framer-motion';
import { FilterMotionDuration, FilterMotionStyle, FilterMotionVariants } from '@/entities/common/model/constant';
export const Filter = ({
filterOn,
setFilterOn
}: FilterProps) => {
const onClickToClose = () => {
setFilterOn(false);
};
return (
<>
<motion.div
className="full-menu-modal"
initial="hidden"
animate={ (filterOn)? 'visible': 'hidden' }
variants={ FilterMotionVariants }
transition={ FilterMotionDuration }
style={ FilterMotionStyle }
>
<div className="full-menu-container">
<div className="full-menu-header">
<div className="full-menu-title center"></div>
<div className="full-menu-actions">
<button
id="closeFullMenu"
className="full-menu-close"
>
<img
src={ IMAGE_ROOT + '/ico_close.svg' }
alt="닫기"
onClick={ () => onClickToClose() }
/>
</button>
</div>
</div>
<div className="option-list">
<div className="opt-field">
<div className="opt-label"></div>
<div className="opt-controls">
<select className="flex-1">
<option>nictest00m</option>
</select>
</div>
</div>
<div className="opt-field">
<div className="opt-label">/ID</div>
<div className="opt-controls">
<select className="w-110">
<option></option>
<option>ID</option>
</select>
<input
className="flex-1"
type="text"
placeholder=""
/>
</div>
</div>
<div className="opt-field">
<div className="opt-label"></div>
<div className="opt-controls col below h36">
<div className="chip-row">
<span className="keyword-tag active"></span>
<span className="keyword-tag"></span>
<span className="keyword-tag">1</span>
<span className="keyword-tag"></span>
</div>
<div className="range-row">
<div className="input-wrapper date">
<input
className="date-input"
type="text"
placeholder="날짜 선택"
value="2025.06.08"
readOnly={ true }
/>
<button
type="button"
className="date-btn"
>
<img
src={ IMAGE_ROOT + '/ico_date.svg' }
alt="날짜 선택"
/>
</button>
</div>
<span className="beetween">~</span>
<div className="input-wrapper date">
<input
className="date-input"
type="text"
placeholder="날짜 선택"
value="2025.06.08"
readOnly={ true }
/>
<button
type="button"
className="date-btn"
>
<img
src={ IMAGE_ROOT + '/ico_date.svg' }
alt="날짜 선택"
/>
</button>
</div>
</div>
</div>
</div>
<div className="opt-field">
<div className="opt-label"></div>
<div className="opt-controls col below h36">
<div className="chip-row">
<span className="keyword-tag active"></span>
<span className="keyword-tag"></span>
<span className="keyword-tag"></span>
<span className="keyword-tag"></span>
</div>
</div>
</div>
<div className="opt-field">
<div className="opt-label"></div>
<div className="opt-controls col below h36">
<div className="chip-row">
<span className="keyword-tag active"></span>
<span className="keyword-tag"></span>
<span className="keyword-tag"></span>
<span
className="keyword-tag"
style={{ visibility: 'hidden' }}
></span>
</div>
</div>
</div>
<div className="opt-field">
<div className="opt-label"></div>
<div className="opt-controls">
<select className="flex-1">
<option></option>
</select>
</div>
</div>
<div className="opt-field">
<div className="opt-label"></div>
<div className="opt-controls">
<div className="input-wrapper ">
<input
type="text"
placeholder=""
/>
</div>
<span> ~ </span>
<div className="input-wrapper date">
<input
type="text"
placeholder=""
/>
</div>
</div>
</div>
</div>
<div className="apply-row">
<button className="btn-50 btn-blue flex-1"></button>
</div>
</div>
</motion.div>
</>
);
};

View File

@@ -25,6 +25,7 @@ import {
FilterMotionStyle,
FilterMotionVariants
} from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const AllTransactionFilter = ({
filterOn,
@@ -74,6 +75,9 @@ export const AllTransactionFilter = ({
const [filterSearchValue, setFilterSearchValue] = useState<string | undefined>(searchValue);
const [searchClOptionsGroup, setSearchClOptionsGroup] = useState<Array<Record<string, string>>>([]);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -105,9 +109,6 @@ export const AllTransactionFilter = ({
setSearchValue(filterSearchValue);
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
let setSearchClOptions = (value: AllTransactionServiceCode) => {
let options = [];
@@ -185,7 +186,7 @@ export const AllTransactionFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterSelectInput
title='주문번호/TID'

View File

@@ -25,6 +25,7 @@ import {
FilterMotionStyle,
FilterMotionVariants
} from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const BillingFilter = ({
filterOn,
@@ -62,6 +63,8 @@ export const BillingFilter = ({
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -83,10 +86,6 @@ export const BillingFilter = ({
setMaxAmount(filterMaxAmount);
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterRequestStatus(requestStatus);
@@ -124,7 +123,7 @@ export const BillingFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterSelectInput
title='주문번호/TID'

View File

@@ -22,6 +22,7 @@ import {
FilterMotionStyle,
FilterMotionVariants
} from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const CashReceiptFilter = ({
filterOn,
@@ -54,6 +55,8 @@ export const CashReceiptFilter = ({
{name: '발행번호', value: 'issue2'},
];
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -71,9 +74,6 @@ export const CashReceiptFilter = ({
setProcessResult(filterProcessResult);
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterIssueStatus(issueStatus);
@@ -111,7 +111,7 @@ export const CashReceiptFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterCalendar
title='발행일자'

View File

@@ -23,6 +23,7 @@ import {
FilterMotionStyle,
FilterMotionVariants
} from '@/entities/common/model/constant';
import { useStore } from '@/shared/model/store';
export const EscrowFilter = ({
filterOn,
@@ -57,6 +58,8 @@ export const EscrowFilter = ({
const [filterMinAmount, setFilterMinAmount] = useState<number | undefined>(minAmount);
const [filterMaxAmount, setFilterMaxAmount] = useState<number | undefined>(maxAmount);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -77,9 +80,6 @@ export const EscrowFilter = ({
setMaxAmount(filterMaxAmount);
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
useEffect(() => {
setFilterDeliveryStatus(deliveryStatus);
@@ -117,7 +117,7 @@ export const EscrowFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterSelectInput
title='주문번호/TID'

View File

@@ -23,9 +23,8 @@ export const useUserInfo = () => {
accessTokenExpiresIn,
refreshTokenExpiresIn,
menuGrants,
// usrid,
// clientAddressIP,
// requires2FA
clientAddressIP,
requires2FA
} = result;
setLocalStorage(StorageKeys.TokenType, tokenType);
setLocalStorage(StorageKeys.AccessToken, accessToken);
@@ -33,11 +32,14 @@ export const useUserInfo = () => {
setLocalStorage(StorageKeys.AccessTokenExpiresIn, accessTokenExpiresIn);
setLocalStorage(StorageKeys.RefreshTokenExpiresIn, refreshTokenExpiresIn);
setLocalStorage(StorageKeys.MenuGrants, menuGrants);
// setLocalStorage(StorageKeys.Usrid, usrid);
// setLocalStorage(StorageKeys.ClientAddressIP, clientAddressIP);
// setLocalStorage(StorageKeys.Requires2FA, requires2FA);
console.log(result)
useStore.getState().UserStore.setUserInfo(result);
setLocalStorage(StorageKeys.Usrid, params.id);
setLocalStorage(StorageKeys.ClientAddressIP, clientAddressIP);
setLocalStorage(StorageKeys.Requires2FA, requires2FA);
useStore.getState().UserStore.setUserInfo({
...result,
usrid: params.id
});
}
}
catch(e: any){

View File

@@ -9,11 +9,17 @@ export interface UserInfoState {
resetUserInfo: () => void;
userFavorite: Array<UserFavorite>;
setUserFavorite: (update: SetStateAction<Array<UserFavorite>>) => void;
userMids: Array<string>;
setUserMids: (update: SetStateAction<Array<string>>) => void;
selectOptionsMids: Array<Record<string, string>>;
setSelectOptionsMids: (update: SetStateAction<Array<Record<string, string>>>) => void;
};
const initialUserInfoState = {
userInfo: {} as UserInfo,
userFavorite: [] as Array<UserFavorite>
userFavorite: [] as Array<UserFavorite>,
userMids: [] as Array<string>,
selectOptionsMids: [] as Array<Record<string, string>>
} as UserInfoState;
export const createUserInfoStore = lens<UserInfoState>((set, get) => ({
@@ -39,8 +45,8 @@ export const createUserInfoStore = lens<UserInfoState>((set, get) => ({
window.localStorage.removeItem(StorageKeys.RefreshTokenExpiresIn);
window.localStorage.removeItem(StorageKeys.MenuGrants);
window.localStorage.removeItem(StorageKeys.Usrid);
// window.localStorage.removeItem(StorageKeys.ClientAddressIP);
// window.localStorage.removeItem(StorageKeys.Requires2FA);
window.localStorage.removeItem(StorageKeys.ClientAddressIP);
window.localStorage.removeItem(StorageKeys.Requires2FA);
set(initialUserInfoState);
},
setUserFavorite: (update) => {
@@ -49,10 +55,36 @@ export const createUserInfoStore = lens<UserInfoState>((set, get) => ({
? update(state.userFavorite): update;
return {
...state,
userFavorite: {
userFavorite: [
...state.userFavorite,
...newUserFavorite
],
};
});
},
setUserMids: (update) => {
set((state: UserInfoState) => {
const newUserMids = (typeof update === 'function')
? update(state.userMids): update;
return {
...state,
userMids: [
...state.userMids,
...newUserMids
],
};
});
},
setSelectOptionsMids: (update) => {
set((state: UserInfoState) => {
const newSelectOptionsMids = (typeof update === 'function')
? update(state.selectOptionsMids): update;
return {
...state,
selectOptionsMids: [
...state.selectOptionsMids,
...newSelectOptionsMids
],
};
});
},

View File

@@ -7,6 +7,7 @@ import { useState } from 'react';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { VatReturnReceiptTypeBtnGroup, VatReturnTargetTypeBtnGroup } from '../../model/contant';
import { FilterCalendarMonth } from '@/shared/ui/filter/calendar-month';
import { useStore } from '@/shared/model/store';
export interface ListFilterProps {
filterOn: boolean;
@@ -44,6 +45,8 @@ export const ListFilter = ({
const [filterReceiptType, setFIlterReceiptType] = useState<VatReturnReceiptType>(receiptType);
const [filterTargetType, setFilterTargetType] = useState<VatReturnTargetType>(targetType);
const midOptions = useStore.getState().UserStore.selectOptionsMids;
const onClickToClose = () => {
setFilterOn(false);
};
@@ -57,10 +60,6 @@ export const ListFilter = ({
onClickToClose();
};
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
return (
<>
<motion.div
@@ -92,7 +91,7 @@ export const ListFilter = ({
title='가맹점'
selectValue={ filterMid }
selectSetter={ setFilterMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterCalendarMonth
title='발행월'

View File

@@ -7,6 +7,7 @@ import { ReferenceRequestFail } from './reference-request-fail';
import { FilterButtonGroups } from '@/shared/ui/filter/button-groups';
import { VatReturnTaxBtnGroups } from '../model/contant';
import { VatReturnPayTax } from '../model/types';
import { useStore } from '@/shared/model/store';
export const ReferenceWrap = () => {
@@ -20,9 +21,7 @@ export const ReferenceWrap = () => {
const [payTax, setPayTax] = useState<VatReturnPayTax>(VatReturnPayTax.Tax);
const [email, setEmail] = useState<string>('');
let MidOptions = [
{name: 'nictest00m', value: 'nictest00m'}
];
const midOptions = useStore.getState().UserStore.selectOptionsMids;
let EmailOptions = [
{name: 'focp212@naver.com', value: 'focp212@naver.com'}
@@ -44,7 +43,7 @@ export const ReferenceWrap = () => {
title='가맹점'
selectValue={ mid }
selectSetter={ setMid }
selectOptions={ MidOptions }
selectOptions={ midOptions }
></FilterSelect>
<FilterButtonGroups
title='거래 과세/면세 구분'

View File

@@ -19,6 +19,8 @@ import {
useSetFavoriteEdit,
useSetMenuOn
} from '@/widgets/sub-layout/use-sub-layout';
import { useHomeGroupsMutation } from '@/entities/home/api/use-home-groups-mutation';
import { HomeGroupsParams, HomeGroupsResponse } from '@/entities/home/model/types';
export const HomePage = () => {
const { callLogin } = useUserInfo();
@@ -42,15 +44,34 @@ export const HomePage = () => {
const [authRegisterOn, setAuthRegisterOn] = useState<boolean>(false);
const [loginSuccess, setLoginSuccess] = useState<boolean>(false);
const { mutateAsync: homeGroups } = useHomeGroupsMutation();
const callHomeGroups = () => {
let userInfo = useStore.getState().UserStore.userInfo;
let params: HomeGroupsParams = {
userid: userInfo.usrid
};
homeGroups(params).then((rs: HomeGroupsResponse) => {
useStore.getState().UserStore.setUserMids(rs.mids);
let options: Array<Record<string, string>> = rs.mids.map((value, index) => {
return {
name: value,
value: value
};
});
useStore.getState().UserStore.setSelectOptionsMids(options);
});
};
/*
const userParmas = {
id: 'thenaun12',
password: 'answjddl1!'
};
*/
const userParmas = {
id: 'nictest00',
password: 'nictest00'
};
const handleRequestToken = useCallback(async () =>{
console.log('handleRequestToken');
@@ -74,15 +95,19 @@ export const HomePage = () => {
setLocalStorage(StorageKeys.AccessTokenExpiresIn, token.accessTokenExpiresIn);
setLocalStorage(StorageKeys.RefreshTokenExpiresIn, token.refreshTokenExpiresIn);
setLocalStorage(StorageKeys.MenuGrants, token.menuGrants);
setLocalStorage(StorageKeys.ClientAddressIP, token.clientAddressIP);
setLocalStorage(StorageKeys.Requires2FA, token.requires2FA);
useStore.getState().UserStore.setUserInfo({
usrid: token.usrid,
usrid: userParmas.id,
tokenType: token.tokenType,
accessToken: token.accessToken,
refreshToken: token.refreshToken,
accessTokenExpiresIn: token.accessTokenExpiresIn,
refreshTokenExpiresIn: token.refreshTokenExpiresIn,
menuGrants: token.menuGrants,
clientAddressIP: token.clientAddressIP,
requires2FA: token.requires2FA,
});
setLoginSuccess(true);
@@ -97,10 +122,7 @@ export const HomePage = () => {
}, []);
const userParmas = {
id: 'nictest00',
password: 'nictest00'
};
const handleLogin = useCallback(async () =>{
//let appStart = getLocalStorage(StorageKeys.AppStart);
@@ -125,10 +147,12 @@ export const HomePage = () => {
// usrid: usrid
});
setLoginSuccess(true);
callHomeGroups();
}
else{
callLogin(userParmas).then(() => {
setLoginSuccess(true);
callHomeGroups();
});
}

View File

@@ -7,8 +7,8 @@ export enum StorageKeys {
RefreshTokenExpiresIn = 'REFRESH_TOKEN_EXPIRES_IN',
MenuGrants = 'MENU_GRANTS',
Usrid = 'USRID',
// ClientAddressIP = 'ClIENT_ADDRESS_IP',
// Requires2FA = 'REQUIRES_2FA',
ClientAddressIP = 'ClIENT_ADDRESS_IP',
Requires2FA = 'REQUIRES_2FA',
BottomBannerClose = 'BOTTOM_BANNER_CLOSE',
RootStore = 'ROOT_STORE',