diff --git a/handlers/dev/md.doctor.handlers.go b/handlers/dev/md.doctor.handlers.go index 001a7fb..61ab2a9 100644 --- a/handlers/dev/md.doctor.handlers.go +++ b/handlers/dev/md.doctor.handlers.go @@ -10,6 +10,7 @@ import ( "cpone/services" "cpone/utils" "fmt" + "strconv" dev_mddoctorview "cpone/views/dev/mddoctor" @@ -425,3 +426,59 @@ func (lh *MdDoctorHandler) HandleFilterMdDoctor(c echo.Context) error { retval = append(retval, userGroupPaginationComponent) return utils.ViewMulti(c, retval) } + +// PAGINATION +func (lh *MdDoctorHandler) HandleChangePageMdDoctor(c echo.Context) error { + search := c.QueryParam("search") + pageparam := c.QueryParam("page") + tableID := c.QueryParam("tableID") + searchID := c.QueryParam("searchID") + paginationID := c.QueryParam("paginationID") + dialogEditBodyID := c.QueryParam("dialogEditBodyID") + dialogDeleteBodyID := c.QueryParam("dialogDeleteBodyID") + var retval []templ.Component + logger, _ := zap.NewProduction() + page, err := strconv.Atoi(pageparam) + if err != nil { + defer logger.Sync() + logger.Info("ERROR CONVERT PAGE PARAM", + zap.Any("page", page), + zap.Any("error ", err), + ) + return err + } + dataGroupResult, totalpage, err := lh.MdDoctorServices.GetListMdDoctor(search, page, 5) + if err != nil { + defer logger.Sync() + logger.Info("ERROR GET USER GROUP", + zap.Any("error", err), + ) + fmt.Println(dataGroupResult) + return err + } + tableComponent := dev_mddoctorview.TableDoctor(dataGroupResult, + tableID, + "/dev/md/doctorv2/openedit", + "#"+dialogEditBodyID, + "outerHTML", + "#dialogEditBodyID, #dialogEditID, #dialogDeleteBodyID, #dialogDeleteID", + "/dev/md/doctorv2/opendelete", + "#"+dialogDeleteBodyID, + "outerHTML", + "#dialogEditBodyID, #dialogEditID, #dialogDeleteBodyID, #dialogDeleteID", + ) + userGroupPaginationComponent := pagination.PaginationV3( + totalpage, + page, + "/dev/md/doctorv2/changepage", + paginationID, + "#tableID, #searchID, #"+searchID+", #paginationID, #dialogEditBodyID, #dialogEditID, #dialogDeleteBodyID, #dialogDeleteID", + "#"+paginationID, + "outerHTML", "", "", + dev_mddoctorview.BeforeRequestContentMdDoctor(), + dev_mddoctorview.AfterRequestContentMdDoctor(), + ) + retval = append(retval, tableComponent) + retval = append(retval, userGroupPaginationComponent) + return utils.ViewMulti(c, retval) +} diff --git a/handlers/routes.go b/handlers/routes.go index 8fae4cd..42ab1c1 100644 --- a/handlers/routes.go +++ b/handlers/routes.go @@ -297,4 +297,5 @@ func SetupRoutesDev(app *echo.Echo, appStore db.AppStore) { devMdDChandlers := dev_handlers.NewMdDoctorHandler(devMdDCServices) dev.GET("/md/doctorv2", devMdDChandlers.HandleShowMdDoctorScreen) dev.GET("/md/doctorv2/filter", devMdDChandlers.HandleFilterMdDoctor) + dev.GET("/md/doctorv2/changepage", devMdDChandlers.HandleChangePageMdDoctor) }