Skip to content

Commit

Permalink
Merge branch '1363-impl-funding-api-for-executive-feedbacks' of https…
Browse files Browse the repository at this point in the history
…://github.com/academic-relations/ar-002-clubs into 1363-impl-funding-api-for-executive-feedbacks
  • Loading branch information
Gerbera3090 committed Jan 25, 2025
2 parents 8846d32 + 614e145 commit 421b99c
Show file tree
Hide file tree
Showing 6 changed files with 138 additions and 98 deletions.
1 change: 1 addition & 0 deletions packages/web/src/constants/tableTagList.ts
Original file line number Diff line number Diff line change
Expand Up @@ -99,6 +99,7 @@ const FundingTagList: {
[FundingStatusEnum.Committee]: { text: "운위", color: "YELLOW" },
[FundingStatusEnum.Approved]: { text: "승인", color: "GREEN" },
[FundingStatusEnum.Rejected]: { text: "반려", color: "RED" },
[FundingStatusEnum.Partial]: { text: "부분 승인", color: "PURPLE" },
};

// TODO: interface enum 사용
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,9 @@ export const useCreateFunding = (clubId: number) => {
createFunding(
{
body: {
clubId,
club: {
id: clubId,
},
purposeActivity: purposeActivity
? { id: purposeActivity.id }
: undefined,
Expand Down Expand Up @@ -125,6 +127,9 @@ export const useCreateFunding = (clubId: number) => {
traderName: data.traderName,
traderAccountNumber: data.traderAccountNumber,
wasteExplanation: data.wasteExplanation,
files: data.nonCorporateTransactionFiles.map(file => ({
id: file.id,
})),
}
: undefined,

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,8 @@ const useGetInitialFundingFormData = (
traderName: funding.nonCorporateTransaction?.traderName,
traderAccountNumber: funding.nonCorporateTransaction?.traderAccountNumber,
wasteExplanation: funding.nonCorporateTransaction?.wasteExplanation,
nonCorporateTransactionFiles:
funding.nonCorporateTransaction?.files ?? [],

// 식비, 근로 계약, 외부 행사 참가비, 발간물, 수익 사업, 공동 경비, 기타 증빙
foodExpenseExplanation: funding.foodExpense?.explanation,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -37,7 +37,9 @@ const useUpdateFunding = (fundingId: number, clubId: number) => {
{
fundingId,
body: {
clubId,
club: {
id: clubId,
},
purposeActivity: purposeActivity
? { id: purposeActivity.id }
: undefined,
Expand Down Expand Up @@ -127,6 +129,9 @@ const useUpdateFunding = (fundingId: number, clubId: number) => {
traderName: data.traderName,
traderAccountNumber: data.traderAccountNumber,
wasteExplanation: data.wasteExplanation,
files: data.nonCorporateTransactionFiles.map(file => ({
id: file.id,
})),
}
: undefined,

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -93,6 +93,7 @@ export interface AddEvidence {
profitMakingActivityFiles: FileDetail[];
jointExpenseFiles: FileDetail[];
etcExpenseFiles: FileDetail[];
nonCorporateTransactionFiles: FileDetail[];
}

export type FundingFormData = FundingInfo & BasicEvidence & AddEvidence;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,137 +1,163 @@
// import { ApiFnd002ResponseOk } from "@sparcs-clubs/interface/api/funding/apiFnd002";
import { ApiFnd002ResponseOk } from "@sparcs-clubs/interface/api/funding/endpoint/apiFnd002";
import {
FixtureClassEnum,
FixtureEvidenceEnum,
FundingStatusEnum,
TransportationEnum,
} from "@sparcs-clubs/interface/common/enum/funding.enum";

// NOTE: (@dora) use type ApiFnd002ResponseOk after https://github.com/academic-relations/ar-002-clubs/issues/1119 is done
const mockFundingDetail = {
clubId: 1,
purposeId: 0,
const mockFundingDetail: ApiFnd002ResponseOk = {
id: 1,
club: {
id: 1,
},
activityD: {
id: 1,
},
purposeActivity: {
id: 1,
name: "2021년 1학기 해커톤",
},
name: "M1 맥북 Pro 16 inch",
expenditureDate: new Date(),
expenditureAmount: 2500000,
fundingStatusEnum: FundingStatusEnum.Applied,
feedback: "피드백",
tradeEvidenceFiles: [
{
id: "trade1",
link: "https://example.com/trade1.pdf",
name: "trade1.pdf",
name: "trade1",
url: "https://via.placeholder.com/150",
},
],
tradeDetailFiles: [
{
id: "detail1",
link: "https://example.com/detail1.pdf",
name: "detail1.pdf",
name: "detail1",
url: "https://via.placeholder.com/150",
},
],
tradeDetailExplanation: "이벤트를 위한 거래에 대한 세부 정보입니다.",

clubSuppliesName: "맥북",
clubSuppliesEvidenceEnum: FixtureEvidenceEnum.Purchase,
clubSuppliesClassEnum: FixtureClassEnum.Electronics,
clubSuppliesPurpose: "물품 사용 목적을 포함한 어떠한 머시꺵이",
clubSuppliesImageFiles: [
{
id: "supplies1",
link: "https://example.com/supplies1.jpg",
name: "supplies1.jpg",
},
],
clubSuppliesSoftwareEvidence: "N/A",
clubSuppliesSoftwareEvidenceFiles: [],
numberOfClubSupplies: 50,
priceOfClubSupplies: 200,

isFixture: true,
fixtureName: "A4 종이",
fixtureEvidenceEnum: FixtureEvidenceEnum.Management,
fixtureClassEnum: FixtureClassEnum.Others,
fixturePurpose: "비품 사용 목적을 포함한 어떠한 머시꺵이",
fixtureImageFiles: [
{
id: "fixture1",
link: "https://example.com/fixture1.jpg",
name: "fixture1.jpg",
},
],
fixtureSoftwareEvidence: "N/A",
fixtureSoftwareEvidenceFiles: [],
numberOfFixture: 2,
priceOfFixture: 300,
fixture: {
name: "A4 종이",
evidenceEnum: FixtureEvidenceEnum.Management,
classEnum: FixtureClassEnum.Others,
purpose: "비품 사용 목적을 포함한 어떠한 머시꺵이",
imageFiles: [
{
id: "fixture1",
name: "A4 종이",
url: "https://via.placeholder.com/150",
},
],
softwareEvidenceFiles: [],
number: 2,
price: 300,
},

isTransportation: true,
transportationEnum: TransportationEnum.Airplane,
origin: "서울역",
destination: "대전역",
purposeOfTransportation: "해커톤 장소 사전답사",
transportationPassengers: [
{ id: 1, studentNumber: "20240510", name: "스팍스" },
{ id: 2, studentNumber: "20200515", name: "이도라" },
],
transportation: {
enum: TransportationEnum.Airplane,
origin: "서울역",
destination: "대전역",
purpose: "해커톤 장소 사전답사",
passengers: [
{ id: 1, studentNumber: "20240510", name: "스팍스" },
{ id: 2, studentNumber: "20200515", name: "이도라" },
],
},

isNonCorporateTransaction: true,
traderName: "이도라",
traderAccountNumber: "123456789",
wasteExplanation: "낭비아님소명",
nonCorporateTransaction: {
traderName: "이도라",
traderAccountNumber: "123456789",
wasteExplanation: "낭비아님소명",
files: [
{
id: "noncorp1",
name: "noncorp1",
url: "https://via.placeholder.com/150",
},
],
},

isFoodExpense: true,
foodExpense: {
explanation: "어떠한 설명",
files: [
{ id: "food1", name: "food1", url: "https://via.placeholder.com/150" },
],
},

isLaborContract: true,
laborContract: {
explanation: "어떠한 설명",
files: [
{
id: "labor1",
name: "labor1",
url: "https://via.placeholder.com/150",
},
],
},

isExternalEventParticipationFee: true,
externalEventParticipationFee: {
explanation: "어떠한 설명",
files: [
{
id: "event1",
name: "event1",
url: "https://via.placeholder.com/150",
},
],
},

isPublication: true,
publication: {
explanation: "어떠한 설명",
files: [
{ id: "pub1", name: "pub1", url: "https://via.placeholder.com/150" },
],
},

isProfitMakingActivity: true,
profitMakingActivity: {
explanation: "어떠한 설명",
files: [
{
id: "profit1",
name: "profit1",
url: "https://via.placeholder.com/150",
},
],
},

isJointExpense: true,
jointExpense: {
explanation: "어떠한 설명",
files: [
{
id: "joint1",
name: "joint1",
url: "https://via.placeholder.com/150",
},
],
},

isEtcExpense: true,
etcExpense: {
explanation: "어떠한 설명",
files: [
{ id: "etc1", name: "etc1", url: "https://via.placeholder.com/150" },
],
},

foodExpenseExplanation: "어떠한 설명",
laborContractExplanation: "어떠한 설명",
externalEventParticipationFeeExplanation: "어떠한 설명",
publicationExplanation: "어떠한 설명",
profitMakingActivityExplanation: "어떠한 설명",
jointExpenseExplanation: "어떠한 설명",
etcExpenseExplanation: "어떠한 설명",
comments: [],

foodExpenseFiles: [
{ id: "food1", link: "https://example.com/food1.pdf", name: "food1.pdf" },
],
laborContractFiles: [
{
id: "labor1",
link: "https://example.com/labor1.pdf",
name: "labor1.pdf",
},
],
externalEventParticipationFeeFiles: [
{
id: "event1",
link: "https://example.com/event1.pdf",
name: "event1.pdf",
},
],
publicationFiles: [
{ id: "pub1", link: "https://example.com/pub1.pdf", name: "pub1.pdf" },
],
profitMakingActivityFiles: [
{
id: "profit1",
link: "https://example.com/profit1.pdf",
name: "profit1.pdf",
},
],
jointExpenseFiles: [
{
id: "joint1",
link: "https://example.com/joint1.pdf",
name: "joint1.pdf",
},
],
etcExpenseFiles: [
{ id: "etc1", link: "https://example.com/etc1.pdf", name: "etc1.pdf" },
],
createdAt: new Date(),
editedAt: new Date(),
};

export default mockFundingDetail;

0 comments on commit 421b99c

Please sign in to comment.