Compare commits

...

3 Commits

Author SHA1 Message Date
b52ca83496 . 2026-06-14 21:40:57 +02:00
789fd4ec3e . 2026-06-14 21:15:57 +02:00
e5fbad0915 . 2026-06-14 21:04:24 +02:00
14 changed files with 111 additions and 81 deletions

View File

@ -48,20 +48,28 @@ export const paymentMethodsRouter = (params: StartParams) => {
// ---------------------------------------------- // ----------------------------------------------
router.get("/", validateRequest(ListPaymentMethodsRequestSchema, "query"), (req, res, next) => { router.get(
const controller = new ListPaymentMethodsController(deps.useCases.listPaymentMethods()); "/",
return controller.execute(req, res, next); validateRequest(ListPaymentMethodsRequestSchema, "params"),
}); (req: Request, res: Response, next: NextFunction) => {
const controller = new ListPaymentMethodsController(deps.useCases.listPaymentMethods());
return controller.execute(req, res, next);
}
);
router.post("/", validateRequest(CreatePaymentMethodRequestSchema, "body"), (req, res, next) => { router.post(
const controller = new CreatePaymentMethodController(deps.useCases.createPaymentMethod()); "/",
return controller.execute(req, res, next); validateRequest(CreatePaymentMethodRequestSchema, "body"),
}); (req: Request, res: Response, next: NextFunction) => {
const controller = new CreatePaymentMethodController(deps.useCases.createPaymentMethod());
return controller.execute(req, res, next);
}
);
router.get( router.get(
"/:payment_method_id", "/:payment_method_id",
validateRequest(GetPaymentMethodByIdRequestSchema, "params"), validateRequest(GetPaymentMethodByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new GetPaymentMethodByIdController(deps.useCases.getPaymentMethodById()); const controller = new GetPaymentMethodByIdController(deps.useCases.getPaymentMethodById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -70,7 +78,7 @@ export const paymentMethodsRouter = (params: StartParams) => {
router.delete( router.delete(
"/:payment_method_id", "/:payment_method_id",
validateRequest(DeletePaymentMethodByIdRequestSchema, "params"), validateRequest(DeletePaymentMethodByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new DeletePaymentMethodByIdController( const controller = new DeletePaymentMethodByIdController(
deps.useCases.deletePaymentMethodById() deps.useCases.deletePaymentMethodById()
); );
@ -82,7 +90,7 @@ export const paymentMethodsRouter = (params: StartParams) => {
"/:payment_method_id", "/:payment_method_id",
validateRequest(UpdatePaymentMethodByIdParamsRequestSchema, "params"), validateRequest(UpdatePaymentMethodByIdParamsRequestSchema, "params"),
validateRequest(UpdatePaymentMethodByIdRequestSchema, "body"), validateRequest(UpdatePaymentMethodByIdRequestSchema, "body"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new UpdatePaymentMethodByIdController( const controller = new UpdatePaymentMethodByIdController(
deps.useCases.updatePaymentMethodById() deps.useCases.updatePaymentMethodById()
); );
@ -93,7 +101,7 @@ export const paymentMethodsRouter = (params: StartParams) => {
router.patch( router.patch(
"/:payment_method_id/disable", "/:payment_method_id/disable",
validateRequest(GetPaymentMethodByIdRequestSchema, "params"), validateRequest(GetPaymentMethodByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new DisablePaymentMethodByIdController( const controller = new DisablePaymentMethodByIdController(
deps.useCases.disablePaymentMethodById() deps.useCases.disablePaymentMethodById()
); );
@ -104,7 +112,7 @@ export const paymentMethodsRouter = (params: StartParams) => {
router.patch( router.patch(
"/:payment_method_id/enable", "/:payment_method_id/enable",
validateRequest(GetPaymentMethodByIdRequestSchema, "params"), validateRequest(GetPaymentMethodByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new EnablePaymentMethodByIdController( const controller = new EnablePaymentMethodByIdController(
deps.useCases.enablePaymentMethodById() deps.useCases.enablePaymentMethodById()
); );

View File

@ -42,20 +42,28 @@ export const paymentTermsRouter = (params: StartParams) => {
requireCompanyContext()(req as RequestWithAuth, res, next), requireCompanyContext()(req as RequestWithAuth, res, next),
]); ]);
router.get("/", validateRequest(ListPaymentTermsRequestSchema, "query"), (req, res, next) => { router.get(
const controller = new ListPaymentTermsController(deps.useCases.listPaymentTerms()); "/",
return controller.execute(req, res, next); validateRequest(ListPaymentTermsRequestSchema, "params"),
}); (req: Request, res: Response, next: NextFunction) => {
const controller = new ListPaymentTermsController(deps.useCases.listPaymentTerms());
return controller.execute(req, res, next);
}
);
router.post("/", validateRequest(CreatePaymentTermRequestSchema, "body"), (req, res, next) => { router.post(
const controller = new CreatePaymentTermController(deps.useCases.createPaymentTerm()); "/",
return controller.execute(req, res, next); validateRequest(CreatePaymentTermRequestSchema, "body"),
}); (req: Request, res: Response, next: NextFunction) => {
const controller = new CreatePaymentTermController(deps.useCases.createPaymentTerm());
return controller.execute(req, res, next);
}
);
router.get( router.get(
"/:payment_term_id", "/:payment_term_id",
validateRequest(GetPaymentTermByIdRequestSchema, "params"), validateRequest(GetPaymentTermByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new GetPaymentTermByIdController(deps.useCases.getPaymentTermById()); const controller = new GetPaymentTermByIdController(deps.useCases.getPaymentTermById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -64,7 +72,7 @@ export const paymentTermsRouter = (params: StartParams) => {
router.delete( router.delete(
"/:payment_term_id", "/:payment_term_id",
validateRequest(DeletePaymentTermByIdRequestSchema, "params"), validateRequest(DeletePaymentTermByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new DeletePaymentTermByIdController(deps.useCases.deletePaymentTermById()); const controller = new DeletePaymentTermByIdController(deps.useCases.deletePaymentTermById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -74,7 +82,7 @@ export const paymentTermsRouter = (params: StartParams) => {
"/:payment_term_id", "/:payment_term_id",
validateRequest(UpdatePaymentTermByIdParamsRequestSchema, "params"), validateRequest(UpdatePaymentTermByIdParamsRequestSchema, "params"),
validateRequest(UpdatePaymentTermByIdRequestSchema, "body"), validateRequest(UpdatePaymentTermByIdRequestSchema, "body"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new UpdatePaymentTermByIdController(deps.useCases.updatePaymentTermById()); const controller = new UpdatePaymentTermByIdController(deps.useCases.updatePaymentTermById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -83,7 +91,7 @@ export const paymentTermsRouter = (params: StartParams) => {
router.patch( router.patch(
"/:payment_term_id/disable", "/:payment_term_id/disable",
validateRequest(GetPaymentTermByIdRequestSchema, "params"), validateRequest(GetPaymentTermByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new DisablePaymentTermByIdController( const controller = new DisablePaymentTermByIdController(
deps.useCases.disablePaymentTermById() deps.useCases.disablePaymentTermById()
); );
@ -94,7 +102,7 @@ export const paymentTermsRouter = (params: StartParams) => {
router.patch( router.patch(
"/:payment_term_id/enable", "/:payment_term_id/enable",
validateRequest(GetPaymentTermByIdRequestSchema, "params"), validateRequest(GetPaymentTermByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new EnablePaymentTermByIdController(deps.useCases.enablePaymentTermById()); const controller = new EnablePaymentTermByIdController(deps.useCases.enablePaymentTermById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }

View File

@ -44,8 +44,8 @@ export const taxDefinitionsRouter = (params: StartParams) => {
router.get( router.get(
"/", "/",
validateRequest(ListTaxDefinitionsRequestSchema, "query"), validateRequest(ListTaxDefinitionsRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new ListTaxDefinitionsController(deps.useCases.listTaxDefinitions()); const controller = new ListTaxDefinitionsController(deps.useCases.listTaxDefinitions());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -54,7 +54,7 @@ export const taxDefinitionsRouter = (params: StartParams) => {
router.post( router.post(
"/", "/",
validateRequest(CreateTaxDefinitionRequestSchema, "body"), validateRequest(CreateTaxDefinitionRequestSchema, "body"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new CreateTaxDefinitionController(deps.useCases.createTaxDefinition()); const controller = new CreateTaxDefinitionController(deps.useCases.createTaxDefinition());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -63,10 +63,8 @@ export const taxDefinitionsRouter = (params: StartParams) => {
router.get( router.get(
"/:tax_definition_id", "/:tax_definition_id",
validateRequest(GetTaxDefinitionByIdRequestSchema, "params"), validateRequest(GetTaxDefinitionByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new GetTaxDefinitionByIdController( const controller = new GetTaxDefinitionByIdController(deps.useCases.getTaxDefinitionById());
deps.useCases.getTaxDefinitionById()
);
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
); );
@ -74,7 +72,7 @@ export const taxDefinitionsRouter = (params: StartParams) => {
router.delete( router.delete(
"/:tax_definition_id", "/:tax_definition_id",
validateRequest(DeleteTaxDefinitionByIdRequestSchema, "params"), validateRequest(DeleteTaxDefinitionByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new DeleteTaxDefinitionByIdController( const controller = new DeleteTaxDefinitionByIdController(
deps.useCases.deleteTaxDefinitionById() deps.useCases.deleteTaxDefinitionById()
); );
@ -86,7 +84,7 @@ export const taxDefinitionsRouter = (params: StartParams) => {
"/:tax_definition_id", "/:tax_definition_id",
validateRequest(UpdateTaxDefinitionByIdParamsRequestSchema, "params"), validateRequest(UpdateTaxDefinitionByIdParamsRequestSchema, "params"),
validateRequest(UpdateTaxDefinitionByIdRequestSchema, "body"), validateRequest(UpdateTaxDefinitionByIdRequestSchema, "body"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new UpdateTaxDefinitionByIdController( const controller = new UpdateTaxDefinitionByIdController(
deps.useCases.updateTaxDefinitionById() deps.useCases.updateTaxDefinitionById()
); );
@ -97,7 +95,7 @@ export const taxDefinitionsRouter = (params: StartParams) => {
router.patch( router.patch(
"/:tax_definition_id/disable", "/:tax_definition_id/disable",
validateRequest(GetTaxDefinitionByIdRequestSchema, "params"), validateRequest(GetTaxDefinitionByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new DisableTaxDefinitionByIdController( const controller = new DisableTaxDefinitionByIdController(
deps.useCases.disableTaxDefinitionById() deps.useCases.disableTaxDefinitionById()
); );
@ -108,7 +106,7 @@ export const taxDefinitionsRouter = (params: StartParams) => {
router.patch( router.patch(
"/:tax_definition_id/enable", "/:tax_definition_id/enable",
validateRequest(GetTaxDefinitionByIdRequestSchema, "params"), validateRequest(GetTaxDefinitionByIdRequestSchema, "params"),
(req, res, next) => { (req: Request, res: Response, next: NextFunction) => {
const controller = new EnableTaxDefinitionByIdController( const controller = new EnableTaxDefinitionByIdController(
deps.useCases.enableTaxDefinitionById() deps.useCases.enableTaxDefinitionById()
); );

View File

@ -42,29 +42,41 @@ export const taxRegimesRouter = (params: StartParams) => {
requireCompanyContext()(req as RequestWithAuth, res, next), requireCompanyContext()(req as RequestWithAuth, res, next),
]); ]);
router.get("/", validateRequest(ListTaxRegimesRequestSchema, "query"), (req, res, next) => { router.get(
const controller = new ListTaxRegimesController(deps.useCases.listTaxRegimes()); "/",
return controller.execute(req, res, next); //checkTabContext,
}); validateRequest(ListTaxRegimesRequestSchema, "params"),
async (req: Request, res: Response, next: NextFunction) => {
router.post("/", validateRequest(CreateTaxRegimeRequestSchema, "body"), (req, res, next) => { const controller = new ListTaxRegimesController(deps.useCases.listTaxRegimes());
const controller = new CreateTaxRegimeController(deps.useCases.createTaxRegime()); return controller.execute(req, res, next);
return controller.execute(req, res, next); }
}); );
router.get( router.get(
"/:tax_regime_id", "/:tax_regime_id",
//checkTabContext,
validateRequest(GetTaxRegimeByIdRequestSchema, "params"), validateRequest(GetTaxRegimeByIdRequestSchema, "params"),
(req, res, next) => { async (req: Request, res: Response, next: NextFunction) => {
const controller = new GetTaxRegimeByIdController(deps.useCases.getTaxRegimeById()); const controller = new GetTaxRegimeByIdController(deps.useCases.getTaxRegimeById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
); );
router.post(
"/",
//checkTabContext,
validateRequest(CreateTaxRegimeRequestSchema, "body"),
async (req: Request, res: Response, next: NextFunction) => {
const controller = new CreateTaxRegimeController(deps.useCases.createTaxRegime());
return controller.execute(req, res, next);
}
);
router.delete( router.delete(
"/:tax_regime_id", "/:tax_regime_id",
//checkTabContext,
validateRequest(DeleteTaxRegimeByIdRequestSchema, "params"), validateRequest(DeleteTaxRegimeByIdRequestSchema, "params"),
(req, res, next) => { async (req: Request, res: Response, next: NextFunction) => {
const controller = new DeleteTaxRegimeByIdController(deps.useCases.deleteTaxRegimeById()); const controller = new DeleteTaxRegimeByIdController(deps.useCases.deleteTaxRegimeById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -72,9 +84,10 @@ export const taxRegimesRouter = (params: StartParams) => {
router.put( router.put(
"/:tax_regime_id", "/:tax_regime_id",
//checkTabContext,
validateRequest(UpdateTaxRegimeByIdParamsRequestSchema, "params"), validateRequest(UpdateTaxRegimeByIdParamsRequestSchema, "params"),
validateRequest(UpdateTaxRegimeByIdRequestSchema, "body"), validateRequest(UpdateTaxRegimeByIdRequestSchema, "body"),
(req, res, next) => { async (req: Request, res: Response, next: NextFunction) => {
const controller = new UpdateTaxRegimeByIdController(deps.useCases.updateTaxRegimeById()); const controller = new UpdateTaxRegimeByIdController(deps.useCases.updateTaxRegimeById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -82,8 +95,9 @@ export const taxRegimesRouter = (params: StartParams) => {
router.patch( router.patch(
"/:tax_regime_id/disable", "/:tax_regime_id/disable",
//checkTabContext,
validateRequest(GetTaxRegimeByIdRequestSchema, "params"), validateRequest(GetTaxRegimeByIdRequestSchema, "params"),
(req, res, next) => { async (req: Request, res: Response, next: NextFunction) => {
const controller = new DisableTaxRegimeByIdController(deps.useCases.disableTaxRegimeById()); const controller = new DisableTaxRegimeByIdController(deps.useCases.disableTaxRegimeById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }
@ -91,8 +105,9 @@ export const taxRegimesRouter = (params: StartParams) => {
router.patch( router.patch(
"/:tax_regime_id/enable", "/:tax_regime_id/enable",
//checkTabContext,
validateRequest(GetTaxRegimeByIdRequestSchema, "params"), validateRequest(GetTaxRegimeByIdRequestSchema, "params"),
(req, res, next) => { async (req: Request, res: Response, next: NextFunction) => {
const controller = new EnableTaxRegimeByIdController(deps.useCases.enableTaxRegimeById()); const controller = new EnableTaxRegimeByIdController(deps.useCases.enableTaxRegimeById());
return controller.execute(req, res, next); return controller.execute(req, res, next);
} }

View File

@ -39,10 +39,10 @@ export default (database: Sequelize) => {
code: { code: {
type: DataTypes.STRING(2), type: DataTypes.STRING(2),
allowNull: false, allowNull: false,
unique: true, unique: false,
}, },
description: { description: {
type: DataTypes.STRING, type: DataTypes.STRING(500),
allowNull: false, allowNull: false,
}, },
is_active: { is_active: {
@ -71,8 +71,8 @@ export default (database: Sequelize) => {
indexes: [ indexes: [
{ {
name: "idx_tax_regimes_code", name: "idx_tax_regimes_company_id_code",
fields: ["code", "deleted_at"], fields: ["company_id", "code", "deletedAt"],
unique: true, unique: true,
}, },
], ],

View File

@ -4,7 +4,7 @@ import type { TaxRegimeListRow } from "../shared";
export const getTaxRegimeOptions = (taxRegimes: TaxRegimeListRow[]): SelectFieldItem[] => { export const getTaxRegimeOptions = (taxRegimes: TaxRegimeListRow[]): SelectFieldItem[] => {
return taxRegimes.map((taxRegime) => ({ return taxRegimes.map((taxRegime) => ({
value: taxRegime.id, value: taxRegime.code,
label: taxRegime.description, label: taxRegime.description,
})); }));
}; };

View File

@ -4,10 +4,10 @@ import { Maybe, Result } from "@repo/rdx-utils";
import type { Proforma } from "../../../../domain"; import type { Proforma } from "../../../../domain";
import type { import type {
ProformaFullReadModel, InvocieTaxRegimeFullReadModel,
ProformaPaymentMethodReadModel, InvoicePaymentMethodReadModel,
ProformaTaxRegimeFullReadModel, } from "../../../common/models";
} from "../../models"; import type { ProformaFullReadModel } from "../../models";
export interface IProformaFullReadModelAssembler { export interface IProformaFullReadModelAssembler {
assemble(params: { assemble(params: {
@ -62,7 +62,7 @@ export class ProformaFullReadModelAssembler implements IProformaFullReadModelAss
companyId: UniqueID; companyId: UniqueID;
proforma: Proforma; proforma: Proforma;
transaction?: unknown; transaction?: unknown;
}): Promise<Result<Maybe<ProformaPaymentMethodReadModel>, Error>> { }): Promise<Result<Maybe<InvoicePaymentMethodReadModel>, Error>> {
if (params.proforma.paymentMethodId.isNone()) { if (params.proforma.paymentMethodId.isNone()) {
return Result.ok(Maybe.none()); return Result.ok(Maybe.none());
} }
@ -82,7 +82,7 @@ export class ProformaFullReadModelAssembler implements IProformaFullReadModelAss
if (result.data.isNone()) { if (result.data.isNone()) {
return Result.ok( return Result.ok(
Maybe.some({ Maybe.some({
id: paymentMethodId.toString(), id: paymentMethodId,
name: "", name: "",
description: Maybe.none(), description: Maybe.none(),
}) })
@ -93,7 +93,7 @@ export class ProformaFullReadModelAssembler implements IProformaFullReadModelAss
return Result.ok( return Result.ok(
Maybe.some({ Maybe.some({
id: paymentMethod.id.toString(), id: paymentMethod.id,
name: paymentMethod.name.toString(), name: paymentMethod.name.toString(),
description: paymentMethod.description ?? null, description: paymentMethod.description ?? null,
}) })
@ -104,7 +104,7 @@ export class ProformaFullReadModelAssembler implements IProformaFullReadModelAss
companyId: UniqueID; companyId: UniqueID;
proforma: Proforma; proforma: Proforma;
transaction?: unknown; transaction?: unknown;
}): Promise<Result<Maybe<ProformaTaxRegimeFullReadModel>, Error>> { }): Promise<Result<Maybe<InvocieTaxRegimeFullReadModel>, Error>> {
if (params.proforma.taxRegimeCode.isNone()) { if (params.proforma.taxRegimeCode.isNone()) {
return Result.ok(Maybe.none()); return Result.ok(Maybe.none());
} }

View File

@ -77,6 +77,8 @@ export class ProformaUpdater implements IProformaUpdater {
}): Promise<Result<ProformaPatchProps, Error>> { }): Promise<Result<ProformaPatchProps, Error>> {
const { patch, companyId, currentInvoiceDate } = params; const { patch, companyId, currentInvoiceDate } = params;
console.log(patch);
if (patch.taxRegimeCode !== undefined) { if (patch.taxRegimeCode !== undefined) {
const taxRegimeResult = await this.deps.taxResolver.ensureTaxRegimeByCode({ const taxRegimeResult = await this.deps.taxResolver.ensureTaxRegimeByCode({
companyId, companyId,

View File

@ -1,5 +1,5 @@
import type { ISnapshotBuilder } from "@erp/core/api"; import type { ISnapshotBuilder } from "@erp/core/api";
import { maybeToNullable } from "@repo/rdx-ddd"; import { maybeToEmptyString, maybeToNullable } from "@repo/rdx-ddd";
import type { GetProformaByIdResponseDTO } from "../../../../../common"; import type { GetProformaByIdResponseDTO } from "../../../../../common";
import type { ProformaFullReadModel } from "../../models"; import type { ProformaFullReadModel } from "../../models";
@ -21,7 +21,7 @@ export class ProformaFullSnapshotBuilder implements IProformaFullSnapshotBuilder
) {} ) {}
toOutput(source: ProformaFullReadModel): ProformaFullSnapshot { toOutput(source: ProformaFullReadModel): ProformaFullSnapshot {
const { proforma } = source; const { proforma, paymentMethod, taxRegime } = source;
const calculationContext = { const calculationContext = {
languageCode: proforma.languageCode, languageCode: proforma.languageCode,
@ -58,19 +58,16 @@ export class ProformaFullSnapshotBuilder implements IProformaFullSnapshotBuilder
linked_invoice_id: maybeToNullable(proforma.linkedInvoiceId, (value) => value.toString()), linked_invoice_id: maybeToNullable(proforma.linkedInvoiceId, (value) => value.toString()),
/*payment_method: { payment_method: maybeToNullable(paymentMethod, (paymentMethod) => ({
id: source.paymentMethod., id: paymentMethod.id.toString(),
name: value.name, name: paymentMethod.name,
description: maybeToNullable(value.description, (description) => description), description: maybeToEmptyString(paymentMethod.description),
}, })),
tax_regime: maybeToNullable(taxRegime, (taxRegime) => taxRegime),
payment_term: null, payment_term: null,
tax_regime: {
code: value.code,
description: maybeToNullable(value.description, (description) => description),
},*/
subtotal_amount: allTotals.subtotalAmount.toObjectString(), subtotal_amount: allTotals.subtotalAmount.toObjectString(),
items_discount_amount: allTotals.itemsDiscountAmount.toObjectString(), items_discount_amount: allTotals.itemsDiscountAmount.toObjectString(),

View File

@ -315,7 +315,7 @@ export default (database: Sequelize) => {
}, },
tax_regime_code: { tax_regime_code: {
type: DataTypes.STRING(), type: DataTypes.STRING(2),
allowNull: true, allowNull: true,
}, },

View File

@ -11,6 +11,7 @@ import { useMemo } from "react";
export const useUpdateProformaPaymentController = () => { export const useUpdateProformaPaymentController = () => {
const paymentMethodsQuery = usePaymentMethodsListQuery({ const paymentMethodsQuery = usePaymentMethodsListQuery({
criteria: { criteria: {
pageSize: 999,
filters: [ filters: [
{ {
field: "isActive", field: "isActive",

View File

@ -46,6 +46,7 @@ export const useUpdateProformaTaxController = ({ form }: UseUpdateProformaTaxCon
const taxRegimesQuery = useTaxRegimesListQuery({ const taxRegimesQuery = useTaxRegimesListQuery({
criteria: { criteria: {
pageSize: 999,
filters: [ filters: [
{ {
field: "isActive", field: "isActive",

View File

@ -17,7 +17,7 @@ import {
SelectTrigger, SelectTrigger,
SelectValue, SelectValue,
} from "@repo/shadcn-ui/components"; } from "@repo/shadcn-ui/components";
import { FileText } from "lucide-react"; import { LandmarkIcon } from "lucide-react";
import { useTranslation } from "../../../../i18n"; import { useTranslation } from "../../../../i18n";
@ -29,7 +29,7 @@ export const ProformaTaxesCard = () => {
<CardHeader className="px-6 pb-7 pt-3"> <CardHeader className="px-6 pb-7 pt-3">
<div className="flex items-start gap-3"> <div className="flex items-start gap-3">
<div className="flex size-12 shrink-0 items-center justify-center rounded-lg bg-primary-50 text-primary-600"> <div className="flex size-12 shrink-0 items-center justify-center rounded-lg bg-primary-50 text-primary-600">
<FileText aria-hidden="true" className="size-5" /> <LandmarkIcon aria-hidden="true" className="size-5" />
</div> </div>
<div className="space-y-1"> <div className="space-y-1">

View File

@ -7,7 +7,7 @@ import {
} from "@repo/rdx-ui/components"; } from "@repo/rdx-ui/components";
import { PercentageHelper } from "@repo/rdx-utils"; import { PercentageHelper } from "@repo/rdx-utils";
import { Separator } from "@repo/shadcn-ui/components"; import { Separator } from "@repo/shadcn-ui/components";
import { ReceiptTextIcon } from "lucide-react"; import { LandmarkIcon } from "lucide-react";
import { useTranslation } from "../../../../i18n"; import { useTranslation } from "../../../../i18n";
import { import {
@ -45,7 +45,7 @@ export const ProformaUpdateTaxEditor = ({
"Configuración fiscal de la proforma" "Configuración fiscal de la proforma"
)} )}
disabled={disabled} disabled={disabled}
icon={<ReceiptTextIcon className="size-5" />} icon={<LandmarkIcon className="size-5" />}
title={t("form_groups.proformas.taxes.title", "Impuestos y retenciones")} title={t("form_groups.proformas.taxes.title", "Impuestos y retenciones")}
> >
<FormSectionGrid> <FormSectionGrid>