add pic tab daftar peserta + pagination
This commit is contained in:
@@ -1,13 +1,18 @@
|
||||
package mcu_corporate_handlers
|
||||
|
||||
import (
|
||||
"cpone/component/pagination"
|
||||
"cpone/models"
|
||||
"cpone/utils"
|
||||
corporate_mcudetail "cpone/views/corporate/mcu/mcutab"
|
||||
"strconv"
|
||||
|
||||
"github.com/labstack/echo/v4"
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
type TabDaftarPesertaServices interface {
|
||||
GetListMcuDaftarPeserta(id string, currentpage int, rowperpage int) ([]models.ModelMcuDaftarPeserta, int, error)
|
||||
}
|
||||
|
||||
type TabDaftarPesertaHandlers struct {
|
||||
@@ -21,21 +26,93 @@ func NewTabDaftarPesertaHandlers(tdp TabDaftarPesertaServices) *TabDaftarPeserta
|
||||
}
|
||||
|
||||
func (tdp *TabDaftarPesertaHandlers) HandleShowTabDaftarPeserta(c echo.Context) error {
|
||||
title := "Daftar Peserta"
|
||||
logger, _ := zap.NewProduction()
|
||||
// title := "Daftar Peserta"
|
||||
tableID := utils.GenerateRandomID("tableid")
|
||||
paginationID := utils.GenerateRandomID("paginationID")
|
||||
|
||||
data := []string{"Ananda Mara", "Nanda Arisu"}
|
||||
table := corporate_mcudetail.TableDaftarPeserta(data, "sas012")
|
||||
id := c.Param("id")
|
||||
logger.Info("Params", zap.Any("id", id))
|
||||
|
||||
content := corporate_mcudetail.TabDaftarPesertaScreen(table)
|
||||
css := corporate_mcudetail.CSSTabDaftarPeserta()
|
||||
js := corporate_mcudetail.JsTabDaftarPeserta()
|
||||
dataTable, totalPage, err := tdp.TabDaftarPesertaServices.GetListMcuDaftarPeserta(id, 1, 5)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
logger.Info("totalPage", zap.Any("total", totalPage))
|
||||
|
||||
view := corporate_mcudetail.ShowTabDafterPeserta(
|
||||
title,
|
||||
content,
|
||||
css,
|
||||
js,
|
||||
table := corporate_mcudetail.TableDaftarPeserta(
|
||||
dataTable,
|
||||
tableID,
|
||||
)
|
||||
|
||||
return utils.View(c, view)
|
||||
pagination := pagination.PaginationV3(
|
||||
totalPage,
|
||||
1,
|
||||
"/corp/dashboard_pic/detail/"+id+"/tabdaftarpeserta/changepage",
|
||||
paginationID,
|
||||
"#tableID, #paginationID, #loading-parent, #loading-child, #loading-spinner, #loadingcontent",
|
||||
"#contentlayout",
|
||||
"outerHTML", "", "",
|
||||
corporate_mcudetail.BeforeRequestContent(),
|
||||
corporate_mcudetail.AfterRequestContent(),
|
||||
)
|
||||
|
||||
clayout := corporate_mcudetail.ContentLayout(
|
||||
table,
|
||||
pagination,
|
||||
)
|
||||
|
||||
content := corporate_mcudetail.TabDaftarPesertaScreen(tableID, paginationID, clayout)
|
||||
// css := corporate_mcudetail.CSSTabDaftarPeserta()
|
||||
// js := corporate_mcudetail.JsTabDaftarPeserta()
|
||||
|
||||
// view := corporate_mcudetail.ShowTabDafterPeserta(
|
||||
// title,
|
||||
// content,
|
||||
// css,
|
||||
// js,
|
||||
// )
|
||||
|
||||
return utils.View(c, content)
|
||||
}
|
||||
|
||||
func (tdp *TabDaftarPesertaHandlers) HandlePagination(c echo.Context) error {
|
||||
pageparam := c.QueryParam("page")
|
||||
tableID := c.QueryParam("tableID")
|
||||
paginationID := c.QueryParam("paginationID")
|
||||
|
||||
id := c.Param("id")
|
||||
|
||||
// var retval []templ.Component
|
||||
page, err := strconv.Atoi(pageparam)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
tableData, totalPage, err := tdp.TabDaftarPesertaServices.GetListMcuDaftarPeserta(id, page, 5)
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
table := corporate_mcudetail.TableDaftarPeserta(tableData, tableID)
|
||||
|
||||
pagination := pagination.PaginationV3(
|
||||
totalPage,
|
||||
page,
|
||||
"/corp/dashboard_pic/detail/"+id+"/tabdaftarpeserta/changepage",
|
||||
paginationID,
|
||||
"#tableID, #paginationID, #loading-parent, #loading-child, #loading-spinner, #loadingcontent",
|
||||
"#contentlayout",
|
||||
"outerHTML", "", "",
|
||||
corporate_mcudetail.BeforeRequestContent(),
|
||||
corporate_mcudetail.AfterRequestContent(),
|
||||
)
|
||||
|
||||
// content := corporate_mcudetail.TabDaftarPesertaScreen(tableID, paginationID, table, pagination)
|
||||
// retval = append(retval, table)
|
||||
// retval = append(retval, pagination)
|
||||
// return utils.ViewMulti(c, retval)
|
||||
|
||||
// return utils.View(c, content)
|
||||
clayout := corporate_mcudetail.ContentLayout(table, pagination)
|
||||
return utils.View(c, clayout)
|
||||
}
|
||||
|
||||
@@ -124,6 +124,7 @@ func SetupRoutesCorporate(app *echo.Echo, appStore db.AppStore) {
|
||||
daftarpesertaServ := mcu_corporate_services.NewTabDaftarPesertaServices(appStore)
|
||||
daftarpesertaHandl := mcu_corporate_handlers.NewTabDaftarPesertaHandlers(daftarpesertaServ)
|
||||
corp.GET("/dashboard_pic/detail/:id/tabdaftarpeserta", daftarpesertaHandl.HandleShowTabDaftarPeserta)
|
||||
corp.GET("/dashboard_pic/detail/:id/tabdaftarpeserta/changepage", daftarpesertaHandl.HandlePagination)
|
||||
|
||||
patientHandler := corporate_handlers.NewPatientHandler(l)
|
||||
corp.GET("/patient", patientHandler.ShowPatient)
|
||||
|
||||
Reference in New Issue
Block a user