Files
simrsx-be/internal/use-case/main-use-case/chemo-plan/helper.go
T
2025-12-09 12:27:47 +07:00

47 lines
978 B
Go

/*
DESCRIPTION:
Any functions that are used internally by the use-case
*/
package chemo_plan
import (
"encoding/json"
e "simrs-vx/internal/domain/main-entities/chemo-plan"
ep "simrs-vx/internal/domain/main-entities/chemo-protocol"
ere "simrs-vx/internal/domain/references/encounter"
"time"
)
func setDataCreate(input *ep.CreateDto) (data []e.ChemoPlan) {
for _, c := range *input.ChemoPlans {
data = append(data, e.ChemoPlan{
Parent_Id: input.Chemo_Id,
Protocol_Id: input.Id,
SeriesNumber: c.SeriesNumber,
CycleNumber: c.CycleNumber,
PlanDate: c.PlanDate,
})
}
status := ere.SPCPlanned
data[0].Status = status
return
}
func setDataUpdate(data *e.ChemoPlan) {
now := time.Now()
data.RealizationDate = &now
status := ere.SPCComplete
data.Status = status
}
func setDatafail(input e.FailDto, data *e.ChemoPlan) {
data.RealizationDate = nil
data.Status = ere.SPCSchedule
var reasons []e.FailReason
_ := json.Unmarshal(data.Re)
}