添加基地后端handler和logic
This commit is contained in:
@@ -0,0 +1,31 @@
|
||||
// Code scaffolded by goctl. Safe to edit.
|
||||
// goctl 1.9.2
|
||||
|
||||
package baseOverview
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/JACKYMYPERSON/hldrCenter/config"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/logic/baseOverview"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/types"
|
||||
"github.com/zeromicro/go-zero/rest/httpx"
|
||||
)
|
||||
|
||||
func GetBaseOverviewHandler(cfg *config.Config) http.HandlerFunc {
|
||||
return func(w http.ResponseWriter, r *http.Request) {
|
||||
var req types.GetBaseOverviewReq
|
||||
if err := httpx.Parse(r, &req); err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
return
|
||||
}
|
||||
|
||||
l := baseOverview.NewGetBaseOverviewLogic(r.Context(), cfg)
|
||||
resp, err := l.GetBaseOverview(&req)
|
||||
if err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
} else {
|
||||
httpx.OkJsonCtx(r.Context(), w, resp)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
// Code scaffolded by goctl. Safe to edit.
|
||||
// goctl 1.9.2
|
||||
|
||||
package baseOverview
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/JACKYMYPERSON/hldrCenter/config"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/logic/baseOverview"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/types"
|
||||
"github.com/zeromicro/go-zero/rest/httpx"
|
||||
)
|
||||
|
||||
func UpdateBaseOverviewPartialHandler(cfg *config.Config) http.HandlerFunc {
|
||||
return func(w http.ResponseWriter, r *http.Request) {
|
||||
var req types.UpdateBaseOverviewPartialReq
|
||||
if err := httpx.Parse(r, &req); err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
return
|
||||
}
|
||||
|
||||
l := baseOverview.NewUpdateBaseOverviewPartialLogic(r.Context(), cfg)
|
||||
resp, err := l.UpdateBaseOverviewPartial(&req)
|
||||
if err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
} else {
|
||||
httpx.OkJsonCtx(r.Context(), w, resp)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
// Code scaffolded by goctl. Safe to edit.
|
||||
// goctl 1.9.2
|
||||
|
||||
package baseOverview
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/JACKYMYPERSON/hldrCenter/config"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/logic/baseOverview"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/types"
|
||||
"github.com/zeromicro/go-zero/rest/httpx"
|
||||
)
|
||||
|
||||
func GetBaseOverviewHandler(cfg *config.Config) http.HandlerFunc {
|
||||
return func(w http.ResponseWriter, r *http.Request) {
|
||||
var req types.GetBaseOverviewReq
|
||||
if err := httpx.Parse(r, &req); err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
return
|
||||
}
|
||||
|
||||
l := baseOverview.NewGetBaseOverviewLogic(r.Context(), cfg)
|
||||
resp, err := l.GetBaseOverview(&req)
|
||||
if err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
} else {
|
||||
httpx.OkJsonCtx(r.Context(), w, resp)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,31 @@
|
||||
// Code scaffolded by goctl. Safe to edit.
|
||||
// goctl 1.9.2
|
||||
|
||||
package baseOverview
|
||||
|
||||
import (
|
||||
"net/http"
|
||||
|
||||
"github.com/JACKYMYPERSON/hldrCenter/config"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/logic/baseOverview"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/types"
|
||||
"github.com/zeromicro/go-zero/rest/httpx"
|
||||
)
|
||||
|
||||
func UpdateBaseOverviewPartialHandler(cfg *config.Config) http.HandlerFunc {
|
||||
return func(w http.ResponseWriter, r *http.Request) {
|
||||
var req types.UpdateBaseOverviewPartialReq
|
||||
if err := httpx.Parse(r, &req); err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
return
|
||||
}
|
||||
|
||||
l := baseOverview.NewUpdateBaseOverviewPartialLogic(r.Context(), cfg)
|
||||
resp, err := l.UpdateBaseOverviewPartial(&req)
|
||||
if err != nil {
|
||||
httpx.ErrorCtx(r.Context(), w, err)
|
||||
} else {
|
||||
httpx.OkJsonCtx(r.Context(), w, resp)
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
// Code scaffolded by goctl. Safe to edit.
|
||||
// goctl 1.9.2
|
||||
|
||||
package baseOverview
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/JACKYMYPERSON/hldrCenter/config"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/types"
|
||||
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
)
|
||||
|
||||
type GetBaseOverviewLogic struct {
|
||||
logx.Logger
|
||||
ctx context.Context
|
||||
cfg *config.Config
|
||||
}
|
||||
|
||||
func NewGetBaseOverviewLogic(ctx context.Context, cfg *config.Config) *GetBaseOverviewLogic {
|
||||
return &GetBaseOverviewLogic{
|
||||
Logger: logx.WithContext(ctx),
|
||||
ctx: ctx,
|
||||
cfg: cfg,
|
||||
}
|
||||
}
|
||||
|
||||
func (l *GetBaseOverviewLogic) GetBaseOverview(req *types.GetBaseOverviewReq) (resp *types.GetBaseOverviewResp, err error) {
|
||||
// todo: add your logic here and delete this line
|
||||
|
||||
return
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
// Code scaffolded by goctl. Safe to edit.
|
||||
// goctl 1.9.2
|
||||
|
||||
package baseOverview
|
||||
|
||||
import (
|
||||
"context"
|
||||
|
||||
"github.com/JACKYMYPERSON/hldrCenter/config"
|
||||
"github.com/JACKYMYPERSON/hldrCenter/internal/baseoverview/internal/types"
|
||||
|
||||
"github.com/zeromicro/go-zero/core/logx"
|
||||
)
|
||||
|
||||
type UpdateBaseOverviewPartialLogic struct {
|
||||
logx.Logger
|
||||
ctx context.Context
|
||||
cfg *config.Config
|
||||
}
|
||||
|
||||
func NewUpdateBaseOverviewPartialLogic(ctx context.Context, cfg *config.Config) *UpdateBaseOverviewPartialLogic {
|
||||
return &UpdateBaseOverviewPartialLogic{
|
||||
Logger: logx.WithContext(ctx),
|
||||
ctx: ctx,
|
||||
cfg: cfg,
|
||||
}
|
||||
}
|
||||
|
||||
func (l *UpdateBaseOverviewPartialLogic) UpdateBaseOverviewPartial(req *types.UpdateBaseOverviewPartialReq) (resp *types.UpdateBaseOverviewPartialResp, err error) {
|
||||
// todo: add your logic here and delete this line
|
||||
|
||||
return
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
package model
|
||||
|
||||
import "github.com/zeromicro/go-zero/core/stores/sqlx"
|
||||
|
||||
var _ BaseoverviewModel = (*customBaseoverviewModel)(nil)
|
||||
|
||||
type (
|
||||
// BaseoverviewModel is an interface to be customized, add more methods here,
|
||||
// and implement the added methods in customBaseoverviewModel.
|
||||
BaseoverviewModel interface {
|
||||
baseoverviewModel
|
||||
withSession(session sqlx.Session) BaseoverviewModel
|
||||
}
|
||||
|
||||
customBaseoverviewModel struct {
|
||||
*defaultBaseoverviewModel
|
||||
}
|
||||
)
|
||||
|
||||
// NewBaseoverviewModel returns a model for the database table.
|
||||
func NewBaseoverviewModel(conn sqlx.SqlConn) BaseoverviewModel {
|
||||
return &customBaseoverviewModel{
|
||||
defaultBaseoverviewModel: newBaseoverviewModel(conn),
|
||||
}
|
||||
}
|
||||
|
||||
func (m *customBaseoverviewModel) withSession(session sqlx.Session) BaseoverviewModel {
|
||||
return NewBaseoverviewModel(sqlx.NewSqlConnFromSession(session))
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
// Code generated by goctl. DO NOT EDIT.
|
||||
// versions:
|
||||
// goctl version: 1.9.2
|
||||
|
||||
package model
|
||||
|
||||
import (
|
||||
"context"
|
||||
"database/sql"
|
||||
"fmt"
|
||||
"strings"
|
||||
|
||||
"github.com/zeromicro/go-zero/core/stores/builder"
|
||||
"github.com/zeromicro/go-zero/core/stores/sqlx"
|
||||
"github.com/zeromicro/go-zero/core/stringx"
|
||||
)
|
||||
|
||||
var (
|
||||
baseoverviewFieldNames = builder.RawFieldNames(&Baseoverview{})
|
||||
baseoverviewRows = strings.Join(baseoverviewFieldNames, ",")
|
||||
baseoverviewRowsExpectAutoSet = strings.Join(stringx.Remove(baseoverviewFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
|
||||
baseoverviewRowsWithPlaceHolder = strings.Join(stringx.Remove(baseoverviewFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
|
||||
)
|
||||
|
||||
type (
|
||||
baseoverviewModel interface {
|
||||
Insert(ctx context.Context, data *Baseoverview) (sql.Result, error)
|
||||
FindOne(ctx context.Context, id int64) (*Baseoverview, error)
|
||||
Update(ctx context.Context, data *Baseoverview) error
|
||||
Delete(ctx context.Context, id int64) error
|
||||
}
|
||||
|
||||
defaultBaseoverviewModel struct {
|
||||
conn sqlx.SqlConn
|
||||
table string
|
||||
}
|
||||
|
||||
Baseoverview struct {
|
||||
Id int64 `db:"id"`
|
||||
Introduction sql.NullString `db:"introduction"`
|
||||
Regulations sql.NullString `db:"regulations"`
|
||||
Address sql.NullString `db:"address"`
|
||||
Phone sql.NullString `db:"phone"`
|
||||
Email sql.NullString `db:"email"`
|
||||
Website sql.NullString `db:"website"`
|
||||
Director sql.NullString `db:"director"`
|
||||
DeputyDirector sql.NullString `db:"deputy_director"`
|
||||
Researchers sql.NullString `db:"researchers"`
|
||||
}
|
||||
)
|
||||
|
||||
func newBaseoverviewModel(conn sqlx.SqlConn) *defaultBaseoverviewModel {
|
||||
return &defaultBaseoverviewModel{
|
||||
conn: conn,
|
||||
table: "`baseoverview`",
|
||||
}
|
||||
}
|
||||
|
||||
func (m *defaultBaseoverviewModel) Delete(ctx context.Context, id int64) error {
|
||||
query := fmt.Sprintf("delete from %s where `id` = ?", m.table)
|
||||
_, err := m.conn.ExecCtx(ctx, query, id)
|
||||
return err
|
||||
}
|
||||
|
||||
func (m *defaultBaseoverviewModel) FindOne(ctx context.Context, id int64) (*Baseoverview, error) {
|
||||
query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", baseoverviewRows, m.table)
|
||||
var resp Baseoverview
|
||||
err := m.conn.QueryRowCtx(ctx, &resp, query, id)
|
||||
switch err {
|
||||
case nil:
|
||||
return &resp, nil
|
||||
case sqlx.ErrNotFound:
|
||||
return nil, ErrNotFound
|
||||
default:
|
||||
return nil, err
|
||||
}
|
||||
}
|
||||
|
||||
func (m *defaultBaseoverviewModel) Insert(ctx context.Context, data *Baseoverview) (sql.Result, error) {
|
||||
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, baseoverviewRowsExpectAutoSet)
|
||||
ret, err := m.conn.ExecCtx(ctx, query, data.Introduction, data.Regulations, data.Address, data.Phone, data.Email, data.Website, data.Director, data.DeputyDirector, data.Researchers)
|
||||
return ret, err
|
||||
}
|
||||
|
||||
func (m *defaultBaseoverviewModel) Update(ctx context.Context, data *Baseoverview) error {
|
||||
query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, baseoverviewRowsWithPlaceHolder)
|
||||
_, err := m.conn.ExecCtx(ctx, query, data.Introduction, data.Regulations, data.Address, data.Phone, data.Email, data.Website, data.Director, data.DeputyDirector, data.Researchers, data.Id)
|
||||
return err
|
||||
}
|
||||
|
||||
func (m *defaultBaseoverviewModel) tableName() string {
|
||||
return m.table
|
||||
}
|
||||
5
server/internal/baseoverview/internal/model/vars.go
Normal file
5
server/internal/baseoverview/internal/model/vars.go
Normal file
@@ -0,0 +1,5 @@
|
||||
package model
|
||||
|
||||
import "github.com/zeromicro/go-zero/core/stores/sqlx"
|
||||
|
||||
var ErrNotFound = sqlx.ErrNotFound
|
||||
43
server/internal/baseoverview/internal/types/types.go
Normal file
43
server/internal/baseoverview/internal/types/types.go
Normal file
@@ -0,0 +1,43 @@
|
||||
// Code generated by goctl. DO NOT EDIT.
|
||||
// goctl 1.9.2
|
||||
|
||||
package types
|
||||
|
||||
type BaseOverview struct {
|
||||
Id int64 `json:"id"`
|
||||
Introduction string `json:"introduction"` // 基地简介
|
||||
Regulations string `json:"regulations"` // 规章制度
|
||||
Address string `json:"address"` // 联系地址
|
||||
Phone string `json:"phone"` // 联系电话
|
||||
Email string `json:"email"` // 联系邮箱
|
||||
Website string `json:"website"` // 官方网站
|
||||
Director string `json:"director"` // 主任姓名
|
||||
DeputyDirector string `json:"deputy_director"` // 副主任姓名
|
||||
Researchers string `json:"researchers"` // 研究人员(逗号分隔)
|
||||
}
|
||||
|
||||
type GetBaseOverviewReq struct {
|
||||
}
|
||||
|
||||
type GetBaseOverviewResp struct {
|
||||
Data BaseOverview `json:"data"` // 基地概况详情
|
||||
Success bool `json:"success"` // 操作是否成功
|
||||
}
|
||||
|
||||
type UpdateBaseOverviewPartialReq struct {
|
||||
Id int64 `json:"id"`
|
||||
Introduction string `json:"introduction,optional"` // 可选更新
|
||||
Regulations string `json:"regulations,optional"` // 可选更新
|
||||
Address string `json:"address,optional"` // 可选更新
|
||||
Phone string `json:"phone,optional"` // 可选更新
|
||||
Email string `json:"email,optional"` // 可选更新
|
||||
Website string `json:"website,optional"` // 可选更新
|
||||
Director string `json:"director,optional"` // 可选更新
|
||||
DeputyDirector string `json:"deputy_director,optional"` // 可选更新
|
||||
Researchers string `json:"researchers,optional"` // 可选更新
|
||||
}
|
||||
|
||||
type UpdateBaseOverviewPartialResp struct {
|
||||
Success bool `json:"success"`
|
||||
Msg string `json:"msg,omitempty"`
|
||||
}
|
||||
Reference in New Issue
Block a user