package dto type BasicPricingComponentRequest struct { CostComponentID string `json:"cost_component_id" binding:"required"` Value float32 `json:"value"` } type BasicPricingComponentResponse struct { ID string `json:"id"` CostComponentID *string `json:"cost_component_id"` Value *float32 `json:"value"` } type CreateBasicPricingRequest struct { ProvinceSourceID string `json:"province_source_id" binding:"required"` CitySourceID string `json:"city_source_id" binding:"required"` DistrictSourceID string `json:"district_source_id" binding:"required"` SubdistrictSourceID string `json:"subdistrict_source_id" binding:"required"` PostalCodeSourceID string `json:"postal_code_source_id" binding:"required"` ProvinceDestinationID string `json:"province_destination_id" binding:"required"` CityDestinationID string `json:"city_destination_id" binding:"required"` DistrictDestinationID string `json:"district_destination_id" binding:"required"` SubdistrictDestinationID string `json:"subdistrict_destination_id" binding:"required"` PostalCodeDestinationID string `json:"postal_code_destination_id" binding:"required"` PackageTypeID string `json:"package_type_id" binding:"required"` ModaID string `json:"moda_id" binding:"required"` LeadTime string `json:"lead_time"` MinimumWeight float32 `json:"minimum_weight"` Components []BasicPricingComponentRequest `json:"components" binding:"required,dive"` } type CreateBasicPricingResponse struct { ID string `json:"id"` ProvinceSourceID *string `json:"province_source_id"` CitySourceID *string `json:"city_source_id"` DistrictSourceID *string `json:"district_source_id"` SubdistrictSourceID *string `json:"subdistrict_source_id"` PostalCodeSourceID *string `json:"postal_code_source_id"` ProvinceDestinationID *string `json:"province_destination_id"` CityDestinationID *string `json:"city_destination_id"` DistrictDestinationID *string `json:"district_destination_id"` SubdistrictDestinationID *string `json:"subdistrict_destination_id"` PostalCodeDestinationID *string `json:"postal_code_destination_id"` PackageTypeID *string `json:"package_type_id"` ModaID *string `json:"moda_id"` LeadTime *string `json:"lead_time"` MinimumWeight *float32 `json:"minimum_weight"` MerchantID *string `json:"merchant_id"` Components []BasicPricingComponentResponse `json:"components"` } type BasicPricingFilterAllRequest struct { ID string `json:"id" form:"id"` ProvinceSourceID string `json:"province_source_id" form:"province_source_id"` CitySourceID string `json:"city_source_id" form:"city_source_id"` DistrictSourceID string `json:"district_source_id" form:"district_source_id"` SubdistrictSourceID string `json:"subdistrict_source_id" form:"subdistrict_source_id"` PostalCodeSourceID string `json:"postal_code_source_id" form:"postal_code_source_id"` ProvinceDestinationID string `json:"province_destination_id" form:"province_destination_id"` CityDestinationID string `json:"city_destination_id" form:"city_destination_id"` DistrictDestinationID string `json:"district_destination_id" form:"district_destination_id"` SubdistrictDestinationID string `json:"subdistrict_destination_id" form:"subdistrict_destination_id"` PostalCodeDestinationID string `json:"postal_code_destination_id" form:"postal_code_destination_id"` PackageTypeID string `json:"package_type_id" form:"package_type_id"` ModaID string `json:"moda_id" form:"moda_id"` MerchantID string `json:"merchant_id" form:"merchant_id"` }