123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130 |
- package controllers
- import (
- "encoding/json"
- "fmt"
- "hongze/hongze_mobile_admin/models/response/message"
- "hongze/hongze_mobile_admin/models/tables/company_approval_message"
- "hongze/hongze_mobile_admin/utils"
- "rdluck_tools/paging"
- )
- //消息模块
- type MessageCommon struct {
- BaseAuth
- }
- // @Title 消息列表汇总页
- // @Description 消息列表汇总页接口
- // @Success 200 {object} message.SummaryMessageListResp
- // @router /summaryMessageList [get]
- func (this *MessageCommon) SummaryMessageList() {
- sysUser := this.AdminWx
- sysUserId := sysUser.AdminId
- SummaryMessageListResp := message.SummaryMessageListResp{}
- sourceTypeList := [...]int{1, 2, 3}
- for _, sourceType := range sourceTypeList {
- //最近一条消息
- tmpMessage := ``
- messageInfo, err := company_approval_message.GetLastMessage(sysUserId, sourceType)
- if err != nil {
- if err.Error() != utils.ErrNoRow() {
- this.FailWithMessage("获取失败", "获取消息失败,Err:"+err.Error())
- return
- }
- } else {
- tmpMessage = fmt.Sprint(messageInfo.RealName, messageInfo.CreateTime, messageInfo.Content)
- }
- notReadTotal, err := company_approval_message.GetNotReadMessageTotal(sysUserId, sourceType)
- if err != nil {
- this.FailWithMessage("获取失败", "获取未读消息数失败,Err:"+err.Error())
- return
- }
- switch sourceType {
- case 1:
- SummaryMessageListResp.CompanyMessage.Message = tmpMessage
- SummaryMessageListResp.CompanyMessage.Total = int(notReadTotal)
- case 2:
- SummaryMessageListResp.ContractMessage.Message = tmpMessage
- SummaryMessageListResp.ContractMessage.Total = int(notReadTotal)
- case 3:
- SummaryMessageListResp.SealMessage.Message = tmpMessage
- SummaryMessageListResp.SealMessage.Total = int(notReadTotal)
- }
- }
- this.OkDetailed(SummaryMessageListResp, "获取成功")
- }
- // @Title 消息列表
- // @Description 消息列表接口
- // @Param SourceType query int true "消息类型"
- // @Param CurrentIndex query int true "当前页码"
- // @Param pageSize query int true "每页数量"
- // @Success 200 {object} message.CompanyApprovalMessageListResp
- // @router /list [get]
- func (this *MessageCommon) MessageList() {
- sysUser := this.AdminWx
- sysUserId := sysUser.AdminId
- sourceType, err := this.GetInt("SourceType", 1)
- if err != nil {
- this.FailWithMessage("获取失败", "获取消息类型失败,Err:"+err.Error())
- return
- }
- pageSize, _ := this.GetInt("PageSize")
- currentIndex, _ := this.GetInt("CurrentIndex")
- var startSize int
- if pageSize <= 0 {
- pageSize = utils.PageSize20
- }
- if currentIndex <= 0 {
- currentIndex = 1
- }
- startSize = paging.StartIndex(currentIndex, pageSize)
- total, err := company_approval_message.GetCompanyApprovalMessageCount(sysUserId, sourceType)
- if err != nil {
- this.FailWithMessage("获取失败", "获取消息总数失败,Err:"+err.Error())
- return
- }
- list, err := company_approval_message.GetCompanyApprovalMessageList(sysUserId, sourceType, startSize, pageSize)
- if err != nil {
- this.FailWithMessage("获取失败", "获取消息列表失败,Err:"+err.Error())
- return
- }
- resp := message.CompanyApprovalMessageListResp{
- List: list,
- Total: total,
- }
- this.OkDetailed(resp, "获取成功")
- }
- // @Title 消息已读
- // @Description 消息已读接口
- // @Param request body company.CompanyApprovalMessageReadReq true "type json string"
- // @Success Ret=200 申请成功
- // @router /read [post]
- func (this *MessageCommon) MessageRead() {
- //sysUser := this.AdminWx
- var req company_approval_message.CompanyApprovalMessageReadReq
- err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
- if err != nil {
- this.FailWithMessage("参数解析异常!", "参数解析失败,Err:"+err.Error())
- return
- }
- if req.Id <= 0 {
- this.FailWithMessage("参数错误", "参数错误,客户id小于等于0")
- return
- }
- err = company_approval_message.ModifyCompanyApprovalMessageStatus(req.Id)
- if err != nil {
- this.FailWithMessage("修改失败!", "修改已读失败,Err:"+err.Error())
- return
- }
- this.OkWithMessage("已读成功")
- }
|