Ejemplo n.º 1
0
        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));                                                                               //提示插入失败
            }
        }
Ejemplo n.º 2
0
        /// <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);
            }
        }
Ejemplo n.º 3
0
        /// <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);
        }
Ejemplo n.º 4
0
 /// <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);
     }
 }
Ejemplo n.º 5
0
        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);
            }
        }
Ejemplo n.º 6
0
        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));
            }
        }
Ejemplo n.º 7
0
        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);
            }
        }
Ejemplo n.º 8
0
        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);
            }
        }