fix template screening form a
This commit is contained in:
No files matched your search
@@ -13,6 +13,7 @@ import (
|
||||
ee "simrs-vx/internal/domain/main-entities/encounter"
|
||||
egc "simrs-vx/internal/domain/main-entities/general-consent"
|
||||
er "simrs-vx/internal/domain/main-entities/resume"
|
||||
es "simrs-vx/internal/domain/main-entities/screening"
|
||||
|
||||
uvs "simrs-vx/internal/use-case/bpjs-use-case/vclaim-sep"
|
||||
uvscl "simrs-vx/internal/use-case/bpjs-use-case/vclaim-sep-control-letter"
|
||||
@@ -339,3 +340,42 @@ func generateResumeTemplateData(resume er.Resume, event pl.Event, tx *gorm.DB) (
|
||||
|
||||
return &templateData, nil
|
||||
}
|
||||
|
||||
func generateScreeningFormATemplateData(screening es.Screening, event pl.Event, tx *gorm.DB) (*ScreeningPDF, error) {
|
||||
// get encounter
|
||||
includes := "Patient,Patient.Person"
|
||||
encounter, err := ue.ReadDetailData(ee.ReadDetailDto{Id: *screening.Encounter_Id, Includes: includes}, &event)
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
|
||||
// map template data
|
||||
sData := es.FormA{}
|
||||
if screening.Value != nil {
|
||||
err := json.Unmarshal([]byte(*screening.Value), &sData)
|
||||
if err != nil {
|
||||
event.ErrInfo = pl.ErrorInfo{
|
||||
Code: "data-unmarshal-fail",
|
||||
Detail: err.Error(),
|
||||
Raw: err,
|
||||
}
|
||||
return nil, err
|
||||
}
|
||||
} else {
|
||||
return nil, errors.New("there is no data to be used")
|
||||
}
|
||||
|
||||
templateData := ScreeningPDF{}
|
||||
templateData.IssuedDate = pu.GetTimeNow().Format("2006-01-02 15:04:05")
|
||||
templateData.MedicalRecord = *encounter.Patient.Number
|
||||
templateData.Name = encounter.Patient.Person.FullName()
|
||||
templateData.BirthDate = encounter.Patient.Person.BirthDate.Format("2006-01-02 15:04:05")
|
||||
templateData.Employee_Name = screening.Employee.Person.FullName()
|
||||
templateData.EarlyMedic = sData.Screening.SelectedScreeningLabels()
|
||||
templateData.Assessment = sData.AssessmentDetail
|
||||
templateData.ProblemIdentification = sData.ProblemIdentification.SelectedProblemLabels()
|
||||
templateData.Planning = sData.PlanningDetail
|
||||
templateData.Date = screening.CreatedAt.Format("2006-01-02 15:04:05")
|
||||
|
||||
return &templateData, nil
|
||||
}
|
||||
@@ -72,6 +72,19 @@ type ResumePDF struct {
|
||||
Date string
|
||||
}
|
||||
|
||||
type ScreeningPDF struct {
|
||||
IssuedDate string
|
||||
Date string
|
||||
MedicalRecord string
|
||||
Name string
|
||||
BirthDate string
|
||||
Employee_Name string
|
||||
EarlyMedic []string
|
||||
Assessment string
|
||||
ProblemIdentification []string
|
||||
Planning string
|
||||
}
|
||||
|
||||
type GenerateDto struct {
|
||||
EntityType_Code ere.EntityTypeCode `json:"entityType_code" validate:"required"`
|
||||
Ref_Id *string `json:"ref_id" validate:"required"`
|
||||
@@ -124,6 +137,8 @@ const (
|
||||
TDNGC TemplateDocsName = "general-consent.html"
|
||||
TDNCL TemplateDocsName = "control-letter.html"
|
||||
TDNR TemplateDocsName = "resume.html"
|
||||
TDNSA TemplateDocsName = "screening-form-a.html"
|
||||
TDNSB TemplateDocsName = "screening-form-b.html"
|
||||
)
|
||||
|
||||
func (v VclaimControlLetter) generateTemplateData() ControlLetterPDF {
|
||||
|
||||
Reference in New Issue
Block a user