public JsonResult SendMessage(string mes, string receiver, string receiverName, bool state) { if (GetUserId() == null) { return(Json(false)); } MIS_WebIM_MessageModel model = new MIS_WebIM_MessageModel() { Id = ResultHelper.NewId, Message = mes, Sender = GetUserId(), SenderTitle = GetUserTrueName(), receiver = receiver, receiverTitle = receiverName, State = state, SendDt = DateTime.Now }; string ErrorCol = string.Empty; if (messageBLL.CreateMessage(ref errors, model)) { //开关,从config配置此功能 LogHandler.WriteServiceLog(GetUserId(), "Id:" + model.Id, "成功", "创建", "WebIM发送消息"); return(Json(true)); } else { ErrorCol = errors.Error; if (!string.IsNullOrEmpty(ErrorCol)) { LogHandler.WriteServiceLog(GetUserId(), "Id:" + model.Id + ErrorCol, "失败", "创建", "WebIM发送消息"); //写入日志 } return(Json(false)); //提示插入失败 } }
/// <summary> /// 读取一个发送消息 /// </summary> /// <param name="id">消息ID</param> /// <returns></returns> public MIS_WebIM_MessageModel GetMessageBySender(string id) { try { var entity = repository.GetMessageBySender(id); if (entity == null) { return(null); } MIS_WebIM_MessageModel model = new MIS_WebIM_MessageModel(); model.Id = entity.Id; model.Message = entity.Message; model.Sender = entity.Sender; model.receiver = entity.receiver; model.State = entity.State; model.SendDt = entity.SendDt; model.SenderTitle = userRep.GetNameById(entity.Sender); model.receiverTitle = userRep.GetNameById(entity.receiver); return(model); } catch (Exception ex) { ExceptionHander.WriteException(ex); return(null); } }
/// <summary> /// 校验Excel数据,这个方法一般用于重写校验逻辑 /// </summary> public virtual bool CheckImportData(string fileName, List <MIS_WebIM_MessageModel> list, ref ValidationErrors errors) { var targetFile = new FileInfo(fileName); if (!targetFile.Exists) { errors.Add("导入的数据文件不存在"); return(false); } var excelFile = new ExcelQueryFactory(fileName); //对应列头 excelFile.AddMapping <MIS_WebIM_MessageModel>(x => x.Message, "Message"); excelFile.AddMapping <MIS_WebIM_MessageModel>(x => x.Sender, "Sender"); excelFile.AddMapping <MIS_WebIM_MessageModel>(x => x.receiver, "receiver"); excelFile.AddMapping <MIS_WebIM_MessageModel>(x => x.State, "State"); excelFile.AddMapping <MIS_WebIM_MessageModel>(x => x.SendDt, "SendDt"); excelFile.AddMapping <MIS_WebIM_MessageModel>(x => x.receiverTitle, "receiverTitle"); //SheetName var excelContent = excelFile.Worksheet <MIS_WebIM_MessageModel>(0); int rowIndex = 1; //检查数据正确性 foreach (var row in excelContent) { var errorMessage = new StringBuilder(); var entity = new MIS_WebIM_MessageModel(); entity.Id = row.Id; entity.Message = row.Message; entity.Sender = row.Sender; entity.receiver = row.receiver; entity.State = row.State; entity.SendDt = row.SendDt; entity.receiverTitle = row.receiverTitle; //============================================================================= if (errorMessage.Length > 0) { errors.Add(string.Format( "第 {0} 列发现错误:{1}{2}", rowIndex, errorMessage, "<br/>")); } list.Add(entity); rowIndex += 1; } if (errors.Count > 0) { return(false); } return(true); }
/// <summary> /// 新增消息 /// </summary> /// <param name="validationErrors"></param> /// <param name="model">消息模型</param> /// <returns></returns> public bool CreateMessage(ref ValidationErrors validationErrors, MIS_WebIM_MessageModel model) { try { repository.CreateMessage(model.Id, model.Message, model.Sender, model.receiver, model.receiverTitle); return(true); } catch (Exception ex) { validationErrors.Add(ex.Message); ExceptionHander.WriteException(ex); return(false); } }
public virtual MIS_WebIM_MessageModel GetById(object id) { if (IsExists(id)) { MIS_WebIM_Message entity = m_Rep.GetById(id); MIS_WebIM_MessageModel model = new MIS_WebIM_MessageModel(); model.Id = entity.Id; model.Message = entity.Message; model.Sender = entity.Sender; model.receiver = entity.receiver; model.State = entity.State; model.SendDt = entity.SendDt; model.receiverTitle = entity.receiverTitle; return(model); } else { return(null); } }
public virtual async Task <Tuple <ValidationErrors, bool> > CreateAsync(MIS_WebIM_MessageModel model) { ValidationErrors errors = new ValidationErrors(); try { MIS_WebIM_Message entity = await m_Rep.GetByIdAsync(model.Id); if (entity != null) { errors.Add(Resource.PrimaryRepeat); return(new Tuple <ValidationErrors, bool>(errors, false)); } entity = new MIS_WebIM_Message(); entity.Id = model.Id; entity.Message = model.Message; entity.Sender = model.Sender; entity.receiver = model.receiver; entity.State = model.State; entity.SendDt = model.SendDt; entity.receiverTitle = model.receiverTitle; if (await m_Rep.CreateAsync(entity)) { return(new Tuple <ValidationErrors, bool>(errors, true)); } else { errors.Add(Resource.InsertFail); return(new Tuple <ValidationErrors, bool>(errors, false)); } } catch (Exception ex) { errors.Add(ex.Message); ExceptionHander.WriteException(ex); return(new Tuple <ValidationErrors, bool>(errors, false)); } }
public virtual bool Edit(ref ValidationErrors errors, MIS_WebIM_MessageModel model) { try { MIS_WebIM_Message entity = m_Rep.GetById(model.Id); if (entity == null) { errors.Add(Resource.Disable); return(false); } entity.Id = model.Id; entity.Message = model.Message; entity.Sender = model.Sender; entity.receiver = model.receiver; entity.State = model.State; entity.SendDt = model.SendDt; entity.receiverTitle = model.receiverTitle; if (m_Rep.Edit(entity)) { return(true); } else { errors.Add(Resource.NoDataChange); return(false); } } catch (Exception ex) { errors.Add(ex.Message); ExceptionHander.WriteException(ex); return(false); } }
public virtual bool Create(ref ValidationErrors errors, MIS_WebIM_MessageModel model) { try { MIS_WebIM_Message entity = m_Rep.GetById(model.Id); if (entity != null) { errors.Add(Resource.PrimaryRepeat); return(false); } entity = new MIS_WebIM_Message(); entity.Id = model.Id; entity.Message = model.Message; entity.Sender = model.Sender; entity.receiver = model.receiver; entity.State = model.State; entity.SendDt = model.SendDt; entity.receiverTitle = model.receiverTitle; if (m_Rep.Create(entity)) { return(true); } else { errors.Add(Resource.InsertFail); return(false); } } catch (Exception ex) { errors.Add(ex.Message); ExceptionHander.WriteException(ex); return(false); } }