mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-20 13:31:56 +00:00
[FEAT/BE] fixing approve status unclose
This commit is contained in:
+26
-1
@@ -583,7 +583,7 @@ func (s projectFlockKandangService) Closing(c *fiber.Ctx, id uint, req *validati
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if s.ApprovalSvc != nil {
|
if s.ApprovalSvc != nil {
|
||||||
reopenAction := entity.ApprovalActionUpdated
|
reopenAction := entity.ApprovalActionApproved
|
||||||
// Hindari duplikasi jika approval terakhir sudah Disetujui + Updated
|
// Hindari duplikasi jika approval terakhir sudah Disetujui + Updated
|
||||||
latestPFK, lerr := s.ApprovalSvc.LatestByTarget(c.Context(), utils.ApprovalWorkflowProjectFlockKandang, id, nil)
|
latestPFK, lerr := s.ApprovalSvc.LatestByTarget(c.Context(), utils.ApprovalWorkflowProjectFlockKandang, id, nil)
|
||||||
if lerr != nil {
|
if lerr != nil {
|
||||||
@@ -609,6 +609,31 @@ func (s projectFlockKandangService) Closing(c *fiber.Ctx, id uint, req *validati
|
|||||||
return nil, aerr
|
return nil, aerr
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Pastikan approval project flock kembali ke Aktif
|
||||||
|
latestPF, lerr := s.ApprovalSvc.LatestByTarget(c.Context(), utils.ApprovalWorkflowProjectFlock, pfk.ProjectFlockId, nil)
|
||||||
|
if lerr != nil {
|
||||||
|
return nil, lerr
|
||||||
|
}
|
||||||
|
shouldCreatePF := true
|
||||||
|
if latestPF != nil &&
|
||||||
|
latestPF.StepNumber == uint16(utils.ProjectFlockStepAktif) &&
|
||||||
|
latestPF.Action != nil && *latestPF.Action == reopenAction {
|
||||||
|
shouldCreatePF = false
|
||||||
|
}
|
||||||
|
if shouldCreatePF {
|
||||||
|
if _, aerr := s.ApprovalSvc.CreateApproval(
|
||||||
|
c.Context(),
|
||||||
|
utils.ApprovalWorkflowProjectFlock,
|
||||||
|
pfk.ProjectFlockId,
|
||||||
|
utils.ProjectFlockStepAktif,
|
||||||
|
&reopenAction,
|
||||||
|
actorID,
|
||||||
|
nil,
|
||||||
|
); aerr != nil && !errors.Is(aerr, gorm.ErrDuplicatedKey) {
|
||||||
|
return nil, aerr
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
default:
|
default:
|
||||||
return nil, fiber.NewError(fiber.StatusBadRequest, "action harus close atau unclose")
|
return nil, fiber.NewError(fiber.StatusBadRequest, "action harus close atau unclose")
|
||||||
|
|||||||
Reference in New Issue
Block a user