Compare commits

...

7 Commits

Author SHA1 Message Date
ragilap 4c08fadb7a fix length type varchar for purchase vehicle_number 2026-04-14 14:46:55 +07:00
Adnan Zahir cae7f3ef63 Merge branch 'development' into 'production'
Development

See merge request mbugroup/lti-api!414
2026-04-14 12:01:04 +07:00
Adnan Zahir 42793d94bd Merge branch 'development' into 'production'
Development

See merge request mbugroup/lti-api!412
2026-04-13 14:12:48 +07:00
Adnan Zahir 1369bf0e36 Merge branch 'development' into 'production'
Development

See merge request mbugroup/lti-api!411
2026-04-11 14:08:35 +07:00
Adnan Zahir 361d14bd3e Merge branch 'development' into 'production'
Development

See merge request mbugroup/lti-api!406
2026-04-10 10:50:07 +07:00
Adnan Zahir 7923352535 Merge branch 'development' into 'production'
Development

See merge request mbugroup/lti-api!401
2026-04-07 22:58:38 +07:00
Adnan Zahir 010240066a Merge branch 'development' into 'production'
Development

See merge request mbugroup/lti-api!399
2026-04-07 16:52:45 +07:00
4 changed files with 17 additions and 2 deletions
@@ -0,0 +1,2 @@
ALTER TABLE purchase_items
ALTER COLUMN vehicle_number TYPE VARCHAR(10) USING LEFT(vehicle_number, 10);
@@ -0,0 +1,2 @@
ALTER TABLE purchase_items
ALTER COLUMN vehicle_number TYPE VARCHAR(15) USING vehicle_number;
@@ -10,6 +10,7 @@ import (
"strconv"
"strings"
"time"
"unicode/utf8"
commonRepo "gitlab.com/mbugroup/lti-api.git/internal/common/repository"
commonSvc "gitlab.com/mbugroup/lti-api.git/internal/common/service"
@@ -47,6 +48,7 @@ type PurchaseService interface {
const (
priceTolerance = 0.0001
purchaseVehicleNumberMaxLength = 15
)
type purchaseService struct {
@@ -1158,6 +1160,15 @@ func (s *purchaseService) ReceiveProducts(c *fiber.Ctx, id uint, req *validation
if payload.VehicleNumber != nil {
val := strings.TrimSpace(*payload.VehicleNumber)
if val != "" {
if utf8.RuneCountInString(val) > purchaseVehicleNumberMaxLength {
return nil, utils.BadRequest(
fmt.Sprintf(
"vehicle_number for item %d must be at most %d characters",
payload.PurchaseItemID,
purchaseVehicleNumberMaxLength,
),
)
}
vehicleNumber = &val
} else {
clearVehicle = true
@@ -45,7 +45,7 @@ type ReceivePurchaseItemRequest struct {
TransportPerItem *float64 `form:"transport_per_item" json:"transport_per_item,omitempty" validate:"omitempty,gte=0"`
TravelNumber *string `form:"travel_number" json:"travel_number" validate:"omitempty,max=100"`
TravelDocumentPath *string `form:"travel_document_path" json:"travel_document_path" validate:"omitempty,max=1024"`
VehicleNumber *string `form:"vehicle_number" json:"vehicle_number" validate:"omitempty,max=100"`
VehicleNumber *string `form:"vehicle_number" json:"vehicle_number" validate:"omitempty,max=15"`
ReceivedQty *float64 `form:"received_qty" json:"received_qty" validate:"omitempty,gte=0"`
}