Merge branch 'develop' of https://gitee.com/fusenpack/fusenapi into develop
This commit is contained in:
commit
80f0abe037
17
ddl/fs_qrcode_set.sql
Normal file
17
ddl/fs_qrcode_set.sql
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
-- fusentest.fs_qrcode_set definition
|
||||||
|
|
||||||
|
CREATE TABLE `fs_qrcode_set` (
|
||||||
|
`id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT 'id',
|
||||||
|
`name` varchar(25) NOT NULL DEFAULT '' COMMENT '二维码组件名称',
|
||||||
|
`size` smallint(6) NOT NULL DEFAULT '0' COMMENT '二维码内容尺寸',
|
||||||
|
`index_x` smallint(6) NOT NULL DEFAULT '0' COMMENT 'x偏移量',
|
||||||
|
`index_y` smallint(6) NOT NULL DEFAULT '0' COMMENT 'y偏移量',
|
||||||
|
`svg_website` text COMMENT 'website d数据',
|
||||||
|
`svg_instagram` text COMMENT 'svg instagram d数据',
|
||||||
|
`svg_facebook` text COMMENT 'svg facebook d数据',
|
||||||
|
`status` tinyint(1) NOT NULL DEFAULT '0' COMMENT '状态',
|
||||||
|
`admin_id` int(10) NOT NULL DEFAULT '0' COMMENT '操作人',
|
||||||
|
`ctime` int(10) NOT NULL DEFAULT '0' COMMENT '添加时间',
|
||||||
|
`utime` int(10) NOT NULL DEFAULT '0' COMMENT '更新时间',
|
||||||
|
PRIMARY KEY (`id`)
|
||||||
|
) ENGINE=MyISAM AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COMMENT='二维码边框配置表';
|
38
model/fsqrcodesetmodel.go
Executable file
38
model/fsqrcodesetmodel.go
Executable file
|
@ -0,0 +1,38 @@
|
||||||
|
package model
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"fmt"
|
||||||
|
"github.com/zeromicro/go-zero/core/stores/sqlx"
|
||||||
|
)
|
||||||
|
|
||||||
|
var _ FsQrcodeSetModel = (*customFsQrcodeSetModel)(nil)
|
||||||
|
|
||||||
|
type (
|
||||||
|
// FsQrcodeSetModel is an interface to be customized, add more methods here,
|
||||||
|
// and implement the added methods in customFsQrcodeSetModel.
|
||||||
|
FsQrcodeSetModel interface {
|
||||||
|
fsQrcodeSetModel
|
||||||
|
GetAll(ctx context.Context) (resp []FsQrcodeSet, err error)
|
||||||
|
}
|
||||||
|
|
||||||
|
customFsQrcodeSetModel struct {
|
||||||
|
*defaultFsQrcodeSetModel
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
// NewFsQrcodeSetModel returns a model for the database table.
|
||||||
|
func NewFsQrcodeSetModel(conn sqlx.SqlConn) FsQrcodeSetModel {
|
||||||
|
return &customFsQrcodeSetModel{
|
||||||
|
defaultFsQrcodeSetModel: newFsQrcodeSetModel(conn),
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *defaultFsQrcodeSetModel) GetAll(ctx context.Context) (resp []FsQrcodeSet, err error) {
|
||||||
|
query := fmt.Sprintf("select %s from %s where `status` = ?", fsQrcodeSetRows, m.table)
|
||||||
|
err = m.conn.QueryRowsCtx(ctx, &resp, query, 1)
|
||||||
|
if err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
return
|
||||||
|
}
|
94
model/fsqrcodesetmodel_gen.go
Executable file
94
model/fsqrcodesetmodel_gen.go
Executable file
|
@ -0,0 +1,94 @@
|
||||||
|
// Code generated by goctl. DO NOT EDIT.
|
||||||
|
|
||||||
|
package model
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"database/sql"
|
||||||
|
"fmt"
|
||||||
|
"strings"
|
||||||
|
|
||||||
|
"github.com/zeromicro/go-zero/core/stores/builder"
|
||||||
|
"github.com/zeromicro/go-zero/core/stores/sqlc"
|
||||||
|
"github.com/zeromicro/go-zero/core/stores/sqlx"
|
||||||
|
"github.com/zeromicro/go-zero/core/stringx"
|
||||||
|
)
|
||||||
|
|
||||||
|
var (
|
||||||
|
fsQrcodeSetFieldNames = builder.RawFieldNames(&FsQrcodeSet{})
|
||||||
|
fsQrcodeSetRows = strings.Join(fsQrcodeSetFieldNames, ",")
|
||||||
|
fsQrcodeSetRowsExpectAutoSet = strings.Join(stringx.Remove(fsQrcodeSetFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), ",")
|
||||||
|
fsQrcodeSetRowsWithPlaceHolder = strings.Join(stringx.Remove(fsQrcodeSetFieldNames, "`id`", "`create_at`", "`create_time`", "`created_at`", "`update_at`", "`update_time`", "`updated_at`"), "=?,") + "=?"
|
||||||
|
)
|
||||||
|
|
||||||
|
type (
|
||||||
|
fsQrcodeSetModel interface {
|
||||||
|
Insert(ctx context.Context, data *FsQrcodeSet) (sql.Result, error)
|
||||||
|
FindOne(ctx context.Context, id int64) (*FsQrcodeSet, error)
|
||||||
|
Update(ctx context.Context, data *FsQrcodeSet) error
|
||||||
|
Delete(ctx context.Context, id int64) error
|
||||||
|
}
|
||||||
|
|
||||||
|
defaultFsQrcodeSetModel struct {
|
||||||
|
conn sqlx.SqlConn
|
||||||
|
table string
|
||||||
|
}
|
||||||
|
|
||||||
|
FsQrcodeSet struct {
|
||||||
|
Id int64 `db:"id"` // id
|
||||||
|
Name string `db:"name"` // 二维码组件名称
|
||||||
|
Size int64 `db:"size"` // 二维码内容尺寸
|
||||||
|
IndexX int64 `db:"index_x"` // x偏移量
|
||||||
|
IndexY int64 `db:"index_y"` // y偏移量
|
||||||
|
SvgWebsite sql.NullString `db:"svg_website"` // website d数据
|
||||||
|
SvgInstagram sql.NullString `db:"svg_instagram"` // svg instagram d数据
|
||||||
|
SvgFacebook sql.NullString `db:"svg_facebook"` // svg facebook d数据
|
||||||
|
Status int64 `db:"status"` // 状态
|
||||||
|
AdminId int64 `db:"admin_id"` // 操作人
|
||||||
|
Ctime int64 `db:"ctime"` // 添加时间
|
||||||
|
Utime int64 `db:"utime"` // 更新时间
|
||||||
|
}
|
||||||
|
)
|
||||||
|
|
||||||
|
func newFsQrcodeSetModel(conn sqlx.SqlConn) *defaultFsQrcodeSetModel {
|
||||||
|
return &defaultFsQrcodeSetModel{
|
||||||
|
conn: conn,
|
||||||
|
table: "`fs_qrcode_set`",
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *defaultFsQrcodeSetModel) 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 *defaultFsQrcodeSetModel) FindOne(ctx context.Context, id int64) (*FsQrcodeSet, error) {
|
||||||
|
query := fmt.Sprintf("select %s from %s where `id` = ? limit 1", fsQrcodeSetRows, m.table)
|
||||||
|
var resp FsQrcodeSet
|
||||||
|
err := m.conn.QueryRowCtx(ctx, &resp, query, id)
|
||||||
|
switch err {
|
||||||
|
case nil:
|
||||||
|
return &resp, nil
|
||||||
|
case sqlc.ErrNotFound:
|
||||||
|
return nil, ErrNotFound
|
||||||
|
default:
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *defaultFsQrcodeSetModel) Insert(ctx context.Context, data *FsQrcodeSet) (sql.Result, error) {
|
||||||
|
query := fmt.Sprintf("insert into %s (%s) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)", m.table, fsQrcodeSetRowsExpectAutoSet)
|
||||||
|
ret, err := m.conn.ExecCtx(ctx, query, data.Name, data.Size, data.IndexX, data.IndexY, data.SvgWebsite, data.SvgInstagram, data.SvgFacebook, data.Status, data.AdminId, data.Ctime, data.Utime)
|
||||||
|
return ret, err
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *defaultFsQrcodeSetModel) Update(ctx context.Context, data *FsQrcodeSet) error {
|
||||||
|
query := fmt.Sprintf("update %s set %s where `id` = ?", m.table, fsQrcodeSetRowsWithPlaceHolder)
|
||||||
|
_, err := m.conn.ExecCtx(ctx, query, data.Name, data.Size, data.IndexX, data.IndexY, data.SvgWebsite, data.SvgInstagram, data.SvgFacebook, data.Status, data.AdminId, data.Ctime, data.Utime, data.Id)
|
||||||
|
return err
|
||||||
|
}
|
||||||
|
|
||||||
|
func (m *defaultFsQrcodeSetModel) tableName() string {
|
||||||
|
return m.table
|
||||||
|
}
|
|
@ -0,0 +1,27 @@
|
||||||
|
package handler
|
||||||
|
|
||||||
|
import (
|
||||||
|
"errors"
|
||||||
|
"net/http"
|
||||||
|
|
||||||
|
"github.com/zeromicro/go-zero/core/logx"
|
||||||
|
"github.com/zeromicro/go-zero/rest/httpx"
|
||||||
|
|
||||||
|
"fusenapi/server/data-transfer/internal/logic"
|
||||||
|
"fusenapi/server/data-transfer/internal/svc"
|
||||||
|
)
|
||||||
|
|
||||||
|
// 获取二维码配置列表
|
||||||
|
func GetQrCodeSetListHandler(svcCtx *svc.ServiceContext) http.HandlerFunc {
|
||||||
|
return func(w http.ResponseWriter, r *http.Request) {
|
||||||
|
l := logic.NewGetQrCodeSetListLogic(r.Context(), svcCtx)
|
||||||
|
resp := l.GetQrCodeSetList()
|
||||||
|
if resp != nil {
|
||||||
|
httpx.OkJsonCtx(r.Context(), w, resp)
|
||||||
|
} else {
|
||||||
|
err := errors.New("server logic is error, resp must not be nil")
|
||||||
|
httpx.ErrorCtx(r.Context(), w, err)
|
||||||
|
logx.Error(err)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -2,13 +2,14 @@
|
||||||
package handler
|
package handler
|
||||||
|
|
||||||
import (
|
import (
|
||||||
svc2 "fusenapi/server/data-transfer/internal/svc"
|
|
||||||
"net/http"
|
"net/http"
|
||||||
|
|
||||||
|
"fusenapi/server/data-transfer/internal/svc"
|
||||||
|
|
||||||
"github.com/zeromicro/go-zero/rest"
|
"github.com/zeromicro/go-zero/rest"
|
||||||
)
|
)
|
||||||
|
|
||||||
func RegisterHandlers(server *rest.Server, serverCtx *svc2.ServiceContext) {
|
func RegisterHandlers(server *rest.Server, serverCtx *svc.ServiceContext) {
|
||||||
server.AddRoutes(
|
server.AddRoutes(
|
||||||
[]rest.Route{
|
[]rest.Route{
|
||||||
{
|
{
|
||||||
|
@ -16,6 +17,11 @@ func RegisterHandlers(server *rest.Server, serverCtx *svc2.ServiceContext) {
|
||||||
Path: "/standard-logo/list",
|
Path: "/standard-logo/list",
|
||||||
Handler: GetStandardLogoListHandler(serverCtx),
|
Handler: GetStandardLogoListHandler(serverCtx),
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
Method: http.MethodGet,
|
||||||
|
Path: "/qrcode-set/list",
|
||||||
|
Handler: GetQrCodeSetListHandler(serverCtx),
|
||||||
|
},
|
||||||
},
|
},
|
||||||
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
rest.WithJwt(serverCtx.Config.Auth.AccessSecret),
|
||||||
)
|
)
|
||||||
|
|
44
server/data-transfer/internal/logic/getqrcodesetlistlogic.go
Normal file
44
server/data-transfer/internal/logic/getqrcodesetlistlogic.go
Normal file
|
@ -0,0 +1,44 @@
|
||||||
|
package logic
|
||||||
|
|
||||||
|
import (
|
||||||
|
"context"
|
||||||
|
"fusenapi/model"
|
||||||
|
"fusenapi/utils/basic"
|
||||||
|
|
||||||
|
"fusenapi/server/data-transfer/internal/svc"
|
||||||
|
"fusenapi/server/data-transfer/internal/types"
|
||||||
|
|
||||||
|
"github.com/zeromicro/go-zero/core/logx"
|
||||||
|
)
|
||||||
|
|
||||||
|
type GetQrCodeSetListLogic struct {
|
||||||
|
logx.Logger
|
||||||
|
ctx context.Context
|
||||||
|
svcCtx *svc.ServiceContext
|
||||||
|
}
|
||||||
|
|
||||||
|
func NewGetQrCodeSetListLogic(ctx context.Context, svcCtx *svc.ServiceContext) *GetQrCodeSetListLogic {
|
||||||
|
return &GetQrCodeSetListLogic{
|
||||||
|
Logger: logx.WithContext(ctx),
|
||||||
|
ctx: ctx,
|
||||||
|
svcCtx: svcCtx,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取二维码配置列表
|
||||||
|
func (l *GetQrCodeSetListLogic) GetQrCodeSetList() (resp *types.Response) {
|
||||||
|
qrCodeModel := model.NewFsQrcodeSetModel(l.svcCtx.MysqlConn)
|
||||||
|
qrCodeList, err := qrCodeModel.GetAll(l.ctx)
|
||||||
|
if err != nil {
|
||||||
|
logx.Error(err)
|
||||||
|
return resp.SetStatusWithMessage(basic.CodeServiceErr, "failed to get qrcode list")
|
||||||
|
}
|
||||||
|
list := make([]types.GetQrCodeSetListRsp, 0, len(qrCodeList))
|
||||||
|
for _, v := range qrCodeList {
|
||||||
|
list = append(list, types.GetQrCodeSetListRsp{
|
||||||
|
Id: v.Id,
|
||||||
|
Name: v.Name,
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return resp.SetStatusWithMessage(basic.CodeOK, "success", list)
|
||||||
|
}
|
|
@ -11,6 +11,11 @@ type GetStandardLogoListRsp struct {
|
||||||
Url string `json:"url"`
|
Url string `json:"url"`
|
||||||
}
|
}
|
||||||
|
|
||||||
|
type GetQrCodeSetListRsp struct {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
Name string `json:"name"`
|
||||||
|
}
|
||||||
|
|
||||||
type Response struct {
|
type Response struct {
|
||||||
Code int `json:"code"`
|
Code int `json:"code"`
|
||||||
Message string `json:"msg"`
|
Message string `json:"msg"`
|
||||||
|
|
|
@ -15,7 +15,10 @@ import "basic.api"
|
||||||
service data-transfer {
|
service data-transfer {
|
||||||
//获取标准logo列表
|
//获取标准logo列表
|
||||||
@handler GetStandardLogoListHandler
|
@handler GetStandardLogoListHandler
|
||||||
get /standard-logo/list ( ) returns (response);
|
get /standard-logo/list returns (response);
|
||||||
|
//获取二维码设置列表
|
||||||
|
@handler GetQrCodeSetListHandler
|
||||||
|
get /qrcode-set/list returns (response);
|
||||||
}
|
}
|
||||||
|
|
||||||
//获取标准logo列表
|
//获取标准logo列表
|
||||||
|
@ -23,4 +26,9 @@ type GetStandardLogoListRsp {
|
||||||
Id int64 `json:"id"`
|
Id int64 `json:"id"`
|
||||||
Name string `json:"name"`
|
Name string `json:"name"`
|
||||||
Url string `json:"url"`
|
Url string `json:"url"`
|
||||||
|
}
|
||||||
|
//获取二维码设置列表
|
||||||
|
type GetQrCodeSetListRsp {
|
||||||
|
Id int64 `json:"id"`
|
||||||
|
Name string `json:"name"`
|
||||||
}
|
}
|
|
@ -20,7 +20,7 @@ service product {
|
||||||
get /product/success-recommand (GetSuccessRecommandReq) returns (response);
|
get /product/success-recommand (GetSuccessRecommandReq) returns (response);
|
||||||
//获取分类下的产品以及尺寸
|
//获取分类下的产品以及尺寸
|
||||||
@handler GetSizeByProduct
|
@handler GetSizeByProduct
|
||||||
get /product/get-size-by-product () returns (response);
|
get /product/get-size-by-product returns (response);
|
||||||
}
|
}
|
||||||
|
|
||||||
//获取产品列表
|
//获取产品列表
|
||||||
|
|
Loading…
Reference in New Issue
Block a user