package antrianoperasi import ( "log" "github.com/gin-gonic/gin" ) func (req CreatePasienOperasiRequest) DataValidation(c *gin.Context, handler AntrianOperasiHandler) (bool, []string) { isValid := false var errValidation []string // validasi status operasi (1,2,3,4) // validasi kategori _, err := handler.repoKategori.GetKategoriById(c, req.RencanaOperasiData.KategoriOperasi) if err != nil { log.Println(err) errValidation = append(errValidation, err.Error()) } // validasi spesialis _, err = handler.repoSpesialis.GetSpesialisById(c, req.RencanaOperasiData.Spesialis) if err != nil { log.Println(err) errValidation = append(errValidation, err.Error()) } // validasi subspesialis _, err = handler.repoSpesialis.GetSubSpesialisById(c, req.RencanaOperasiData.SubSpesialis) if err != nil { log.Println(err) errValidation = append(errValidation, err.Error()) } // validasi dokter pelaksana for _, dp := range req.DokterPelaksanaItems { _, err := handler.repoDokter.GetDokterById(c, dp.Id) if err != nil { log.Println(err) errValidation = append(errValidation, err.Error()) continue } } if len(errValidation) == 0 { isValid = true } return isValid, errValidation }