Skip to content

Commit

Permalink
feat(event): upload event pay
Browse files Browse the repository at this point in the history
  • Loading branch information
AfandyW committed Oct 19, 2024
1 parent 0851ae0 commit 65ec987
Show file tree
Hide file tree
Showing 3 changed files with 30 additions and 9 deletions.
4 changes: 2 additions & 2 deletions app/events/repository/get_events.go
Original file line number Diff line number Diff line change
Expand Up @@ -59,11 +59,11 @@ func (repo *repository) GetEvent(ctx context.Context, eventID uint) (data domain
}

func (repo *repository) GetRegistrationEvent(ctx context.Context, orderNo string) (data domain.RegistrationEvent, err error) {
db := repo.db.DB(ctx).Model(&domain.Event{})
db := repo.db.DB(ctx).Model(&domain.RegistrationEvent{})

err = db.Where("order_no = ?", orderNo).Find(&data).Error
if err != nil {
logrus.Error("repo.GetEvents: failed to get events use generic conditions")
logrus.Error("failed to get registration event use generic conditions")
return
}

Expand Down
26 changes: 23 additions & 3 deletions app/events/usecase/create_pay_event.go
Original file line number Diff line number Diff line change
Expand Up @@ -19,16 +19,36 @@ func (uc usecase) CreatePayEvent(ctx context.Context, payload domain.EventPayPay
return errors.New("registration order not found")
}

dataImage, err := uc.imageRepository.GetImage(ctx, payload.ImageProofPayment)
if err != nil {
logrus.Error("failed to create event", dataImage)
return err
}

if dataImage.IsUsed {
err = errors.New("image not exists")
return err
}

err = uc.dbTX.StartTransaction(ctx, func(txCtx context.Context) error {
_, err := uc.repository.CreatePayEvent(txCtx, domain.EventPay{
RegistrationEvent: rEvent.ID,
ImageProofPayment: payload.ImageProofPayment,
NetAmount: payload.NetAmount,
RegistrationEventID: rEvent.ID,
EventID: rEvent.EventID,
ImageProofPayment: payload.ImageProofPayment,
NetAmount: payload.NetAmount,
})

if err != nil {
logrus.Error("failed to get event")
return err
}

err = uc.imageRepository.UpdateUseImage(txCtx, dataImage.ID)
if err != nil {
logrus.Error("failed to update use image")
return err
}

return nil
})

Expand Down
9 changes: 5 additions & 4 deletions domain/event.go
Original file line number Diff line number Diff line change
Expand Up @@ -146,10 +146,11 @@ type EventFilter struct {
}

type EventPay struct {
ID uint `json:"id" gorm:"primarykey"`
RegistrationEvent uint `json:"registration_event_id"`
ImageProofPayment string `json:"image_proof_payment"`
NetAmount float64 `json:"net_amount"`
ID uint `json:"id" gorm:"primarykey"`
RegistrationEventID uint `json:"registration_event_id"`
EventID uint `json:"event_id"`
ImageProofPayment string `json:"image_proof_payment"`
NetAmount float64 `json:"net_amount"`
}

func (EventPay) TableName() string {
Expand Down

0 comments on commit 65ec987

Please sign in to comment.