59 lines
1.4 KiB
Go
59 lines
1.4 KiB
Go
/*
|
|
DESCRIPTION:
|
|
Any functions that are used internally by the use-case
|
|
*/
|
|
package installation
|
|
|
|
import (
|
|
"encoding/json"
|
|
e "simrs-vx/internal/domain/main-entities/installation"
|
|
erc "simrs-vx/internal/domain/references/common"
|
|
esimgos "simrs-vx/internal/domain/simgos-entities/installation"
|
|
esync "simrs-vx/internal/domain/sync-entities/installation"
|
|
esyncLog "simrs-vx/internal/domain/sync-entities/log"
|
|
)
|
|
|
|
func setDataSimgos[T *e.CreateDto | *e.UpdateDto](input T) (data esimgos.MInstalasi) {
|
|
var inputSrc *e.CreateDto
|
|
if inputT, ok := any(input).(*e.CreateDto); ok {
|
|
inputSrc = inputT
|
|
} else {
|
|
inputTemp := any(input).(*e.UpdateDto)
|
|
inputSrc = &inputTemp.CreateDto
|
|
}
|
|
|
|
data.Nama_Instalasi = inputSrc.Name
|
|
data.Status_Rawat_Inap = 0
|
|
data.St_Aktif = 1
|
|
|
|
return
|
|
}
|
|
|
|
func setDataSimxLog(input *esyncLog.SimxLogDto) (data esync.InstallationSimxLog) {
|
|
// encode to JSON
|
|
jsonData, _ := json.MarshalIndent(input.Payload, "", " ")
|
|
jsonString := string(jsonData)
|
|
|
|
var status erc.ProcessStatusCode
|
|
if input.IsSuccess {
|
|
status = erc.PSCSuccess
|
|
} else {
|
|
status = erc.PSCFailed
|
|
if input.ErrMessage != nil {
|
|
data.ErrMessage = input.ErrMessage
|
|
}
|
|
}
|
|
|
|
data.Value = &jsonString
|
|
data.Date = &now
|
|
data.Status = status
|
|
|
|
return
|
|
}
|
|
|
|
func setDataSimxLink(simxId, simgosId uint) (data esync.InstallationLink) {
|
|
data.Simx_Id = simxId
|
|
data.Simgos_Id = simgosId
|
|
return
|
|
}
|