Example #1
0
        /// <summary>
        /// 作者:Kylin
        /// 时间:2014.03.27
        /// 描述:添加产品级别配置
        /// </summary>
        /// <param name="model"></param>
        /// <param name="loginUserId"></param>
        /// <returns></returns>
        public static ProductCourseTypeConfig CreateProductCourseTypeConfig(ProductCourseTypeConfig model, int loginUserId)
        {
            using (var edb = new EmeEntities())
            {
                try
                {
                    if (!edb.ProductCourseTypeConfig.Any(p => p.BranchId == model.BranchId && p.ProductCourseTypeId == model.ProductCourseTypeId))
                    {
                        var result = edb.ProductCourseTypeConfig.Add(model);
                        edb.SaveChanges();
                        return result;
                    }
                    else
                    {
                        return null;//  config existed
                    }
                }
                catch (Exception e)
                {
                    // 异常日志消息队列
                    Common.MSMQ.QueueManager.AddExceptionLog(new ExceptionLogs()
                    {
                        ExceptionType = CommonHelper.To<int>(ExceptionType.Function),
                        Message = string.Format("ProductBLL-CreateProductCourseTypeConfig:{0};{1};{2}", e.Message, e.InnerException.Message, e.HelpLink),
                        IsTreat = false,
                        CreateBy = loginUserId,
                        CreateTime = DateTime.Now
                    });

                    return null;
                }
            }
        }
Example #2
0
        /// <summary>
        /// 作者:Primo
        /// 时间:2014.06.25
        /// 描述:重置产品类型配置
        /// </summary>
        /// <param name="productCourseTypeConfigId"></param>
        /// <param name="productCourseTypeId"></param>
        /// <param name="branchId"></param>
        /// <param name="userId"></param>
        /// <returns></returns>
        public static bool ResetProductCourseTypeConfig(int productCourseTypeConfigId, int productCourseTypeId, int branchId, int userId)
        {
            using (var edb = new EmeEntities())
            {
                try
                {
                    var result = false;
                    //获取级别所属的原产品中心
                    var resetModelObjBranchId = edb.Product.Where(p => p.ProductCourseType.Any(a => a.Id == productCourseTypeId && p.Id == a.ProductId && a.Status == ConvertEnum.StatusTypeForActive) && p.Status == ConvertEnum.StatusTypeForActive).Select(s => s.BranchId).FirstOrDefault();
                    //获取该中心,该级别的复制对象
                    var resetModelObj = edb.ProductCourseTypeConfig.FirstOrDefault(p => p.ProductCourseTypeId == productCourseTypeId && p.BranchId == resetModelObjBranchId && p.Status == ConvertEnum.StatusTypeForActive);
                    if (null != resetModelObj)
                    {
                        if (productCourseTypeConfigId > 0)
                        {
                            //获取需要重置的对象
                            var modelObj = edb.ProductCourseTypeConfig.FirstOrDefault(p => p.Id == productCourseTypeConfigId);
                            if (null != modelObj)
                            {
                                modelObj.ProductCourseTypeId = productCourseTypeId;
                                modelObj.BranchId = branchId;
                                modelObj.IsBook = resetModelObj.IsBook;
                                modelObj.MaxBookNum = resetModelObj.MaxBookNum;
                                modelObj.IsRepeatBook = resetModelObj.IsRepeatBook;
                                modelObj.BookLimitType = resetModelObj.BookLimitType;
                                modelObj.BookTime = resetModelObj.BookTime;
                                modelObj.BookTimeType = resetModelObj.BookTimeType;
                                modelObj.PlusBookTime = resetModelObj.PlusBookTime;
                                modelObj.PlusBookTimeType = resetModelObj.PlusBookTimeType;
                                modelObj.UnBookTime = resetModelObj.UnBookTime;
                                modelObj.UnBookTimeType = resetModelObj.UnBookTimeType;
                                modelObj.IsAutoPass = resetModelObj.IsAutoPass;
                                modelObj.IsScore = resetModelObj.IsScore;
                                modelObj.PassScore = resetModelObj.PassScore;
                                modelObj.IsRate = resetModelObj.IsRate;
                                modelObj.IsFT = resetModelObj.IsFT;
                                modelObj.IsLT = resetModelObj.IsLT;
                                modelObj.IsSA = resetModelObj.IsSA;
                                modelObj.Status = ConvertEnum.StatusTypeForActive;
                                modelObj.UpdateBy = userId;
                                modelObj.UpdateTime = DateTime.Now;
                                modelObj.CreateBy = userId;
                                modelObj.CreateTime = DateTime.Now;

                                edb.Entry(modelObj).State = EntityState.Modified;
                                result = edb.SaveChanges() > 0;
                            }

                        }
                        else
                        {
                            var productCourseTypeConfig = new ProductCourseTypeConfig()
                            {
                                ProductCourseTypeId = productCourseTypeId,
                                BranchId = branchId,
                                IsBook = resetModelObj.IsBook,
                                MaxBookNum = resetModelObj.MaxBookNum,
                                IsRepeatBook = resetModelObj.IsRepeatBook,
                                BookLimitType = resetModelObj.BookLimitType,
                                BookTime = resetModelObj.BookTime,
                                BookTimeType = resetModelObj.BookTimeType,
                                PlusBookTime = resetModelObj.PlusBookTime,
                                PlusBookTimeType = resetModelObj.PlusBookTimeType,
                                UnBookTime = resetModelObj.UnBookTime,
                                UnBookTimeType = resetModelObj.UnBookTimeType,
                                IsAutoPass = resetModelObj.IsAutoPass,
                                IsScore = resetModelObj.IsScore,
                                PassScore = resetModelObj.PassScore,
                                IsRate = resetModelObj.IsRate,
                                IsFT = resetModelObj.IsFT,
                                IsLT = resetModelObj.IsLT,
                                IsSA = resetModelObj.IsSA,
                                Status = ConvertEnum.StatusTypeForActive,
                                UpdateBy = userId,
                                UpdateTime = DateTime.Now,
                                CreateBy = userId,
                                CreateTime = DateTime.Now
                            };
                            edb.Entry(productCourseTypeConfig).State = EntityState.Added;
                            result = edb.SaveChanges() > 0;
                        }
                    }

                    return result;
                }
                catch (Exception e)
                {
                    // 异常日志消息队列
                    Common.MSMQ.QueueManager.AddExceptionLog(new ExceptionLogs()
                    {
                        ExceptionType = CommonHelper.To<int>(ExceptionType.Function),
                        Message = string.Format("ProductBLL-ResetProductLevelConfig:{0};{1};{2}", e.Message, e.InnerException.Message, e.HelpLink),
                        IsTreat = false,
                        CreateBy = userId,
                        CreateTime = DateTime.Now
                    });

                    return false;
                }
            }
        }
Example #3
0
        /// <summary>
        /// 作者:Kylin
        /// 时间:2014.03.27
        /// 描述:更新产品级别配置
        /// </summary>
        /// <param name="model"></param>
        /// <param name="loginUserId"></param>
        /// <returns></returns>
        public static bool UpdateProductCourseTypeConfig(ProductCourseTypeConfig model, int loginUserId)
        {
            using (var edb = new EmeEntities())
            {
                try
                {
                    var modelObj = edb.ProductCourseTypeConfig.SingleOrDefault(p => p.Id == model.Id && p.Status == ConvertEnum.StatusTypeForActive);
                    if (modelObj == null)
                        return false;

                    modelObj.IsBook = model.IsBook;
                    modelObj.MaxBookNum = model.MaxBookNum;
                    modelObj.IsRepeatBook = model.IsRepeatBook;
                    modelObj.BookLimitType = model.BookLimitType;
                    modelObj.BookTime = model.BookTime;
                    modelObj.BookTimeType = model.BookTimeType;
                    modelObj.PlusBookTime = model.PlusBookTime;
                    modelObj.PlusBookTimeType = model.PlusBookTimeType;
                    modelObj.UnBookTime = model.UnBookTime;
                    modelObj.UnBookTimeType = model.UnBookTimeType;
                    modelObj.IsAutoPass = model.IsAutoPass;
                    modelObj.IsScore = model.IsScore;
                    modelObj.PassScore = model.PassScore;
                    modelObj.IsRate = model.IsRate;
                    modelObj.ProductCourseTypeId = model.ProductCourseTypeId;
                    modelObj.BranchId = model.BranchId;
                    modelObj.IsFT = model.IsFT;
                    modelObj.IsLT = model.IsLT;
                    modelObj.IsSA = model.IsSA;
                    modelObj.UpdateBy = model.UpdateBy;
                    modelObj.UpdateTime = model.UpdateTime;

                    edb.Entry(modelObj).State = EntityState.Modified;
                    var result = edb.SaveChanges() > 0;
                    return result;
                }
                catch (Exception e)
                {
                    // 异常日志消息队列
                    Common.MSMQ.QueueManager.AddExceptionLog(new ExceptionLogs()
                    {
                        ExceptionType = CommonHelper.To<int>(ExceptionType.Function),
                        Message = string.Format("ProductBLL-UpdateProductCourseTypeConfig:{0};{1};{2}", e.Message, e.InnerException.Message, e.HelpLink),
                        IsTreat = false,
                        CreateBy = loginUserId,
                        CreateTime = DateTime.Now
                    });

                    return false;
                }
            }
        }
Example #4
0
        /// <summary>
        /// 作者:Kylin
        /// 时间:2014.03.27
        /// 描述:撤销产品级别配置
        /// </summary>
        /// <param name="model"></param>
        /// <param name="loginUserId"></param>
        /// <returns></returns>
        public static bool CancelProductCourseTypeConfig(ProductCourseTypeConfig model, int loginUserId)
        {
            using (var edb = new EmeEntities())
            {
                try
                {
                    var modelObj = edb.ProductCourseTypeConfig.SingleOrDefault(p => p.Id == model.Id && p.Status == ConvertEnum.StatusTypeForActive);
                    edb.Entry(modelObj).State = EntityState.Deleted;
                    var result = edb.SaveChanges() > 0;

                    return result;
                }
                catch (Exception e)
                {
                    // 异常日志消息队列
                    Common.MSMQ.QueueManager.AddExceptionLog(new ExceptionLogs()
                    {
                        ExceptionType = CommonHelper.To<int>(ExceptionType.Function),
                        Message = string.Format("ProductBLL-CancelProductCourseTypeConfig:{0};{1};{2}", e.Message, e.InnerException.Message, e.HelpLink),
                        IsTreat = false,
                        CreateBy = loginUserId,
                        CreateTime = DateTime.Now
                    });

                    return false;
                }
            }
        }