diff --git a/handlers/dev/md.doctor.handlers.go b/handlers/dev/md.doctor.handlers.go index aad5670..232d04d 100644 --- a/handlers/dev/md.doctor.handlers.go +++ b/handlers/dev/md.doctor.handlers.go @@ -900,6 +900,470 @@ func (lh *MdDoctorHandler) HandleChangePageMdDoctor(c echo.Context) error { return utils.ViewMulti(c, retval) } +// CLOSE FORM +func (lh *MdDoctorHandler) HandleCloseFormAdd(c echo.Context) error { + logger, _ := zap.NewProduction() + dialogAddBodyID := c.FormValue("dialogAddBodyID") + + // listItem Sapaan + dataResultSapaan, err := lh.MdDoctorServices.GetListMdSapaan() + fmt.Println(dataResultSapaan) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultSapaan) + return err + } + + // dataResultSapaan = append(dataResultSapaan, models.TitleSapaan{ + // M_TitleID: 0, + // M_TitleName: "Sapaan", + // }) + + dataResultSapaan = append([]models.TitleSapaan{ + { + M_TitleID: 0, + M_TitleName: "Sapaan", + }, + }, dataResultSapaan...) + + // listItem Jenis Kelamin + dataResultJenisKelamin, err := lh.MdDoctorServices.GetJenisKelamin() + fmt.Println(dataResultJenisKelamin) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultJenisKelamin) + return err + } + + // dataResultJenisKelamin = append(dataResultJenisKelamin, models.HardCodeDropdownJKV0{ + // ID: 0, + // Text: "Jenis Kelamin", + // }) + + dataResultJenisKelamin = append([]models.HardCodeDropdownJKV0{ + { + ID: 0, + Text: "Jenis Kelamin", + }, + }, dataResultJenisKelamin...) + + // listItem Golongan Darah + dataResultGolonganDarah, err := services.GetTerminologyList( + models.TerminologyParamv0{ + AttributePath: "Person.blood.type", + CodeSystem: "http://loinc.org", + }, + ) + fmt.Println(dataResultGolonganDarah) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultGolonganDarah) + return err + } + + dataResultGolonganDarah = append([]models.TerminologyV0{ + { + AttributePath: "Person.blood.type", + CodeSystem: "http://loinc.org", + Code: "default", + Display: "Golongan Darah", + }, + }, dataResultGolonganDarah...) + + // listItem Kewarganegaraan + dataResultKewarganegaraan, err := lh.MdDoctorServices.GetKewarganegaraan() + fmt.Println(dataResultKewarganegaraan) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultKewarganegaraan) + return err + } + + // listItem Specialist + dataResultSpecialist, err := lh.MdDoctorServices.GetListMdSpesialis() + fmt.Println(dataResultSpecialist) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultSpecialist) + return err + } + + dataResultSpecialist = append([]models.SpecialistV0{ + { + M_SpecialistID: 0, + M_SpecialistName: "Pilih Spesialis", + }, + }, dataResultSpecialist...) + + // listItem Pendidikan + dataResultPend, err := services.GetTerminologyList( + models.TerminologyParamv0{ + AttributePath: "Person.education", + CodeSystem: "xhis.code.education.level", + }, + ) + fmt.Println(dataResultPend) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultPend) + return err + } + + dataResultPend = append([]models.TerminologyV0{ + { + AttributePath: "Person.education", + CodeSystem: "xhis.code.education.level", + Code: "default", + Display: "Pendidikan Terakhir", + }, + }, dataResultPend...) + + // listItem Identitas + dataResultIdentitas, err := services.GetTerminologyList( + models.TerminologyParamv0{ + AttributePath: "Person.identifier.type", + CodeSystem: "http://terminology.hl7.org/CodeSystem/v2-0203", + }, + ) + fmt.Println(dataResultIdentitas) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultIdentitas) + return err + } + + dataResultIdentitas = append([]models.TerminologyV0{ + { + AttributePath: "Person.identifier.type", + CodeSystem: "http://terminology.hl7.org/CodeSystem/v2-0203", + Code: "default", + Display: "Pilih Identitas", + }, + }, dataResultIdentitas...) + + // listItem dataResultBloodRhesus + dataResultBloodRhesus, err := services.GetTerminologyList( + models.TerminologyParamv0{ + AttributePath: "Person.blood.rhesus", + CodeSystem: "http://snomed.info/sct", + }, + ) + fmt.Println(dataResultBloodRhesus) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultBloodRhesus) + return err + } + + dataResultBloodRhesus = append([]models.TerminologyV0{ + { + AttributePath: "Person.blood.rhesus", + CodeSystem: "http://snomed.info/sct", + Code: "default", + Display: "Rhesus", + }, + }, dataResultBloodRhesus...) + + // listItem dataResultEtnis + dataResultEtnis, err := services.GetTerminologyList( + models.TerminologyParamv0{ + AttributePath: "Person.etnicity", + CodeSystem: "xhis.code.etnicity", + }, + ) + fmt.Println(dataResultEtnis) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataResultEtnis) + return err + } + + dataResultEtnis = append([]models.TerminologyV0{ + { + AttributePath: "Person.etnicity", + CodeSystem: "xhis.code.etnicity", + Code: "default", + Display: "Etnis", + }, + }, dataResultEtnis...) + + // tanggal sekarang + dataTglNow, err := lh.MdDoctorServices.GetDateNow() + fmt.Println(dataTglNow) + fmt.Println(err) + if err != nil { + defer logger.Sync() + logger.Info("ERROR BREADCRUMB DEV", + zap.Any("error", err), + ) + fmt.Println(dataTglNow) + return err + } + + // Component Dropdown MCU + listItemResultSapaanComponent := dev_mddoctorview.ItemDropdownSapaan(dataResultSapaan, 0) + + // Component Dropdown JK + listItemResultJKComponent := dev_mddoctorview.ItemDropdownJenisKelamin(dataResultJenisKelamin, 0) + + // Component Dropdown Golongan Darah + listItemResultGDComponent := dev_mddoctorview.ItemDropdownTerminology(dataResultGolonganDarah, + models.TerminologySelectedV0{ + AttributePath: "Person.blood.type", + CodeSystem: "http://loinc.org", + Code: "default", + Display: "Golongan Darah", + }, + ) + + // Component Radio Button Kewarganegaraan + listItemResultKewarganegaraanComponent := dev_mddoctorview.ItemRadioButtonKewarganegaraan(dataResultKewarganegaraan, 1) + + // Component Dropdown Spesialis + listItemResultSpesialisComponent := dev_mddoctorview.ItemDropdownSpesialis(dataResultSpecialist, 0) + + // Component Dropdown Pendidikan Terakhir + listItemResultPendComponent := dev_mddoctorview.ItemDropdownTerminology(dataResultPend, + models.TerminologySelectedV0{ + AttributePath: "Person.education", + CodeSystem: "xhis.code.education.level", + Code: "default", + Display: "Pendidikan Terakhir", + }, + ) + + // Component Dropdown Identitas + listItemResultIdentitasComponent := dev_mddoctorview.ItemDropdownTerminology(dataResultIdentitas, + models.TerminologySelectedV0{ + AttributePath: "Person.identifier.type", + CodeSystem: "http://terminology.hl7.org/CodeSystem/v2-0203", + Code: "default", + Display: "Pilih Identitas", + }, + ) + + // Component Dropdown Rhesus + listItemResultBloodRhesusComponent := dev_mddoctorview.ItemDropdownTerminology(dataResultBloodRhesus, + models.TerminologySelectedV0{ + AttributePath: "Person.blood.rhesus", + CodeSystem: "http://snomed.info/sct", + Code: "default", + Display: "Rhesus", + }, + ) + + // Component Dropdown Etnis + listItemResultEtnisComponent := dev_mddoctorview.ItemDropdownTerminology(dataResultEtnis, + models.TerminologySelectedV0{ + AttributePath: "Person.etnicity", + CodeSystem: "xhis.code.etnicity", + Code: "default", + Display: "Etnis", + }, + ) + + newForm := dev_mddoctorview.BodyFormDoctor( + models.CustomTextFieldv2Prm{ + Label: "Doctor ID", + Name: "doctorid", + Placeholder: "Doctor ID", + Type: "hidden", + ID: "doctorid", + }, + models.CustomTextFieldv2Prm{ + Label: "Tgl Sekarang", + Name: "doctortglnow", + Placeholder: "Tgl Sekarang", + Type: "hidden", + ID: "doctortglnow", + Value: dataTglNow, + }, + models.CustomTextFieldv2Prm{ + Label: "Tanggal Lahir Edit", + Name: "doctortgllahiredit", + Placeholder: "Tanggal Lahir Edit", + Type: "hidden", + ID: "doctortgllahiredit", + // Value: "2021-01-01", + }, + models.CustomDropdownv1Prm{ + Label: "Sapaan", + Name: "doctorsapaan", + ID: "doctorsapaan", + }, + listItemResultSapaanComponent, + models.CustomTextFieldv2Prm{ + Label: "Imbuhan Awal 1", + Name: "doctorimbuhanawal1", + Placeholder: "Awal 1", + Type: "text", + ID: "doctorimbuhanawal1", + }, + models.CustomTextFieldv2Prm{ + Label: "Imbuhan Awal 2", + Name: "doctorimbuhanawal2", + Placeholder: "Awal 2", + Type: "text", + ID: "doctorimbuhanawal2", + }, + models.CustomDropdownv1Prm{ + Label: "Jenis Kelamin", + Name: "doctorjeniskelamin", + ID: "doctorjeniskelamin", + }, + listItemResultJKComponent, + models.CustomDropdownv1Prm{ + Label: "Golongan Darah", + Name: "doctorgolongandarah", + ID: "doctorgolongandarah", + }, + listItemResultGDComponent, + models.CustomRadioButtonv1Prm{ + Label: "Kewarganegaraan", + Name: "doctorkewarganegaraan", + ID: "doctorkewarganegaraan", + }, + listItemResultKewarganegaraanComponent, + models.CustomTextFieldv2Prm{ + Label: "Nomor Identitas", + Name: "doctornomoridentitas", + Placeholder: "Nomor Identitas", + Type: "text", + ID: "doctornomoridentitas", + }, + models.CustomDropdownv1Prm{ + Label: "Spesialis", + Name: "doctorspesialis", + ID: "doctorspesialis", + }, + listItemResultSpesialisComponent, + models.CustomTextFieldv2Prm{ + Label: "Imbuhan Akhir 1", + Name: "doctorimbuhanakhir1", + Placeholder: "Akhir 1", + Type: "text", + ID: "doctorimbuhanakhir1", + }, + models.CustomTextFieldv2Prm{ + Label: "Imbuhan Akhir 2", + Name: "doctorimbuhanakhir2", + Placeholder: "Akhir 2", + Type: "text", + ID: "doctorimbuhanakhir2", + }, + models.CustomTextFieldv2Prm{ + Label: "Tahun", + Name: "doctorimbuhantahun", + Placeholder: "Tahun", + Type: "text", + ID: "doctorimbuhantahun", + }, + models.CustomTextFieldv2Prm{ + Label: "Bulan", + Name: "doctorimbuhanbulan", + Placeholder: "Bulan", + Type: "text", + ID: "doctorimbuhanbulan", + }, + models.CustomTextFieldv2Prm{ + Label: "Hari", + Name: "doctorimbuhanhari", + Placeholder: "Hari", + Type: "text", + ID: "doctorimbuhanhari", + }, + models.CustomDropdownv1Prm{ + Label: "Pendidikan Terakhir", + Name: "doctorpendidikanterakhir", + ID: "doctorpendidikanterakhir", + }, + listItemResultPendComponent, + models.CustomDropdownv1Prm{ + Label: "Identitas", + Name: "doctoridentitas", + ID: "doctoridentitas", + }, + listItemResultIdentitasComponent, + models.CustomTextFieldv2Prm{ + Label: "Email", + Name: "doctorimbuhanemail", + Placeholder: "Email", + Type: "text", + ID: "doctorimbuhanemail", + }, + models.CustomTextFieldv2Prm{ + Label: "Nama", + Name: "doctorimbuhannama", + Placeholder: "Nama", + Type: "text", + ID: "doctorimbuhannama", + }, + models.CustomTextFieldv2Prm{ + Label: "Tanggal Lahir", + Name: "doctorimbuhantanggallahir", + Placeholder: "Tanggal Lahir", + Type: "date", + ID: "doctorimbuhantanggallahir", + }, + models.CustomDropdownv1Prm{ + Label: "Rhesus", + Name: "doctorgolonganbloodrhesus", + ID: "doctorgolonganbloodrhesus", + }, + listItemResultBloodRhesusComponent, + models.CustomDropdownv1Prm{ + Label: "Ernis", + Name: "doctorgolonganetnis", + ID: "doctorgolonganetnis", + }, + listItemResultEtnisComponent, + models.CustomTextFieldv2Prm{ + Label: "Nomor HP", + Name: "doctorimbuhannohp", + Placeholder: "Nomor HP", + Type: "text", + ID: "doctorimbuhannohp", + }, + dialogAddBodyID, dev_mddoctorview.JsHideModalDoctor("")) + return utils.View(c, newForm) +} + // PROSES ADD DATA func (lh *MdDoctorHandler) HandleAddMdDoctor(c echo.Context) error { diff --git a/handlers/routes.go b/handlers/routes.go index 02087fa..ed6d36d 100644 --- a/handlers/routes.go +++ b/handlers/routes.go @@ -298,5 +298,6 @@ func SetupRoutesDev(app *echo.Echo, appStore db.AppStore) { dev.GET("/md/doctorv2", devMdDChandlers.HandleShowMdDoctorScreen) dev.GET("/md/doctorv2/filter", devMdDChandlers.HandleFilterMdDoctor) dev.GET("/md/doctorv2/changepage", devMdDChandlers.HandleChangePageMdDoctor) + dev.POST("/md/doctorv2/closeaddform", devMdDChandlers.HandleCloseFormAdd) dev.POST("/md/doctorv2/add", devMdDChandlers.HandleAddMdDoctor) }