From 36dd83d6248aaa6a5451e821f44b51116edd065a Mon Sep 17 00:00:00 2001 From: Habib Fatkhul Rohman Date: Tue, 11 Nov 2025 10:26:30 +0700 Subject: [PATCH] feat(product): Update Product DTO and service to handle optional CategoryID and UomID --- modules/product/dto/product_dto.go | 6 +++--- modules/product/service/product_service.go | 10 ++++++++-- 2 files changed, 11 insertions(+), 5 deletions(-) diff --git a/modules/product/dto/product_dto.go b/modules/product/dto/product_dto.go index da0a57d..71c4dfa 100644 --- a/modules/product/dto/product_dto.go +++ b/modules/product/dto/product_dto.go @@ -55,9 +55,9 @@ type ( // LeadTime int `json:"lead_time"` // MultiplyRate string `json:"multiply_rate"` // DivideRate float64 `json:"divide_rate"` - ClientID string `json:"client_id" binding:"required"` - // CategoryID string `json:"category_id"` - // UomID string `json:"uom_id"` + ClientID string `json:"client_id" binding:"required"` + CategoryID *string `json:"category_id"` + UomID *string `json:"uom_id"` // DimUomID string `json:"dim_uom_id"` // WeightUomID string `json:"weight_uom_id"` // VolumeUomID string `json:"volume_uom_id"` diff --git a/modules/product/service/product_service.go b/modules/product/service/product_service.go index b8e1616..5554654 100644 --- a/modules/product/service/product_service.go +++ b/modules/product/service/product_service.go @@ -107,8 +107,14 @@ func (s *productService) Create(ctx context.Context, req dto.ProductCreateReques } // UUID fields product.ClientID = parseUUID(req.ClientID) - // product.CategoryID = parseUUID(req.CategoryID) - // product.UomID = parseUUID(req.UomID) + if req.CategoryID != nil { + id := parseUUID(*req.CategoryID) + product.CategoryID = &id + } + if req.UomID != nil { + id := parseUUID(*req.UomID) + product.UomID = &id + } // product.DimUomID = parseUUID(req.DimUomID) // product.WeightUomID = parseUUID(req.WeightUomID) // product.VolumeUomID = parseUUID(req.VolumeUomID)