Browse Source

Merge pull request #338 from ljj6218/develop

修复了swag文档自动化生成失败的bug;完善了自动生成代码的swag部分
奇淼(piexlmax 4 years ago
parent
commit
52ce5ac0a8

+ 1 - 1
server/api/v1/sys_api.go

@@ -110,7 +110,7 @@ func GetApiById(c *gin.Context) {
 }
 
 // @Tags SysApi
-// @Summary 创建基础api
+// @Summary 更新基础api
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json

+ 7 - 6
server/api/v1/sys_operation_record.go

@@ -7,6 +7,7 @@ import (
 	"gin-vue-admin/model/response"
 	"gin-vue-admin/service"
 	"gin-vue-admin/utils"
+
 	"github.com/gin-gonic/gin"
 	"go.uber.org/zap"
 )
@@ -16,7 +17,7 @@ import (
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body model.SysOperationRecord true "创建SysOperationRecord"
+// @Param data body request.SysOperationRecordCreate true "创建SysOperationRecord"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
 // @Router /sysOperationRecord/createSysOperationRecord [post]
 func CreateSysOperationRecord(c *gin.Context) {
@@ -35,7 +36,7 @@ func CreateSysOperationRecord(c *gin.Context) {
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body model.SysOperationRecord true "SysOperationRecord模型"
+// @Param data body request.GetByIdUint true "SysOperationRecord模型"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}"
 // @Router /sysOperationRecord/deleteSysOperationRecord [delete]
 func DeleteSysOperationRecord(c *gin.Context) {
@@ -73,17 +74,17 @@ func DeleteSysOperationRecordByIds(c *gin.Context) {
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body model.SysOperationRecord true "Id"
+// @Param data query request.GetByIdUint false "编号"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"查询成功"}"
 // @Router /sysOperationRecord/findSysOperationRecord [get]
 func FindSysOperationRecord(c *gin.Context) {
-	var sysOperationRecord model.SysOperationRecord
+	var sysOperationRecord request.GetByIdUint
 	_ = c.ShouldBindQuery(&sysOperationRecord)
 	if err := utils.Verify(sysOperationRecord, utils.IdVerify); err != nil {
 		response.FailWithMessage(err.Error(), c)
 		return
 	}
-	if err, resysOperationRecord := service.GetSysOperationRecord(sysOperationRecord.ID); err != nil {
+	if err, resysOperationRecord := service.GetSysOperationRecord(sysOperationRecord.Id); err != nil {
 		global.GVA_LOG.Error("查询失败!", zap.Any("err", err))
 		response.FailWithMessage("查询失败", c)
 	} else {
@@ -96,7 +97,7 @@ func FindSysOperationRecord(c *gin.Context) {
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body request.SysOperationRecordSearch true "页码, 每页大小, 搜索条件"
+// @Param data query request.SysOperationRecordSearch true "页码, 每页大小, 搜索条件"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
 // @Router /sysOperationRecord/getSysOperationRecordList [get]
 func GetSysOperationRecordList(c *gin.Context) {

+ 6 - 1
server/model/request/common.go

@@ -11,6 +11,11 @@ type GetById struct {
 	Id float64 `json:"id" form:"id"`
 }
 
+// Find by id structure
+type GetByIdUint struct {
+	Id uint `json:"id" form:"id"`
+}
+
 type IdsReq struct {
 	Ids []int `json:"ids" form:"ids"`
 }
@@ -20,4 +25,4 @@ type GetAuthorityId struct {
 	AuthorityId string
 }
 
-type Empty struct {}
+type Empty struct{}

+ 16 - 2
server/model/request/sys_operation_record.go

@@ -1,8 +1,22 @@
 package request
 
-import "gin-vue-admin/model"
+import "gin-vue-admin/global"
+
+type SysOperationRecordCreate struct {
+	global.GVA_MODEL
+	Ip           string `json:"ip" form:"ip" gorm:"column:ip;comment:请求ip"`
+	Method       string `json:"method" form:"method" gorm:"column:method;comment:请求方法"`
+	Path         string `json:"path" form:"path" gorm:"column:path;comment:请求路径"`
+	Status       int    `json:"status" form:"status" gorm:"column:status;comment:请求状态"`
+	Latency      int    `json:"latency" form:"latency" gorm:"column:latency;comment:延迟"`
+	Agent        string `json:"agent" form:"agent" gorm:"column:agent;comment:代理"`
+	ErrorMessage string `json:"error_message" form:"error_message" gorm:"column:error_message;comment:错误信息"`
+	Body         string `json:"body" form:"body" gorm:"type:longtext;column:body;comment:请求Body"`
+	Resp         string `json:"resp" form:"resp" gorm:"type:longtext;column:resp;comment:响应Body"`
+	UserID       int    `json:"user_id" form:"user_id" gorm:"column:user_id;comment:用户id"`
+}
 
 type SysOperationRecordSearch struct {
-	model.SysOperationRecord
+	SysOperationRecordCreate
 	PageInfo
 }

+ 15 - 7
server/resource/template/server/api.go.tpl

@@ -15,7 +15,7 @@ import (
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body model.{{.StructName}} true "创建{{.StructName}}"
+// @Param data body model.{{.StructName}}Base true "创建{{.StructName}}"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
 // @Router /{{.Abbreviation}}/create{{.StructName}} [post]
 func Create{{.StructName}}(c *gin.Context) {
@@ -34,7 +34,7 @@ func Create{{.StructName}}(c *gin.Context) {
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body model.{{.StructName}} true "删除{{.StructName}}"
+// @Param data body request.GetByIdUint true "删除{{.StructName}}"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"删除成功"}"
 // @Router /{{.Abbreviation}}/delete{{.StructName}} [delete]
 func Delete{{.StructName}}(c *gin.Context) {
@@ -72,12 +72,20 @@ func Delete{{.StructName}}ByIds(c *gin.Context) {
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body model.{{.StructName}} true "更新{{.StructName}}"
+// @Param data body request.{{.StructName}}Update true "更新{{.StructName}}"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"更新成功"}"
 // @Router /{{.Abbreviation}}/update{{.StructName}} [put]
 func Update{{.StructName}}(c *gin.Context) {
 	var {{.Abbreviation}} model.{{.StructName}}
 	_ = c.ShouldBindJSON(&{{.Abbreviation}})
+
+	err, {{.Abbreviation}}Original := service.Get{{.StructName}}({{.Abbreviation}}.ID)
+	if err != nil {
+        global.GVA_LOG.Error("查询失败!", zap.Any("err", err))
+		response.FailWithMessage("查询失败", c)
+	}
+	{{.Abbreviation}}.CreatedAt = {{.Abbreviation}}Original.CreatedAt
+
 	if err := service.Update{{.StructName}}({{.Abbreviation}}); err != nil {
         global.GVA_LOG.Error("更新失败!", zap.Any("err", err))
 		response.FailWithMessage("更新失败", c)
@@ -91,13 +99,13 @@ func Update{{.StructName}}(c *gin.Context) {
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body model.{{.StructName}} true "用id查询{{.StructName}}"
+// @Param data query request.GetByIdUint true "用id查询{{.StructName}}"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"查询成功"}"
 // @Router /{{.Abbreviation}}/find{{.StructName}} [get]
 func Find{{.StructName}}(c *gin.Context) {
-	var {{.Abbreviation}} model.{{.StructName}}
+	var {{.Abbreviation}} request.GetByIdUint
 	_ = c.ShouldBindQuery(&{{.Abbreviation}})
-	if err, re{{.Abbreviation}} := service.Get{{.StructName}}({{.Abbreviation}}.ID); err != nil {
+	if err, re{{.Abbreviation}} := service.Get{{.StructName}}({{.Abbreviation}}.Id); err != nil {
         global.GVA_LOG.Error("查询失败!", zap.Any("err", err))
 		response.FailWithMessage("查询失败", c)
 	} else {
@@ -110,7 +118,7 @@ func Find{{.StructName}}(c *gin.Context) {
 // @Security ApiKeyAuth
 // @accept application/json
 // @Produce application/json
-// @Param data body request.{{.StructName}}Search true "分页获取{{.StructName}}列表"
+// @Param data query request.{{.StructName}}Search true "分页获取{{.StructName}}列表"
 // @Success 200 {string} string "{"success":true,"data":{},"msg":"获取成功"}"
 // @Router /{{.Abbreviation}}/get{{.StructName}}List [get]
 func Get{{.StructName}}List(c *gin.Context) {

+ 8 - 3
server/resource/template/server/model.go.tpl

@@ -6,8 +6,8 @@ import (
 )
 
 // 如果含有time.Time 请自行import time包
-type {{.StructName}} struct {
-      global.GVA_MODEL {{- range .Fields}}
+type {{.StructName}}Base struct {
+      {{- range .Fields}}
             {{- if eq .FieldType "bool" }}
       {{.FieldName}}  *{{.FieldType}} `json:"{{.FieldJson}}" form:"{{.FieldJson}}" gorm:"column:{{.ColumnName}};comment:{{.Comment}}{{- if .DataType -}};type:{{.DataType}}{{- if eq .FieldType "string" -}}{{- if .DataTypeLong -}}({{.DataTypeLong}}){{- end -}}{{- end -}};{{- if .DataTypeLong -}}size:{{.DataTypeLong}};{{- end -}}{{- end -}}"`
             {{- else }}
@@ -15,9 +15,14 @@ type {{.StructName}} struct {
             {{- end }} {{- end }}
 }
 
+type {{.StructName}} struct {
+      global.GVA_MODEL
+      {{.StructName}}Base
+}
+
 {{ if .TableName }}
 func ({{.StructName}}) TableName() string {
-  return "{{.TableName}}"
+    return "{{.TableName}}"
 }
 {{ end }}
 

+ 9 - 3
server/resource/template/server/request.go.tpl

@@ -2,7 +2,13 @@ package request
 
 import "gin-vue-admin/model"
 
-type {{.StructName}}Search struct{
-    model.{{.StructName}}
+type {{.StructName}}Search struct {
+    model.{{.StructName}}Base
     PageInfo
-}
+}
+
+type {{.StructName}}Update struct {
+	model.{{.StructName}}Base
+	ID uint `gorm:"primarykey"`
+}
+

+ 1 - 1
server/resource/template/server/service.go.tpl

@@ -35,7 +35,7 @@ func Delete{{.StructName}}({{.Abbreviation}} model.{{.StructName}}) (err error)
 //@return: err error
 
 func Delete{{.StructName}}ByIds(ids request.IdsReq) (err error) {
-	err = global.GVA_DB.Delete(&[]model.{{.StructName}}{},"id in ?",ids.Ids).Error
+	err = global.GVA_DB.Delete(&[]model.{{.StructName}}{}, "id in ?", ids.Ids).Error
 	return err
 }
 

+ 1 - 0
server/resource/template/web/workflowForm.vue.tpl

@@ -117,6 +117,7 @@ export default {
                return false
             }
          }
+         return true
       },
       ...mapGetters("user", ["userInfo"])
   },