세금계산서 수정

This commit is contained in:
focp212@naver.com
2025-11-18 13:21:22 +09:00
parent 4fe4b75e6c
commit b8ad495f45
4 changed files with 566 additions and 770 deletions

View File

@@ -12,32 +12,40 @@ import {
MAIN_ADDRESS, MAIN_ADDRESS,
POSTAL_CODE POSTAL_CODE
} from '../model/constant'; } from '../model/constant';
import { RecipientInfo, SupplierInfo, TransactionDetails } from '@/entities/vat-return/model/types'; import { PaymentInfo, RecipientInfo, SupplierInfo, TransactionDetails } from '@/entities/vat-return/model/types';
import '@/shared/ui/assets/css/style-tax-invoice.css'; import '@/shared/ui/assets/css/style-tax-invoice.css';
import { useAppBridge } from '@/hooks/useAppBridge'; import { useAppBridge } from '@/hooks/useAppBridge';
export interface TaxInvoiceSampleProps { export interface TaxInvoiceSampleProps {
taxInvoiceSampleOn: boolean; taxInvoiceSampleOn: boolean;
setTaxInvoiceSampleOn: (taxInvoiceSampleOn: boolean) => void; setTaxInvoiceSampleOn: (taxInvoiceSampleOn: boolean) => void;
managementNumber?: string | number | null;
approvalNumber?: string | number | null;
supplierInfo?: SupplierInfo; supplierInfo?: SupplierInfo;
recipientInfo?: RecipientInfo; recipientInfo?: RecipientInfo;
issueDate?: string; issueDate?: string;
supplyAmount?: number; supplyAmount?: number;
taxAmount?: number taxAmount?: number
totalAmount?: number; totalAmount?: number;
remark?: string | null;
transactionDetails?: TransactionDetails; transactionDetails?: TransactionDetails;
paymentInfo?: PaymentInfo;
}; };
export const TaxInvoiceSample = ({ export const TaxInvoiceSample = ({
taxInvoiceSampleOn, taxInvoiceSampleOn,
setTaxInvoiceSampleOn, setTaxInvoiceSampleOn,
managementNumber,
approvalNumber,
supplierInfo, supplierInfo,
recipientInfo, recipientInfo,
issueDate, issueDate,
supplyAmount, supplyAmount,
taxAmount, taxAmount,
totalAmount, totalAmount,
transactionDetails remark,
transactionDetails,
paymentInfo
}: TaxInvoiceSampleProps) => { }: TaxInvoiceSampleProps) => {
const { t } = useTranslation(); const { t } = useTranslation();
const { isIOS, saveImage } = useAppBridge(); const { isIOS, saveImage } = useAppBridge();
@@ -105,7 +113,7 @@ export const TaxInvoiceSample = ({
rs.push( rs.push(
<td <td
key={ `new-supply-amount-empty-${i}`} key={ `new-supply-amount-empty-${i}`}
className="inner-table10-td2" className="w-19 p-cell-5 border-right-1 font-base text-xs-dark text-center"
>&nbsp;</td> >&nbsp;</td>
); );
} }
@@ -114,7 +122,7 @@ export const TaxInvoiceSample = ({
rs.push( rs.push(
<td <td
key={ `new-supply-amount-number-${i}`} key={ `new-supply-amount-number-${i}`}
className="inner-table10-td2" className="w-19 p-cell-5 border-right-1 font-base text-xs-dark text-center"
>{ str }</td> >{ str }</td>
); );
} }
@@ -127,7 +135,7 @@ export const TaxInvoiceSample = ({
rs.push( rs.push(
<td <td
key={ `new-tax-amount=empty-${i}` } key={ `new-tax-amount=empty-${i}` }
className="inner-table10-td2" className="w-19 p-cell-5 border-right-1 font-base text-xs-dark text-center"
>&nbsp;</td> >&nbsp;</td>
); );
} }
@@ -136,7 +144,7 @@ export const TaxInvoiceSample = ({
rs.push( rs.push(
<td <td
key={ `new-tax-amount=number-${i}` } key={ `new-tax-amount=number-${i}` }
className="inner-table10-td2" className="w-19 p-cell-5 border-right-1 font-base text-xs-dark text-center"
>{ str }</td> >{ str }</td>
); );
} }
@@ -185,21 +193,28 @@ export const TaxInvoiceSample = ({
<center className="wrap-center"> <center className="wrap-center">
<table <table
className="outer-table" className="outer-table"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
width="100%"
style={{backgroundColor: '#FAFAFA'}}
> >
<tbody> <tbody>
<tr> <tr>
<td <td
className="outer-table-td" className="outer-table-td"
align="center" align="center"
style={{margin:0,padding:0}}
> >
<table <table
className="inner-table"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="main-container"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table-td1"> <td style={{padding: '20px 0 20px 0'}}>
<img <img
className="nicepay-logo" className="nicepay-logo"
src={ IMAGE_ROOT + '/mail_nicepay_logo.svg' } src={ IMAGE_ROOT + '/mail_nicepay_logo.svg' }
@@ -209,48 +224,58 @@ export const TaxInvoiceSample = ({
</td> </td>
</tr> </tr>
<tr> <tr>
<td style={{ padding: 0 }}> <td className="p-0">
<table <table
className="inner-table3"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="main-table w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table3-td1"> <td className="p-header">
<table <table
className="inner-table4"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table4-td1"></td> <td className="title font-base"></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
</td> </td>
</tr> </tr>
<tr> <tr>
<td className="inner-table4-td2"> <td className="p-content">
<table <table
className="inner-table5"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="main-border w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table5-td1"></td> <td
<td className="inner-table5-td2"> className="w-310 border-right-1 font-base invoice-title"
style={{verticalAlign: 'middle'}}
></td>
<td className="w-310 p-0">
<table <table
className="inner-table6"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table6-td1"></td> <td className="bg-gray w-37 p-cell-5 border-bottom-1 border-right-1 font-base text-xs-gray text-center"></td>
<td className="inner-table6-td2">&nbsp;</td> <td className="p-cell-5 border-bottom-1 font-base text-sm-dark text-left">{ approvalNumber || returnNbsp() }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td3"></td> <td className="bg-gray w-37 p-cell-5 border-right-1 font-base text-xs-gray text-center"></td>
<td className="inner-table6-td4">&nbsp;</td> <td className="p-cell-5 font-base text-sm-dark text-left">{ managementNumber || returnNbsp() }</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -261,54 +286,60 @@ export const TaxInvoiceSample = ({
</td> </td>
</tr> </tr>
<tr> <tr>
<td className="inner-table4-td2"> <td className="p-content">
<table <table
className="inner-table7"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="section-border w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table7-td1"> <td className="w-310 p-0 v-top border-left-05 border-right-05">
<table <table
className="inner-table6"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table6-td5"> <td className="supplier-label w-20">
<br /><br /> <br /><br />
</td> </td>
<td className="inner-table6-td6"> <td className="w-280 p-0 v-top">
<table <table
className="inner-table6"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
width="100%"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table6-td7"></td> <td className="header-cell-bordered w-56 font-base"></td>
<td <td
className="inner-table6-td8" className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left"
colSpan={ 3 } colSpan={3}
>{ supplierInfo?.businessRegistrationNumber }</td> >{ supplierInfo?.businessRegistrationNumber }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td7">()</td> <td className="header-cell-bordered w-56 font-base">()</td>
<td className="inner-table6-td9">{ supplierInfo?.companyName }</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-left">{ supplierInfo?.companyName }</td>
<td className="inner-table6-td10"></td> <td className="header-cell-bordered w-38 font-base"></td>
<td className="inner-table6-td8">{ supplierInfo?.ceoName }</td> <td className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left">{ supplierInfo?.ceoName }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td7"> </td> <td className="header-cell-bordered w-56 font-base"> </td>
<td <td
className="inner-table6-td8" className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left"
colSpan={ 3 } colSpan={3}
>{ supplierInfo?.address }</td> >{ supplierInfo?.address }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td7-1"></td> <td className="bg-gray w-56 p-cell-5 border-right-1 font-base text-xs-gray text-center"></td>
<td className="inner-table6-td9-1">{ supplierInfo?.businessType }</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-left">{ supplierInfo?.businessType }</td>
<td className="inner-table6-td10-1"></td> <td className="bg-gray w-38 p-cell-5 border-right-1 font-base text-xs-gray text-center"></td>
<td className="inner-table6-td8-1">{ supplierInfo?.businessItem }</td> <td className="p-cell-5 font-base text-xs-dark text-left">{ supplierInfo?.businessItem }</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -317,46 +348,51 @@ export const TaxInvoiceSample = ({
</tbody> </tbody>
</table> </table>
</td> </td>
<td className="inner-table7-td2"> <td className="w-310 p-0 v-top border-right-05">
<table <table
className="inner-table6"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table6-td11"> <td className="supplier-label w-20 line-height-13">
<br /><br /><br /><br /> <br /><br /><br /><br />
</td> </td>
<td className="inner-table6-td12"> <td className="w-280 p-0 v-top border-right-1">
<table <table
className="inner-table6" role="presentation"
cellPadding={0}
cellSpacing={0}
width="100%"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table6-td7"></td> <td className="header-cell-bordered w-56 font-base"></td>
<td <td
className="inner-table6-td8" className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left"
colSpan={ 3 } colSpan={3}
>{ recipientInfo?.businessRegistrationNumber }</td> >&nbsp;</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td7">()</td> <td className="header-cell-bordered w-56 font-base">()</td>
<td className="inner-table6-td9">{ recipientInfo?.companyName }</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-left">{ recipientInfo?.companyName } </td>
<td className="inner-table6-td10"></td> <td className="header-cell-bordered w-38 font-base"></td>
<td className="inner-table6-td8">{ recipientInfo?.ceoName }</td> <td className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left">{ recipientInfo?.ceoName }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td7"> </td> <td className="header-cell-bordered w-56 font-base"> </td>
<td <td
className="inner-table6-td8" className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left"
colSpan={ 3 } colSpan={3}
>{ recipientInfo?.address }</td> >{ recipientInfo?.address }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td7-1"></td> <td className="bg-gray w-56 p-cell-5 border-right-1 font-base text-xs-gray text-center"></td>
<td className="inner-table6-td9-1">{ recipientInfo?.businessType }</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-left">{ recipientInfo?.businessType }</td>
<td className="inner-table6-td10-1"></td> <td className="bg-gray w-38 p-cell-5 border-right-1 font-base text-xs-gray text-center"></td>
<td className="inner-table6-td8-1">{ recipientInfo?.businessItem }</td> <td className="p-cell-5 font-base text-xs-dark text-left">{ recipientInfo?.businessItem }</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -371,38 +407,44 @@ export const TaxInvoiceSample = ({
</td> </td>
</tr> </tr>
<tr> <tr>
<td className="inner-table4-td2"> <td className="p-content">
<table <table
className="inner-table8"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="border-bottom-2 border-left-2 border-right-2 w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table8-td1"> <td className="w-90 v-top p-0">
<table <table
className="inner-table9"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-90"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table9-td1"></td> <td className="p-cell-5 bg-gray border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td style={{ padding: 0 }}> <td className="p-0">
<table <table
className="inner-table9"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
width="90"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table9-td2"></td> <td className="w-30 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table9-td2"></td> <td className="w-30 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table9-td2"></td> <td className="w-30 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td className="inner-table9-td2-1">{ (!!issueDate)? moment(issueDate).format('YYYY'): returnNbsp() }</td> <td className="w-30 p-cell-5 border-right-1 font-base text-xs-dark text-center">{ (!!issueDate)? moment(issueDate).format('YYYY'): returnNbsp() }</td>
<td className="inner-table9-td2-1">{ (!!issueDate)? moment(issueDate).format('MM'): returnNbsp() }</td> <td className="w-30 p-cell-5 border-right-1 font-base text-xs-dark text-center">{ (!!issueDate)? moment(issueDate).format('MM'): returnNbsp() }</td>
<td className="inner-table9-td2-1">{ (!!issueDate)? moment(issueDate).format('DD'): returnNbsp() }</td> <td className="w-30 p-cell-5 border-right-1 font-base text-xs-dark text-center">{ (!!issueDate)? moment(issueDate).format('DD'): returnNbsp() }</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -411,34 +453,38 @@ export const TaxInvoiceSample = ({
</tbody> </tbody>
</table> </table>
</td> </td>
<td className="inner-table9-td3"> <td className="w-214 v-top p-0">
<table <table
className="inner-table10"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-214"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table9-td1"></td> <td className="p-cell-5 bg-gray border-bottom-1 border-right-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td style={{ padding: 0 }}> <td className="p-0">
<table <table
className="inner-table10"
role="presentation" role="presentation"
cellPadding="0"
cellSpacing="0"
width="214"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-bottom-1 border-right-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
{ showNewSupplyAmount() } { showNewSupplyAmount() }
@@ -450,37 +496,41 @@ export const TaxInvoiceSample = ({
</tbody> </tbody>
</table> </table>
</td> </td>
<td className="inner-table9-td3"> <td className="w-214 v-top p-0">
<table <table
className="inner-table10"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-214"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table9-td1"></td> <td className="p-cell-5 bg-gray border-bottom-1 border-right-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td style={{ padding:0 }}> <td className="p-0">
<table <table
className="inner-table10" role="presentation"
role="presentation" cellPadding={0}
cellSpacing={0}
width="214"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
<td className="inner-table10-td1"></td> <td className="w-19 p-cell-5 border-right-1 border-bottom-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
{ showNewTaxAmount() } { showNewTaxAmount() }
</tr> </tr>
</tbody> </tbody>
</table> </table>
</td> </td>
@@ -488,17 +538,25 @@ export const TaxInvoiceSample = ({
</tbody> </tbody>
</table> </table>
</td> </td>
<td className="inner-table9-td4"> <td
className="w-102 v-top p-0"
style={{borderLeft:0}}
>
<table <table
role="presentation" role="presentation"
className="inner-table11" cellPadding={0}
cellSpacing={0}
className="w-102"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table11-td1"></td> <td className="p-cell-5 bg-gray border-bottom-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td className="inner-table11-td2">&nbsp;</td> <td
className="p-cell-5 font-base text-xs-dark text-left"
style={{borderRight:0, borderBottom:0, borderLeft:0}}
>&nbsp;</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -509,105 +567,114 @@ export const TaxInvoiceSample = ({
</td> </td>
</tr> </tr>
<tr> <tr>
<td className="inner-table4-td2"> <td className="p-content">
<table <table
role="presentation" role="presentation"
className="inner-table12" cellPadding={0}
cellSpacing={0}
className="bottom-section-border w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table12-td1"> <td className="w-40 p-0 v-top border-right-1">
<table className="inner-table13"> <table
role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-40"
>
<tbody> <tbody>
<tr> <tr>
<td className="inner-table13-td1"></td> <td className="bg-gray p-cell-5 border-bottom-1 font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td className="inner-table13-td1">/</td> <td className="bg-gray p-cell-5 border-bottom-1 font-base text-xs-gray text-center">/</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table13-td2">{ (!!transactionDetails?.transactionPeriod)? moment(transactionDetails.transactionPeriod).format('MM/DD'): returnNbsp() }</td> <td className="p-cell-5 border-bottom-1 font-base text-xs-dark text-center">{ (!!transactionDetails?.transactionPeriod)? moment(transactionDetails.transactionPeriod).format('MM/DD'): returnNbsp() }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table13-td2">&nbsp;</td> <td className="p-cell-5 border-bottom-1 font-base text-xs-dark text-center">&nbsp;</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table13-td3">&nbsp;</td> <td className="p-cell-5 font-base text-xs-dark text-center">&nbsp;</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
</td> </td>
<td className="inner-table12-td2"> <td className="w-full p-0 v-top">
<table <table
role="presentation" role="presentation"
className="inner-table6" cellPadding={0}
cellSpacing={0}
className="w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td <td
colSpan={ 7 } className="p-cell-5 border-bottom-1 font-base text-xs-gray text-center"
className="inner-table11-td1" colSpan={7}
> ( ) </td> >{ remark || returnNbsp() }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table9-td1"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table9-td1"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table9-td1"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table9-td1"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table9-td1"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table9-td1"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table11-td1"></td> <td className="p-cell-5 border-bottom-1 bg-gray font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td9">{ transactionDetails?.itemName || returnNbsp() }</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-left">{ transactionDetails?.itemName || returnNbsp() }</td>
<td className="inner-table6-td9">{ transactionDetails?.specification || returnNbsp() }</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-left">{ transactionDetails?.specification || returnNbsp() }</td>
<td className="inner-table6-td13"> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-center">
<NumericFormat <NumericFormat
value={ transactionDetails?.quantity || 0 } value={ transactionDetails?.quantity || 0 }
thousandSeparator thousandSeparator
displayType="text" displayType="text"
></NumericFormat> ></NumericFormat>
</td> </td>
<td className="inner-table6-td14"> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-right">
<NumericFormat <NumericFormat
value={ transactionDetails?.unitPrice || 0 } value={ transactionDetails?.unitPrice || 0 }
thousandSeparator thousandSeparator
displayType="text" displayType="text"
></NumericFormat> ></NumericFormat>
</td> </td>
<td className="inner-table6-td14"> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-right">
<NumericFormat <NumericFormat
value={ transactionDetails?.supplyAmount || 0 } value={ transactionDetails?.supplyAmount || 0 }
thousandSeparator thousandSeparator
displayType="text" displayType="text"
></NumericFormat> ></NumericFormat>
</td> </td>
<td className="inner-table6-td14"> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-right">
<NumericFormat <NumericFormat
value={ transactionDetails?.taxAmount || 0 } value={ transactionDetails?.taxAmount || 0 }
thousandSeparator thousandSeparator
displayType="text" displayType="text"
></NumericFormat> ></NumericFormat>
</td> </td>
<td className="inner-table6-td15">{ transactionDetails?.remarks || returnNbsp() }</td> <td className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left">{ transactionDetails?.remarks || returnNbsp() }</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td9">&nbsp;</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-left">&nbsp;</td>
<td className="inner-table6-td9">&nbsp;</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-left">&nbsp;</td>
<td className="inner-table6-td13">&nbsp;</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-center">&nbsp;</td>
<td className="inner-table6-td14">&nbsp;</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-right">&nbsp;</td>
<td className="inner-table6-td14">&nbsp;</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-right">&nbsp;</td>
<td className="inner-table6-td14">&nbsp;</td> <td className="p-cell-5 border-bottom-1 border-right-1 font-base text-xs-dark text-right">&nbsp;</td>
<td className="inner-table6-td15">&nbsp;</td> <td className="p-cell-5 border-bottom-1 font-base text-xs-dark text-left">&nbsp;</td>
</tr> </tr>
<tr> <tr>
<td className="inner-table6-td9-1">&nbsp;</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-left">&nbsp;</td>
<td className="inner-table6-td9-1">&nbsp;</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-left">&nbsp;</td>
<td className="inner-table6-td13-1">&nbsp;</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-center">&nbsp;</td>
<td className="inner-table6-td14-1">&nbsp;</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-right">&nbsp;</td>
<td className="inner-table6-td14-1">&nbsp;</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-right">&nbsp;</td>
<td className="inner-table6-td14-1">&nbsp;</td> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-right">&nbsp;</td>
<td className="inner-table6-td15-1">&nbsp;</td> <td className="p-cell-5 font-base text-xs-dark text-left">&nbsp;</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
@@ -620,71 +687,100 @@ export const TaxInvoiceSample = ({
<tr> <tr>
<td className="table_wrap"> <td className="table_wrap">
<table <table
className="inner-table6"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table4-td2"> <td className="p-content">
<table <table
className="inner-table15"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
className="final-section-border w-full"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table15-td1"> <td
className="p-0 v-top border-right-1"
style={{width:'463px'}}
>
<table <table
className="inner-table6"
role="presentation" role="presentation"
cellPadding={0}
cellSpacing={0}
width="100%"
> >
<tbody> <tbody>
<tr> <tr>
<td className="inner-table15-td2"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table15-td2"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table15-td2"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table15-td2"></td> <td className="header-cell-bordered font-base"></td>
<td className="inner-table15-td4"></td> <td className="p-cell-5 border-bottom-1 bg-gray font-base text-xs-gray text-center"></td>
</tr> </tr>
<tr> <tr>
<td className="inner-table15-td3"> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-right">
<NumericFormat { totalAmount ?
value={ totalAmount } <NumericFormat
thousandSeparator value={ totalAmount }
displayType="text" thousandSeparator
></NumericFormat> displayType="text"
></NumericFormat>
: returnNbsp()
}
</td> </td>
<td className="inner-table15-td3"> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-right">
<NumericFormat { paymentInfo?.cash ?
value={ 0 } <NumericFormat
thousandSeparator value={ paymentInfo?.cash }
displayType="text" thousandSeparator
></NumericFormat> displayType="text"
></NumericFormat>
: returnNbsp()
}
</td> </td>
<td className="inner-table15-td3"> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-right">
<NumericFormat { paymentInfo?.check ?
value={ 0 } <NumericFormat
thousandSeparator value={ paymentInfo?.check }
displayType="text" thousandSeparator
></NumericFormat> displayType="text"
></NumericFormat>
: returnNbsp()
}
</td> </td>
<td className="inner-table15-td3"> <td className="p-cell-5 border-right-1 font-base text-xs-dark text-right">
<NumericFormat { paymentInfo?.promissoryNote ?
value={ 0 } <NumericFormat
thousandSeparator value={ paymentInfo?.promissoryNote }
displayType="text" thousandSeparator
></NumericFormat> displayType="text"
></NumericFormat>
: returnNbsp()
}
</td>
<td className="p-cell-5 font-base text-xs-dark text-right">
{ paymentInfo?.accountsReceivable ?
<NumericFormat
value={ paymentInfo?.accountsReceivable }
thousandSeparator
displayType="text"
></NumericFormat>
: returnNbsp()
}
</td> </td>
<td className="inner-table15-td5"><NumericFormat
value={ 0 }
thousandSeparator
displayType="text"
></NumericFormat></td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
</td> </td>
<td className="inner-table15-td6"> <td
<span className="inner-table15-td7"> </span> className="w-157 v-middle text-center"
style={{padding:'2px 0'}}
>
<span className="font-base text-block"> </span>
</td> </td>
</tr> </tr>
</tbody> </tbody>
@@ -700,15 +796,17 @@ export const TaxInvoiceSample = ({
</td> </td>
</tr> </tr>
<tr> <tr>
<td className="inner-table4-td4"> <td style={{padding: '20px 0 20px 0'}}>
<table <table
className="inner-table14" role="presentation"
role="presentation" cellPadding={0}
cellSpacing={0}
width='100%'
> >
<tbody> <tbody>
<tr> <tr>
<td <td
className="inner-table4-td2" className="p-content"
style={{ verticalAlign: 'top'}} style={{ verticalAlign: 'top'}}
> >
<img <img

View File

@@ -130,13 +130,17 @@ export interface VatReturnTaxInvoiceParams {
taxInvoiceNumber: string; taxInvoiceNumber: string;
} }
export interface VatReturnTaxInvoiceResponse { export interface VatReturnTaxInvoiceResponse {
managementNumber?: string | number | null;
approvalNumber?: string | number | null;
supplierInfo?: SupplierInfo; supplierInfo?: SupplierInfo;
recipientInfo?: RecipientInfo; recipientInfo?: RecipientInfo;
issueDate?: string; issueDate?: string;
supplyAmount?: number; supplyAmount?: number;
taxAmount?: number; taxAmount?: number;
totalAmount?: number; totalAmount?: number;
remark?: string | null;
transactionDetails?: TransactionDetails; transactionDetails?: TransactionDetails;
paymentInfo?: PaymentInfo;
}; };
export interface SupplierInfo { export interface SupplierInfo {
@@ -166,6 +170,12 @@ export interface TransactionDetails {
taxAmount: number; taxAmount: number;
remarks: string; remarks: string;
}; };
export interface PaymentInfo {
cash?: number | null;
check?: number | null;
promissoryNote?: number | null;
accountsReceivable?: number | null;
};
export interface VatReturnDownloadExcelParams { export interface VatReturnDownloadExcelParams {
email: string; email: string;
mid: string; mid: string;

View File

@@ -1,6 +1,6 @@
import moment from 'moment'; import moment from 'moment';
import { useTranslation } from 'react-i18next'; import { useTranslation } from 'react-i18next';
import { RecipientInfo, SupplierInfo, TransactionDetails, VatReturnDetailResponse, VatReturnTaxInvoiceParams, VatReturnTaxInvoiceResponse, VatReturnTaxInvoiceSendEmailParams, VatReturnTaxInvoiceSendEmailResponse } from '../../model/types'; import { PaymentInfo, RecipientInfo, SupplierInfo, TransactionDetails, VatReturnDetailResponse, VatReturnTaxInvoiceParams, VatReturnTaxInvoiceResponse, VatReturnTaxInvoiceSendEmailParams, VatReturnTaxInvoiceSendEmailResponse } from '../../model/types';
import { SectionTitleArrow } from '@/entities/common/ui/section-title-arrow'; import { SectionTitleArrow } from '@/entities/common/ui/section-title-arrow';
import SlideDown from 'react-slidedown'; import SlideDown from 'react-slidedown';
import 'react-slidedown/lib/slidedown.css'; import 'react-slidedown/lib/slidedown.css';
@@ -26,13 +26,17 @@ export const AmountSection = ({
const [taxInvoiceSampleOn, setTaxInvoiceSampleOn] = useState<boolean>(false); const [taxInvoiceSampleOn, setTaxInvoiceSampleOn] = useState<boolean>(false);
const [managementNumber, setManagementNumber] = useState<string | number | null>();
const [approvalNumber, setApprovalNumber] = useState<string | number | null>();
const [supplierInfo, setSupplierInfo] = useState<SupplierInfo>(); const [supplierInfo, setSupplierInfo] = useState<SupplierInfo>();
const [recipientInfo, setRecipientInfo] = useState<RecipientInfo>(); const [recipientInfo, setRecipientInfo] = useState<RecipientInfo>();
const [issueDate, setIssueDate] = useState<string>(); const [issueDate, setIssueDate] = useState<string>();
const [supplyAmount, setSupplyAmount] = useState<number>(); const [supplyAmount, setSupplyAmount] = useState<number>();
const [taxAmount, setTaxAmount] = useState<number>(); const [taxAmount, setTaxAmount] = useState<number>();
const [totalAmount, setTotalAmount] = useState<number>(); const [totalAmount, setTotalAmount] = useState<number>();
const [remark, setRemark] = useState<string | null>();
const [transactionDetails, setTransactionDetails] = useState<TransactionDetails>(); const [transactionDetails, setTransactionDetails] = useState<TransactionDetails>();
const [paymentInfo, setPaymentInfo] = useState<PaymentInfo>();
const { mutateAsync: vatReturnTaxInvoice } = useVatReturnTaxInvoiceMutation(); const { mutateAsync: vatReturnTaxInvoice } = useVatReturnTaxInvoiceMutation();
const { mutateAsync: vatReturnTaxInvoiceSendEmail } = useVatReturnTaxInvoiceSendEmailMutation(); const { mutateAsync: vatReturnTaxInvoiceSendEmail } = useVatReturnTaxInvoiceSendEmailMutation();
@@ -72,13 +76,17 @@ export const AmountSection = ({
}; };
vatReturnTaxInvoice(params).then((rs: VatReturnTaxInvoiceResponse) => { vatReturnTaxInvoice(params).then((rs: VatReturnTaxInvoiceResponse) => {
setManagementNumber(rs?.managementNumber);
setApprovalNumber(rs?.approvalNumber);
setSupplierInfo(rs?.supplierInfo); setSupplierInfo(rs?.supplierInfo);
setRecipientInfo(rs?.recipientInfo); setRecipientInfo(rs?.recipientInfo);
setIssueDate(rs?.issueDate); setIssueDate(rs?.issueDate);
setSupplyAmount(rs?.supplyAmount); setSupplyAmount(rs?.supplyAmount);
setTaxAmount(rs?.taxAmount); setTaxAmount(rs?.taxAmount);
setTotalAmount(rs?.totalAmount); setTotalAmount(rs?.totalAmount);
setRemark(rs?.remark);
setTransactionDetails(rs?.transactionDetails); setTransactionDetails(rs?.transactionDetails);
setPaymentInfo(rs?.paymentInfo);
setTaxInvoiceSampleOn(true); setTaxInvoiceSampleOn(true);
}); });
@@ -155,13 +163,17 @@ export const AmountSection = ({
<TaxInvoiceSample <TaxInvoiceSample
taxInvoiceSampleOn={ taxInvoiceSampleOn } taxInvoiceSampleOn={ taxInvoiceSampleOn }
setTaxInvoiceSampleOn={ setTaxInvoiceSampleOn } setTaxInvoiceSampleOn={ setTaxInvoiceSampleOn }
managementNumber={ managementNumber }
approvalNumber={ approvalNumber }
supplierInfo={ supplierInfo } supplierInfo={ supplierInfo }
recipientInfo={ recipientInfo } recipientInfo={ recipientInfo }
issueDate={ issueDate } issueDate={ issueDate }
supplyAmount={ supplyAmount } supplyAmount={ supplyAmount }
taxAmount={ taxAmount } taxAmount={ taxAmount }
totalAmount={ totalAmount } totalAmount={ totalAmount }
remark={ remark }
transactionDetails={ transactionDetails } transactionDetails={ transactionDetails }
paymentInfo={ paymentInfo }
></TaxInvoiceSample> ></TaxInvoiceSample>
} }
</> </>

View File

@@ -14,6 +14,7 @@
.mail-page .btn { display: inline-flex; min-width: 46px; align-items: center; justify-content: center; border-radius: 6px; height: 30px; padding: 0 10px; font-family: Pretendard, Arial, Helvetica, sans-serif; font-size: 15px; font-weight: 700; text-decoration: none; box-sizing: border-box; } .mail-page .btn { display: inline-flex; min-width: 46px; align-items: center; justify-content: center; border-radius: 6px; height: 30px; padding: 0 10px; font-family: Pretendard, Arial, Helvetica, sans-serif; font-size: 15px; font-weight: 700; text-decoration: none; box-sizing: border-box; }
.mail-page .btn-dark { background: #043465; color: #F4F8FF; } .mail-page .btn-dark { background: #043465; color: #F4F8FF; }
.mail-page .btn-primary { background: #3E6AFC; color: #F4F8FF; } .mail-page .btn-primary { background: #3E6AFC; color: #F4F8FF; }
.mail-page .btn-primary { background: #3E6AFC; color: #F4F8FF; }
.mail-page .divider { height: 0; border-top: 1px solid #D6D6D6; margin: 16px 0; } .mail-page .divider { height: 0; border-top: 1px solid #D6D6D6; margin: 16px 0; }
/* title + cancel */ /* title + cancel */
.mail-page .title-row { display: flex; align-items: center; justify-content: space-between; padding: 0 0 5px 0; } .mail-page .title-row { display: flex; align-items: center; justify-content: space-between; padding: 0 0 5px 0; }
@@ -73,611 +74,286 @@
padding-bottom: 0; padding-bottom: 0;
transform: translateX(100%); transform: translateX(100%);
} }
.tax-invoice .wrap-center { .tax-invoice .wrap-center {
width: 100%; background: #FAFAFA; margin: 0; padding: 0; width: 100%; background: #FAFAFA; margin: 0; padding: 0;
} }
.tax-invoice .outer-table { .tax-invoice table {
margin: 0; padding: 0; background: #FAFAFA; border-collapse: collapse;
border: 0; width: 100%; border-spacing: 0; border: 0;
}
.tax-invoice .outer-table .outer-table-td {
margin: 0; padding: 0;
}
.tax-invoice .outer-table .outer-table-td .inner-table{
width: 660px; max-width: 660px; margin:0 auto; border-spacing: 0;
overflow-x: visible;
}
.inner-table .inner-table-td1{
padding: 20px 0 20px 0;
}
.inner-table .inner-table-td1 .nicepay-logo{
display: block; border: 0; outline: none; text-decoration: none;
}
.inner-table .inner-table-td2{
padding: 0 0 40px 0;
}
.inner-table2{
width: 100%; border-spacing: 0; padding: 0; border: 0;
}
.inner-table2 .title-image {
display: block; margin: 0 auto; border: 0;
outline: none; text-decoration: none;
width: 48px; height: 48px;
}
.inner-table2-td {
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 24px;
font-weight: 700;
color: #111111;
line-height: 1.25;
padding: 10px 0 25px 0;
}
.inner-table2-td2 {
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-weight: 400;
font-size: 14px;
line-height: 1.4;
color: #666666;
text-align: left;
padding-top: 0;
} }
.inner-table3 { .tax-invoice .font-base {
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
line-height: 1.4;
}
.tax-invoice .main-container {
width: 660px;
max-width: 660px;
margin: 0 auto;
}
.tax-invoice .main-table {
background: #FFFFFF; background: #FFFFFF;
box-shadow: 1px 2px 10px 0 rgba(0,0,0,0.10); }
width: 100%;
border: 0; .tax-invoice .p-0 {
border-spacing: 0;
padding: 0; padding: 0;
} }
.inner-table3-td1 { .tax-invoice .p-header {
padding: 20px 20px 10px 20px; padding: 20px 20px 10px 20px;
} }
.inner-table4 { .tax-invoice .p-content {
width: 100%;
border: 0;
border-spacing: 0;
padding: 0;
}
.inner-table4-td1 {
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 16px;
line-height: 1.4;
color: #1C1C1C;
font-weight: 700;
padding:0 0 10px 0;
}
.inner-table4-td2 {
padding: 0 20px 0 20px; padding: 0 20px 0 20px;
} }
.inner-table4-td3 {
padding: 30px 20px 0 20px; .tax-invoice .p-cell-5 {
padding: 2px 5px;
} }
.inner-table4-td4{
padding: 20px 0 20px 0; .tax-invoice .title {
font-size: 16px;
color: #1C1C1C;
font-weight: 700;
padding: 0 0 10px 0;
} }
.inner-table4-td5{
padding: 0 70px 0 0; .tax-invoice .border-top-2 {
border-top: 2px solid #000;
} }
.inner-table5 {
.tax-invoice .border-bottom-2 {
border-bottom: 2px solid #000;
}
.tax-invoice .border-left-2 {
border-left: 2px solid #000;
}
.tax-invoice .border-right-2 {
border-right: 2px solid #000;
}
.tax-invoice .border-top-1 {
border-top: 1px solid #000;
}
.tax-invoice .border-bottom-1 {
border-bottom: 1px solid #000;
}
.tax-invoice .border-left-1 {
border-left: 1px solid #000;
}
.tax-invoice .border-right-1 {
border-right: 1px solid #000;
}
.tax-invoice .border-top-05 {
border-top: 0.5px solid #000;
}
.tax-invoice .border-left-05 {
border-left: 0.5px solid #000;
}
.tax-invoice .border-right-05 {
border-right: 0.5px solid #000;
}
.tax-invoice .bg-gray {
background-color: #f9f9f9;
}
.tax-invoice .text-center {
text-align: center;
}
.tax-invoice .text-left {
text-align: left;
}
.tax-invoice .text-right {
text-align: right;
}
.tax-invoice .v-top {
vertical-align: top;
}
.tax-invoice .v-middle {
vertical-align: middle;
}
.tax-invoice .text-xs-gray {
font-size: 10px;
color: #666666;
}
.tax-invoice .text-xs-dark {
font-size: 10px;
color: #222222;
}
.tax-invoice .text-sm-gray {
font-size: 11px;
color: #666666;
}
.tax-invoice .text-sm-dark {
font-size: 12px;
color: #222222;
}
.tax-invoice .w-full {
width: 100%;
}
.tax-invoice .w-310 {
width: 310px;
}
.tax-invoice .w-280 {
width: 280px;
}
.tax-invoice .w-214 {
width: 214px;
}
.tax-invoice .w-157 {
width: 157px;
}
.tax-invoice .w-102 {
width: 102px;
}
.tax-invoice .w-90 {
width: 90px;
}
.tax-invoice .w-56 {
width: 56px;
}
.tax-invoice .w-40 {
width: 40px;
}
.tax-invoice .w-38 {
width: 38px;
}
.tax-invoice .w-37 {
width: 37px;
}
.tax-invoice .w-30 {
width: 30px;
}
.tax-invoice .w-20 {
width: 20px;
}
.tax-invoice .w-19 {
width: 19px;
}
.tax-invoice .header-cell {
background-color: #f9f9f9;
font-size: 10px;
color: #666666;
text-align: center;
padding: 2px 5px;
}
.tax-invoice .header-cell-bordered {
background-color: #f9f9f9;
font-size: 10px;
color: #666666;
text-align: center;
padding: 2px 5px;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
}
.tax-invoice .data-cell {
font-size: 10px;
color: #222222;
padding: 2px 5px;
}
.tax-invoice .invoice-title {
font-size: 11px;
color: #666666;
text-align: center;
}
.tax-invoice .supplier-label {
background-color: #f9f9f9;
font-size: 10px;
line-height: 1.4;
color: #666666;
text-align: center;
vertical-align: middle;
padding: 0;
border-left: 1px solid #000;
border-right: 1px solid #000;
}
.tax-invoice .line-height-13 {
line-height: 1.3;
}
.tax-invoice .text-block {
display: block;
font-size: 10px;
color: #666666;
line-height: 1.4;
}
.tax-invoice .main-border {
border-top: 2px solid #000; border-top: 2px solid #000;
border-left: 2px solid #000; border-left: 2px solid #000;
border-right: 2px solid #000; border-right: 2px solid #000;
border-bottom: 1px solid #000000;
border-collapse: collapse;
padding: 0;
border-spacing: 0;
width: 100%;
}
.inner-table5-td1 {
width: 310px;
border-right: 1px solid #000000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 11px;
line-height: 1.4;
color: #666666;
text-align: center;
vertical-align: middle;
}
.inner-table5-td2 {
width:310px;
padding:0;
}
.inner-table6 {
border-collapse: collapse;
border: 0;
width: 100%;
padding: 0;
border-spacing: 0;
}
.inner-table6-td1 {
background-color: #f9f9f9;
width: 37px;
padding: 2px 5px;
border-bottom: 1px solid #000000;
border-right: 1px solid #000000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
line-height: 1.4;
color:#666666;
text-align:center;
}
.inner-table6-td2 {
padding: 2px 5px;
border-bottom: 1px solid #000000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 12px;
line-height: 1.4;
color: #222222;
text-align: left;
}
.inner-table6-td3 {
background-color: #f9f9f9;
width: 37px;
padding: 2px 5px;
border-right: 1px solid #000000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
line-height: 1.4;
color: #666666;
text-align: center;
}
.inner-table6-td4 {
padding: 2px 5px;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 12px;
line-height: 1.4;
color: #222222;
text-align: left;
}
.inner-table6-td5 {
border-left: 1px solid #000;
background-color: #f9f9f9;
width: 20px;
padding: 0;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
line-height: 1.4;
color: #666666;
text-align: center;
vertical-align: middle;
}
.inner-table6-td6 {
width: 280px;
padding: 0;
vertical-align: top;
}
.inner-table6-td7 {
background-color: #f9f9f9;
width: 56px;
padding: 2px 5px;
border-bottom: 1px solid #000; border-bottom: 1px solid #000;
border-right: 1px solid #000;
font-family:'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color:#666666;
text-align: center;
} }
.inner-table6-td7-1 {
background-color: #f9f9f9; .tax-invoice .section-border {
width: 56px;
padding: 2px 5px;
border-right: 1px solid #000;
font-family:'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color:#666666;
text-align: center;
}
.inner-table6-td8 {
padding: 2px 5px;
border-bottom: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: left;
}
.inner-table6-td8-1 {
padding: 2px 5px;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: left;
}
.inner-table6-td9 {
padding: 2px 5px;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: left;
}
.inner-table6-td9-1 {
padding: 2px 5px;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: left;
}
.inner-table6-td10 {
background-color: #f9f9f9;
width:38px;
padding:2px 5px;
border-right:1px solid #000;
border-bottom:1px solid #000;
font-family:'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table6-td10-1 {
background-color: #f9f9f9;
width:38px;
padding:2px 5px;
border-right:1px solid #000;
font-family:'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table6-td11 {
width: 20px;
background-color: #f9f9f9;
padding:0;
border-left: 1px solid #000;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
line-height: 1.3;
color: #666666;
text-align: center;
vertical-align:middle;
}
.inner-table6-td12 {
width: 280px;
padding: 0;
vertical-align: top;
border-right: 1px solid #000;
}
.inner-table6-td13 {
padding: 2px 5px;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: center;
}
.inner-table6-td13-1 {
padding: 2px 5px;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: center;
}
.inner-table6-td14 {
padding: 2px 5px;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: right;
}
.inner-table6-td14-1 {
padding: 2px 5px;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: right;
}
.inner-table6-td15 {
padding: 2px 5px;
border-bottom: 1px solid #000;
font-family:' Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: left;
}
.inner-table6-td15-1 {
padding: 2px 5px;
font-family:' Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: left;
}
.inner-table7 {
border-collapse: collapse; border-collapse: collapse;
border-top: 0.5px solid #000; border-top: 0.5px solid #000;
border-bottom: 2px solid #000; border-bottom: 2px solid #000;
width: 100%;
padding: 0;
border-spacing: 0;
} }
.inner-table7-td1 {
width: 310px; .tax-invoice .bottom-section-border {
padding: 0;
vertical-align: top;
border-left: 0.5px solid #000;
border-right: 0.5px solid #000;
}
.inner-table7-td2 {
width: 310px;
padding: 0;
vertical-align: top;
border-right: 0.5px solid #000;
}
.inner-table8 {
border-collapse: collapse;
border-bottom: 2px solid #000;
border-left: 2px solid #000;
border-right: 2px solid #000;
padding: 0;
width: 100%;
border-spacing: 0;
}
.inner-table8-td1 {
width: 90px;
vertical-align: top;
padding: 0;
}
.inner-table9 {
border-collapse: collapse;
padding: 0;
border: 0;
border-spacing: 0;
width: 90px;
}
.inner-table9-td1 {
padding: 2px 5px;
background-color: #f9f9f9;
border-right: 1px solid #000;
border-bottom: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color:#666666;
text-align:center;
}
.inner-table9-td2 {
width: 30px;
padding: 2px 5px;
border-right: 1px solid #000;
border-bottom: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table9-td2-1 {
width: 30px;
padding: 2px 5px;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table9-td3 {
width: 214px;
vertical-align: top;
padding: 0 0 0 0;
}
.inner-table9-td4 {
width: 102px;
vertical-align: top;
padding: 0 0 0 0;
border-left: 0;
}
.inner-table10 {
border-collapse: collapse;
padding: 0;
border: 0;
border-spacing: 0;
width: 214px;
}
.inner-table10-td1 {
width: 19px;
padding: 2px 5px;
border-right: 1px solid #000;
border-bottom: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table10-td2 {
width: 19px;
padding: 2px 5px;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: center;
}
.inner-table11 {
border-collapse: collapse;
padding: 0;
border: 0;
border-spacing: 0;
width: 102px;
}
.inner-table11-td1 {
padding: 2px 5px;
background-color: #f9f9f9;
border-bottom: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table11-td2 {
padding: 2px 5px;
border-right: 0;
border-bottom: 0;
border-left: 0;
font-family:'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: left;
}
.inner-table12 {
border-collapse: collapse; border-collapse: collapse;
border-left: 2px solid #000; border-left: 2px solid #000;
border-right: 2px solid #000; border-right: 2px solid #000;
border-bottom: 1px solid #000; border-bottom: 1px solid #000;
padding: 0;
border-spacing: 0;
width: 100%;
} }
.inner-table12-td1 {
width: 40px; .tax-invoice .final-section-border {
padding: 0;
vertical-align: top;
border-right:1px solid #000;
}
.inner-table12-td2 {
width: 100%;
padding: 0;
vertical-align: top;
}
.inner-table13 {
border-collapse: collapse;
padding: 0;
border: 0;
border-spacing: 0;
width: 40px;
}
.inner-table13-td1 {
background-color: #f9f9f9;
padding: 2px 5px;
border-bottom: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table13-td2 {
padding: 2px 5px;
border-bottom: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: center;
}
.inner-table13-td3 {
padding: 2px 5px;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align:center;
}
.inner-table14 {
padding: 0;
border: 0;
border-spacing: 0;
width: 100%;
}
.inner-table14-td1{
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size:16px;
line-height: 1.4;
color: #1C1C1C;
font-weight: 700;
padding: 0;
}
.inner-table14-td2 {
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 14px;
line-height: 1.4;
color: #666666;
font-weight: 500;
padding: 4px 0;
}
.inner-table14-td3 {
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 14px;
line-height: 1.4;
color: #666666;
font-weight: 500;
padding: 4px 0 20px 0;
}
.inner-table15 {
border-collapse: collapse; border-collapse: collapse;
border-left: 2px solid #000; border-left: 2px solid #000;
border-right: 2px solid #000; border-right: 2px solid #000;
border-bottom: 2px solid #000; border-bottom: 2px solid #000;
border-top: 0.5px solid #000; border-top: 0.5px solid #000;
padding: 0;
border-spacing: 0;
width: 100%;
} }
.inner-table15-td1 { .tax-invoice .nicepay-logo{
width: 463px; display: block; border: 0; outline: none; text-decoration: none;
padding: 0;
vertical-align: top;
border-right: 1px solid #000;
} }
.inner-table15-td2{ .tax-invoice .nicepay-gray-logo {
padding: 2px 5px;
border-bottom: 1px solid #000;
border-right: 1px solid #000;
background: #F9F9F9;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table15-td3 {
padding: 2px 5px;
border-right: 1px solid #000;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: right;
}
.inner-table15-td4{
padding: 2px 5px;
border-bottom: 1px solid #000;
background: #F9F9F9;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
text-align: center;
}
.inner-table15-td5 {
padding: 2px 5px;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #222222;
text-align: right;
}
.inner-table15-td6 {
width: 157px;
padding: 2px 0;
vertical-align: middle;
text-align: center;
}
.inner-table15-td7 {
display: block;
font-family: 'Spoqa Han Sans Neo', Pretendard, Arial, Helvetica, sans-serif;
font-size: 10px;
color: #666666;
line-height: 1.4;
}
.nicepay-gray-logo {
display: block; display: block;
border: 0; border: 0;
outline: none; outline: none;
text-decoration: none; text-decoration: none;
} }
.tax-invoice-footer { .tax-invoice .tax-invoice-footer {
padding: 0px 30px 10px 10px; padding: 0px 30px 10px 10px;
font-family: Pretendard, Arial, Helvetica, sans-serif; font-family: Pretendard, Arial, Helvetica, sans-serif;
font-size: 12px; font-size: 12px;