Update template email
This commit is contained in:
@@ -76,11 +76,9 @@ func (s *OrderService) CreateOrder(ctx mycontext.Context, req *entity.OrderReque
|
||||
return nil, err
|
||||
}
|
||||
|
||||
var siteID int64
|
||||
productMap := make(map[int64]*entity.ProductDB)
|
||||
for _, product := range products {
|
||||
productMap[product.ID] = product
|
||||
siteID = product.SiteID
|
||||
}
|
||||
|
||||
totalAmount := 0.0
|
||||
@@ -93,32 +91,16 @@ func (s *OrderService) CreateOrder(ctx mycontext.Context, req *entity.OrderReque
|
||||
totalAmount += product.Price * float64(item.Quantity)
|
||||
}
|
||||
|
||||
parsedTime, err := time.Parse("2006-01-02", req.VisitDate)
|
||||
if err != nil {
|
||||
fmt.Println("Error parsing date:", err)
|
||||
return nil, errors.New("visit date not defined")
|
||||
}
|
||||
|
||||
metadata, err := json.Marshal(map[string]string{
|
||||
"bank_code": req.BankCode,
|
||||
"bank_name": req.BankName,
|
||||
})
|
||||
|
||||
order := &entity.Order{
|
||||
PartnerID: req.PartnerID,
|
||||
RefID: generator.GenerateUUID(),
|
||||
Status: order2.New.String(),
|
||||
Amount: totalAmount,
|
||||
Total: totalAmount + s.cfg.GetOrderFee(req.Source),
|
||||
Fee: s.cfg.GetOrderFee(req.Source),
|
||||
PaymentType: req.PaymentMethod,
|
||||
SiteID: &siteID,
|
||||
CreatedBy: req.CreatedBy,
|
||||
OrderItems: []entity.OrderItem{},
|
||||
Source: req.Source,
|
||||
VisitDate: parsedTime,
|
||||
TicketStatus: "UNUSED",
|
||||
Metadata: metadata,
|
||||
PartnerID: req.PartnerID,
|
||||
Status: order2.New.String(),
|
||||
Amount: totalAmount,
|
||||
Total: totalAmount + s.cfg.GetOrderFee(req.Source),
|
||||
Fee: s.cfg.GetOrderFee(req.Source),
|
||||
PaymentType: req.PaymentMethod,
|
||||
CreatedBy: req.CreatedBy,
|
||||
OrderItems: []entity.OrderItem{},
|
||||
Source: req.Source,
|
||||
}
|
||||
|
||||
for _, item := range req.OrderItems {
|
||||
@@ -126,7 +108,7 @@ func (s *OrderService) CreateOrder(ctx mycontext.Context, req *entity.OrderReque
|
||||
ItemID: item.ProductID,
|
||||
ItemType: productMap[item.ProductID].Type,
|
||||
Price: productMap[item.ProductID].Price,
|
||||
Quantity: item.Quantity,
|
||||
Quantity: int(item.Quantity),
|
||||
CreatedBy: req.CreatedBy,
|
||||
Product: productMap[item.ProductID].ToProduct(),
|
||||
})
|
||||
@@ -138,12 +120,6 @@ func (s *OrderService) CreateOrder(ctx mycontext.Context, req *entity.OrderReque
|
||||
return nil, err
|
||||
}
|
||||
|
||||
token, err := s.crypt.GenerateJWTOrder(order)
|
||||
if err != nil {
|
||||
logger.ContextLogger(ctx).Error("error when create token", zap.Error(err))
|
||||
return nil, err
|
||||
}
|
||||
|
||||
order, err = s.repo.FindByID(ctx, order.ID)
|
||||
if err != nil {
|
||||
logger.ContextLogger(ctx).Error("error when creating order", zap.Error(err))
|
||||
@@ -152,7 +128,6 @@ func (s *OrderService) CreateOrder(ctx mycontext.Context, req *entity.OrderReque
|
||||
|
||||
return &entity.OrderResponse{
|
||||
Order: order,
|
||||
Token: token,
|
||||
}, nil
|
||||
}
|
||||
|
||||
@@ -187,26 +162,6 @@ func (s *OrderService) CheckInInquiry(ctx mycontext.Context, qrCode string, part
|
||||
return nil, errors2.ErrorInvalidRequest
|
||||
}
|
||||
|
||||
location, _ := time.LoadLocation("Asia/Jakarta")
|
||||
today := time.Now().In(location).Format("2006-01-02")
|
||||
visitDate := time.Date(
|
||||
order.VisitDate.Year(),
|
||||
order.VisitDate.Month(),
|
||||
order.VisitDate.Day(),
|
||||
0, 0, 0, 0,
|
||||
location,
|
||||
).Format("2006-01-02")
|
||||
|
||||
if order.TicketStatus == "USED" || visitDate < today {
|
||||
return nil, errors2.NewErrorMessage(errors2.ErrorTicketInvalidOrAlreadyUsed,
|
||||
"Maaf! Tiket ini tidak valid karena sudah terpakai atau sudah kadaluwarsa")
|
||||
}
|
||||
|
||||
if visitDate != today {
|
||||
return nil, errors2.NewErrorMessage(errors2.ErrorTicketInvalidOrAlreadyUsed,
|
||||
"Maaf Tiket ini tidak valid karena tidak sesuai dengan tanggal tiket")
|
||||
}
|
||||
|
||||
token, err := s.crypt.GenerateJWTOrder(order)
|
||||
if err != nil {
|
||||
logger.ContextLogger(ctx).Error("error when generate checkin token", zap.Error(err))
|
||||
@@ -242,17 +197,6 @@ func (s *OrderService) CheckInExecute(ctx mycontext.Context,
|
||||
Order: order,
|
||||
}
|
||||
|
||||
if order.TicketStatus != "UNUSED" {
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
order.TicketStatus = "USED"
|
||||
order, err = s.repo.Update(ctx, order)
|
||||
if err != nil {
|
||||
logger.ContextLogger(ctx).Error("error when updating order status", zap.Error(err))
|
||||
return nil, err
|
||||
}
|
||||
|
||||
return resp, nil
|
||||
}
|
||||
|
||||
@@ -446,11 +390,6 @@ func (s *OrderService) processQRPayment(ctx mycontext.Context, order *entity.Ord
|
||||
}
|
||||
|
||||
func (s *OrderService) processVAPayment(ctx mycontext.Context, order *entity.Order, partnerID, createdBy int64) (*entity.PaymentResponse, error) {
|
||||
metadata := map[string]string{}
|
||||
if err := json.Unmarshal(order.Metadata, &metadata); err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
paymentRequest := entity.PaymentRequest{
|
||||
PaymentReferenceID: generator.GenerateUUIDV4(),
|
||||
TotalAmount: int64(order.Total),
|
||||
@@ -458,7 +397,6 @@ func (s *OrderService) processVAPayment(ctx mycontext.Context, order *entity.Ord
|
||||
CustomerID: strconv.FormatInt(order.User.ID, 10),
|
||||
CustomerName: order.User.Name,
|
||||
CustomerEmail: order.User.Email,
|
||||
BankCode: metadata["bank_code"],
|
||||
}
|
||||
|
||||
paymentResponse, err := s.pg.CreatePaymentVA(paymentRequest)
|
||||
@@ -544,13 +482,11 @@ func (s *OrderService) processPayment(ctx context.Context, tx *gorm.DB, req *ent
|
||||
transaction := &entity.Transaction{
|
||||
PartnerID: existingPayment.PartnerID,
|
||||
TransactionType: "PAYMENT_RECEIVED",
|
||||
ReferenceID: existingPayment.ReferenceID,
|
||||
Status: "SUCCESS",
|
||||
CreatedBy: 0,
|
||||
Amount: existingPayment.Amount,
|
||||
Fee: order.Fee,
|
||||
Total: order.Total,
|
||||
SiteID: order.SiteID,
|
||||
}
|
||||
if _, err = s.transaction.Create(ctx, tx, transaction); err != nil {
|
||||
return fmt.Errorf("failed to update transaction: %w", err)
|
||||
|
||||
Reference in New Issue
Block a user