Browse Source

Merge branch 'feature/eta2.3.4_business_user' into debug

xyxie 3 months ago
parent
commit
4c581f5195

+ 5 - 2
controllers/sys_role.go

@@ -5,6 +5,7 @@ import (
 	"eta/eta_api/models"
 	"eta/eta_api/models/system"
 	"eta/eta_api/services"
+	"eta/eta_api/services/eta_forum"
 	"eta/eta_api/utils"
 	"fmt"
 	"strconv"
@@ -71,6 +72,8 @@ func (this *SysRoleController) Add() {
 		_ = utils.Rc.LPush(utils.CACHE_SYNC_ROLE, syncData)
 	}
 
+	go eta_forum.RoleSave(int(roleId))
+
 	br.Ret = 200
 	br.Success = true
 	br.Msg = "新增成功"
@@ -144,7 +147,7 @@ func (this *SysRoleController) Edit() {
 		syncData.RoleId = item.RoleId
 		_ = utils.Rc.LPush(utils.CACHE_SYNC_ROLE, syncData)
 	}
-
+	go eta_forum.RoleSave(item.RoleId)
 	br.Ret = 200
 	br.Success = true
 	br.IsAddLog = true
@@ -204,7 +207,7 @@ func (this *SysRoleController) Delete() {
 		syncData.RoleId = role.RoleId
 		_ = utils.Rc.LPush(utils.CACHE_SYNC_ROLE, syncData)
 	}
-
+	go eta_forum.RoleDelete(role.RoleId)
 	br.Ret = 200
 	br.Success = true
 	br.IsAddLog = true

+ 7 - 0
models/system/sys_role.go

@@ -57,6 +57,13 @@ func GetSysRoleById(roleId int) (item *SysRoleItem, err error) {
 	return
 }
 
+func GetRoleInfoById(roleId int) (item *SysRole, err error) {
+	sql := `SELECT * FROM sys_role WHERE role_id=? `
+	o := orm.NewOrm()
+	err = o.Raw(sql, roleId).QueryRow(&item)
+	return
+}
+
 func GetSysRoleByName(roleName string) (item *SysRoleItem, err error) {
 	sql := `SELECT * FROM sys_role WHERE role_name=? `
 	o := orm.NewOrm()

+ 20 - 0
services/eta_forum/eta_forum_hub_lib.go

@@ -120,6 +120,26 @@ func getChartFromUniqueCodeLib(req string) (resp ChartFromUniqueCodeResp, err er
 	return
 }
 
+// RoleSaveLib 上传角色信息
+func RoleSaveLib(req string) (resp *models.BaseResponse, err error) {
+	_, resultByte, err := post(req, "/v1/system/role/save")
+	err = json.Unmarshal(resultByte, &resp)
+	if err != nil {
+		return
+	}
+	return
+}
+
+// RoleDeleteLib 删除角色信息
+func RoleDeleteLib(req string) (resp *models.BaseResponse, err error) {
+	_, resultByte, err := post(req, "/v1/system/role/delete")
+	err = json.Unmarshal(resultByte, &resp)
+	if err != nil {
+		return
+	}
+	return
+}
+
 // post
 func post(paramStr string, urlStr string) (resp *models.BaseResponse, result []byte, err error) {
 	if utils.ETA_FORUM_HUB_URL == "" {

+ 87 - 0
services/eta_forum/system.go

@@ -0,0 +1,87 @@
+package eta_forum
+
+import (
+	"encoding/json"
+	"eta/eta_api/models/system"
+	"eta/eta_api/utils"
+	"fmt"
+)
+
+type RoleSaveReq struct {
+	RoleId       int    `description:"角色ID"`
+	RoleName     string `description:"角色名称"`
+	RoleType     string `description:"角色类型"`
+	RoleTypeCode string `description:"角色类型编码"`
+	CreateTime   string `description:"创建时间"`
+	ModifyTime   string
+	BusinessCode string `description:"商家编码"`
+}
+
+// 上传角色信息
+func RoleSave(roleId int) (err error) {
+	if utils.BusinessCode == "" || (utils.BusinessCode != utils.BusinessCodeRelease && utils.BusinessCode != utils.BusinessCodeDebug && utils.BusinessCode != utils.BusinessCodeSandbox) {
+		return
+	}
+	//查询用户信息
+	roleInfo, err := system.GetRoleInfoById(roleId)
+	if err != nil {
+		if err.Error() == utils.ErrNoRow() {
+			err = fmt.Errorf("用户不存在")
+			return
+		}
+		err = fmt.Errorf("获取用户信息失败,Err:" + err.Error())
+		return
+	}
+	var req RoleSaveReq
+	req.RoleId = roleInfo.RoleId
+	req.RoleName = roleInfo.RoleName
+	req.RoleTypeCode = roleInfo.RoleTypeCode
+	req.RoleType = roleInfo.RoleType
+	req.CreateTime = roleInfo.CreateTime.Format(utils.FormatDateTime)
+	req.ModifyTime = roleInfo.ModifyTime.Format(utils.FormatDateTime)
+	reqJson, err := json.Marshal(req)
+	if err != nil {
+		err = fmt.Errorf("参数解析异常,Err:" + err.Error())
+		return
+	}
+	respItem, err := RoleSaveLib(string(reqJson))
+	if err != nil {
+		err = fmt.Errorf("上传角色信息失败,Err:" + err.Error())
+		return
+	}
+	if respItem.Ret != 200 {
+		err = fmt.Errorf("上传角色信息失败,Err:%v,errMsg:%v", respItem.Msg, respItem.ErrMsg)
+		return
+	}
+	return
+}
+
+type RoleDeleteReq struct {
+	RoleId       int
+	BusinessCode string `description:"商家编码"`
+}
+
+// 删除角色信息
+func RoleDelete(roleId int) (err error) {
+	if utils.BusinessCode == "" || (utils.BusinessCode != utils.BusinessCodeRelease && utils.BusinessCode != utils.BusinessCodeDebug && utils.BusinessCode != utils.BusinessCodeSandbox) {
+		return
+	}
+	var req RoleDeleteReq
+	req.RoleId = roleId
+	req.BusinessCode = utils.BusinessCode
+	reqJson, err := json.Marshal(req)
+	if err != nil {
+		err = fmt.Errorf("参数解析异常,Err:" + err.Error())
+		return
+	}
+	respItem, err := RoleDeleteLib(string(reqJson))
+	if err != nil {
+		err = fmt.Errorf("删除角色信息失败,Err:" + err.Error())
+		return
+	}
+	if respItem.Ret != 200 {
+		err = fmt.Errorf("删除角色信息失败,Err:%v,errMsg:%v", respItem.Msg, respItem.ErrMsg)
+		return
+	}
+	return
+}