Uecko_ERP/modules/customers/src/api/application/create-customer/assembler/create-customers.assembler.ts

40 lines
1.2 KiB
TypeScript
Raw Normal View History

2025-08-26 18:55:59 +00:00
import { CustomerCreationResponseDTO } from "../../../../common";
import { Customer } from "../../../domain";
2025-08-11 17:49:52 +00:00
export class CreateCustomersAssembler {
2025-08-26 18:55:59 +00:00
public toDTO(customer: Customer): CustomerCreationResponseDTO {
2025-08-11 17:49:52 +00:00
return {
2025-08-21 07:44:07 +00:00
id: customer.id.toPrimitive(),
2025-08-26 18:55:59 +00:00
company_id: customer.companyId.toPrimitive(),
reference: customer.reference,
is_company: customer.isCompany,
name: customer.name,
trade_name: customer.tradeName,
tin: customer.tin.toPrimitive(),
2025-08-11 17:49:52 +00:00
2025-08-26 18:55:59 +00:00
email: customer.email.toPrimitive(),
phone: customer.phone.toPrimitive(),
fax: customer.fax.toPrimitive(),
website: customer.website,
2025-08-11 17:49:52 +00:00
2025-08-26 18:55:59 +00:00
default_tax: customer.defaultTax,
legal_record: customer.legalRecord,
lang_code: customer.langCode,
currency_code: customer.currencyCode,
2025-08-11 17:49:52 +00:00
2025-08-26 18:55:59 +00:00
status: customer.isActive ? "active" : "inactive",
street: customer.address.street,
street2: customer.address.street2,
city: customer.address.city,
state: customer.address.state,
postal_code: customer.address.postalCode,
country: customer.address.country,
2025-08-11 17:49:52 +00:00
metadata: {
entity: "customer",
},
};
}
}