Representa un producto o servicio con toda su información, incluyendo precios, catálogos del SAT y los impuestos aplicables. Los valores de catálogo tienen un valor por defecto en caso de no ser especificados: satUnitMeasurementId : "H87" satTaxObjectId</c
| 23 | * <p>Esta clase extiende de {@link BaseDto} que a su vez extiende de {@link AuditableDto}.</p> |
| 24 | */ |
| 25 | public class Product extends BaseDto { |
| 26 | |
| 27 | /** |
| 28 | * Descripción o nombre del producto (requerido). |
| 29 | */ |
| 30 | private String description; |
| 31 | |
| 32 | /** |
| 33 | * Precio unitario del producto sin impuestos (requerido). |
| 34 | */ |
| 35 | @JsonSerialize(using = BigDecimalSerializer.class) |
| 36 | private BigDecimal unitPrice; |
| 37 | |
| 38 | /** |
| 39 | * Código de la unidad de medida. Catálogo del SAT c_ClaveUnidad. |
| 40 | * Valor por defecto: "H87". |
| 41 | */ |
| 42 | @JsonProperty(defaultValue = "H87") |
| 43 | private String satUnitMeasurementId; |
| 44 | |
| 45 | /** |
| 46 | * Objeto expandido del catálogo de unidad de medida. |
| 47 | */ |
| 48 | private CatalogDto satUnitMeasurement; |
| 49 | |
| 50 | /** |
| 51 | * Código que identifica las obligaciones fiscales del producto. Catálogo del SAT c_ObjetoImp. |
| 52 | * Valor por defecto: "02". |
| 53 | */ |
| 54 | @JsonProperty(defaultValue = "02") |
| 55 | private String satTaxObjectId; |
| 56 | |
| 57 | /** |
| 58 | * Objeto expandido del catálogo de obligaciones fiscales. |
| 59 | */ |
| 60 | private CatalogDto satTaxObject; |
| 61 | |
| 62 | /** |
| 63 | * Código del producto o servicio. Catálogo del SAT c_ClaveProdServ. |
| 64 | * Valor por defecto: "01010101". |
| 65 | */ |
| 66 | @JsonProperty(defaultValue = "01010101") |
| 67 | private String satProductCodeId; |
| 68 | |
| 69 | /** |
| 70 | * Objeto expandido del catálogo del código del producto. |
| 71 | */ |
| 72 | private CatalogDto satProductCode; |
| 73 | |
| 74 | /** |
| 75 | * Impuestos aplicables al producto. |
| 76 | */ |
| 77 | private List<ProductTax> productTaxes; |
| 78 | |
| 79 | /** |
| 80 | * Constructor por defecto. |
| 81 | */ |
| 82 | public Product() { |
nothing calls this directly
no outgoing calls
no test coverage detected