revisi open dialog edit & edit user group

This commit is contained in:
Sas Andy
2024-05-22 15:37:37 +07:00
parent 4c12c45aa8
commit caa6dba306
2 changed files with 179 additions and 10 deletions

View File

@@ -128,14 +128,14 @@ func (lh *MdUserGroupHandler) HandleShowMdUserGroupScreen(c echo.Context) error
"text",
"/dev/md/usergroupv2/filter",
"input changed delay:500ms, search",
"#"+paginationID, "", "", "outerHTML", "#tableID, #paginationID, #searchID")
"#"+paginationID, "", "", "outerHTML", "#tableID, #paginationID, #searchID, #dialogEditBodyID, #dialogEditID")
//Pagination
userGroupPaginationComponent := pagination.PaginationV2(
totalPage,
1,
"/dev/md/usergroupv2/changepage",
paginationID,
"#tableID, #searchID, #"+searchID+", #paginationID",
"#tableID, #searchID, #"+searchID+", #paginationID, #dialogEditBodyID, #dialogEditID",
"#"+paginationID,
"outerHTML", "", "",
)
@@ -214,7 +214,7 @@ func (lh *MdUserGroupHandler) HandleShowMdUserGroupScreen(c echo.Context) error
modalEditFormComponent := dev_mdusergroupview.UserGroupForm(
models.UserGroupFormComponent{
IDComponent: "formusergroup",
Link: "",
Link: "/dev/md/usergroupv2/edit",
HxTarget: "#" + dialogEditBodyID,
HxSwap: "outerHTML",
HxInclude: "#tableID, #paginationID, #searchID, #dialogEditBodyID, #dialogEditID, #" + searchID + ", #currpage" + paginationID,
@@ -273,7 +273,7 @@ func (lh *MdUserGroupHandler) HandleFilterMdUserGroup(c echo.Context) error {
}
tableComponent := dev_mdusergroupview.TableUserGroup(dataUserGroup,
tableID,
"",
"/dev/md/usergroupv2/openedit",
"#"+dialogEditBodyID,
"outerHTML",
"#dialogEditBodyID, #dialogEditID")
@@ -282,7 +282,7 @@ func (lh *MdUserGroupHandler) HandleFilterMdUserGroup(c echo.Context) error {
1,
"/dev/md/usergroupv2/changepage",
paginationID,
"#tableID, #searchID, #"+searchID+", #paginationID",
"#tableID, #searchID, #"+searchID+", #paginationID, #dialogEditBodyID, #dialogEditID",
"#"+paginationID,
"outerHTML", "", "",
)
@@ -319,7 +319,7 @@ func (lh *MdUserGroupHandler) HandleChangePageMdUserGroup(c echo.Context) error
}
tableComponent := dev_mdusergroupview.TableUserGroup(dataUserGroup,
tableID,
"",
"/dev/md/usergroupv2/openedit",
"#"+dialogEditBodyID,
"outerHTML",
"#dialogEditBodyID, #dialogEditID",
@@ -329,7 +329,7 @@ func (lh *MdUserGroupHandler) HandleChangePageMdUserGroup(c echo.Context) error
page,
"/dev/md/usergroupv2/changepage",
paginationID,
"#tableID, #searchID, #"+searchID+", #paginationID",
"#tableID, #searchID, #"+searchID+", #paginationID, #dialogEditBodyID, #dialogEditID",
"#"+paginationID,
"outerHTML", "", "",
)
@@ -494,7 +494,7 @@ func (lh *MdUserGroupHandler) HandleAddUserGroup(c echo.Context) error {
currPage,
"/dev/md/usergroupv2/changepage",
paginationID,
"#tableID, #searchID, #"+searchID+", #paginationID",
"#tableID, #searchID, #"+searchID+", #paginationID, #dialogEditBodyID, #dialogEditID",
"#"+paginationID,
"outerHTML", "", "true",
)
@@ -569,7 +569,7 @@ func (lh *MdUserGroupHandler) HandleOpenEditForm(c echo.Context) error {
Label: "Kode User Group",
Name: "usergroupid",
Placeholder: "Kode user group",
Value: id,
Value: strconv.Itoa(dataUserGroup.M_UserGroupID),
Type: "hidden", ID: "usergroupinputid"},
dialogEditBodyID, dev_mdusergroupview.JsShowModal("#"+dialogEditID))
return utils.View(c, newForm)
@@ -595,3 +595,171 @@ func (lh *MdUserGroupHandler) HandleCloseFormEdit(c echo.Context) error {
dialogEditBodyID, dev_mdusergroupview.JsHideModal(""))
return utils.View(c, newForm)
}
func (lh *MdUserGroupHandler) HandleEditUserGroup(c echo.Context) error {
logger, _ := zap.NewProduction()
defer logger.Sync()
//prm form addusergroup
code := c.FormValue("usergroupcode")
name := c.FormValue("usergroupname")
id := c.FormValue("usergroupid")
tableID := c.FormValue("tableID")
paginationID := c.FormValue("paginationID")
searchID := c.FormValue("searchID")
search := c.FormValue("search")
currPagePrm := c.FormValue("currpage" + paginationID)
// dialogAddBodyID := c.FormValue("dialogAddBodyID")
dialogEditID := c.FormValue("dialogEditID")
dialogEditBodyID := c.FormValue("dialogEditBodyID")
currPage, err := strconv.Atoi(currPagePrm)
if err != nil {
return err
}
logger.Info("ADD USER GROUP PARAM",
zap.Any("code", code),
zap.Any("nama", name),
zap.Any("tableid", tableID),
zap.Any("search", search),
zap.Any("currpage", currPage),
)
formValidation := ""
codeValidation := ""
nameValidation := ""
if strings.TrimSpace(code) == "" {
formValidation = "Code user group tidak boleh kosong"
codeValidation = "Code user group tidak boleh kosong"
nameValidation = ""
}
if strings.TrimSpace(name) == "" {
formValidation = "Nama user group tidak boleh kosong"
codeValidation = ""
nameValidation = "Nama user group tidak boleh kosong"
}
if strings.TrimSpace(code) == "" && strings.TrimSpace(name) == "" {
formValidation = "Code dan nama user group tidak boleh kosong"
codeValidation = "Code user group tidak boleh kosong"
nameValidation = "Nama user group tidak boleh kosong"
}
if formValidation != "" || codeValidation != "" || nameValidation != "" {
newForm := dev_mdusergroupview.BodyFormUserGroup(
models.CustomTextFieldv2Prm{
Label: "Kode User Group",
Name: "usergroupcode",
Placeholder: "Kode user group",
ErrorMsg: codeValidation,
Value: code,
Type: "text"},
models.CustomTextFieldv2Prm{
Label: "Nama User Group",
Name: "usergroupname",
Placeholder: "Nama user group",
ErrorMsg: nameValidation,
Value: name,
Type: "text"},
models.CustomTextFieldv2Prm{
Label: "Kode User Group",
Name: "usergroupid",
Placeholder: "Kode user group",
Type: "hidden", ID: "usergroupinputid"},
dialogEditBodyID, dev_mdusergroupview.JsHideModal(""))
return utils.ViewMulti(c, []templ.Component{customtoastv2.CustomToastV2Show("Warning", formValidation, "warning"), newForm})
}
//edit user group service
dataUserGroup, err := lh.MdUserGroupServices.EditMdUsergroup(id, code, name)
if err != nil {
logger.Info("Error",
zap.Any("Error", err),
zap.Any("code", code),
zap.Any("name", name),
)
newForm := dev_mdusergroupview.BodyFormUserGroup(
models.CustomTextFieldv2Prm{
Label: "Kode User Group",
Name: "usergroupcode",
Placeholder: "Kode user group",
ErrorMsg: codeValidation,
Value: code,
Type: "text"},
models.CustomTextFieldv2Prm{
Label: "Nama User Group",
Name: "usergroupname",
Placeholder: "Nama user group",
ErrorMsg: nameValidation,
Value: name,
Type: "text"},
models.CustomTextFieldv2Prm{
Label: "Kode User Group",
Name: "usergroupid",
Placeholder: "Kode user group",
Type: "hidden", ID: "usergroupinputid"},
dialogEditBodyID, dev_mdusergroupview.JsHideModal(""))
return utils.ViewMulti(c, []templ.Component{
customtoastv2.CustomToastV2Show("Error", err.Error(), "danger"),
newForm})
}
logger.Info("ADD USER GROUP",
zap.Any("return", dataUserGroup),
zap.Any("code", code),
zap.Any("name", name),
)
//get list user group for table
dataUserGroupList, totalPage, err := lh.MdUserGroupServices.GetListMdUserGroup(search, currPage, 5)
if err != nil {
defer logger.Sync()
logger.Info("ERROR GET USER GROUP",
zap.Any("error", err),
)
fmt.Println(dataUserGroup)
return err
}
//table component
tableComponent := dev_mdusergroupview.TableUserGroup(dataUserGroupList,
tableID,
"",
"#"+dialogEditBodyID,
"outerHTML",
"#dialogEditBodyID, #dialogEditID")
//pagination component
//Pagination
userGroupPaginationComponent := pagination.PaginationV2(
totalPage,
currPage,
"/dev/md/usergroupv2/changepage",
paginationID,
"#tableID, #searchID, #"+searchID+", #paginationID, #dialogEditBodyID, #dialogEditID",
"#"+paginationID,
"outerHTML", "", "true",
)
var retVal []templ.Component
newForm := dev_mdusergroupview.BodyFormUserGroup(
models.CustomTextFieldv2Prm{
Label: "Kode User Group",
Name: "usergroupcode",
Placeholder: "Kode user group",
ErrorMsg: codeValidation,
Type: "text"},
models.CustomTextFieldv2Prm{
Label: "Nama User Group",
Name: "usergroupname",
Placeholder: "Nama user group",
ErrorMsg: nameValidation,
Type: "text"},
models.CustomTextFieldv2Prm{
Label: "Kode User Group",
Name: "usergroupid",
Placeholder: "Kode user group",
Type: "hidden", ID: "usergroupinputid"},
dialogEditBodyID, dev_mdusergroupview.JsHideModal("#"+dialogEditID))
toastSuccess := customtoastv2.CustomToastV2Show("Success", "Berhasil edit User group "+name, "success")
retVal = append(retVal, toastSuccess)
retVal = append(retVal, tableComponent)
retVal = append(retVal, userGroupPaginationComponent)
retVal = append(retVal, newForm)
return utils.ViewMulti(c, retVal)
}

View File

@@ -219,8 +219,9 @@ func SetupRoutesDev(app *echo.Echo, appStore db.AppStore) {
dev.GET("/md/usergroupv2/filter", devMdUserGroupHandlers.HandleFilterMdUserGroup)
dev.GET("/md/usergroupv2/changepage", devMdUserGroupHandlers.HandleChangePageMdUserGroup)
dev.POST("/md/usergroupv2/closeaddform", devMdUserGroupHandlers.HandleCloseFormAdd)
dev.POST("/md/usergroupv2/closeeditform", devMdUserGroupHandlers.HandleCloseFormEdit)
dev.POST("/md/usergroupv2/add", devMdUserGroupHandlers.HandleAddUserGroup)
dev.GET("/md/usergroupv2/openedit", devMdUserGroupHandlers.HandleOpenEditForm)
dev.POST("/md/usergroupv2/closeeditform", devMdUserGroupHandlers.HandleCloseFormEdit)
dev.POST("/md/usergroupv2/edit", devMdUserGroupHandlers.HandleEditUserGroup)
}