diff --git a/api/desktop/desktop.go b/api/desktop/desktop.go new file mode 100644 index 0000000..e505678 --- /dev/null +++ b/api/desktop/desktop.go @@ -0,0 +1,16 @@ +// ================================================================================= +// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT. +// ================================================================================= + +package desktop + +import ( + "context" + + "server/api/desktop/v1" +) + +type IDesktopV1 interface { + Get(ctx context.Context, req *v1.GetReq) (res *v1.GetRes, err error) + Save(ctx context.Context, req *v1.SaveReq) (res *v1.SaveRes, err error) +} diff --git a/api/desktop/v1/desktop.go b/api/desktop/v1/desktop.go new file mode 100644 index 0000000..21cde8a --- /dev/null +++ b/api/desktop/v1/desktop.go @@ -0,0 +1,22 @@ +package v1 + +import "github.com/gogf/gf/v2/frame/g" + +type GetReq struct { + g.Meta `path:"/desktop" method:"get" tags:"Desktop" summary:"(PC)获取桌面信息"` + StoreId int64 `json:"storeId" v:"required#请选择店铺" dc:"门店id"` +} +type GetRes struct { + TopComponentVisible int `json:"topComponentVisible"` + RightComponentVisible int `json:"rightComponentVisible"` +} + +type SaveReq struct { + g.Meta `path:"/desktop" method:"post" tags:"Desktop" summary:"(PC)保存桌面信息"` + StoreId int64 `json:"storeId" v:"required#请选择店铺" dc:"门店id"` + TopComponentVisible int `json:"topComponentVisible" v:"in:1,2#显示隐藏只能选择1或2"` + RightComponentVisible int `json:"rightComponentVisible" v:"in:1,2#显示隐藏只能选择1或2"` +} +type SaveRes struct { + Success bool `json:"success" dc:"是否成功"` +} diff --git a/api/reward/reward.go b/api/reward/reward.go index 3742e68..f05a17a 100644 --- a/api/reward/reward.go +++ b/api/reward/reward.go @@ -15,4 +15,5 @@ type IRewardV1 interface { Create(ctx context.Context, req *v1.CreateReq) (res *v1.CreateRes, err error) Update(ctx context.Context, req *v1.UpdateReq) (res *v1.UpdateRes, err error) Delete(ctx context.Context, req *v1.DeleteReq) (res *v1.DeleteRes, err error) + Callback(ctx context.Context, req *v1.CallbackReq) (res *v1.CallbackRes, err error) } diff --git a/api/reward/v1/reward.go b/api/reward/v1/reward.go index 9f148cb..ad76b08 100644 --- a/api/reward/v1/reward.go +++ b/api/reward/v1/reward.go @@ -59,3 +59,5 @@ type CallbackReq struct { g.Meta `path:"/reward/callback" method:"post" tags:"Reward" summary:"(tencent)回调"` UserId int64 `json:"userId" v:"required#用户ID不能为空" dc:"用户ID"` } +type CallbackRes struct { +} diff --git a/internal/cmd/cmd.go b/internal/cmd/cmd.go index 99565ac..0abf07e 100644 --- a/internal/cmd/cmd.go +++ b/internal/cmd/cmd.go @@ -7,6 +7,7 @@ import ( "github.com/gogf/gf/v2/os/gcmd" "server/internal/controller/admin" "server/internal/controller/auth" + "server/internal/controller/desktop" "server/internal/controller/feedback" "server/internal/controller/game" "server/internal/controller/merchant" @@ -58,6 +59,7 @@ var ( rewardType.NewV1(), reward.NewV1(), storeTaskReward.NewV1(), + desktop.NewV1(), ) }) }) diff --git a/internal/controller/desktop/desktop.go b/internal/controller/desktop/desktop.go new file mode 100644 index 0000000..a9b5553 --- /dev/null +++ b/internal/controller/desktop/desktop.go @@ -0,0 +1,5 @@ +// ================================================================================= +// This is auto-generated by GoFrame CLI tool only once. Fill this file as you wish. +// ================================================================================= + +package desktop diff --git a/internal/controller/desktop/desktop_new.go b/internal/controller/desktop/desktop_new.go new file mode 100644 index 0000000..cce3935 --- /dev/null +++ b/internal/controller/desktop/desktop_new.go @@ -0,0 +1,15 @@ +// ================================================================================= +// This is auto-generated by GoFrame CLI tool only once. Fill this file as you wish. +// ================================================================================= + +package desktop + +import ( + "server/api/desktop" +) + +type ControllerV1 struct{} + +func NewV1() desktop.IDesktopV1 { + return &ControllerV1{} +} diff --git a/internal/controller/desktop/desktop_v1_get.go b/internal/controller/desktop/desktop_v1_get.go new file mode 100644 index 0000000..4f463bc --- /dev/null +++ b/internal/controller/desktop/desktop_v1_get.go @@ -0,0 +1,19 @@ +package desktop + +import ( + "context" + "server/internal/service" + + "server/api/desktop/v1" +) + +func (c *ControllerV1) Get(ctx context.Context, req *v1.GetReq) (res *v1.GetRes, err error) { + out, err := service.StoreDesktopSetting().Get(ctx, req.StoreId) + if err != nil { + return nil, err + } + return &v1.GetRes{ + RightComponentVisible: out.RightComponentVisible, + TopComponentVisible: out.TopComponentVisible, + }, nil +} diff --git a/internal/controller/desktop/desktop_v1_save.go b/internal/controller/desktop/desktop_v1_save.go new file mode 100644 index 0000000..ac5f4cc --- /dev/null +++ b/internal/controller/desktop/desktop_v1_save.go @@ -0,0 +1,23 @@ +package desktop + +import ( + "context" + "server/internal/model" + "server/internal/service" + + "server/api/desktop/v1" +) + +func (c *ControllerV1) Save(ctx context.Context, req *v1.SaveReq) (res *v1.SaveRes, err error) { + out, err := service.StoreDesktopSetting().Save(ctx, model.SaveDesktopSettingIn{ + RightComponentVisible: req.RightComponentVisible, + StoreId: req.StoreId, + TopComponentVisible: req.TopComponentVisible, + }) + if err != nil { + return nil, err + } + return &v1.SaveRes{ + Success: out.Success, + }, nil +} diff --git a/internal/controller/reward/reward_v1_callback.go b/internal/controller/reward/reward_v1_callback.go new file mode 100644 index 0000000..027001d --- /dev/null +++ b/internal/controller/reward/reward_v1_callback.go @@ -0,0 +1,14 @@ +package reward + +import ( + "context" + + "github.com/gogf/gf/v2/errors/gcode" + "github.com/gogf/gf/v2/errors/gerror" + + "server/api/reward/v1" +) + +func (c *ControllerV1) Callback(ctx context.Context, req *v1.CallbackReq) (res *v1.CallbackRes, err error) { + return nil, gerror.NewCode(gcode.CodeNotImplemented) +} diff --git a/internal/dao/internal/admins.go b/internal/dao/internal/admins.go index dc72d15..7c3f2be 100644 --- a/internal/dao/internal/admins.go +++ b/internal/dao/internal/admins.go @@ -13,10 +13,9 @@ import ( // AdminsDao is the data access object for the table admins. type AdminsDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns AdminsColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns AdminsColumns // columns contains all the column names of Table for convenient usage. } // AdminsColumns defines and stores column names for the table admins. @@ -50,12 +49,11 @@ var adminsColumns = AdminsColumns{ } // NewAdminsDao creates and returns a new DAO object for table data access. -func NewAdminsDao(handlers ...gdb.ModelHandler) *AdminsDao { +func NewAdminsDao() *AdminsDao { return &AdminsDao{ - group: "default", - table: "admins", - columns: adminsColumns, - handlers: handlers, + group: "default", + table: "admins", + columns: adminsColumns, } } @@ -81,11 +79,7 @@ func (dao *AdminsDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *AdminsDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/feedbacks.go b/internal/dao/internal/feedbacks.go index 7a8d085..d67a1e5 100644 --- a/internal/dao/internal/feedbacks.go +++ b/internal/dao/internal/feedbacks.go @@ -13,10 +13,9 @@ import ( // FeedbacksDao is the data access object for the table feedbacks. type FeedbacksDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns FeedbacksColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns FeedbacksColumns // columns contains all the column names of Table for convenient usage. } // FeedbacksColumns defines and stores column names for the table feedbacks. @@ -52,12 +51,11 @@ var feedbacksColumns = FeedbacksColumns{ } // NewFeedbacksDao creates and returns a new DAO object for table data access. -func NewFeedbacksDao(handlers ...gdb.ModelHandler) *FeedbacksDao { +func NewFeedbacksDao() *FeedbacksDao { return &FeedbacksDao{ - group: "default", - table: "feedbacks", - columns: feedbacksColumns, - handlers: handlers, + group: "default", + table: "feedbacks", + columns: feedbacksColumns, } } @@ -83,11 +81,7 @@ func (dao *FeedbacksDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *FeedbacksDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/games.go b/internal/dao/internal/games.go index dac75c7..b53dd54 100644 --- a/internal/dao/internal/games.go +++ b/internal/dao/internal/games.go @@ -13,10 +13,9 @@ import ( // GamesDao is the data access object for the table games. type GamesDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns GamesColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns GamesColumns // columns contains all the column names of Table for convenient usage. } // GamesColumns defines and stores column names for the table games. @@ -46,12 +45,11 @@ var gamesColumns = GamesColumns{ } // NewGamesDao creates and returns a new DAO object for table data access. -func NewGamesDao(handlers ...gdb.ModelHandler) *GamesDao { +func NewGamesDao() *GamesDao { return &GamesDao{ - group: "default", - table: "games", - columns: gamesColumns, - handlers: handlers, + group: "default", + table: "games", + columns: gamesColumns, } } @@ -77,11 +75,7 @@ func (dao *GamesDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *GamesDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/merchant_admins.go b/internal/dao/internal/merchant_admins.go index 64533e1..51ac691 100644 --- a/internal/dao/internal/merchant_admins.go +++ b/internal/dao/internal/merchant_admins.go @@ -13,10 +13,9 @@ import ( // MerchantAdminsDao is the data access object for the table merchant_admins. type MerchantAdminsDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns MerchantAdminsColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns MerchantAdminsColumns // columns contains all the column names of Table for convenient usage. } // MerchantAdminsColumns defines and stores column names for the table merchant_admins. @@ -58,12 +57,11 @@ var merchantAdminsColumns = MerchantAdminsColumns{ } // NewMerchantAdminsDao creates and returns a new DAO object for table data access. -func NewMerchantAdminsDao(handlers ...gdb.ModelHandler) *MerchantAdminsDao { +func NewMerchantAdminsDao() *MerchantAdminsDao { return &MerchantAdminsDao{ - group: "default", - table: "merchant_admins", - columns: merchantAdminsColumns, - handlers: handlers, + group: "default", + table: "merchant_admins", + columns: merchantAdminsColumns, } } @@ -89,11 +87,7 @@ func (dao *MerchantAdminsDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *MerchantAdminsDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/merchants.go b/internal/dao/internal/merchants.go index 717f855..6dd5d05 100644 --- a/internal/dao/internal/merchants.go +++ b/internal/dao/internal/merchants.go @@ -13,10 +13,9 @@ import ( // MerchantsDao is the data access object for the table merchants. type MerchantsDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns MerchantsColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns MerchantsColumns // columns contains all the column names of Table for convenient usage. } // MerchantsColumns defines and stores column names for the table merchants. @@ -72,12 +71,11 @@ var merchantsColumns = MerchantsColumns{ } // NewMerchantsDao creates and returns a new DAO object for table data access. -func NewMerchantsDao(handlers ...gdb.ModelHandler) *MerchantsDao { +func NewMerchantsDao() *MerchantsDao { return &MerchantsDao{ - group: "default", - table: "merchants", - columns: merchantsColumns, - handlers: handlers, + group: "default", + table: "merchants", + columns: merchantsColumns, } } @@ -103,11 +101,7 @@ func (dao *MerchantsDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *MerchantsDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/reward_types.go b/internal/dao/internal/reward_types.go index 30b7375..9d2a944 100644 --- a/internal/dao/internal/reward_types.go +++ b/internal/dao/internal/reward_types.go @@ -13,10 +13,9 @@ import ( // RewardTypesDao is the data access object for the table reward_types. type RewardTypesDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns RewardTypesColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns RewardTypesColumns // columns contains all the column names of Table for convenient usage. } // RewardTypesColumns defines and stores column names for the table reward_types. @@ -46,12 +45,11 @@ var rewardTypesColumns = RewardTypesColumns{ } // NewRewardTypesDao creates and returns a new DAO object for table data access. -func NewRewardTypesDao(handlers ...gdb.ModelHandler) *RewardTypesDao { +func NewRewardTypesDao() *RewardTypesDao { return &RewardTypesDao{ - group: "default", - table: "reward_types", - columns: rewardTypesColumns, - handlers: handlers, + group: "default", + table: "reward_types", + columns: rewardTypesColumns, } } @@ -77,11 +75,7 @@ func (dao *RewardTypesDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *RewardTypesDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/rewards.go b/internal/dao/internal/rewards.go index 89452c7..452fc83 100644 --- a/internal/dao/internal/rewards.go +++ b/internal/dao/internal/rewards.go @@ -13,10 +13,9 @@ import ( // RewardsDao is the data access object for the table rewards. type RewardsDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns RewardsColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns RewardsColumns // columns contains all the column names of Table for convenient usage. } // RewardsColumns defines and stores column names for the table rewards. @@ -54,12 +53,11 @@ var rewardsColumns = RewardsColumns{ } // NewRewardsDao creates and returns a new DAO object for table data access. -func NewRewardsDao(handlers ...gdb.ModelHandler) *RewardsDao { +func NewRewardsDao() *RewardsDao { return &RewardsDao{ - group: "default", - table: "rewards", - columns: rewardsColumns, - handlers: handlers, + group: "default", + table: "rewards", + columns: rewardsColumns, } } @@ -85,11 +83,7 @@ func (dao *RewardsDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *RewardsDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/roles.go b/internal/dao/internal/roles.go index b540549..9eab304 100644 --- a/internal/dao/internal/roles.go +++ b/internal/dao/internal/roles.go @@ -13,10 +13,9 @@ import ( // RolesDao is the data access object for the table roles. type RolesDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns RolesColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns RolesColumns // columns contains all the column names of Table for convenient usage. } // RolesColumns defines and stores column names for the table roles. @@ -48,12 +47,11 @@ var rolesColumns = RolesColumns{ } // NewRolesDao creates and returns a new DAO object for table data access. -func NewRolesDao(handlers ...gdb.ModelHandler) *RolesDao { +func NewRolesDao() *RolesDao { return &RolesDao{ - group: "default", - table: "roles", - columns: rolesColumns, - handlers: handlers, + group: "default", + table: "roles", + columns: rolesColumns, } } @@ -79,11 +77,7 @@ func (dao *RolesDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *RolesDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/store_admins.go b/internal/dao/internal/store_admins.go index 538322c..7bcffcc 100644 --- a/internal/dao/internal/store_admins.go +++ b/internal/dao/internal/store_admins.go @@ -13,10 +13,9 @@ import ( // StoreAdminsDao is the data access object for the table store_admins. type StoreAdminsDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns StoreAdminsColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns StoreAdminsColumns // columns contains all the column names of Table for convenient usage. } // StoreAdminsColumns defines and stores column names for the table store_admins. @@ -58,12 +57,11 @@ var storeAdminsColumns = StoreAdminsColumns{ } // NewStoreAdminsDao creates and returns a new DAO object for table data access. -func NewStoreAdminsDao(handlers ...gdb.ModelHandler) *StoreAdminsDao { +func NewStoreAdminsDao() *StoreAdminsDao { return &StoreAdminsDao{ - group: "default", - table: "store_admins", - columns: storeAdminsColumns, - handlers: handlers, + group: "default", + table: "store_admins", + columns: storeAdminsColumns, } } @@ -89,11 +87,7 @@ func (dao *StoreAdminsDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *StoreAdminsDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/store_desktop_settings.go b/internal/dao/internal/store_desktop_settings.go index 600d641..dec1ba9 100644 --- a/internal/dao/internal/store_desktop_settings.go +++ b/internal/dao/internal/store_desktop_settings.go @@ -13,45 +13,31 @@ import ( // StoreDesktopSettingsDao is the data access object for the table store_desktop_settings. type StoreDesktopSettingsDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns StoreDesktopSettingsColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns StoreDesktopSettingsColumns // columns contains all the column names of Table for convenient usage. } // StoreDesktopSettingsColumns defines and stores column names for the table store_desktop_settings. type StoreDesktopSettingsColumns struct { - Id string // 主键ID - StoreId string // 门店ID - BackgroundUrl string // 桌面背景图片URL - Resolution string // 分辨率,例如1920x1080 - IsTopWidgetVisible string // 顶部组件是否显示:FALSE=隐藏,TRUE=显示 - IsRightWidgetVisible string // 右侧组件是否显示:FALSE=隐藏,TRUE=显示 - CreatedAt string // 创建时间 - UpdatedAt string // 更新时间 - DeletedAt string // 软删除时间戳 + StoreId string // + TopComponentVisible string // 1显示,2 隐藏 + RightComponentVisible string // 1显示,2 隐藏 } // storeDesktopSettingsColumns holds the columns for the table store_desktop_settings. var storeDesktopSettingsColumns = StoreDesktopSettingsColumns{ - Id: "id", - StoreId: "store_id", - BackgroundUrl: "background_url", - Resolution: "resolution", - IsTopWidgetVisible: "is_top_widget_visible", - IsRightWidgetVisible: "is_right_widget_visible", - CreatedAt: "created_at", - UpdatedAt: "updated_at", - DeletedAt: "deleted_at", + StoreId: "store_id", + TopComponentVisible: "top_component_visible", + RightComponentVisible: "right_component_visible", } // NewStoreDesktopSettingsDao creates and returns a new DAO object for table data access. -func NewStoreDesktopSettingsDao(handlers ...gdb.ModelHandler) *StoreDesktopSettingsDao { +func NewStoreDesktopSettingsDao() *StoreDesktopSettingsDao { return &StoreDesktopSettingsDao{ - group: "default", - table: "store_desktop_settings", - columns: storeDesktopSettingsColumns, - handlers: handlers, + group: "default", + table: "store_desktop_settings", + columns: storeDesktopSettingsColumns, } } @@ -77,11 +63,7 @@ func (dao *StoreDesktopSettingsDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *StoreDesktopSettingsDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/store_roles.go b/internal/dao/internal/store_roles.go index 137e1fa..8528459 100644 --- a/internal/dao/internal/store_roles.go +++ b/internal/dao/internal/store_roles.go @@ -13,10 +13,9 @@ import ( // StoreRolesDao is the data access object for the table store_roles. type StoreRolesDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns StoreRolesColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns StoreRolesColumns // columns contains all the column names of Table for convenient usage. } // StoreRolesColumns defines and stores column names for the table store_roles. @@ -40,12 +39,11 @@ var storeRolesColumns = StoreRolesColumns{ } // NewStoreRolesDao creates and returns a new DAO object for table data access. -func NewStoreRolesDao(handlers ...gdb.ModelHandler) *StoreRolesDao { +func NewStoreRolesDao() *StoreRolesDao { return &StoreRolesDao{ - group: "default", - table: "store_roles", - columns: storeRolesColumns, - handlers: handlers, + group: "default", + table: "store_roles", + columns: storeRolesColumns, } } @@ -71,11 +69,7 @@ func (dao *StoreRolesDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *StoreRolesDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/store_task_rewards.go b/internal/dao/internal/store_task_rewards.go index 7c7ab6a..6ebbe54 100644 --- a/internal/dao/internal/store_task_rewards.go +++ b/internal/dao/internal/store_task_rewards.go @@ -13,10 +13,9 @@ import ( // StoreTaskRewardsDao is the data access object for the table store_task_rewards. type StoreTaskRewardsDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns StoreTaskRewardsColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns StoreTaskRewardsColumns // columns contains all the column names of Table for convenient usage. } // StoreTaskRewardsColumns defines and stores column names for the table store_task_rewards. @@ -42,12 +41,11 @@ var storeTaskRewardsColumns = StoreTaskRewardsColumns{ } // NewStoreTaskRewardsDao creates and returns a new DAO object for table data access. -func NewStoreTaskRewardsDao(handlers ...gdb.ModelHandler) *StoreTaskRewardsDao { +func NewStoreTaskRewardsDao() *StoreTaskRewardsDao { return &StoreTaskRewardsDao{ - group: "default", - table: "store_task_rewards", - columns: storeTaskRewardsColumns, - handlers: handlers, + group: "default", + table: "store_task_rewards", + columns: storeTaskRewardsColumns, } } @@ -73,11 +71,7 @@ func (dao *StoreTaskRewardsDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *StoreTaskRewardsDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/stores.go b/internal/dao/internal/stores.go index 69ed619..8bbdc42 100644 --- a/internal/dao/internal/stores.go +++ b/internal/dao/internal/stores.go @@ -13,10 +13,9 @@ import ( // StoresDao is the data access object for the table stores. type StoresDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns StoresColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns StoresColumns // columns contains all the column names of Table for convenient usage. } // StoresColumns defines and stores column names for the table stores. @@ -52,12 +51,11 @@ var storesColumns = StoresColumns{ } // NewStoresDao creates and returns a new DAO object for table data access. -func NewStoresDao(handlers ...gdb.ModelHandler) *StoresDao { +func NewStoresDao() *StoresDao { return &StoresDao{ - group: "default", - table: "stores", - columns: storesColumns, - handlers: handlers, + group: "default", + table: "stores", + columns: storesColumns, } } @@ -83,11 +81,7 @@ func (dao *StoresDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *StoresDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/tasks.go b/internal/dao/internal/tasks.go index dfd5153..526632b 100644 --- a/internal/dao/internal/tasks.go +++ b/internal/dao/internal/tasks.go @@ -13,10 +13,9 @@ import ( // TasksDao is the data access object for the table tasks. type TasksDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns TasksColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns TasksColumns // columns contains all the column names of Table for convenient usage. } // TasksColumns defines and stores column names for the table tasks. @@ -58,12 +57,11 @@ var tasksColumns = TasksColumns{ } // NewTasksDao creates and returns a new DAO object for table data access. -func NewTasksDao(handlers ...gdb.ModelHandler) *TasksDao { +func NewTasksDao() *TasksDao { return &TasksDao{ - group: "default", - table: "tasks", - columns: tasksColumns, - handlers: handlers, + group: "default", + table: "tasks", + columns: tasksColumns, } } @@ -89,11 +87,7 @@ func (dao *TasksDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *TasksDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/user_tasks.go b/internal/dao/internal/user_tasks.go index 257329e..69ac1d3 100644 --- a/internal/dao/internal/user_tasks.go +++ b/internal/dao/internal/user_tasks.go @@ -13,10 +13,9 @@ import ( // UserTasksDao is the data access object for the table user_tasks. type UserTasksDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns UserTasksColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns UserTasksColumns // columns contains all the column names of Table for convenient usage. } // UserTasksColumns defines and stores column names for the table user_tasks. @@ -52,12 +51,11 @@ var userTasksColumns = UserTasksColumns{ } // NewUserTasksDao creates and returns a new DAO object for table data access. -func NewUserTasksDao(handlers ...gdb.ModelHandler) *UserTasksDao { +func NewUserTasksDao() *UserTasksDao { return &UserTasksDao{ - group: "default", - table: "user_tasks", - columns: userTasksColumns, - handlers: handlers, + group: "default", + table: "user_tasks", + columns: userTasksColumns, } } @@ -83,11 +81,7 @@ func (dao *UserTasksDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *UserTasksDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/dao/internal/users.go b/internal/dao/internal/users.go index 340eaf7..c5aa79d 100644 --- a/internal/dao/internal/users.go +++ b/internal/dao/internal/users.go @@ -13,10 +13,9 @@ import ( // UsersDao is the data access object for the table users. type UsersDao struct { - table string // table is the underlying table name of the DAO. - group string // group is the database configuration group name of the current DAO. - columns UsersColumns // columns contains all the column names of Table for convenient usage. - handlers []gdb.ModelHandler // handlers for customized model modification. + table string // table is the underlying table name of the DAO. + group string // group is the database configuration group name of the current DAO. + columns UsersColumns // columns contains all the column names of Table for convenient usage. } // UsersColumns defines and stores column names for the table users. @@ -60,12 +59,11 @@ var usersColumns = UsersColumns{ } // NewUsersDao creates and returns a new DAO object for table data access. -func NewUsersDao(handlers ...gdb.ModelHandler) *UsersDao { +func NewUsersDao() *UsersDao { return &UsersDao{ - group: "default", - table: "users", - columns: usersColumns, - handlers: handlers, + group: "default", + table: "users", + columns: usersColumns, } } @@ -91,11 +89,7 @@ func (dao *UsersDao) Group() string { // Ctx creates and returns a Model for the current DAO. It automatically sets the context for the current operation. func (dao *UsersDao) Ctx(ctx context.Context) *gdb.Model { - model := dao.DB().Model(dao.table) - for _, handler := range dao.handlers { - model = handler(model) - } - return model.Safe().Ctx(ctx) + return dao.DB().Model(dao.table).Safe().Ctx(ctx) } // Transaction wraps the transaction logic using function f. diff --git a/internal/logic/logic.go b/internal/logic/logic.go index dac7aa8..9d12884 100644 --- a/internal/logic/logic.go +++ b/internal/logic/logic.go @@ -15,6 +15,7 @@ import ( _ "server/internal/logic/role" _ "server/internal/logic/store" _ "server/internal/logic/storeAdmin" + _ "server/internal/logic/storeDesktopSetting" _ "server/internal/logic/storeRole" _ "server/internal/logic/storeTaskReward" _ "server/internal/logic/task" diff --git a/internal/logic/store/store.go b/internal/logic/store/store.go index a355312..c730dd3 100644 --- a/internal/logic/store/store.go +++ b/internal/logic/store/store.go @@ -173,57 +173,3 @@ func (s *sStore) GetDesktopSetting(ctx context.Context, in *model.StoreGetDeskto return out, nil } - -func (s *sStore) SaveDesktopSetting(ctx context.Context, in *model.SaveDesktopSettingIn) (*model.SaveDesktopSettingOut, error) { - out := &model.SaveDesktopSettingOut{} - err := dao.StoreDesktopSettings.Transaction(ctx, func(ctx context.Context, tx gdb.TX) error { - // 构建数据,包含所有字段 - data := do.StoreDesktopSettings{ - Id: in.Id, - StoreId: in.StoreId, - BackgroundUrl: in.BackgroundUrl, - Resolution: in.Resolution, - IsTopWidgetVisible: in.IsTopWidgetVisible, - IsRightWidgetVisible: in.IsRightWidgetVisible, - } - - // 检查记录是否存在(基于 store_id) - exist, err := dao.StoreDesktopSettings.Ctx(ctx).TX(tx).Where(do.StoreDesktopSettings{StoreId: in.StoreId}).Count() - if err != nil { - return gerror.Wrap(ecode.Fail, "检查门店桌面设置失败") - } - - if exist == 0 { - // 新增 - result, err := dao.StoreDesktopSettings.Ctx(ctx).TX(tx).Data(data).Insert() - if err != nil { - return gerror.Wrap(ecode.Fail, "新增门店桌面设置失败") - } - id, err := result.LastInsertId() - if err != nil { - return gerror.Wrap(ecode.Fail, "获取新增记录ID失败") - } - out.Id = id - } else { - // 更新(如果提供了 Id,则优先使用 Id 作为条件,否则使用 StoreId) - updateWhere := do.StoreDesktopSettings{StoreId: in.StoreId} - if in.Id > 0 { - updateWhere = do.StoreDesktopSettings{Id: in.Id} - } - _, err := dao.StoreDesktopSettings.Ctx(ctx).TX(tx).Data(data).Where(updateWhere).Update() - if err != nil { - return gerror.Wrap(ecode.Fail, "更新门店桌面设置失败") - } - id, err := dao.StoreDesktopSettings.Ctx(ctx).TX(tx).Where(updateWhere).Fields(dao.StoreDesktopSettings.Columns().Id).Value() - if err != nil { - return gerror.Wrap(ecode.Fail, "获取更新记录ID失败") - } - out.Id = id.Int64() - } - return nil - }) - if err != nil { - return nil, err - } - return out, nil -} diff --git a/internal/logic/storeDesktopSetting/storeDesktopSetting.go b/internal/logic/storeDesktopSetting/storeDesktopSetting.go new file mode 100644 index 0000000..65df2a6 --- /dev/null +++ b/internal/logic/storeDesktopSetting/storeDesktopSetting.go @@ -0,0 +1,66 @@ +package storeDesktopSetting + +import ( + "context" + "github.com/gogf/gf/v2/errors/gerror" + "server/internal/dao" + "server/internal/model" + "server/internal/model/do" + "server/internal/service" +) + +type sStoreDesktopSetting struct { +} + +func New() service.IStoreDesktopSetting { + return &sStoreDesktopSetting{} +} +func init() { + service.RegisterStoreDesktopSetting(New()) +} +func (s *sStoreDesktopSetting) Get(ctx context.Context, storeId int64) (out *model.StoreDesktopSettings, err error) { + value, err := dao.StoreDesktopSettings.Ctx(ctx).Where(do.StoreDesktopSettings{StoreId: storeId}).One() + if err != nil { + return nil, err + } + // 为空创建一条记录,组件都展示;反之返回对应数据 + if value.IsEmpty() { + out = &model.StoreDesktopSettings{ + RightComponentVisible: 1, + TopComponentVisible: 1, + } + _, err := dao.StoreDesktopSettings.Ctx(ctx).Insert(do.StoreDesktopSettings{ + RightComponentVisible: out.RightComponentVisible, + StoreId: storeId, + TopComponentVisible: out.TopComponentVisible, + }) + if err != nil { + return nil, err + } + return out, nil + } else { + out = &model.StoreDesktopSettings{} + err := value.Struct(out) + if err != nil { + return nil, err + } + return out, nil + } +} + +func (s *sStoreDesktopSetting) Save(ctx context.Context, in model.SaveDesktopSettingIn) (out *model.SaveDesktopSettingOut, err error) { + if in.TopComponentVisible == 2 && in.RightComponentVisible == 2 { + return nil, gerror.New("请至少选择一个组件") + } + + _, err = dao.StoreDesktopSettings.Ctx(ctx).Where(do.StoreDesktopSettings{StoreId: in.StoreId}).Update(do.StoreDesktopSettings{ + RightComponentVisible: in.RightComponentVisible, + TopComponentVisible: in.TopComponentVisible, + }) + if err != nil { + return nil, err + } + return &model.SaveDesktopSettingOut{ + Success: true, + }, nil +} diff --git a/internal/model/do/store_desktop_settings.go b/internal/model/do/store_desktop_settings.go index 28132b0..a754c4a 100644 --- a/internal/model/do/store_desktop_settings.go +++ b/internal/model/do/store_desktop_settings.go @@ -6,19 +6,12 @@ package do import ( "github.com/gogf/gf/v2/frame/g" - "github.com/gogf/gf/v2/os/gtime" ) // StoreDesktopSettings is the golang structure of table store_desktop_settings for DAO operations like Where/Data. type StoreDesktopSettings struct { - g.Meta `orm:"table:store_desktop_settings, do:true"` - Id interface{} // 主键ID - StoreId interface{} // 门店ID - BackgroundUrl interface{} // 桌面背景图片URL - Resolution interface{} // 分辨率,例如1920x1080 - IsTopWidgetVisible interface{} // 顶部组件是否显示:FALSE=隐藏,TRUE=显示 - IsRightWidgetVisible interface{} // 右侧组件是否显示:FALSE=隐藏,TRUE=显示 - CreatedAt *gtime.Time // 创建时间 - UpdatedAt *gtime.Time // 更新时间 - DeletedAt *gtime.Time // 软删除时间戳 + g.Meta `orm:"table:store_desktop_settings, do:true"` + StoreId interface{} // + TopComponentVisible interface{} // 1显示,2 隐藏 + RightComponentVisible interface{} // 1显示,2 隐藏 } diff --git a/internal/model/entity/store_desktop_settings.go b/internal/model/entity/store_desktop_settings.go index 0b679d5..ce9244d 100644 --- a/internal/model/entity/store_desktop_settings.go +++ b/internal/model/entity/store_desktop_settings.go @@ -4,19 +4,9 @@ package entity -import ( - "github.com/gogf/gf/v2/os/gtime" -) - // StoreDesktopSettings is the golang structure for table store_desktop_settings. type StoreDesktopSettings struct { - Id int64 `json:"id" orm:"id" description:"主键ID"` // 主键ID - StoreId int64 `json:"storeId" orm:"store_id" description:"门店ID"` // 门店ID - BackgroundUrl string `json:"backgroundUrl" orm:"background_url" description:"桌面背景图片URL"` // 桌面背景图片URL - Resolution string `json:"resolution" orm:"resolution" description:"分辨率,例如1920x1080"` // 分辨率,例如1920x1080 - IsTopWidgetVisible int `json:"isTopWidgetVisible" orm:"is_top_widget_visible" description:"顶部组件是否显示:FALSE=隐藏,TRUE=显示"` // 顶部组件是否显示:FALSE=隐藏,TRUE=显示 - IsRightWidgetVisible int `json:"isRightWidgetVisible" orm:"is_right_widget_visible" description:"右侧组件是否显示:FALSE=隐藏,TRUE=显示"` // 右侧组件是否显示:FALSE=隐藏,TRUE=显示 - CreatedAt *gtime.Time `json:"createdAt" orm:"created_at" description:"创建时间"` // 创建时间 - UpdatedAt *gtime.Time `json:"updatedAt" orm:"updated_at" description:"更新时间"` // 更新时间 - DeletedAt *gtime.Time `json:"deletedAt" orm:"deleted_at" description:"软删除时间戳"` // 软删除时间戳 + StoreId int64 `json:"storeId" orm:"store_id" description:""` // + TopComponentVisible int `json:"topComponentVisible" orm:"top_component_visible" description:"1显示,2 隐藏"` // 1显示,2 隐藏 + RightComponentVisible int `json:"rightComponentVisible" orm:"right_component_visible" description:"1显示,2 隐藏"` // 1显示,2 隐藏 } diff --git a/internal/model/storeDesktopSetting.go b/internal/model/storeDesktopSetting.go index bf4b1fb..2eae48b 100644 --- a/internal/model/storeDesktopSetting.go +++ b/internal/model/storeDesktopSetting.go @@ -3,13 +3,10 @@ package model import "github.com/gogf/gf/v2/frame/g" type StoreDesktopSettings struct { - g.Meta `orm:"table:store_desktop_settings"` - Id int64 `orm:"id" json:"id"` // 主键ID - StoreId int64 `orm:"store_id" json:"store_id"` // 门店ID - BackgroundUrl string `orm:"background_url" json:"background_url"` // 桌面背景图片URL - Resolution string `orm:"resolution" json:"resolution"` // 分辨率,例如1920x1080 - IsTopWidgetVisible bool `orm:"is_top_widget_visible" json:"is_top_widget_visible"` // 顶部组件是否显示:FALSE=隐藏,TRUE=显示 - IsRightWidgetVisible bool `orm:"is_right_widget_visible" json:"is_right_widget_visible"` // 右侧组件是否显示:FALSE=隐藏,TRUE=显示 + g.Meta `orm:"table:store_desktop_settings"` + StoreId int64 `json:"storeId" orm:"store_id" description:""` // + TopComponentVisible int `json:"topComponentVisible" orm:"top_component_visible" description:"1显示,2 隐藏"` // 1显示,2 隐藏 + RightComponentVisible int `json:"rightComponentVisible" orm:"right_component_visible" description:"1显示,2 隐藏"` // 1显示,2 隐藏 } type StoreGetDesktopSettingIn struct { @@ -22,13 +19,10 @@ type StoreGetDesktopSettingOut struct { } type SaveDesktopSettingIn struct { - Id int64 - StoreId int64 - BackgroundUrl string - Resolution string - IsTopWidgetVisible bool - IsRightWidgetVisible bool + StoreId int64 + TopComponentVisible int // 1显示,2 隐藏 + RightComponentVisible int // 1显示,2 隐藏 } type SaveDesktopSettingOut struct { - Id int64 + Success bool } diff --git a/internal/service/store.go b/internal/service/store.go index c80a1da..cf7f093 100644 --- a/internal/service/store.go +++ b/internal/service/store.go @@ -18,7 +18,6 @@ type ( Delete(ctx context.Context, in *model.StoreDeleteIn) (out *model.DeleteOut, err error) Info(ctx context.Context, in *model.StoreInfoIn) (out *model.StoreInfoOut, err error) GetDesktopSetting(ctx context.Context, in *model.StoreGetDesktopSettingIn) (*model.StoreGetDesktopSettingOut, error) - SaveDesktopSetting(ctx context.Context, in *model.SaveDesktopSettingIn) (*model.SaveDesktopSettingOut, error) } ) diff --git a/internal/service/store_desktop_setting.go b/internal/service/store_desktop_setting.go new file mode 100644 index 0000000..82e1d57 --- /dev/null +++ b/internal/service/store_desktop_setting.go @@ -0,0 +1,33 @@ +// ================================================================================ +// Code generated and maintained by GoFrame CLI tool. DO NOT EDIT. +// You can delete these comments if you wish manually maintain this interface file. +// ================================================================================ + +package service + +import ( + "context" + "server/internal/model" +) + +type ( + IStoreDesktopSetting interface { + Get(ctx context.Context, storeId int64) (out *model.StoreDesktopSettings, err error) + Save(ctx context.Context, in model.SaveDesktopSettingIn) (out *model.SaveDesktopSettingOut, err error) + } +) + +var ( + localStoreDesktopSetting IStoreDesktopSetting +) + +func StoreDesktopSetting() IStoreDesktopSetting { + if localStoreDesktopSetting == nil { + panic("implement not found for interface IStoreDesktopSetting, forgot register?") + } + return localStoreDesktopSetting +} + +func RegisterStoreDesktopSetting(i IStoreDesktopSetting) { + localStoreDesktopSetting = i +} diff --git a/utility/myCasbin/casbin.go b/utility/myCasbin/casbin.go index 5e0326c..251c218 100644 --- a/utility/myCasbin/casbin.go +++ b/utility/myCasbin/casbin.go @@ -112,6 +112,10 @@ func init() { enforcer.AddPolicy("store", "/x/store/admin/*", "DELETE", "删除门店管理员") enforcer.AddPolicy("store", "/x/store/admin/password", "POST", "修改门店管理员密码") + // 门店桌面设置 + enforcer.AddPolicy("store", "/x/desktop", "GET", "获取门店桌面设置") + enforcer.AddPolicy("store", "/x/desktop", "POST", "修改门店桌面设置") + } // 商户 {