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