add echart kelainan lab

This commit is contained in:
2024-07-03 10:47:43 +07:00
parent 7a22f5e4d0
commit eb7343117b
14 changed files with 781 additions and 76 deletions

View File

@@ -54,10 +54,10 @@ func (tkf *TabKelainanFisikHandler) HandleShowTabKelainanFisik(c echo.Context) e
}
content := corporate_mcudetail.Tabkelainanfisik(
chart.ShowChartFixed("bmixs", string(bmijson), "400px", "450px"),
chart.ShowChartFixed("bmixs", string(bmijson), "300px", "450px"),
chart.ShowChartFixed("bmimd", string(bmijson), "500px", "450px"),
chart.ShowChartFixed("bmilg", string(bmijson), "600px", "450px"),
chart.ShowChartFixed("hprxs", string(hiperjson), "400px", "450px"),
chart.ShowChartFixed("hprxs", string(hiperjson), "300px", "450px"),
chart.ShowChartFixed("hprmd", string(hiperjson), "500px", "450px"),
chart.ShowChartFixed("hprlg", string(hiperjson), "600px", "450px"),
)

View File

@@ -12,7 +12,8 @@ import (
)
type TabKelainanGlobalServices interface {
GetBarChartConf(title string, data models.BarDataset) (models.Barchart, error)
GetKelainanGlobalMCU(mcuID string) (models.Barchart, error)
GetKelainanFisik(mcuID string) (models.Barchart, error)
}
type TabKelainanGlobalHandler struct {
@@ -31,36 +32,33 @@ func (tkg *TabKelainanGlobalHandler) HandleShowTabKelainanGlobal(c echo.Context)
logger.Info("params", zap.Any("id", id))
test := models.BarDataset{
Source: [][]interface{}{
{"score", "amount", "product", "percentage"},
{200, 447, "Body Mass Index"},
{150, 314, "Pemeriksaan Mata"},
{125, 314, "Fungsi Lemak"},
{100, 254, "Autospirometri"},
{90, 200, "Hematologi"},
{80, 180, "ECG"},
{75, 160, "Hiperuricemia"},
{70, 125, "Tekanan Darah"},
{60, 118, "Urine Lengkap"},
{50, 87, "Fungsi Hati"},
},
}
title := "Kelainan MCU"
option, err := tkg.TabKelainanGlobalServices.GetBarChartConf(title, test)
kelmcu, err := tkg.TabKelainanGlobalServices.GetKelainanGlobalMCU(id)
if err != nil {
return err
}
klmcujson, err := json.MarshalIndent(option, "", " ")
kelfisik, err := tkg.TabKelainanGlobalServices.GetKelainanFisik(id)
if err != nil {
return err
}
klmcujson, err := json.MarshalIndent(kelmcu, "", " ")
if err != nil {
return err
}
klfisjson, err := json.MarshalIndent(kelfisik, "", " ")
if err != nil {
return err
}
content := corporate_mcudetail.TabKelainanGlobal(
chart.ShowChartFixed("a", string(klmcujson), "1000px", "450px"),
chart.ShowChartFixed("b", string(klmcujson), "1000px", "450px"),
chart.ShowChartFixed("chartmcuxs", string(klmcujson), "300px", "450px"),
chart.ShowChartFixed("chartfisikxs", string(klfisjson), "300px", "450px"),
chart.ShowChartFixed("chartmcumd", string(klmcujson), "500px", "450px"),
chart.ShowChartFixed("chartfisikmd", string(klfisjson), "500px", "450px"),
chart.ShowChartFixed("chartmculg", string(klmcujson), "1000px", "450px"),
chart.ShowChartFixed("chartfisiklg", string(klfisjson), "1000px", "450px"),
)
return utils.View(c, content)

View File

@@ -0,0 +1,105 @@
package mcu_corporate_handlers
import (
"cpone/component/chart"
"cpone/models"
"cpone/utils"
corporate_mcudetail "cpone/views/corporate/mcu/mcutab"
"encoding/json"
"github.com/labstack/echo/v4"
)
type TabKelainanLabServices interface {
GetDataPresentaseKelainanLab(mcuID string) (models.Barchart, error)
GetHematologi(mcuID string) (models.Barchart, error)
GetUrinalisa(mcuID string) (models.Barchart, error)
GetGangguanFungsiHati(mcuID string) (models.Barchart, error)
GetGangguanMetabolismeLemak(mcuID string) (models.Barchart, error)
GetPeningkatanGlukosa(mcuID string) (models.Barchart, error)
}
type TabKelainanLabHandler struct {
TabKelainanLabServices TabKelainanLabServices
}
func NewTabKelainanLabHandler(tkl TabKelainanLabServices) *TabKelainanLabHandler {
return &TabKelainanLabHandler{
TabKelainanLabServices: tkl,
}
}
func (tkl *TabKelainanLabHandler) HandleShowTabKelainanLab(c echo.Context) error {
id := c.Param("id")
datapre, err := tkl.TabKelainanLabServices.GetDataPresentaseKelainanLab(id)
if err != nil {
return err
}
hematologi, err := tkl.TabKelainanLabServices.GetHematologi(id)
if err != nil {
return err
}
urinalisa, err := tkl.TabKelainanLabServices.GetUrinalisa(id)
if err != nil {
return err
}
hati, err := tkl.TabKelainanLabServices.GetGangguanFungsiHati(id)
if err != nil {
return err
}
lemak, err := tkl.TabKelainanLabServices.GetGangguanMetabolismeLemak(id)
if err != nil {
return err
}
glukosa, err := tkl.TabKelainanLabServices.GetPeningkatanGlukosa(id)
if err != nil {
return err
}
dataprejson, err := json.MarshalIndent(datapre, "", " ")
if err != nil {
return err
}
hemajson, err := json.MarshalIndent(hematologi, "", " ")
if err != nil {
return err
}
urinjson, err := json.MarshalIndent(urinalisa, "", " ")
if err != nil {
return err
}
hatijson, err := json.MarshalIndent(hati, "", " ")
if err != nil {
return err
}
lemakjson, err := json.MarshalIndent(lemak, "", " ")
if err != nil {
return err
}
glukosjson, err := json.MarshalIndent(glukosa, "", " ")
if err != nil {
return err
}
content := corporate_mcudetail.TabKelainanLab(
chart.ShowChartFixed("dataprelg", string(dataprejson), "1000px", "450px"),
chart.ShowChartFixed("hemalg", string(hemajson), "600px", "450px"),
chart.ShowChartFixed("urinlg", string(urinjson), "600px", "450px"),
chart.ShowChartFixed("hatilg", string(hatijson), "600px", "450px"),
chart.ShowChartFixed("lemaklg", string(lemakjson), "600px", "450px"),
chart.ShowChartFixed("glukoslg", string(glukosjson), "600px", "450px"),
)
return utils.View(c, content)
}

View File

@@ -131,6 +131,10 @@ func SetupRoutesCorporate(app *echo.Echo, appStore db.AppStore) {
kelainanglobalHdlr := mcu_corporate_handlers.NewTabKelainanGlobalHandler(kelainanglobalSrvs)
corp.GET("/dashboard_pic/detail/:id/tabkelainanglobal", kelainanglobalHdlr.HandleShowTabKelainanGlobal)
kelainanlabSrvs := mcu_corporate_services.NewTabKelainanLabServices(appStore)
kelainanlabHdlr := mcu_corporate_handlers.NewTabKelainanLabHandler(kelainanlabSrvs)
corp.GET("/dashboard_pic/detail/:id/tabkelainanlab", kelainanlabHdlr.HandleShowTabKelainanLab)
// tab kelainan fisik
kelainanfisikSrvs := mcu_corporate_services.NewTabKelainanFisikServices(appStore)
kelainanfisikHdlr := mcu_corporate_handlers.NewTabKelainanFisikHandler(kelainanfisikSrvs)