From 6ca5af8d684f9c4268040ac3e7721a66c054508e Mon Sep 17 00:00:00 2001 From: maxbad <26058031@qq.com> Date: Sat, 13 May 2023 15:08:16 +0800 Subject: [PATCH] =?UTF-8?q?add=20=09=E7=94=9F=E6=88=90=E9=AA=8C=E8=AF=81?= =?UTF-8?q?=E5=AD=97=E5=85=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../hggen/views/curd_generate_input.go | 29 +++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/server/internal/library/hggen/views/curd_generate_input.go b/server/internal/library/hggen/views/curd_generate_input.go index 978e403..8616b54 100644 --- a/server/internal/library/hggen/views/curd_generate_input.go +++ b/server/internal/library/hggen/views/curd_generate_input.go @@ -9,8 +9,11 @@ import ( "bytes" "context" "fmt" + "hotgo/internal/dao" "hotgo/internal/model/input/sysin" + "strings" + "github.com/gogf/gf/v2/database/gdb" "github.com/gogf/gf/v2/errors/gerror" "github.com/gogf/gf/v2/frame/g" "github.com/gogf/gf/v2/text/gstr" @@ -180,5 +183,31 @@ func makeValidatorFunc(field *sysin.GenCodesColumnListModel) (err error, rule st } else { err = gerror.New("not support") } + + // 生成验证字典 + if field.DictType > 0 { + var ( + ctx = context.Background() + valueType gdb.Value + resultValue gdb.Result + ) + valueType, err = dao.SysDictType.Ctx(ctx).Fields(dao.SysDictType.Columns().Type).Where(dao.SysDictType.Columns().Id, field.DictType).Value() + if err != nil { + return + } + resultValue, err = dao.SysDictData.Ctx(context.Background()).Fields(dao.SysDictData.Columns().Value).Where(dao.SysDictData.Columns().Type, valueType.String()).All() + if err != nil { + return + } + if resultValue.Len() > 0 { + names := make([]string, 0) + for _, item := range resultValue { + names = append(names, item["value"].String()) + } + dictRule := "in:" + strings.Join(names, ",") + rule += fmt.Sprintf(EditInpValidatorGenerally, dictRule, field.GoName, field.Dc+"值不正确") + err = nil + } + } return }