diff --git a/dsBaseRpc/RpcService/BaseMenu/BaseMenuDao/BaseMenuDao.go b/dsBaseRpc/RpcService/BaseMenu/BaseMenuDao/BaseMenuDao.go index 76b025af..09cc0fde 100644 --- a/dsBaseRpc/RpcService/BaseMenu/BaseMenuDao/BaseMenuDao.go +++ b/dsBaseRpc/RpcService/BaseMenu/BaseMenuDao/BaseMenuDao.go @@ -18,6 +18,19 @@ func AddBaseMenu(ms models.TBaseMenu) (int64, error) { return db.Insert(ms) } +//获取同一个parentId下的最大排序号 +func GetMaxSortId(parentId string) (int64, error) { + sql := `select max(sort_id)+1 as sort_id from t_base_menu where b_use=1 and parent_id=?` + list, err := db.SQL(sql, parentId).Query().List() + if err != nil { + return 0, err + } + if len(list) == 0 { + return 0, errors.New("查询最大排序号时失败!") + } + return list[0]["sort_id"].(int64), nil +} + //检查一个菜单编码是不是已存在 func ExistMenuCode(menuCode string) (bool, error) { sql := `select count(1) as c from t_base_menu where b_use=1 and menu_code=?` diff --git a/dsBaseRpc/RpcService/BaseMenu/BaseMenuService/BaseMenuService.go b/dsBaseRpc/RpcService/BaseMenu/BaseMenuService/BaseMenuService.go index 6579707a..a87e1309 100644 --- a/dsBaseRpc/RpcService/BaseMenu/BaseMenuService/BaseMenuService.go +++ b/dsBaseRpc/RpcService/BaseMenu/BaseMenuService/BaseMenuService.go @@ -70,7 +70,8 @@ func (s *Rpc) AddBaseMenu(ctx context.Context, in *BaseMenuProto.ModelArg) (*Bas model.MenuCode = in.MenuCode model.MenuUrl = in.MenuUrl model.MenuIcon = in.MenuIcon - model.SortId = in.SortId + sortId, _ := BaseMenuDao.GetMaxSortId(in.ParentId) + model.SortId = int32(sortId) model.BUse = 1 //增加 _, err = BaseMenuDao.AddBaseMenu(*model)