@things-factory/tax-invoice 8.0.64 → 8.0.67
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client/index.ts +10 -0
- package/client/pages/tax-invoice-api/tax-invoice-api-page.ts +6 -1
- package/client/pages/tax-invoice-send/company-list-popup.ts +2 -1
- package/client/pages/tax-invoice-send/tax-invoice-send-page.ts +2 -7
- package/client/pages/tax-invoice-send/tax-invoice-send.ts +92 -20
- package/dist-client/index.d.ts +1 -0
- package/dist-client/index.js +1 -1
- package/dist-client/index.js.map +1 -1
- package/dist-client/pages/tax-invoice-api/tax-invoice-api-page.js +6 -1
- package/dist-client/pages/tax-invoice-api/tax-invoice-api-page.js.map +1 -1
- package/dist-client/pages/tax-invoice-send/company-list-popup.js +7 -3
- package/dist-client/pages/tax-invoice-send/company-list-popup.js.map +1 -1
- package/dist-client/pages/tax-invoice-send/tax-invoice-send-page.js +2 -7
- package/dist-client/pages/tax-invoice-send/tax-invoice-send-page.js.map +1 -1
- package/dist-client/pages/tax-invoice-send/tax-invoice-send.d.ts +1 -0
- package/dist-client/pages/tax-invoice-send/tax-invoice-send.js +119 -48
- package/dist-client/pages/tax-invoice-send/tax-invoice-send.js.map +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/dist-server/service/index.d.ts +2 -2
- package/dist-server/service/tax-invoice/tax-invoice-query.js +1 -1
- package/dist-server/service/tax-invoice/tax-invoice-query.js.map +1 -1
- package/dist-server/service/tax-invoice/tax-invoice.d.ts +1 -0
- package/dist-server/service/tax-invoice/tax-invoice.js +5 -0
- package/dist-server/service/tax-invoice/tax-invoice.js.map +1 -1
- package/dist-server/service/tax-invoice-api/index.d.ts +1 -1
- package/dist-server/service/tax-invoice-api/tax-invoice-api-mutation.d.ts +2 -0
- package/dist-server/service/tax-invoice-api/tax-invoice-api-mutation.js +14 -4
- package/dist-server/service/tax-invoice-api/tax-invoice-api-mutation.js.map +1 -1
- package/dist-server/service/tax-invoice-api/tax-invoice-api-query.d.ts +1 -0
- package/dist-server/service/tax-invoice-api/tax-invoice-api-query.js +11 -0
- package/dist-server/service/tax-invoice-api/tax-invoice-api-query.js.map +1 -1
- package/dist-server/service/tax-invoice-api/tax-invoice-api-type.d.ts +1 -0
- package/dist-server/service/tax-invoice-api/tax-invoice-api-type.js +4 -0
- package/dist-server/service/tax-invoice-api/tax-invoice-api-type.js.map +1 -1
- package/dist-server/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -2
- package/server/service/tax-invoice/tax-invoice-query.ts +1 -1
- package/server/service/tax-invoice/tax-invoice.ts +4 -0
- package/server/service/tax-invoice-api/tax-invoice-api-mutation.ts +30 -7
- package/server/service/tax-invoice-api/tax-invoice-api-query.ts +6 -0
- package/server/service/tax-invoice-api/tax-invoice-api-type.ts +3 -0
- package/things-factory.config.js +8 -2
|
@@ -2,8 +2,8 @@ export * from './tax-audit-result/tax-audit-result';
|
|
|
2
2
|
export * from './tax-invoice-item/tax-invoice-item';
|
|
3
3
|
export * from './tax-invoice/tax-invoice';
|
|
4
4
|
export * from './tax-invoice-company/tax-invoice-company';
|
|
5
|
-
export declare const entities: (typeof import("./tax-
|
|
5
|
+
export declare const entities: (typeof import("./tax-invoice/tax-invoice").TaxInvoice | typeof import("./tax-invoice-item/tax-invoice-item").TaxInvoiceItem | typeof import("./tax-invoice-api/tax-invoice-api").TaxInvoiceApi | typeof import("./tax-audit-result/tax-audit-result").TaxAuditResult | typeof import("./tax-invoice-company/tax-invoice-company").TaxInvoiceCompany)[];
|
|
6
6
|
export declare const subscribers: typeof import("./tax-audit-result/event-subscriber").TaxAuditResultHistoryEntitySubscriber[];
|
|
7
7
|
export declare const schema: {
|
|
8
|
-
resolverClasses: (typeof import("./tax-
|
|
8
|
+
resolverClasses: (typeof import("./tax-invoice-api/tax-invoice-api-mutation").TaxInvoiceApiMutation | typeof import("./tax-invoice-api/tax-invoice-api-query").TaxInvoiceApiQuery | typeof import("./tax-audit-result/tax-audit-result-query").TaxAuditResultQuery | typeof import("./tax-audit-result/tax-audit-result-mutation").TaxAuditResultMutation | typeof import("./tax-invoice/tax-invoice-query").TaxInvoiceQuery | typeof import("./tax-invoice/tax-invoice-mutation").TaxInvoiceMutation | typeof import("./tax-invoice-item/tax-invoice-item-query").TaxInvoiceItemQuery | typeof import("./tax-invoice-item/tax-invoice-item-mutation").TaxInvoiceItemMutation | typeof import("./tax-invoice-company/tax-invoice-company-query").TaxInvoiceCompanyQuery | typeof import("./tax-invoice-company/tax-invoice-company-mutation").TaxInvoiceCompanyMutation)[];
|
|
9
9
|
};
|
|
@@ -21,7 +21,7 @@ let TaxInvoiceQuery = class TaxInvoiceQuery {
|
|
|
21
21
|
domain,
|
|
22
22
|
params,
|
|
23
23
|
repository: await (0, shell_1.getRepository)(tax_invoice_1.TaxInvoice),
|
|
24
|
-
searchables: ['memo']
|
|
24
|
+
searchables: ['memo', 'approvalNo', 'issueNo', 'supplierBusinessName', 'buyerBusinessName']
|
|
25
25
|
});
|
|
26
26
|
const [items, total] = await queryBuilder.getManyAndCount();
|
|
27
27
|
return { items, total };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tax-invoice-query.js","sourceRoot":"","sources":["../../../server/service/tax-invoice/tax-invoice-query.ts"],"names":[],"mappings":";;;;AAAA,+CAAmF;AACnF,iDAAuG;AACvG,yDAAgD;AAChD,+CAA6D;AAC7D,yDAAsE;AACtE,2EAAqE;AAG9D,IAAM,eAAe,GAArB,MAAM,eAAe;IAEpB,AAAN,KAAK,CAAC,UAAU,CAAY,EAAU,EAAS,OAAwB;QACrE,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,OAAO,MAAM,IAAA,qBAAa,EAAC,wBAAU,CAAC,CAAC,OAAO,CAAC;YAC7C,KAAK,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE;SACzC,CAAC,CAAA;IACJ,CAAC;IAGK,AAAN,KAAK,CAAC,WAAW,CACU,MAAiB,EACnC,OAAwB;QAE/B,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,MAAM;YACN,MAAM;YACN,UAAU,EAAE,MAAM,IAAA,qBAAa,EAAC,wBAAU,CAAC;YAC3C,WAAW,EAAE,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"tax-invoice-query.js","sourceRoot":"","sources":["../../../server/service/tax-invoice/tax-invoice-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Query, FieldResolver, Root, Args, Arg, Ctx } from 'type-graphql'\nimport { Domain, getQueryBuilderFromListParams, getRepository, ListParam } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\nimport { Category, Purpose, TaxInvoice } from './tax-invoice'\nimport { TaxInvoiceList, TaxInvoiceSummary } from './tax-invoice-type'\nimport { TaxInvoiceItem } from '../tax-invoice-item/tax-invoice-item'\n\n@Resolver(TaxInvoice)\nexport class TaxInvoiceQuery {\n @Query(returns => TaxInvoice!, { nullable: true, description: 'To fetch a TaxInvoice' })\n async taxInvoice(@Arg('id') id: string, @Ctx() context: ResolverContext): Promise<TaxInvoice> {\n const { domain } = context.state\n\n return await getRepository(TaxInvoice).findOne({\n where: { domain: { id: domain.id }, id }\n })\n }\n\n @Query(returns => TaxInvoiceList, { description: 'To fetch multiple TaxInvoices' })\n async taxInvoices(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<TaxInvoiceList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n domain,\n params,\n repository: await getRepository(TaxInvoice),\n searchables: ['memo', 'approvalNo', 'issueNo', 'supplierBusinessName', 'buyerBusinessName']\n })\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => TaxInvoiceSummary, { description: 'To fetch TaxInvoices Summary' })\n async taxInvoicesSummary(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<TaxInvoiceSummary> {\n const { domain } = context.state\n let category = params.filters.filter(v => v.name === 'category')?.[0]?.value\n\n const queryBuilder = getQueryBuilderFromListParams({\n domain,\n params: { ...params, pagination: {} },\n repository: await getRepository(TaxInvoice)\n })\n\n // 매입/매출이 있으면 그냥 가격으로 표시, 전체 조회면 매출-매입 으로 계산\n if (category) {\n queryBuilder\n .select('COUNT(id)', 'cnt')\n .addSelect('SUM(supply_amount)', 'supply_amount')\n .addSelect('SUM(tax_amount)', 'tax_amount')\n .addSelect('SUM(total_amount)', 'total_amount')\n } else {\n queryBuilder\n .select('COUNT(id)', 'cnt')\n .addSelect(\n `SUM(CASE WHEN category = \\'${Category.EXPORT}\\' THEN supply_amount ELSE -1 * supply_amount END)`,\n 'supply_amount'\n )\n .addSelect(\n `SUM(CASE WHEN category = \\'${Category.EXPORT}\\' THEN tax_amount ELSE -1 * tax_amount END)`,\n 'tax_amount'\n )\n .addSelect(\n `SUM(CASE WHEN category = \\'${Category.EXPORT}\\' THEN total_amount ELSE -1 * total_amount END)`,\n 'total_amount'\n )\n }\n\n const summary = await queryBuilder.getRawOne()\n\n return { summary }\n }\n\n @FieldResolver(type => [TaxInvoiceItem])\n async taxInvoiceItems(@Root() taxInvoice: TaxInvoice): Promise<TaxInvoiceItem[]> {\n return taxInvoice.id && (await getRepository(TaxInvoiceItem).findBy({ taxInvoice: { id: taxInvoice.id } }))\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() taxInvoice: TaxInvoice): Promise<Domain> {\n return taxInvoice.domainId && (await getRepository(Domain).findOneBy({ id: taxInvoice.domainId }))\n }\n\n @FieldResolver(type => User)\n async updater(@Root() taxInvoice: TaxInvoice): Promise<User> {\n return taxInvoice.updaterId && (await getRepository(User).findOneBy({ id: taxInvoice.updaterId }))\n }\n\n @FieldResolver(type => User)\n async creator(@Root() taxInvoice: TaxInvoice): Promise<User> {\n return taxInvoice.creatorId && (await getRepository(User).findOneBy({ id: taxInvoice.creatorId }))\n }\n}\n"]}
|
|
@@ -103,6 +103,11 @@ tslib_1.__decorate([
|
|
|
103
103
|
(0, type_graphql_1.Field)({ nullable: true, description: '메모' }),
|
|
104
104
|
tslib_1.__metadata("design:type", String)
|
|
105
105
|
], TaxInvoice.prototype, "memo", void 0);
|
|
106
|
+
tslib_1.__decorate([
|
|
107
|
+
(0, typeorm_1.Column)({ nullable: true, comment: '요청 제품 (거래명세표) ID' }),
|
|
108
|
+
(0, type_graphql_1.Field)({ nullable: true, description: '연결된 RequestProduct ID' }),
|
|
109
|
+
tslib_1.__metadata("design:type", String)
|
|
110
|
+
], TaxInvoice.prototype, "requestProductId", void 0);
|
|
106
111
|
tslib_1.__decorate([
|
|
107
112
|
(0, typeorm_1.Column)({ nullable: false, comment: '세금계산서 구분 (매출: 10, 매입: 20, NTS: 30)' }),
|
|
108
113
|
(0, type_graphql_1.Field)({ nullable: false, description: '세금계산서 구분 (매출: 10, 매입: 20, NTS: 30)' }),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tax-invoice.js","sourceRoot":"","sources":["../../../server/service/tax-invoice/tax-invoice.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CreateDateColumn,\n UpdateDateColumn,\n DeleteDateColumn,\n Entity,\n Index,\n Column,\n RelationId,\n ManyToOne,\n OneToMany,\n PrimaryGeneratedColumn\n} from 'typeorm'\nimport { ObjectType, Field, ID, registerEnumType } from 'type-graphql'\nimport { encryptTransformer } from '@things-factory/shell'\n\nimport { Domain } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\nimport { TaxInvoiceItem } from '../tax-invoice-item/tax-invoice-item'\n\nexport enum Category {\n EXPORT = '10', // 매출\n IMPORT = '20', // 매입\n NTS = '30' // NTS\n}\n// 세금계산서 종류\nexport enum InvoiceType {\n GENERAL_TAX_INVOICE = '0101', // 일반 전자세금계산서\n ZERO_RATED_TAX_INVOICE = '0102', // 영세율 전자세금계산서\n CONSIGNMENT_TAX_INVOICE = '0103', // 위수탁 전자세금계산서\n IMPORT__RATED_CONSIGNMENT_TAX_INVOICE = '0105', // 영세율 위수탁 전자세금계산서\n REVISED_GENERAL_TAX_INVOICE = '0201', // 수정 일반 전자세금계산서\n REVISED_ZERORATED_TAX_INVOICE = '0202', // 수정 영세율 전자세금계산서\n REVISED_CONSIGNMENT_TAX_INVOICE = '0203', // 수정 위수탁 전자세금계산서\n REVISED_IMPORT_TAX_INVOICE = '0204', // 수정 수입 전자세금계산서\n REVISED_ZERORATED_CONSIGNMENT_TAX_INVOICE = '0205', // 수정 영세율 위수탁 전자세금계산서\n GENERAL_INVOICE = '0301', // 일반 전자계산서\n CONSIGNMENT_INVOICE = '0303', // 위수탁 전자계산서\n IMPORT_INVOICE = '0304', // 수입 전자계산서\n REVISED_GENERAL_INVOICE = '0401', // 수정 일반 전자계산서\n REVISED_CONSIGNMENT_INVOICE = '0403', // 수정 위수탁 전자계산서\n REVISED_IMPORT_INVOICE = '0404' // 수정 수입 전자계산서\n}\n// 세금계산서 영수/청구 구분 지시자\nexport enum Purpose {\n RECEIPT = '01', // 영수\n BILLING = '02' // 청구\n}\n// 세금계산서 수정사유 코드\nexport enum RevisedReason {\n ENTRY_ERROR_CORRECTION = '01', // 기재사항 착오·정정\n SUPPLY_VALUE_CHANGE = '02', // 공급가액 변동\n REVERSAL_ENTRY = '03', // 환입\n CONTRACT_CANCELLATION = '04', // 계약의 해제\n POST_FACTO_DOMESTIC_LC_ISSUANCE = '05', // 내국신용장 사후 개설\n ERROR_BASED_DUPLICATE_ISSUANCE = '06' // 착오에 의한 이중발급\n}\n// 세금계산서 공급받는자 사업자등록번호 구분코드\nexport enum BusinessRegistrationCategory {\n BUSINESS_REGISTRATION_NUMBER = '01', // 사업자등록번호\n RESIDENT_REGISTRATION_NUMBER = '02', // 주민등록번호\n FOREIGNER_REGISTRATION_NUMBER = '03' // 외국인등록번호\n}\n\nregisterEnumType(Category, {\n name: 'Category',\n description: 'category'\n})\nregisterEnumType(InvoiceType, {\n name: 'InvoiceType',\n description: 'invoice type'\n})\nregisterEnumType(Purpose, {\n name: 'Purpose',\n description: 'purpose'\n})\nregisterEnumType(RevisedReason, {\n name: 'RevisedReason',\n description: 'revised reason'\n})\nregisterEnumType(BusinessRegistrationCategory, {\n name: 'BusinessRegistrationCategory',\n description: 'business registration category'\n})\n\n@Entity()\n@Index('ix_tax_invoice_0', (taxInvoice: TaxInvoice) => [taxInvoice.domain, taxInvoice.id, taxInvoice.deletedAt], {\n unique: true\n})\n@Index('ix_tax_invoice_1', (taxInvoice: TaxInvoice) => [taxInvoice.domain, taxInvoice.issueDate])\n@Index('ix_approval_no', (taxInvoice: TaxInvoice) => [taxInvoice.domain, taxInvoice.approvalNo], { unique: true })\n@ObjectType({ description: 'Entity for TaxInvoice' })\nexport class TaxInvoice {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id!: string\n\n @ManyToOne(type => Domain)\n @Field(type => Domain)\n domain?: Domain\n\n @RelationId((taxInvoice: TaxInvoice) => taxInvoice.domain)\n domainId?: string\n\n @OneToMany(type => TaxInvoiceItem, taxInvoiceItem => taxInvoiceItem.taxInvoice)\n @Field(type => [TaxInvoiceItem], { nullable: true })\n taxInvoiceItems?: TaxInvoiceItem[]\n\n @Column({ nullable: true, comment: '메모' })\n @Field({ nullable: true, description: '메모' })\n memo?: string\n\n @Column({ nullable: false, comment: '세금계산서 구분 (매출: 10, 매입: 20, NTS: 30)' })\n @Field({ nullable: false, description: '세금계산서 구분 (매출: 10, 매입: 20, NTS: 30)' })\n category!: Category\n\n @Column({ nullable: true, comment: '연동 번호 (작성 시 번호, 승인번호와 동일)' })\n @Field({ nullable: true, description: '연동 번호 (작성 시 번호, 승인번호와 동일)' })\n issueNo?: string\n\n @Column({ nullable: true, comment: '승인 번호 (24자리)' })\n @Field({ nullable: true, description: '승인 번호 (24자리)' })\n approvalNo?: string\n\n @Column({ nullable: true, default: '', comment: '원 승인 번호 (계산서 수정시 원래의 승인 번호)' })\n @Field({ nullable: true, description: '원 승인 번호 (계산서 수정시 원래의 승인 번호)' })\n originalApprovalNo?: string\n\n @Column({ nullable: true, comment: '세금계산서 작성 일자 (YYYY-MM-DD)' })\n @Field({ nullable: true, description: '세금계산서 작성 일자 (YYYY-MM-DD)' })\n issueDate!: Date\n\n @Column({ nullable: true, comment: '세금계산서 전자 서명 일자 (YYYY-MM-DD)' })\n @Field({ nullable: true, description: '세금계산서 전자 서명 일자 (YYYY-MM-DD)' })\n signatureDate?: Date\n\n @Column({ nullable: false, comment: '세금계산서 종류 코드 (일반, 영세율, 위수탁)' })\n @Field({ nullable: false, description: '세금계산서 종류 코드 (일반, 영세율, 위수탁)' })\n invoiceType!: InvoiceType\n\n @Column({ nullable: false, comment: '세금계산서의 영수/청구 구분 지시자 코드' })\n @Field({ nullable: false, description: '세금계산서의 영수/청구 구분 지시자 코드' })\n purpose!: Purpose\n\n @Column({ nullable: true, comment: '수정 사유 코드' })\n @Field({ nullable: true, description: '수정 사유 코드' })\n revisedReason?: RevisedReason\n\n @Column({ nullable: true, comment: '비고0' })\n @Field({ nullable: true, description: '비고0' })\n remark0?: string\n\n @Column({ nullable: true, comment: '비고1' })\n @Field({ nullable: true, description: '비고1' })\n remark1?: string\n\n @Column({ nullable: true, comment: '비고2' })\n @Field({ nullable: true, description: '비고2' })\n remark2?: string\n\n @Column({ nullable: true, default: false, comment: 'API를 통한 발행 여부' })\n @Field({ nullable: true, description: 'API를 통한 발행 여부' })\n isSentByApi?: boolean\n\n @Column({ nullable: true, comment: '공급자 사업자등록번호 구분 코드' })\n @Field({ nullable: true, description: '공급자 사업자등록번호 구분 코드' })\n supplierBusinessRegistrationCategory?: BusinessRegistrationCategory\n\n @Column({ nullable: false, comment: '공급자 사업자등록번호', transformer: encryptTransformer })\n @Field({ nullable: false, description: '공급자 사업자등록번호' })\n supplierBusinessRegistrationNumber!: string\n\n @Column({ nullable: true, default: '0', comment: '종사업장 식별 코드' })\n @Field({ nullable: true, description: '종사업장 식별 코드' })\n supplierBranchIdentification?: string\n\n @Column({ nullable: false, comment: '공급자 사업자명' })\n @Field({ nullable: false, description: '공급자 사업자명' })\n supplierBusinessName!: string\n\n @Column({ nullable: false, comment: '공급자 대표자명' })\n @Field({ nullable: false, description: '공급자 대표자명' })\n supplierRepresentativeName!: string\n\n @Column({ nullable: true, comment: '공급자 주소', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 주소' })\n supplierAddress?: string\n\n @Column({ nullable: true, comment: '공급자 업태' })\n @Field({ nullable: true, description: '공급자 업태' })\n supplierBusinessType?: string\n\n @Column({ nullable: true, comment: '공급자 업종' })\n @Field({ nullable: true, description: '공급자 업종' })\n supplierIndustryType?: string\n\n @Column({ nullable: true, comment: '공급자 담당 부서' })\n @Field({ nullable: true, description: '공급자 담당 부서' })\n supplierDepartment?: string\n\n @Column({ nullable: true, comment: '공급자 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자명' })\n supplierContactName?: string\n\n @Column({ nullable: true, comment: '공급자 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자 전화번호' })\n supplierContactPhone?: string\n\n @Column({ nullable: true, comment: '공급자 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자 이메일' })\n supplierContactEmail?: string\n\n @Column({ nullable: true, comment: '공급자 담당자 핸드폰 번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자 핸드폰 번호' })\n supplierContactCellPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 사업자등록번호 구분 코드' })\n @Field({ nullable: true, description: '공급받는자 사업자등록번호 구분 코드' })\n buyerBusinessRegistrationCategory?: BusinessRegistrationCategory\n\n @Column({ nullable: false, comment: '공급받는자 사업자등록번호', transformer: encryptTransformer })\n @Field({ nullable: false, description: '공급받는자 사업자등록번호' })\n buyerBusinessRegistrationNumber!: string\n\n @Column({ nullable: true, default: '0', comment: '공급받는자 종사업장 식별 코드' })\n @Field({ nullable: true, description: '공급받는자 종사업장 식별 코드' })\n buyerBranchIdentification?: string\n\n @Column({ nullable: false, comment: '공급받는자 사업자명' })\n @Field({ nullable: false, description: '공급받는자 사업자명' })\n buyerBusinessName!: string\n\n @Column({ nullable: false, comment: '공급받는자 대표자명' })\n @Field({ nullable: false, description: '공급받는자 대표자명' })\n buyerRepresentativeName!: string\n\n @Column({ nullable: true, comment: '공급받는자 주소', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 주소' })\n buyerAddress?: string\n\n @Column({ nullable: true, comment: '공급받는자 업태' })\n @Field({ nullable: true, description: '공급받는자 업태' })\n buyerBusinessType?: string\n\n @Column({ nullable: true, comment: '공급받는자 업종' })\n @Field({ nullable: true, description: '공급받는자 업종' })\n buyerIndustryType?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당부서' })\n @Field({ nullable: true, description: '공급받는자 1st 담당부서' })\n buyer1stDepartment?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자명' })\n buyer1stContactName?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자 전화번호' })\n buyer1stContactPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자 이메일' })\n buyer1stContactEmail?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자 핸드폰번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자 핸드폰번호' })\n buyer1stContactCellPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당부서' })\n @Field({ nullable: true, description: '공급받는자 2nd 담당부서' })\n buyer2ndDepartment?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자명' })\n buyer2ndContactName?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자 전화번호' })\n buyer2ndContactPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자 이메일' })\n buyer2ndContactEmail?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자 핸드폰번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자 핸드폰번호' })\n buyer2ndContactCellPhone?: string\n\n @Column({ nullable: true, comment: '수탁사업자 사업자등록번호 구분 코드' })\n @Field({ nullable: true, description: '수탁사업자 사업자등록번호 구분 코드' })\n agentBusinessRegistrationCategory?: BusinessRegistrationCategory\n\n @Column({ nullable: true, comment: '수탁사업자 사업자등록번호 (nnnnnnnnnn)', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 사업자등록번호 (nnnnnnnnnn)' })\n agentBusinessRegistrationNumber?: string\n\n @Column({ nullable: true, default: '', comment: '수탁사업자 종사업장 식별코드' })\n @Field({ nullable: true, description: '수탁사업자 종사업장 식별코드' })\n agentBranchIdentification?: string\n\n @Column({ nullable: true, comment: '수탁사업자 사업자명' })\n @Field({ nullable: true, description: '수탁사업자 사업자명' })\n agentBusinessName?: string\n\n @Column({ nullable: true, comment: '수탁사업자 대표자명' })\n @Field({ nullable: true, description: '수탁사업자 대표자명' })\n agentRepresentativeName?: string\n\n @Column({ nullable: true, comment: '수탁사업자 주소', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 주소' })\n agentAddress?: string\n\n @Column({ nullable: true, comment: '수탁사업자 업태' })\n @Field({ nullable: true, description: '수탁사업자 업태' })\n agentBusinessType?: string\n\n @Column({ nullable: true, comment: '수탁사업자 업종' })\n @Field({ nullable: true, description: '수탁사업자 업종' })\n agentIndustryType?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당부서' })\n @Field({ nullable: true, description: '수탁사업자 담당부서' })\n agentDepartment?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자명' })\n agentContactName?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자 전화번호' })\n agentContactPhone?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자 이메일' })\n agentContactEmail?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자 핸드폰번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자 핸드폰번호' })\n agentContactCellPhone?: string\n\n @Column({ nullable: true, comment: '결제 금액 - 현금' })\n @Field({ nullable: true, description: '결제 금액 - 현금' })\n paymentAmountCash?: number\n\n @Column({ nullable: true, comment: '결제 금액 - 수표' })\n @Field({ nullable: true, description: '결제 금액 - 수표' })\n paymentAmountCheck?: number\n\n @Column({ nullable: true, comment: '결제 금액 - 어음' })\n @Field({ nullable: true, description: '결제 금액 - 어음' })\n paymentAmountPromissoryNote?: number\n\n @Column({ nullable: true, comment: '결제 금액 - 외상 미수금' })\n @Field({ nullable: true, description: '결제 금액 - 외상 미수금' })\n paymentAmountAccountsReceivable?: number\n\n @Column({ nullable: false, comment: '공급 가액' })\n @Field({ nullable: false, description: '공급 가액' })\n supplyAmount!: number\n\n @Column({ nullable: true, comment: '세액' })\n @Field({ nullable: true, description: '세액' })\n taxAmount?: number\n\n @Column({ nullable: false, comment: '총액 = 공급 가액 + 세액' })\n @Field({ nullable: false, description: '총액 = 공급 가액 + 세액' })\n totalAmount!: number\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @DeleteDateColumn()\n @Field({ nullable: true })\n deletedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((taxInvoice: TaxInvoice) => taxInvoice.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((taxInvoice: TaxInvoice) => taxInvoice.updater)\n updaterId?: string\n}\n"]}
|
|
1
|
+
{"version":3,"file":"tax-invoice.js","sourceRoot":"","sources":["../../../server/service/tax-invoice/tax-invoice.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n CreateDateColumn,\n UpdateDateColumn,\n DeleteDateColumn,\n Entity,\n Index,\n Column,\n RelationId,\n ManyToOne,\n OneToMany,\n PrimaryGeneratedColumn\n} from 'typeorm'\nimport { ObjectType, Field, ID, registerEnumType } from 'type-graphql'\nimport { encryptTransformer } from '@things-factory/shell'\n\nimport { Domain } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\nimport { TaxInvoiceItem } from '../tax-invoice-item/tax-invoice-item'\n\nexport enum Category {\n EXPORT = '10', // 매출\n IMPORT = '20', // 매입\n NTS = '30' // NTS\n}\n// 세금계산서 종류\nexport enum InvoiceType {\n GENERAL_TAX_INVOICE = '0101', // 일반 전자세금계산서\n ZERO_RATED_TAX_INVOICE = '0102', // 영세율 전자세금계산서\n CONSIGNMENT_TAX_INVOICE = '0103', // 위수탁 전자세금계산서\n IMPORT__RATED_CONSIGNMENT_TAX_INVOICE = '0105', // 영세율 위수탁 전자세금계산서\n REVISED_GENERAL_TAX_INVOICE = '0201', // 수정 일반 전자세금계산서\n REVISED_ZERORATED_TAX_INVOICE = '0202', // 수정 영세율 전자세금계산서\n REVISED_CONSIGNMENT_TAX_INVOICE = '0203', // 수정 위수탁 전자세금계산서\n REVISED_IMPORT_TAX_INVOICE = '0204', // 수정 수입 전자세금계산서\n REVISED_ZERORATED_CONSIGNMENT_TAX_INVOICE = '0205', // 수정 영세율 위수탁 전자세금계산서\n GENERAL_INVOICE = '0301', // 일반 전자계산서\n CONSIGNMENT_INVOICE = '0303', // 위수탁 전자계산서\n IMPORT_INVOICE = '0304', // 수입 전자계산서\n REVISED_GENERAL_INVOICE = '0401', // 수정 일반 전자계산서\n REVISED_CONSIGNMENT_INVOICE = '0403', // 수정 위수탁 전자계산서\n REVISED_IMPORT_INVOICE = '0404' // 수정 수입 전자계산서\n}\n// 세금계산서 영수/청구 구분 지시자\nexport enum Purpose {\n RECEIPT = '01', // 영수\n BILLING = '02' // 청구\n}\n// 세금계산서 수정사유 코드\nexport enum RevisedReason {\n ENTRY_ERROR_CORRECTION = '01', // 기재사항 착오·정정\n SUPPLY_VALUE_CHANGE = '02', // 공급가액 변동\n REVERSAL_ENTRY = '03', // 환입\n CONTRACT_CANCELLATION = '04', // 계약의 해제\n POST_FACTO_DOMESTIC_LC_ISSUANCE = '05', // 내국신용장 사후 개설\n ERROR_BASED_DUPLICATE_ISSUANCE = '06' // 착오에 의한 이중발급\n}\n// 세금계산서 공급받는자 사업자등록번호 구분코드\nexport enum BusinessRegistrationCategory {\n BUSINESS_REGISTRATION_NUMBER = '01', // 사업자등록번호\n RESIDENT_REGISTRATION_NUMBER = '02', // 주민등록번호\n FOREIGNER_REGISTRATION_NUMBER = '03' // 외국인등록번호\n}\n\nregisterEnumType(Category, {\n name: 'Category',\n description: 'category'\n})\nregisterEnumType(InvoiceType, {\n name: 'InvoiceType',\n description: 'invoice type'\n})\nregisterEnumType(Purpose, {\n name: 'Purpose',\n description: 'purpose'\n})\nregisterEnumType(RevisedReason, {\n name: 'RevisedReason',\n description: 'revised reason'\n})\nregisterEnumType(BusinessRegistrationCategory, {\n name: 'BusinessRegistrationCategory',\n description: 'business registration category'\n})\n\n@Entity()\n@Index('ix_tax_invoice_0', (taxInvoice: TaxInvoice) => [taxInvoice.domain, taxInvoice.id, taxInvoice.deletedAt], {\n unique: true\n})\n@Index('ix_tax_invoice_1', (taxInvoice: TaxInvoice) => [taxInvoice.domain, taxInvoice.issueDate])\n@Index('ix_approval_no', (taxInvoice: TaxInvoice) => [taxInvoice.domain, taxInvoice.approvalNo], { unique: true })\n@ObjectType({ description: 'Entity for TaxInvoice' })\nexport class TaxInvoice {\n @PrimaryGeneratedColumn('uuid')\n @Field(type => ID)\n readonly id!: string\n\n @ManyToOne(type => Domain)\n @Field(type => Domain)\n domain?: Domain\n\n @RelationId((taxInvoice: TaxInvoice) => taxInvoice.domain)\n domainId?: string\n\n @OneToMany(type => TaxInvoiceItem, taxInvoiceItem => taxInvoiceItem.taxInvoice)\n @Field(type => [TaxInvoiceItem], { nullable: true })\n taxInvoiceItems?: TaxInvoiceItem[]\n\n @Column({ nullable: true, comment: '메모' })\n @Field({ nullable: true, description: '메모' })\n memo?: string\n\n @Column({ nullable: true, comment: '요청 제품 (거래명세표) ID' })\n @Field({ nullable: true, description: '연결된 RequestProduct ID' })\n requestProductId?: string\n\n @Column({ nullable: false, comment: '세금계산서 구분 (매출: 10, 매입: 20, NTS: 30)' })\n @Field({ nullable: false, description: '세금계산서 구분 (매출: 10, 매입: 20, NTS: 30)' })\n category!: Category\n\n @Column({ nullable: true, comment: '연동 번호 (작성 시 번호, 승인번호와 동일)' })\n @Field({ nullable: true, description: '연동 번호 (작성 시 번호, 승인번호와 동일)' })\n issueNo?: string\n\n @Column({ nullable: true, comment: '승인 번호 (24자리)' })\n @Field({ nullable: true, description: '승인 번호 (24자리)' })\n approvalNo?: string\n\n @Column({ nullable: true, default: '', comment: '원 승인 번호 (계산서 수정시 원래의 승인 번호)' })\n @Field({ nullable: true, description: '원 승인 번호 (계산서 수정시 원래의 승인 번호)' })\n originalApprovalNo?: string\n\n @Column({ nullable: true, comment: '세금계산서 작성 일자 (YYYY-MM-DD)' })\n @Field({ nullable: true, description: '세금계산서 작성 일자 (YYYY-MM-DD)' })\n issueDate!: Date\n\n @Column({ nullable: true, comment: '세금계산서 전자 서명 일자 (YYYY-MM-DD)' })\n @Field({ nullable: true, description: '세금계산서 전자 서명 일자 (YYYY-MM-DD)' })\n signatureDate?: Date\n\n @Column({ nullable: false, comment: '세금계산서 종류 코드 (일반, 영세율, 위수탁)' })\n @Field({ nullable: false, description: '세금계산서 종류 코드 (일반, 영세율, 위수탁)' })\n invoiceType!: InvoiceType\n\n @Column({ nullable: false, comment: '세금계산서의 영수/청구 구분 지시자 코드' })\n @Field({ nullable: false, description: '세금계산서의 영수/청구 구분 지시자 코드' })\n purpose!: Purpose\n\n @Column({ nullable: true, comment: '수정 사유 코드' })\n @Field({ nullable: true, description: '수정 사유 코드' })\n revisedReason?: RevisedReason\n\n @Column({ nullable: true, comment: '비고0' })\n @Field({ nullable: true, description: '비고0' })\n remark0?: string\n\n @Column({ nullable: true, comment: '비고1' })\n @Field({ nullable: true, description: '비고1' })\n remark1?: string\n\n @Column({ nullable: true, comment: '비고2' })\n @Field({ nullable: true, description: '비고2' })\n remark2?: string\n\n @Column({ nullable: true, default: false, comment: 'API를 통한 발행 여부' })\n @Field({ nullable: true, description: 'API를 통한 발행 여부' })\n isSentByApi?: boolean\n\n @Column({ nullable: true, comment: '공급자 사업자등록번호 구분 코드' })\n @Field({ nullable: true, description: '공급자 사업자등록번호 구분 코드' })\n supplierBusinessRegistrationCategory?: BusinessRegistrationCategory\n\n @Column({ nullable: false, comment: '공급자 사업자등록번호', transformer: encryptTransformer })\n @Field({ nullable: false, description: '공급자 사업자등록번호' })\n supplierBusinessRegistrationNumber!: string\n\n @Column({ nullable: true, default: '0', comment: '종사업장 식별 코드' })\n @Field({ nullable: true, description: '종사업장 식별 코드' })\n supplierBranchIdentification?: string\n\n @Column({ nullable: false, comment: '공급자 사업자명' })\n @Field({ nullable: false, description: '공급자 사업자명' })\n supplierBusinessName!: string\n\n @Column({ nullable: false, comment: '공급자 대표자명' })\n @Field({ nullable: false, description: '공급자 대표자명' })\n supplierRepresentativeName!: string\n\n @Column({ nullable: true, comment: '공급자 주소', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 주소' })\n supplierAddress?: string\n\n @Column({ nullable: true, comment: '공급자 업태' })\n @Field({ nullable: true, description: '공급자 업태' })\n supplierBusinessType?: string\n\n @Column({ nullable: true, comment: '공급자 업종' })\n @Field({ nullable: true, description: '공급자 업종' })\n supplierIndustryType?: string\n\n @Column({ nullable: true, comment: '공급자 담당 부서' })\n @Field({ nullable: true, description: '공급자 담당 부서' })\n supplierDepartment?: string\n\n @Column({ nullable: true, comment: '공급자 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자명' })\n supplierContactName?: string\n\n @Column({ nullable: true, comment: '공급자 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자 전화번호' })\n supplierContactPhone?: string\n\n @Column({ nullable: true, comment: '공급자 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자 이메일' })\n supplierContactEmail?: string\n\n @Column({ nullable: true, comment: '공급자 담당자 핸드폰 번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급자 담당자 핸드폰 번호' })\n supplierContactCellPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 사업자등록번호 구분 코드' })\n @Field({ nullable: true, description: '공급받는자 사업자등록번호 구분 코드' })\n buyerBusinessRegistrationCategory?: BusinessRegistrationCategory\n\n @Column({ nullable: false, comment: '공급받는자 사업자등록번호', transformer: encryptTransformer })\n @Field({ nullable: false, description: '공급받는자 사업자등록번호' })\n buyerBusinessRegistrationNumber!: string\n\n @Column({ nullable: true, default: '0', comment: '공급받는자 종사업장 식별 코드' })\n @Field({ nullable: true, description: '공급받는자 종사업장 식별 코드' })\n buyerBranchIdentification?: string\n\n @Column({ nullable: false, comment: '공급받는자 사업자명' })\n @Field({ nullable: false, description: '공급받는자 사업자명' })\n buyerBusinessName!: string\n\n @Column({ nullable: false, comment: '공급받는자 대표자명' })\n @Field({ nullable: false, description: '공급받는자 대표자명' })\n buyerRepresentativeName!: string\n\n @Column({ nullable: true, comment: '공급받는자 주소', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 주소' })\n buyerAddress?: string\n\n @Column({ nullable: true, comment: '공급받는자 업태' })\n @Field({ nullable: true, description: '공급받는자 업태' })\n buyerBusinessType?: string\n\n @Column({ nullable: true, comment: '공급받는자 업종' })\n @Field({ nullable: true, description: '공급받는자 업종' })\n buyerIndustryType?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당부서' })\n @Field({ nullable: true, description: '공급받는자 1st 담당부서' })\n buyer1stDepartment?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자명' })\n buyer1stContactName?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자 전화번호' })\n buyer1stContactPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자 이메일' })\n buyer1stContactEmail?: string\n\n @Column({ nullable: true, comment: '공급받는자 1st 담당자 핸드폰번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 1st 담당자 핸드폰번호' })\n buyer1stContactCellPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당부서' })\n @Field({ nullable: true, description: '공급받는자 2nd 담당부서' })\n buyer2ndDepartment?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자명' })\n buyer2ndContactName?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자 전화번호' })\n buyer2ndContactPhone?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자 이메일' })\n buyer2ndContactEmail?: string\n\n @Column({ nullable: true, comment: '공급받는자 2nd 담당자 핸드폰번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '공급받는자 2nd 담당자 핸드폰번호' })\n buyer2ndContactCellPhone?: string\n\n @Column({ nullable: true, comment: '수탁사업자 사업자등록번호 구분 코드' })\n @Field({ nullable: true, description: '수탁사업자 사업자등록번호 구분 코드' })\n agentBusinessRegistrationCategory?: BusinessRegistrationCategory\n\n @Column({ nullable: true, comment: '수탁사업자 사업자등록번호 (nnnnnnnnnn)', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 사업자등록번호 (nnnnnnnnnn)' })\n agentBusinessRegistrationNumber?: string\n\n @Column({ nullable: true, default: '', comment: '수탁사업자 종사업장 식별코드' })\n @Field({ nullable: true, description: '수탁사업자 종사업장 식별코드' })\n agentBranchIdentification?: string\n\n @Column({ nullable: true, comment: '수탁사업자 사업자명' })\n @Field({ nullable: true, description: '수탁사업자 사업자명' })\n agentBusinessName?: string\n\n @Column({ nullable: true, comment: '수탁사업자 대표자명' })\n @Field({ nullable: true, description: '수탁사업자 대표자명' })\n agentRepresentativeName?: string\n\n @Column({ nullable: true, comment: '수탁사업자 주소', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 주소' })\n agentAddress?: string\n\n @Column({ nullable: true, comment: '수탁사업자 업태' })\n @Field({ nullable: true, description: '수탁사업자 업태' })\n agentBusinessType?: string\n\n @Column({ nullable: true, comment: '수탁사업자 업종' })\n @Field({ nullable: true, description: '수탁사업자 업종' })\n agentIndustryType?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당부서' })\n @Field({ nullable: true, description: '수탁사업자 담당부서' })\n agentDepartment?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자명', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자명' })\n agentContactName?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자 전화번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자 전화번호' })\n agentContactPhone?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자 이메일', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자 이메일' })\n agentContactEmail?: string\n\n @Column({ nullable: true, comment: '수탁사업자 담당자 핸드폰번호', transformer: encryptTransformer })\n @Field({ nullable: true, description: '수탁사업자 담당자 핸드폰번호' })\n agentContactCellPhone?: string\n\n @Column({ nullable: true, comment: '결제 금액 - 현금' })\n @Field({ nullable: true, description: '결제 금액 - 현금' })\n paymentAmountCash?: number\n\n @Column({ nullable: true, comment: '결제 금액 - 수표' })\n @Field({ nullable: true, description: '결제 금액 - 수표' })\n paymentAmountCheck?: number\n\n @Column({ nullable: true, comment: '결제 금액 - 어음' })\n @Field({ nullable: true, description: '결제 금액 - 어음' })\n paymentAmountPromissoryNote?: number\n\n @Column({ nullable: true, comment: '결제 금액 - 외상 미수금' })\n @Field({ nullable: true, description: '결제 금액 - 외상 미수금' })\n paymentAmountAccountsReceivable?: number\n\n @Column({ nullable: false, comment: '공급 가액' })\n @Field({ nullable: false, description: '공급 가액' })\n supplyAmount!: number\n\n @Column({ nullable: true, comment: '세액' })\n @Field({ nullable: true, description: '세액' })\n taxAmount?: number\n\n @Column({ nullable: false, comment: '총액 = 공급 가액 + 세액' })\n @Field({ nullable: false, description: '총액 = 공급 가액 + 세액' })\n totalAmount!: number\n\n @CreateDateColumn()\n @Field({ nullable: true })\n createdAt?: Date\n\n @UpdateDateColumn()\n @Field({ nullable: true })\n updatedAt?: Date\n\n @DeleteDateColumn()\n @Field({ nullable: true })\n deletedAt?: Date\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n creator?: User\n\n @RelationId((taxInvoice: TaxInvoice) => taxInvoice.creator)\n creatorId?: string\n\n @ManyToOne(type => User, { nullable: true })\n @Field(type => User, { nullable: true })\n updater?: User\n\n @RelationId((taxInvoice: TaxInvoice) => taxInvoice.updater)\n updaterId?: string\n}\n"]}
|
|
@@ -2,4 +2,4 @@ import { TaxInvoiceApi } from './tax-invoice-api';
|
|
|
2
2
|
import { TaxInvoiceApiQuery } from './tax-invoice-api-query';
|
|
3
3
|
import { TaxInvoiceApiMutation } from './tax-invoice-api-mutation';
|
|
4
4
|
export declare const entities: (typeof TaxInvoiceApi)[];
|
|
5
|
-
export declare const resolvers: (typeof
|
|
5
|
+
export declare const resolvers: (typeof TaxInvoiceApiMutation | typeof TaxInvoiceApiQuery)[];
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import { TaxInvoiceApi } from './tax-invoice-api';
|
|
2
2
|
import { TaxInvoiceApiPatch, TaxInvoiceSend } from './tax-invoice-api-type';
|
|
3
|
+
import { TaxInvoice } from '../tax-invoice/tax-invoice';
|
|
3
4
|
export declare class TaxInvoiceApiMutation {
|
|
4
5
|
updateMultipleTaxInvoiceApi(patches: TaxInvoiceApiPatch[], context: ResolverContext): Promise<TaxInvoiceApi[]>;
|
|
5
6
|
deleteTaxInvoiceApis(ids: string[], context: ResolverContext): Promise<boolean>;
|
|
6
7
|
sendTaxInvoicesByApi(taxInvoiceSendList: TaxInvoiceSend[], context: ResolverContext): Promise<boolean>;
|
|
8
|
+
issueTaxInvoicesByApi(taxInvoiceSendList: TaxInvoiceSend[], context: ResolverContext): Promise<TaxInvoice[]>;
|
|
7
9
|
private _parseTaxInvoiceSendForApi;
|
|
8
10
|
}
|
|
@@ -43,13 +43,18 @@ let TaxInvoiceApiMutation = class TaxInvoiceApiMutation {
|
|
|
43
43
|
return true;
|
|
44
44
|
}
|
|
45
45
|
async sendTaxInvoicesByApi(taxInvoiceSendList, context) {
|
|
46
|
+
await this.issueTaxInvoicesByApi(taxInvoiceSendList, context);
|
|
47
|
+
return true;
|
|
48
|
+
}
|
|
49
|
+
async issueTaxInvoicesByApi(taxInvoiceSendList, context) {
|
|
46
50
|
var _a;
|
|
47
|
-
if (taxInvoiceSendList
|
|
51
|
+
if (!(taxInvoiceSendList === null || taxInvoiceSendList === void 0 ? void 0 : taxInvoiceSendList.length))
|
|
48
52
|
throw new Error('tax invoice send exception: no list');
|
|
49
53
|
const { domain, user, tx } = context.state;
|
|
50
54
|
const taxInvoiceRepo = tx.getRepository(tax_invoice_1.TaxInvoice);
|
|
51
55
|
const taxInvoiceItemRepo = tx.getRepository(tax_invoice_item_1.TaxInvoiceItem);
|
|
52
56
|
const taxInvoiceApiRepo = tx.getRepository(tax_invoice_api_1.TaxInvoiceApi);
|
|
57
|
+
const issuedTaxInvoices = [];
|
|
53
58
|
const apiInfo = await taxInvoiceApiRepo.findOneBy({ isDefault: true });
|
|
54
59
|
const businessRegistrationNumber = apiInfo.businessRegistrationNumber;
|
|
55
60
|
const { aid = '', bearer = '', customer_no = '' } = apiInfo === null || apiInfo === void 0 ? void 0 : apiInfo.attributes;
|
|
@@ -69,6 +74,7 @@ let TaxInvoiceApiMutation = class TaxInvoiceApiMutation {
|
|
|
69
74
|
const { taxInvoice, taxInvoiceItems } = (0, tax_invoice_util_1.parseTaxInvoiceByUnipostFormat)(item === null || item === void 0 ? void 0 : item.tAliceEntry, (_a = item === null || item === void 0 ? void 0 : item.tAliceEntry) === null || _a === void 0 ? void 0 : _a.tAliceItemList, tax_invoice_1.Category.EXPORT);
|
|
70
75
|
// 세금계산서 저장
|
|
71
76
|
const newTaxInvoice = await taxInvoiceRepo.save(Object.assign(Object.assign({}, taxInvoice), { domain, creator: user, updater: user }));
|
|
77
|
+
issuedTaxInvoices.push(newTaxInvoice);
|
|
72
78
|
// 아이템 저장
|
|
73
79
|
for (const item of taxInvoiceItems) {
|
|
74
80
|
await taxInvoiceItemRepo.save(Object.assign(Object.assign({}, item), { taxInvoice: newTaxInvoice, domain, creator: user }));
|
|
@@ -83,7 +89,7 @@ let TaxInvoiceApiMutation = class TaxInvoiceApiMutation {
|
|
|
83
89
|
if (failCount > 0) {
|
|
84
90
|
throw new Error(failCount + '개의 계산서 등록에 실패하였습니다.\n' + failMessage.join('\n'));
|
|
85
91
|
}
|
|
86
|
-
return
|
|
92
|
+
return issuedTaxInvoices;
|
|
87
93
|
}
|
|
88
94
|
// 유니스포트에 받을수 있는 포맷으로 데이터 파싱
|
|
89
95
|
_parseTaxInvoiceSendForApi(taxInvoiceSend, aid, customer_no) {
|
|
@@ -101,7 +107,8 @@ let TaxInvoiceApiMutation = class TaxInvoiceApiMutation {
|
|
|
101
107
|
throw new Error('tax invoice send exception: no essential value');
|
|
102
108
|
}
|
|
103
109
|
// 공급자 사업자 등록번호가 전부 숫자이며 10자리 인지 체크
|
|
104
|
-
if (isNaN(taxInvoice.supplierBusinessRegistrationNumber) ||
|
|
110
|
+
if (isNaN(taxInvoice.supplierBusinessRegistrationNumber) ||
|
|
111
|
+
taxInvoice.supplierBusinessRegistrationNumber.length !== 10) {
|
|
105
112
|
throw new Error('tax invoice send exception: Supplier Business Registration Number is wrong');
|
|
106
113
|
}
|
|
107
114
|
// 공급받는자 사업자 등록번호가 전부 숫자이며 10자리 인지 체크
|
|
@@ -113,7 +120,10 @@ let TaxInvoiceApiMutation = class TaxInvoiceApiMutation {
|
|
|
113
120
|
throw new Error('tax invoice send exception: issueDate error');
|
|
114
121
|
}
|
|
115
122
|
// 현금, 수표, 어음, 외상미수금이 있을시 총 합계금액과 금액 동일 체크
|
|
116
|
-
const paymentAmount = taxInvoice.paymentAmountCash +
|
|
123
|
+
const paymentAmount = taxInvoice.paymentAmountCash +
|
|
124
|
+
taxInvoice.paymentAmountCheck +
|
|
125
|
+
taxInvoice.paymentAmountPromissoryNote +
|
|
126
|
+
taxInvoice.paymentAmountAccountsReceivable;
|
|
117
127
|
if (paymentAmount > 0 && paymentAmount !== taxInvoice.totalAmount) {
|
|
118
128
|
throw new Error('tax invoice send exception: summary is not same');
|
|
119
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tax-invoice-api-mutation.js","sourceRoot":"","sources":["../../../server/service/tax-invoice-api/tax-invoice-api-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { TaxInvoiceApi } from './tax-invoice-api'\nimport { TaxInvoiceApiPatch, TaxInvoiceSend } from './tax-invoice-api-type'\nimport { TaxInvoiceItem } from '../tax-invoice-item/tax-invoice-item'\nimport { Category, InvoiceType, TaxInvoice } from '../tax-invoice/tax-invoice'\nimport { sendTaxInvoiceByUniposApi } from '../unipost-api/tax-invoice-send'\nimport { parseTaxInvoiceByUnipostFormat } from '../tax-invoice/tax-invoice-util'\n\n@Resolver(TaxInvoiceApi)\nexport class TaxInvoiceApiMutation {\n @Directive('@transaction')\n @Mutation(returns => [TaxInvoiceApi], { description: 'To modify Tax Invoice Api information' })\n async updateMultipleTaxInvoiceApi(\n @Arg('patches', type => [TaxInvoiceApiPatch]) patches: TaxInvoiceApiPatch[],\n @Ctx() context: ResolverContext\n ): Promise<TaxInvoiceApi[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const taxInvoiceApiRepo = tx.getRepository(TaxInvoiceApi)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await taxInvoiceApiRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const updateRecord = _updateRecords[i]\n const taxAuditResult = await taxInvoiceApiRepo.findOneBy({ id: updateRecord.id })\n\n const result = await taxInvoiceApiRepo.save({\n ...taxAuditResult,\n ...updateRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple Tax Invoice Api' })\n async deleteTaxInvoiceApis(@Arg('ids', type => [String]) ids: string[], @Ctx() context: ResolverContext): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(TaxInvoiceApi).delete({\n domain: { id: domain.id },\n id: In(ids)\n })\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To Send Tax Invoices By Api' })\n async sendTaxInvoicesByApi(\n @Arg('taxInvoiceSendList', type => [TaxInvoiceSend]) taxInvoiceSendList: TaxInvoiceSend[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n if (taxInvoiceSendList.length === 0) throw new Error('tax invoice send exception: no list')\n\n const { domain, user, tx } = context.state\n const taxInvoiceRepo = tx.getRepository(TaxInvoice)\n const taxInvoiceItemRepo = tx.getRepository(TaxInvoiceItem)\n const taxInvoiceApiRepo = tx.getRepository(TaxInvoiceApi)\n\n const apiInfo = await taxInvoiceApiRepo.findOneBy({ isDefault: true })\n const businessRegistrationNumber = apiInfo.businessRegistrationNumber\n const { aid = '', bearer = '', customer_no = '' } = apiInfo?.attributes\n let failCount = 0\n let failMessage = []\n\n // 1. 밸리데이션 및 데이터 파싱\n let newTaxInvoiceSendList = taxInvoiceSendList.map(taxInvoiceSend => this._parseTaxInvoiceSendForApi(taxInvoiceSend, aid, customer_no))\n\n // 2. 세금계산서 발행 API 호출\n const apiResult = await sendTaxInvoiceByUniposApi(businessRegistrationNumber, aid, bearer, newTaxInvoiceSendList)\n if (apiResult === false) {\n // TODO 로그 찍기\n throw new Error('tax invoice send exception: api error')\n }\n\n // 3. 성공하면 세금계산서 DB에 저장\n for (let item of apiResult) {\n if (item?.success) {\n const { taxInvoice, taxInvoiceItems } = parseTaxInvoiceByUnipostFormat(item?.tAliceEntry, item?.tAliceEntry?.tAliceItemList, Category.EXPORT)\n\n // 세금계산서 저장\n const newTaxInvoice = await taxInvoiceRepo.save({\n ...taxInvoice,\n domain,\n creator: user,\n updater: user\n })\n\n // 아이템 저장\n for (const item of taxInvoiceItems) {\n await taxInvoiceItemRepo.save({ ...item, taxInvoice: newTaxInvoice, domain, creator: user })\n }\n } else {\n failCount++\n failMessage.push(`${item.inv_seq}: ${item.message}`)\n }\n }\n\n // 실패가 1개라도 있으면 에러\n if (failCount > 0) {\n throw new Error(failCount + '개의 계산서 등록에 실패하였습니다.\\n' + failMessage.join('\\n'))\n }\n\n return true\n }\n\n // 유니스포트에 받을수 있는 포맷으로 데이터 파싱\n private _parseTaxInvoiceSendForApi(taxInvoiceSend, aid, customer_no) {\n const { taxInvoice, taxInvoiceItems } = taxInvoiceSend\n let newTaxInvoiceItems: any = []\n const today = new Intl.DateTimeFormat('fr-CA', { timeZone: 'Asia/Seoul' }).format(new Date()) // YYYY-MM-DD\n\n // 필수값 체크\n if (\n !taxInvoice.supplierBusinessRegistrationNumber ||\n !taxInvoice.supplierBusinessName ||\n !taxInvoice.supplierRepresentativeName ||\n !taxInvoice.buyerBusinessRegistrationNumber ||\n !taxInvoice.buyerBusinessName ||\n !taxInvoice.buyerRepresentativeName ||\n !taxInvoice.issueDate\n ) {\n throw new Error('tax invoice send exception: no essential value')\n }\n\n // 공급자 사업자 등록번호가 전부 숫자이며 10자리 인지 체크\n if (isNaN(taxInvoice.supplierBusinessRegistrationNumber) || taxInvoice.supplierBusinessRegistrationNumber.length !== 10) {\n throw new Error('tax invoice send exception: Supplier Business Registration Number is wrong')\n }\n\n // 공급받는자 사업자 등록번호가 전부 숫자이며 10자리 인지 체크\n if (isNaN(taxInvoice.buyerBusinessRegistrationNumber) || taxInvoice.buyerBusinessRegistrationNumber.length !== 10) {\n throw new Error('tax invoice send exception: Buyer Business Registration Number is wrong')\n }\n\n // 작성일자가 오늘 날짜를 넘어가면 에러\n if (taxInvoice.issueDate > today) {\n throw new Error('tax invoice send exception: issueDate error')\n }\n\n // 현금, 수표, 어음, 외상미수금이 있을시 총 합계금액과 금액 동일 체크\n const paymentAmount: number =\n taxInvoice.paymentAmountCash + taxInvoice.paymentAmountCheck + taxInvoice.paymentAmountPromissoryNote + taxInvoice.paymentAmountAccountsReceivable\n if (paymentAmount > 0 && paymentAmount !== taxInvoice.totalAmount) {\n throw new Error('tax invoice send exception: summary is not same')\n }\n\n // 영세업자인데 세금이 있으면 에러\n if (taxInvoice.invoiceType === InvoiceType.ZERO_RATED_TAX_INVOICE && taxInvoice.taxAmount > 0) {\n throw new Error('tax invoice send exception: tax price is exist')\n }\n\n for (let item of taxInvoiceItems) {\n // 아이템 필수값 체크\n if (!item.supplyDate || !item.itemName || !item.quantity || !item.unitPrice) {\n throw new Error('tax invoice send exception: no item essential value')\n }\n\n // 아이템의 일자가 작성일자보다 크면 에러\n if (taxInvoice.issueDate < item.supplyDate) {\n throw new Error('tax invoice send exception: item supplyDate is bigger than issueDate')\n }\n\n // 영세업자인데 아이템 세금이 있으면 에러\n if (taxInvoice.invoiceType === InvoiceType.ZERO_RATED_TAX_INVOICE && item.taxPrice > 0) {\n throw new Error('tax invoice send exception: item tax price is exist')\n }\n\n newTaxInvoiceItems.push({\n tii_seqnumeric: item.sequence,\n tii_purchaseexpirydatetime: item.supplyDate.replace(/-/g, ''),\n tii_nametext: item.itemName,\n tii_informationtext: item.specification,\n tii_chargeableunitquantity: item.quantity,\n tii_unitprice_unitamount: item.unitPrice,\n tii_invoiceamount: item.supplyPrice,\n tii_totaltax_calcamount: item.taxPrice,\n tii_descriptiontext: item.remark\n })\n }\n\n return {\n aid: aid,\n inv_seq: today.replace(/-/g, '') + customer_no,\n exd_refdoc_id: null,\n tid_issuedatetime: taxInvoice.issueDate.replace(/-/g, ''),\n tid_typecode: taxInvoice.invoiceType,\n tid_purposecode: taxInvoice.purpose,\n tid_amendcode: taxInvoice.revisedReason,\n tid_originalissueid: null,\n tid_desc0: taxInvoice.remark0,\n tid_desc1: null,\n tid_desc2: null,\n tit_alice_specorg_biztypecode: taxInvoice.supplierBusinessRegistrationCategory,\n tit_alice_id: taxInvoice.supplierBusinessRegistrationNumber,\n tit_alice_specorg_taxregid: taxInvoice.supplierBranchIdentification,\n tit_alice_name: taxInvoice.supplierBusinessName,\n tit_alice_specperson_name: taxInvoice.supplierRepresentativeName,\n tit_alice_specaddr_lineone: taxInvoice.supplierAddress,\n tit_alice_typecode: taxInvoice.supplierBusinessType,\n tit_alice_classcode: taxInvoice.supplierIndustryType,\n tit_alice_defcont_deptname: taxInvoice.supplierDepartment,\n tit_alice_defcont_personname: taxInvoice.supplierContactName,\n tit_alice_defcont_telcomm: taxInvoice.supplierContactPhone,\n tit_alice_defcont_uricomm: taxInvoice.supplierContactEmail,\n tit_alice_defcont_cellphone: taxInvoice.supplierContactCellPhone,\n tit_bob_specorg_biztypecode: taxInvoice.buyerBusinessRegistrationCategory,\n tit_bob_id: taxInvoice.buyerBusinessRegistrationNumber,\n tit_bob_specorg_taxregid: taxInvoice.buyerBranchIdentification,\n tit_bob_name: taxInvoice.buyerBusinessName,\n tit_bob_specperson_name: taxInvoice.buyerRepresentativeName,\n tit_bob_specaddr_lineone: taxInvoice.buyerAddress,\n tit_bob_typecode: taxInvoice.buyerBusinessType,\n tit_bob_classcode: taxInvoice.buyerIndustryType,\n tit_bob_1stdefcont_deptname: taxInvoice.buyer1stDepartment,\n tit_bob_1stdefcont_personname: taxInvoice.buyer1stContactName,\n tit_bob_1stdefcont_telcomm: taxInvoice.buyer1stContactPhone,\n tit_bob_1stdefcont_uricomm: taxInvoice.buyer1stContactEmail,\n tit_bob_1stdefcont_cellphone: taxInvoice.buyer1stContactCellPhone,\n tit_bob_2nddefcont_deptname: taxInvoice.buyer2ndDepartment,\n tit_bob_2nddefcont_personname: taxInvoice.buyer2ndContactName,\n tit_bob_2nddefcont_telcomm: taxInvoice.buyer2ndContactPhone,\n tit_bob_2nddefcont_uricomm: taxInvoice.buyer2ndContactEmail,\n tit_bob_2nddefcont_cellphone: taxInvoice.buyer2ndContactCellPhone,\n tit_broker_specorg_biztypecode: taxInvoice.agentBusinessRegistrationCategory,\n tit_broker_id: taxInvoice.agentBusinessRegistrationNumber,\n tit_broker_specorg_taxregid: taxInvoice.agentBranchIdentification,\n tit_broker_name: taxInvoice.agentBusinessName,\n tit_broker_specperson_name: taxInvoice.agentRepresentativeName,\n tit_broker_specaddr_lineone: taxInvoice.agentAddress,\n tit_broker_typecode: taxInvoice.agentBusinessType,\n tit_broker_classcode: taxInvoice.agentIndustryType,\n tit_broker_defcont_deptname: taxInvoice.agentDepartment,\n tit_broker_defcont_personname: taxInvoice.agentContactName,\n tit_broker_defcont_telcomm: taxInvoice.agentContactPhone,\n tit_broker_defcont_uricomm: taxInvoice.agentContactEmail,\n tit_broker_defcont_cellphone: taxInvoice.agentContactCellPhone,\n tit_specpay_paidamount10: taxInvoice.paymentAmountCash,\n tit_specpay_paidamount20: taxInvoice.paymentAmountCheck,\n tit_specpay_paidamount30: taxInvoice.paymentAmountPromissoryNote,\n tit_specpay_paidamount40: taxInvoice.paymentAmountAccountsReceivable,\n tit_specsum_chargeamount: taxInvoice.supplyAmount,\n tit_specsum_taxamount: taxInvoice.taxAmount,\n tit_specsum_grandamount: taxInvoice.totalAmount,\n inv_sign: '',\n biz_tocharlesconfirmstatus: null,\n tAliceItemList: newTaxInvoiceItems\n }\n }\n}\n"]}
|
|
1
|
+
{"version":3,"file":"tax-invoice-api-mutation.js","sourceRoot":"","sources":["../../../server/service/tax-invoice-api/tax-invoice-api-mutation.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Mutation, Arg, Ctx, Directive } from 'type-graphql'\nimport { In } from 'typeorm'\n\nimport { TaxInvoiceApi } from './tax-invoice-api'\nimport { TaxInvoiceApiPatch, TaxInvoiceSend } from './tax-invoice-api-type'\nimport { TaxInvoiceItem } from '../tax-invoice-item/tax-invoice-item'\nimport { Category, InvoiceType, TaxInvoice } from '../tax-invoice/tax-invoice'\nimport { sendTaxInvoiceByUniposApi } from '../unipost-api/tax-invoice-send'\nimport { parseTaxInvoiceByUnipostFormat } from '../tax-invoice/tax-invoice-util'\n\n@Resolver(TaxInvoiceApi)\nexport class TaxInvoiceApiMutation {\n @Directive('@transaction')\n @Mutation(returns => [TaxInvoiceApi], { description: 'To modify Tax Invoice Api information' })\n async updateMultipleTaxInvoiceApi(\n @Arg('patches', type => [TaxInvoiceApiPatch]) patches: TaxInvoiceApiPatch[],\n @Ctx() context: ResolverContext\n ): Promise<TaxInvoiceApi[]> {\n const { domain, user, tx } = context.state\n\n let results = []\n const _createRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === '+')\n const _updateRecords = patches.filter((patch: any) => patch.cuFlag.toUpperCase() === 'M')\n const taxInvoiceApiRepo = tx.getRepository(TaxInvoiceApi)\n\n if (_createRecords.length > 0) {\n for (let i = 0; i < _createRecords.length; i++) {\n const newRecord = _createRecords[i]\n\n const result = await taxInvoiceApiRepo.save({\n ...newRecord,\n domain,\n creator: user,\n updater: user\n })\n\n results.push({ ...result, cuFlag: '+' })\n }\n }\n\n if (_updateRecords.length > 0) {\n for (let i = 0; i < _updateRecords.length; i++) {\n const updateRecord = _updateRecords[i]\n const taxAuditResult = await taxInvoiceApiRepo.findOneBy({ id: updateRecord.id })\n\n const result = await taxInvoiceApiRepo.save({\n ...taxAuditResult,\n ...updateRecord,\n updater: user\n })\n\n results.push({ ...result, cuFlag: 'M' })\n }\n }\n\n return results\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To delete multiple Tax Invoice Api' })\n async deleteTaxInvoiceApis(\n @Arg('ids', type => [String]) ids: string[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n const { domain, tx } = context.state\n\n await tx.getRepository(TaxInvoiceApi).delete({\n domain: { id: domain.id },\n id: In(ids)\n })\n\n return true\n }\n\n @Directive('@transaction')\n @Mutation(returns => Boolean, { description: 'To Send Tax Invoices By Api' })\n async sendTaxInvoicesByApi(\n @Arg('taxInvoiceSendList', type => [TaxInvoiceSend]) taxInvoiceSendList: TaxInvoiceSend[],\n @Ctx() context: ResolverContext\n ): Promise<boolean> {\n await this.issueTaxInvoicesByApi(taxInvoiceSendList, context)\n\n return true\n }\n\n async issueTaxInvoicesByApi(taxInvoiceSendList: TaxInvoiceSend[], context: ResolverContext): Promise<TaxInvoice[]> {\n if (!taxInvoiceSendList?.length) throw new Error('tax invoice send exception: no list')\n\n const { domain, user, tx } = context.state\n const taxInvoiceRepo = tx.getRepository(TaxInvoice)\n const taxInvoiceItemRepo = tx.getRepository(TaxInvoiceItem)\n const taxInvoiceApiRepo = tx.getRepository(TaxInvoiceApi)\n const issuedTaxInvoices: TaxInvoice[] = []\n\n const apiInfo = await taxInvoiceApiRepo.findOneBy({ isDefault: true })\n const businessRegistrationNumber = apiInfo.businessRegistrationNumber\n const { aid = '', bearer = '', customer_no = '' } = apiInfo?.attributes\n let failCount = 0\n let failMessage = []\n\n // 1. 밸리데이션 및 데이터 파싱\n let newTaxInvoiceSendList = taxInvoiceSendList.map(taxInvoiceSend =>\n this._parseTaxInvoiceSendForApi(taxInvoiceSend, aid, customer_no)\n )\n\n // 2. 세금계산서 발행 API 호출\n const apiResult = await sendTaxInvoiceByUniposApi(businessRegistrationNumber, aid, bearer, newTaxInvoiceSendList)\n if (apiResult === false) {\n // TODO 로그 찍기\n throw new Error('tax invoice send exception: api error')\n }\n\n // 3. 성공하면 세금계산서 DB에 저장\n for (let item of apiResult) {\n if (item?.success) {\n const { taxInvoice, taxInvoiceItems } = parseTaxInvoiceByUnipostFormat(\n item?.tAliceEntry,\n item?.tAliceEntry?.tAliceItemList,\n Category.EXPORT\n )\n\n // 세금계산서 저장\n const newTaxInvoice = await taxInvoiceRepo.save({\n ...taxInvoice,\n domain,\n creator: user,\n updater: user\n })\n issuedTaxInvoices.push(newTaxInvoice)\n\n // 아이템 저장\n for (const item of taxInvoiceItems) {\n await taxInvoiceItemRepo.save({ ...item, taxInvoice: newTaxInvoice, domain, creator: user })\n }\n } else {\n failCount++\n failMessage.push(`${item.inv_seq}: ${item.message}`)\n }\n }\n\n // 실패가 1개라도 있으면 에러\n if (failCount > 0) {\n throw new Error(failCount + '개의 계산서 등록에 실패하였습니다.\\n' + failMessage.join('\\n'))\n }\n\n return issuedTaxInvoices\n }\n\n // 유니스포트에 받을수 있는 포맷으로 데이터 파싱\n private _parseTaxInvoiceSendForApi(taxInvoiceSend, aid, customer_no) {\n const { taxInvoice, taxInvoiceItems } = taxInvoiceSend\n let newTaxInvoiceItems: any = []\n const today = new Intl.DateTimeFormat('fr-CA', { timeZone: 'Asia/Seoul' }).format(new Date()) // YYYY-MM-DD\n\n // 필수값 체크\n if (\n !taxInvoice.supplierBusinessRegistrationNumber ||\n !taxInvoice.supplierBusinessName ||\n !taxInvoice.supplierRepresentativeName ||\n !taxInvoice.buyerBusinessRegistrationNumber ||\n !taxInvoice.buyerBusinessName ||\n !taxInvoice.buyerRepresentativeName ||\n !taxInvoice.issueDate\n ) {\n throw new Error('tax invoice send exception: no essential value')\n }\n\n // 공급자 사업자 등록번호가 전부 숫자이며 10자리 인지 체크\n if (\n isNaN(taxInvoice.supplierBusinessRegistrationNumber) ||\n taxInvoice.supplierBusinessRegistrationNumber.length !== 10\n ) {\n throw new Error('tax invoice send exception: Supplier Business Registration Number is wrong')\n }\n\n // 공급받는자 사업자 등록번호가 전부 숫자이며 10자리 인지 체크\n if (isNaN(taxInvoice.buyerBusinessRegistrationNumber) || taxInvoice.buyerBusinessRegistrationNumber.length !== 10) {\n throw new Error('tax invoice send exception: Buyer Business Registration Number is wrong')\n }\n\n // 작성일자가 오늘 날짜를 넘어가면 에러\n if (taxInvoice.issueDate > today) {\n throw new Error('tax invoice send exception: issueDate error')\n }\n\n // 현금, 수표, 어음, 외상미수금이 있을시 총 합계금액과 금액 동일 체크\n const paymentAmount: number =\n taxInvoice.paymentAmountCash +\n taxInvoice.paymentAmountCheck +\n taxInvoice.paymentAmountPromissoryNote +\n taxInvoice.paymentAmountAccountsReceivable\n if (paymentAmount > 0 && paymentAmount !== taxInvoice.totalAmount) {\n throw new Error('tax invoice send exception: summary is not same')\n }\n\n // 영세업자인데 세금이 있으면 에러\n if (taxInvoice.invoiceType === InvoiceType.ZERO_RATED_TAX_INVOICE && taxInvoice.taxAmount > 0) {\n throw new Error('tax invoice send exception: tax price is exist')\n }\n\n for (let item of taxInvoiceItems) {\n // 아이템 필수값 체크\n if (!item.supplyDate || !item.itemName || !item.quantity || !item.unitPrice) {\n throw new Error('tax invoice send exception: no item essential value')\n }\n\n // 아이템의 일자가 작성일자보다 크면 에러\n if (taxInvoice.issueDate < item.supplyDate) {\n throw new Error('tax invoice send exception: item supplyDate is bigger than issueDate')\n }\n\n // 영세업자인데 아이템 세금이 있으면 에러\n if (taxInvoice.invoiceType === InvoiceType.ZERO_RATED_TAX_INVOICE && item.taxPrice > 0) {\n throw new Error('tax invoice send exception: item tax price is exist')\n }\n\n newTaxInvoiceItems.push({\n tii_seqnumeric: item.sequence,\n tii_purchaseexpirydatetime: item.supplyDate.replace(/-/g, ''),\n tii_nametext: item.itemName,\n tii_informationtext: item.specification,\n tii_chargeableunitquantity: item.quantity,\n tii_unitprice_unitamount: item.unitPrice,\n tii_invoiceamount: item.supplyPrice,\n tii_totaltax_calcamount: item.taxPrice,\n tii_descriptiontext: item.remark\n })\n }\n\n return {\n aid: aid,\n inv_seq: today.replace(/-/g, '') + customer_no,\n exd_refdoc_id: null,\n tid_issuedatetime: taxInvoice.issueDate.replace(/-/g, ''),\n tid_typecode: taxInvoice.invoiceType,\n tid_purposecode: taxInvoice.purpose,\n tid_amendcode: taxInvoice.revisedReason,\n tid_originalissueid: null,\n tid_desc0: taxInvoice.remark0,\n tid_desc1: null,\n tid_desc2: null,\n tit_alice_specorg_biztypecode: taxInvoice.supplierBusinessRegistrationCategory,\n tit_alice_id: taxInvoice.supplierBusinessRegistrationNumber,\n tit_alice_specorg_taxregid: taxInvoice.supplierBranchIdentification,\n tit_alice_name: taxInvoice.supplierBusinessName,\n tit_alice_specperson_name: taxInvoice.supplierRepresentativeName,\n tit_alice_specaddr_lineone: taxInvoice.supplierAddress,\n tit_alice_typecode: taxInvoice.supplierBusinessType,\n tit_alice_classcode: taxInvoice.supplierIndustryType,\n tit_alice_defcont_deptname: taxInvoice.supplierDepartment,\n tit_alice_defcont_personname: taxInvoice.supplierContactName,\n tit_alice_defcont_telcomm: taxInvoice.supplierContactPhone,\n tit_alice_defcont_uricomm: taxInvoice.supplierContactEmail,\n tit_alice_defcont_cellphone: taxInvoice.supplierContactCellPhone,\n tit_bob_specorg_biztypecode: taxInvoice.buyerBusinessRegistrationCategory,\n tit_bob_id: taxInvoice.buyerBusinessRegistrationNumber,\n tit_bob_specorg_taxregid: taxInvoice.buyerBranchIdentification,\n tit_bob_name: taxInvoice.buyerBusinessName,\n tit_bob_specperson_name: taxInvoice.buyerRepresentativeName,\n tit_bob_specaddr_lineone: taxInvoice.buyerAddress,\n tit_bob_typecode: taxInvoice.buyerBusinessType,\n tit_bob_classcode: taxInvoice.buyerIndustryType,\n tit_bob_1stdefcont_deptname: taxInvoice.buyer1stDepartment,\n tit_bob_1stdefcont_personname: taxInvoice.buyer1stContactName,\n tit_bob_1stdefcont_telcomm: taxInvoice.buyer1stContactPhone,\n tit_bob_1stdefcont_uricomm: taxInvoice.buyer1stContactEmail,\n tit_bob_1stdefcont_cellphone: taxInvoice.buyer1stContactCellPhone,\n tit_bob_2nddefcont_deptname: taxInvoice.buyer2ndDepartment,\n tit_bob_2nddefcont_personname: taxInvoice.buyer2ndContactName,\n tit_bob_2nddefcont_telcomm: taxInvoice.buyer2ndContactPhone,\n tit_bob_2nddefcont_uricomm: taxInvoice.buyer2ndContactEmail,\n tit_bob_2nddefcont_cellphone: taxInvoice.buyer2ndContactCellPhone,\n tit_broker_specorg_biztypecode: taxInvoice.agentBusinessRegistrationCategory,\n tit_broker_id: taxInvoice.agentBusinessRegistrationNumber,\n tit_broker_specorg_taxregid: taxInvoice.agentBranchIdentification,\n tit_broker_name: taxInvoice.agentBusinessName,\n tit_broker_specperson_name: taxInvoice.agentRepresentativeName,\n tit_broker_specaddr_lineone: taxInvoice.agentAddress,\n tit_broker_typecode: taxInvoice.agentBusinessType,\n tit_broker_classcode: taxInvoice.agentIndustryType,\n tit_broker_defcont_deptname: taxInvoice.agentDepartment,\n tit_broker_defcont_personname: taxInvoice.agentContactName,\n tit_broker_defcont_telcomm: taxInvoice.agentContactPhone,\n tit_broker_defcont_uricomm: taxInvoice.agentContactEmail,\n tit_broker_defcont_cellphone: taxInvoice.agentContactCellPhone,\n tit_specpay_paidamount10: taxInvoice.paymentAmountCash,\n tit_specpay_paidamount20: taxInvoice.paymentAmountCheck,\n tit_specpay_paidamount30: taxInvoice.paymentAmountPromissoryNote,\n tit_specpay_paidamount40: taxInvoice.paymentAmountAccountsReceivable,\n tit_specsum_chargeamount: taxInvoice.supplyAmount,\n tit_specsum_taxamount: taxInvoice.taxAmount,\n tit_specsum_grandamount: taxInvoice.totalAmount,\n inv_sign: '',\n biz_tocharlesconfirmstatus: null,\n tAliceItemList: newTaxInvoiceItems\n }\n }\n}\n"]}
|
|
@@ -4,6 +4,7 @@ import { TaxInvoiceApi } from './tax-invoice-api';
|
|
|
4
4
|
import { TaxInvoiceApiList } from './tax-invoice-api-type';
|
|
5
5
|
export declare class TaxInvoiceApiQuery {
|
|
6
6
|
taxInvoiceApis(params: ListParam, context: ResolverContext): Promise<TaxInvoiceApiList>;
|
|
7
|
+
defaultTaxInvoiceApi(context: ResolverContext): Promise<TaxInvoiceApi | null>;
|
|
7
8
|
domain(taxInvoiceApi: TaxInvoiceApi): Promise<Domain>;
|
|
8
9
|
updater(taxInvoiceApi: TaxInvoiceApi): Promise<User>;
|
|
9
10
|
creator(taxInvoiceApi: TaxInvoiceApi): Promise<User>;
|
|
@@ -18,6 +18,10 @@ let TaxInvoiceApiQuery = class TaxInvoiceApiQuery {
|
|
|
18
18
|
const [items, total] = await queryBuilder.getManyAndCount();
|
|
19
19
|
return { items, total };
|
|
20
20
|
}
|
|
21
|
+
async defaultTaxInvoiceApi(context) {
|
|
22
|
+
const { domain } = context.state;
|
|
23
|
+
return await (0, shell_1.getRepository)(tax_invoice_api_1.TaxInvoiceApi).findOne({ where: { isDefault: true, domain: { id: domain.id } } });
|
|
24
|
+
}
|
|
21
25
|
async domain(taxInvoiceApi) {
|
|
22
26
|
return taxInvoiceApi.domainId && (await (0, shell_1.getRepository)(shell_1.Domain).findOneBy({ id: taxInvoiceApi.domainId }));
|
|
23
27
|
}
|
|
@@ -37,6 +41,13 @@ tslib_1.__decorate([
|
|
|
37
41
|
tslib_1.__metadata("design:paramtypes", [shell_1.ListParam, Object]),
|
|
38
42
|
tslib_1.__metadata("design:returntype", Promise)
|
|
39
43
|
], TaxInvoiceApiQuery.prototype, "taxInvoiceApis", null);
|
|
44
|
+
tslib_1.__decorate([
|
|
45
|
+
(0, type_graphql_1.Query)(returns => tax_invoice_api_1.TaxInvoiceApi, { nullable: true, description: 'To fetch a Default Tax Invoice Api' }),
|
|
46
|
+
tslib_1.__param(0, (0, type_graphql_1.Ctx)()),
|
|
47
|
+
tslib_1.__metadata("design:type", Function),
|
|
48
|
+
tslib_1.__metadata("design:paramtypes", [Object]),
|
|
49
|
+
tslib_1.__metadata("design:returntype", Promise)
|
|
50
|
+
], TaxInvoiceApiQuery.prototype, "defaultTaxInvoiceApi", null);
|
|
40
51
|
tslib_1.__decorate([
|
|
41
52
|
(0, type_graphql_1.FieldResolver)(type => shell_1.Domain),
|
|
42
53
|
tslib_1.__param(0, (0, type_graphql_1.Root)()),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tax-invoice-api-query.js","sourceRoot":"","sources":["../../../server/service/tax-invoice-api/tax-invoice-api-query.ts"],"names":[],"mappings":";;;;AAAA,+CAA8E;AAC9E,iDAAuG;AACvG,yDAAgD;AAChD,uDAAiD;AACjD,iEAA0D;AAGnD,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;IAEvB,AAAN,KAAK,CAAC,cAAc,CACO,MAAiB,EACnC,OAAwB;QAE/B,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,KAAK,CAAA;QAEhC,MAAM,YAAY,GAAG,IAAA,qCAA6B,EAAC;YACjD,MAAM;YACN,MAAM;YACN,UAAU,EAAE,MAAM,IAAA,qBAAa,EAAC,+BAAa,CAAC;SAC/C,CAAC,CAAA;QACF,MAAM,CAAC,KAAK,EAAE,KAAK,CAAC,GAAG,MAAM,YAAY,CAAC,eAAe,EAAE,CAAA;QAE3D,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,CAAA;IACzB,CAAC;IAGK,AAAN,KAAK,CAAC,MAAM,CAAS,aAA4B;QAC/C,OAAO,aAAa,CAAC,QAAQ,IAAI,CAAC,MAAM,IAAA,qBAAa,EAAC,cAAM,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;IAC1G,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,aAA4B;QAChD,OAAO,aAAa,CAAC,SAAS,IAAI,CAAC,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IAC1G,CAAC;IAGK,AAAN,KAAK,CAAC,OAAO,CAAS,aAA4B;QAChD,OAAO,aAAa,CAAC,SAAS,IAAI,CAAC,MAAM,IAAA,qBAAa,EAAC,gBAAI,CAAC,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,aAAa,CAAC,SAAS,EAAE,CAAC,CAAC,CAAA;IAC1G,CAAC;CACF,CAAA;
|
|
1
|
+
{"version":3,"file":"tax-invoice-api-query.js","sourceRoot":"","sources":["../../../server/service/tax-invoice-api/tax-invoice-api-query.ts"],"names":[],"mappings":"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","sourcesContent":["import { Resolver, Query, FieldResolver, Root, Args, Ctx } from 'type-graphql'\nimport { Domain, ListParam, getQueryBuilderFromListParams, getRepository } from '@things-factory/shell'\nimport { User } from '@things-factory/auth-base'\nimport { TaxInvoiceApi } from './tax-invoice-api'\nimport { TaxInvoiceApiList } from './tax-invoice-api-type'\n\n@Resolver(TaxInvoiceApi)\nexport class TaxInvoiceApiQuery {\n @Query(returns => TaxInvoiceApiList!, { nullable: true, description: 'To fetch a Tax Invoice Api List' })\n async taxInvoiceApis(\n @Args(type => ListParam) params: ListParam,\n @Ctx() context: ResolverContext\n ): Promise<TaxInvoiceApiList> {\n const { domain } = context.state\n\n const queryBuilder = getQueryBuilderFromListParams({\n domain,\n params,\n repository: await getRepository(TaxInvoiceApi)\n })\n const [items, total] = await queryBuilder.getManyAndCount()\n\n return { items, total }\n }\n\n @Query(returns => TaxInvoiceApi, { nullable: true, description: 'To fetch a Default Tax Invoice Api' })\n async defaultTaxInvoiceApi(@Ctx() context: ResolverContext): Promise<TaxInvoiceApi | null> {\n const { domain } = context.state\n return await getRepository(TaxInvoiceApi).findOne({ where: { isDefault: true, domain: { id: domain.id } } })\n }\n\n @FieldResolver(type => Domain)\n async domain(@Root() taxInvoiceApi: TaxInvoiceApi): Promise<Domain> {\n return taxInvoiceApi.domainId && (await getRepository(Domain).findOneBy({ id: taxInvoiceApi.domainId }))\n }\n\n @FieldResolver(type => User)\n async updater(@Root() taxInvoiceApi: TaxInvoiceApi): Promise<User> {\n return taxInvoiceApi.updaterId && (await getRepository(User).findOneBy({ id: taxInvoiceApi.updaterId }))\n }\n\n @FieldResolver(type => User)\n async creator(@Root() taxInvoiceApi: TaxInvoiceApi): Promise<User> {\n return taxInvoiceApi.creatorId && (await getRepository(User).findOneBy({ id: taxInvoiceApi.creatorId }))\n }\n}\n"]}
|
|
@@ -22,6 +22,10 @@ tslib_1.__decorate([
|
|
|
22
22
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
23
23
|
tslib_1.__metadata("design:type", String)
|
|
24
24
|
], TaxInvoiceApiPatch.prototype, "provider", void 0);
|
|
25
|
+
tslib_1.__decorate([
|
|
26
|
+
(0, type_graphql_1.Field)({ nullable: true }),
|
|
27
|
+
tslib_1.__metadata("design:type", String)
|
|
28
|
+
], TaxInvoiceApiPatch.prototype, "apiKey", void 0);
|
|
25
29
|
tslib_1.__decorate([
|
|
26
30
|
(0, type_graphql_1.Field)({ nullable: true }),
|
|
27
31
|
tslib_1.__metadata("design:type", String)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tax-invoice-api-type.js","sourceRoot":"","sources":["../../../server/service/tax-invoice-api/tax-invoice-api-type.ts"],"names":[],"mappings":";;;;AAAA,+CAAoE;AACpE,uDAAiD;AACjD,iDAAoD;AACpD,sEAA+D;AAC/D,qFAA6E;AAGtE,IAAM,kBAAkB,GAAxB,MAAM,kBAAkB;
|
|
1
|
+
{"version":3,"file":"tax-invoice-api-type.js","sourceRoot":"","sources":["../../../server/service/tax-invoice-api/tax-invoice-api-type.ts"],"names":[],"mappings":"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","sourcesContent":["import { ObjectType, Field, InputType, Int, ID } from 'type-graphql'\nimport { TaxInvoiceApi } from './tax-invoice-api'\nimport { ScalarObject } from '@things-factory/shell'\nimport { NewTaxInvoice } from '../tax-invoice/tax-invoice-type'\nimport { NewTaxInvoiceItem } from '../tax-invoice-item/tax-invoice-item-type'\n\n@InputType()\nexport class TaxInvoiceApiPatch {\n @Field(type => ID, { nullable: true })\n id?: string\n\n @Field({ nullable: true })\n isDefault?: boolean\n\n @Field({ nullable: true })\n provider?: string\n\n @Field({ nullable: true })\n apiKey?: string\n\n @Field({ nullable: true })\n apiAccountId?: string\n\n @Field({ nullable: true })\n apiAccountPassword?: string\n\n @Field({ nullable: true })\n businessRegistrationNumber?: string\n\n @Field({ nullable: true })\n branchIdentification?: string\n\n @Field({ nullable: true })\n businessName?: string\n\n @Field({ nullable: true })\n representativeName?: string\n\n @Field({ nullable: true })\n address?: string\n\n @Field({ nullable: true })\n businessType?: string\n\n @Field({ nullable: true })\n industryType?: string\n\n @Field({ nullable: true })\n department?: string\n\n @Field({ nullable: true })\n contactName?: string\n\n @Field({ nullable: true })\n contactPhone?: string\n\n @Field({ nullable: true })\n contactEmail?: string\n\n @Field({ nullable: true })\n contactCellPhone?: string\n\n @Field(type => ScalarObject, { nullable: true })\n attributes?: any\n\n @Field({ nullable: true })\n cuFlag?: string\n}\n\n@ObjectType()\nexport class TaxInvoiceApiList {\n @Field(type => [TaxInvoiceApi])\n items: TaxInvoiceApi[]\n\n @Field(type => Int)\n total: number\n}\n\n@InputType()\nexport class TaxInvoiceSend {\n @Field(type => NewTaxInvoice)\n taxInvoice!: NewTaxInvoice\n\n @Field(type => [NewTaxInvoiceItem])\n taxInvoiceItems!: NewTaxInvoiceItem[]\n}\n"]}
|