add echart kelainan lab
This commit is contained in:
@@ -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"),
|
||||
)
|
||||
|
||||
@@ -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)
|
||||
|
||||
105
handlers/corporate/mcudetail/tabkelainanlab.handlers.go
Normal file
105
handlers/corporate/mcudetail/tabkelainanlab.handlers.go
Normal 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)
|
||||
}
|
||||
@@ -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)
|
||||
|
||||
@@ -85,8 +85,21 @@ type Barchart struct {
|
||||
Y string `json:"y"`
|
||||
} `json:"encode"`
|
||||
} `json:"series"`
|
||||
Tooltip struct {
|
||||
Trigger string `json:"trigger"`
|
||||
AxisPointer struct {
|
||||
Type string `json:"type"`
|
||||
} `json:"axisPointer"`
|
||||
} `json:"tooltip"`
|
||||
}
|
||||
|
||||
type BarDataset struct {
|
||||
Source [][]interface{} `json:"source"`
|
||||
}
|
||||
|
||||
type BarDataPoint struct {
|
||||
Score int `json:"score"`
|
||||
Amount int `json:"amount"`
|
||||
Product string `json:"product"`
|
||||
Percentage string `json:"percentage"`
|
||||
}
|
||||
|
||||
6
models/tabkelainanlab.models.go
Normal file
6
models/tabkelainanlab.models.go
Normal file
@@ -0,0 +1,6 @@
|
||||
package models
|
||||
|
||||
type KelainanLabModel struct {
|
||||
Mcu_KelainanName string `db:"Mcu_KelainanName"`
|
||||
Total int `db:"total"`
|
||||
}
|
||||
@@ -21,7 +21,6 @@ func NewTabKelainanGlobalServices(store db.AppStore) *TabKelainanGlobalServices
|
||||
|
||||
func (tkg *TabKelainanGlobalServices) GetBarChartConf(title string, data models.BarDataset) (models.Barchart, error) {
|
||||
option := models.Barchart{}
|
||||
|
||||
option.Title = struct {
|
||||
Text string "json:\"text\""
|
||||
}{title}
|
||||
@@ -63,11 +62,24 @@ func (tkg *TabKelainanGlobalServices) GetBarChartConf(title string, data models.
|
||||
X string "json:\"x\""
|
||||
Y string "json:\"y\""
|
||||
}{
|
||||
X: "amount",
|
||||
X: "score",
|
||||
Y: "product",
|
||||
},
|
||||
},
|
||||
}
|
||||
option.Tooltip = struct {
|
||||
Trigger string "json:\"trigger\""
|
||||
AxisPointer struct {
|
||||
Type string "json:\"type\""
|
||||
} "json:\"axisPointer\""
|
||||
}{
|
||||
Trigger: "axis",
|
||||
AxisPointer: struct {
|
||||
Type string "json:\"type\""
|
||||
}{
|
||||
Type: "shadow",
|
||||
},
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
@@ -77,9 +89,6 @@ func (tkg *TabKelainanGlobalServices) GetKelainanGlobalMCU(mcuID string) (models
|
||||
var option models.Barchart
|
||||
var data []models.KelainanGlobalMCUModel
|
||||
|
||||
// title := "Kelainan MCU"
|
||||
// chartData := models.BarDataset{}
|
||||
|
||||
q := `
|
||||
SELECT
|
||||
IFNULL(Nat_TestName ,Mcu_KelainanGroupName) AS Test,
|
||||
@@ -99,11 +108,23 @@ func (tkg *TabKelainanGlobalServices) GetKelainanGlobalMCU(mcuID string) (models
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
// if data != nil {
|
||||
title := "Kelainan MCU"
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
// } else {
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Test,
|
||||
})
|
||||
}
|
||||
|
||||
// }
|
||||
option, err := tkg.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, fmt.Errorf("error insert data to barchart %v", err)
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
@@ -134,5 +155,23 @@ func (tkg *TabKelainanGlobalServices) GetKelainanFisik(mcuID string) (models.Bar
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
title := "Kelainan Fisik"
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Mcu_KelainanName,
|
||||
})
|
||||
}
|
||||
|
||||
option, err := tkg.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, nil
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
|
||||
363
services/corporate/mcudetail/tabkelainanlab.services.go
Normal file
363
services/corporate/mcudetail/tabkelainanlab.services.go
Normal file
@@ -0,0 +1,363 @@
|
||||
package mcu_corporate_services
|
||||
|
||||
import (
|
||||
"cpone/db"
|
||||
"cpone/models"
|
||||
dbx "cpone/package/database"
|
||||
"fmt"
|
||||
|
||||
"go.uber.org/zap"
|
||||
)
|
||||
|
||||
type TabKelainanLabServices struct {
|
||||
TabKelainanLabStore db.AppStore
|
||||
}
|
||||
|
||||
func NewTabKelainanLabServices(store db.AppStore) *TabKelainanLabServices {
|
||||
return &TabKelainanLabServices{
|
||||
TabKelainanLabStore: store,
|
||||
}
|
||||
}
|
||||
|
||||
func (tkl *TabKelainanLabServices) GetBarChartConf(title string, data models.BarDataset) (models.Barchart, error) {
|
||||
option := models.Barchart{}
|
||||
|
||||
option.Title = struct {
|
||||
Text string "json:\"text\""
|
||||
}{title}
|
||||
option.Dataset = data
|
||||
option.Grid.ContainLabel = true
|
||||
option.XAxis.Name = "amount"
|
||||
option.YAxis.Type = "category"
|
||||
option.VisualMap.Orient = "horizontal"
|
||||
option.VisualMap.Left = "center"
|
||||
option.VisualMap.Min = 1
|
||||
option.VisualMap.Max = 100
|
||||
option.VisualMap.Show = false
|
||||
option.VisualMap.Dimension = 0
|
||||
option.VisualMap.InRange.Color = []string{"#42aaf5", "#00eaf2", "#035bff"}
|
||||
option.Series = []struct {
|
||||
Label struct {
|
||||
Position string "json:\"position\""
|
||||
Show bool "json:\"show\""
|
||||
Formatter string "json:\"formatter\""
|
||||
} "json:\"label\""
|
||||
Type string "json:\"type\""
|
||||
Encode struct {
|
||||
X string "json:\"x\""
|
||||
Y string "json:\"y\""
|
||||
} "json:\"encode\""
|
||||
}{
|
||||
{
|
||||
Label: struct {
|
||||
Position string "json:\"position\""
|
||||
Show bool "json:\"show\""
|
||||
Formatter string "json:\"formatter\""
|
||||
}{
|
||||
Position: "right",
|
||||
Show: true,
|
||||
Formatter: "{@[3]} %",
|
||||
},
|
||||
Type: "bar",
|
||||
Encode: struct {
|
||||
X string "json:\"x\""
|
||||
Y string "json:\"y\""
|
||||
}{
|
||||
X: "score",
|
||||
Y: "product",
|
||||
},
|
||||
},
|
||||
}
|
||||
option.Tooltip = struct {
|
||||
Trigger string "json:\"trigger\""
|
||||
AxisPointer struct {
|
||||
Type string "json:\"type\""
|
||||
} "json:\"axisPointer\""
|
||||
}{
|
||||
Trigger: "axis",
|
||||
AxisPointer: struct {
|
||||
Type string "json:\"type\""
|
||||
}{
|
||||
Type: "shadow",
|
||||
},
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
|
||||
func (tkl *TabKelainanLabServices) GetDataPresentaseKelainanLab(mcuID string) (models.Barchart, error) {
|
||||
logger, _ := zap.NewProduction()
|
||||
var option models.Barchart
|
||||
var data []models.KelainanLabModel
|
||||
|
||||
q := `
|
||||
SELECT
|
||||
Mcu_KelainanName,
|
||||
COUNT(Mgm_HeaderT_OrderHeaderID) AS total
|
||||
FROM mgm_header
|
||||
JOIN mgm_detail ON Mgm_DetailMgm_HeaderID = Mgm_HeaderID
|
||||
AND Mgm_DetailIsActive = 'Y'
|
||||
JOIN mcu_kelainan ON Mgm_DetailMcu_KelainanID = Mcu_KelainanID
|
||||
JOIN mcu_kelainangroup ON Mgm_DetailMcu_KelainanGroupID = Mcu_KelainanGroupID
|
||||
WHERE Mgm_HeaderIsActive = 'Y' AND Mgm_HeaderMgm_McuID = ?
|
||||
AND Mgm_HeaderType = 'L'
|
||||
AND Mgm_HeaderIsNormal = 'N'
|
||||
GROUP BY Mcu_KelainanID ORDER BY COUNT(Mgm_HeaderT_OrderHeaderID) DESC
|
||||
`
|
||||
|
||||
if err := dbx.Handlex.Select(&data, q, mcuID); err != nil {
|
||||
return option, fmt.Errorf("error get total presentase fisik %v", err)
|
||||
}
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
title := ""
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Mcu_KelainanName,
|
||||
})
|
||||
}
|
||||
|
||||
option, err := tkl.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, fmt.Errorf("error insert data to chart %v", err)
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
|
||||
func (tkl *TabKelainanLabServices) GetHematologi(mcuID string) (models.Barchart, error) {
|
||||
logger, _ := zap.NewProduction()
|
||||
var option models.Barchart
|
||||
var data []models.KelainanLabModel
|
||||
|
||||
q := `
|
||||
SELECT Mcu_KelainanName,
|
||||
COUNT(Mgm_HeaderT_OrderHeaderID) AS total
|
||||
FROM mgm_header
|
||||
JOIN mgm_detail ON Mgm_DetailMgm_HeaderID = Mgm_HeaderID AND Mgm_DetailIsActive = 'Y'
|
||||
JOIN mcu_kelainan ON Mgm_DetailMcu_KelainanID = Mcu_KelainanID
|
||||
JOIN mcu_kelainangroup ON Mgm_DetailMcu_KelainanGroupID = Mcu_KelainanGroupID
|
||||
WHERE Mgm_HeaderIsActive = 'Y' AND Mgm_HeaderMgm_McuID = ?
|
||||
AND Mgm_HeaderType = 'L'
|
||||
AND Mgm_HeaderIsNormal = 'N'
|
||||
AND Mcu_KelainanGroupID = 14
|
||||
GROUP BY Mcu_KelainanID
|
||||
ORDER BY COUNT(Mgm_HeaderT_OrderHeaderID) DESC
|
||||
`
|
||||
if err := dbx.Handlex.Select(&data, q, mcuID); err != nil {
|
||||
return option, fmt.Errorf("error get hematologi %v", err)
|
||||
}
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
title := "Hematologi"
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Mcu_KelainanName,
|
||||
})
|
||||
}
|
||||
|
||||
option, err := tkl.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, fmt.Errorf("error insert data to chart %v", err)
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
|
||||
func (tkl *TabKelainanLabServices) GetUrinalisa(mcuID string) (models.Barchart, error) {
|
||||
logger, _ := zap.NewProduction()
|
||||
var option models.Barchart
|
||||
var data []models.KelainanLabModel
|
||||
|
||||
q := `
|
||||
SELECT
|
||||
Mcu_KelainanName,
|
||||
COUNT(Mgm_HeaderT_OrderHeaderID) AS total
|
||||
FROM mgm_header
|
||||
JOIN mgm_detail ON Mgm_DetailMgm_HeaderID = Mgm_HeaderID
|
||||
AND Mgm_DetailIsActive = 'Y'
|
||||
JOIN mcu_kelainan ON Mgm_DetailMcu_KelainanID = Mcu_KelainanID
|
||||
JOIN mcu_kelainangroup ON Mgm_DetailMcu_KelainanGroupID = Mcu_KelainanGroupID
|
||||
WHERE Mgm_HeaderIsActive = 'Y' AND Mgm_HeaderMgm_McuID = ?
|
||||
AND Mgm_HeaderType = 'L'
|
||||
AND Mgm_HeaderIsNormal = 'N'
|
||||
AND Mcu_KelainanGroupID = 15
|
||||
GROUP BY Mcu_KelainanID
|
||||
ORDER BY COUNT(Mgm_HeaderT_OrderHeaderID) DESC
|
||||
`
|
||||
if err := dbx.Handlex.Select(&data, q, mcuID); err != nil {
|
||||
return option, fmt.Errorf("error get urinalisa %v", err)
|
||||
}
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
title := "Urinalisa"
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Mcu_KelainanName,
|
||||
})
|
||||
}
|
||||
|
||||
option, err := tkl.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, fmt.Errorf("error insert data to chart %v", err)
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
|
||||
func (tkl *TabKelainanLabServices) GetGangguanFungsiHati(mcuID string) (models.Barchart, error) {
|
||||
logger, _ := zap.NewProduction()
|
||||
var option models.Barchart
|
||||
var data []models.KelainanLabModel
|
||||
|
||||
q := `
|
||||
SELECT Mcu_KelainanName,
|
||||
COUNT(Mgm_HeaderT_OrderHeaderID) AS total
|
||||
FROM mgm_header
|
||||
JOIN mgm_detail ON Mgm_DetailMgm_HeaderID = Mgm_HeaderID
|
||||
AND Mgm_DetailIsActive = 'Y'
|
||||
JOIN mcu_kelainan ON Mgm_DetailMcu_KelainanID = Mcu_KelainanID
|
||||
JOIN mcu_kelainangroup ON Mgm_DetailMcu_KelainanGroupID = Mcu_KelainanGroupID
|
||||
WHERE Mgm_HeaderIsActive = 'Y' AND Mgm_HeaderMgm_McuID = ?
|
||||
AND Mgm_HeaderType = 'L'
|
||||
AND Mgm_HeaderIsNormal = 'N'
|
||||
AND Mcu_KelainanGroupID = 16
|
||||
GROUP BY Mcu_KelainanID
|
||||
ORDER BY COUNT(Mgm_HeaderT_OrderHeaderID) DESC
|
||||
`
|
||||
if err := dbx.Handlex.Select(&data, q, mcuID); err != nil {
|
||||
return option, fmt.Errorf("error get gangguan fungsi hati %v", err)
|
||||
}
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
title := "Gangguan Fungsi Hati"
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Mcu_KelainanName,
|
||||
})
|
||||
}
|
||||
|
||||
option, err := tkl.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, fmt.Errorf("error insert data to chart %v", err)
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
|
||||
func (tkl *TabKelainanLabServices) GetGangguanMetabolismeLemak(mcuID string) (models.Barchart, error) {
|
||||
logger, _ := zap.NewProduction()
|
||||
var option models.Barchart
|
||||
var data []models.KelainanLabModel
|
||||
|
||||
q := `
|
||||
SELECT
|
||||
IFNULL(Mcu_KelainanName,'Normal') AS Mcu_KelainanName,
|
||||
COUNT(Mgm_HeaderT_OrderHeaderID) AS total
|
||||
FROM mgm_header
|
||||
LEFT JOIN mgm_detail ON Mgm_DetailMgm_HeaderID = Mgm_HeaderID AND Mgm_DetailIsActive = 'Y'
|
||||
LEFT JOIN mcu_kelainan ON Mgm_DetailMcu_KelainanID = Mcu_KelainanID
|
||||
LEFT JOIN mcu_kelainangroup ON Mgm_DetailMcu_KelainanGroupID = Mcu_KelainanGroupID
|
||||
WHERE Mgm_HeaderIsActive = 'Y' AND Mgm_HeaderNat_TestCode IN ( '10520300','10520400')
|
||||
AND Mgm_HeaderMgm_McuID = ?
|
||||
GROUP BY Mcu_KelainanID
|
||||
ORDER BY total DESC
|
||||
`
|
||||
if err := dbx.Handlex.Select(&data, q, mcuID); err != nil {
|
||||
return option, fmt.Errorf("error get gangguan metabolisme lemak %v", err)
|
||||
}
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
title := "Gangguan Metabolisme Lemak"
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Mcu_KelainanName,
|
||||
})
|
||||
}
|
||||
|
||||
option, err := tkl.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, fmt.Errorf("error insert data to chart %v", err)
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
|
||||
func (tkl *TabKelainanLabServices) GetPeningkatanGlukosa(mcuID string) (models.Barchart, error) {
|
||||
logger, _ := zap.NewProduction()
|
||||
var option models.Barchart
|
||||
var data []models.KelainanLabModel
|
||||
|
||||
q := `
|
||||
SELECT IFNULL(Mcu_KelainanName,'Normal') AS Mcu_KelainanName,
|
||||
COUNT(Mgm_HeaderT_OrderHeaderID) AS total
|
||||
FROM mgm_header
|
||||
LEFT JOIN mgm_detail ON Mgm_DetailMgm_HeaderID = Mgm_HeaderID AND Mgm_DetailIsActive = 'Y'
|
||||
LEFT JOIN mcu_kelainan ON Mgm_DetailMcu_KelainanID = Mcu_KelainanID
|
||||
LEFT JOIN mcu_kelainangroup ON Mgm_DetailMcu_KelainanGroupID = Mcu_KelainanGroupID
|
||||
WHERE Mgm_HeaderIsActive = 'Y' AND Mgm_HeaderNat_TestCode = 10540200
|
||||
AND Mgm_HeaderMgm_McuID = ?
|
||||
GROUP BY Mcu_KelainanID
|
||||
ORDER BY total DESC
|
||||
`
|
||||
if err := dbx.Handlex.Select(&data, q, mcuID); err != nil {
|
||||
return option, fmt.Errorf("error get peningkatan glukosa %v", err)
|
||||
}
|
||||
defer logger.Sync()
|
||||
logger.Info("resp data", zap.Any("data", data))
|
||||
|
||||
title := "Peningkatan Glukosa"
|
||||
chartData := models.BarDataset{
|
||||
Source: [][]interface{}{
|
||||
{"score", "amount", "product", "percentage"},
|
||||
},
|
||||
}
|
||||
|
||||
for _, d := range data {
|
||||
chartData.Source = append(chartData.Source, []interface{}{
|
||||
d.Total, d.Total, d.Mcu_KelainanName,
|
||||
})
|
||||
}
|
||||
|
||||
option, err := tkl.GetBarChartConf(title, chartData)
|
||||
if err != nil {
|
||||
return option, fmt.Errorf("error insert data to chart %v", err)
|
||||
}
|
||||
|
||||
return option, nil
|
||||
}
|
||||
@@ -1,8 +1,12 @@
|
||||
package corporate_mcudetail
|
||||
|
||||
templ TabKelainanGlobal(
|
||||
chartmcu templ.Component,
|
||||
chartfisik templ.Component,
|
||||
chartmcuxs templ.Component,
|
||||
chartfisikxs templ.Component,
|
||||
chartmcumd templ.Component,
|
||||
chartfisikmd templ.Component,
|
||||
chartmculg templ.Component,
|
||||
chartfisiklg templ.Component,
|
||||
) {
|
||||
<div class="container-fluid">
|
||||
<div class="d-flex justify-content-center py-10">
|
||||
@@ -11,21 +15,31 @@ templ TabKelainanGlobal(
|
||||
|
||||
// xs
|
||||
<div class="d-xs-block d-sm-block d-md-none">
|
||||
Small
|
||||
<div class="mb-8">
|
||||
@chartmcuxs
|
||||
</div>
|
||||
<div class="mb-8">
|
||||
@chartfisikxs
|
||||
</div>
|
||||
</div>
|
||||
|
||||
// md
|
||||
<div class="d-none d-md-block d-lg-none">
|
||||
Medium
|
||||
<div class="mb-8">
|
||||
@chartmcumd
|
||||
</div>
|
||||
<div class="mb-8">
|
||||
@chartfisikmd
|
||||
</div>
|
||||
</div>
|
||||
|
||||
// lg
|
||||
<div class="d-none d-lg-block">
|
||||
<div class="mb-8">
|
||||
@chartmcu
|
||||
@chartmculg
|
||||
</div>
|
||||
<div class="mb-8">
|
||||
@chartfisik
|
||||
@chartfisiklg
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -11,8 +11,12 @@ import "io"
|
||||
import "bytes"
|
||||
|
||||
func TabKelainanGlobal(
|
||||
chartmcu templ.Component,
|
||||
chartfisik templ.Component,
|
||||
chartmcuxs templ.Component,
|
||||
chartfisikxs templ.Component,
|
||||
chartmcumd templ.Component,
|
||||
chartfisikmd templ.Component,
|
||||
chartmculg templ.Component,
|
||||
chartfisiklg templ.Component,
|
||||
) templ.Component {
|
||||
return templ.ComponentFunc(func(ctx context.Context, templ_7745c5c3_W io.Writer) (templ_7745c5c3_Err error) {
|
||||
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templ_7745c5c3_W.(*bytes.Buffer)
|
||||
@@ -26,11 +30,11 @@ func TabKelainanGlobal(
|
||||
templ_7745c5c3_Var1 = templ.NopComponent
|
||||
}
|
||||
ctx = templ.ClearChildren(ctx)
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div class=\"container-fluid\"><div class=\"d-flex justify-content-center py-10\"><h2 class=\"title text-black\" style=\"margin-bottom: 0;\">Data Kelainan Global</h2></div><div class=\"d-xs-block d-sm-block d-md-none\">Small\r</div><div class=\"d-none d-md-block d-lg-none\">Medium\r</div><div class=\"d-none d-lg-block\"><div class=\"mb-8\">")
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div class=\"container-fluid\"><div class=\"d-flex justify-content-center py-10\"><h2 class=\"title text-black\" style=\"margin-bottom: 0;\">Data Kelainan Global</h2></div><div class=\"d-xs-block d-sm-block d-md-none\"><div class=\"mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartmcu.Render(ctx, templ_7745c5c3_Buffer)
|
||||
templ_7745c5c3_Err = chartmcuxs.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
@@ -38,7 +42,39 @@ func TabKelainanGlobal(
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartfisik.Render(ctx, templ_7745c5c3_Buffer)
|
||||
templ_7745c5c3_Err = chartfisikxs.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div></div><div class=\"d-none d-md-block d-lg-none\"><div class=\"mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartmcumd.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div><div class=\"mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartfisikmd.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div></div><div class=\"d-none d-lg-block\"><div class=\"mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartmculg.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div><div class=\"mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartfisiklg.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
|
||||
44
views/corporate/mcu/mcutab/tabkelainanlab.templ
Normal file
44
views/corporate/mcu/mcutab/tabkelainanlab.templ
Normal file
@@ -0,0 +1,44 @@
|
||||
package corporate_mcudetail
|
||||
|
||||
templ TabKelainanLab(
|
||||
chartpresentase templ.Component,
|
||||
charthematologi templ.Component,
|
||||
charturinalisa templ.Component,
|
||||
chartganghati templ.Component,
|
||||
chartmetalemak templ.Component,
|
||||
chartglukosa templ.Component,
|
||||
) {
|
||||
<div class="container-fluid">
|
||||
<div class="d-flex justify-content-center py-10">
|
||||
<h2 class="title text-black" style="margin-bottom: 0;">Data Kelainan Lab</h2>
|
||||
</div>
|
||||
|
||||
// xs
|
||||
<div class="d-xs-block d-sm-block d-md-none">
|
||||
|
||||
</div>
|
||||
|
||||
// md
|
||||
<div class="d-none d-md-block d-lg-none">
|
||||
|
||||
</div>
|
||||
|
||||
// lg
|
||||
<div class="d-none d-lg-block">
|
||||
<div class="mb-8">
|
||||
@chartpresentase
|
||||
</div>
|
||||
<div class="row mb-8">
|
||||
@charthematologi
|
||||
@charturinalisa
|
||||
</div>
|
||||
<div class="row mb-8">
|
||||
@chartganghati
|
||||
@chartmetalemak
|
||||
</div>
|
||||
<div class="row mb-8">
|
||||
@chartglukosa
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
}
|
||||
82
views/corporate/mcu/mcutab/tabkelainanlab_templ.go
Normal file
82
views/corporate/mcu/mcutab/tabkelainanlab_templ.go
Normal file
@@ -0,0 +1,82 @@
|
||||
// Code generated by templ - DO NOT EDIT.
|
||||
|
||||
// templ: version: v0.2.663
|
||||
package corporate_mcudetail
|
||||
|
||||
//lint:file-ignore SA4006 This context is only used if a nested component is present.
|
||||
|
||||
import "github.com/a-h/templ"
|
||||
import "context"
|
||||
import "io"
|
||||
import "bytes"
|
||||
|
||||
func TabKelainanLab(
|
||||
chartpresentase templ.Component,
|
||||
charthematologi templ.Component,
|
||||
charturinalisa templ.Component,
|
||||
chartganghati templ.Component,
|
||||
chartmetalemak templ.Component,
|
||||
chartglukosa templ.Component,
|
||||
) templ.Component {
|
||||
return templ.ComponentFunc(func(ctx context.Context, templ_7745c5c3_W io.Writer) (templ_7745c5c3_Err error) {
|
||||
templ_7745c5c3_Buffer, templ_7745c5c3_IsBuffer := templ_7745c5c3_W.(*bytes.Buffer)
|
||||
if !templ_7745c5c3_IsBuffer {
|
||||
templ_7745c5c3_Buffer = templ.GetBuffer()
|
||||
defer templ.ReleaseBuffer(templ_7745c5c3_Buffer)
|
||||
}
|
||||
ctx = templ.InitializeContext(ctx)
|
||||
templ_7745c5c3_Var1 := templ.GetChildren(ctx)
|
||||
if templ_7745c5c3_Var1 == nil {
|
||||
templ_7745c5c3_Var1 = templ.NopComponent
|
||||
}
|
||||
ctx = templ.ClearChildren(ctx)
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div class=\"container-fluid\"><div class=\"d-flex justify-content-center py-10\"><h2 class=\"title text-black\" style=\"margin-bottom: 0;\">Data Kelainan Lab</h2></div><div class=\"d-xs-block d-sm-block d-md-none\"></div><div class=\"d-none d-md-block d-lg-none\"></div><div class=\"d-none d-lg-block\"><div class=\"mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartpresentase.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div><div class=\"row mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = charthematologi.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = charturinalisa.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div><div class=\"row mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartganghati.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartmetalemak.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div><div class=\"row mb-8\">")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
templ_7745c5c3_Err = chartglukosa.Render(ctx, templ_7745c5c3_Buffer)
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("</div></div></div>")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
if !templ_7745c5c3_IsBuffer {
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteTo(templ_7745c5c3_W)
|
||||
}
|
||||
return templ_7745c5c3_Err
|
||||
})
|
||||
}
|
||||
@@ -12,7 +12,7 @@ templ TabViewMcuDetail(
|
||||
<a class="nav-link" data-toggle="tab" href="#kt_tab_pane_2" hx-get={"/corp/dashboard_pic/detail/" + id +"/tabkelainanglobal"} hx-target="#tabkelainanglobal" hx-trigger="click">Kelainan global</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" data-toggle="tab" href="#kt_tab_pane_3">Kelainan Lab</a>
|
||||
<a class="nav-link" data-toggle="tab" href="#kt_tab_pane_3" hx-get={"/corp/dashboard_pic/detail/" + id +"/tabkelainanlab"} hx-target="#tabkelainanlab" hx-trigger="click">Kelainan Lab</a>
|
||||
</li>
|
||||
<li class="nav-item">
|
||||
<a class="nav-link" data-toggle="tab" href="#kt_tab_pane_4">kelainan Non Lab</a>
|
||||
@@ -39,17 +39,18 @@ templ TabViewMcuDetail(
|
||||
// <object data={"https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_001.rptdesign&__format=pdf&PID="+id+"&username=adhi&tm=1717726294764"} type="application/pdf" width="100%" height="100%"></object>
|
||||
<div id="tabkepesertaan"></div>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="kt_tab_pane_2" role="tabpanel" aria-labelledby="kt_tab_pane_2" style="height: 800px;">
|
||||
<div class="tab-pane fade" id="kt_tab_pane_2" role="tabpanel" aria-labelledby="kt_tab_pane_2">
|
||||
// <object data={"https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_002.rptdesign&__format=pdf&PID="+id+"&username=adhi&tm=1717726294764"} type="application/pdf" width="100%" height="100%"></object>
|
||||
<div id="tabkelainanglobal"></div>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="kt_tab_pane_3" role="tabpanel" aria-labelledby="kt_tab_pane_3" style="height: 800px;">
|
||||
<object data={"https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_003.rptdesign&__format=pdf&PID="+id+"&username=adhi&tm=1717726294764"} type="application/pdf" width="100%" height="100%"></object>
|
||||
<div class="tab-pane fade" id="kt_tab_pane_3" role="tabpanel" aria-labelledby="kt_tab_pane_3">
|
||||
// <object data={"https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_003.rptdesign&__format=pdf&PID="+id+"&username=adhi&tm=1717726294764"} type="application/pdf" width="100%" height="100%"></object>
|
||||
<div id="tabkelainanlab"></div>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="kt_tab_pane_4" role="tabpanel" aria-labelledby="kt_tab_pane_4" style="height: 800px;">
|
||||
<object data={"https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_004.rptdesign&__format=pdf&PID="+id+"&username=adhi&tm=1717726294764"} type="application/pdf" width="100%" height="100%"></object>
|
||||
</div>
|
||||
<div class="tab-pane fade" id="kt_tab_pane_5" role="tabpanel" aria-labelledby="kt_tab_pane_5" style="height: 800px;">
|
||||
<div class="tab-pane fade" id="kt_tab_pane_5" role="tabpanel" aria-labelledby="kt_tab_pane_5">
|
||||
// <object data={"https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_005.rptdesign&__format=pdf&PID="+id+"&username=adhi&tm=1717726294764"} type="application/pdf" width="100%" height="100%"></object>
|
||||
<div id="tabkelainanfisik"></div>
|
||||
</div>
|
||||
|
||||
@@ -51,16 +51,29 @@ func TabViewMcuDetail(
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" hx-target=\"#tabkelainanglobal\" hx-trigger=\"click\">Kelainan global</a></li><li class=\"nav-item\"><a class=\"nav-link\" data-toggle=\"tab\" href=\"#kt_tab_pane_3\">Kelainan Lab</a></li><li class=\"nav-item\"><a class=\"nav-link\" data-toggle=\"tab\" href=\"#kt_tab_pane_4\">kelainan Non Lab</a></li><li class=\"nav-item\"><a class=\"nav-link\" data-toggle=\"tab\" href=\"#kt_tab_pane_5\" hx-get=\"")
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" hx-target=\"#tabkelainanglobal\" hx-trigger=\"click\">Kelainan global</a></li><li class=\"nav-item\"><a class=\"nav-link\" data-toggle=\"tab\" href=\"#kt_tab_pane_3\" hx-get=\"")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var4 string
|
||||
templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabkelainanfisik")
|
||||
templ_7745c5c3_Var4, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabkelainanlab")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 15, Col: 125}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" hx-target=\"#tabkelainanlab\" hx-trigger=\"click\">Kelainan Lab</a></li><li class=\"nav-item\"><a class=\"nav-link\" data-toggle=\"tab\" href=\"#kt_tab_pane_4\">kelainan Non Lab</a></li><li class=\"nav-item\"><a class=\"nav-link\" data-toggle=\"tab\" href=\"#kt_tab_pane_5\" hx-get=\"")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var5 string
|
||||
templ_7745c5c3_Var5, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabkelainanfisik")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 21, Col: 127}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var4))
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var5))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
@@ -68,12 +81,12 @@ func TabViewMcuDetail(
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var5 string
|
||||
templ_7745c5c3_Var5, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabkesimpulan")
|
||||
var templ_7745c5c3_Var6 string
|
||||
templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabkesimpulan")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 24, Col: 124}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var5))
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var6))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
@@ -81,12 +94,12 @@ func TabViewMcuDetail(
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var6 string
|
||||
templ_7745c5c3_Var6, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabdaftarpeserta")
|
||||
var templ_7745c5c3_Var7 string
|
||||
templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabdaftarpeserta")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 27, Col: 127}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var6))
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var7))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
@@ -94,49 +107,36 @@ func TabViewMcuDetail(
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var7 string
|
||||
templ_7745c5c3_Var7, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabkeuangan")
|
||||
var templ_7745c5c3_Var8 string
|
||||
templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.JoinStringErrs("/corp/dashboard_pic/detail/" + id + "/tabkeuangan")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 33, Col: 122}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var7))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" hx-target=\"#tabkeuangan\">Keuangan</a></li></ul></div><div class=\"tab-content mt-5\" id=\"myTabContent\"><div class=\"tab-pane fade show active\" id=\"kt_tab_pane_1\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_1\"><div id=\"tabkepesertaan\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_2\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_2\" style=\"height: 800px;\"><div id=\"tabkelainanglobal\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_3\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_3\" style=\"height: 800px;\"><object data=\"")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var8 string
|
||||
templ_7745c5c3_Var8, templ_7745c5c3_Err = templ.JoinStringErrs("https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_003.rptdesign&__format=pdf&PID=" + id + "&username=adhi&tm=1717726294764")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 47, Col: 167}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var8))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" type=\"application/pdf\" width=\"100%\" height=\"100%\"></object></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_4\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_4\" style=\"height: 800px;\"><object data=\"")
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" hx-target=\"#tabkeuangan\">Keuangan</a></li></ul></div><div class=\"tab-content mt-5\" id=\"myTabContent\"><div class=\"tab-pane fade show active\" id=\"kt_tab_pane_1\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_1\"><div id=\"tabkepesertaan\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_2\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_2\"><div id=\"tabkelainanglobal\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_3\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_3\"><div id=\"tabkelainanlab\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_4\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_4\" style=\"height: 800px;\"><object data=\"")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var9 string
|
||||
templ_7745c5c3_Var9, templ_7745c5c3_Err = templ.JoinStringErrs("https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_mcu_graph_004.rptdesign&__format=pdf&PID=" + id + "&username=adhi&tm=1717726294764")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 50, Col: 167}
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 51, Col: 167}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var9))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" type=\"application/pdf\" width=\"100%\" height=\"100%\"></object></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_5\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_5\" style=\"height: 800px;\"><div id=\"tabkelainanfisik\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_6\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_6\"><div id=\"tabkesimpulan\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_7\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_7\"><div id=\"tabdaftarpeserta\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_8\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_8\" style=\"height: 800px;\"><object data=\"")
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("\" type=\"application/pdf\" width=\"100%\" height=\"100%\"></object></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_5\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_5\"><div id=\"tabkelainanfisik\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_6\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_6\"><div id=\"tabkesimpulan\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_7\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_7\"><div id=\"tabdaftarpeserta\"></div></div><div class=\"tab-pane fade\" id=\"kt_tab_pane_8\" role=\"tabpanel\" aria-labelledby=\"kt_tab_pane_8\" style=\"height: 800px;\"><object data=\"")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ_7745c5c3_Err
|
||||
}
|
||||
var templ_7745c5c3_Var10 string
|
||||
templ_7745c5c3_Var10, templ_7745c5c3_Err = templ.JoinStringErrs("https://devcpone.aplikasi.web.id/birt/run?__report=report/one/mcu/rpt_summary_executive.rptdesign&__format=pdf&PID=" + id + "&username=adhi&tm=1717726294764")
|
||||
if templ_7745c5c3_Err != nil {
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 63, Col: 171}
|
||||
return templ.Error{Err: templ_7745c5c3_Err, FileName: `views\corporate\mcu\mcutabview.templ`, Line: 64, Col: 171}
|
||||
}
|
||||
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString(templ.EscapeString(templ_7745c5c3_Var10))
|
||||
if templ_7745c5c3_Err != nil {
|
||||
|
||||
Reference in New Issue
Block a user