42 lines
1.0 KiB
Go
42 lines
1.0 KiB
Go
/*
|
|
DESCRIPTION:
|
|
Any functions that are used internally by the use-case
|
|
*/
|
|
package internal_reference
|
|
|
|
import (
|
|
ir "simrs-vx/internal/domain/main-entities/internal-reference"
|
|
erc "simrs-vx/internal/domain/references/common"
|
|
)
|
|
|
|
func setData[T *ir.CreateDto | *ir.UpdateDto](input T, data *ir.InternalReference) {
|
|
var inputSrc *ir.CreateDto
|
|
if inputT, ok := any(input).(*ir.CreateDto); ok {
|
|
inputSrc = inputT
|
|
} else {
|
|
inputTemp := any(input).(*ir.UpdateDto)
|
|
inputSrc = &inputTemp.CreateDto
|
|
}
|
|
|
|
data.Encounter_Id = inputSrc.Encounter_Id
|
|
data.Unit_Code = inputSrc.Unit_Code
|
|
data.Doctor_Code = inputSrc.Doctor_Code
|
|
data.Status_Code = &inputSrc.Status_Code
|
|
}
|
|
|
|
func setBulkData(input []ir.CreateDto, encounterId uint) []ir.InternalReference {
|
|
var data []ir.InternalReference
|
|
|
|
for _, v := range input {
|
|
statusCode := erc.DACNew
|
|
data = append(data, ir.InternalReference{
|
|
Encounter_Id: &encounterId,
|
|
Unit_Code: v.Unit_Code,
|
|
Doctor_Code: v.Doctor_Code,
|
|
Status_Code: &statusCode,
|
|
})
|
|
}
|
|
|
|
return data
|
|
}
|