| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178 |
- // ==========================================================================
- // GFast自动生成控制器相关代码,只生成一次,按需修改,再次生成不会覆盖.
- // 生成日期:{{.table.CreateTime}}
- // 生成路径: {{.table.PackageName}}/api/{{.table.BusinessName}}.go
- // 生成人:{{.table.FunctionAuthor}}
- // ==========================================================================
- ////
- {{$structName := .table.BusinessName | CaseCamelLower}}
- package api
- {{$hasGStr:=false}}
- {{$libTag:=false}}
- {{range $index,$column:=.table.Columns}}
- {{if eq $column.HtmlType "checkbox"}}
- {{$hasGStr = true}}
- {{else if eq $column.HtmlType "images" "file" "files"}}
- {{$libTag = true}}
- {{$libTag = true}}
- {{end}}
- {{end}}
- import (
- {{if ne $.table.ModuleName "system"}}
- sysApi "gfast/app/system/api"
- {{end}}
- {{if $libTag}}
- "gfast/library"
- {{end}}
- "{{.table.PackageName}}/dao"
- "{{.table.PackageName}}/service"
- "github.com/gogf/gf/frame/g"
- "github.com/gogf/gf/net/ghttp"
- "github.com/gogf/gf/util/gvalid"
- {{if $hasGStr}}
- "github.com/gogf/gf/text/gstr"
- {{end}}
- )
- type {{$structName}} struct {
- {{if ne $.table.ModuleName "system"}}
- sysApi.SystemBase
- {{else}}
- SystemBase
- {{end}}
- }
- var {{.table.ClassName}} = new({{$structName}})
- // List 列表
- func (c *{{$structName}}) List(r *ghttp.Request) {
- var req *dao.{{.table.ClassName}}SearchReq
- //获取参数
- if err := r.Parse(&req); err != nil {
- c.FailJsonExit(r, err.(gvalid.Error).FirstString())
- }
- req.Ctx = r.GetCtx()
- total, page, list, err := service.{{.table.ClassName}}.GetList(req)
- if err != nil {
- c.FailJsonExit(r, err.Error())
- }
- result := g.Map{
- "currentPage": page,
- "total": total,
- "list": list,
- }
- c.SusJsonExit(r, result)
- }
- // Add 添加
- func (c *{{$structName}}) Add(r *ghttp.Request) {
- var req *dao.{{.table.ClassName}}AddReq
- //获取参数
- err := r.Parse(&req)
- if err != nil {
- c.FailJsonExit(r, err.(gvalid.Error).FirstString())
- }
- {{range $index,$column:= .table.Columns}}
- {{if eq $column.ColumnName "created_by"}}
- req.CreatedBy = c.GetCurrentUser(r.GetCtx()).GetUserId()
- {{end}}
- {{if eq $column.HtmlType "checkbox"}}
- {{$column.HtmlField}} := r.GetStrings("{{$column.HtmlField}}")
- if len({{$column.HtmlField}})>0{
- req.{{$column.GoField}} = gstr.Join({{$column.HtmlField}},",")
- }else{
- req.{{$column.GoField}} = ""
- }
- {{else if eq $column.HtmlType "images" "file" "files"}}
- for _,obj:=range req.{{$column.GoField}}{
- obj.Url,err = library.GetFilesPath(obj.Url)
- if err!=nil{
- c.FailJsonExit(r, err.Error())
- }
- }
- {{end}}
- {{end}}
- err = service.{{.table.ClassName}}.Add(r.GetCtx(),req)
- if err != nil {
- c.FailJsonExit(r, err.Error())
- }
- c.SusJsonExit(r, "添加成功")
- }
- // Get 获取
- func (c *{{$structName}}) Get(r *ghttp.Request) {
- id := r.GetInt64("id")
- info, err := service.{{.table.ClassName}}.GetInfoById(r.GetCtx(),id)
- if err != nil {
- c.FailJsonExit(r, err.Error())
- }
- c.SusJsonExit(r, info)
- }
- // Edit 修改
- func (c *{{$structName}}) Edit(r *ghttp.Request) {
- var req *dao.{{.table.ClassName}}EditReq
- //获取参数
- err := r.Parse(&req)
- if err != nil {
- c.FailJsonExit(r, err.(gvalid.Error).FirstString())
- }
- {{range $index,$column:= .table.Columns}}
- {{if eq $column.ColumnName "updated_by"}}
- req.UpdatedBy = c.GetCurrentUser(r.GetCtx()).GetUserId() //获取登陆用户id
- {{end}}
- {{if eq $column.HtmlType "checkbox"}}
- {{$column.HtmlField}} := r.GetStrings("{{$column.HtmlField}}")
- if len({{$column.HtmlField}})>0{
- req.{{$column.GoField}} = gstr.Join({{$column.HtmlField}},",")
- }else{
- req.{{$column.GoField}} = ""
- }
- {{else if eq $column.HtmlType "images" "file" "files"}}
- for _,obj:=range req.{{$column.GoField}}{
- obj.Url,err = library.GetFilesPath(obj.Url)
- if err!=nil{
- c.FailJsonExit(r, err.Error())
- }
- }
- {{end}}
- {{end}}
- err = service.{{.table.ClassName}}.Edit(r.GetCtx(),req)
- if err != nil {
- c.FailJsonExit(r, err.Error())
- }
- c.SusJsonExit(r, "修改成功")
- }
- // Delete 删除
- func (c *{{$structName}}) Delete(r *ghttp.Request) {
- ids := r.GetInts("ids")
- err := service.{{.table.ClassName}}.DeleteByIds(r.GetCtx(),ids)
- if err != nil {
- c.FailJsonExit(r, err.Error())
- }
- c.SusJsonExit(r, "删除成功")
- }
- {{range $index,$column:= .table.Columns}}
- {{if and (HasSuffix $column.ColumnName "status") (eq $column.IsList "1") }}
- // Change{{$column.GoField}} 修改状态
- func (c *{{$structName}}) Change{{$column.GoField}}(r *ghttp.Request){
- var req *dao.{{$.table.ClassName}}{{$column.GoField}}Req
- //获取参数
- if err := r.Parse(&req); err != nil {
- c.FailJsonExit(r, err.(gvalid.Error).FirstString())
- }
- if err := service.{{$.table.ClassName}}.Change{{$column.GoField}}(r.GetCtx(),req); err != nil {
- c.FailJsonExit(r, err.Error())
- } else {
- c.SusJsonExit(r, "状态设置成功")
- }
- }
- {{end}}
- {{end}}
|