|
|
@@ -0,0 +1,156 @@ |
|
|
|
package module_setting |
|
|
|
|
|
|
|
import ( |
|
|
|
"applet/app/db" |
|
|
|
"applet/app/e" |
|
|
|
"applet/app/md/institutional_management/module_setting" |
|
|
|
"applet/app/utils" |
|
|
|
"code.fnuoos.com/EggPlanet/egg_models.git/src/implement" |
|
|
|
"code.fnuoos.com/EggPlanet/egg_models.git/src/model" |
|
|
|
"errors" |
|
|
|
"github.com/gin-gonic/gin" |
|
|
|
"time" |
|
|
|
) |
|
|
|
|
|
|
|
// ModuleSettingGet |
|
|
|
// @Summary 制度中心-模块设置-个性化设置(获取) |
|
|
|
// @Tags 模块设置 |
|
|
|
// @Description 个性化设置(获取) |
|
|
|
// @Accept json |
|
|
|
// @Produce json |
|
|
|
// @param Authorization header string true "验证参数Bearer和token空格拼接" |
|
|
|
// @Param mod_name_value query string true "模块类型值" |
|
|
|
// @Success 200 {object} md.ModuleSettingGetResp "具体数据" |
|
|
|
// @Failure 400 {object} md.Response "具体错误" |
|
|
|
// @Router /api/institutionalManagement/moduleSetting/getModuleSetting [GET] |
|
|
|
func ModuleSettingGet(c *gin.Context) { |
|
|
|
modNameValue := c.DefaultQuery("mod_name_value", "1") |
|
|
|
modNameList := []map[string]interface{}{ |
|
|
|
{ |
|
|
|
"mod_name": "home_page", |
|
|
|
"value": "1", |
|
|
|
}, |
|
|
|
{ |
|
|
|
"mod_name": "member_center", |
|
|
|
"value": "2", |
|
|
|
}, |
|
|
|
{ |
|
|
|
"mod_name": "bottom_bar", |
|
|
|
"value": "3", |
|
|
|
}, |
|
|
|
{ |
|
|
|
"mod_name": "invitation_download_landing_page", |
|
|
|
"value": "4", |
|
|
|
}, |
|
|
|
{ |
|
|
|
"mod_name": "invitation_poster", |
|
|
|
"value": "5", |
|
|
|
}, |
|
|
|
} |
|
|
|
modNameMap := map[string]string{ |
|
|
|
"1": "home_page", |
|
|
|
"2": "member_center", |
|
|
|
"3": "bottom_bar", |
|
|
|
"4": "invitation_download_landing_page", |
|
|
|
"5": "invitation_poster", |
|
|
|
} |
|
|
|
moduleStyleDb := implement.NewModuleStyleDb(db.Db) |
|
|
|
var moduleStyle *model.ModuleStyle |
|
|
|
var err error |
|
|
|
moduleStyle, err = moduleStyleDb.ModuleStyleGetOneByParams(map[string]interface{}{ |
|
|
|
"key": "mod_name", |
|
|
|
"value": modNameMap[modNameValue], |
|
|
|
}) |
|
|
|
|
|
|
|
if err != nil { |
|
|
|
e.OutErr(c, e.ERR_DB_ORM, err.Error()) |
|
|
|
return |
|
|
|
} |
|
|
|
var dataMap map[string]interface{} |
|
|
|
if moduleStyle == nil { |
|
|
|
now := time.Now() |
|
|
|
m := model.ModuleStyle{ |
|
|
|
ModName: modNameMap[modNameValue], |
|
|
|
Position: modNameMap[modNameValue], |
|
|
|
SkipIdentifier: "", |
|
|
|
Title: "主标题", |
|
|
|
Subtitle: "子标题", |
|
|
|
Data: utils.SerializeStr(dataMap), |
|
|
|
CreateAt: now.Format("2006-01-02 15:04:05"), |
|
|
|
} |
|
|
|
_, err = moduleStyleDb.ModuleStyleInsert(&m) |
|
|
|
if err != nil { |
|
|
|
e.OutErr(c, e.ERR_DB_ORM, err.Error()) |
|
|
|
return |
|
|
|
} |
|
|
|
moduleStyle, err = moduleStyleDb.ModuleStyleGetOneByParams(map[string]interface{}{ |
|
|
|
"key": "mod_name", |
|
|
|
"value": modNameMap[modNameValue], |
|
|
|
}) |
|
|
|
if err != nil { |
|
|
|
e.OutErr(c, e.ERR_DB_ORM, err.Error()) |
|
|
|
return |
|
|
|
} |
|
|
|
} |
|
|
|
utils.Unserialize([]byte(moduleStyle.Data), &dataMap) |
|
|
|
|
|
|
|
resp := md.ModuleSettingGetResp{ |
|
|
|
ModNameList: modNameList, |
|
|
|
ModName: moduleStyle.ModName, |
|
|
|
Position: moduleStyle.Position, |
|
|
|
SkipIdentifier: moduleStyle.SkipIdentifier, |
|
|
|
Title: moduleStyle.Title, |
|
|
|
Subtitle: moduleStyle.Subtitle, |
|
|
|
Data: dataMap, |
|
|
|
} |
|
|
|
|
|
|
|
e.OutSuc(c, resp, nil) |
|
|
|
} |
|
|
|
|
|
|
|
// ModuleSettingUpdate |
|
|
|
// @Summary 制度中心-模块设置-个性化设置(更新) |
|
|
|
// @Tags 模块设置 |
|
|
|
// @Description 个性化设置(更新) |
|
|
|
// @Accept json |
|
|
|
// @Produce json |
|
|
|
// @param Authorization header string true "验证参数Bearer和token空格拼接" |
|
|
|
// @Param req body md.ModuleSettingUpdateReq true "模块类型值必填" |
|
|
|
// @Success 200 {int} "修改数据条数" |
|
|
|
// @Failure 400 {object} md.Response "具体错误" |
|
|
|
// @Router /api/institutionalManagement/moduleSetting/updateModuleSetting [POST] |
|
|
|
func ModuleSettingUpdate(c *gin.Context) { |
|
|
|
var req *md.ModuleSettingUpdateReq |
|
|
|
if err1 := c.ShouldBindJSON(&req); err1 != nil { |
|
|
|
e.OutErr(c, e.ERR_INVALID_ARGS, err1.Error()) |
|
|
|
return |
|
|
|
} |
|
|
|
|
|
|
|
modNameMap := map[string]string{ |
|
|
|
"1": "home_page", |
|
|
|
"2": "member_center", |
|
|
|
"3": "bottom_bar", |
|
|
|
"4": "invitation_download_landing_page", |
|
|
|
"5": "invitation_poster", |
|
|
|
} |
|
|
|
moduleStyleDb := implement.NewModuleStyleDb(db.Db) |
|
|
|
moduleStyle, err := moduleStyleDb.ModuleStyleGetOneByParams(map[string]interface{}{ |
|
|
|
"key": "mod_name", |
|
|
|
"value": modNameMap[req.ModNameValue], |
|
|
|
}) |
|
|
|
if moduleStyle == nil { |
|
|
|
e.OutErr(c, e.ERR_NO_DATA, errors.New("不存在该页面")) |
|
|
|
return |
|
|
|
} |
|
|
|
forceColumns := []string{"title", "subtitle", "data"} |
|
|
|
moduleStyle.Title = req.Title |
|
|
|
moduleStyle.Subtitle = req.Subtitle |
|
|
|
moduleStyle.Position = req.Position |
|
|
|
moduleStyle.Data = utils.SerializeStr(req.Data) |
|
|
|
|
|
|
|
affected, err := moduleStyleDb.ModuleStyleUpdate(moduleStyle.ModId, moduleStyle, forceColumns...) |
|
|
|
if err != nil { |
|
|
|
e.OutErr(c, e.ERR_DB_ORM, err.Error()) |
|
|
|
return |
|
|
|
} |
|
|
|
e.OutSuc(c, affected, nil) |
|
|
|
} |