package data import ( "errors" "eta/eta_api/models/data_manage/edb_inspection" "eta/eta_api/utils" "time" "github.com/rdlucklib/rdluck_tools/paging" ) func ReadEdbInspectionMessage(messageId int64, adminId int) (msg string, err error) { message, err := edb_inspection.GetMessageById(int64(messageId)) if err != nil { if utils.IsErrNoRow(err) { msg = "消息不存在" return } msg = "获取消息失败" return } if message.AdminId != int64(adminId) { msg = "您没有权限查看该消息" err = errors.New("no permission") return } message.IsRead = 1 message.ModifyTime = time.Now() err = message.Update([]string{"IsRead", "ModifyTime"}) if err != nil { msg = "已读失败" return } return } func ReadEdbInspectionMessageList(messageId []int64, adminId int) (msg string, err error) { err = edb_inspection.BatchModifyEdbInspectionMessageIsRead(messageId, adminId) if err != nil { msg = "已读失败" return } return } func SendInspectionMessages(adminId int, message *edb_inspection.EdbInspectionMessage) (data *edb_inspection.EdbInspectionMessageResp, err error) { resp := edb_inspection.EdbInspectionMessageResp{ MessageId: message.MessageId, Content: "巡检状态异常", Remark: message.Message, IsRead: message.IsRead, Source: message.Source, TerminalCode: message.TerminalCode, InspectionTime: message.InspectionTime.Format(utils.FormatDateTime), } return &resp, nil } func GetHistoryInspectionMessages(adminId int) (items []*edb_inspection.EdbInspectionMessage, err error) { messageList, err := edb_inspection.GetEdbInspectionMessageByAdminId(adminId) if err != nil { return } items = messageList return } func GetInspectionMessageList(adminid int, currentIndex, pageSize int) (resp edb_inspection.EdbInspectionMessageListResp, err error) { startSize := utils.StartIndex(currentIndex, pageSize) total, err := edb_inspection.GetEdbInspectionMessageCountByAdminId(adminid) if err != nil { return } if total == 0 { resp.List = make([]*edb_inspection.EdbInspectionMessageResp, 0) resp.Paging = paging.GetPaging(currentIndex, pageSize, total) return } messageList, err := edb_inspection.GetEdbInspectionMessagePageByAdminId(adminid, startSize, pageSize) if err != nil { return } unreadTotal, err := edb_inspection.GetEdbInspectionMessageUnreadCountByAdminId(adminid) if err != nil { return } resp.List = toEdbInspectionMessageResp(messageList) resp.Paging = paging.GetPaging(currentIndex, pageSize, total) resp.UnreadTotal = unreadTotal return } func toEdbInspectionMessageResp(items []*edb_inspection.EdbInspectionMessage) (list []*edb_inspection.EdbInspectionMessageResp) { list = make([]*edb_inspection.EdbInspectionMessageResp, 0) for _, message := range items { item := edb_inspection.EdbInspectionMessageResp{ MessageId: message.MessageId, InspectionRecordId: message.InspectionRecordId, AdminId: message.AdminId, Content: "巡检状态异常", Remark: message.Message, IsRead: message.IsRead, Source: message.Source, TerminalCode: message.TerminalCode, InspectionTime: message.InspectionTime.Format(utils.FormatDateTime), } list = append(list, &item) } return }