업로드

This commit is contained in:
DESKTOP-KUL8TT4\siina 2024-08-22 15:57:02 +09:00
parent cbc85438f2
commit d49509ae18

View File

@ -10,6 +10,7 @@
!!! info
전략투자에 3개 변경 및 추가 사항이 있음
**1. 로보어드바이저 투자일임계약(비대면) 약관**
> 1. 동의 내용은 투자일임계약 약관 동의 + 투자일임계약서 + 성과수수료 동의서
> 2. 약관파일명 : (콴텍투자일임주식회사)+비대면+투자일임계약+약관+개정(시행_20240808)_수정요청사항반영최종(배포용)_240624
@ -210,6 +211,261 @@ const getAccountList = () => {
<font color="red">최종적으로 투자 설명서 및 계약서 확인이 가능한 부분까지 나옴
</font>
처음 로그인 시 [내 자산]으로 넘어가는데 위 부분을 처리하기 위해 또! 샘플데이터를 만듬. 위치는 <kbd>sample.ts</kbd>
```javascript
export const IBankAccountSample: IBankAccount = {
profitAndLoss: 1500.75,
profitAndLossRate: 7.5,
investableAmount: 10000.0,
recomPortfolioJoinYn: 'Y',
accountList: [
{
accountNo: '1234567890',
accountName: 'My Savings Account',
sccoFnstCd: 'SC001',
securitiesName: 'ABC Securities',
accountType: 'Savings',
accountTypeNm: 'Savings Account',
accountInvestableAmount: 5000.5,
accountJoinDate: '2022-01-15',
pbId: 'PB1234',
withAgree: 'Y',
accountJourneyStatus: 'Active'
},
{
accountNo: '0987654321',
accountName: 'Investment Account',
sccoFnstCd: 'SC002',
securitiesName: 'XYZ Securities',
accountType: 'Investment',
accountTypeNm: 'Investment Account',
accountInvestableAmount: 3000.0,
accountJoinDate: '2023-03-10',
accountJourneyStatus: 'Pending'
},
{
accountNo: '1122334455',
accountName: 'Retirement Account',
sccoFnstCd: 'SC003',
securitiesName: 'QRS Securities',
accountType: 'Retirement',
accountTypeNm: 'Retirement Account',
accountInvestableAmount: 2000.0,
accountJoinDate: '2021-07-20',
withAgree: 'N',
accountJourneyStatus: 'Closed'
}
]
};
```
위의 샘플데이터를 <kbd>useBankAccount.ts</kbd>에 넣음
코드는 아래와 같음
변경전
```javascript
const getList = useCallback(() => {
if (userInfo) {
getAccountList({
customerId: userInfo.userId, // ! 이거 나중에 recoil로 빼서 와주세요.
sccoFnstCd: getCompanyInfo().companyCode || '' // ! 얘도 마찬가지로 아마 api호출할 때 env꺼 쓸 겁니다.
}).then((result) => {
if (result.accountList === undefined) {
setIsLoading(false);
return;
}
setInvestmentStatus(result);
});
}
}, [userInfo]);
```
<br><br>
변경후
```javascript
const getList = useCallback(() => {
if (userInfo) {
// 24-08-20 로컬 개발&테스트용 샘플데이터
if (process.env.NODE_ENV === 'development') {
setInvestmentStatus(IBankAccountSample);
} else {
getAccountList({
customerId: userInfo.userId, // ! 이거 나중에 recoil로 빼서 와주세요.
sccoFnstCd: getCompanyInfo().companyCode || '' // ! 얘도 마찬가지로 아마 api호출할 때 env꺼 쓸 겁니다.
}).then((result) => {
if (result.accountList === undefined) {
setIsLoading(false);
return;
}
setInvestmentStatus(result);
});
}
}
}, [userInfo]);
```
로그인하고 내자산에서 가입한 포트폴리오등을 출력하기 위해서 샘플데이터 또 만듬!
위치는 역시 <kbd>sample.ts</kbd>
```javascript
export const IBankAccountSample: IBankAccount = {
profitAndLoss: 1500.75,
profitAndLossRate: 7.5,
investableAmount: 10000.0,
recomPortfolioJoinYn: 'Y',
accountList: [
{
accountNo: '1234567890',
accountName: 'My Savings Account',
sccoFnstCd: 'SC001',
securitiesName: 'ABC Securities',
accountType: 'Savings',
accountTypeNm: 'Savings Account',
accountInvestableAmount: 5000.5,
accountJoinDate: '2022-01-15',
pbId: 'PB1234',
withAgree: 'Y',
accountJourneyStatus: 'Active'
},
{
accountNo: '0987654321',
accountName: 'Investment Account',
sccoFnstCd: 'SC002',
securitiesName: 'XYZ Securities',
accountType: 'Investment',
accountTypeNm: 'Investment Account',
accountInvestableAmount: 3000.0,
accountJoinDate: '2023-03-10',
accountJourneyStatus: 'Pending'
},
{
accountNo: '1122334455',
accountName: 'Retirement Account',
sccoFnstCd: 'SC003',
securitiesName: 'QRS Securities',
accountType: 'Retirement',
accountTypeNm: 'Retirement Account',
accountInvestableAmount: 2000.0,
accountJoinDate: '2021-07-20',
withAgree: 'N',
accountJourneyStatus: 'Closed'
}
]
};
export const assetsByAccountSample: IAssetsAccount = {
investableAmount: 15000.0,
accountLinkedYn: 'Y',
investingYn: 'Y',
terminatedYn: 'N',
investAmount: 10000.0,
profitAndLoassAmount: 500.75,
valuationAmount: 15500.75,
befDtCompPl: 400.5,
befDtCompRate: 2.75,
dayProfitRateChart: [
{x: '2024-08-01', y: 1.25},
{x: '2024-08-02', y: 1.5},
{x: '2024-08-03', y: 1.75},
{x: '2024-08-04', y: 1.6},
{x: '2024-08-05', y: 2.0}
],
portfolioList: [
{
portfolioId: 'PF001',
portfolioName: 'Growth Strategy',
title: 'High Growth Portfolio',
strategyCount: 3,
valuationAmount: 8000.0,
profitRate: 5.5,
investType: 'Equity',
status: 'Active',
weight: 60
},
{
portfolioId: 'PF002',
portfolioName: 'Balanced Strategy',
title: 'Balanced Risk Portfolio',
strategyCount: 2,
valuationAmount: 5500.75,
profitRate: 3.25,
investType: 'Mixed',
status: 'Active',
weight: 30
},
{
portfolioId: 'PF003',
portfolioName: 'Conservative Strategy',
title: 'Low Risk Portfolio',
strategyCount: 1,
valuationAmount: 2000.0,
profitRate: 1.75,
investType: 'Bonds',
status: 'Pending',
weight: 10
}
]
};
```
<br><br>
변경전
```javascript
// 선택된 계좌 투자 정보 조회 api 함수
const getAccount = useCallback(() => {
if (selectedAcccount) {
const tempAccount: IAssetsAccountPrams = {
accountNo: selectedAcccount.accountNo
};
getAccountByAssets(tempAccount).then((account) => {
setIsLoading(false);
if (account.investableAmount === undefined) return;
setAccount(account);
});
}
}, [selectedAcccount, setIsLoading]);
```
<br><br>
변경후
```javascript
// 선택된 계좌 투자 정보 조회 api 함수
// 24-08-20 로컬 개발&테스트용 샘플데이터
const getAccount = useCallback(() => {
if (selectedAcccount) {
const tempAccount: IAssetsAccountPrams = {
accountNo: selectedAcccount.accountNo
};
if (process.env.NODE_ENV === 'development') {
setAccount(assetsByAccountSample);
} else {
getAccountByAssets(tempAccount).then((account) => {
setIsLoading(false);
if (account.investableAmount === undefined) return;
setAccount(account);
});
}
}
}, [selectedAcccount, setIsLoading]);
```
6. ## 여기부터 필요한 내용
투자 설명서 및 계약서 페이지는 <kbd>ContractDocTask.tsx</kbd> --> <kbd>ContractDocList.tsx</kbd> 이며
@ -404,5 +660,4 @@ module.exports = {
}
```
6. 기존 react-scripts 제거 `npm uninstall react-scripts`
6. 기존 react-scripts 제거 `npm uninstall react-scripts`