增加单表某字段权限及类型控制功能

This commit is contained in:
hoteas
2022-10-19 03:37:52 +08:00
parent 458cefd0ac
commit 8d1ad4499d
3 changed files with 126 additions and 55 deletions
+7 -4
View File
@@ -55,8 +55,8 @@ func (that *MakeCode) Db2JSON(db *db.HoTimeDB, config Map) {
that.RuleConfig = append(that.RuleConfig, ruleLis.GetMap(k))
}
} else {
for _, v := range ColumnNameType {
that.RuleConfig = append(that.RuleConfig, Map{"name": v.Name, "list": v.List, "edit": v.Edit, "info": v.Info, "must": v.Must, "strict": v.Strict, "type": v.Type})
for _, v := range RuleConfig {
that.RuleConfig = append(that.RuleConfig, ObjToMap(DeepCopyMap(v)))
}
if db != nil {
_ = os.MkdirAll(filepath.Dir(config.GetString("rule")), os.ModeDir)
@@ -207,7 +207,8 @@ func (that *MakeCode) Db2JSON(db *db.HoTimeDB, config Map) {
for _, ColumnName := range that.RuleConfig {
if (ColumnName.GetBool("strict") && coloum.GetString("name") == ColumnName.GetString("name")) ||
(!ColumnName.GetBool("strict") && strings.Contains(coloum.GetString("name"), ColumnName.GetString("name"))) {
(!ColumnName.GetBool("strict") && strings.Contains(coloum.GetString("name"), ColumnName.GetString("name"))) ||
(info.GetString("name")+"."+coloum.GetString("name") == ColumnName.GetString("name")) {
//全部都不需要则不加入
if ColumnName.GetBool("edit") == false && ColumnName.GetBool("list") == false && ColumnName.GetBool("info") == false {
coloum["notUse"] = true
@@ -215,7 +216,7 @@ func (that *MakeCode) Db2JSON(db *db.HoTimeDB, config Map) {
}
coloum["info"] = ColumnName.GetBool("info")
coloum["edit"] = ColumnName.GetBool("edit")
coloum["add"] = ColumnName.GetBool("edit")
coloum["add"] = ColumnName["add"]
coloum["list"] = ColumnName.GetBool("list")
coloum["must"] = ColumnName.GetBool("must")
@@ -224,6 +225,8 @@ func (that *MakeCode) Db2JSON(db *db.HoTimeDB, config Map) {
}
if ColumnName.GetBool("edit") {
delete(coloum, "edit")
}
if ColumnName["add"] == nil || ColumnName.GetBool("add") {
delete(coloum, "add")
}
if ColumnName.GetBool("list") {