// Package genin // @Link https://github.com/xiujiecn/xiu-admin // @Copyright Copyright (c) 2026 LiXiujie // @Author Lxj // @License https://github.com/xiujiecn/xiu-admin/blob/master/LICENSE // @AutoGenerate Version package model import ( "context" "git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/consts" "git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/library/xgorm/hook" "git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/model/entity" "git.5iot.com/iotlcm-public/iotlcm-admin-svr/internal/model/request" "slices" "github.com/gogf/gf/v2/errors/gerror" "github.com/gogf/gf/v2/os/gtime" "github.com/gogf/gf/v2/text/gstr" ) // TApiResourceUpdateFields 修改开放接口资源表字段过滤 type TApiResourceUpdateFields struct { ApiName string `json:"apiName" dc:"接口名称"` ApiCode string `json:"apiCode" dc:"接口权限标识"` Method string `json:"method" dc:"请求方法:GET/POST/PUT/DELETE"` Path string `json:"path" dc:"接口路径"` Status int `json:"status" dc:"状态:0启用,1停用"` Version string `json:"version" dc:"接口版本"` Remark string `json:"remark" dc:"备注"` TenantId string `json:"tenantId" dc:"租户ID"` UpdatedBy int64 `json:"updatedBy" dc:"更新者"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } // TApiResourceInsertFields 新增开放接口资源表字段过滤 type TApiResourceInsertFields struct { ApiName string `json:"apiName" dc:"接口名称"` ApiCode string `json:"apiCode" dc:"接口权限标识"` Method string `json:"method" dc:"请求方法:GET/POST/PUT/DELETE"` Path string `json:"path" dc:"接口路径"` Status int `json:"status" dc:"状态:0启用,1停用"` Version string `json:"version" dc:"接口版本"` Remark string `json:"remark" dc:"备注"` TenantId string `json:"tenantId" dc:"租户ID"` CreatedDept int64 `json:"createdDept" dc:"创建部门"` CreatedBy int64 `json:"createdBy" dc:"创建者"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` } // TApiResourceEditParam 修改/新增开放接口资源表 type TApiResourceEditParam struct { //entity.TApiResource Id int64 `json:"id" dc:"主键ID"` ApiName *string `json:"apiName" dc:"接口名称"` ApiCode *string `json:"apiCode" dc:"接口权限标识"` Method *int `json:"method" dc:"请求方法:GET/POST/PUT/DELETE"` Path *string `json:"path" dc:"接口路径"` Status *int `json:"status" dc:"状态:0启用,1停用"` Version *string `json:"version" dc:"接口版本"` Remark *string `json:"remark" dc:"备注"` TenantId *string `json:"tenantId" dc:"租户ID"` CreatedDept *int64 `json:"createdDept" dc:"创建部门"` CreatedBy *int64 `json:"createdBy" dc:"创建者"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` UpdatedBy *int64 `json:"updatedBy" dc:"更新者"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } func (in *TApiResourceEditParam) Filter(ctx context.Context) (err error) { if in == nil { return gerror.New("请求参数不能为空") } if in.ApiName == nil || gstr.Trim(*in.ApiName) == "" { return gerror.New("接口名称不能为空") } if in.ApiCode == nil || gstr.Trim(*in.ApiCode) == "" { return gerror.New("接口权限标识不能为空") } if in.Method == nil || !slices.Contains(consts.MethodSlice, *in.Method) { return gerror.New("请求方法不能为空") } if in.Path == nil || gstr.Trim(*in.Path) == "" { return gerror.New("接口路径不能为空") } if in.Status != nil && !slices.Contains(consts.StatusSlice, *in.Status) { return gerror.New("状态不正确") } return } type TApiResourceEditModel struct{} // TApiResourceDeleteParam 删除开放接口资源表 type TApiResourceDeleteParam struct { Id interface{} `json:"id" v:"required#主键ID不能为空" dc:"主键ID"` } func (in *TApiResourceDeleteParam) Filter(ctx context.Context) (err error) { return } type TApiResourceDeleteModel struct{} // TApiResourceViewParam 获取指定开放接口资源表信息 type TApiResourceViewParam struct { Id int64 `json:"id" v:"required#主键ID不能为空" dc:"主键ID"` } func (in *TApiResourceViewParam) Filter(ctx context.Context) (err error) { return } type TApiResourceViewModel struct { entity.TApiResource CreatedBySumma *hook.MemberSumma `json:"createdBySumma" dc:"创建者摘要信息"` UpdatedBySumma *hook.MemberSumma `json:"updatedBySumma" dc:"更新者摘要信息"` } // TApiResourceListParam 获取开放接口资源表列表 type TApiResourceListParam struct { request.PageInfo Id int64 `json:"id" dc:"主键ID"` Status int `json:"status" dc:"状态:0启用,1停用"` CreatedAt []*gtime.Time `json:"createdAt" dc:"创建时间"` ApiName string `json:"apiName" dc:"接口名称"` Version string `json:"version" dc:"接口版本"` } func (in *TApiResourceListParam) Filter(ctx context.Context) (err error) { return } type TApiResourceListModel struct { Id int64 `json:"id" dc:"主键ID"` ApiName string `json:"apiName" dc:"接口名称"` ApiCode string `json:"apiCode" dc:"接口权限标识"` Method int `json:"method" dc:"请求方法:GET/POST/PUT/DELETE"` Path string `json:"path" dc:"接口路径"` Status int `json:"status" dc:"状态:0启用,1停用"` Version string `json:"version" dc:"接口版本"` TenantId string `json:"tenantId" dc:"租户ID"` CreatedDept int64 `json:"createdDept" dc:"创建部门"` CreatedBy int64 `json:"createdBy" dc:"创建者"` CreatedBySumma *hook.MemberSumma `json:"createdBySumma" dc:"创建者摘要信息"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` UpdatedBy int64 `json:"updatedBy" dc:"更新者"` UpdatedBySumma *hook.MemberSumma `json:"updatedBySumma" dc:"更新者摘要信息"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } // TApiResourceExportModel 导出开放接口资源表 type TApiResourceExportModel struct { Id int64 `json:"id" dc:"主键ID"` ApiName string `json:"apiName" dc:"接口名称"` ApiCode string `json:"apiCode" dc:"接口权限标识"` Method string `json:"method" dc:"请求方法:GET/POST/PUT/DELETE"` Path string `json:"path" dc:"接口路径"` Status int `json:"status" dc:"状态:0启用,1停用"` Version string `json:"version" dc:"接口版本"` TenantId string `json:"tenantId" dc:"租户ID"` CreatedDept int64 `json:"createdDept" dc:"创建部门"` CreatedBy int64 `json:"createdBy" dc:"创建者"` CreatedAt *gtime.Time `json:"createdAt" dc:"创建时间"` UpdatedBy int64 `json:"updatedBy" dc:"更新者"` UpdatedAt *gtime.Time `json:"updatedAt" dc:"更新时间"` } // TApiResourceStatusParam 更新开放接口资源表状态 type TApiResourceStatusParam struct { Id int64 `json:"id" v:"required#主键ID不能为空" dc:"主键ID"` Status int `json:"status" dc:"状态"` } func (in *TApiResourceStatusParam) Filter(ctx context.Context) (err error) { if in.Id <= 0 { return gerror.New("主键ID不能为空") } if !slices.Contains(consts.StatusSlice, in.Status) { return gerror.New("状态不正确") } return } type TApiResourceStatusModel struct{}