diff --git a/docs/docs.go b/docs/docs.go index abd7ead..7dd4612 100644 --- a/docs/docs.go +++ b/docs/docs.go @@ -15,6 +15,212 @@ const docTemplate = `{ "host": "{{.Host}}", "basePath": "{{.BasePath}}", "paths": { + "/admin/app/create": { + "post": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "新增小程序", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "新增小程序", + "parameters": [ + { + "description": "请求参数", + "name": "RequestBody", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/app.createAppRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.createAppResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, + "/admin/app/delete": { + "post": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "删除小程序", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "删除小程序", + "parameters": [ + { + "description": "请求参数", + "name": "RequestBody", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/app.deleteAppRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.deleteAppResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, + "/admin/app/{id}": { + "put": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "编辑小程序", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "编辑小程序", + "parameters": [ + { + "type": "string", + "description": "编号ID", + "name": "id", + "in": "path", + "required": true + }, + { + "description": "请求参数", + "name": "RequestBody", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/app.modifyAppRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.modifyAppResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, + "/admin/apps": { + "get": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "小程序列表", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "小程序列表", + "parameters": [ + { + "type": "string", + "description": "小程序名称", + "name": "name", + "in": "query" + }, + { + "type": "string", + "description": "小程序ID", + "name": "app_id", + "in": "query" + }, + { + "type": "integer", + "default": 1, + "description": "当前页码", + "name": "page", + "in": "query", + "required": true + }, + { + "type": "integer", + "default": 20, + "description": "每页返回的数据量,最多 100 条", + "name": "page_size", + "in": "query", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.listResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, "/admin/login": { "post": { "description": "管理员登录", @@ -83,6 +289,151 @@ const docTemplate = `{ } } }, + "app.createAppRequest": { + "type": "object", + "required": [ + "app_id", + "name" + ], + "properties": { + "app_id": { + "description": "小程序ID", + "type": "string" + }, + "avatar": { + "description": "头像", + "type": "string" + }, + "description": { + "description": "描述", + "type": "string" + }, + "name": { + "description": "名称", + "type": "string" + } + } + }, + "app.createAppResponse": { + "type": "object", + "properties": { + "message": { + "description": "提示信息", + "type": "string" + } + } + }, + "app.deleteAppRequest": { + "type": "object", + "required": [ + "ids" + ], + "properties": { + "ids": { + "description": "小程序编号(多个用,分割)", + "type": "string" + } + } + }, + "app.deleteAppResponse": { + "type": "object", + "properties": { + "message": { + "description": "提示信息", + "type": "string" + } + } + }, + "app.listData": { + "type": "object", + "properties": { + "app_id": { + "description": "小程序ID", + "type": "string" + }, + "avatar": { + "description": "小程序头像", + "type": "string" + }, + "created_at": { + "description": "创建时间", + "type": "string" + }, + "description": { + "description": "小程序描述", + "type": "string" + }, + "id": { + "description": "小程序编号", + "type": "integer" + }, + "name": { + "description": "小程序名称", + "type": "string" + }, + "updated_at": { + "description": "更新时间", + "type": "string" + } + } + }, + "app.listResponse": { + "type": "object", + "properties": { + "list": { + "type": "array", + "items": { + "$ref": "#/definitions/app.listData" + } + }, + "page": { + "description": "当前页码", + "type": "integer" + }, + "page_size": { + "description": "每页返回的数据量", + "type": "integer" + }, + "total": { + "description": "符合查询条件的总记录数", + "type": "integer" + } + } + }, + "app.modifyAppRequest": { + "type": "object", + "required": [ + "app_id", + "name" + ], + "properties": { + "app_id": { + "description": "小程序ID", + "type": "string" + }, + "avatar": { + "description": "头像", + "type": "string" + }, + "description": { + "description": "描述", + "type": "string" + }, + "name": { + "description": "名称", + "type": "string" + } + } + }, + "app.modifyAppResponse": { + "type": "object", + "properties": { + "message": { + "description": "提示信息", + "type": "string" + } + } + }, "code.Failure": { "type": "object", "properties": { diff --git a/docs/swagger.json b/docs/swagger.json index 51397ea..c98da0f 100644 --- a/docs/swagger.json +++ b/docs/swagger.json @@ -7,6 +7,212 @@ }, "basePath": "/", "paths": { + "/admin/app/create": { + "post": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "新增小程序", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "新增小程序", + "parameters": [ + { + "description": "请求参数", + "name": "RequestBody", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/app.createAppRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.createAppResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, + "/admin/app/delete": { + "post": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "删除小程序", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "删除小程序", + "parameters": [ + { + "description": "请求参数", + "name": "RequestBody", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/app.deleteAppRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.deleteAppResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, + "/admin/app/{id}": { + "put": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "编辑小程序", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "编辑小程序", + "parameters": [ + { + "type": "string", + "description": "编号ID", + "name": "id", + "in": "path", + "required": true + }, + { + "description": "请求参数", + "name": "RequestBody", + "in": "body", + "required": true, + "schema": { + "$ref": "#/definitions/app.modifyAppRequest" + } + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.modifyAppResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, + "/admin/apps": { + "get": { + "security": [ + { + "LoginVerifyToken": [] + } + ], + "description": "小程序列表", + "consumes": [ + "application/json" + ], + "produces": [ + "application/json" + ], + "tags": [ + "管理端.小程序" + ], + "summary": "小程序列表", + "parameters": [ + { + "type": "string", + "description": "小程序名称", + "name": "name", + "in": "query" + }, + { + "type": "string", + "description": "小程序ID", + "name": "app_id", + "in": "query" + }, + { + "type": "integer", + "default": 1, + "description": "当前页码", + "name": "page", + "in": "query", + "required": true + }, + { + "type": "integer", + "default": 20, + "description": "每页返回的数据量,最多 100 条", + "name": "page_size", + "in": "query", + "required": true + } + ], + "responses": { + "200": { + "description": "OK", + "schema": { + "$ref": "#/definitions/app.listResponse" + } + }, + "400": { + "description": "Bad Request", + "schema": { + "$ref": "#/definitions/code.Failure" + } + } + } + } + }, "/admin/login": { "post": { "description": "管理员登录", @@ -75,6 +281,151 @@ } } }, + "app.createAppRequest": { + "type": "object", + "required": [ + "app_id", + "name" + ], + "properties": { + "app_id": { + "description": "小程序ID", + "type": "string" + }, + "avatar": { + "description": "头像", + "type": "string" + }, + "description": { + "description": "描述", + "type": "string" + }, + "name": { + "description": "名称", + "type": "string" + } + } + }, + "app.createAppResponse": { + "type": "object", + "properties": { + "message": { + "description": "提示信息", + "type": "string" + } + } + }, + "app.deleteAppRequest": { + "type": "object", + "required": [ + "ids" + ], + "properties": { + "ids": { + "description": "小程序编号(多个用,分割)", + "type": "string" + } + } + }, + "app.deleteAppResponse": { + "type": "object", + "properties": { + "message": { + "description": "提示信息", + "type": "string" + } + } + }, + "app.listData": { + "type": "object", + "properties": { + "app_id": { + "description": "小程序ID", + "type": "string" + }, + "avatar": { + "description": "小程序头像", + "type": "string" + }, + "created_at": { + "description": "创建时间", + "type": "string" + }, + "description": { + "description": "小程序描述", + "type": "string" + }, + "id": { + "description": "小程序编号", + "type": "integer" + }, + "name": { + "description": "小程序名称", + "type": "string" + }, + "updated_at": { + "description": "更新时间", + "type": "string" + } + } + }, + "app.listResponse": { + "type": "object", + "properties": { + "list": { + "type": "array", + "items": { + "$ref": "#/definitions/app.listData" + } + }, + "page": { + "description": "当前页码", + "type": "integer" + }, + "page_size": { + "description": "每页返回的数据量", + "type": "integer" + }, + "total": { + "description": "符合查询条件的总记录数", + "type": "integer" + } + } + }, + "app.modifyAppRequest": { + "type": "object", + "required": [ + "app_id", + "name" + ], + "properties": { + "app_id": { + "description": "小程序ID", + "type": "string" + }, + "avatar": { + "description": "头像", + "type": "string" + }, + "description": { + "description": "描述", + "type": "string" + }, + "name": { + "description": "名称", + "type": "string" + } + } + }, + "app.modifyAppResponse": { + "type": "object", + "properties": { + "message": { + "description": "提示信息", + "type": "string" + } + } + }, "code.Failure": { "type": "object", "properties": { diff --git a/docs/swagger.yaml b/docs/swagger.yaml index 538c119..745d792 100644 --- a/docs/swagger.yaml +++ b/docs/swagger.yaml @@ -18,6 +18,108 @@ definitions: description: 登录成功后颁发的 Token type: string type: object + app.createAppRequest: + properties: + app_id: + description: 小程序ID + type: string + avatar: + description: 头像 + type: string + description: + description: 描述 + type: string + name: + description: 名称 + type: string + required: + - app_id + - name + type: object + app.createAppResponse: + properties: + message: + description: 提示信息 + type: string + type: object + app.deleteAppRequest: + properties: + ids: + description: 小程序编号(多个用,分割) + type: string + required: + - ids + type: object + app.deleteAppResponse: + properties: + message: + description: 提示信息 + type: string + type: object + app.listData: + properties: + app_id: + description: 小程序ID + type: string + avatar: + description: 小程序头像 + type: string + created_at: + description: 创建时间 + type: string + description: + description: 小程序描述 + type: string + id: + description: 小程序编号 + type: integer + name: + description: 小程序名称 + type: string + updated_at: + description: 更新时间 + type: string + type: object + app.listResponse: + properties: + list: + items: + $ref: '#/definitions/app.listData' + type: array + page: + description: 当前页码 + type: integer + page_size: + description: 每页返回的数据量 + type: integer + total: + description: 符合查询条件的总记录数 + type: integer + type: object + app.modifyAppRequest: + properties: + app_id: + description: 小程序ID + type: string + avatar: + description: 头像 + type: string + description: + description: 描述 + type: string + name: + description: 名称 + type: string + required: + - app_id + - name + type: object + app.modifyAppResponse: + properties: + message: + description: 提示信息 + type: string + type: object code.Failure: properties: code: @@ -32,6 +134,137 @@ info: title: mini-chat 接口文档 version: v0.0.1 paths: + /admin/app/{id}: + put: + consumes: + - application/json + description: 编辑小程序 + parameters: + - description: 编号ID + in: path + name: id + required: true + type: string + - description: 请求参数 + in: body + name: RequestBody + required: true + schema: + $ref: '#/definitions/app.modifyAppRequest' + produces: + - application/json + responses: + "200": + description: OK + schema: + $ref: '#/definitions/app.modifyAppResponse' + "400": + description: Bad Request + schema: + $ref: '#/definitions/code.Failure' + security: + - LoginVerifyToken: [] + summary: 编辑小程序 + tags: + - 管理端.小程序 + /admin/app/create: + post: + consumes: + - application/json + description: 新增小程序 + parameters: + - description: 请求参数 + in: body + name: RequestBody + required: true + schema: + $ref: '#/definitions/app.createAppRequest' + produces: + - application/json + responses: + "200": + description: OK + schema: + $ref: '#/definitions/app.createAppResponse' + "400": + description: Bad Request + schema: + $ref: '#/definitions/code.Failure' + security: + - LoginVerifyToken: [] + summary: 新增小程序 + tags: + - 管理端.小程序 + /admin/app/delete: + post: + consumes: + - application/json + description: 删除小程序 + parameters: + - description: 请求参数 + in: body + name: RequestBody + required: true + schema: + $ref: '#/definitions/app.deleteAppRequest' + produces: + - application/json + responses: + "200": + description: OK + schema: + $ref: '#/definitions/app.deleteAppResponse' + "400": + description: Bad Request + schema: + $ref: '#/definitions/code.Failure' + security: + - LoginVerifyToken: [] + summary: 删除小程序 + tags: + - 管理端.小程序 + /admin/apps: + get: + consumes: + - application/json + description: 小程序列表 + parameters: + - description: 小程序名称 + in: query + name: name + type: string + - description: 小程序ID + in: query + name: app_id + type: string + - default: 1 + description: 当前页码 + in: query + name: page + required: true + type: integer + - default: 20 + description: 每页返回的数据量,最多 100 条 + in: query + name: page_size + required: true + type: integer + produces: + - application/json + responses: + "200": + description: OK + schema: + $ref: '#/definitions/app.listResponse' + "400": + description: Bad Request + schema: + $ref: '#/definitions/code.Failure' + security: + - LoginVerifyToken: [] + summary: 小程序列表 + tags: + - 管理端.小程序 /admin/login: post: consumes: diff --git a/internal/api/app/app.go b/internal/api/app/app.go new file mode 100644 index 0000000..15f012f --- /dev/null +++ b/internal/api/app/app.go @@ -0,0 +1,21 @@ +package app + +import ( + "mini-chat/internal/pkg/logger" + "mini-chat/internal/repository/mysql" + "mini-chat/internal/repository/mysql/dao" +) + +type handler struct { + logger logger.CustomLogger + writeDB *dao.Query + readDB *dao.Query +} + +func New(logger logger.CustomLogger, db mysql.Repo) *handler { + return &handler{ + logger: logger, + writeDB: dao.Use(db.GetDbW()), + readDB: dao.Use(db.GetDbR()), + } +} diff --git a/internal/api/app/func_create.go b/internal/api/app/func_create.go new file mode 100755 index 0000000..f7c81c4 --- /dev/null +++ b/internal/api/app/func_create.go @@ -0,0 +1,91 @@ +package app + +import ( + "fmt" + "net/http" + "time" + + "mini-chat/internal/code" + "mini-chat/internal/pkg/core" + "mini-chat/internal/pkg/validation" + "mini-chat/internal/repository/mysql/model" + + "gorm.io/gorm" +) + +type createAppRequest struct { + AppID string `json:"app_id" binding:"required"` // 小程序ID + Name string `json:"name" binding:"required"` // 名称 + Description string `json:"description"` // 描述 + Avatar string `json:"avatar"` // 头像 +} + +type createAppResponse struct { + Message string `json:"message"` // 提示信息 +} + +// CreateApp 新增小程序 +// @Summary 新增小程序 +// @Description 新增小程序 +// @Tags 管理端.小程序 +// @Accept json +// @Produce json +// @Param RequestBody body createAppRequest true "请求参数" +// @Success 200 {object} createAppResponse +// @Failure 400 {object} code.Failure +// @Router /admin/app/create [post] +// @Security LoginVerifyToken +func (h *handler) CreateApp() core.HandlerFunc { + return func(ctx core.Context) { + req := new(createAppRequest) + res := new(createAppResponse) + if err := ctx.ShouldBindJSON(req); err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + validation.Error(err)), + ) + return + } + + info, err := h.readDB.MiniProgram.WithContext(ctx.RequestContext()). + Where(h.readDB.MiniProgram.AppID.Eq(req.AppID)). + First() + if err != nil && err != gorm.ErrRecordNotFound { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.CreateAppError, + fmt.Sprintf("%s: %s", code.Text(code.CreateAppError), err.Error())), + ) + return + } + + if info != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.CreateAppError, + fmt.Sprintf("%s: %s", code.Text(code.CreateAppError), "该小程序已存在")), + ) + return + } + + App := new(model.MiniProgram) + App.AppID = req.AppID + App.Name = req.Name + App.Description = req.Description + App.Avatar = req.Avatar + App.CreatedUser = ctx.SessionUserInfo().UserName + App.CreatedAt = time.Now() + if err := h.writeDB.MiniProgram.WithContext(ctx.RequestContext()).Create(App); err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.CreateAppError, + fmt.Sprintf("%s: %s", code.Text(code.CreateAppError), err.Error())), + ) + return + } + + res.Message = "操作成功" + ctx.Payload(res) + } +} diff --git a/internal/api/app/func_delete.go b/internal/api/app/func_delete.go new file mode 100755 index 0000000..9905ccc --- /dev/null +++ b/internal/api/app/func_delete.go @@ -0,0 +1,99 @@ +package app + +import ( + "fmt" + "net/http" + "strconv" + "strings" + + "mini-chat/internal/code" + "mini-chat/internal/pkg/core" + "mini-chat/internal/pkg/validation" + "mini-chat/internal/repository/mysql/model" +) + +type deleteAppRequest struct { + Ids string `json:"ids" binding:"required"` // 小程序编号(多个用,分割) +} + +type deleteAppResponse struct { + Message string `json:"message"` // 提示信息 +} + +// DeleteApp 删除小程序 +// @Summary 删除小程序 +// @Description 删除小程序 +// @Tags 管理端.小程序 +// @Accept json +// @Produce json +// @Param RequestBody body deleteAppRequest true "请求参数" +// @Success 200 {object} deleteAppResponse +// @Failure 400 {object} code.Failure +// @Router /admin/app/delete [post] +// @Security LoginVerifyToken +func (h *handler) DeleteApp() core.HandlerFunc { + return func(ctx core.Context) { + req := new(deleteAppRequest) + res := new(deleteAppResponse) + if err := ctx.ShouldBindJSON(req); err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + validation.Error(err)), + ) + return + } + + idList := strings.Split(req.Ids, ",") + if len(idList) == 0 || (len(idList) == 1 && idList[0] == "") { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + "小程序编号不能为空"), + ) + return + } + + var ids []int32 + + for _, strID := range idList { + if strID == "" { + continue + } + + id, err := strconv.Atoi(strID) + if err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + fmt.Sprintf("无效的小程序编号: %s", strID)), + ) + return + } + + ids = append(ids, int32(id)) + } + + if len(ids) == 0 { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + "小程序编号不能为空"), + ) + return + } + + if _, err := h.writeDB.MiniProgram.WithContext(ctx.RequestContext()). + Where(h.writeDB.MiniProgram.ID.In(ids...)). + Delete(&model.MiniProgram{}); err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.DeleteAppError, + fmt.Sprintf("%s: %s", code.Text(code.DeleteAppError), err.Error())), + ) + return + } + res.Message = "操作成功" + ctx.Payload(res) + } +} diff --git a/internal/api/app/func_list.go b/internal/api/app/func_list.go new file mode 100755 index 0000000..fb2f9dd --- /dev/null +++ b/internal/api/app/func_list.go @@ -0,0 +1,138 @@ +package app + +import ( + "fmt" + "net/http" + + "mini-chat/internal/code" + "mini-chat/internal/pkg/core" + "mini-chat/internal/pkg/validation" + + "gorm.io/gorm" +) + +type listRequest struct { + AppID string `form:"app_id"` // 小程序ID + Name string `form:"name"` // 小程序名称 + Page int `form:"page"` // 当前页码,默认为第一页 + PageSize int `form:"page_size"` // 每页返回的数据量 +} + +type listData struct { + ID int32 `json:"id"` // 小程序编号 + AppID string `json:"app_id"` // 小程序ID + Name string `json:"name"` // 小程序名称 + Description string `json:"description"` // 小程序描述 + Avatar string `json:"avatar"` // 小程序头像 + CreatedAt string `json:"created_at"` // 创建时间 + UpdatedAt string `json:"updated_at"` // 更新时间 +} + +type listResponse struct { + Page int `json:"page"` // 当前页码 + PageSize int `json:"page_size"` // 每页返回的数据量 + Total int64 `json:"total"` // 符合查询条件的总记录数 + List []listData `json:"list"` +} + +// PageList 小程序列表 +// @Summary 小程序列表 +// @Description 小程序列表 +// @Tags 管理端.小程序 +// @Accept json +// @Produce json +// @Param name query string false "小程序名称" +// @Param app_id query string false "小程序ID" +// @Param page query int true "当前页码" default(1) +// @Param page_size query int true "每页返回的数据量,最多 100 条" default(20) +// @Success 200 {object} listResponse +// @Failure 400 {object} code.Failure +// @Router /admin/apps [get] +// @Security LoginVerifyToken +func (h *handler) PageList() core.HandlerFunc { + return func(ctx core.Context) { + req := new(listRequest) + res := new(listResponse) + + if err := ctx.ShouldBindForm(req); err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + validation.Error(err)), + ) + return + } + + if req.Page == 0 { + req.Page = 1 + } + + if req.PageSize == 0 { + req.PageSize = 20 + } + + if req.PageSize > 100 { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ListAppError, + fmt.Sprintf("%s: 一次最多只能查询 100 条", code.Text(code.ListAppError)), + )) + return + } + + query := h.readDB.MiniProgram.WithContext(ctx.RequestContext()) + + if req.AppID != "" { + query = query.Where(h.readDB.MiniProgram.AppID.Eq(req.AppID)) + } + + if req.Name != "" { + query = query.Where(h.readDB.MiniProgram.Name.Like(fmt.Sprintf("%%%s%%", req.Name))) + } + + listQueryDB := query.Session(&gorm.Session{}) + countQueryDB := query.Session(&gorm.Session{}) + + resultData, err := listQueryDB. + Order(h.readDB.MiniProgram.ID.Desc()). + Limit(req.PageSize). + Offset((req.Page - 1) * req.PageSize).Find() + if err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ListAppError, + fmt.Sprintf("%s:%s", code.Text(code.ListAppError), err.Error())), + ) + return + } + + count, err := countQueryDB.Count() + if err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ListAppError, + fmt.Sprintf("%s:%s", code.Text(code.ListAppError), err.Error())), + ) + return + } + + res.Page = req.Page + res.PageSize = req.PageSize + res.Total = count + res.List = make([]listData, len(resultData)) + + for k, v := range resultData { + res.List[k] = listData{ + ID: v.ID, + AppID: v.AppID, + Name: v.Name, + Description: v.Description, + Avatar: v.Avatar, + CreatedAt: v.CreatedAt.Format("2006-01-02 15:04:05"), + UpdatedAt: v.UpdatedAt.Format("2006-01-02 15:04:05"), + } + } + + ctx.Payload(res) + } +} diff --git a/internal/api/app/func_modify.go b/internal/api/app/func_modify.go new file mode 100644 index 0000000..e8d1e02 --- /dev/null +++ b/internal/api/app/func_modify.go @@ -0,0 +1,132 @@ +package app + +import ( + "fmt" + "net/http" + "strconv" + "time" + + "mini-chat/internal/code" + "mini-chat/internal/pkg/core" + "mini-chat/internal/pkg/validation" + + "gorm.io/gorm" +) + +type modifyAppRequest struct { + AppID string `json:"app_id" binding:"required"` // 小程序ID + Name string `json:"name" binding:"required"` // 名称 + Description string `json:"description"` // 描述 + Avatar string `json:"avatar"` // 头像 +} + +type modifyAppResponse struct { + Message string `json:"message"` // 提示信息 +} + +// ModifyApp 编辑小程序 +// @Summary 编辑小程序 +// @Description 编辑小程序 +// @Tags 管理端.小程序 +// @Accept json +// @Produce json +// @Param id path string true "编号ID" +// @Param RequestBody body modifyAppRequest true "请求参数" +// @Success 200 {object} modifyAppResponse +// @Failure 400 {object} code.Failure +// @Router /admin/app/{id} [put] +// @Security LoginVerifyToken +func (h *handler) ModifyApp() core.HandlerFunc { + return func(ctx core.Context) { + req := new(modifyAppRequest) + res := new(modifyAppResponse) + if err := ctx.ShouldBindJSON(req); err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + validation.Error(err)), + ) + return + } + + if req.AppID == "" && req.Name == "" { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + "小程序ID和标题不能为空"), + ) + return + } + + id, err := strconv.Atoi(ctx.Param("id")) + if err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ParamBindError, + "未传递编号ID"), + ) + return + } + + checkIdInfo, err := h.readDB.MiniProgram.WithContext(ctx.RequestContext()). + Where(h.readDB.MiniProgram.ID.Eq(int32(id))). + First() + if err != nil && err != gorm.ErrRecordNotFound { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ModifyAppError, + fmt.Sprintf("%s: %s", code.Text(code.ModifyAppError), err.Error())), + ) + return + } + + if checkIdInfo == nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ModifyAppError, + fmt.Sprintf("%s: %s", code.Text(code.ModifyAppError), "该小程序不存在")), + ) + return + } + + checkAppIDInfo, err := h.readDB.MiniProgram.WithContext(ctx.RequestContext()). + Where(h.readDB.MiniProgram.ID.Neq(int32(id))). + Where(h.readDB.MiniProgram.AppID.Eq(req.AppID)). + First() + if err != nil && err != gorm.ErrRecordNotFound { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ModifyAppError, + fmt.Sprintf("%s: %s", code.Text(code.ModifyAppError), err.Error())), + ) + return + } + + if checkAppIDInfo != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ModifyAppError, + fmt.Sprintf("%s: %s", code.Text(code.ModifyAppError), "该小程序ID已存在")), + ) + return + } + + checkIdInfo.AppID = req.AppID + checkIdInfo.Name = req.Name + checkIdInfo.Description = req.Description + checkIdInfo.Avatar = req.Avatar + checkIdInfo.UpdatedUser = ctx.SessionUserInfo().UserName + checkIdInfo.UpdatedAt = time.Now() + if err := h.writeDB.MiniProgram.WithContext(ctx.RequestContext()).Save(checkIdInfo); err != nil { + ctx.AbortWithError(core.Error( + http.StatusBadRequest, + code.ModifyAppError, + fmt.Sprintf("%s:%s", code.Text(code.ModifyAppError), err.Error())), + ) + return + } + + res.Message = "操作成功" + ctx.Payload(res) + } +} diff --git a/internal/code/code.go b/internal/code/code.go index 8ba3b5f..f6c217d 100644 --- a/internal/code/code.go +++ b/internal/code/code.go @@ -21,6 +21,10 @@ const ( JWTAuthVerifyError = 10103 AdminLoginError = 20101 + CreateAppError = 20201 + DeleteAppError = 20202 + ListAppError = 20203 + ModifyAppError = 20204 ) func Text(code int) string { diff --git a/internal/code/zh-cn.go b/internal/code/zh-cn.go index 0ca77f2..24a9bd1 100644 --- a/internal/code/zh-cn.go +++ b/internal/code/zh-cn.go @@ -6,4 +6,9 @@ var zhCNText = map[int]string{ JWTAuthVerifyError: "JWT 授权验证错误", AdminLoginError: "登录失败", + + CreateAppError: "关联小程序失败", + DeleteAppError: "删除小程序失败", + ListAppError: "获取小程序列表失败", + ModifyAppError: "修改小程序失败", } diff --git a/internal/cron/cron.go b/internal/cron/cron.go index 86b96d5..16a027c 100644 --- a/internal/cron/cron.go +++ b/internal/cron/cron.go @@ -7,7 +7,6 @@ import ( "mini-chat/internal/pkg/errors" "mini-chat/internal/pkg/logger" "mini-chat/internal/repository/mysql" - "mini-chat/internal/repository/mysql/model" "github.com/jakecoffman/cron" ) @@ -59,10 +58,10 @@ type Server interface { Stop() // AddTask 增加定时任务 - AddTask(task *model.PatientMedicineTask) + AddTask() // AddJob 增加定时任务执行的工作内容 - AddJob(task *model.PatientMedicineTask, execUser string) cron.FuncJob + AddJob() cron.FuncJob // StopJob 停止定时任务 StopJob(taskCode string) diff --git a/internal/cron/cron_add_job.go b/internal/cron/cron_add_job.go index fc38acc..df59c7e 100644 --- a/internal/cron/cron_add_job.go +++ b/internal/cron/cron_add_job.go @@ -1,33 +1,14 @@ package cron import ( - "context" - "fmt" - - "mini-chat/internal/repository/mysql/model" - "github.com/jakecoffman/cron" ) -func (s *server) AddJob(task *model.PatientMedicineTask, execUser string) cron.FuncJob { - _, cancel := context.WithCancel(context.Background()) - - s.mu.Lock() - s.taskContext[task.Code] = cancel - s.mu.Unlock() - +func (s *server) AddJob() cron.FuncJob { return func() { s.taskCount.Add() defer func() { s.taskCount.Done() - - s.mu.Lock() - delete(s.taskContext, task.Code) // 清理任务上下文 - s.mu.Unlock() - - if err := recover(); err != nil { - s.logger.Error(fmt.Sprintf("[定时任务] 任务编码:%s, 执行异常: %+v", task.Code, err)) - } }() // 执行任务 diff --git a/internal/cron/cron_add_task.go b/internal/cron/cron_add_task.go index 7d3a3a0..e408f07 100644 --- a/internal/cron/cron_add_task.go +++ b/internal/cron/cron_add_task.go @@ -1,21 +1,4 @@ package cron -import ( - "fmt" - "strings" - - "mini-chat/internal/repository/mysql/model" -) - -func (s *server) AddTask(task *model.PatientMedicineTask) { - defer func() { - if err := recover(); err != nil { - s.logger.Error(fmt.Sprintf("[定时任务] 任务编号: %s, 添加异常: %+v", task.Code, err)) - } - }() - - spec := "0 " + strings.TrimSpace(task.Spec) - name := fmt.Sprintf("cron_task_%s", task.Code) - - s.cron.AddFunc(spec, s.AddJob(task, "定时任务"), name) +func (s *server) AddTask() { } diff --git a/internal/repository/mysql/dao/article.gen.go b/internal/repository/mysql/dao/article.gen.go deleted file mode 100644 index 006f84e..0000000 --- a/internal/repository/mysql/dao/article.gen.go +++ /dev/null @@ -1,348 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newArticle(db *gorm.DB, opts ...gen.DOOption) article { - _article := article{} - - _article.articleDo.UseDB(db, opts...) - _article.articleDo.UseModel(&model.Article{}) - - tableName := _article.articleDo.TableName() - _article.ALL = field.NewAsterisk(tableName) - _article.ID = field.NewInt32(tableName, "id") - _article.Title = field.NewString(tableName, "title") - _article.CoverImage = field.NewString(tableName, "cover_image") - _article.Content = field.NewString(tableName, "content") - _article.CreatedUser = field.NewString(tableName, "created_user") - _article.CreatedAt = field.NewTime(tableName, "created_at") - _article.UpdatedUser = field.NewString(tableName, "updated_user") - _article.UpdatedAt = field.NewTime(tableName, "updated_at") - - _article.fillFieldMap() - - return _article -} - -// article 文章表 -type article struct { - articleDo - - ALL field.Asterisk - ID field.Int32 // 主键 - Title field.String // 文章标题 - CoverImage field.String // 文章封面图 - Content field.String // 文章内容 - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (a article) Table(newTableName string) *article { - a.articleDo.UseTable(newTableName) - return a.updateTableName(newTableName) -} - -func (a article) As(alias string) *article { - a.articleDo.DO = *(a.articleDo.As(alias).(*gen.DO)) - return a.updateTableName(alias) -} - -func (a *article) updateTableName(table string) *article { - a.ALL = field.NewAsterisk(table) - a.ID = field.NewInt32(table, "id") - a.Title = field.NewString(table, "title") - a.CoverImage = field.NewString(table, "cover_image") - a.Content = field.NewString(table, "content") - a.CreatedUser = field.NewString(table, "created_user") - a.CreatedAt = field.NewTime(table, "created_at") - a.UpdatedUser = field.NewString(table, "updated_user") - a.UpdatedAt = field.NewTime(table, "updated_at") - - a.fillFieldMap() - - return a -} - -func (a *article) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := a.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (a *article) fillFieldMap() { - a.fieldMap = make(map[string]field.Expr, 8) - a.fieldMap["id"] = a.ID - a.fieldMap["title"] = a.Title - a.fieldMap["cover_image"] = a.CoverImage - a.fieldMap["content"] = a.Content - a.fieldMap["created_user"] = a.CreatedUser - a.fieldMap["created_at"] = a.CreatedAt - a.fieldMap["updated_user"] = a.UpdatedUser - a.fieldMap["updated_at"] = a.UpdatedAt -} - -func (a article) clone(db *gorm.DB) article { - a.articleDo.ReplaceConnPool(db.Statement.ConnPool) - return a -} - -func (a article) replaceDB(db *gorm.DB) article { - a.articleDo.ReplaceDB(db) - return a -} - -type articleDo struct{ gen.DO } - -func (a articleDo) Debug() *articleDo { - return a.withDO(a.DO.Debug()) -} - -func (a articleDo) WithContext(ctx context.Context) *articleDo { - return a.withDO(a.DO.WithContext(ctx)) -} - -func (a articleDo) ReadDB() *articleDo { - return a.Clauses(dbresolver.Read) -} - -func (a articleDo) WriteDB() *articleDo { - return a.Clauses(dbresolver.Write) -} - -func (a articleDo) Session(config *gorm.Session) *articleDo { - return a.withDO(a.DO.Session(config)) -} - -func (a articleDo) Clauses(conds ...clause.Expression) *articleDo { - return a.withDO(a.DO.Clauses(conds...)) -} - -func (a articleDo) Returning(value interface{}, columns ...string) *articleDo { - return a.withDO(a.DO.Returning(value, columns...)) -} - -func (a articleDo) Not(conds ...gen.Condition) *articleDo { - return a.withDO(a.DO.Not(conds...)) -} - -func (a articleDo) Or(conds ...gen.Condition) *articleDo { - return a.withDO(a.DO.Or(conds...)) -} - -func (a articleDo) Select(conds ...field.Expr) *articleDo { - return a.withDO(a.DO.Select(conds...)) -} - -func (a articleDo) Where(conds ...gen.Condition) *articleDo { - return a.withDO(a.DO.Where(conds...)) -} - -func (a articleDo) Order(conds ...field.Expr) *articleDo { - return a.withDO(a.DO.Order(conds...)) -} - -func (a articleDo) Distinct(cols ...field.Expr) *articleDo { - return a.withDO(a.DO.Distinct(cols...)) -} - -func (a articleDo) Omit(cols ...field.Expr) *articleDo { - return a.withDO(a.DO.Omit(cols...)) -} - -func (a articleDo) Join(table schema.Tabler, on ...field.Expr) *articleDo { - return a.withDO(a.DO.Join(table, on...)) -} - -func (a articleDo) LeftJoin(table schema.Tabler, on ...field.Expr) *articleDo { - return a.withDO(a.DO.LeftJoin(table, on...)) -} - -func (a articleDo) RightJoin(table schema.Tabler, on ...field.Expr) *articleDo { - return a.withDO(a.DO.RightJoin(table, on...)) -} - -func (a articleDo) Group(cols ...field.Expr) *articleDo { - return a.withDO(a.DO.Group(cols...)) -} - -func (a articleDo) Having(conds ...gen.Condition) *articleDo { - return a.withDO(a.DO.Having(conds...)) -} - -func (a articleDo) Limit(limit int) *articleDo { - return a.withDO(a.DO.Limit(limit)) -} - -func (a articleDo) Offset(offset int) *articleDo { - return a.withDO(a.DO.Offset(offset)) -} - -func (a articleDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *articleDo { - return a.withDO(a.DO.Scopes(funcs...)) -} - -func (a articleDo) Unscoped() *articleDo { - return a.withDO(a.DO.Unscoped()) -} - -func (a articleDo) Create(values ...*model.Article) error { - if len(values) == 0 { - return nil - } - return a.DO.Create(values) -} - -func (a articleDo) CreateInBatches(values []*model.Article, batchSize int) error { - return a.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (a articleDo) Save(values ...*model.Article) error { - if len(values) == 0 { - return nil - } - return a.DO.Save(values) -} - -func (a articleDo) First() (*model.Article, error) { - if result, err := a.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.Article), nil - } -} - -func (a articleDo) Take() (*model.Article, error) { - if result, err := a.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.Article), nil - } -} - -func (a articleDo) Last() (*model.Article, error) { - if result, err := a.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.Article), nil - } -} - -func (a articleDo) Find() ([]*model.Article, error) { - result, err := a.DO.Find() - return result.([]*model.Article), err -} - -func (a articleDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Article, err error) { - buf := make([]*model.Article, 0, batchSize) - err = a.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (a articleDo) FindInBatches(result *[]*model.Article, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return a.DO.FindInBatches(result, batchSize, fc) -} - -func (a articleDo) Attrs(attrs ...field.AssignExpr) *articleDo { - return a.withDO(a.DO.Attrs(attrs...)) -} - -func (a articleDo) Assign(attrs ...field.AssignExpr) *articleDo { - return a.withDO(a.DO.Assign(attrs...)) -} - -func (a articleDo) Joins(fields ...field.RelationField) *articleDo { - for _, _f := range fields { - a = *a.withDO(a.DO.Joins(_f)) - } - return &a -} - -func (a articleDo) Preload(fields ...field.RelationField) *articleDo { - for _, _f := range fields { - a = *a.withDO(a.DO.Preload(_f)) - } - return &a -} - -func (a articleDo) FirstOrInit() (*model.Article, error) { - if result, err := a.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.Article), nil - } -} - -func (a articleDo) FirstOrCreate() (*model.Article, error) { - if result, err := a.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.Article), nil - } -} - -func (a articleDo) FindByPage(offset int, limit int) (result []*model.Article, count int64, err error) { - result, err = a.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = a.Offset(-1).Limit(-1).Count() - return -} - -func (a articleDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = a.Count() - if err != nil { - return - } - - err = a.Offset(offset).Limit(limit).Scan(result) - return -} - -func (a articleDo) Scan(result interface{}) (err error) { - return a.DO.Scan(result) -} - -func (a articleDo) Delete(models ...*model.Article) (result gen.ResultInfo, err error) { - return a.DO.Delete(models) -} - -func (a *articleDo) withDO(do gen.Dao) *articleDo { - a.DO = *do.(*gen.DO) - return a -} diff --git a/internal/repository/mysql/dao/diagnostic_record.gen.go b/internal/repository/mysql/dao/diagnostic_record.gen.go deleted file mode 100644 index 1d37987..0000000 --- a/internal/repository/mysql/dao/diagnostic_record.gen.go +++ /dev/null @@ -1,364 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newDiagnosticRecord(db *gorm.DB, opts ...gen.DOOption) diagnosticRecord { - _diagnosticRecord := diagnosticRecord{} - - _diagnosticRecord.diagnosticRecordDo.UseDB(db, opts...) - _diagnosticRecord.diagnosticRecordDo.UseModel(&model.DiagnosticRecord{}) - - tableName := _diagnosticRecord.diagnosticRecordDo.TableName() - _diagnosticRecord.ALL = field.NewAsterisk(tableName) - _diagnosticRecord.ID = field.NewInt32(tableName, "id") - _diagnosticRecord.UserID = field.NewString(tableName, "user_id") - _diagnosticRecord.Username = field.NewString(tableName, "username") - _diagnosticRecord.Mobile = field.NewString(tableName, "mobile") - _diagnosticRecord.Mmp7 = field.NewString(tableName, "mmp_7") - _diagnosticRecord.Day = field.NewInt32(tableName, "day") - _diagnosticRecord.GallbladderImage = field.NewString(tableName, "gallbladder_image") - _diagnosticRecord.PortalVeinBranchImage = field.NewString(tableName, "portal_vein_branch_image") - _diagnosticRecord.PortalVeinCrossImage = field.NewString(tableName, "portal_vein_cross_image") - _diagnosticRecord.IdentifyResult = field.NewString(tableName, "identify_result") - _diagnosticRecord.CreatedUser = field.NewString(tableName, "created_user") - _diagnosticRecord.CreatedAt = field.NewTime(tableName, "created_at") - - _diagnosticRecord.fillFieldMap() - - return _diagnosticRecord -} - -// diagnosticRecord 诊断记录表 -type diagnosticRecord struct { - diagnosticRecordDo - - ALL field.Asterisk - ID field.Int32 // 主键 - UserID field.String // 用户ID(openid) - Username field.String // 姓名 - Mobile field.String // 手机号 - Mmp7 field.String // MMP-7检测值 - Day field.Int32 // 日龄(天) - GallbladderImage field.String // 胆囊照片 - PortalVeinBranchImage field.String // 门静脉左右分支照片 - PortalVeinCrossImage field.String // 门静脉右支横截照片 - IdentifyResult field.String // 识别结果 - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - - fieldMap map[string]field.Expr -} - -func (d diagnosticRecord) Table(newTableName string) *diagnosticRecord { - d.diagnosticRecordDo.UseTable(newTableName) - return d.updateTableName(newTableName) -} - -func (d diagnosticRecord) As(alias string) *diagnosticRecord { - d.diagnosticRecordDo.DO = *(d.diagnosticRecordDo.As(alias).(*gen.DO)) - return d.updateTableName(alias) -} - -func (d *diagnosticRecord) updateTableName(table string) *diagnosticRecord { - d.ALL = field.NewAsterisk(table) - d.ID = field.NewInt32(table, "id") - d.UserID = field.NewString(table, "user_id") - d.Username = field.NewString(table, "username") - d.Mobile = field.NewString(table, "mobile") - d.Mmp7 = field.NewString(table, "mmp_7") - d.Day = field.NewInt32(table, "day") - d.GallbladderImage = field.NewString(table, "gallbladder_image") - d.PortalVeinBranchImage = field.NewString(table, "portal_vein_branch_image") - d.PortalVeinCrossImage = field.NewString(table, "portal_vein_cross_image") - d.IdentifyResult = field.NewString(table, "identify_result") - d.CreatedUser = field.NewString(table, "created_user") - d.CreatedAt = field.NewTime(table, "created_at") - - d.fillFieldMap() - - return d -} - -func (d *diagnosticRecord) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := d.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (d *diagnosticRecord) fillFieldMap() { - d.fieldMap = make(map[string]field.Expr, 12) - d.fieldMap["id"] = d.ID - d.fieldMap["user_id"] = d.UserID - d.fieldMap["username"] = d.Username - d.fieldMap["mobile"] = d.Mobile - d.fieldMap["mmp_7"] = d.Mmp7 - d.fieldMap["day"] = d.Day - d.fieldMap["gallbladder_image"] = d.GallbladderImage - d.fieldMap["portal_vein_branch_image"] = d.PortalVeinBranchImage - d.fieldMap["portal_vein_cross_image"] = d.PortalVeinCrossImage - d.fieldMap["identify_result"] = d.IdentifyResult - d.fieldMap["created_user"] = d.CreatedUser - d.fieldMap["created_at"] = d.CreatedAt -} - -func (d diagnosticRecord) clone(db *gorm.DB) diagnosticRecord { - d.diagnosticRecordDo.ReplaceConnPool(db.Statement.ConnPool) - return d -} - -func (d diagnosticRecord) replaceDB(db *gorm.DB) diagnosticRecord { - d.diagnosticRecordDo.ReplaceDB(db) - return d -} - -type diagnosticRecordDo struct{ gen.DO } - -func (d diagnosticRecordDo) Debug() *diagnosticRecordDo { - return d.withDO(d.DO.Debug()) -} - -func (d diagnosticRecordDo) WithContext(ctx context.Context) *diagnosticRecordDo { - return d.withDO(d.DO.WithContext(ctx)) -} - -func (d diagnosticRecordDo) ReadDB() *diagnosticRecordDo { - return d.Clauses(dbresolver.Read) -} - -func (d diagnosticRecordDo) WriteDB() *diagnosticRecordDo { - return d.Clauses(dbresolver.Write) -} - -func (d diagnosticRecordDo) Session(config *gorm.Session) *diagnosticRecordDo { - return d.withDO(d.DO.Session(config)) -} - -func (d diagnosticRecordDo) Clauses(conds ...clause.Expression) *diagnosticRecordDo { - return d.withDO(d.DO.Clauses(conds...)) -} - -func (d diagnosticRecordDo) Returning(value interface{}, columns ...string) *diagnosticRecordDo { - return d.withDO(d.DO.Returning(value, columns...)) -} - -func (d diagnosticRecordDo) Not(conds ...gen.Condition) *diagnosticRecordDo { - return d.withDO(d.DO.Not(conds...)) -} - -func (d diagnosticRecordDo) Or(conds ...gen.Condition) *diagnosticRecordDo { - return d.withDO(d.DO.Or(conds...)) -} - -func (d diagnosticRecordDo) Select(conds ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.Select(conds...)) -} - -func (d diagnosticRecordDo) Where(conds ...gen.Condition) *diagnosticRecordDo { - return d.withDO(d.DO.Where(conds...)) -} - -func (d diagnosticRecordDo) Order(conds ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.Order(conds...)) -} - -func (d diagnosticRecordDo) Distinct(cols ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.Distinct(cols...)) -} - -func (d diagnosticRecordDo) Omit(cols ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.Omit(cols...)) -} - -func (d diagnosticRecordDo) Join(table schema.Tabler, on ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.Join(table, on...)) -} - -func (d diagnosticRecordDo) LeftJoin(table schema.Tabler, on ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.LeftJoin(table, on...)) -} - -func (d diagnosticRecordDo) RightJoin(table schema.Tabler, on ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.RightJoin(table, on...)) -} - -func (d diagnosticRecordDo) Group(cols ...field.Expr) *diagnosticRecordDo { - return d.withDO(d.DO.Group(cols...)) -} - -func (d diagnosticRecordDo) Having(conds ...gen.Condition) *diagnosticRecordDo { - return d.withDO(d.DO.Having(conds...)) -} - -func (d diagnosticRecordDo) Limit(limit int) *diagnosticRecordDo { - return d.withDO(d.DO.Limit(limit)) -} - -func (d diagnosticRecordDo) Offset(offset int) *diagnosticRecordDo { - return d.withDO(d.DO.Offset(offset)) -} - -func (d diagnosticRecordDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *diagnosticRecordDo { - return d.withDO(d.DO.Scopes(funcs...)) -} - -func (d diagnosticRecordDo) Unscoped() *diagnosticRecordDo { - return d.withDO(d.DO.Unscoped()) -} - -func (d diagnosticRecordDo) Create(values ...*model.DiagnosticRecord) error { - if len(values) == 0 { - return nil - } - return d.DO.Create(values) -} - -func (d diagnosticRecordDo) CreateInBatches(values []*model.DiagnosticRecord, batchSize int) error { - return d.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (d diagnosticRecordDo) Save(values ...*model.DiagnosticRecord) error { - if len(values) == 0 { - return nil - } - return d.DO.Save(values) -} - -func (d diagnosticRecordDo) First() (*model.DiagnosticRecord, error) { - if result, err := d.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.DiagnosticRecord), nil - } -} - -func (d diagnosticRecordDo) Take() (*model.DiagnosticRecord, error) { - if result, err := d.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.DiagnosticRecord), nil - } -} - -func (d diagnosticRecordDo) Last() (*model.DiagnosticRecord, error) { - if result, err := d.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.DiagnosticRecord), nil - } -} - -func (d diagnosticRecordDo) Find() ([]*model.DiagnosticRecord, error) { - result, err := d.DO.Find() - return result.([]*model.DiagnosticRecord), err -} - -func (d diagnosticRecordDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.DiagnosticRecord, err error) { - buf := make([]*model.DiagnosticRecord, 0, batchSize) - err = d.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (d diagnosticRecordDo) FindInBatches(result *[]*model.DiagnosticRecord, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return d.DO.FindInBatches(result, batchSize, fc) -} - -func (d diagnosticRecordDo) Attrs(attrs ...field.AssignExpr) *diagnosticRecordDo { - return d.withDO(d.DO.Attrs(attrs...)) -} - -func (d diagnosticRecordDo) Assign(attrs ...field.AssignExpr) *diagnosticRecordDo { - return d.withDO(d.DO.Assign(attrs...)) -} - -func (d diagnosticRecordDo) Joins(fields ...field.RelationField) *diagnosticRecordDo { - for _, _f := range fields { - d = *d.withDO(d.DO.Joins(_f)) - } - return &d -} - -func (d diagnosticRecordDo) Preload(fields ...field.RelationField) *diagnosticRecordDo { - for _, _f := range fields { - d = *d.withDO(d.DO.Preload(_f)) - } - return &d -} - -func (d diagnosticRecordDo) FirstOrInit() (*model.DiagnosticRecord, error) { - if result, err := d.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.DiagnosticRecord), nil - } -} - -func (d diagnosticRecordDo) FirstOrCreate() (*model.DiagnosticRecord, error) { - if result, err := d.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.DiagnosticRecord), nil - } -} - -func (d diagnosticRecordDo) FindByPage(offset int, limit int) (result []*model.DiagnosticRecord, count int64, err error) { - result, err = d.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = d.Offset(-1).Limit(-1).Count() - return -} - -func (d diagnosticRecordDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = d.Count() - if err != nil { - return - } - - err = d.Offset(offset).Limit(limit).Scan(result) - return -} - -func (d diagnosticRecordDo) Scan(result interface{}) (err error) { - return d.DO.Scan(result) -} - -func (d diagnosticRecordDo) Delete(models ...*model.DiagnosticRecord) (result gen.ResultInfo, err error) { - return d.DO.Delete(models) -} - -func (d *diagnosticRecordDo) withDO(do gen.Dao) *diagnosticRecordDo { - d.DO = *do.(*gen.DO) - return d -} diff --git a/internal/repository/mysql/dao/doctor.gen.go b/internal/repository/mysql/dao/doctor.gen.go deleted file mode 100644 index 8be5e34..0000000 --- a/internal/repository/mysql/dao/doctor.gen.go +++ /dev/null @@ -1,368 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newDoctor(db *gorm.DB, opts ...gen.DOOption) doctor { - _doctor := doctor{} - - _doctor.doctorDo.UseDB(db, opts...) - _doctor.doctorDo.UseModel(&model.Doctor{}) - - tableName := _doctor.doctorDo.TableName() - _doctor.ALL = field.NewAsterisk(tableName) - _doctor.ID = field.NewInt32(tableName, "id") - _doctor.Username = field.NewString(tableName, "username") - _doctor.Nickname = field.NewString(tableName, "nickname") - _doctor.Mobile = field.NewString(tableName, "mobile") - _doctor.Password = field.NewString(tableName, "password") - _doctor.LoginStatus = field.NewInt32(tableName, "login_status") - _doctor.LastLoginTime = field.NewTime(tableName, "last_login_time") - _doctor.LastLoginIP = field.NewString(tableName, "last_login_ip") - _doctor.LastLoginHash = field.NewString(tableName, "last_login_hash") - _doctor.CreatedUser = field.NewString(tableName, "created_user") - _doctor.CreatedAt = field.NewTime(tableName, "created_at") - _doctor.UpdatedUser = field.NewString(tableName, "updated_user") - _doctor.UpdatedAt = field.NewTime(tableName, "updated_at") - - _doctor.fillFieldMap() - - return _doctor -} - -// doctor 医生表 -type doctor struct { - doctorDo - - ALL field.Asterisk - ID field.Int32 // 主键 - Username field.String // 用户名 - Nickname field.String // 昵称 - Mobile field.String // 手机号 - Password field.String // 密码 - LoginStatus field.Int32 // 登录状态(1:启用 0:禁用) - LastLoginTime field.Time // 最后一次登录时间 - LastLoginIP field.String // 最后一次登录IP - LastLoginHash field.String // 最后一次登录 Hash - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (d doctor) Table(newTableName string) *doctor { - d.doctorDo.UseTable(newTableName) - return d.updateTableName(newTableName) -} - -func (d doctor) As(alias string) *doctor { - d.doctorDo.DO = *(d.doctorDo.As(alias).(*gen.DO)) - return d.updateTableName(alias) -} - -func (d *doctor) updateTableName(table string) *doctor { - d.ALL = field.NewAsterisk(table) - d.ID = field.NewInt32(table, "id") - d.Username = field.NewString(table, "username") - d.Nickname = field.NewString(table, "nickname") - d.Mobile = field.NewString(table, "mobile") - d.Password = field.NewString(table, "password") - d.LoginStatus = field.NewInt32(table, "login_status") - d.LastLoginTime = field.NewTime(table, "last_login_time") - d.LastLoginIP = field.NewString(table, "last_login_ip") - d.LastLoginHash = field.NewString(table, "last_login_hash") - d.CreatedUser = field.NewString(table, "created_user") - d.CreatedAt = field.NewTime(table, "created_at") - d.UpdatedUser = field.NewString(table, "updated_user") - d.UpdatedAt = field.NewTime(table, "updated_at") - - d.fillFieldMap() - - return d -} - -func (d *doctor) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := d.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (d *doctor) fillFieldMap() { - d.fieldMap = make(map[string]field.Expr, 13) - d.fieldMap["id"] = d.ID - d.fieldMap["username"] = d.Username - d.fieldMap["nickname"] = d.Nickname - d.fieldMap["mobile"] = d.Mobile - d.fieldMap["password"] = d.Password - d.fieldMap["login_status"] = d.LoginStatus - d.fieldMap["last_login_time"] = d.LastLoginTime - d.fieldMap["last_login_ip"] = d.LastLoginIP - d.fieldMap["last_login_hash"] = d.LastLoginHash - d.fieldMap["created_user"] = d.CreatedUser - d.fieldMap["created_at"] = d.CreatedAt - d.fieldMap["updated_user"] = d.UpdatedUser - d.fieldMap["updated_at"] = d.UpdatedAt -} - -func (d doctor) clone(db *gorm.DB) doctor { - d.doctorDo.ReplaceConnPool(db.Statement.ConnPool) - return d -} - -func (d doctor) replaceDB(db *gorm.DB) doctor { - d.doctorDo.ReplaceDB(db) - return d -} - -type doctorDo struct{ gen.DO } - -func (d doctorDo) Debug() *doctorDo { - return d.withDO(d.DO.Debug()) -} - -func (d doctorDo) WithContext(ctx context.Context) *doctorDo { - return d.withDO(d.DO.WithContext(ctx)) -} - -func (d doctorDo) ReadDB() *doctorDo { - return d.Clauses(dbresolver.Read) -} - -func (d doctorDo) WriteDB() *doctorDo { - return d.Clauses(dbresolver.Write) -} - -func (d doctorDo) Session(config *gorm.Session) *doctorDo { - return d.withDO(d.DO.Session(config)) -} - -func (d doctorDo) Clauses(conds ...clause.Expression) *doctorDo { - return d.withDO(d.DO.Clauses(conds...)) -} - -func (d doctorDo) Returning(value interface{}, columns ...string) *doctorDo { - return d.withDO(d.DO.Returning(value, columns...)) -} - -func (d doctorDo) Not(conds ...gen.Condition) *doctorDo { - return d.withDO(d.DO.Not(conds...)) -} - -func (d doctorDo) Or(conds ...gen.Condition) *doctorDo { - return d.withDO(d.DO.Or(conds...)) -} - -func (d doctorDo) Select(conds ...field.Expr) *doctorDo { - return d.withDO(d.DO.Select(conds...)) -} - -func (d doctorDo) Where(conds ...gen.Condition) *doctorDo { - return d.withDO(d.DO.Where(conds...)) -} - -func (d doctorDo) Order(conds ...field.Expr) *doctorDo { - return d.withDO(d.DO.Order(conds...)) -} - -func (d doctorDo) Distinct(cols ...field.Expr) *doctorDo { - return d.withDO(d.DO.Distinct(cols...)) -} - -func (d doctorDo) Omit(cols ...field.Expr) *doctorDo { - return d.withDO(d.DO.Omit(cols...)) -} - -func (d doctorDo) Join(table schema.Tabler, on ...field.Expr) *doctorDo { - return d.withDO(d.DO.Join(table, on...)) -} - -func (d doctorDo) LeftJoin(table schema.Tabler, on ...field.Expr) *doctorDo { - return d.withDO(d.DO.LeftJoin(table, on...)) -} - -func (d doctorDo) RightJoin(table schema.Tabler, on ...field.Expr) *doctorDo { - return d.withDO(d.DO.RightJoin(table, on...)) -} - -func (d doctorDo) Group(cols ...field.Expr) *doctorDo { - return d.withDO(d.DO.Group(cols...)) -} - -func (d doctorDo) Having(conds ...gen.Condition) *doctorDo { - return d.withDO(d.DO.Having(conds...)) -} - -func (d doctorDo) Limit(limit int) *doctorDo { - return d.withDO(d.DO.Limit(limit)) -} - -func (d doctorDo) Offset(offset int) *doctorDo { - return d.withDO(d.DO.Offset(offset)) -} - -func (d doctorDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *doctorDo { - return d.withDO(d.DO.Scopes(funcs...)) -} - -func (d doctorDo) Unscoped() *doctorDo { - return d.withDO(d.DO.Unscoped()) -} - -func (d doctorDo) Create(values ...*model.Doctor) error { - if len(values) == 0 { - return nil - } - return d.DO.Create(values) -} - -func (d doctorDo) CreateInBatches(values []*model.Doctor, batchSize int) error { - return d.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (d doctorDo) Save(values ...*model.Doctor) error { - if len(values) == 0 { - return nil - } - return d.DO.Save(values) -} - -func (d doctorDo) First() (*model.Doctor, error) { - if result, err := d.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.Doctor), nil - } -} - -func (d doctorDo) Take() (*model.Doctor, error) { - if result, err := d.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.Doctor), nil - } -} - -func (d doctorDo) Last() (*model.Doctor, error) { - if result, err := d.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.Doctor), nil - } -} - -func (d doctorDo) Find() ([]*model.Doctor, error) { - result, err := d.DO.Find() - return result.([]*model.Doctor), err -} - -func (d doctorDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Doctor, err error) { - buf := make([]*model.Doctor, 0, batchSize) - err = d.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (d doctorDo) FindInBatches(result *[]*model.Doctor, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return d.DO.FindInBatches(result, batchSize, fc) -} - -func (d doctorDo) Attrs(attrs ...field.AssignExpr) *doctorDo { - return d.withDO(d.DO.Attrs(attrs...)) -} - -func (d doctorDo) Assign(attrs ...field.AssignExpr) *doctorDo { - return d.withDO(d.DO.Assign(attrs...)) -} - -func (d doctorDo) Joins(fields ...field.RelationField) *doctorDo { - for _, _f := range fields { - d = *d.withDO(d.DO.Joins(_f)) - } - return &d -} - -func (d doctorDo) Preload(fields ...field.RelationField) *doctorDo { - for _, _f := range fields { - d = *d.withDO(d.DO.Preload(_f)) - } - return &d -} - -func (d doctorDo) FirstOrInit() (*model.Doctor, error) { - if result, err := d.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.Doctor), nil - } -} - -func (d doctorDo) FirstOrCreate() (*model.Doctor, error) { - if result, err := d.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.Doctor), nil - } -} - -func (d doctorDo) FindByPage(offset int, limit int) (result []*model.Doctor, count int64, err error) { - result, err = d.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = d.Offset(-1).Limit(-1).Count() - return -} - -func (d doctorDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = d.Count() - if err != nil { - return - } - - err = d.Offset(offset).Limit(limit).Scan(result) - return -} - -func (d doctorDo) Scan(result interface{}) (err error) { - return d.DO.Scan(result) -} - -func (d doctorDo) Delete(models ...*model.Doctor) (result gen.ResultInfo, err error) { - return d.DO.Delete(models) -} - -func (d *doctorDo) withDO(do gen.Dao) *doctorDo { - d.DO = *do.(*gen.DO) - return d -} diff --git a/internal/repository/mysql/dao/miniprogram_access_token.gen.go b/internal/repository/mysql/dao/miniprogram_access_token.gen.go deleted file mode 100644 index c683286..0000000 --- a/internal/repository/mysql/dao/miniprogram_access_token.gen.go +++ /dev/null @@ -1,332 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newMiniprogramAccessToken(db *gorm.DB, opts ...gen.DOOption) miniprogramAccessToken { - _miniprogramAccessToken := miniprogramAccessToken{} - - _miniprogramAccessToken.miniprogramAccessTokenDo.UseDB(db, opts...) - _miniprogramAccessToken.miniprogramAccessTokenDo.UseModel(&model.MiniprogramAccessToken{}) - - tableName := _miniprogramAccessToken.miniprogramAccessTokenDo.TableName() - _miniprogramAccessToken.ALL = field.NewAsterisk(tableName) - _miniprogramAccessToken.ID = field.NewInt32(tableName, "id") - _miniprogramAccessToken.AccessToken = field.NewString(tableName, "access_token") - _miniprogramAccessToken.CreatedAt = field.NewTime(tableName, "created_at") - _miniprogramAccessToken.ExpiredAt = field.NewTime(tableName, "expired_at") - - _miniprogramAccessToken.fillFieldMap() - - return _miniprogramAccessToken -} - -// miniprogramAccessToken 小程序 access_token 表 -type miniprogramAccessToken struct { - miniprogramAccessTokenDo - - ALL field.Asterisk - ID field.Int32 // 主键 - AccessToken field.String // access_token - CreatedAt field.Time // 创建时间 - ExpiredAt field.Time // 过期时间 - - fieldMap map[string]field.Expr -} - -func (m miniprogramAccessToken) Table(newTableName string) *miniprogramAccessToken { - m.miniprogramAccessTokenDo.UseTable(newTableName) - return m.updateTableName(newTableName) -} - -func (m miniprogramAccessToken) As(alias string) *miniprogramAccessToken { - m.miniprogramAccessTokenDo.DO = *(m.miniprogramAccessTokenDo.As(alias).(*gen.DO)) - return m.updateTableName(alias) -} - -func (m *miniprogramAccessToken) updateTableName(table string) *miniprogramAccessToken { - m.ALL = field.NewAsterisk(table) - m.ID = field.NewInt32(table, "id") - m.AccessToken = field.NewString(table, "access_token") - m.CreatedAt = field.NewTime(table, "created_at") - m.ExpiredAt = field.NewTime(table, "expired_at") - - m.fillFieldMap() - - return m -} - -func (m *miniprogramAccessToken) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := m.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (m *miniprogramAccessToken) fillFieldMap() { - m.fieldMap = make(map[string]field.Expr, 4) - m.fieldMap["id"] = m.ID - m.fieldMap["access_token"] = m.AccessToken - m.fieldMap["created_at"] = m.CreatedAt - m.fieldMap["expired_at"] = m.ExpiredAt -} - -func (m miniprogramAccessToken) clone(db *gorm.DB) miniprogramAccessToken { - m.miniprogramAccessTokenDo.ReplaceConnPool(db.Statement.ConnPool) - return m -} - -func (m miniprogramAccessToken) replaceDB(db *gorm.DB) miniprogramAccessToken { - m.miniprogramAccessTokenDo.ReplaceDB(db) - return m -} - -type miniprogramAccessTokenDo struct{ gen.DO } - -func (m miniprogramAccessTokenDo) Debug() *miniprogramAccessTokenDo { - return m.withDO(m.DO.Debug()) -} - -func (m miniprogramAccessTokenDo) WithContext(ctx context.Context) *miniprogramAccessTokenDo { - return m.withDO(m.DO.WithContext(ctx)) -} - -func (m miniprogramAccessTokenDo) ReadDB() *miniprogramAccessTokenDo { - return m.Clauses(dbresolver.Read) -} - -func (m miniprogramAccessTokenDo) WriteDB() *miniprogramAccessTokenDo { - return m.Clauses(dbresolver.Write) -} - -func (m miniprogramAccessTokenDo) Session(config *gorm.Session) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Session(config)) -} - -func (m miniprogramAccessTokenDo) Clauses(conds ...clause.Expression) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Clauses(conds...)) -} - -func (m miniprogramAccessTokenDo) Returning(value interface{}, columns ...string) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Returning(value, columns...)) -} - -func (m miniprogramAccessTokenDo) Not(conds ...gen.Condition) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Not(conds...)) -} - -func (m miniprogramAccessTokenDo) Or(conds ...gen.Condition) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Or(conds...)) -} - -func (m miniprogramAccessTokenDo) Select(conds ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Select(conds...)) -} - -func (m miniprogramAccessTokenDo) Where(conds ...gen.Condition) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Where(conds...)) -} - -func (m miniprogramAccessTokenDo) Order(conds ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Order(conds...)) -} - -func (m miniprogramAccessTokenDo) Distinct(cols ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Distinct(cols...)) -} - -func (m miniprogramAccessTokenDo) Omit(cols ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Omit(cols...)) -} - -func (m miniprogramAccessTokenDo) Join(table schema.Tabler, on ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Join(table, on...)) -} - -func (m miniprogramAccessTokenDo) LeftJoin(table schema.Tabler, on ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.LeftJoin(table, on...)) -} - -func (m miniprogramAccessTokenDo) RightJoin(table schema.Tabler, on ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.RightJoin(table, on...)) -} - -func (m miniprogramAccessTokenDo) Group(cols ...field.Expr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Group(cols...)) -} - -func (m miniprogramAccessTokenDo) Having(conds ...gen.Condition) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Having(conds...)) -} - -func (m miniprogramAccessTokenDo) Limit(limit int) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Limit(limit)) -} - -func (m miniprogramAccessTokenDo) Offset(offset int) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Offset(offset)) -} - -func (m miniprogramAccessTokenDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Scopes(funcs...)) -} - -func (m miniprogramAccessTokenDo) Unscoped() *miniprogramAccessTokenDo { - return m.withDO(m.DO.Unscoped()) -} - -func (m miniprogramAccessTokenDo) Create(values ...*model.MiniprogramAccessToken) error { - if len(values) == 0 { - return nil - } - return m.DO.Create(values) -} - -func (m miniprogramAccessTokenDo) CreateInBatches(values []*model.MiniprogramAccessToken, batchSize int) error { - return m.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (m miniprogramAccessTokenDo) Save(values ...*model.MiniprogramAccessToken) error { - if len(values) == 0 { - return nil - } - return m.DO.Save(values) -} - -func (m miniprogramAccessTokenDo) First() (*model.MiniprogramAccessToken, error) { - if result, err := m.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.MiniprogramAccessToken), nil - } -} - -func (m miniprogramAccessTokenDo) Take() (*model.MiniprogramAccessToken, error) { - if result, err := m.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.MiniprogramAccessToken), nil - } -} - -func (m miniprogramAccessTokenDo) Last() (*model.MiniprogramAccessToken, error) { - if result, err := m.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.MiniprogramAccessToken), nil - } -} - -func (m miniprogramAccessTokenDo) Find() ([]*model.MiniprogramAccessToken, error) { - result, err := m.DO.Find() - return result.([]*model.MiniprogramAccessToken), err -} - -func (m miniprogramAccessTokenDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.MiniprogramAccessToken, err error) { - buf := make([]*model.MiniprogramAccessToken, 0, batchSize) - err = m.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (m miniprogramAccessTokenDo) FindInBatches(result *[]*model.MiniprogramAccessToken, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return m.DO.FindInBatches(result, batchSize, fc) -} - -func (m miniprogramAccessTokenDo) Attrs(attrs ...field.AssignExpr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Attrs(attrs...)) -} - -func (m miniprogramAccessTokenDo) Assign(attrs ...field.AssignExpr) *miniprogramAccessTokenDo { - return m.withDO(m.DO.Assign(attrs...)) -} - -func (m miniprogramAccessTokenDo) Joins(fields ...field.RelationField) *miniprogramAccessTokenDo { - for _, _f := range fields { - m = *m.withDO(m.DO.Joins(_f)) - } - return &m -} - -func (m miniprogramAccessTokenDo) Preload(fields ...field.RelationField) *miniprogramAccessTokenDo { - for _, _f := range fields { - m = *m.withDO(m.DO.Preload(_f)) - } - return &m -} - -func (m miniprogramAccessTokenDo) FirstOrInit() (*model.MiniprogramAccessToken, error) { - if result, err := m.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.MiniprogramAccessToken), nil - } -} - -func (m miniprogramAccessTokenDo) FirstOrCreate() (*model.MiniprogramAccessToken, error) { - if result, err := m.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.MiniprogramAccessToken), nil - } -} - -func (m miniprogramAccessTokenDo) FindByPage(offset int, limit int) (result []*model.MiniprogramAccessToken, count int64, err error) { - result, err = m.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = m.Offset(-1).Limit(-1).Count() - return -} - -func (m miniprogramAccessTokenDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = m.Count() - if err != nil { - return - } - - err = m.Offset(offset).Limit(limit).Scan(result) - return -} - -func (m miniprogramAccessTokenDo) Scan(result interface{}) (err error) { - return m.DO.Scan(result) -} - -func (m miniprogramAccessTokenDo) Delete(models ...*model.MiniprogramAccessToken) (result gen.ResultInfo, err error) { - return m.DO.Delete(models) -} - -func (m *miniprogramAccessTokenDo) withDO(do gen.Dao) *miniprogramAccessTokenDo { - m.DO = *do.(*gen.DO) - return m -} diff --git a/internal/repository/mysql/dao/patient.gen.go b/internal/repository/mysql/dao/patient.gen.go deleted file mode 100644 index 95753db..0000000 --- a/internal/repository/mysql/dao/patient.gen.go +++ /dev/null @@ -1,440 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newPatient(db *gorm.DB, opts ...gen.DOOption) patient { - _patient := patient{} - - _patient.patientDo.UseDB(db, opts...) - _patient.patientDo.UseModel(&model.Patient{}) - - tableName := _patient.patientDo.TableName() - _patient.ALL = field.NewAsterisk(tableName) - _patient.ID = field.NewInt32(tableName, "id") - _patient.Mobile = field.NewString(tableName, "mobile") - _patient.Username = field.NewString(tableName, "username") - _patient.Sex = field.NewInt32(tableName, "sex") - _patient.Password = field.NewString(tableName, "password") - _patient.Avatar = field.NewString(tableName, "avatar") - _patient.IDNumber = field.NewString(tableName, "id_number") - _patient.Birthday = field.NewTime(tableName, "birthday") - _patient.BirthWeight = field.NewInt32(tableName, "birth_weight") - _patient.OperativeDate = field.NewTime(tableName, "operative_date") - _patient.NextFollowDate = field.NewTime(tableName, "next_follow_date") - _patient.ParityNumber = field.NewInt32(tableName, "parity_number") - _patient.BirthNumber = field.NewInt32(tableName, "birth_number") - _patient.ConceptionType = field.NewInt32(tableName, "conception_type") - _patient.GestationalWeek = field.NewInt32(tableName, "gestational_week") - _patient.PrenatalCheckType = field.NewInt32(tableName, "prenatal_check_type") - _patient.PrenatalCheckRemark = field.NewString(tableName, "prenatal_check_remark") - _patient.DeliveryType = field.NewInt32(tableName, "delivery_type") - _patient.RiskType = field.NewInt32(tableName, "risk_type") - _patient.RiskValue = field.NewString(tableName, "risk_value") - _patient.HeightGenerateCurveType = field.NewInt32(tableName, "height_generate_curve_type") - _patient.WeightGenerateCurveType = field.NewInt32(tableName, "weight_generate_curve_type") - _patient.LoginStatus = field.NewInt32(tableName, "login_status") - _patient.LastLoginTime = field.NewTime(tableName, "last_login_time") - _patient.LastLoginIP = field.NewString(tableName, "last_login_ip") - _patient.LastLoginHash = field.NewString(tableName, "last_login_hash") - _patient.WxUserID = field.NewString(tableName, "wx_user_id") - _patient.CreatedUser = field.NewString(tableName, "created_user") - _patient.CreatedAt = field.NewTime(tableName, "created_at") - _patient.UpdatedUser = field.NewString(tableName, "updated_user") - _patient.UpdatedAt = field.NewTime(tableName, "updated_at") - - _patient.fillFieldMap() - - return _patient -} - -// patient 患者表 -type patient struct { - patientDo - - ALL field.Asterisk - ID field.Int32 // 主键 - Mobile field.String // 手机号 - Username field.String // 姓名 - Sex field.Int32 // 性别(1:男 2:女) - Password field.String // 密码 - Avatar field.String // 头像地址 - IDNumber field.String // 身份证号 - Birthday field.Time // 出生日期 - BirthWeight field.Int32 // 出生体重(克) - OperativeDate field.Time // 手术日期 - NextFollowDate field.Time // 下次随访时间 - ParityNumber field.Int32 // 胎次(0:未知 1:1胎 2:胎 3:胎 4:≥4胎) - BirthNumber field.Int32 // 产次(0:未知 1:1产 2:2产 3:≥3产) - ConceptionType field.Int32 // 受孕方式(0:未知 1:自然受孕 2:辅助生殖技术) - GestationalWeek field.Int32 // 孕周 - PrenatalCheckType field.Int32 // 产检是否异常(0:未知 1:有 2:无) - PrenatalCheckRemark field.String // 产检异常备注 - DeliveryType field.Int32 // 分娩方式(0:未知 1:顺产 2:剖宫产) - RiskType field.Int32 // 风险类型(0:未知 1:低危 2:中危 3:高危) - RiskValue field.String // 风险值 - HeightGenerateCurveType field.Int32 // 身高生长曲线类型(0:未知 1:轻度偏离 2:正常 3:重度偏离) - WeightGenerateCurveType field.Int32 // 体重生长曲线类型(0:未知 1:轻度偏离 2:正常 3:重度偏离) - LoginStatus field.Int32 // 登录状态(1:启用 0:禁用) - LastLoginTime field.Time // 最后一次登录时间 - LastLoginIP field.String // 最后一次登录IP - LastLoginHash field.String // 最后一次登录 Hash - WxUserID field.String // 微信ID - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (p patient) Table(newTableName string) *patient { - p.patientDo.UseTable(newTableName) - return p.updateTableName(newTableName) -} - -func (p patient) As(alias string) *patient { - p.patientDo.DO = *(p.patientDo.As(alias).(*gen.DO)) - return p.updateTableName(alias) -} - -func (p *patient) updateTableName(table string) *patient { - p.ALL = field.NewAsterisk(table) - p.ID = field.NewInt32(table, "id") - p.Mobile = field.NewString(table, "mobile") - p.Username = field.NewString(table, "username") - p.Sex = field.NewInt32(table, "sex") - p.Password = field.NewString(table, "password") - p.Avatar = field.NewString(table, "avatar") - p.IDNumber = field.NewString(table, "id_number") - p.Birthday = field.NewTime(table, "birthday") - p.BirthWeight = field.NewInt32(table, "birth_weight") - p.OperativeDate = field.NewTime(table, "operative_date") - p.NextFollowDate = field.NewTime(table, "next_follow_date") - p.ParityNumber = field.NewInt32(table, "parity_number") - p.BirthNumber = field.NewInt32(table, "birth_number") - p.ConceptionType = field.NewInt32(table, "conception_type") - p.GestationalWeek = field.NewInt32(table, "gestational_week") - p.PrenatalCheckType = field.NewInt32(table, "prenatal_check_type") - p.PrenatalCheckRemark = field.NewString(table, "prenatal_check_remark") - p.DeliveryType = field.NewInt32(table, "delivery_type") - p.RiskType = field.NewInt32(table, "risk_type") - p.RiskValue = field.NewString(table, "risk_value") - p.HeightGenerateCurveType = field.NewInt32(table, "height_generate_curve_type") - p.WeightGenerateCurveType = field.NewInt32(table, "weight_generate_curve_type") - p.LoginStatus = field.NewInt32(table, "login_status") - p.LastLoginTime = field.NewTime(table, "last_login_time") - p.LastLoginIP = field.NewString(table, "last_login_ip") - p.LastLoginHash = field.NewString(table, "last_login_hash") - p.WxUserID = field.NewString(table, "wx_user_id") - p.CreatedUser = field.NewString(table, "created_user") - p.CreatedAt = field.NewTime(table, "created_at") - p.UpdatedUser = field.NewString(table, "updated_user") - p.UpdatedAt = field.NewTime(table, "updated_at") - - p.fillFieldMap() - - return p -} - -func (p *patient) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := p.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (p *patient) fillFieldMap() { - p.fieldMap = make(map[string]field.Expr, 31) - p.fieldMap["id"] = p.ID - p.fieldMap["mobile"] = p.Mobile - p.fieldMap["username"] = p.Username - p.fieldMap["sex"] = p.Sex - p.fieldMap["password"] = p.Password - p.fieldMap["avatar"] = p.Avatar - p.fieldMap["id_number"] = p.IDNumber - p.fieldMap["birthday"] = p.Birthday - p.fieldMap["birth_weight"] = p.BirthWeight - p.fieldMap["operative_date"] = p.OperativeDate - p.fieldMap["next_follow_date"] = p.NextFollowDate - p.fieldMap["parity_number"] = p.ParityNumber - p.fieldMap["birth_number"] = p.BirthNumber - p.fieldMap["conception_type"] = p.ConceptionType - p.fieldMap["gestational_week"] = p.GestationalWeek - p.fieldMap["prenatal_check_type"] = p.PrenatalCheckType - p.fieldMap["prenatal_check_remark"] = p.PrenatalCheckRemark - p.fieldMap["delivery_type"] = p.DeliveryType - p.fieldMap["risk_type"] = p.RiskType - p.fieldMap["risk_value"] = p.RiskValue - p.fieldMap["height_generate_curve_type"] = p.HeightGenerateCurveType - p.fieldMap["weight_generate_curve_type"] = p.WeightGenerateCurveType - p.fieldMap["login_status"] = p.LoginStatus - p.fieldMap["last_login_time"] = p.LastLoginTime - p.fieldMap["last_login_ip"] = p.LastLoginIP - p.fieldMap["last_login_hash"] = p.LastLoginHash - p.fieldMap["wx_user_id"] = p.WxUserID - p.fieldMap["created_user"] = p.CreatedUser - p.fieldMap["created_at"] = p.CreatedAt - p.fieldMap["updated_user"] = p.UpdatedUser - p.fieldMap["updated_at"] = p.UpdatedAt -} - -func (p patient) clone(db *gorm.DB) patient { - p.patientDo.ReplaceConnPool(db.Statement.ConnPool) - return p -} - -func (p patient) replaceDB(db *gorm.DB) patient { - p.patientDo.ReplaceDB(db) - return p -} - -type patientDo struct{ gen.DO } - -func (p patientDo) Debug() *patientDo { - return p.withDO(p.DO.Debug()) -} - -func (p patientDo) WithContext(ctx context.Context) *patientDo { - return p.withDO(p.DO.WithContext(ctx)) -} - -func (p patientDo) ReadDB() *patientDo { - return p.Clauses(dbresolver.Read) -} - -func (p patientDo) WriteDB() *patientDo { - return p.Clauses(dbresolver.Write) -} - -func (p patientDo) Session(config *gorm.Session) *patientDo { - return p.withDO(p.DO.Session(config)) -} - -func (p patientDo) Clauses(conds ...clause.Expression) *patientDo { - return p.withDO(p.DO.Clauses(conds...)) -} - -func (p patientDo) Returning(value interface{}, columns ...string) *patientDo { - return p.withDO(p.DO.Returning(value, columns...)) -} - -func (p patientDo) Not(conds ...gen.Condition) *patientDo { - return p.withDO(p.DO.Not(conds...)) -} - -func (p patientDo) Or(conds ...gen.Condition) *patientDo { - return p.withDO(p.DO.Or(conds...)) -} - -func (p patientDo) Select(conds ...field.Expr) *patientDo { - return p.withDO(p.DO.Select(conds...)) -} - -func (p patientDo) Where(conds ...gen.Condition) *patientDo { - return p.withDO(p.DO.Where(conds...)) -} - -func (p patientDo) Order(conds ...field.Expr) *patientDo { - return p.withDO(p.DO.Order(conds...)) -} - -func (p patientDo) Distinct(cols ...field.Expr) *patientDo { - return p.withDO(p.DO.Distinct(cols...)) -} - -func (p patientDo) Omit(cols ...field.Expr) *patientDo { - return p.withDO(p.DO.Omit(cols...)) -} - -func (p patientDo) Join(table schema.Tabler, on ...field.Expr) *patientDo { - return p.withDO(p.DO.Join(table, on...)) -} - -func (p patientDo) LeftJoin(table schema.Tabler, on ...field.Expr) *patientDo { - return p.withDO(p.DO.LeftJoin(table, on...)) -} - -func (p patientDo) RightJoin(table schema.Tabler, on ...field.Expr) *patientDo { - return p.withDO(p.DO.RightJoin(table, on...)) -} - -func (p patientDo) Group(cols ...field.Expr) *patientDo { - return p.withDO(p.DO.Group(cols...)) -} - -func (p patientDo) Having(conds ...gen.Condition) *patientDo { - return p.withDO(p.DO.Having(conds...)) -} - -func (p patientDo) Limit(limit int) *patientDo { - return p.withDO(p.DO.Limit(limit)) -} - -func (p patientDo) Offset(offset int) *patientDo { - return p.withDO(p.DO.Offset(offset)) -} - -func (p patientDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *patientDo { - return p.withDO(p.DO.Scopes(funcs...)) -} - -func (p patientDo) Unscoped() *patientDo { - return p.withDO(p.DO.Unscoped()) -} - -func (p patientDo) Create(values ...*model.Patient) error { - if len(values) == 0 { - return nil - } - return p.DO.Create(values) -} - -func (p patientDo) CreateInBatches(values []*model.Patient, batchSize int) error { - return p.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (p patientDo) Save(values ...*model.Patient) error { - if len(values) == 0 { - return nil - } - return p.DO.Save(values) -} - -func (p patientDo) First() (*model.Patient, error) { - if result, err := p.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.Patient), nil - } -} - -func (p patientDo) Take() (*model.Patient, error) { - if result, err := p.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.Patient), nil - } -} - -func (p patientDo) Last() (*model.Patient, error) { - if result, err := p.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.Patient), nil - } -} - -func (p patientDo) Find() ([]*model.Patient, error) { - result, err := p.DO.Find() - return result.([]*model.Patient), err -} - -func (p patientDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Patient, err error) { - buf := make([]*model.Patient, 0, batchSize) - err = p.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (p patientDo) FindInBatches(result *[]*model.Patient, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return p.DO.FindInBatches(result, batchSize, fc) -} - -func (p patientDo) Attrs(attrs ...field.AssignExpr) *patientDo { - return p.withDO(p.DO.Attrs(attrs...)) -} - -func (p patientDo) Assign(attrs ...field.AssignExpr) *patientDo { - return p.withDO(p.DO.Assign(attrs...)) -} - -func (p patientDo) Joins(fields ...field.RelationField) *patientDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Joins(_f)) - } - return &p -} - -func (p patientDo) Preload(fields ...field.RelationField) *patientDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Preload(_f)) - } - return &p -} - -func (p patientDo) FirstOrInit() (*model.Patient, error) { - if result, err := p.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.Patient), nil - } -} - -func (p patientDo) FirstOrCreate() (*model.Patient, error) { - if result, err := p.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.Patient), nil - } -} - -func (p patientDo) FindByPage(offset int, limit int) (result []*model.Patient, count int64, err error) { - result, err = p.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = p.Offset(-1).Limit(-1).Count() - return -} - -func (p patientDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = p.Count() - if err != nil { - return - } - - err = p.Offset(offset).Limit(limit).Scan(result) - return -} - -func (p patientDo) Scan(result interface{}) (err error) { - return p.DO.Scan(result) -} - -func (p patientDo) Delete(models ...*model.Patient) (result gen.ResultInfo, err error) { - return p.DO.Delete(models) -} - -func (p *patientDo) withDO(do gen.Dao) *patientDo { - p.DO = *do.(*gen.DO) - return p -} diff --git a/internal/repository/mysql/dao/patient_emergency_symptom.gen.go b/internal/repository/mysql/dao/patient_emergency_symptom.gen.go deleted file mode 100644 index 049af89..0000000 --- a/internal/repository/mysql/dao/patient_emergency_symptom.gen.go +++ /dev/null @@ -1,348 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newPatientEmergencySymptom(db *gorm.DB, opts ...gen.DOOption) patientEmergencySymptom { - _patientEmergencySymptom := patientEmergencySymptom{} - - _patientEmergencySymptom.patientEmergencySymptomDo.UseDB(db, opts...) - _patientEmergencySymptom.patientEmergencySymptomDo.UseModel(&model.PatientEmergencySymptom{}) - - tableName := _patientEmergencySymptom.patientEmergencySymptomDo.TableName() - _patientEmergencySymptom.ALL = field.NewAsterisk(tableName) - _patientEmergencySymptom.ID = field.NewInt32(tableName, "id") - _patientEmergencySymptom.PatientID = field.NewInt32(tableName, "patient_id") - _patientEmergencySymptom.Symptom = field.NewString(tableName, "symptom") - _patientEmergencySymptom.Conclusion = field.NewString(tableName, "conclusion") - _patientEmergencySymptom.CreatedUser = field.NewString(tableName, "created_user") - _patientEmergencySymptom.CreatedAt = field.NewTime(tableName, "created_at") - _patientEmergencySymptom.UpdatedUser = field.NewString(tableName, "updated_user") - _patientEmergencySymptom.UpdatedAt = field.NewTime(tableName, "updated_at") - - _patientEmergencySymptom.fillFieldMap() - - return _patientEmergencySymptom -} - -// patientEmergencySymptom 患者紧急症状表 -type patientEmergencySymptom struct { - patientEmergencySymptomDo - - ALL field.Asterisk - ID field.Int32 // 主键 - PatientID field.Int32 // 患者ID - Symptom field.String // 症状信息(JSON格式) - Conclusion field.String // 结论 - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (p patientEmergencySymptom) Table(newTableName string) *patientEmergencySymptom { - p.patientEmergencySymptomDo.UseTable(newTableName) - return p.updateTableName(newTableName) -} - -func (p patientEmergencySymptom) As(alias string) *patientEmergencySymptom { - p.patientEmergencySymptomDo.DO = *(p.patientEmergencySymptomDo.As(alias).(*gen.DO)) - return p.updateTableName(alias) -} - -func (p *patientEmergencySymptom) updateTableName(table string) *patientEmergencySymptom { - p.ALL = field.NewAsterisk(table) - p.ID = field.NewInt32(table, "id") - p.PatientID = field.NewInt32(table, "patient_id") - p.Symptom = field.NewString(table, "symptom") - p.Conclusion = field.NewString(table, "conclusion") - p.CreatedUser = field.NewString(table, "created_user") - p.CreatedAt = field.NewTime(table, "created_at") - p.UpdatedUser = field.NewString(table, "updated_user") - p.UpdatedAt = field.NewTime(table, "updated_at") - - p.fillFieldMap() - - return p -} - -func (p *patientEmergencySymptom) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := p.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (p *patientEmergencySymptom) fillFieldMap() { - p.fieldMap = make(map[string]field.Expr, 8) - p.fieldMap["id"] = p.ID - p.fieldMap["patient_id"] = p.PatientID - p.fieldMap["symptom"] = p.Symptom - p.fieldMap["conclusion"] = p.Conclusion - p.fieldMap["created_user"] = p.CreatedUser - p.fieldMap["created_at"] = p.CreatedAt - p.fieldMap["updated_user"] = p.UpdatedUser - p.fieldMap["updated_at"] = p.UpdatedAt -} - -func (p patientEmergencySymptom) clone(db *gorm.DB) patientEmergencySymptom { - p.patientEmergencySymptomDo.ReplaceConnPool(db.Statement.ConnPool) - return p -} - -func (p patientEmergencySymptom) replaceDB(db *gorm.DB) patientEmergencySymptom { - p.patientEmergencySymptomDo.ReplaceDB(db) - return p -} - -type patientEmergencySymptomDo struct{ gen.DO } - -func (p patientEmergencySymptomDo) Debug() *patientEmergencySymptomDo { - return p.withDO(p.DO.Debug()) -} - -func (p patientEmergencySymptomDo) WithContext(ctx context.Context) *patientEmergencySymptomDo { - return p.withDO(p.DO.WithContext(ctx)) -} - -func (p patientEmergencySymptomDo) ReadDB() *patientEmergencySymptomDo { - return p.Clauses(dbresolver.Read) -} - -func (p patientEmergencySymptomDo) WriteDB() *patientEmergencySymptomDo { - return p.Clauses(dbresolver.Write) -} - -func (p patientEmergencySymptomDo) Session(config *gorm.Session) *patientEmergencySymptomDo { - return p.withDO(p.DO.Session(config)) -} - -func (p patientEmergencySymptomDo) Clauses(conds ...clause.Expression) *patientEmergencySymptomDo { - return p.withDO(p.DO.Clauses(conds...)) -} - -func (p patientEmergencySymptomDo) Returning(value interface{}, columns ...string) *patientEmergencySymptomDo { - return p.withDO(p.DO.Returning(value, columns...)) -} - -func (p patientEmergencySymptomDo) Not(conds ...gen.Condition) *patientEmergencySymptomDo { - return p.withDO(p.DO.Not(conds...)) -} - -func (p patientEmergencySymptomDo) Or(conds ...gen.Condition) *patientEmergencySymptomDo { - return p.withDO(p.DO.Or(conds...)) -} - -func (p patientEmergencySymptomDo) Select(conds ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Select(conds...)) -} - -func (p patientEmergencySymptomDo) Where(conds ...gen.Condition) *patientEmergencySymptomDo { - return p.withDO(p.DO.Where(conds...)) -} - -func (p patientEmergencySymptomDo) Order(conds ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Order(conds...)) -} - -func (p patientEmergencySymptomDo) Distinct(cols ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Distinct(cols...)) -} - -func (p patientEmergencySymptomDo) Omit(cols ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Omit(cols...)) -} - -func (p patientEmergencySymptomDo) Join(table schema.Tabler, on ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Join(table, on...)) -} - -func (p patientEmergencySymptomDo) LeftJoin(table schema.Tabler, on ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.LeftJoin(table, on...)) -} - -func (p patientEmergencySymptomDo) RightJoin(table schema.Tabler, on ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.RightJoin(table, on...)) -} - -func (p patientEmergencySymptomDo) Group(cols ...field.Expr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Group(cols...)) -} - -func (p patientEmergencySymptomDo) Having(conds ...gen.Condition) *patientEmergencySymptomDo { - return p.withDO(p.DO.Having(conds...)) -} - -func (p patientEmergencySymptomDo) Limit(limit int) *patientEmergencySymptomDo { - return p.withDO(p.DO.Limit(limit)) -} - -func (p patientEmergencySymptomDo) Offset(offset int) *patientEmergencySymptomDo { - return p.withDO(p.DO.Offset(offset)) -} - -func (p patientEmergencySymptomDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *patientEmergencySymptomDo { - return p.withDO(p.DO.Scopes(funcs...)) -} - -func (p patientEmergencySymptomDo) Unscoped() *patientEmergencySymptomDo { - return p.withDO(p.DO.Unscoped()) -} - -func (p patientEmergencySymptomDo) Create(values ...*model.PatientEmergencySymptom) error { - if len(values) == 0 { - return nil - } - return p.DO.Create(values) -} - -func (p patientEmergencySymptomDo) CreateInBatches(values []*model.PatientEmergencySymptom, batchSize int) error { - return p.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (p patientEmergencySymptomDo) Save(values ...*model.PatientEmergencySymptom) error { - if len(values) == 0 { - return nil - } - return p.DO.Save(values) -} - -func (p patientEmergencySymptomDo) First() (*model.PatientEmergencySymptom, error) { - if result, err := p.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.PatientEmergencySymptom), nil - } -} - -func (p patientEmergencySymptomDo) Take() (*model.PatientEmergencySymptom, error) { - if result, err := p.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.PatientEmergencySymptom), nil - } -} - -func (p patientEmergencySymptomDo) Last() (*model.PatientEmergencySymptom, error) { - if result, err := p.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.PatientEmergencySymptom), nil - } -} - -func (p patientEmergencySymptomDo) Find() ([]*model.PatientEmergencySymptom, error) { - result, err := p.DO.Find() - return result.([]*model.PatientEmergencySymptom), err -} - -func (p patientEmergencySymptomDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.PatientEmergencySymptom, err error) { - buf := make([]*model.PatientEmergencySymptom, 0, batchSize) - err = p.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (p patientEmergencySymptomDo) FindInBatches(result *[]*model.PatientEmergencySymptom, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return p.DO.FindInBatches(result, batchSize, fc) -} - -func (p patientEmergencySymptomDo) Attrs(attrs ...field.AssignExpr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Attrs(attrs...)) -} - -func (p patientEmergencySymptomDo) Assign(attrs ...field.AssignExpr) *patientEmergencySymptomDo { - return p.withDO(p.DO.Assign(attrs...)) -} - -func (p patientEmergencySymptomDo) Joins(fields ...field.RelationField) *patientEmergencySymptomDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Joins(_f)) - } - return &p -} - -func (p patientEmergencySymptomDo) Preload(fields ...field.RelationField) *patientEmergencySymptomDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Preload(_f)) - } - return &p -} - -func (p patientEmergencySymptomDo) FirstOrInit() (*model.PatientEmergencySymptom, error) { - if result, err := p.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.PatientEmergencySymptom), nil - } -} - -func (p patientEmergencySymptomDo) FirstOrCreate() (*model.PatientEmergencySymptom, error) { - if result, err := p.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.PatientEmergencySymptom), nil - } -} - -func (p patientEmergencySymptomDo) FindByPage(offset int, limit int) (result []*model.PatientEmergencySymptom, count int64, err error) { - result, err = p.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = p.Offset(-1).Limit(-1).Count() - return -} - -func (p patientEmergencySymptomDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = p.Count() - if err != nil { - return - } - - err = p.Offset(offset).Limit(limit).Scan(result) - return -} - -func (p patientEmergencySymptomDo) Scan(result interface{}) (err error) { - return p.DO.Scan(result) -} - -func (p patientEmergencySymptomDo) Delete(models ...*model.PatientEmergencySymptom) (result gen.ResultInfo, err error) { - return p.DO.Delete(models) -} - -func (p *patientEmergencySymptomDo) withDO(do gen.Dao) *patientEmergencySymptomDo { - p.DO = *do.(*gen.DO) - return p -} diff --git a/internal/repository/mysql/dao/patient_follow_plan.gen.go b/internal/repository/mysql/dao/patient_follow_plan.gen.go deleted file mode 100644 index 3a4a62a..0000000 --- a/internal/repository/mysql/dao/patient_follow_plan.gen.go +++ /dev/null @@ -1,352 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newPatientFollowPlan(db *gorm.DB, opts ...gen.DOOption) patientFollowPlan { - _patientFollowPlan := patientFollowPlan{} - - _patientFollowPlan.patientFollowPlanDo.UseDB(db, opts...) - _patientFollowPlan.patientFollowPlanDo.UseModel(&model.PatientFollowPlan{}) - - tableName := _patientFollowPlan.patientFollowPlanDo.TableName() - _patientFollowPlan.ALL = field.NewAsterisk(tableName) - _patientFollowPlan.ID = field.NewInt32(tableName, "id") - _patientFollowPlan.PatientID = field.NewInt32(tableName, "patient_id") - _patientFollowPlan.PlanName = field.NewString(tableName, "plan_name") - _patientFollowPlan.PlanDate = field.NewTime(tableName, "plan_date") - _patientFollowPlan.Status = field.NewInt32(tableName, "status") - _patientFollowPlan.CreatedUser = field.NewString(tableName, "created_user") - _patientFollowPlan.CreatedAt = field.NewTime(tableName, "created_at") - _patientFollowPlan.UpdatedUser = field.NewString(tableName, "updated_user") - _patientFollowPlan.UpdatedAt = field.NewTime(tableName, "updated_at") - - _patientFollowPlan.fillFieldMap() - - return _patientFollowPlan -} - -// patientFollowPlan 患者随访计划表 -type patientFollowPlan struct { - patientFollowPlanDo - - ALL field.Asterisk - ID field.Int32 // 主键 - PatientID field.Int32 // 患者ID - PlanName field.String // 计划名称 - PlanDate field.Time // 计划时间 - Status field.Int32 // 完成状态(1:未完成 2:已完成) - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (p patientFollowPlan) Table(newTableName string) *patientFollowPlan { - p.patientFollowPlanDo.UseTable(newTableName) - return p.updateTableName(newTableName) -} - -func (p patientFollowPlan) As(alias string) *patientFollowPlan { - p.patientFollowPlanDo.DO = *(p.patientFollowPlanDo.As(alias).(*gen.DO)) - return p.updateTableName(alias) -} - -func (p *patientFollowPlan) updateTableName(table string) *patientFollowPlan { - p.ALL = field.NewAsterisk(table) - p.ID = field.NewInt32(table, "id") - p.PatientID = field.NewInt32(table, "patient_id") - p.PlanName = field.NewString(table, "plan_name") - p.PlanDate = field.NewTime(table, "plan_date") - p.Status = field.NewInt32(table, "status") - p.CreatedUser = field.NewString(table, "created_user") - p.CreatedAt = field.NewTime(table, "created_at") - p.UpdatedUser = field.NewString(table, "updated_user") - p.UpdatedAt = field.NewTime(table, "updated_at") - - p.fillFieldMap() - - return p -} - -func (p *patientFollowPlan) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := p.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (p *patientFollowPlan) fillFieldMap() { - p.fieldMap = make(map[string]field.Expr, 9) - p.fieldMap["id"] = p.ID - p.fieldMap["patient_id"] = p.PatientID - p.fieldMap["plan_name"] = p.PlanName - p.fieldMap["plan_date"] = p.PlanDate - p.fieldMap["status"] = p.Status - p.fieldMap["created_user"] = p.CreatedUser - p.fieldMap["created_at"] = p.CreatedAt - p.fieldMap["updated_user"] = p.UpdatedUser - p.fieldMap["updated_at"] = p.UpdatedAt -} - -func (p patientFollowPlan) clone(db *gorm.DB) patientFollowPlan { - p.patientFollowPlanDo.ReplaceConnPool(db.Statement.ConnPool) - return p -} - -func (p patientFollowPlan) replaceDB(db *gorm.DB) patientFollowPlan { - p.patientFollowPlanDo.ReplaceDB(db) - return p -} - -type patientFollowPlanDo struct{ gen.DO } - -func (p patientFollowPlanDo) Debug() *patientFollowPlanDo { - return p.withDO(p.DO.Debug()) -} - -func (p patientFollowPlanDo) WithContext(ctx context.Context) *patientFollowPlanDo { - return p.withDO(p.DO.WithContext(ctx)) -} - -func (p patientFollowPlanDo) ReadDB() *patientFollowPlanDo { - return p.Clauses(dbresolver.Read) -} - -func (p patientFollowPlanDo) WriteDB() *patientFollowPlanDo { - return p.Clauses(dbresolver.Write) -} - -func (p patientFollowPlanDo) Session(config *gorm.Session) *patientFollowPlanDo { - return p.withDO(p.DO.Session(config)) -} - -func (p patientFollowPlanDo) Clauses(conds ...clause.Expression) *patientFollowPlanDo { - return p.withDO(p.DO.Clauses(conds...)) -} - -func (p patientFollowPlanDo) Returning(value interface{}, columns ...string) *patientFollowPlanDo { - return p.withDO(p.DO.Returning(value, columns...)) -} - -func (p patientFollowPlanDo) Not(conds ...gen.Condition) *patientFollowPlanDo { - return p.withDO(p.DO.Not(conds...)) -} - -func (p patientFollowPlanDo) Or(conds ...gen.Condition) *patientFollowPlanDo { - return p.withDO(p.DO.Or(conds...)) -} - -func (p patientFollowPlanDo) Select(conds ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.Select(conds...)) -} - -func (p patientFollowPlanDo) Where(conds ...gen.Condition) *patientFollowPlanDo { - return p.withDO(p.DO.Where(conds...)) -} - -func (p patientFollowPlanDo) Order(conds ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.Order(conds...)) -} - -func (p patientFollowPlanDo) Distinct(cols ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.Distinct(cols...)) -} - -func (p patientFollowPlanDo) Omit(cols ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.Omit(cols...)) -} - -func (p patientFollowPlanDo) Join(table schema.Tabler, on ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.Join(table, on...)) -} - -func (p patientFollowPlanDo) LeftJoin(table schema.Tabler, on ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.LeftJoin(table, on...)) -} - -func (p patientFollowPlanDo) RightJoin(table schema.Tabler, on ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.RightJoin(table, on...)) -} - -func (p patientFollowPlanDo) Group(cols ...field.Expr) *patientFollowPlanDo { - return p.withDO(p.DO.Group(cols...)) -} - -func (p patientFollowPlanDo) Having(conds ...gen.Condition) *patientFollowPlanDo { - return p.withDO(p.DO.Having(conds...)) -} - -func (p patientFollowPlanDo) Limit(limit int) *patientFollowPlanDo { - return p.withDO(p.DO.Limit(limit)) -} - -func (p patientFollowPlanDo) Offset(offset int) *patientFollowPlanDo { - return p.withDO(p.DO.Offset(offset)) -} - -func (p patientFollowPlanDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *patientFollowPlanDo { - return p.withDO(p.DO.Scopes(funcs...)) -} - -func (p patientFollowPlanDo) Unscoped() *patientFollowPlanDo { - return p.withDO(p.DO.Unscoped()) -} - -func (p patientFollowPlanDo) Create(values ...*model.PatientFollowPlan) error { - if len(values) == 0 { - return nil - } - return p.DO.Create(values) -} - -func (p patientFollowPlanDo) CreateInBatches(values []*model.PatientFollowPlan, batchSize int) error { - return p.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (p patientFollowPlanDo) Save(values ...*model.PatientFollowPlan) error { - if len(values) == 0 { - return nil - } - return p.DO.Save(values) -} - -func (p patientFollowPlanDo) First() (*model.PatientFollowPlan, error) { - if result, err := p.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowPlan), nil - } -} - -func (p patientFollowPlanDo) Take() (*model.PatientFollowPlan, error) { - if result, err := p.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowPlan), nil - } -} - -func (p patientFollowPlanDo) Last() (*model.PatientFollowPlan, error) { - if result, err := p.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowPlan), nil - } -} - -func (p patientFollowPlanDo) Find() ([]*model.PatientFollowPlan, error) { - result, err := p.DO.Find() - return result.([]*model.PatientFollowPlan), err -} - -func (p patientFollowPlanDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.PatientFollowPlan, err error) { - buf := make([]*model.PatientFollowPlan, 0, batchSize) - err = p.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (p patientFollowPlanDo) FindInBatches(result *[]*model.PatientFollowPlan, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return p.DO.FindInBatches(result, batchSize, fc) -} - -func (p patientFollowPlanDo) Attrs(attrs ...field.AssignExpr) *patientFollowPlanDo { - return p.withDO(p.DO.Attrs(attrs...)) -} - -func (p patientFollowPlanDo) Assign(attrs ...field.AssignExpr) *patientFollowPlanDo { - return p.withDO(p.DO.Assign(attrs...)) -} - -func (p patientFollowPlanDo) Joins(fields ...field.RelationField) *patientFollowPlanDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Joins(_f)) - } - return &p -} - -func (p patientFollowPlanDo) Preload(fields ...field.RelationField) *patientFollowPlanDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Preload(_f)) - } - return &p -} - -func (p patientFollowPlanDo) FirstOrInit() (*model.PatientFollowPlan, error) { - if result, err := p.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowPlan), nil - } -} - -func (p patientFollowPlanDo) FirstOrCreate() (*model.PatientFollowPlan, error) { - if result, err := p.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowPlan), nil - } -} - -func (p patientFollowPlanDo) FindByPage(offset int, limit int) (result []*model.PatientFollowPlan, count int64, err error) { - result, err = p.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = p.Offset(-1).Limit(-1).Count() - return -} - -func (p patientFollowPlanDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = p.Count() - if err != nil { - return - } - - err = p.Offset(offset).Limit(limit).Scan(result) - return -} - -func (p patientFollowPlanDo) Scan(result interface{}) (err error) { - return p.DO.Scan(result) -} - -func (p patientFollowPlanDo) Delete(models ...*model.PatientFollowPlan) (result gen.ResultInfo, err error) { - return p.DO.Delete(models) -} - -func (p *patientFollowPlanDo) withDO(do gen.Dao) *patientFollowPlanDo { - p.DO = *do.(*gen.DO) - return p -} diff --git a/internal/repository/mysql/dao/patient_follow_questionnaire.gen.go b/internal/repository/mysql/dao/patient_follow_questionnaire.gen.go deleted file mode 100644 index 83d66f7..0000000 --- a/internal/repository/mysql/dao/patient_follow_questionnaire.gen.go +++ /dev/null @@ -1,568 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newPatientFollowQuestionnaire(db *gorm.DB, opts ...gen.DOOption) patientFollowQuestionnaire { - _patientFollowQuestionnaire := patientFollowQuestionnaire{} - - _patientFollowQuestionnaire.patientFollowQuestionnaireDo.UseDB(db, opts...) - _patientFollowQuestionnaire.patientFollowQuestionnaireDo.UseModel(&model.PatientFollowQuestionnaire{}) - - tableName := _patientFollowQuestionnaire.patientFollowQuestionnaireDo.TableName() - _patientFollowQuestionnaire.ALL = field.NewAsterisk(tableName) - _patientFollowQuestionnaire.ID = field.NewInt32(tableName, "id") - _patientFollowQuestionnaire.PatientID = field.NewInt32(tableName, "patient_id") - _patientFollowQuestionnaire.PlanID = field.NewInt32(tableName, "plan_id") - _patientFollowQuestionnaire.FollowName = field.NewString(tableName, "follow_name") - _patientFollowQuestionnaire.FollowDate = field.NewTime(tableName, "follow_date") - _patientFollowQuestionnaire.FollowHospital = field.NewString(tableName, "follow_hospital") - _patientFollowQuestionnaire.Height = field.NewString(tableName, "height") - _patientFollowQuestionnaire.Weight = field.NewString(tableName, "weight") - _patientFollowQuestionnaire.HeadCircumference = field.NewString(tableName, "head_circumference") - _patientFollowQuestionnaire.HighHip = field.NewString(tableName, "high_hip") - _patientFollowQuestionnaire.LiverFunctionImage = field.NewString(tableName, "liver_function_image") - _patientFollowQuestionnaire.TotalBilirubin = field.NewString(tableName, "total_bilirubin") - _patientFollowQuestionnaire.DirectBilirubin = field.NewString(tableName, "direct_bilirubin") - _patientFollowQuestionnaire.TotalBileAcid = field.NewString(tableName, "total_bile_acid") - _patientFollowQuestionnaire.Albumin = field.NewString(tableName, "albumin") - _patientFollowQuestionnaire.GrainGrass = field.NewString(tableName, "grain_grass") - _patientFollowQuestionnaire.GuBing = field.NewString(tableName, "gu_bing") - _patientFollowQuestionnaire.Ggt = field.NewString(tableName, "ggt") - _patientFollowQuestionnaire.Alp = field.NewString(tableName, "alp") - _patientFollowQuestionnaire.CoagulationFunctionImage = field.NewString(tableName, "coagulation_function_image") - _patientFollowQuestionnaire.Crp = field.NewString(tableName, "crp") - _patientFollowQuestionnaire.Ddr = field.NewString(tableName, "ddr") - _patientFollowQuestionnaire.Inr = field.NewString(tableName, "inr") - _patientFollowQuestionnaire.Pt = field.NewString(tableName, "pt") - _patientFollowQuestionnaire.Pta = field.NewString(tableName, "pta") - _patientFollowQuestionnaire.Aptt = field.NewString(tableName, "aptt") - _patientFollowQuestionnaire.Tt = field.NewString(tableName, "tt") - _patientFollowQuestionnaire.Fib = field.NewString(tableName, "fib") - _patientFollowQuestionnaire.Npdp = field.NewString(tableName, "npdp") - _patientFollowQuestionnaire.Mmp7 = field.NewString(tableName, "mmp_7") - _patientFollowQuestionnaire.BloodRoutineImage = field.NewString(tableName, "blood_routine_image") - _patientFollowQuestionnaire.Platelets = field.NewString(tableName, "platelets") - _patientFollowQuestionnaire.Hemoglobin = field.NewString(tableName, "hemoglobin") - _patientFollowQuestionnaire.WhiteBloodCells = field.NewString(tableName, "white_blood_cells") - _patientFollowQuestionnaire.RedBloodCells = field.NewString(tableName, "red_blood_cells") - _patientFollowQuestionnaire.NutritionalIndicatorImage = field.NewString(tableName, "nutritional_indicator_image") - _patientFollowQuestionnaire.OhD3 = field.NewString(tableName, "oh_d3") - _patientFollowQuestionnaire.OhD2 = field.NewString(tableName, "oh_d2") - _patientFollowQuestionnaire.OhD = field.NewString(tableName, "oh_d") - _patientFollowQuestionnaire.VitaminA = field.NewString(tableName, "vitamin_a") - _patientFollowQuestionnaire.VitaminK = field.NewString(tableName, "vitamin_k") - _patientFollowQuestionnaire.VitaminE = field.NewString(tableName, "vitamin_e") - _patientFollowQuestionnaire.BModeImage = field.NewString(tableName, "b_mode_image") - _patientFollowQuestionnaire.UnderTheLiverRib = field.NewString(tableName, "under_the_liver_rib") - _patientFollowQuestionnaire.UnderTheXiphoidLiver = field.NewString(tableName, "under_the_xiphoid_liver") - _patientFollowQuestionnaire.SpleenRibArea = field.NewString(tableName, "spleen_rib_area") - _patientFollowQuestionnaire.MainPortalVein = field.NewString(tableName, "main_portal_vein") - _patientFollowQuestionnaire.LiverEcho = field.NewString(tableName, "liver_echo") - _patientFollowQuestionnaire.GallbladderSize = field.NewString(tableName, "gallbladder_size") - _patientFollowQuestionnaire.CommonBileDuct = field.NewString(tableName, "common_bile_duct") - _patientFollowQuestionnaire.FiberBlockSize = field.NewString(tableName, "fiber_block_size") - _patientFollowQuestionnaire.Pvv = field.NewString(tableName, "pvv") - _patientFollowQuestionnaire.LiverElasticityValue = field.NewString(tableName, "liver_elasticity_value") - _patientFollowQuestionnaire.IsHaveCyst = field.NewInt32(tableName, "is_have_cyst") - _patientFollowQuestionnaire.IsHaveAscites = field.NewInt32(tableName, "is_have_ascites") - _patientFollowQuestionnaire.ElastographyMinimum = field.NewString(tableName, "elastography_minimum") - _patientFollowQuestionnaire.ElastographyMaximum = field.NewString(tableName, "elastography_maximum") - _patientFollowQuestionnaire.ElastographyMedian = field.NewString(tableName, "elastography_median") - _patientFollowQuestionnaire.MdtImage = field.NewString(tableName, "mdt_image") - _patientFollowQuestionnaire.CreatedUser = field.NewString(tableName, "created_user") - _patientFollowQuestionnaire.CreatedAt = field.NewTime(tableName, "created_at") - _patientFollowQuestionnaire.UpdatedUser = field.NewString(tableName, "updated_user") - _patientFollowQuestionnaire.UpdatedAt = field.NewTime(tableName, "updated_at") - - _patientFollowQuestionnaire.fillFieldMap() - - return _patientFollowQuestionnaire -} - -// patientFollowQuestionnaire 患者随访问卷表 -type patientFollowQuestionnaire struct { - patientFollowQuestionnaireDo - - ALL field.Asterisk - ID field.Int32 // 主键 - PatientID field.Int32 // 患者ID - PlanID field.Int32 // 随访计划ID - FollowName field.String // 随访名称 - FollowDate field.Time // 随访日期 - FollowHospital field.String // 随访医院 - Height field.String // 身高(CM) - Weight field.String // 体重(KG) - HeadCircumference field.String // 头围(CM) - HighHip field.String // 上臀围(CM) - LiverFunctionImage field.String // 肝功能检查报告(多张用,分割) - TotalBilirubin field.String // 总胆红素(µmol/L) - DirectBilirubin field.String // 直接胆红素(µmol/L) - TotalBileAcid field.String // 总胆汁酸(g/L) - Albumin field.String // 白蛋白(g/L) - GrainGrass field.String // 谷草(U/L) - GuBing field.String // 谷丙(U/L) - Ggt field.String // GGT(U/L) - Alp field.String // ALP(U/L) - CoagulationFunctionImage field.String // 凝血功能检查报告(多张用,分割) - Crp field.String // CRP(mg/L) - Ddr field.String // DDR - Inr field.String // INR - Pt field.String // PT(s) - Pta field.String // PTA(%) - Aptt field.String // APTT(s) - Tt field.String // TT(s) - Fib field.String // FIB(g/L) - Npdp field.String // NPDP(mg/L) - Mmp7 field.String // MMP-7(ng/mL) - BloodRoutineImage field.String // 血常规检查报告(多张用,分割) - Platelets field.String // 血小板(10^9/L) - Hemoglobin field.String // 血红蛋白 (g/L) - WhiteBloodCells field.String // 白细胞 (10^9/L) - RedBloodCells field.String // 红细胞 (10^9/L) - NutritionalIndicatorImage field.String // 营养指标检查报告(多张用,分割) - OhD3 field.String // 25(OH)D3 (ng/ml) - OhD2 field.String // 25(OH)D2 (ng/ml) - OhD field.String // 25(OH)D (ng/ml) - VitaminA field.String // 维生素A (ng/ml) - VitaminK field.String // 维生素K (ng/ml) - VitaminE field.String // 维生素E (ng/ml) - BModeImage field.String // B超报告(多张用,分割) - UnderTheLiverRib field.String // 肝肋下(mm) - UnderTheXiphoidLiver field.String // 肝剑突下(mm) - SpleenRibArea field.String // 脾肋下(mm) - MainPortalVein field.String // 门静脉主干内径(mm) - LiverEcho field.String // 肝回声 - GallbladderSize field.String // 胆囊大小(mm) - CommonBileDuct field.String // 胆总管(mm) - FiberBlockSize field.String // 纤维块大小(mm) - Pvv field.String // 门静脉流速 - LiverElasticityValue field.String // 肝弹性值 - IsHaveCyst field.Int32 // 有无肝囊肿(1:是 2:否) - IsHaveAscites field.Int32 // 有无腹水(1:是 2:否) - ElastographyMinimum field.String // 弹性成像最小值(kPa) - ElastographyMaximum field.String // 弹性成像最大值(kPa) - ElastographyMedian field.String // 弹性成像中位数(kPa) - MdtImage field.String // MDT电子病历(多张用,分割) - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (p patientFollowQuestionnaire) Table(newTableName string) *patientFollowQuestionnaire { - p.patientFollowQuestionnaireDo.UseTable(newTableName) - return p.updateTableName(newTableName) -} - -func (p patientFollowQuestionnaire) As(alias string) *patientFollowQuestionnaire { - p.patientFollowQuestionnaireDo.DO = *(p.patientFollowQuestionnaireDo.As(alias).(*gen.DO)) - return p.updateTableName(alias) -} - -func (p *patientFollowQuestionnaire) updateTableName(table string) *patientFollowQuestionnaire { - p.ALL = field.NewAsterisk(table) - p.ID = field.NewInt32(table, "id") - p.PatientID = field.NewInt32(table, "patient_id") - p.PlanID = field.NewInt32(table, "plan_id") - p.FollowName = field.NewString(table, "follow_name") - p.FollowDate = field.NewTime(table, "follow_date") - p.FollowHospital = field.NewString(table, "follow_hospital") - p.Height = field.NewString(table, "height") - p.Weight = field.NewString(table, "weight") - p.HeadCircumference = field.NewString(table, "head_circumference") - p.HighHip = field.NewString(table, "high_hip") - p.LiverFunctionImage = field.NewString(table, "liver_function_image") - p.TotalBilirubin = field.NewString(table, "total_bilirubin") - p.DirectBilirubin = field.NewString(table, "direct_bilirubin") - p.TotalBileAcid = field.NewString(table, "total_bile_acid") - p.Albumin = field.NewString(table, "albumin") - p.GrainGrass = field.NewString(table, "grain_grass") - p.GuBing = field.NewString(table, "gu_bing") - p.Ggt = field.NewString(table, "ggt") - p.Alp = field.NewString(table, "alp") - p.CoagulationFunctionImage = field.NewString(table, "coagulation_function_image") - p.Crp = field.NewString(table, "crp") - p.Ddr = field.NewString(table, "ddr") - p.Inr = field.NewString(table, "inr") - p.Pt = field.NewString(table, "pt") - p.Pta = field.NewString(table, "pta") - p.Aptt = field.NewString(table, "aptt") - p.Tt = field.NewString(table, "tt") - p.Fib = field.NewString(table, "fib") - p.Npdp = field.NewString(table, "npdp") - p.Mmp7 = field.NewString(table, "mmp_7") - p.BloodRoutineImage = field.NewString(table, "blood_routine_image") - p.Platelets = field.NewString(table, "platelets") - p.Hemoglobin = field.NewString(table, "hemoglobin") - p.WhiteBloodCells = field.NewString(table, "white_blood_cells") - p.RedBloodCells = field.NewString(table, "red_blood_cells") - p.NutritionalIndicatorImage = field.NewString(table, "nutritional_indicator_image") - p.OhD3 = field.NewString(table, "oh_d3") - p.OhD2 = field.NewString(table, "oh_d2") - p.OhD = field.NewString(table, "oh_d") - p.VitaminA = field.NewString(table, "vitamin_a") - p.VitaminK = field.NewString(table, "vitamin_k") - p.VitaminE = field.NewString(table, "vitamin_e") - p.BModeImage = field.NewString(table, "b_mode_image") - p.UnderTheLiverRib = field.NewString(table, "under_the_liver_rib") - p.UnderTheXiphoidLiver = field.NewString(table, "under_the_xiphoid_liver") - p.SpleenRibArea = field.NewString(table, "spleen_rib_area") - p.MainPortalVein = field.NewString(table, "main_portal_vein") - p.LiverEcho = field.NewString(table, "liver_echo") - p.GallbladderSize = field.NewString(table, "gallbladder_size") - p.CommonBileDuct = field.NewString(table, "common_bile_duct") - p.FiberBlockSize = field.NewString(table, "fiber_block_size") - p.Pvv = field.NewString(table, "pvv") - p.LiverElasticityValue = field.NewString(table, "liver_elasticity_value") - p.IsHaveCyst = field.NewInt32(table, "is_have_cyst") - p.IsHaveAscites = field.NewInt32(table, "is_have_ascites") - p.ElastographyMinimum = field.NewString(table, "elastography_minimum") - p.ElastographyMaximum = field.NewString(table, "elastography_maximum") - p.ElastographyMedian = field.NewString(table, "elastography_median") - p.MdtImage = field.NewString(table, "mdt_image") - p.CreatedUser = field.NewString(table, "created_user") - p.CreatedAt = field.NewTime(table, "created_at") - p.UpdatedUser = field.NewString(table, "updated_user") - p.UpdatedAt = field.NewTime(table, "updated_at") - - p.fillFieldMap() - - return p -} - -func (p *patientFollowQuestionnaire) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := p.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (p *patientFollowQuestionnaire) fillFieldMap() { - p.fieldMap = make(map[string]field.Expr, 63) - p.fieldMap["id"] = p.ID - p.fieldMap["patient_id"] = p.PatientID - p.fieldMap["plan_id"] = p.PlanID - p.fieldMap["follow_name"] = p.FollowName - p.fieldMap["follow_date"] = p.FollowDate - p.fieldMap["follow_hospital"] = p.FollowHospital - p.fieldMap["height"] = p.Height - p.fieldMap["weight"] = p.Weight - p.fieldMap["head_circumference"] = p.HeadCircumference - p.fieldMap["high_hip"] = p.HighHip - p.fieldMap["liver_function_image"] = p.LiverFunctionImage - p.fieldMap["total_bilirubin"] = p.TotalBilirubin - p.fieldMap["direct_bilirubin"] = p.DirectBilirubin - p.fieldMap["total_bile_acid"] = p.TotalBileAcid - p.fieldMap["albumin"] = p.Albumin - p.fieldMap["grain_grass"] = p.GrainGrass - p.fieldMap["gu_bing"] = p.GuBing - p.fieldMap["ggt"] = p.Ggt - p.fieldMap["alp"] = p.Alp - p.fieldMap["coagulation_function_image"] = p.CoagulationFunctionImage - p.fieldMap["crp"] = p.Crp - p.fieldMap["ddr"] = p.Ddr - p.fieldMap["inr"] = p.Inr - p.fieldMap["pt"] = p.Pt - p.fieldMap["pta"] = p.Pta - p.fieldMap["aptt"] = p.Aptt - p.fieldMap["tt"] = p.Tt - p.fieldMap["fib"] = p.Fib - p.fieldMap["npdp"] = p.Npdp - p.fieldMap["mmp_7"] = p.Mmp7 - p.fieldMap["blood_routine_image"] = p.BloodRoutineImage - p.fieldMap["platelets"] = p.Platelets - p.fieldMap["hemoglobin"] = p.Hemoglobin - p.fieldMap["white_blood_cells"] = p.WhiteBloodCells - p.fieldMap["red_blood_cells"] = p.RedBloodCells - p.fieldMap["nutritional_indicator_image"] = p.NutritionalIndicatorImage - p.fieldMap["oh_d3"] = p.OhD3 - p.fieldMap["oh_d2"] = p.OhD2 - p.fieldMap["oh_d"] = p.OhD - p.fieldMap["vitamin_a"] = p.VitaminA - p.fieldMap["vitamin_k"] = p.VitaminK - p.fieldMap["vitamin_e"] = p.VitaminE - p.fieldMap["b_mode_image"] = p.BModeImage - p.fieldMap["under_the_liver_rib"] = p.UnderTheLiverRib - p.fieldMap["under_the_xiphoid_liver"] = p.UnderTheXiphoidLiver - p.fieldMap["spleen_rib_area"] = p.SpleenRibArea - p.fieldMap["main_portal_vein"] = p.MainPortalVein - p.fieldMap["liver_echo"] = p.LiverEcho - p.fieldMap["gallbladder_size"] = p.GallbladderSize - p.fieldMap["common_bile_duct"] = p.CommonBileDuct - p.fieldMap["fiber_block_size"] = p.FiberBlockSize - p.fieldMap["pvv"] = p.Pvv - p.fieldMap["liver_elasticity_value"] = p.LiverElasticityValue - p.fieldMap["is_have_cyst"] = p.IsHaveCyst - p.fieldMap["is_have_ascites"] = p.IsHaveAscites - p.fieldMap["elastography_minimum"] = p.ElastographyMinimum - p.fieldMap["elastography_maximum"] = p.ElastographyMaximum - p.fieldMap["elastography_median"] = p.ElastographyMedian - p.fieldMap["mdt_image"] = p.MdtImage - p.fieldMap["created_user"] = p.CreatedUser - p.fieldMap["created_at"] = p.CreatedAt - p.fieldMap["updated_user"] = p.UpdatedUser - p.fieldMap["updated_at"] = p.UpdatedAt -} - -func (p patientFollowQuestionnaire) clone(db *gorm.DB) patientFollowQuestionnaire { - p.patientFollowQuestionnaireDo.ReplaceConnPool(db.Statement.ConnPool) - return p -} - -func (p patientFollowQuestionnaire) replaceDB(db *gorm.DB) patientFollowQuestionnaire { - p.patientFollowQuestionnaireDo.ReplaceDB(db) - return p -} - -type patientFollowQuestionnaireDo struct{ gen.DO } - -func (p patientFollowQuestionnaireDo) Debug() *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Debug()) -} - -func (p patientFollowQuestionnaireDo) WithContext(ctx context.Context) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.WithContext(ctx)) -} - -func (p patientFollowQuestionnaireDo) ReadDB() *patientFollowQuestionnaireDo { - return p.Clauses(dbresolver.Read) -} - -func (p patientFollowQuestionnaireDo) WriteDB() *patientFollowQuestionnaireDo { - return p.Clauses(dbresolver.Write) -} - -func (p patientFollowQuestionnaireDo) Session(config *gorm.Session) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Session(config)) -} - -func (p patientFollowQuestionnaireDo) Clauses(conds ...clause.Expression) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Clauses(conds...)) -} - -func (p patientFollowQuestionnaireDo) Returning(value interface{}, columns ...string) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Returning(value, columns...)) -} - -func (p patientFollowQuestionnaireDo) Not(conds ...gen.Condition) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Not(conds...)) -} - -func (p patientFollowQuestionnaireDo) Or(conds ...gen.Condition) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Or(conds...)) -} - -func (p patientFollowQuestionnaireDo) Select(conds ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Select(conds...)) -} - -func (p patientFollowQuestionnaireDo) Where(conds ...gen.Condition) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Where(conds...)) -} - -func (p patientFollowQuestionnaireDo) Order(conds ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Order(conds...)) -} - -func (p patientFollowQuestionnaireDo) Distinct(cols ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Distinct(cols...)) -} - -func (p patientFollowQuestionnaireDo) Omit(cols ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Omit(cols...)) -} - -func (p patientFollowQuestionnaireDo) Join(table schema.Tabler, on ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Join(table, on...)) -} - -func (p patientFollowQuestionnaireDo) LeftJoin(table schema.Tabler, on ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.LeftJoin(table, on...)) -} - -func (p patientFollowQuestionnaireDo) RightJoin(table schema.Tabler, on ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.RightJoin(table, on...)) -} - -func (p patientFollowQuestionnaireDo) Group(cols ...field.Expr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Group(cols...)) -} - -func (p patientFollowQuestionnaireDo) Having(conds ...gen.Condition) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Having(conds...)) -} - -func (p patientFollowQuestionnaireDo) Limit(limit int) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Limit(limit)) -} - -func (p patientFollowQuestionnaireDo) Offset(offset int) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Offset(offset)) -} - -func (p patientFollowQuestionnaireDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Scopes(funcs...)) -} - -func (p patientFollowQuestionnaireDo) Unscoped() *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Unscoped()) -} - -func (p patientFollowQuestionnaireDo) Create(values ...*model.PatientFollowQuestionnaire) error { - if len(values) == 0 { - return nil - } - return p.DO.Create(values) -} - -func (p patientFollowQuestionnaireDo) CreateInBatches(values []*model.PatientFollowQuestionnaire, batchSize int) error { - return p.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (p patientFollowQuestionnaireDo) Save(values ...*model.PatientFollowQuestionnaire) error { - if len(values) == 0 { - return nil - } - return p.DO.Save(values) -} - -func (p patientFollowQuestionnaireDo) First() (*model.PatientFollowQuestionnaire, error) { - if result, err := p.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowQuestionnaire), nil - } -} - -func (p patientFollowQuestionnaireDo) Take() (*model.PatientFollowQuestionnaire, error) { - if result, err := p.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowQuestionnaire), nil - } -} - -func (p patientFollowQuestionnaireDo) Last() (*model.PatientFollowQuestionnaire, error) { - if result, err := p.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowQuestionnaire), nil - } -} - -func (p patientFollowQuestionnaireDo) Find() ([]*model.PatientFollowQuestionnaire, error) { - result, err := p.DO.Find() - return result.([]*model.PatientFollowQuestionnaire), err -} - -func (p patientFollowQuestionnaireDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.PatientFollowQuestionnaire, err error) { - buf := make([]*model.PatientFollowQuestionnaire, 0, batchSize) - err = p.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (p patientFollowQuestionnaireDo) FindInBatches(result *[]*model.PatientFollowQuestionnaire, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return p.DO.FindInBatches(result, batchSize, fc) -} - -func (p patientFollowQuestionnaireDo) Attrs(attrs ...field.AssignExpr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Attrs(attrs...)) -} - -func (p patientFollowQuestionnaireDo) Assign(attrs ...field.AssignExpr) *patientFollowQuestionnaireDo { - return p.withDO(p.DO.Assign(attrs...)) -} - -func (p patientFollowQuestionnaireDo) Joins(fields ...field.RelationField) *patientFollowQuestionnaireDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Joins(_f)) - } - return &p -} - -func (p patientFollowQuestionnaireDo) Preload(fields ...field.RelationField) *patientFollowQuestionnaireDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Preload(_f)) - } - return &p -} - -func (p patientFollowQuestionnaireDo) FirstOrInit() (*model.PatientFollowQuestionnaire, error) { - if result, err := p.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowQuestionnaire), nil - } -} - -func (p patientFollowQuestionnaireDo) FirstOrCreate() (*model.PatientFollowQuestionnaire, error) { - if result, err := p.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.PatientFollowQuestionnaire), nil - } -} - -func (p patientFollowQuestionnaireDo) FindByPage(offset int, limit int) (result []*model.PatientFollowQuestionnaire, count int64, err error) { - result, err = p.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = p.Offset(-1).Limit(-1).Count() - return -} - -func (p patientFollowQuestionnaireDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = p.Count() - if err != nil { - return - } - - err = p.Offset(offset).Limit(limit).Scan(result) - return -} - -func (p patientFollowQuestionnaireDo) Scan(result interface{}) (err error) { - return p.DO.Scan(result) -} - -func (p patientFollowQuestionnaireDo) Delete(models ...*model.PatientFollowQuestionnaire) (result gen.ResultInfo, err error) { - return p.DO.Delete(models) -} - -func (p *patientFollowQuestionnaireDo) withDO(do gen.Dao) *patientFollowQuestionnaireDo { - p.DO = *do.(*gen.DO) - return p -} diff --git a/internal/repository/mysql/dao/patient_medicine_record.gen.go b/internal/repository/mysql/dao/patient_medicine_record.gen.go deleted file mode 100644 index 9cbeb40..0000000 --- a/internal/repository/mysql/dao/patient_medicine_record.gen.go +++ /dev/null @@ -1,368 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newPatientMedicineRecord(db *gorm.DB, opts ...gen.DOOption) patientMedicineRecord { - _patientMedicineRecord := patientMedicineRecord{} - - _patientMedicineRecord.patientMedicineRecordDo.UseDB(db, opts...) - _patientMedicineRecord.patientMedicineRecordDo.UseModel(&model.PatientMedicineRecord{}) - - tableName := _patientMedicineRecord.patientMedicineRecordDo.TableName() - _patientMedicineRecord.ALL = field.NewAsterisk(tableName) - _patientMedicineRecord.ID = field.NewInt32(tableName, "id") - _patientMedicineRecord.PatientID = field.NewInt32(tableName, "patient_id") - _patientMedicineRecord.SchemeID = field.NewInt32(tableName, "scheme_id") - _patientMedicineRecord.MedicineDate = field.NewTime(tableName, "medicine_date") - _patientMedicineRecord.MedicineTimeType = field.NewInt32(tableName, "medicine_time_type") - _patientMedicineRecord.MedicineTime = field.NewString(tableName, "medicine_time") - _patientMedicineRecord.Detail = field.NewString(tableName, "detail") - _patientMedicineRecord.Status = field.NewInt32(tableName, "status") - _patientMedicineRecord.StatusAt = field.NewTime(tableName, "status_at") - _patientMedicineRecord.CreatedUser = field.NewString(tableName, "created_user") - _patientMedicineRecord.CreatedAt = field.NewTime(tableName, "created_at") - _patientMedicineRecord.UpdatedUser = field.NewString(tableName, "updated_user") - _patientMedicineRecord.UpdatedAt = field.NewTime(tableName, "updated_at") - - _patientMedicineRecord.fillFieldMap() - - return _patientMedicineRecord -} - -// patientMedicineRecord 患者用药记录表 -type patientMedicineRecord struct { - patientMedicineRecordDo - - ALL field.Asterisk - ID field.Int32 // 主键 - PatientID field.Int32 // 患者ID - SchemeID field.Int32 // 用药方案ID - MedicineDate field.Time // 用药日期 - MedicineTimeType field.Int32 // 用药时间类型(1:早上 2:中午 3:晚上) - MedicineTime field.String // 用药时间 - Detail field.String // 药品信息(JSON格式) - Status field.Int32 // 用药状态(1:未完成 2:已完成) - StatusAt field.Time // 已完成时间(打卡时间) - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (p patientMedicineRecord) Table(newTableName string) *patientMedicineRecord { - p.patientMedicineRecordDo.UseTable(newTableName) - return p.updateTableName(newTableName) -} - -func (p patientMedicineRecord) As(alias string) *patientMedicineRecord { - p.patientMedicineRecordDo.DO = *(p.patientMedicineRecordDo.As(alias).(*gen.DO)) - return p.updateTableName(alias) -} - -func (p *patientMedicineRecord) updateTableName(table string) *patientMedicineRecord { - p.ALL = field.NewAsterisk(table) - p.ID = field.NewInt32(table, "id") - p.PatientID = field.NewInt32(table, "patient_id") - p.SchemeID = field.NewInt32(table, "scheme_id") - p.MedicineDate = field.NewTime(table, "medicine_date") - p.MedicineTimeType = field.NewInt32(table, "medicine_time_type") - p.MedicineTime = field.NewString(table, "medicine_time") - p.Detail = field.NewString(table, "detail") - p.Status = field.NewInt32(table, "status") - p.StatusAt = field.NewTime(table, "status_at") - p.CreatedUser = field.NewString(table, "created_user") - p.CreatedAt = field.NewTime(table, "created_at") - p.UpdatedUser = field.NewString(table, "updated_user") - p.UpdatedAt = field.NewTime(table, "updated_at") - - p.fillFieldMap() - - return p -} - -func (p *patientMedicineRecord) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := p.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (p *patientMedicineRecord) fillFieldMap() { - p.fieldMap = make(map[string]field.Expr, 13) - p.fieldMap["id"] = p.ID - p.fieldMap["patient_id"] = p.PatientID - p.fieldMap["scheme_id"] = p.SchemeID - p.fieldMap["medicine_date"] = p.MedicineDate - p.fieldMap["medicine_time_type"] = p.MedicineTimeType - p.fieldMap["medicine_time"] = p.MedicineTime - p.fieldMap["detail"] = p.Detail - p.fieldMap["status"] = p.Status - p.fieldMap["status_at"] = p.StatusAt - p.fieldMap["created_user"] = p.CreatedUser - p.fieldMap["created_at"] = p.CreatedAt - p.fieldMap["updated_user"] = p.UpdatedUser - p.fieldMap["updated_at"] = p.UpdatedAt -} - -func (p patientMedicineRecord) clone(db *gorm.DB) patientMedicineRecord { - p.patientMedicineRecordDo.ReplaceConnPool(db.Statement.ConnPool) - return p -} - -func (p patientMedicineRecord) replaceDB(db *gorm.DB) patientMedicineRecord { - p.patientMedicineRecordDo.ReplaceDB(db) - return p -} - -type patientMedicineRecordDo struct{ gen.DO } - -func (p patientMedicineRecordDo) Debug() *patientMedicineRecordDo { - return p.withDO(p.DO.Debug()) -} - -func (p patientMedicineRecordDo) WithContext(ctx context.Context) *patientMedicineRecordDo { - return p.withDO(p.DO.WithContext(ctx)) -} - -func (p patientMedicineRecordDo) ReadDB() *patientMedicineRecordDo { - return p.Clauses(dbresolver.Read) -} - -func (p patientMedicineRecordDo) WriteDB() *patientMedicineRecordDo { - return p.Clauses(dbresolver.Write) -} - -func (p patientMedicineRecordDo) Session(config *gorm.Session) *patientMedicineRecordDo { - return p.withDO(p.DO.Session(config)) -} - -func (p patientMedicineRecordDo) Clauses(conds ...clause.Expression) *patientMedicineRecordDo { - return p.withDO(p.DO.Clauses(conds...)) -} - -func (p patientMedicineRecordDo) Returning(value interface{}, columns ...string) *patientMedicineRecordDo { - return p.withDO(p.DO.Returning(value, columns...)) -} - -func (p patientMedicineRecordDo) Not(conds ...gen.Condition) *patientMedicineRecordDo { - return p.withDO(p.DO.Not(conds...)) -} - -func (p patientMedicineRecordDo) Or(conds ...gen.Condition) *patientMedicineRecordDo { - return p.withDO(p.DO.Or(conds...)) -} - -func (p patientMedicineRecordDo) Select(conds ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.Select(conds...)) -} - -func (p patientMedicineRecordDo) Where(conds ...gen.Condition) *patientMedicineRecordDo { - return p.withDO(p.DO.Where(conds...)) -} - -func (p patientMedicineRecordDo) Order(conds ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.Order(conds...)) -} - -func (p patientMedicineRecordDo) Distinct(cols ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.Distinct(cols...)) -} - -func (p patientMedicineRecordDo) Omit(cols ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.Omit(cols...)) -} - -func (p patientMedicineRecordDo) Join(table schema.Tabler, on ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.Join(table, on...)) -} - -func (p patientMedicineRecordDo) LeftJoin(table schema.Tabler, on ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.LeftJoin(table, on...)) -} - -func (p patientMedicineRecordDo) RightJoin(table schema.Tabler, on ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.RightJoin(table, on...)) -} - -func (p patientMedicineRecordDo) Group(cols ...field.Expr) *patientMedicineRecordDo { - return p.withDO(p.DO.Group(cols...)) -} - -func (p patientMedicineRecordDo) Having(conds ...gen.Condition) *patientMedicineRecordDo { - return p.withDO(p.DO.Having(conds...)) -} - -func (p patientMedicineRecordDo) Limit(limit int) *patientMedicineRecordDo { - return p.withDO(p.DO.Limit(limit)) -} - -func (p patientMedicineRecordDo) Offset(offset int) *patientMedicineRecordDo { - return p.withDO(p.DO.Offset(offset)) -} - -func (p patientMedicineRecordDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *patientMedicineRecordDo { - return p.withDO(p.DO.Scopes(funcs...)) -} - -func (p patientMedicineRecordDo) Unscoped() *patientMedicineRecordDo { - return p.withDO(p.DO.Unscoped()) -} - -func (p patientMedicineRecordDo) Create(values ...*model.PatientMedicineRecord) error { - if len(values) == 0 { - return nil - } - return p.DO.Create(values) -} - -func (p patientMedicineRecordDo) CreateInBatches(values []*model.PatientMedicineRecord, batchSize int) error { - return p.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (p patientMedicineRecordDo) Save(values ...*model.PatientMedicineRecord) error { - if len(values) == 0 { - return nil - } - return p.DO.Save(values) -} - -func (p patientMedicineRecordDo) First() (*model.PatientMedicineRecord, error) { - if result, err := p.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineRecord), nil - } -} - -func (p patientMedicineRecordDo) Take() (*model.PatientMedicineRecord, error) { - if result, err := p.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineRecord), nil - } -} - -func (p patientMedicineRecordDo) Last() (*model.PatientMedicineRecord, error) { - if result, err := p.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineRecord), nil - } -} - -func (p patientMedicineRecordDo) Find() ([]*model.PatientMedicineRecord, error) { - result, err := p.DO.Find() - return result.([]*model.PatientMedicineRecord), err -} - -func (p patientMedicineRecordDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.PatientMedicineRecord, err error) { - buf := make([]*model.PatientMedicineRecord, 0, batchSize) - err = p.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (p patientMedicineRecordDo) FindInBatches(result *[]*model.PatientMedicineRecord, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return p.DO.FindInBatches(result, batchSize, fc) -} - -func (p patientMedicineRecordDo) Attrs(attrs ...field.AssignExpr) *patientMedicineRecordDo { - return p.withDO(p.DO.Attrs(attrs...)) -} - -func (p patientMedicineRecordDo) Assign(attrs ...field.AssignExpr) *patientMedicineRecordDo { - return p.withDO(p.DO.Assign(attrs...)) -} - -func (p patientMedicineRecordDo) Joins(fields ...field.RelationField) *patientMedicineRecordDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Joins(_f)) - } - return &p -} - -func (p patientMedicineRecordDo) Preload(fields ...field.RelationField) *patientMedicineRecordDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Preload(_f)) - } - return &p -} - -func (p patientMedicineRecordDo) FirstOrInit() (*model.PatientMedicineRecord, error) { - if result, err := p.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineRecord), nil - } -} - -func (p patientMedicineRecordDo) FirstOrCreate() (*model.PatientMedicineRecord, error) { - if result, err := p.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineRecord), nil - } -} - -func (p patientMedicineRecordDo) FindByPage(offset int, limit int) (result []*model.PatientMedicineRecord, count int64, err error) { - result, err = p.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = p.Offset(-1).Limit(-1).Count() - return -} - -func (p patientMedicineRecordDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = p.Count() - if err != nil { - return - } - - err = p.Offset(offset).Limit(limit).Scan(result) - return -} - -func (p patientMedicineRecordDo) Scan(result interface{}) (err error) { - return p.DO.Scan(result) -} - -func (p patientMedicineRecordDo) Delete(models ...*model.PatientMedicineRecord) (result gen.ResultInfo, err error) { - return p.DO.Delete(models) -} - -func (p *patientMedicineRecordDo) withDO(do gen.Dao) *patientMedicineRecordDo { - p.DO = *do.(*gen.DO) - return p -} diff --git a/internal/repository/mysql/dao/patient_medicine_scheme.gen.go b/internal/repository/mysql/dao/patient_medicine_scheme.gen.go deleted file mode 100644 index d3fa4a7..0000000 --- a/internal/repository/mysql/dao/patient_medicine_scheme.gen.go +++ /dev/null @@ -1,356 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newPatientMedicineScheme(db *gorm.DB, opts ...gen.DOOption) patientMedicineScheme { - _patientMedicineScheme := patientMedicineScheme{} - - _patientMedicineScheme.patientMedicineSchemeDo.UseDB(db, opts...) - _patientMedicineScheme.patientMedicineSchemeDo.UseModel(&model.PatientMedicineScheme{}) - - tableName := _patientMedicineScheme.patientMedicineSchemeDo.TableName() - _patientMedicineScheme.ALL = field.NewAsterisk(tableName) - _patientMedicineScheme.ID = field.NewInt32(tableName, "id") - _patientMedicineScheme.PatientID = field.NewInt32(tableName, "patient_id") - _patientMedicineScheme.StartDate = field.NewTime(tableName, "start_date") - _patientMedicineScheme.EndDate = field.NewTime(tableName, "end_date") - _patientMedicineScheme.Detail = field.NewString(tableName, "detail") - _patientMedicineScheme.Reminder = field.NewString(tableName, "reminder") - _patientMedicineScheme.CreatedUser = field.NewString(tableName, "created_user") - _patientMedicineScheme.CreatedAt = field.NewTime(tableName, "created_at") - _patientMedicineScheme.UpdatedUser = field.NewString(tableName, "updated_user") - _patientMedicineScheme.UpdatedAt = field.NewTime(tableName, "updated_at") - - _patientMedicineScheme.fillFieldMap() - - return _patientMedicineScheme -} - -// patientMedicineScheme 患者用药方案表 -type patientMedicineScheme struct { - patientMedicineSchemeDo - - ALL field.Asterisk - ID field.Int32 // 主键 - PatientID field.Int32 // 患者ID - StartDate field.Time // 用药开始日期 - EndDate field.Time // 用药结束日期 - Detail field.String // 药品信息(JSON格式) - Reminder field.String // 用药提醒(JSON格式) - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (p patientMedicineScheme) Table(newTableName string) *patientMedicineScheme { - p.patientMedicineSchemeDo.UseTable(newTableName) - return p.updateTableName(newTableName) -} - -func (p patientMedicineScheme) As(alias string) *patientMedicineScheme { - p.patientMedicineSchemeDo.DO = *(p.patientMedicineSchemeDo.As(alias).(*gen.DO)) - return p.updateTableName(alias) -} - -func (p *patientMedicineScheme) updateTableName(table string) *patientMedicineScheme { - p.ALL = field.NewAsterisk(table) - p.ID = field.NewInt32(table, "id") - p.PatientID = field.NewInt32(table, "patient_id") - p.StartDate = field.NewTime(table, "start_date") - p.EndDate = field.NewTime(table, "end_date") - p.Detail = field.NewString(table, "detail") - p.Reminder = field.NewString(table, "reminder") - p.CreatedUser = field.NewString(table, "created_user") - p.CreatedAt = field.NewTime(table, "created_at") - p.UpdatedUser = field.NewString(table, "updated_user") - p.UpdatedAt = field.NewTime(table, "updated_at") - - p.fillFieldMap() - - return p -} - -func (p *patientMedicineScheme) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := p.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (p *patientMedicineScheme) fillFieldMap() { - p.fieldMap = make(map[string]field.Expr, 10) - p.fieldMap["id"] = p.ID - p.fieldMap["patient_id"] = p.PatientID - p.fieldMap["start_date"] = p.StartDate - p.fieldMap["end_date"] = p.EndDate - p.fieldMap["detail"] = p.Detail - p.fieldMap["reminder"] = p.Reminder - p.fieldMap["created_user"] = p.CreatedUser - p.fieldMap["created_at"] = p.CreatedAt - p.fieldMap["updated_user"] = p.UpdatedUser - p.fieldMap["updated_at"] = p.UpdatedAt -} - -func (p patientMedicineScheme) clone(db *gorm.DB) patientMedicineScheme { - p.patientMedicineSchemeDo.ReplaceConnPool(db.Statement.ConnPool) - return p -} - -func (p patientMedicineScheme) replaceDB(db *gorm.DB) patientMedicineScheme { - p.patientMedicineSchemeDo.ReplaceDB(db) - return p -} - -type patientMedicineSchemeDo struct{ gen.DO } - -func (p patientMedicineSchemeDo) Debug() *patientMedicineSchemeDo { - return p.withDO(p.DO.Debug()) -} - -func (p patientMedicineSchemeDo) WithContext(ctx context.Context) *patientMedicineSchemeDo { - return p.withDO(p.DO.WithContext(ctx)) -} - -func (p patientMedicineSchemeDo) ReadDB() *patientMedicineSchemeDo { - return p.Clauses(dbresolver.Read) -} - -func (p patientMedicineSchemeDo) WriteDB() *patientMedicineSchemeDo { - return p.Clauses(dbresolver.Write) -} - -func (p patientMedicineSchemeDo) Session(config *gorm.Session) *patientMedicineSchemeDo { - return p.withDO(p.DO.Session(config)) -} - -func (p patientMedicineSchemeDo) Clauses(conds ...clause.Expression) *patientMedicineSchemeDo { - return p.withDO(p.DO.Clauses(conds...)) -} - -func (p patientMedicineSchemeDo) Returning(value interface{}, columns ...string) *patientMedicineSchemeDo { - return p.withDO(p.DO.Returning(value, columns...)) -} - -func (p patientMedicineSchemeDo) Not(conds ...gen.Condition) *patientMedicineSchemeDo { - return p.withDO(p.DO.Not(conds...)) -} - -func (p patientMedicineSchemeDo) Or(conds ...gen.Condition) *patientMedicineSchemeDo { - return p.withDO(p.DO.Or(conds...)) -} - -func (p patientMedicineSchemeDo) Select(conds ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Select(conds...)) -} - -func (p patientMedicineSchemeDo) Where(conds ...gen.Condition) *patientMedicineSchemeDo { - return p.withDO(p.DO.Where(conds...)) -} - -func (p patientMedicineSchemeDo) Order(conds ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Order(conds...)) -} - -func (p patientMedicineSchemeDo) Distinct(cols ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Distinct(cols...)) -} - -func (p patientMedicineSchemeDo) Omit(cols ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Omit(cols...)) -} - -func (p patientMedicineSchemeDo) Join(table schema.Tabler, on ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Join(table, on...)) -} - -func (p patientMedicineSchemeDo) LeftJoin(table schema.Tabler, on ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.LeftJoin(table, on...)) -} - -func (p patientMedicineSchemeDo) RightJoin(table schema.Tabler, on ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.RightJoin(table, on...)) -} - -func (p patientMedicineSchemeDo) Group(cols ...field.Expr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Group(cols...)) -} - -func (p patientMedicineSchemeDo) Having(conds ...gen.Condition) *patientMedicineSchemeDo { - return p.withDO(p.DO.Having(conds...)) -} - -func (p patientMedicineSchemeDo) Limit(limit int) *patientMedicineSchemeDo { - return p.withDO(p.DO.Limit(limit)) -} - -func (p patientMedicineSchemeDo) Offset(offset int) *patientMedicineSchemeDo { - return p.withDO(p.DO.Offset(offset)) -} - -func (p patientMedicineSchemeDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *patientMedicineSchemeDo { - return p.withDO(p.DO.Scopes(funcs...)) -} - -func (p patientMedicineSchemeDo) Unscoped() *patientMedicineSchemeDo { - return p.withDO(p.DO.Unscoped()) -} - -func (p patientMedicineSchemeDo) Create(values ...*model.PatientMedicineScheme) error { - if len(values) == 0 { - return nil - } - return p.DO.Create(values) -} - -func (p patientMedicineSchemeDo) CreateInBatches(values []*model.PatientMedicineScheme, batchSize int) error { - return p.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (p patientMedicineSchemeDo) Save(values ...*model.PatientMedicineScheme) error { - if len(values) == 0 { - return nil - } - return p.DO.Save(values) -} - -func (p patientMedicineSchemeDo) First() (*model.PatientMedicineScheme, error) { - if result, err := p.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineScheme), nil - } -} - -func (p patientMedicineSchemeDo) Take() (*model.PatientMedicineScheme, error) { - if result, err := p.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineScheme), nil - } -} - -func (p patientMedicineSchemeDo) Last() (*model.PatientMedicineScheme, error) { - if result, err := p.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineScheme), nil - } -} - -func (p patientMedicineSchemeDo) Find() ([]*model.PatientMedicineScheme, error) { - result, err := p.DO.Find() - return result.([]*model.PatientMedicineScheme), err -} - -func (p patientMedicineSchemeDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.PatientMedicineScheme, err error) { - buf := make([]*model.PatientMedicineScheme, 0, batchSize) - err = p.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (p patientMedicineSchemeDo) FindInBatches(result *[]*model.PatientMedicineScheme, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return p.DO.FindInBatches(result, batchSize, fc) -} - -func (p patientMedicineSchemeDo) Attrs(attrs ...field.AssignExpr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Attrs(attrs...)) -} - -func (p patientMedicineSchemeDo) Assign(attrs ...field.AssignExpr) *patientMedicineSchemeDo { - return p.withDO(p.DO.Assign(attrs...)) -} - -func (p patientMedicineSchemeDo) Joins(fields ...field.RelationField) *patientMedicineSchemeDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Joins(_f)) - } - return &p -} - -func (p patientMedicineSchemeDo) Preload(fields ...field.RelationField) *patientMedicineSchemeDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Preload(_f)) - } - return &p -} - -func (p patientMedicineSchemeDo) FirstOrInit() (*model.PatientMedicineScheme, error) { - if result, err := p.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineScheme), nil - } -} - -func (p patientMedicineSchemeDo) FirstOrCreate() (*model.PatientMedicineScheme, error) { - if result, err := p.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineScheme), nil - } -} - -func (p patientMedicineSchemeDo) FindByPage(offset int, limit int) (result []*model.PatientMedicineScheme, count int64, err error) { - result, err = p.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = p.Offset(-1).Limit(-1).Count() - return -} - -func (p patientMedicineSchemeDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = p.Count() - if err != nil { - return - } - - err = p.Offset(offset).Limit(limit).Scan(result) - return -} - -func (p patientMedicineSchemeDo) Scan(result interface{}) (err error) { - return p.DO.Scan(result) -} - -func (p patientMedicineSchemeDo) Delete(models ...*model.PatientMedicineScheme) (result gen.ResultInfo, err error) { - return p.DO.Delete(models) -} - -func (p *patientMedicineSchemeDo) withDO(do gen.Dao) *patientMedicineSchemeDo { - p.DO = *do.(*gen.DO) - return p -} diff --git a/internal/repository/mysql/dao/patient_medicine_task.gen.go b/internal/repository/mysql/dao/patient_medicine_task.gen.go deleted file mode 100644 index 6415cb1..0000000 --- a/internal/repository/mysql/dao/patient_medicine_task.gen.go +++ /dev/null @@ -1,376 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newPatientMedicineTask(db *gorm.DB, opts ...gen.DOOption) patientMedicineTask { - _patientMedicineTask := patientMedicineTask{} - - _patientMedicineTask.patientMedicineTaskDo.UseDB(db, opts...) - _patientMedicineTask.patientMedicineTaskDo.UseModel(&model.PatientMedicineTask{}) - - tableName := _patientMedicineTask.patientMedicineTaskDo.TableName() - _patientMedicineTask.ALL = field.NewAsterisk(tableName) - _patientMedicineTask.ID = field.NewInt32(tableName, "id") - _patientMedicineTask.Code = field.NewString(tableName, "code") - _patientMedicineTask.Title = field.NewString(tableName, "title") - _patientMedicineTask.Spec = field.NewString(tableName, "spec") - _patientMedicineTask.Status = field.NewInt32(tableName, "status") - _patientMedicineTask.IsRunning = field.NewInt32(tableName, "is_running") - _patientMedicineTask.RunTime = field.NewTime(tableName, "run_time") - _patientMedicineTask.RunStartTime = field.NewTime(tableName, "run_start_time") - _patientMedicineTask.RunEndTime = field.NewTime(tableName, "run_end_time") - _patientMedicineTask.PatientID = field.NewInt32(tableName, "patient_id") - _patientMedicineTask.MedicineRecordID = field.NewInt32(tableName, "medicine_record_id") - _patientMedicineTask.CreatedUser = field.NewString(tableName, "created_user") - _patientMedicineTask.CreatedAt = field.NewTime(tableName, "created_at") - _patientMedicineTask.UpdatedUser = field.NewString(tableName, "updated_user") - _patientMedicineTask.UpdatedAt = field.NewTime(tableName, "updated_at") - - _patientMedicineTask.fillFieldMap() - - return _patientMedicineTask -} - -// patientMedicineTask 患者用药提醒(任务)表 -type patientMedicineTask struct { - patientMedicineTaskDo - - ALL field.Asterisk - ID field.Int32 // 主键ID - Code field.String // 任务编码 - Title field.String // 标题 - Spec field.String // 时间表达式 - Status field.Int32 // 状态(1:禁用 2:启用) - IsRunning field.Int32 // 执行中(0:未执行 1:执行中 2:执行完毕) - RunTime field.Time // 预期执行时间 - RunStartTime field.Time // 执行开始时间 - RunEndTime field.Time // 执行结束时间 - PatientID field.Int32 // 患者ID - MedicineRecordID field.Int32 // 用药记录ID - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (p patientMedicineTask) Table(newTableName string) *patientMedicineTask { - p.patientMedicineTaskDo.UseTable(newTableName) - return p.updateTableName(newTableName) -} - -func (p patientMedicineTask) As(alias string) *patientMedicineTask { - p.patientMedicineTaskDo.DO = *(p.patientMedicineTaskDo.As(alias).(*gen.DO)) - return p.updateTableName(alias) -} - -func (p *patientMedicineTask) updateTableName(table string) *patientMedicineTask { - p.ALL = field.NewAsterisk(table) - p.ID = field.NewInt32(table, "id") - p.Code = field.NewString(table, "code") - p.Title = field.NewString(table, "title") - p.Spec = field.NewString(table, "spec") - p.Status = field.NewInt32(table, "status") - p.IsRunning = field.NewInt32(table, "is_running") - p.RunTime = field.NewTime(table, "run_time") - p.RunStartTime = field.NewTime(table, "run_start_time") - p.RunEndTime = field.NewTime(table, "run_end_time") - p.PatientID = field.NewInt32(table, "patient_id") - p.MedicineRecordID = field.NewInt32(table, "medicine_record_id") - p.CreatedUser = field.NewString(table, "created_user") - p.CreatedAt = field.NewTime(table, "created_at") - p.UpdatedUser = field.NewString(table, "updated_user") - p.UpdatedAt = field.NewTime(table, "updated_at") - - p.fillFieldMap() - - return p -} - -func (p *patientMedicineTask) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := p.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (p *patientMedicineTask) fillFieldMap() { - p.fieldMap = make(map[string]field.Expr, 15) - p.fieldMap["id"] = p.ID - p.fieldMap["code"] = p.Code - p.fieldMap["title"] = p.Title - p.fieldMap["spec"] = p.Spec - p.fieldMap["status"] = p.Status - p.fieldMap["is_running"] = p.IsRunning - p.fieldMap["run_time"] = p.RunTime - p.fieldMap["run_start_time"] = p.RunStartTime - p.fieldMap["run_end_time"] = p.RunEndTime - p.fieldMap["patient_id"] = p.PatientID - p.fieldMap["medicine_record_id"] = p.MedicineRecordID - p.fieldMap["created_user"] = p.CreatedUser - p.fieldMap["created_at"] = p.CreatedAt - p.fieldMap["updated_user"] = p.UpdatedUser - p.fieldMap["updated_at"] = p.UpdatedAt -} - -func (p patientMedicineTask) clone(db *gorm.DB) patientMedicineTask { - p.patientMedicineTaskDo.ReplaceConnPool(db.Statement.ConnPool) - return p -} - -func (p patientMedicineTask) replaceDB(db *gorm.DB) patientMedicineTask { - p.patientMedicineTaskDo.ReplaceDB(db) - return p -} - -type patientMedicineTaskDo struct{ gen.DO } - -func (p patientMedicineTaskDo) Debug() *patientMedicineTaskDo { - return p.withDO(p.DO.Debug()) -} - -func (p patientMedicineTaskDo) WithContext(ctx context.Context) *patientMedicineTaskDo { - return p.withDO(p.DO.WithContext(ctx)) -} - -func (p patientMedicineTaskDo) ReadDB() *patientMedicineTaskDo { - return p.Clauses(dbresolver.Read) -} - -func (p patientMedicineTaskDo) WriteDB() *patientMedicineTaskDo { - return p.Clauses(dbresolver.Write) -} - -func (p patientMedicineTaskDo) Session(config *gorm.Session) *patientMedicineTaskDo { - return p.withDO(p.DO.Session(config)) -} - -func (p patientMedicineTaskDo) Clauses(conds ...clause.Expression) *patientMedicineTaskDo { - return p.withDO(p.DO.Clauses(conds...)) -} - -func (p patientMedicineTaskDo) Returning(value interface{}, columns ...string) *patientMedicineTaskDo { - return p.withDO(p.DO.Returning(value, columns...)) -} - -func (p patientMedicineTaskDo) Not(conds ...gen.Condition) *patientMedicineTaskDo { - return p.withDO(p.DO.Not(conds...)) -} - -func (p patientMedicineTaskDo) Or(conds ...gen.Condition) *patientMedicineTaskDo { - return p.withDO(p.DO.Or(conds...)) -} - -func (p patientMedicineTaskDo) Select(conds ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.Select(conds...)) -} - -func (p patientMedicineTaskDo) Where(conds ...gen.Condition) *patientMedicineTaskDo { - return p.withDO(p.DO.Where(conds...)) -} - -func (p patientMedicineTaskDo) Order(conds ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.Order(conds...)) -} - -func (p patientMedicineTaskDo) Distinct(cols ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.Distinct(cols...)) -} - -func (p patientMedicineTaskDo) Omit(cols ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.Omit(cols...)) -} - -func (p patientMedicineTaskDo) Join(table schema.Tabler, on ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.Join(table, on...)) -} - -func (p patientMedicineTaskDo) LeftJoin(table schema.Tabler, on ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.LeftJoin(table, on...)) -} - -func (p patientMedicineTaskDo) RightJoin(table schema.Tabler, on ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.RightJoin(table, on...)) -} - -func (p patientMedicineTaskDo) Group(cols ...field.Expr) *patientMedicineTaskDo { - return p.withDO(p.DO.Group(cols...)) -} - -func (p patientMedicineTaskDo) Having(conds ...gen.Condition) *patientMedicineTaskDo { - return p.withDO(p.DO.Having(conds...)) -} - -func (p patientMedicineTaskDo) Limit(limit int) *patientMedicineTaskDo { - return p.withDO(p.DO.Limit(limit)) -} - -func (p patientMedicineTaskDo) Offset(offset int) *patientMedicineTaskDo { - return p.withDO(p.DO.Offset(offset)) -} - -func (p patientMedicineTaskDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *patientMedicineTaskDo { - return p.withDO(p.DO.Scopes(funcs...)) -} - -func (p patientMedicineTaskDo) Unscoped() *patientMedicineTaskDo { - return p.withDO(p.DO.Unscoped()) -} - -func (p patientMedicineTaskDo) Create(values ...*model.PatientMedicineTask) error { - if len(values) == 0 { - return nil - } - return p.DO.Create(values) -} - -func (p patientMedicineTaskDo) CreateInBatches(values []*model.PatientMedicineTask, batchSize int) error { - return p.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (p patientMedicineTaskDo) Save(values ...*model.PatientMedicineTask) error { - if len(values) == 0 { - return nil - } - return p.DO.Save(values) -} - -func (p patientMedicineTaskDo) First() (*model.PatientMedicineTask, error) { - if result, err := p.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineTask), nil - } -} - -func (p patientMedicineTaskDo) Take() (*model.PatientMedicineTask, error) { - if result, err := p.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineTask), nil - } -} - -func (p patientMedicineTaskDo) Last() (*model.PatientMedicineTask, error) { - if result, err := p.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineTask), nil - } -} - -func (p patientMedicineTaskDo) Find() ([]*model.PatientMedicineTask, error) { - result, err := p.DO.Find() - return result.([]*model.PatientMedicineTask), err -} - -func (p patientMedicineTaskDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.PatientMedicineTask, err error) { - buf := make([]*model.PatientMedicineTask, 0, batchSize) - err = p.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (p patientMedicineTaskDo) FindInBatches(result *[]*model.PatientMedicineTask, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return p.DO.FindInBatches(result, batchSize, fc) -} - -func (p patientMedicineTaskDo) Attrs(attrs ...field.AssignExpr) *patientMedicineTaskDo { - return p.withDO(p.DO.Attrs(attrs...)) -} - -func (p patientMedicineTaskDo) Assign(attrs ...field.AssignExpr) *patientMedicineTaskDo { - return p.withDO(p.DO.Assign(attrs...)) -} - -func (p patientMedicineTaskDo) Joins(fields ...field.RelationField) *patientMedicineTaskDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Joins(_f)) - } - return &p -} - -func (p patientMedicineTaskDo) Preload(fields ...field.RelationField) *patientMedicineTaskDo { - for _, _f := range fields { - p = *p.withDO(p.DO.Preload(_f)) - } - return &p -} - -func (p patientMedicineTaskDo) FirstOrInit() (*model.PatientMedicineTask, error) { - if result, err := p.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineTask), nil - } -} - -func (p patientMedicineTaskDo) FirstOrCreate() (*model.PatientMedicineTask, error) { - if result, err := p.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.PatientMedicineTask), nil - } -} - -func (p patientMedicineTaskDo) FindByPage(offset int, limit int) (result []*model.PatientMedicineTask, count int64, err error) { - result, err = p.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = p.Offset(-1).Limit(-1).Count() - return -} - -func (p patientMedicineTaskDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = p.Count() - if err != nil { - return - } - - err = p.Offset(offset).Limit(limit).Scan(result) - return -} - -func (p patientMedicineTaskDo) Scan(result interface{}) (err error) { - return p.DO.Scan(result) -} - -func (p patientMedicineTaskDo) Delete(models ...*model.PatientMedicineTask) (result gen.ResultInfo, err error) { - return p.DO.Delete(models) -} - -func (p *patientMedicineTaskDo) withDO(do gen.Dao) *patientMedicineTaskDo { - p.DO = *do.(*gen.DO) - return p -} diff --git a/internal/repository/mysql/dao/sms_verification_code.gen.go b/internal/repository/mysql/dao/sms_verification_code.gen.go deleted file mode 100644 index f51313e..0000000 --- a/internal/repository/mysql/dao/sms_verification_code.gen.go +++ /dev/null @@ -1,344 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newSmsVerificationCode(db *gorm.DB, opts ...gen.DOOption) smsVerificationCode { - _smsVerificationCode := smsVerificationCode{} - - _smsVerificationCode.smsVerificationCodeDo.UseDB(db, opts...) - _smsVerificationCode.smsVerificationCodeDo.UseModel(&model.SmsVerificationCode{}) - - tableName := _smsVerificationCode.smsVerificationCodeDo.TableName() - _smsVerificationCode.ALL = field.NewAsterisk(tableName) - _smsVerificationCode.ID = field.NewInt32(tableName, "id") - _smsVerificationCode.PhoneNumber = field.NewString(tableName, "phone_number") - _smsVerificationCode.VerificationCode = field.NewString(tableName, "verification_code") - _smsVerificationCode.Type = field.NewInt32(tableName, "type") - _smsVerificationCode.IsUsed = field.NewInt32(tableName, "is_used") - _smsVerificationCode.CreatedUser = field.NewString(tableName, "created_user") - _smsVerificationCode.CreatedAt = field.NewTime(tableName, "created_at") - - _smsVerificationCode.fillFieldMap() - - return _smsVerificationCode -} - -// smsVerificationCode 短信验证码表 -type smsVerificationCode struct { - smsVerificationCodeDo - - ALL field.Asterisk - ID field.Int32 // 主键 - PhoneNumber field.String // 手机号码 - VerificationCode field.String // 验证码 - Type field.Int32 // 类型(1=登录 2=忘记密码) - IsUsed field.Int32 // 是否已使用(0:未使用,1:已使用) - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - - fieldMap map[string]field.Expr -} - -func (s smsVerificationCode) Table(newTableName string) *smsVerificationCode { - s.smsVerificationCodeDo.UseTable(newTableName) - return s.updateTableName(newTableName) -} - -func (s smsVerificationCode) As(alias string) *smsVerificationCode { - s.smsVerificationCodeDo.DO = *(s.smsVerificationCodeDo.As(alias).(*gen.DO)) - return s.updateTableName(alias) -} - -func (s *smsVerificationCode) updateTableName(table string) *smsVerificationCode { - s.ALL = field.NewAsterisk(table) - s.ID = field.NewInt32(table, "id") - s.PhoneNumber = field.NewString(table, "phone_number") - s.VerificationCode = field.NewString(table, "verification_code") - s.Type = field.NewInt32(table, "type") - s.IsUsed = field.NewInt32(table, "is_used") - s.CreatedUser = field.NewString(table, "created_user") - s.CreatedAt = field.NewTime(table, "created_at") - - s.fillFieldMap() - - return s -} - -func (s *smsVerificationCode) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := s.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (s *smsVerificationCode) fillFieldMap() { - s.fieldMap = make(map[string]field.Expr, 7) - s.fieldMap["id"] = s.ID - s.fieldMap["phone_number"] = s.PhoneNumber - s.fieldMap["verification_code"] = s.VerificationCode - s.fieldMap["type"] = s.Type - s.fieldMap["is_used"] = s.IsUsed - s.fieldMap["created_user"] = s.CreatedUser - s.fieldMap["created_at"] = s.CreatedAt -} - -func (s smsVerificationCode) clone(db *gorm.DB) smsVerificationCode { - s.smsVerificationCodeDo.ReplaceConnPool(db.Statement.ConnPool) - return s -} - -func (s smsVerificationCode) replaceDB(db *gorm.DB) smsVerificationCode { - s.smsVerificationCodeDo.ReplaceDB(db) - return s -} - -type smsVerificationCodeDo struct{ gen.DO } - -func (s smsVerificationCodeDo) Debug() *smsVerificationCodeDo { - return s.withDO(s.DO.Debug()) -} - -func (s smsVerificationCodeDo) WithContext(ctx context.Context) *smsVerificationCodeDo { - return s.withDO(s.DO.WithContext(ctx)) -} - -func (s smsVerificationCodeDo) ReadDB() *smsVerificationCodeDo { - return s.Clauses(dbresolver.Read) -} - -func (s smsVerificationCodeDo) WriteDB() *smsVerificationCodeDo { - return s.Clauses(dbresolver.Write) -} - -func (s smsVerificationCodeDo) Session(config *gorm.Session) *smsVerificationCodeDo { - return s.withDO(s.DO.Session(config)) -} - -func (s smsVerificationCodeDo) Clauses(conds ...clause.Expression) *smsVerificationCodeDo { - return s.withDO(s.DO.Clauses(conds...)) -} - -func (s smsVerificationCodeDo) Returning(value interface{}, columns ...string) *smsVerificationCodeDo { - return s.withDO(s.DO.Returning(value, columns...)) -} - -func (s smsVerificationCodeDo) Not(conds ...gen.Condition) *smsVerificationCodeDo { - return s.withDO(s.DO.Not(conds...)) -} - -func (s smsVerificationCodeDo) Or(conds ...gen.Condition) *smsVerificationCodeDo { - return s.withDO(s.DO.Or(conds...)) -} - -func (s smsVerificationCodeDo) Select(conds ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.Select(conds...)) -} - -func (s smsVerificationCodeDo) Where(conds ...gen.Condition) *smsVerificationCodeDo { - return s.withDO(s.DO.Where(conds...)) -} - -func (s smsVerificationCodeDo) Order(conds ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.Order(conds...)) -} - -func (s smsVerificationCodeDo) Distinct(cols ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.Distinct(cols...)) -} - -func (s smsVerificationCodeDo) Omit(cols ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.Omit(cols...)) -} - -func (s smsVerificationCodeDo) Join(table schema.Tabler, on ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.Join(table, on...)) -} - -func (s smsVerificationCodeDo) LeftJoin(table schema.Tabler, on ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.LeftJoin(table, on...)) -} - -func (s smsVerificationCodeDo) RightJoin(table schema.Tabler, on ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.RightJoin(table, on...)) -} - -func (s smsVerificationCodeDo) Group(cols ...field.Expr) *smsVerificationCodeDo { - return s.withDO(s.DO.Group(cols...)) -} - -func (s smsVerificationCodeDo) Having(conds ...gen.Condition) *smsVerificationCodeDo { - return s.withDO(s.DO.Having(conds...)) -} - -func (s smsVerificationCodeDo) Limit(limit int) *smsVerificationCodeDo { - return s.withDO(s.DO.Limit(limit)) -} - -func (s smsVerificationCodeDo) Offset(offset int) *smsVerificationCodeDo { - return s.withDO(s.DO.Offset(offset)) -} - -func (s smsVerificationCodeDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *smsVerificationCodeDo { - return s.withDO(s.DO.Scopes(funcs...)) -} - -func (s smsVerificationCodeDo) Unscoped() *smsVerificationCodeDo { - return s.withDO(s.DO.Unscoped()) -} - -func (s smsVerificationCodeDo) Create(values ...*model.SmsVerificationCode) error { - if len(values) == 0 { - return nil - } - return s.DO.Create(values) -} - -func (s smsVerificationCodeDo) CreateInBatches(values []*model.SmsVerificationCode, batchSize int) error { - return s.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (s smsVerificationCodeDo) Save(values ...*model.SmsVerificationCode) error { - if len(values) == 0 { - return nil - } - return s.DO.Save(values) -} - -func (s smsVerificationCodeDo) First() (*model.SmsVerificationCode, error) { - if result, err := s.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.SmsVerificationCode), nil - } -} - -func (s smsVerificationCodeDo) Take() (*model.SmsVerificationCode, error) { - if result, err := s.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.SmsVerificationCode), nil - } -} - -func (s smsVerificationCodeDo) Last() (*model.SmsVerificationCode, error) { - if result, err := s.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.SmsVerificationCode), nil - } -} - -func (s smsVerificationCodeDo) Find() ([]*model.SmsVerificationCode, error) { - result, err := s.DO.Find() - return result.([]*model.SmsVerificationCode), err -} - -func (s smsVerificationCodeDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.SmsVerificationCode, err error) { - buf := make([]*model.SmsVerificationCode, 0, batchSize) - err = s.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (s smsVerificationCodeDo) FindInBatches(result *[]*model.SmsVerificationCode, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return s.DO.FindInBatches(result, batchSize, fc) -} - -func (s smsVerificationCodeDo) Attrs(attrs ...field.AssignExpr) *smsVerificationCodeDo { - return s.withDO(s.DO.Attrs(attrs...)) -} - -func (s smsVerificationCodeDo) Assign(attrs ...field.AssignExpr) *smsVerificationCodeDo { - return s.withDO(s.DO.Assign(attrs...)) -} - -func (s smsVerificationCodeDo) Joins(fields ...field.RelationField) *smsVerificationCodeDo { - for _, _f := range fields { - s = *s.withDO(s.DO.Joins(_f)) - } - return &s -} - -func (s smsVerificationCodeDo) Preload(fields ...field.RelationField) *smsVerificationCodeDo { - for _, _f := range fields { - s = *s.withDO(s.DO.Preload(_f)) - } - return &s -} - -func (s smsVerificationCodeDo) FirstOrInit() (*model.SmsVerificationCode, error) { - if result, err := s.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.SmsVerificationCode), nil - } -} - -func (s smsVerificationCodeDo) FirstOrCreate() (*model.SmsVerificationCode, error) { - if result, err := s.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.SmsVerificationCode), nil - } -} - -func (s smsVerificationCodeDo) FindByPage(offset int, limit int) (result []*model.SmsVerificationCode, count int64, err error) { - result, err = s.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = s.Offset(-1).Limit(-1).Count() - return -} - -func (s smsVerificationCodeDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = s.Count() - if err != nil { - return - } - - err = s.Offset(offset).Limit(limit).Scan(result) - return -} - -func (s smsVerificationCodeDo) Scan(result interface{}) (err error) { - return s.DO.Scan(result) -} - -func (s smsVerificationCodeDo) Delete(models ...*model.SmsVerificationCode) (result gen.ResultInfo, err error) { - return s.DO.Delete(models) -} - -func (s *smsVerificationCodeDo) withDO(do gen.Dao) *smsVerificationCodeDo { - s.DO = *do.(*gen.DO) - return s -} diff --git a/internal/repository/mysql/dao/symptom.gen.go b/internal/repository/mysql/dao/symptom.gen.go deleted file mode 100644 index 1f64f6a..0000000 --- a/internal/repository/mysql/dao/symptom.gen.go +++ /dev/null @@ -1,344 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package dao - -import ( - "context" - - "gorm.io/gorm" - "gorm.io/gorm/clause" - "gorm.io/gorm/schema" - - "gorm.io/gen" - "gorm.io/gen/field" - - "gorm.io/plugin/dbresolver" - - "mini-chat/internal/repository/mysql/model" -) - -func newSymptom(db *gorm.DB, opts ...gen.DOOption) symptom { - _symptom := symptom{} - - _symptom.symptomDo.UseDB(db, opts...) - _symptom.symptomDo.UseModel(&model.Symptom{}) - - tableName := _symptom.symptomDo.TableName() - _symptom.ALL = field.NewAsterisk(tableName) - _symptom.ID = field.NewInt32(tableName, "id") - _symptom.Title = field.NewString(tableName, "title") - _symptom.Description = field.NewString(tableName, "description") - _symptom.CreatedUser = field.NewString(tableName, "created_user") - _symptom.CreatedAt = field.NewTime(tableName, "created_at") - _symptom.UpdatedUser = field.NewString(tableName, "updated_user") - _symptom.UpdatedAt = field.NewTime(tableName, "updated_at") - - _symptom.fillFieldMap() - - return _symptom -} - -// symptom 症状表 -type symptom struct { - symptomDo - - ALL field.Asterisk - ID field.Int32 // 主键 - Title field.String // 症状 - Description field.String // 描述 - CreatedUser field.String // 创建人 - CreatedAt field.Time // 创建时间 - UpdatedUser field.String // 更新人 - UpdatedAt field.Time // 更新时间 - - fieldMap map[string]field.Expr -} - -func (s symptom) Table(newTableName string) *symptom { - s.symptomDo.UseTable(newTableName) - return s.updateTableName(newTableName) -} - -func (s symptom) As(alias string) *symptom { - s.symptomDo.DO = *(s.symptomDo.As(alias).(*gen.DO)) - return s.updateTableName(alias) -} - -func (s *symptom) updateTableName(table string) *symptom { - s.ALL = field.NewAsterisk(table) - s.ID = field.NewInt32(table, "id") - s.Title = field.NewString(table, "title") - s.Description = field.NewString(table, "description") - s.CreatedUser = field.NewString(table, "created_user") - s.CreatedAt = field.NewTime(table, "created_at") - s.UpdatedUser = field.NewString(table, "updated_user") - s.UpdatedAt = field.NewTime(table, "updated_at") - - s.fillFieldMap() - - return s -} - -func (s *symptom) GetFieldByName(fieldName string) (field.OrderExpr, bool) { - _f, ok := s.fieldMap[fieldName] - if !ok || _f == nil { - return nil, false - } - _oe, ok := _f.(field.OrderExpr) - return _oe, ok -} - -func (s *symptom) fillFieldMap() { - s.fieldMap = make(map[string]field.Expr, 7) - s.fieldMap["id"] = s.ID - s.fieldMap["title"] = s.Title - s.fieldMap["description"] = s.Description - s.fieldMap["created_user"] = s.CreatedUser - s.fieldMap["created_at"] = s.CreatedAt - s.fieldMap["updated_user"] = s.UpdatedUser - s.fieldMap["updated_at"] = s.UpdatedAt -} - -func (s symptom) clone(db *gorm.DB) symptom { - s.symptomDo.ReplaceConnPool(db.Statement.ConnPool) - return s -} - -func (s symptom) replaceDB(db *gorm.DB) symptom { - s.symptomDo.ReplaceDB(db) - return s -} - -type symptomDo struct{ gen.DO } - -func (s symptomDo) Debug() *symptomDo { - return s.withDO(s.DO.Debug()) -} - -func (s symptomDo) WithContext(ctx context.Context) *symptomDo { - return s.withDO(s.DO.WithContext(ctx)) -} - -func (s symptomDo) ReadDB() *symptomDo { - return s.Clauses(dbresolver.Read) -} - -func (s symptomDo) WriteDB() *symptomDo { - return s.Clauses(dbresolver.Write) -} - -func (s symptomDo) Session(config *gorm.Session) *symptomDo { - return s.withDO(s.DO.Session(config)) -} - -func (s symptomDo) Clauses(conds ...clause.Expression) *symptomDo { - return s.withDO(s.DO.Clauses(conds...)) -} - -func (s symptomDo) Returning(value interface{}, columns ...string) *symptomDo { - return s.withDO(s.DO.Returning(value, columns...)) -} - -func (s symptomDo) Not(conds ...gen.Condition) *symptomDo { - return s.withDO(s.DO.Not(conds...)) -} - -func (s symptomDo) Or(conds ...gen.Condition) *symptomDo { - return s.withDO(s.DO.Or(conds...)) -} - -func (s symptomDo) Select(conds ...field.Expr) *symptomDo { - return s.withDO(s.DO.Select(conds...)) -} - -func (s symptomDo) Where(conds ...gen.Condition) *symptomDo { - return s.withDO(s.DO.Where(conds...)) -} - -func (s symptomDo) Order(conds ...field.Expr) *symptomDo { - return s.withDO(s.DO.Order(conds...)) -} - -func (s symptomDo) Distinct(cols ...field.Expr) *symptomDo { - return s.withDO(s.DO.Distinct(cols...)) -} - -func (s symptomDo) Omit(cols ...field.Expr) *symptomDo { - return s.withDO(s.DO.Omit(cols...)) -} - -func (s symptomDo) Join(table schema.Tabler, on ...field.Expr) *symptomDo { - return s.withDO(s.DO.Join(table, on...)) -} - -func (s symptomDo) LeftJoin(table schema.Tabler, on ...field.Expr) *symptomDo { - return s.withDO(s.DO.LeftJoin(table, on...)) -} - -func (s symptomDo) RightJoin(table schema.Tabler, on ...field.Expr) *symptomDo { - return s.withDO(s.DO.RightJoin(table, on...)) -} - -func (s symptomDo) Group(cols ...field.Expr) *symptomDo { - return s.withDO(s.DO.Group(cols...)) -} - -func (s symptomDo) Having(conds ...gen.Condition) *symptomDo { - return s.withDO(s.DO.Having(conds...)) -} - -func (s symptomDo) Limit(limit int) *symptomDo { - return s.withDO(s.DO.Limit(limit)) -} - -func (s symptomDo) Offset(offset int) *symptomDo { - return s.withDO(s.DO.Offset(offset)) -} - -func (s symptomDo) Scopes(funcs ...func(gen.Dao) gen.Dao) *symptomDo { - return s.withDO(s.DO.Scopes(funcs...)) -} - -func (s symptomDo) Unscoped() *symptomDo { - return s.withDO(s.DO.Unscoped()) -} - -func (s symptomDo) Create(values ...*model.Symptom) error { - if len(values) == 0 { - return nil - } - return s.DO.Create(values) -} - -func (s symptomDo) CreateInBatches(values []*model.Symptom, batchSize int) error { - return s.DO.CreateInBatches(values, batchSize) -} - -// Save : !!! underlying implementation is different with GORM -// The method is equivalent to executing the statement: db.Clauses(clause.OnConflict{UpdateAll: true}).Create(values) -func (s symptomDo) Save(values ...*model.Symptom) error { - if len(values) == 0 { - return nil - } - return s.DO.Save(values) -} - -func (s symptomDo) First() (*model.Symptom, error) { - if result, err := s.DO.First(); err != nil { - return nil, err - } else { - return result.(*model.Symptom), nil - } -} - -func (s symptomDo) Take() (*model.Symptom, error) { - if result, err := s.DO.Take(); err != nil { - return nil, err - } else { - return result.(*model.Symptom), nil - } -} - -func (s symptomDo) Last() (*model.Symptom, error) { - if result, err := s.DO.Last(); err != nil { - return nil, err - } else { - return result.(*model.Symptom), nil - } -} - -func (s symptomDo) Find() ([]*model.Symptom, error) { - result, err := s.DO.Find() - return result.([]*model.Symptom), err -} - -func (s symptomDo) FindInBatch(batchSize int, fc func(tx gen.Dao, batch int) error) (results []*model.Symptom, err error) { - buf := make([]*model.Symptom, 0, batchSize) - err = s.DO.FindInBatches(&buf, batchSize, func(tx gen.Dao, batch int) error { - defer func() { results = append(results, buf...) }() - return fc(tx, batch) - }) - return results, err -} - -func (s symptomDo) FindInBatches(result *[]*model.Symptom, batchSize int, fc func(tx gen.Dao, batch int) error) error { - return s.DO.FindInBatches(result, batchSize, fc) -} - -func (s symptomDo) Attrs(attrs ...field.AssignExpr) *symptomDo { - return s.withDO(s.DO.Attrs(attrs...)) -} - -func (s symptomDo) Assign(attrs ...field.AssignExpr) *symptomDo { - return s.withDO(s.DO.Assign(attrs...)) -} - -func (s symptomDo) Joins(fields ...field.RelationField) *symptomDo { - for _, _f := range fields { - s = *s.withDO(s.DO.Joins(_f)) - } - return &s -} - -func (s symptomDo) Preload(fields ...field.RelationField) *symptomDo { - for _, _f := range fields { - s = *s.withDO(s.DO.Preload(_f)) - } - return &s -} - -func (s symptomDo) FirstOrInit() (*model.Symptom, error) { - if result, err := s.DO.FirstOrInit(); err != nil { - return nil, err - } else { - return result.(*model.Symptom), nil - } -} - -func (s symptomDo) FirstOrCreate() (*model.Symptom, error) { - if result, err := s.DO.FirstOrCreate(); err != nil { - return nil, err - } else { - return result.(*model.Symptom), nil - } -} - -func (s symptomDo) FindByPage(offset int, limit int) (result []*model.Symptom, count int64, err error) { - result, err = s.Offset(offset).Limit(limit).Find() - if err != nil { - return - } - - if size := len(result); 0 < limit && 0 < size && size < limit { - count = int64(size + offset) - return - } - - count, err = s.Offset(-1).Limit(-1).Count() - return -} - -func (s symptomDo) ScanByPage(result interface{}, offset int, limit int) (count int64, err error) { - count, err = s.Count() - if err != nil { - return - } - - err = s.Offset(offset).Limit(limit).Scan(result) - return -} - -func (s symptomDo) Scan(result interface{}) (err error) { - return s.DO.Scan(result) -} - -func (s symptomDo) Delete(models ...*model.Symptom) (result gen.ResultInfo, err error) { - return s.DO.Delete(models) -} - -func (s *symptomDo) withDO(do gen.Dao) *symptomDo { - s.DO = *do.(*gen.DO) - return s -} diff --git a/internal/repository/mysql/model/article.gen.go b/internal/repository/mysql/model/article.gen.go deleted file mode 100644 index 5769a81..0000000 --- a/internal/repository/mysql/model/article.gen.go +++ /dev/null @@ -1,28 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNameArticle = "article" - -// Article 文章表 -type Article struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - Title string `gorm:"column:title;not null;comment:文章标题" json:"title"` // 文章标题 - CoverImage string `gorm:"column:cover_image;not null;comment:文章封面图" json:"cover_image"` // 文章封面图 - Content string `gorm:"column:content;not null;comment:文章内容" json:"content"` // 文章内容 - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName Article's table name -func (*Article) TableName() string { - return TableNameArticle -} diff --git a/internal/repository/mysql/model/diagnostic_record.gen.go b/internal/repository/mysql/model/diagnostic_record.gen.go deleted file mode 100644 index d22c726..0000000 --- a/internal/repository/mysql/model/diagnostic_record.gen.go +++ /dev/null @@ -1,32 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNameDiagnosticRecord = "diagnostic_record" - -// DiagnosticRecord 诊断记录表 -type DiagnosticRecord struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - UserID string `gorm:"column:user_id;not null;comment:用户ID(openid)" json:"user_id"` // 用户ID(openid) - Username string `gorm:"column:username;not null;comment:姓名" json:"username"` // 姓名 - Mobile string `gorm:"column:mobile;not null;comment:手机号" json:"mobile"` // 手机号 - Mmp7 string `gorm:"column:mmp_7;not null;comment:MMP-7检测值" json:"mmp_7"` // MMP-7检测值 - Day int32 `gorm:"column:day;not null;comment:日龄(天)" json:"day"` // 日龄(天) - GallbladderImage string `gorm:"column:gallbladder_image;not null;comment:胆囊照片" json:"gallbladder_image"` // 胆囊照片 - PortalVeinBranchImage string `gorm:"column:portal_vein_branch_image;not null;comment:门静脉左右分支照片" json:"portal_vein_branch_image"` // 门静脉左右分支照片 - PortalVeinCrossImage string `gorm:"column:portal_vein_cross_image;not null;comment:门静脉右支横截照片" json:"portal_vein_cross_image"` // 门静脉右支横截照片 - IdentifyResult string `gorm:"column:identify_result;not null;comment:识别结果" json:"identify_result"` // 识别结果 - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 -} - -// TableName DiagnosticRecord's table name -func (*DiagnosticRecord) TableName() string { - return TableNameDiagnosticRecord -} diff --git a/internal/repository/mysql/model/doctor.gen.go b/internal/repository/mysql/model/doctor.gen.go deleted file mode 100644 index a8752b4..0000000 --- a/internal/repository/mysql/model/doctor.gen.go +++ /dev/null @@ -1,33 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNameDoctor = "doctor" - -// Doctor 医生表 -type Doctor struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - Username string `gorm:"column:username;not null;comment:用户名" json:"username"` // 用户名 - Nickname string `gorm:"column:nickname;not null;comment:昵称" json:"nickname"` // 昵称 - Mobile string `gorm:"column:mobile;not null;comment:手机号" json:"mobile"` // 手机号 - Password string `gorm:"column:password;not null;comment:密码" json:"password"` // 密码 - LoginStatus int32 `gorm:"column:login_status;not null;default:1;comment:登录状态(1:启用 0:禁用)" json:"login_status"` // 登录状态(1:启用 0:禁用) - LastLoginTime time.Time `gorm:"column:last_login_time;not null;default:CURRENT_TIMESTAMP;comment:最后一次登录时间" json:"last_login_time"` // 最后一次登录时间 - LastLoginIP string `gorm:"column:last_login_ip;not null;comment:最后一次登录IP" json:"last_login_ip"` // 最后一次登录IP - LastLoginHash string `gorm:"column:last_login_hash;not null;comment:最后一次登录 Hash" json:"last_login_hash"` // 最后一次登录 Hash - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName Doctor's table name -func (*Doctor) TableName() string { - return TableNameDoctor -} diff --git a/internal/repository/mysql/model/miniprogram_access_token.gen.go b/internal/repository/mysql/model/miniprogram_access_token.gen.go deleted file mode 100644 index 741511a..0000000 --- a/internal/repository/mysql/model/miniprogram_access_token.gen.go +++ /dev/null @@ -1,24 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNameMiniprogramAccessToken = "miniprogram_access_token" - -// MiniprogramAccessToken 小程序 access_token 表 -type MiniprogramAccessToken struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - AccessToken string `gorm:"column:access_token;not null;comment:access_token" json:"access_token"` // access_token - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - ExpiredAt time.Time `gorm:"column:expired_at;not null;default:CURRENT_TIMESTAMP;comment:过期时间" json:"expired_at"` // 过期时间 -} - -// TableName MiniprogramAccessToken's table name -func (*MiniprogramAccessToken) TableName() string { - return TableNameMiniprogramAccessToken -} diff --git a/internal/repository/mysql/model/patient.gen.go b/internal/repository/mysql/model/patient.gen.go deleted file mode 100644 index cbd4ab4..0000000 --- a/internal/repository/mysql/model/patient.gen.go +++ /dev/null @@ -1,51 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNamePatient = "patient" - -// Patient 患者表 -type Patient struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - Mobile string `gorm:"column:mobile;not null;comment:手机号" json:"mobile"` // 手机号 - Username string `gorm:"column:username;not null;comment:姓名" json:"username"` // 姓名 - Sex int32 `gorm:"column:sex;not null;comment:性别(1:男 2:女)" json:"sex"` // 性别(1:男 2:女) - Password string `gorm:"column:password;not null;comment:密码" json:"password"` // 密码 - Avatar string `gorm:"column:avatar;not null;comment:头像地址" json:"avatar"` // 头像地址 - IDNumber string `gorm:"column:id_number;not null;comment:身份证号" json:"id_number"` // 身份证号 - Birthday time.Time `gorm:"column:birthday;comment:出生日期" json:"birthday"` // 出生日期 - BirthWeight int32 `gorm:"column:birth_weight;not null;comment:出生体重(克)" json:"birth_weight"` // 出生体重(克) - OperativeDate time.Time `gorm:"column:operative_date;comment:手术日期" json:"operative_date"` // 手术日期 - NextFollowDate time.Time `gorm:"column:next_follow_date;comment:下次随访时间" json:"next_follow_date"` // 下次随访时间 - ParityNumber int32 `gorm:"column:parity_number;not null;comment:胎次(0:未知 1:1胎 2:胎 3:胎 4:≥4胎)" json:"parity_number"` // 胎次(0:未知 1:1胎 2:胎 3:胎 4:≥4胎) - BirthNumber int32 `gorm:"column:birth_number;not null;comment:产次(0:未知 1:1产 2:2产 3:≥3产)" json:"birth_number"` // 产次(0:未知 1:1产 2:2产 3:≥3产) - ConceptionType int32 `gorm:"column:conception_type;not null;comment:受孕方式(0:未知 1:自然受孕 2:辅助生殖技术)" json:"conception_type"` // 受孕方式(0:未知 1:自然受孕 2:辅助生殖技术) - GestationalWeek int32 `gorm:"column:gestational_week;not null;comment:孕周" json:"gestational_week"` // 孕周 - PrenatalCheckType int32 `gorm:"column:prenatal_check_type;not null;comment:产检是否异常(0:未知 1:有 2:无)" json:"prenatal_check_type"` // 产检是否异常(0:未知 1:有 2:无) - PrenatalCheckRemark string `gorm:"column:prenatal_check_remark;not null;comment:产检异常备注" json:"prenatal_check_remark"` // 产检异常备注 - DeliveryType int32 `gorm:"column:delivery_type;not null;comment:分娩方式(0:未知 1:顺产 2:剖宫产)" json:"delivery_type"` // 分娩方式(0:未知 1:顺产 2:剖宫产) - RiskType int32 `gorm:"column:risk_type;not null;comment:风险类型(0:未知 1:低危 2:中危 3:高危)" json:"risk_type"` // 风险类型(0:未知 1:低危 2:中危 3:高危) - RiskValue string `gorm:"column:risk_value;not null;comment:风险值" json:"risk_value"` // 风险值 - HeightGenerateCurveType int32 `gorm:"column:height_generate_curve_type;not null;comment:身高生长曲线类型(0:未知 1:轻度偏离 2:正常 3:重度偏离)" json:"height_generate_curve_type"` // 身高生长曲线类型(0:未知 1:轻度偏离 2:正常 3:重度偏离) - WeightGenerateCurveType int32 `gorm:"column:weight_generate_curve_type;not null;comment:体重生长曲线类型(0:未知 1:轻度偏离 2:正常 3:重度偏离)" json:"weight_generate_curve_type"` // 体重生长曲线类型(0:未知 1:轻度偏离 2:正常 3:重度偏离) - LoginStatus int32 `gorm:"column:login_status;not null;default:1;comment:登录状态(1:启用 0:禁用)" json:"login_status"` // 登录状态(1:启用 0:禁用) - LastLoginTime time.Time `gorm:"column:last_login_time;not null;default:CURRENT_TIMESTAMP;comment:最后一次登录时间" json:"last_login_time"` // 最后一次登录时间 - LastLoginIP string `gorm:"column:last_login_ip;not null;comment:最后一次登录IP" json:"last_login_ip"` // 最后一次登录IP - LastLoginHash string `gorm:"column:last_login_hash;not null;comment:最后一次登录 Hash" json:"last_login_hash"` // 最后一次登录 Hash - WxUserID string `gorm:"column:wx_user_id;not null;comment:微信ID" json:"wx_user_id"` // 微信ID - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName Patient's table name -func (*Patient) TableName() string { - return TableNamePatient -} diff --git a/internal/repository/mysql/model/patient_emergency_symptom.gen.go b/internal/repository/mysql/model/patient_emergency_symptom.gen.go deleted file mode 100644 index f028898..0000000 --- a/internal/repository/mysql/model/patient_emergency_symptom.gen.go +++ /dev/null @@ -1,28 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNamePatientEmergencySymptom = "patient_emergency_symptom" - -// PatientEmergencySymptom 患者紧急症状表 -type PatientEmergencySymptom struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - PatientID int32 `gorm:"column:patient_id;not null;comment:患者ID" json:"patient_id"` // 患者ID - Symptom string `gorm:"column:symptom;not null;comment:症状信息(JSON格式)" json:"symptom"` // 症状信息(JSON格式) - Conclusion string `gorm:"column:conclusion;not null;comment:结论" json:"conclusion"` // 结论 - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName PatientEmergencySymptom's table name -func (*PatientEmergencySymptom) TableName() string { - return TableNamePatientEmergencySymptom -} diff --git a/internal/repository/mysql/model/patient_follow_plan.gen.go b/internal/repository/mysql/model/patient_follow_plan.gen.go deleted file mode 100644 index 5d4d0ed..0000000 --- a/internal/repository/mysql/model/patient_follow_plan.gen.go +++ /dev/null @@ -1,29 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNamePatientFollowPlan = "patient_follow_plan" - -// PatientFollowPlan 患者随访计划表 -type PatientFollowPlan struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - PatientID int32 `gorm:"column:patient_id;not null;comment:患者ID" json:"patient_id"` // 患者ID - PlanName string `gorm:"column:plan_name;not null;default:0;comment:计划名称" json:"plan_name"` // 计划名称 - PlanDate time.Time `gorm:"column:plan_date;comment:计划时间" json:"plan_date"` // 计划时间 - Status int32 `gorm:"column:status;not null;comment:完成状态(1:未完成 2:已完成)" json:"status"` // 完成状态(1:未完成 2:已完成) - CreatedUser string `gorm:"column:created_user;not null;default:0;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;default:0;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName PatientFollowPlan's table name -func (*PatientFollowPlan) TableName() string { - return TableNamePatientFollowPlan -} diff --git a/internal/repository/mysql/model/patient_follow_questionnaire.gen.go b/internal/repository/mysql/model/patient_follow_questionnaire.gen.go deleted file mode 100644 index cee163e..0000000 --- a/internal/repository/mysql/model/patient_follow_questionnaire.gen.go +++ /dev/null @@ -1,83 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNamePatientFollowQuestionnaire = "patient_follow_questionnaire" - -// PatientFollowQuestionnaire 患者随访问卷表 -type PatientFollowQuestionnaire struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - PatientID int32 `gorm:"column:patient_id;not null;comment:患者ID" json:"patient_id"` // 患者ID - PlanID int32 `gorm:"column:plan_id;not null;comment:随访计划ID" json:"plan_id"` // 随访计划ID - FollowName string `gorm:"column:follow_name;not null;comment:随访名称" json:"follow_name"` // 随访名称 - FollowDate time.Time `gorm:"column:follow_date;comment:随访日期" json:"follow_date"` // 随访日期 - FollowHospital string `gorm:"column:follow_hospital;not null;comment:随访医院" json:"follow_hospital"` // 随访医院 - Height string `gorm:"column:height;not null;comment:身高(CM)" json:"height"` // 身高(CM) - Weight string `gorm:"column:weight;not null;comment:体重(KG)" json:"weight"` // 体重(KG) - HeadCircumference string `gorm:"column:head_circumference;not null;comment:头围(CM)" json:"head_circumference"` // 头围(CM) - HighHip string `gorm:"column:high_hip;not null;comment:上臀围(CM)" json:"high_hip"` // 上臀围(CM) - LiverFunctionImage string `gorm:"column:liver_function_image;comment:肝功能检查报告(多张用,分割)" json:"liver_function_image"` // 肝功能检查报告(多张用,分割) - TotalBilirubin string `gorm:"column:total_bilirubin;not null;comment:总胆红素(µmol/L)" json:"total_bilirubin"` // 总胆红素(µmol/L) - DirectBilirubin string `gorm:"column:direct_bilirubin;not null;comment:直接胆红素(µmol/L)" json:"direct_bilirubin"` // 直接胆红素(µmol/L) - TotalBileAcid string `gorm:"column:total_bile_acid;not null;comment:总胆汁酸(g/L)" json:"total_bile_acid"` // 总胆汁酸(g/L) - Albumin string `gorm:"column:albumin;not null;comment:白蛋白(g/L)" json:"albumin"` // 白蛋白(g/L) - GrainGrass string `gorm:"column:grain_grass;not null;comment:谷草(U/L)" json:"grain_grass"` // 谷草(U/L) - GuBing string `gorm:"column:gu_bing;not null;comment:谷丙(U/L)" json:"gu_bing"` // 谷丙(U/L) - Ggt string `gorm:"column:ggt;not null;comment:GGT(U/L)" json:"ggt"` // GGT(U/L) - Alp string `gorm:"column:alp;not null;comment:ALP(U/L)" json:"alp"` // ALP(U/L) - CoagulationFunctionImage string `gorm:"column:coagulation_function_image;comment:凝血功能检查报告(多张用,分割)" json:"coagulation_function_image"` // 凝血功能检查报告(多张用,分割) - Crp string `gorm:"column:crp;not null;comment:CRP(mg/L)" json:"crp"` // CRP(mg/L) - Ddr string `gorm:"column:ddr;not null;comment:DDR" json:"ddr"` // DDR - Inr string `gorm:"column:inr;not null;comment:INR" json:"inr"` // INR - Pt string `gorm:"column:pt;not null;comment:PT(s)" json:"pt"` // PT(s) - Pta string `gorm:"column:pta;not null;comment:PTA(%)" json:"pta"` // PTA(%) - Aptt string `gorm:"column:aptt;not null;comment:APTT(s)" json:"aptt"` // APTT(s) - Tt string `gorm:"column:tt;not null;comment:TT(s)" json:"tt"` // TT(s) - Fib string `gorm:"column:fib;not null;comment:FIB(g/L)" json:"fib"` // FIB(g/L) - Npdp string `gorm:"column:npdp;not null;comment:NPDP(mg/L)" json:"npdp"` // NPDP(mg/L) - Mmp7 string `gorm:"column:mmp_7;not null;comment:MMP-7(ng/mL)" json:"mmp_7"` // MMP-7(ng/mL) - BloodRoutineImage string `gorm:"column:blood_routine_image;comment:血常规检查报告(多张用,分割)" json:"blood_routine_image"` // 血常规检查报告(多张用,分割) - Platelets string `gorm:"column:platelets;not null;comment:血小板(10^9/L)" json:"platelets"` // 血小板(10^9/L) - Hemoglobin string `gorm:"column:hemoglobin;not null;comment:血红蛋白 (g/L)" json:"hemoglobin"` // 血红蛋白 (g/L) - WhiteBloodCells string `gorm:"column:white_blood_cells;not null;comment:白细胞 (10^9/L)" json:"white_blood_cells"` // 白细胞 (10^9/L) - RedBloodCells string `gorm:"column:red_blood_cells;not null;comment:红细胞 (10^9/L)" json:"red_blood_cells"` // 红细胞 (10^9/L) - NutritionalIndicatorImage string `gorm:"column:nutritional_indicator_image;comment:营养指标检查报告(多张用,分割)" json:"nutritional_indicator_image"` // 营养指标检查报告(多张用,分割) - OhD3 string `gorm:"column:oh_d3;not null;comment:25(OH)D3 (ng/ml)" json:"oh_d3"` // 25(OH)D3 (ng/ml) - OhD2 string `gorm:"column:oh_d2;not null;comment:25(OH)D2 (ng/ml)" json:"oh_d2"` // 25(OH)D2 (ng/ml) - OhD string `gorm:"column:oh_d;not null;comment:25(OH)D (ng/ml)" json:"oh_d"` // 25(OH)D (ng/ml) - VitaminA string `gorm:"column:vitamin_a;not null;comment:维生素A (ng/ml)" json:"vitamin_a"` // 维生素A (ng/ml) - VitaminK string `gorm:"column:vitamin_k;not null;comment:维生素K (ng/ml)" json:"vitamin_k"` // 维生素K (ng/ml) - VitaminE string `gorm:"column:vitamin_e;not null;comment:维生素E (ng/ml)" json:"vitamin_e"` // 维生素E (ng/ml) - BModeImage string `gorm:"column:b_mode_image;comment:B超报告(多张用,分割)" json:"b_mode_image"` // B超报告(多张用,分割) - UnderTheLiverRib string `gorm:"column:under_the_liver_rib;not null;comment:肝肋下(mm)" json:"under_the_liver_rib"` // 肝肋下(mm) - UnderTheXiphoidLiver string `gorm:"column:under_the_xiphoid_liver;not null;comment:肝剑突下(mm)" json:"under_the_xiphoid_liver"` // 肝剑突下(mm) - SpleenRibArea string `gorm:"column:spleen_rib_area;not null;comment:脾肋下(mm)" json:"spleen_rib_area"` // 脾肋下(mm) - MainPortalVein string `gorm:"column:main_portal_vein;not null;comment:门静脉主干内径(mm)" json:"main_portal_vein"` // 门静脉主干内径(mm) - LiverEcho string `gorm:"column:liver_echo;not null;comment:肝回声" json:"liver_echo"` // 肝回声 - GallbladderSize string `gorm:"column:gallbladder_size;not null;comment:胆囊大小(mm)" json:"gallbladder_size"` // 胆囊大小(mm) - CommonBileDuct string `gorm:"column:common_bile_duct;not null;comment:胆总管(mm)" json:"common_bile_duct"` // 胆总管(mm) - FiberBlockSize string `gorm:"column:fiber_block_size;not null;comment:纤维块大小(mm)" json:"fiber_block_size"` // 纤维块大小(mm) - Pvv string `gorm:"column:pvv;not null;comment:门静脉流速" json:"pvv"` // 门静脉流速 - LiverElasticityValue string `gorm:"column:liver_elasticity_value;not null;comment:肝弹性值" json:"liver_elasticity_value"` // 肝弹性值 - IsHaveCyst int32 `gorm:"column:is_have_cyst;not null;comment:有无肝囊肿(1:是 2:否)" json:"is_have_cyst"` // 有无肝囊肿(1:是 2:否) - IsHaveAscites int32 `gorm:"column:is_have_ascites;not null;comment:有无腹水(1:是 2:否)" json:"is_have_ascites"` // 有无腹水(1:是 2:否) - ElastographyMinimum string `gorm:"column:elastography_minimum;not null;comment:弹性成像最小值(kPa)" json:"elastography_minimum"` // 弹性成像最小值(kPa) - ElastographyMaximum string `gorm:"column:elastography_maximum;not null;comment:弹性成像最大值(kPa)" json:"elastography_maximum"` // 弹性成像最大值(kPa) - ElastographyMedian string `gorm:"column:elastography_median;not null;comment:弹性成像中位数(kPa)" json:"elastography_median"` // 弹性成像中位数(kPa) - MdtImage string `gorm:"column:mdt_image;comment:MDT电子病历(多张用,分割)" json:"mdt_image"` // MDT电子病历(多张用,分割) - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName PatientFollowQuestionnaire's table name -func (*PatientFollowQuestionnaire) TableName() string { - return TableNamePatientFollowQuestionnaire -} diff --git a/internal/repository/mysql/model/patient_medicine_record.gen.go b/internal/repository/mysql/model/patient_medicine_record.gen.go deleted file mode 100644 index 7bff2e2..0000000 --- a/internal/repository/mysql/model/patient_medicine_record.gen.go +++ /dev/null @@ -1,33 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNamePatientMedicineRecord = "patient_medicine_record" - -// PatientMedicineRecord 患者用药记录表 -type PatientMedicineRecord struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - PatientID int32 `gorm:"column:patient_id;not null;comment:患者ID" json:"patient_id"` // 患者ID - SchemeID int32 `gorm:"column:scheme_id;not null;comment:用药方案ID" json:"scheme_id"` // 用药方案ID - MedicineDate time.Time `gorm:"column:medicine_date;comment:用药日期" json:"medicine_date"` // 用药日期 - MedicineTimeType int32 `gorm:"column:medicine_time_type;not null;comment:用药时间类型(1:早上 2:中午 3:晚上)" json:"medicine_time_type"` // 用药时间类型(1:早上 2:中午 3:晚上) - MedicineTime string `gorm:"column:medicine_time;not null;comment:用药时间" json:"medicine_time"` // 用药时间 - Detail string `gorm:"column:detail;not null;comment:药品信息(JSON格式)" json:"detail"` // 药品信息(JSON格式) - Status int32 `gorm:"column:status;not null;default:1;comment:用药状态(1:未完成 2:已完成)" json:"status"` // 用药状态(1:未完成 2:已完成) - StatusAt time.Time `gorm:"column:status_at;comment:已完成时间(打卡时间)" json:"status_at"` // 已完成时间(打卡时间) - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName PatientMedicineRecord's table name -func (*PatientMedicineRecord) TableName() string { - return TableNamePatientMedicineRecord -} diff --git a/internal/repository/mysql/model/patient_medicine_scheme.gen.go b/internal/repository/mysql/model/patient_medicine_scheme.gen.go deleted file mode 100644 index 319e7ba..0000000 --- a/internal/repository/mysql/model/patient_medicine_scheme.gen.go +++ /dev/null @@ -1,30 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNamePatientMedicineScheme = "patient_medicine_scheme" - -// PatientMedicineScheme 患者用药方案表 -type PatientMedicineScheme struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - PatientID int32 `gorm:"column:patient_id;not null;comment:患者ID" json:"patient_id"` // 患者ID - StartDate time.Time `gorm:"column:start_date;comment:用药开始日期" json:"start_date"` // 用药开始日期 - EndDate time.Time `gorm:"column:end_date;comment:用药结束日期" json:"end_date"` // 用药结束日期 - Detail string `gorm:"column:detail;not null;comment:药品信息(JSON格式)" json:"detail"` // 药品信息(JSON格式) - Reminder string `gorm:"column:reminder;not null;comment:用药提醒(JSON格式)" json:"reminder"` // 用药提醒(JSON格式) - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName PatientMedicineScheme's table name -func (*PatientMedicineScheme) TableName() string { - return TableNamePatientMedicineScheme -} diff --git a/internal/repository/mysql/model/patient_medicine_task.gen.go b/internal/repository/mysql/model/patient_medicine_task.gen.go deleted file mode 100644 index ff1402a..0000000 --- a/internal/repository/mysql/model/patient_medicine_task.gen.go +++ /dev/null @@ -1,35 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNamePatientMedicineTask = "patient_medicine_task" - -// PatientMedicineTask 患者用药提醒(任务)表 -type PatientMedicineTask struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键ID" json:"id"` // 主键ID - Code string `gorm:"column:code;not null;comment:任务编码" json:"code"` // 任务编码 - Title string `gorm:"column:title;not null;comment:标题" json:"title"` // 标题 - Spec string `gorm:"column:spec;not null;comment:时间表达式" json:"spec"` // 时间表达式 - Status int32 `gorm:"column:status;not null;comment:状态(1:禁用 2:启用)" json:"status"` // 状态(1:禁用 2:启用) - IsRunning int32 `gorm:"column:is_running;not null;comment:执行中(0:未执行 1:执行中 2:执行完毕)" json:"is_running"` // 执行中(0:未执行 1:执行中 2:执行完毕) - RunTime time.Time `gorm:"column:run_time;comment:预期执行时间" json:"run_time"` // 预期执行时间 - RunStartTime time.Time `gorm:"column:run_start_time;comment:执行开始时间" json:"run_start_time"` // 执行开始时间 - RunEndTime time.Time `gorm:"column:run_end_time;comment:执行结束时间" json:"run_end_time"` // 执行结束时间 - PatientID int32 `gorm:"column:patient_id;not null;comment:患者ID" json:"patient_id"` // 患者ID - MedicineRecordID int32 `gorm:"column:medicine_record_id;not null;comment:用药记录ID" json:"medicine_record_id"` // 用药记录ID - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName PatientMedicineTask's table name -func (*PatientMedicineTask) TableName() string { - return TableNamePatientMedicineTask -} diff --git a/internal/repository/mysql/model/sms_verification_code.gen.go b/internal/repository/mysql/model/sms_verification_code.gen.go deleted file mode 100644 index 38af085..0000000 --- a/internal/repository/mysql/model/sms_verification_code.gen.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNameSmsVerificationCode = "sms_verification_code" - -// SmsVerificationCode 短信验证码表 -type SmsVerificationCode struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - PhoneNumber string `gorm:"column:phone_number;not null;comment:手机号码" json:"phone_number"` // 手机号码 - VerificationCode string `gorm:"column:verification_code;not null;comment:验证码" json:"verification_code"` // 验证码 - Type int32 `gorm:"column:type;not null;comment:类型(1=登录 2=忘记密码)" json:"type"` // 类型(1=登录 2=忘记密码) - IsUsed int32 `gorm:"column:is_used;not null;comment:是否已使用(0:未使用,1:已使用)" json:"is_used"` // 是否已使用(0:未使用,1:已使用) - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 -} - -// TableName SmsVerificationCode's table name -func (*SmsVerificationCode) TableName() string { - return TableNameSmsVerificationCode -} diff --git a/internal/repository/mysql/model/symptom.gen.go b/internal/repository/mysql/model/symptom.gen.go deleted file mode 100644 index 959f191..0000000 --- a/internal/repository/mysql/model/symptom.gen.go +++ /dev/null @@ -1,27 +0,0 @@ -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. -// Code generated by gorm.io/gen. DO NOT EDIT. - -package model - -import ( - "time" -) - -const TableNameSymptom = "symptom" - -// Symptom 症状表 -type Symptom struct { - ID int32 `gorm:"column:id;primaryKey;autoIncrement:true;comment:主键" json:"id"` // 主键 - Title string `gorm:"column:title;not null;comment:症状" json:"title"` // 症状 - Description string `gorm:"column:description;not null;comment:描述" json:"description"` // 描述 - CreatedUser string `gorm:"column:created_user;not null;comment:创建人" json:"created_user"` // 创建人 - CreatedAt time.Time `gorm:"column:created_at;not null;default:CURRENT_TIMESTAMP;comment:创建时间" json:"created_at"` // 创建时间 - UpdatedUser string `gorm:"column:updated_user;not null;comment:更新人" json:"updated_user"` // 更新人 - UpdatedAt time.Time `gorm:"column:updated_at;not null;default:CURRENT_TIMESTAMP;comment:更新时间" json:"updated_at"` // 更新时间 -} - -// TableName Symptom's table name -func (*Symptom) TableName() string { - return TableNameSymptom -} diff --git a/internal/router/interceptor/interceptor.go b/internal/router/interceptor/interceptor.go index f0fb6f9..d804e10 100644 --- a/internal/router/interceptor/interceptor.go +++ b/internal/router/interceptor/interceptor.go @@ -13,12 +13,6 @@ type Interceptor interface { // AdminTokenAuthVerify 管理端授权验证 AdminTokenAuthVerify(ctx core.Context) (sessionUserInfo proposal.SessionUserInfo, err core.BusinessError) - // DoctorTokenAuthVerify 医生端授权验证 - DoctorTokenAuthVerify(ctx core.Context) (sessionUserInfo proposal.SessionUserInfo, err core.BusinessError) - - // PatientTokenAuthVerify 患者端授权验证 - PatientTokenAuthVerify(ctx core.Context) (sessionUserInfo proposal.SessionUserInfo, err core.BusinessError) - // i 为了避免被其他包实现 i() } diff --git a/internal/router/router.go b/internal/router/router.go index 11c6e0d..4e61dc0 100644 --- a/internal/router/router.go +++ b/internal/router/router.go @@ -1,15 +1,18 @@ package router import ( - "github.com/pkg/errors" "mini-chat/internal/alert" "mini-chat/internal/api/admin" + "mini-chat/internal/api/app" "mini-chat/internal/cron" "mini-chat/internal/dblogger" "mini-chat/internal/pkg/core" "mini-chat/internal/pkg/logger" "mini-chat/internal/pkg/startup" "mini-chat/internal/repository/mysql" + "mini-chat/internal/router/interceptor" + + "github.com/pkg/errors" ) func NewHTTPMux(logger logger.CustomLogger, db mysql.Repo, cron cron.Server) (core.Mux, error) { @@ -34,9 +37,10 @@ func NewHTTPMux(logger logger.CustomLogger, db mysql.Repo, cron cron.Server) (co } // 实例化拦截器 - // interceptorHandler := interceptor.New(logger, db) + interceptorHandler := interceptor.New(logger, db) adminHandler := admin.New(logger, db) + appHandler := app.New(logger, db) // 管理端非认证接口路由组 adminNonAuthApiRouter := mux.Group("/admin") @@ -49,10 +53,13 @@ func NewHTTPMux(logger logger.CustomLogger, db mysql.Repo, cron cron.Server) (co } // 管理端认证接口路由组 - //adminAuthApiRouter := mux.Group("/admin", core.WrapAuthHandler(interceptorHandler.AdminTokenAuthVerify)) - //{ - // - //} + adminAuthApiRouter := mux.Group("/admin", core.WrapAuthHandler(interceptorHandler.AdminTokenAuthVerify)) + { + adminAuthApiRouter.POST("/app/create", appHandler.CreateApp()) // 关联小程序 + adminAuthApiRouter.POST("/app/delete", appHandler.DeleteApp()) // 删除小程序 + adminAuthApiRouter.PUT("/app/:id", appHandler.ModifyApp()) // 修改小程序 + adminAuthApiRouter.GET("/app", appHandler.PageList()) // 小程序列表 + } return mux, nil }