|
@@ -9,6 +9,7 @@ import (
|
|
"hongze/hongze_yb/models/tables/yb_community_question_audio"
|
|
"hongze/hongze_yb/models/tables/yb_community_question_audio"
|
|
"hongze/hongze_yb/services/company"
|
|
"hongze/hongze_yb/services/company"
|
|
"hongze/hongze_yb/services/user"
|
|
"hongze/hongze_yb/services/user"
|
|
|
|
+ "hongze/hongze_yb/services/wechat"
|
|
"hongze/hongze_yb/utils"
|
|
"hongze/hongze_yb/utils"
|
|
"strconv"
|
|
"strconv"
|
|
"strings"
|
|
"strings"
|
|
@@ -40,8 +41,8 @@ func GetQuestionList(pageIndex, pageSize, onlyMine, chartPermissionId, replyStat
|
|
condition["user_id ="] = userInfo.UserID
|
|
condition["user_id ="] = userInfo.UserID
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
- // 默认只查看已回复的
|
|
|
|
- condition["reply_status ="] = 2
|
|
|
|
|
|
+ // 默认只展示已回复的
|
|
|
|
+ condition["reply_status ="] = 3
|
|
}
|
|
}
|
|
}
|
|
}
|
|
if chartPermissionId > 0 {
|
|
if chartPermissionId > 0 {
|
|
@@ -69,15 +70,11 @@ func GetQuestionList(pageIndex, pageSize, onlyMine, chartPermissionId, replyStat
|
|
return
|
|
return
|
|
}
|
|
}
|
|
// 用户权限
|
|
// 用户权限
|
|
- _, permissionInfo, permissionIdArr, e := company.CheckBaseFiccPermission(userInfo.CompanyID, int(userInfo.UserID))
|
|
|
|
|
|
+ authOk, permissionInfo, _, e := company.CheckBaseFiccPermission(userInfo.CompanyID, int(userInfo.UserID))
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("获取用户权限失败 Err:" + e.Error())
|
|
err = errors.New("获取用户权限失败 Err:" + e.Error())
|
|
return
|
|
return
|
|
}
|
|
}
|
|
- itemAuthMap := make(map[int]bool)
|
|
|
|
- for _, v := range permissionIdArr {
|
|
|
|
- itemAuthMap[v] = true
|
|
|
|
- }
|
|
|
|
|
|
|
|
userId := int(userInfo.UserID)
|
|
userId := int(userInfo.UserID)
|
|
resp = new(response.CommunityQuestionList)
|
|
resp = new(response.CommunityQuestionList)
|
|
@@ -108,7 +105,8 @@ func GetQuestionList(pageIndex, pageSize, onlyMine, chartPermissionId, replyStat
|
|
IsRead: v.IsRead,
|
|
IsRead: v.IsRead,
|
|
CreateTime: v.CreateTime.Format(utils.FormatDateTime),
|
|
CreateTime: v.CreateTime.Format(utils.FormatDateTime),
|
|
ReplyTime: v.ReplyTime.Format(utils.FormatDateTime),
|
|
ReplyTime: v.ReplyTime.Format(utils.FormatDateTime),
|
|
- AuthOk: itemAuthMap[v.ChartPermissionID],
|
|
|
|
|
|
+ AuthOk: authOk,
|
|
|
|
+ PermissionInfo: permissionInfo,
|
|
AudioList: audios,
|
|
AudioList: audios,
|
|
}
|
|
}
|
|
if !isAdmin && item.IsRead == 0 && item.UserId == userId {
|
|
if !isAdmin && item.IsRead == 0 && item.UserId == userId {
|
|
@@ -117,12 +115,12 @@ func GetQuestionList(pageIndex, pageSize, onlyMine, chartPermissionId, replyStat
|
|
respList = append(respList, item)
|
|
respList = append(respList, item)
|
|
}
|
|
}
|
|
resp.QuestionList = respList
|
|
resp.QuestionList = respList
|
|
- resp.PermissionInfo = permissionInfo
|
|
|
|
|
|
+ //resp.PermissionInfo = permissionInfo
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
// GetQuestionDetail 获取问答详情
|
|
// GetQuestionDetail 获取问答详情
|
|
-func GetQuestionDetail(questionId int) (item *response.CommunityQuestionItem, err error) {
|
|
|
|
|
|
+func GetQuestionDetail(questionId int, userInfo user.UserInfo) (item *response.CommunityQuestionItem, err error) {
|
|
detail, e := yb_community_question.GetItemById(questionId)
|
|
detail, e := yb_community_question.GetItemById(questionId)
|
|
if e != nil {
|
|
if e != nil {
|
|
err = errors.New("获取问题详情失败 Err:" + e.Error())
|
|
err = errors.New("获取问题详情失败 Err:" + e.Error())
|
|
@@ -144,6 +142,12 @@ func GetQuestionDetail(questionId int) (item *response.CommunityQuestionItem, er
|
|
})
|
|
})
|
|
}
|
|
}
|
|
replierRank := fmt.Sprintf("弘则%s研究员", detail.ResearchGroupFirstName)
|
|
replierRank := fmt.Sprintf("弘则%s研究员", detail.ResearchGroupFirstName)
|
|
|
|
+ // 用户权限
|
|
|
|
+ authOk, permissionInfo, _, e := company.CheckBaseFiccPermission(userInfo.CompanyID, int(userInfo.UserID))
|
|
|
|
+ if e != nil {
|
|
|
|
+ err = errors.New("获取用户权限失败 Err:" + e.Error())
|
|
|
|
+ return
|
|
|
|
+ }
|
|
item = &response.CommunityQuestionItem{
|
|
item = &response.CommunityQuestionItem{
|
|
CommunityQuestionID: detail.CommunityQuestionID,
|
|
CommunityQuestionID: detail.CommunityQuestionID,
|
|
UserId: detail.UserID,
|
|
UserId: detail.UserID,
|
|
@@ -151,11 +155,13 @@ func GetQuestionDetail(questionId int) (item *response.CommunityQuestionItem, er
|
|
ReplierRealName: detail.ReplierRealName,
|
|
ReplierRealName: detail.ReplierRealName,
|
|
ReplierRank: replierRank,
|
|
ReplierRank: replierRank,
|
|
ReplierAvatar: detail.ReplierAvatar,
|
|
ReplierAvatar: detail.ReplierAvatar,
|
|
- ChartPermissionID: detail.CommunityQuestionID,
|
|
|
|
|
|
+ ChartPermissionID: detail.ChartPermissionID,
|
|
ChartPermissionName: detail.ChartPermissionName,
|
|
ChartPermissionName: detail.ChartPermissionName,
|
|
IsRead: detail.IsRead,
|
|
IsRead: detail.IsRead,
|
|
CreateTime: detail.CreateTime.Format(utils.FormatDateTime),
|
|
CreateTime: detail.CreateTime.Format(utils.FormatDateTime),
|
|
ReplyTime: detail.ReplyTime.Format(utils.FormatDateTime),
|
|
ReplyTime: detail.ReplyTime.Format(utils.FormatDateTime),
|
|
|
|
+ AuthOk: authOk,
|
|
|
|
+ PermissionInfo: permissionInfo,
|
|
AudioList: audios,
|
|
AudioList: audios,
|
|
}
|
|
}
|
|
return
|
|
return
|
|
@@ -216,9 +222,7 @@ func ReplyUserQuestion(replierId, questionId int, audios []*request.ReplyReqAudi
|
|
return
|
|
return
|
|
}
|
|
}
|
|
// 推送回复消息给用户
|
|
// 推送回复消息给用户
|
|
- go func() {
|
|
|
|
- _ = sendReplyMsg2User()
|
|
|
|
- }()
|
|
|
|
|
|
+ go wechat.SendQuestionReplyWxMsg(item.CommunityQuestionID, item.UserID, item.UserOpenid, item.QuestionContent)
|
|
return
|
|
return
|
|
}
|
|
}
|
|
|
|
|
|
@@ -264,8 +268,3 @@ func GetReplyListTotal(replierUserId int) (resp *response.CommunityReplyTotal, e
|
|
resp.Total = resp.Wait + resp.Replied
|
|
resp.Total = resp.Wait + resp.Replied
|
|
return
|
|
return
|
|
}
|
|
}
|
|
-
|
|
|
|
-// sendReply2User 推送模板消息给用户
|
|
|
|
-func sendReplyMsg2User() (err error) {
|
|
|
|
- return
|
|
|
|
-}
|
|
|