public ActionResult AddConfig(BaoYangPackageTypeRelationViewModel model)
        {
            if (model == null)
            {
                return(Json(new { Status = false, Msg = "未知的对象" }, JsonRequestBehavior.AllowGet));
            }
            if (string.IsNullOrWhiteSpace(model.MainPackageType))
            {
                return(Json(new { Status = false, Msg = "请选择主项目" }, JsonRequestBehavior.AllowGet));
            }
            if (string.IsNullOrWhiteSpace(model.RelatedPackageTypes))
            {
                return(Json(new { Status = false, Msg = "请选择辅项目" }, JsonRequestBehavior.AllowGet));
            }
            var manager = new BaoYangPackageTypeRelationManager();
            var user    = User.Identity.Name;
            var isExist = manager.IsExistBaoYangPackageTypeRelation(model);

            if (isExist)
            {
                return(Json(new { Status = false, Msg = "该主项目已存在,不可重复添加" }, JsonRequestBehavior.AllowGet));
            }
            if (model.IsStrongRelated && manager.IsExistRelatedPackageTypes(model))
            {
                return(Json(new { Status = false, Msg = "辅项目已存在,不可重复添加" }, JsonRequestBehavior.AllowGet));
            }
            var result = manager.AddBaoYangPackageTypeRelation(model, user);

            return(Json(new { Status = result, Msg = $"添加{(result ? "成功" : "失败")}" }, JsonRequestBehavior.AllowGet));
        }
 /// <summary>
 /// 更新保养关联项目配置
 /// </summary>
 /// <param name="conn"></param>
 /// <param name="model"></param>
 /// <returns></returns>
 public static bool UpdateBaoYangPackageTypeRelation(SqlConnection conn, BaoYangPackageTypeRelationViewModel model)
 {
     #region Sql
     var sql = @"UPDATE BaoYang..BaoYangPackageTypeRelation
                 SET RelatedPackageTypes = @RelatedPackageTypes,
                     Content = @Content,
                     Highlights = @Highlights,
                     IsEnabled = @IsEnabled,
                     IsDeleted = @IsDeleted,
                     IsStrongRelated = @IsStrongRelated,
                     CancelContent = @CancelContent,
                     LastUpdateDateTime = GETDATE()
                 WHERE PKID = @PKID;";
     #endregion
     var parameters = new[]
     {
         new SqlParameter("@RelatedPackageTypes", model.RelatedPackageTypes),
         new SqlParameter("@Content", model.Content),
         new SqlParameter("@Highlights", model.Highlights ?? string.Empty),
         new SqlParameter("@IsEnabled", model.IsEnabled),
         new SqlParameter("@IsDeleted", model.IsDeleted),
         new SqlParameter("@IsStrongRelated", model.IsStrongRelated),
         new SqlParameter("@CancelContent", string.IsNullOrWhiteSpace(model.CancelContent)?string.Empty:model.CancelContent),
         new SqlParameter("@PKID", model.PKID)
     };
     return(SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql, parameters) > 0);
 }
 /// <summary>
 /// 添加保养关联项目配置
 /// </summary>
 /// <param name="conn"></param>
 /// <param name="model"></param>
 /// <returns></returns>
 public static int AddBaoYangPackageTypeRelation(SqlConnection conn, BaoYangPackageTypeRelationViewModel model)
 {
     #region SQL
     var sql = @"INSERT INTO BaoYang..BaoYangPackageTypeRelation
                 (
                     MainPackageType,
                     RelatedPackageTypes,
                     Content,
                     Highlights,
                     IsEnabled,
                     IsStrongRelated,
                     CancelContent
                 )
                 VALUES
                 (@MainPackageType, @RelatedPackageTypes, @Content, @Highlights, @IsEnabled, @IsStrongRelated, @CancelContent);
                 SELECT SCOPE_IDENTITY();";
     #endregion
     var parameters = new[]
     {
         new SqlParameter("@MainPackageType", model.MainPackageType),
         new SqlParameter("@RelatedPackageTypes", model.RelatedPackageTypes),
         new SqlParameter("@Content", model.Content),
         new SqlParameter("@Highlights", model.Highlights ?? string.Empty),
         new SqlParameter("@IsEnabled", model.IsEnabled),
         new SqlParameter("@IsStrongRelated", model.IsStrongRelated),
         new SqlParameter("@CancelContent", string.IsNullOrWhiteSpace(model.CancelContent)?string.Empty:model.CancelContent)
     };
     return(Convert.ToInt32(SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql, parameters)));
 }
Esempio n. 4
0
        /// <summary>
        /// 主项目对应的配置是否存在
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool IsExistBaoYangPackageTypeRelation(BaoYangPackageTypeRelationViewModel model)
        {
            var result = true;

            try
            {
                result = dbScopeManagerBaoYangRead.Execute
                             (conn => DalBaoYangPackageTypeRelation.IsExistBaoYangPackageTypeRelation(conn, model));
            }
            catch (Exception ex)
            {
                Logger.Error("IsBaoYangPackageTypeRelation", ex);
            }
            return(result);
        }
 /// <summary>
 /// 主项目对应的配置是否存在
 /// </summary>
 /// <param name="conn"></param>
 /// <param name="model"></param>
 /// <returns></returns>
 public static bool IsExistBaoYangPackageTypeRelation
     (SqlConnection conn, BaoYangPackageTypeRelationViewModel model)
 {
     #region Sql
     var sql = @"SELECT  COUNT(1)
                 FROM    BaoYang..BaoYangPackageTypeRelation AS s WITH ( NOLOCK )
                 WHERE   s.MainPackageType = @MainPackageType
                         AND s.IsDeleted=0
                         AND s.PKID <> @PKID;";
     #endregion
     var parameters = new[]
     {
         new SqlParameter("@MainPackageType", model.MainPackageType),
         new SqlParameter("@PKID", model.PKID)
     };
     var count = Convert.ToInt32(SqlHelper.ExecuteScalar(conn, CommandType.Text, sql, parameters));
     return(count > 0);
 }
Esempio n. 6
0
        public ActionResult UpdateConfig(BaoYangPackageTypeRelationViewModel model)
        {
            if (model == null || string.IsNullOrWhiteSpace(model.MainPackageType))
            {
                return(Json(new { Status = false, Msg = "未知的编辑对象" }, JsonRequestBehavior.AllowGet));
            }
            var manager = new BaoYangPackageTypeRelationManager();
            var isExist = manager.IsExistBaoYangPackageTypeRelation(model);

            if (isExist)
            {
                return(Json(new { Status = false, Msg = "该主项目已存在,不可重复添加" }, JsonRequestBehavior.AllowGet));
            }
            var user   = User.Identity.Name;
            var result = manager.UpdateBaoYangPackageTypeRelation(model, user);

            return(Json(new { Status = result, Msg = $"编辑{(result ? "成功" : "失败")}" }, JsonRequestBehavior.AllowGet));
        }
Esempio n. 7
0
        /// <summary>
        /// 添加保养关联项目配置
        /// </summary>
        /// <param name="model"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool AddBaoYangPackageTypeRelation(BaoYangPackageTypeRelationViewModel model, string user)
        {
            var result = false;

            try
            {
                var oldValue = GetBaoYangPackageTypeRelation(model.MainPackageType);
                if (oldValue == null)
                {
                    var pkid = dbScopeManagerBaoYang.Execute
                                   (conn => DalBaoYangPackageTypeRelation.AddBaoYangPackageTypeRelation(conn, model));
                    result     = pkid > 0;
                    model.PKID = pkid;
                }
                else if (oldValue.IsDeleted)
                {
                    model.PKID = oldValue.PKID;
                    result     = dbScopeManagerBaoYang.Execute
                                     (conn => DalBaoYangPackageTypeRelation.UpdateBaoYangPackageTypeRelation(conn, model));
                }
                model.CreateDateTime     = DateTime.Now;
                model.LastUpdateDateTime = DateTime.Now;
                var log = new BaoYangOprLog
                {
                    LogType     = "BaoYangPackageTypeRelation",
                    IdentityID  = $"{model.MainPackageType}",
                    OldValue    = null,
                    NewValue    = JsonConvert.SerializeObject(model),
                    Remarks     = $"添加主项目为{model.MainPackageType}的保养关联项目配置",
                    OperateUser = user,
                };
                LoggerManager.InsertLog("BYOprLog", log);
            }
            catch (Exception ex)
            {
                result = false;
                Logger.Error("AddBaoYangPackageTypeRelation", ex);
            }
            return(result);
        }
Esempio n. 8
0
        /// <summary>
        /// 更新保养关联项目配置
        /// </summary>
        /// <param name="model"></param>
        /// <param name="user"></param>
        /// <returns></returns>
        public bool UpdateBaoYangPackageTypeRelation(BaoYangPackageTypeRelationViewModel model, string user)
        {
            var result = false;

            try
            {
                var oldValue = GetBaoYangPackageTypeRelation(model.MainPackageType);
                if (oldValue != null)
                {
                    model.PKID = oldValue.PKID;
                    result     = dbScopeManagerBaoYang.Execute(conn =>
                                                               DalBaoYangPackageTypeRelation.UpdateBaoYangPackageTypeRelation(conn, model));
                    if (!result)
                    {
                        throw new Exception($"UpdateBaoYangPackageTypeRelation失败,待更新数据{JsonConvert.SerializeObject(model)}");
                    }
                    model.CreateDateTime     = oldValue.CreateDateTime;
                    model.LastUpdateDateTime = DateTime.Now;
                    var log = new BaoYangOprLog
                    {
                        LogType     = "BaoYangPackageTypeRelation",
                        IdentityID  = model.MainPackageType,
                        OldValue    = JsonConvert.SerializeObject(oldValue),
                        NewValue    = JsonConvert.SerializeObject(model),
                        Remarks     = $"更新主项目为{model.MainPackageType}的保养关联项目配置",
                        OperateUser = user,
                    };
                    LoggerManager.InsertLog("BYOprLog", log);
                }
            }
            catch (Exception ex)
            {
                result = false;
                Logger.Error("UpdateBaoYangPackageTypeRelation", ex);
            }
            return(result);
        }