public virtual bool Create(ref ValidationErrors errors, MIS_WebIM_RecentContactModel model)
        {
            try
            {
                MIS_WebIM_RecentContact entity = m_Rep.GetById(model.Id);
                if (entity != null)
                {
                    errors.Add(Resource.PrimaryRepeat);
                    return(false);
                }
                entity                     = new MIS_WebIM_RecentContact();
                entity.Id                  = model.Id;
                entity.ContactPersons      = model.ContactPersons;
                entity.UserId              = model.UserId;
                entity.InfoTime            = model.InfoTime;
                entity.ContactPersonsTitle = model.ContactPersonsTitle;


                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);
            }
        }
        public virtual bool Edit(ref ValidationErrors errors, MIS_WebIM_RecentContactModel model)
        {
            try
            {
                MIS_WebIM_RecentContact entity = m_Rep.GetById(model.Id);
                if (entity == null)
                {
                    errors.Add(Resource.Disable);
                    return(false);
                }
                entity.Id                  = model.Id;
                entity.ContactPersons      = model.ContactPersons;
                entity.UserId              = model.UserId;
                entity.InfoTime            = model.InfoTime;
                entity.ContactPersonsTitle = model.ContactPersonsTitle;



                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);
            }
        }
        /// <summary>
        /// 校验Excel数据,这个方法一般用于重写校验逻辑
        /// </summary>
        public virtual bool CheckImportData(string fileName, List <MIS_WebIM_RecentContactModel> 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_RecentContactModel>(x => x.ContactPersons, "以代码显示");
            excelFile.AddMapping <MIS_WebIM_RecentContactModel>(x => x.UserId, "UserId");
            excelFile.AddMapping <MIS_WebIM_RecentContactModel>(x => x.InfoTime, "InfoTime");
            excelFile.AddMapping <MIS_WebIM_RecentContactModel>(x => x.ContactPersonsTitle, "以名称显示");

            //SheetName
            var excelContent = excelFile.Worksheet <MIS_WebIM_RecentContactModel>(0);
            int rowIndex     = 1;

            //检查数据正确性
            foreach (var row in excelContent)
            {
                var errorMessage = new StringBuilder();
                var entity       = new MIS_WebIM_RecentContactModel();
                entity.Id                  = row.Id;
                entity.ContactPersons      = row.ContactPersons;
                entity.UserId              = row.UserId;
                entity.InfoTime            = row.InfoTime;
                entity.ContactPersonsTitle = row.ContactPersonsTitle;

                //=============================================================================
                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);
        }
        public virtual MIS_WebIM_RecentContactModel GetById(object id)
        {
            if (IsExists(id))
            {
                MIS_WebIM_RecentContact      entity = m_Rep.GetById(id);
                MIS_WebIM_RecentContactModel model  = new MIS_WebIM_RecentContactModel();
                model.Id                  = entity.Id;
                model.ContactPersons      = entity.ContactPersons;
                model.UserId              = entity.UserId;
                model.InfoTime            = entity.InfoTime;
                model.ContactPersonsTitle = entity.ContactPersonsTitle;

                return(model);
            }
            else
            {
                return(null);
            }
        }
Beispiel #5
0
        public virtual async Task <Tuple <ValidationErrors, bool> > CreateAsync(MIS_WebIM_RecentContactModel model)
        {
            ValidationErrors errors = new ValidationErrors();

            try
            {
                MIS_WebIM_RecentContact 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_RecentContact();
                entity.Id                  = model.Id;
                entity.ContactPersons      = model.ContactPersons;
                entity.UserId              = model.UserId;
                entity.InfoTime            = model.InfoTime;
                entity.ContactPersonsTitle = model.ContactPersonsTitle;


                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));
            }
        }