step 3 : edit data group result

This commit is contained in:
sindhu
2024-05-25 17:49:24 +07:00
parent d13384ab64
commit eaabf29fda
5 changed files with 873 additions and 8 deletions

View File

@@ -22,12 +22,12 @@ import (
type GroupResultService interface {
// GetUserGroup() ([]models.UserGroup, error)
// GetUserGroupByID(id string) (models.UserGroup, error)
GetGroupResultByIDV1(id string) (models.GroupResult, error)
// try
// GetListMasterUserGroup() ([]models.UserGroupV1, error)
GetListBreadCrumb(title string) (models.BreadCrumbV1, error)
// AddUserGroup(code string, name string) (models.UserGroupV1, error)
// EditUserGroup(id string, code string, name string) (models.UserGroupV1, error)
EditGroupResult(id string, groupresultname string, groupresultflagpertest string, groupresultflagnonlab string, groupresultresumemcu string) (models.GroupResult, error)
// DeleteUserGroup(id string) (models.UserGroupV1, error)
GetListGroupResult(search string, currentPage int, rowPerPage int) ([]models.GroupResult, int, error)
GetGroupResultResumeMcu() ([]models.GroupResultResumeMcu, error)
@@ -79,7 +79,7 @@ func (lh *GroupResultHandler) HandlerShowGroupResultPaginationV1(c echo.Context)
}
contentUserGroupComponent := groupresult.TableGroupResult(
dataGroupResult, tableID, "/dev/usergroupshoweditform",
dataGroupResult, tableID, "/dev/groupresultshoweditform",
"#"+dialogEditBodyID,
"outerHTML",
"#dialogEditBodyID, #dialogEditID, #dialogDeleteBodyID, #dialogDeleteID",
@@ -157,6 +157,60 @@ func (lh *GroupResultHandler) HandleCloseForm(c echo.Context) error {
return utils.View(c, form)
}
// CLOSE FORM EDIT
func (lh *GroupResultHandler) HandleCloseFormEdit(c echo.Context) error {
logger, _ := zap.NewProduction()
defer logger.Sync()
// listItem
dataResultMcu, err := lh.GroupResultService.GetGroupResultResumeMcu()
fmt.Println(dataResultMcu)
fmt.Println(err)
if err != nil {
defer logger.Sync()
logger.Info("ERROR BREADCRUMB DEV",
zap.Any("error", err),
)
fmt.Println(dataResultMcu)
return err
}
// Component Dropdown MCU
listItemResultMcuComponent := groupresult.ItemDropdown(dataResultMcu, 0)
dialogEditBodyID := c.FormValue("dialogEditBodyID")
form := groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Type: "text", ID: "groupresultname"},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponent,
dialogEditBodyID, groupresult.HandleJSModalAddGR(""))
return utils.View(c, form)
}
// LISTING FUNCTION INITIAL
func (lh *GroupResultHandler) HandlerShowGroupResultV1(c echo.Context) error {
@@ -305,7 +359,51 @@ func (lh *GroupResultHandler) HandlerShowGroupResultV1(c echo.Context) error {
})
//Component modal edit usergroup
modalEditcomponent := groupresult.EmptyDiv1()
// modalEditcomponent := groupresult.EmptyDiv1()
//Component modal edit usergroup
modalEditcomponent := groupresult.GroupResultForm(models.GroupResultFormComponent{
IDComponent: "formgroupresultedit",
Link: "/dev/groupresult/edit",
HxTarget: "#" + dialogEditBodyID,
HxSwap: "outerHTML",
HxInclude: "#tableID, #paginationID, #searchID, #dialogEditBodyID, #dialogEditID, #" + searchID + ", #currpage" + paginationID,
ModalID: dialogEditID,
ModalTitle: "Edit-Group Result",
DialogBody: groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Type: "text", ID: "groupresultname"},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
Value: "N",
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
Value: "N",
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponent,
dialogEditBodyID, groupresult.HandleJSModalAddGR("")),
DialogAction: groupresult.DialogNewActionV1("/dev/groupresulthandlecloseformedit", "#"+dialogEditBodyID, "outerHTML", "#"+dialogEditID),
ButtonCLose: groupresult.BtnCloseNewV1("/dev/groupresulthandlecloseformedit", "#"+dialogEditBodyID, "outerHTML", "#"+dialogEditID),
})
//Component modal delete usergroup
modalDeletecomponent := groupresult.EmptyDiv1()
@@ -313,7 +411,7 @@ func (lh *GroupResultHandler) HandlerShowGroupResultV1(c echo.Context) error {
//table listing user group component
contentUserGroupComponent := groupresult.TableGroupResult(
dataGroupResult, tableID,
"/dev/usergroupshoweditform",
"/dev/groupresultshoweditform",
"#"+dialogEditBodyID,
"outerHTML",
"#dialogEditBodyID, #dialogEditID, #dialogDeleteBodyID, #dialogDeleteID",
@@ -379,7 +477,7 @@ func (lh *GroupResultHandler) HandlerShowGroupResultV1(c echo.Context) error {
}
// PROSES ADD DATA
func (lh *GroupResultHandler) AddUserGroup(c echo.Context) error {
func (lh *GroupResultHandler) AddGroupResult(c echo.Context) error {
logger, _ := zap.NewProduction()
defer logger.Sync()
@@ -729,3 +827,400 @@ func (lh *GroupResultHandler) HandlerShowGroupResultSearchV1(c echo.Context) err
return utils.ViewMulti(c, retval)
// return utils.View(c, si)
}
// FORM EDIT SHOW
func (lh *GroupResultHandler) HandleEditForm(c echo.Context) error {
println("Masuk change edit form")
logger, _ := zap.NewProduction()
defer logger.Sync()
id := c.QueryParam("id")
dialogEditID := c.QueryParam("dialogEditID")
dialogEditBodyID := c.QueryParam("dialogEditBodyID")
// listItem
dataResultMcu, err := lh.GroupResultService.GetGroupResultResumeMcu()
fmt.Println(dataResultMcu)
fmt.Println(err)
if err != nil {
defer logger.Sync()
logger.Info("ERROR BREADCRUMB DEV",
zap.Any("error", err),
)
fmt.Println(dataResultMcu)
return err
}
// Component Dropdown MCU default
listItemResultMcuComponent := groupresult.ItemDropdown(dataResultMcu, 0)
// get data by id
dataGroupList, err := lh.GroupResultService.GetGroupResultByIDV1(id)
if err != nil {
test := groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Type: "text", ID: "groupresultname"},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponent,
dialogEditBodyID, groupresult.HandleJSModalAddGRShow("#"+dialogEditID))
coba := utils.ViewMulti(c, []templ.Component{
customtoastv2.CustomToastV2Show("Error", err.Error(), "danger"),
test})
return coba
}
// Component Dropdown MCU
var idSelectedGroupResultResumeMcu int = 0
for _, x := range dataResultMcu {
if x.Text == dataGroupList.Group_ResultResumeMcu {
idSelectedGroupResultResumeMcu = x.ID
}
}
listItemResultMcuComponentPopulate := groupresult.ItemDropdown(dataResultMcu, idSelectedGroupResultResumeMcu)
form := groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
Value: strconv.Itoa(dataGroupList.Group_ResultID),
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Type: "text", ID: "groupresultname",
Value: dataGroupList.Group_ResultName,
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
Value: dataGroupList.Group_ResultFlagPerTest,
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
Value: dataGroupList.Group_ResultFlagNonLab,
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponentPopulate,
dialogEditBodyID, groupresult.HandleJSModalAddGRShow("#"+dialogEditID))
coba := utils.ViewMulti(c, []templ.Component{form})
return coba
}
// PROSES EDIT DATA
func (lh *GroupResultHandler) EditGroupResult(c echo.Context) error {
logger, _ := zap.NewProduction()
defer logger.Sync()
// DARI FORM ADD NYA
groupresultname := c.FormValue("groupresultname")
groupresultflagpertest := c.FormValue("groupresultflagpertest")
groupresultflagnonlab := c.FormValue("groupresultflagnonlab")
groupresultresumemcu := c.FormValue("groupresultresumemcu")
// setting flag test dan flagnonlab
var flagPerTest string = "N"
var flagNonLab string = "N"
id := c.FormValue("groupresultid")
tableID := c.FormValue("tableID")
paginationID := c.FormValue("paginationID")
searchID := c.FormValue("searchID")
search := c.FormValue("search")
dialogEditBodyID := c.FormValue("dialogEditBodyID")
dialogEditID := c.FormValue("dialogEditID")
dialogDeleteBodyID := c.FormValue("dialogDeleteBodyID")
currPagePrm := c.FormValue("currpage" + paginationID)
currPage, err := strconv.Atoi(currPagePrm)
if err != nil {
return err
}
logger.Info("Edit USER GROUP PARAM",
zap.Any("id", id),
zap.Any("groupresultname", groupresultname),
zap.Any("groupresultflagpertest", groupresultflagpertest),
zap.Any("groupresultflagnonlab", groupresultflagnonlab),
zap.Any("groupresultresumemcu", groupresultresumemcu),
zap.Any("tableid", tableID),
zap.Any("search", search),
zap.Any("currpage", currPage),
)
// listItem
dataResultMcu, err := lh.GroupResultService.GetGroupResultResumeMcu()
fmt.Println(dataResultMcu)
fmt.Println(err)
if err != nil {
defer logger.Sync()
logger.Info("ERROR BREADCRUMB DEV",
zap.Any("error", err),
)
fmt.Println(dataResultMcu)
return err
}
// Component Dropdown MCU
listItemResultMcuComponentInitial := groupresult.ItemDropdown(dataResultMcu, 0)
// check dropdown result mcu
var idSelectedGroupResultResumeMcu int
idSelectedGroupResultResumeMcu, err = strconv.Atoi(groupresultresumemcu)
if err != nil {
// Tangani kesalahan konversi
fmt.Println("Error converting string to int:", err)
// return
test := groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Type: "text", ID: "groupresultname"},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponentInitial,
dialogEditBodyID, groupresult.HandleJSModalAddGR(""),
)
coba := utils.ViewMulti(c, []templ.Component{
customtoastv2.CustomToastV2Show("Error", "Error converting string to int", "error"),
test})
return coba
}
var groupresultresumemcuNew string
for _, x := range dataResultMcu {
if x.ID == idSelectedGroupResultResumeMcu {
groupresultresumemcuNew = x.Text
}
}
// check group result flag per test
if groupresultflagpertest == "on" {
flagPerTest = "Y"
}
// check group result flag non lab
if groupresultflagnonlab == "on" {
flagNonLab = "Y"
}
if strings.TrimSpace(groupresultname) == "" {
listItemResultMcuComponent := groupresult.ItemDropdown(dataResultMcu, idSelectedGroupResultResumeMcu)
test := groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
Value: id,
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Value: groupresultname,
Type: "text", ID: "groupresultname"},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
Value: groupresultflagpertest,
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
Value: groupresultflagnonlab,
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponent,
dialogEditBodyID, groupresult.HandleJSModalAddGR(""))
coba := utils.ViewMulti(c, []templ.Component{
customtoastv2.CustomToastV2Show("Warning", "Code and name cannot empty", "warning"),
test})
return coba
}
dataUserGroup, err := lh.GroupResultService.EditGroupResult(id, groupresultname, flagPerTest, flagNonLab, groupresultresumemcuNew)
if err != nil {
listItemResultMcuComponent := groupresult.ItemDropdown(dataResultMcu, idSelectedGroupResultResumeMcu)
logger.Info("Error",
zap.Any("Error", err),
zap.Any("groupresultname", groupresultname),
zap.Any("groupresultflagpertest", groupresultflagpertest),
zap.Any("groupresultflagnonlab", groupresultflagnonlab),
zap.Any("groupresultresumemcu", groupresultresumemcu),
)
test := groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
Value: id,
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Value: groupresultname,
Type: "text", ID: "groupresultname"},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
Value: groupresultflagpertest,
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
Value: groupresultflagnonlab,
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponent,
dialogEditBodyID, groupresult.HandleJSModalAddGR(""))
coba := utils.ViewMulti(c, []templ.Component{
customtoastv2.CustomToastV2Show("Error", err.Error(), "danger"),
test})
return coba
}
logger.Info("ADD USER GROUP",
zap.Any("return", dataUserGroup),
zap.Any("groupresultname", groupresultname),
zap.Any("groupresultflagpertest", groupresultflagpertest),
zap.Any("groupresultflagnonlab", groupresultflagnonlab),
zap.Any("groupresultresumemcu", groupresultresumemcu),
)
dataGroupList, totalpage, err := lh.GroupResultService.GetListGroupResult(search, currPage, 5)
if err != nil {
defer logger.Sync()
logger.Info("ERROR GET GROUP RESULT",
zap.Any("error", err),
)
return err
}
newForm := groupresult.DialogNewBodyV1(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
},
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Type: "text", ID: "groupresultname"},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
},
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
},
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItemResultMcuComponentInitial,
dialogEditBodyID, groupresult.HandleJSModalAddGR("#"+dialogEditID))
contentUserGroupComponent := groupresult.TableGroupResult(
dataGroupList, tableID, "/dev/groupresultshoweditform",
"#"+dialogEditBodyID,
"outerHTML",
"#dialogEditBodyID, #dialogEditID, #dialogDeleteBodyID, #dialogDeleteID",
"/dev/usergroupshowdeleteform",
"#"+dialogDeleteBodyID,
"outerHTML",
"#dialogDeleteBodyID, #dialogDeleteID, #dialogEditBodyID, #dialogEditID")
userGroupPaginationComponent := pagination.PaginationV2(totalpage,
currPage,
"/dev/groupresultv1pagination",
paginationID,
"#tableID, #searchID, #"+searchID+", #paginationID, #dialogEditBodyID, #dialogEditID, #dialogDeleteBodyID, #dialogDeleteID",
"#"+paginationID, "outerHTML", "", "true")
toastSuccess := customtoastv2.CustomToastV2Show("Success", "Success edit Group Result Name : "+groupresultname, "success")
retval := []templ.Component{toastSuccess, contentUserGroupComponent, userGroupPaginationComponent, newForm}
// time.Sleep(20 * time.Second)
return utils.ViewMulti(c, retval)
}

View File

@@ -239,7 +239,10 @@ func SetupRoutesDev(app *echo.Echo, appStore db.AppStore) {
dev.GET("/searchgroupresultv1", devGRhandlers.HandlerShowGroupResultSearchV1)
dev.GET("/groupresultv1pagination", devGRhandlers.HandlerShowGroupResultPaginationV1)
dev.POST("/groupresulthandlecloseform", devGRhandlers.HandleCloseForm)
dev.POST("/groupresulthandlecloseformedit", devGRhandlers.HandleCloseFormEdit)
dev.GET("/groupresultshoweditform", devGRhandlers.HandleEditForm)
// form add
dev.POST("/groupresult/add", devGRhandlers.AddUserGroup)
dev.POST("/groupresult/add", devGRhandlers.AddGroupResult)
dev.POST("/groupresult/edit", devGRhandlers.EditGroupResult)
}

View File

@@ -692,7 +692,20 @@ func (ug *ServicesGroupResult) GetGroupResultByIDV1(id string) (models.GroupResu
logger, _ := zap.NewProduction()
var data models.GroupResult
err := dbx.Handlex.Get(&data, `SELECT * FROM group_result
err := dbx.Handlex.Get(&data, `SELECT
Group_ResultID,
Group_ResultName,
CASE
WHEN Group_ResultFlagPerTest = 'Y' THEN 'on'
ELSE Group_ResultFlagPerTest
END AS Group_ResultFlagPerTest,
CASE
WHEN Group_ResultFlagNonLab = 'Y' THEN 'on'
ELSE Group_ResultFlagNonLab
END AS Group_ResultFlagNonLab,
Group_ResultResumeMcu,
Group_ResultIsActive
FROM group_result
WHERE Group_ResultID = ?`, id)
if err != nil {
@@ -774,3 +787,63 @@ func (ug *ServicesGroupResult) AddGroupResult(groupresultname string, groupresul
}
return data, nil
}
// EDIT DATA
func (ug *ServicesGroupResult) EditGroupResult(id string, groupresultname string, groupresultflagpertest string, groupresultflagnonlab string, groupresultresumemcu string) (models.GroupResult, error) {
logger, _ := zap.NewProduction()
var data models.GroupResult
var datacek []models.GroupResult
prm := "%" + strings.TrimSpace(groupresultname) + "%"
qryCek := `SELECT Group_ResultName FROM group_result WHERE Group_ResultName LIKE ? AND Group_ResultIsActive = 'Y' AND Group_ResultID <> ?`
err := dbx.Handlex.Select(&datacek, qryCek, prm, id)
if err != nil {
defer logger.Sync()
logger.Error("Error cek data by code",
zap.String("groupresultname", groupresultname),
zap.Any("datacek", datacek),
)
return data, fmt.Errorf("QUERY_FAILED")
}
if len(datacek) > 0 {
defer logger.Sync()
logger.Error("Code already taken by another data",
zap.String("groupresultname", groupresultname),
)
return data, fmt.Errorf("group result name sudah dipakai")
}
qry := `UPDATE group_result
SET Group_ResultName = ?,
Group_ResultFlagPerTest = ?,
Group_ResultFlagNonLab = ?,
Group_ResultResumeMcu = ?
WHERE Group_ResultID = ?`
// time.Sleep(5 * time.Second)
rst := dbx.Handlex.MustExec(qry, groupresultname, groupresultflagpertest, groupresultflagnonlab, groupresultresumemcu, id)
_, err = rst.RowsAffected()
if err != nil {
defer logger.Sync()
logger.Error("Error Update group result",
zap.Any("groupresultname", groupresultname),
zap.Any("groupresultflagpertest", groupresultflagpertest),
zap.Any("groupresultflagnonlab", groupresultflagnonlab),
zap.Any("groupresultresumemcu", groupresultresumemcu),
)
return data, fmt.Errorf("QUERY_FAILED")
}
data, err = ug.GetGroupResultByIDV1(id)
if err != nil {
defer logger.Sync()
logger.Error("Error get group result by id",
zap.Any("groupresultname", groupresultname),
zap.Any("groupresultflagpertest", groupresultflagpertest),
zap.Any("groupresultflagnonlab", groupresultflagnonlab),
zap.Any("groupresultresumemcu", groupresultresumemcu),
)
return data, fmt.Errorf("QUERY_FAILED")
}
return data, nil
}

View File

@@ -0,0 +1,101 @@
package groupresult
import (
"cpone/models"
"cpone/component/customtextfield"
"cpone/component/customcheckbox"
"cpone/component/customdropdown"
)
templ DialogEditForm(groupresultname string, groupresultflagpertest string, groupresultflagnonlab string, listItem templ.Component) {
@customtextfield.CustomTextFieldv2(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
})
@customtextfield.CustomTextFieldv2(
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Value: groupresultname,
Type: "text", ID: "groupresultname"})
@customcheckbox.MainCustomCheckboxInput(
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
Value: groupresultflagpertest,
})
@customcheckbox.MainCustomCheckboxInput(
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
Value: groupresultflagnonlab,
})
@customdropdown.MainCustomDropdownInput(
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItem)
}
templ DialogEditBody(groupresultname string, groupresultflagpertest string, groupresultflagnonlab string, listItem templ.Component) {
<div id="modalbdyEdit">
@DialogEditForm(groupresultname, groupresultflagpertest, groupresultflagnonlab, listItem)
</div>
<div>
// <div class="text-center text-primary" id="modalLoadEdit" style="">
// <div class="spinner-border" role="status"></div>
// </div>
</div>
}
templ LoadingSpinner() {
<div id="modalbdyEdit">
<div class="text-center text-primary">
<div class="spinner-border" role="status"></div>
</div>
</div>
}
templ DialogEditAction() {
<div>
<button
id="btledit"
type="button"
hx-swap="delete"
hx-target="#modalbdyEdit"
onclick="htmx.trigger('.btneditusgp', 'htmx:abort')"
class="btn btn-outline-secondary font-weight-bolder rounded-lg mr-4"
data-dismiss="modal"
>
Batal
</button>
<button
type="button"
class="btn btn-primary btn-shadow font-weight-bold rounded-lg"
>
Save changes
</button>
</div>
}
templ BtnCloseEdit() {
<button
type="button"
class="close"
data-dismiss="modal"
aria-label="Close"
hx-target="#modalbdyEdit"
onclick="htmx.trigger('.btneditusgp', 'htmx:abort')"
>
<i aria-hidden="true" class="ki ki-close"></i>
</button>
}

View File

@@ -0,0 +1,193 @@
// Code generated by templ - DO NOT EDIT.
// templ: version: v0.2.663
package groupresult
//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"
import (
"cpone/component/customcheckbox"
"cpone/component/customdropdown"
"cpone/component/customtextfield"
"cpone/models"
)
func DialogEditForm(groupresultname string, groupresultflagpertest string, groupresultflagnonlab string, listItem 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 = customtextfield.CustomTextFieldv2(
models.CustomTextFieldv2Prm{
Label: "Group Result name",
Name: "groupresultid",
Placeholder: "Group Result name",
Type: "hidden",
ID: "groupresultid",
}).Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = customtextfield.CustomTextFieldv2(
models.CustomTextFieldv2Prm{
Label: "Group Result Name",
Name: "groupresultname",
Placeholder: "Group Result Name",
Value: groupresultname,
Type: "text", ID: "groupresultname"}).Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = customcheckbox.MainCustomCheckboxInput(
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Per Test (Dicentang Maka Ya)",
Name: "groupresultflagpertest",
ID: "groupresultflagpertest",
Value: groupresultflagpertest,
}).Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = customcheckbox.MainCustomCheckboxInput(
models.CustomCheckboxv1Prm{
Label: "Group Result Flag Non Lab (Dicentang Maka Ya)",
Name: "groupresultflagnonlab",
ID: "groupresultflagnonlab",
Value: groupresultflagnonlab,
}).Render(ctx, templ_7745c5c3_Buffer)
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = customdropdown.MainCustomDropdownInput(
models.CustomDropdownv1Prm{
Label: "Group Result Resume MCU",
Name: "groupresultresumemcu",
ID: "groupresultresumemcu",
},
listItem).Render(ctx, templ_7745c5c3_Buffer)
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
})
}
func DialogEditBody(groupresultname string, groupresultflagpertest string, groupresultflagnonlab string, listItem 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_Var2 := templ.GetChildren(ctx)
if templ_7745c5c3_Var2 == nil {
templ_7745c5c3_Var2 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div id=\"modalbdyEdit\">")
if templ_7745c5c3_Err != nil {
return templ_7745c5c3_Err
}
templ_7745c5c3_Err = DialogEditForm(groupresultname, groupresultflagpertest, groupresultflagnonlab, listItem).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
})
}
func LoadingSpinner() 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_Var3 := templ.GetChildren(ctx)
if templ_7745c5c3_Var3 == nil {
templ_7745c5c3_Var3 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div id=\"modalbdyEdit\"><div class=\"text-center text-primary\"><div class=\"spinner-border\" role=\"status\"></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
})
}
func DialogEditAction() 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_Var4 := templ.GetChildren(ctx)
if templ_7745c5c3_Var4 == nil {
templ_7745c5c3_Var4 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<div><button id=\"btledit\" type=\"button\" hx-swap=\"delete\" hx-target=\"#modalbdyEdit\" onclick=\"htmx.trigger(&#39;.btneditusgp&#39;, &#39;htmx:abort&#39;)\" class=\"btn btn-outline-secondary font-weight-bolder rounded-lg mr-4\" data-dismiss=\"modal\">Batal\r</button> <button type=\"button\" class=\"btn btn-primary btn-shadow font-weight-bold rounded-lg\">Save changes\r</button></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
})
}
func BtnCloseEdit() 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_Var5 := templ.GetChildren(ctx)
if templ_7745c5c3_Var5 == nil {
templ_7745c5c3_Var5 = templ.NopComponent
}
ctx = templ.ClearChildren(ctx)
_, templ_7745c5c3_Err = templ_7745c5c3_Buffer.WriteString("<button type=\"button\" class=\"close\" data-dismiss=\"modal\" aria-label=\"Close\" hx-target=\"#modalbdyEdit\" onclick=\"htmx.trigger(&#39;.btneditusgp&#39;, &#39;htmx:abort&#39;)\"><i aria-hidden=\"true\" class=\"ki ki-close\"></i></button>")
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
})
}