/// <summary> /// 获取覆盖区域配置 /// </summary> /// <param name="conn"></param> /// <param name="model"></param> /// <returns></returns> public VendorProductPriorityConfigModel GetVendorProductPriorityConfigByVehicleId (SqlConnection conn, VendorProductPriorityConfigModel model) { const string sql = @"SELECT s.PKID , s.ProductType , s.ConfigType , s.VehicleId , s.RegionId , s.Priority , s.IsEnabled , s.IsDeleted , s.CreateDateTime , s.LastUpdateDateTime FROM Configuration..VendorProductPriorityConfig AS s WITH ( NOLOCK ) WHERE s.ProductType = @ProductType AND s.ConfigType = @ConfigType AND (@VehicleId IS NULL OR @VehicleId=N'' OR s.VehicleId = @VehicleId) AND (@RegionId IS NULL OR @RegionId=N'' OR s.RegionId = @RegionId);"; var paras = new[] { new SqlParameter("@ProductType", model.ProductType), new SqlParameter("@ConfigType", model.ConfigType), new SqlParameter("@VehicleId", model.VehicleId), new SqlParameter("@RegionId", model.RegionId) }; var result = SqlHelper.ExecuteDataTable(conn, CommandType.Text, sql, paras) .ConvertTo <VendorProductPriorityConfigModel>().FirstOrDefault(); return(result); }
/// <summary> /// 添加品牌覆盖区域 /// </summary> /// <param name="conn"></param> /// <param name="model"></param> /// <returns></returns> public int AddVendorProductPriorityConfig(SqlConnection conn, VendorProductPriorityConfigModel model) { #region sql const string sql = @"INSERT INTO Configuration..VendorProductPriorityConfig ( ProductType , ConfigType , VehicleId , RegionId , Priority , IsEnabled ) OUTPUT Inserted.PKID VALUES ( @ProductType , @ConfigType , @VehicleId , @RegionId , @Priority , @IsEnabled );"; #endregion var parameters = new[] { new SqlParameter("@ProductType", model.ProductType), new SqlParameter("@ConfigType", model.ConfigType), new SqlParameter("@VehicleId", model.VehicleId), new SqlParameter("@RegionId", model.RegionId), new SqlParameter("@Priority", model.Priority), new SqlParameter("@IsEnabled", model.IsEnabled) }; return(Convert.ToInt32(SqlHelper.ExecuteScalar(conn, CommandType.Text, sql, parameters))); }
/// <summary> /// 编辑优先级 /// </summary> /// <param name="models"></param> /// <returns></returns> public bool UpSertVendorProductPriorityConfigPriority(VendorProductPriorityConfigModel model, string user) { var result = false; try { var oldValue = _dbScopeManagerConfigRead.Execute(conn => _dal.GetVendorProductPriorityConfigByPKID(conn, model.PKID)); if (oldValue != null) { model.CreateDateTime = oldValue.CreateDateTime; model.LastUpdateDateTime = DateTime.Now; result = _dbScopeManagerConfig.Execute(conn => _dal.EditVendorProductPriorityConfig(conn, model)); if (result) { _baoYangManager.InsertLog("OprVendorProduct", new OprVendorProductModel() { LogType = "VendorProductPriorityConfig", IdentityId = $"{model.ProductType}_{model.ConfigType}_{model.VehicleId ?? model.RegionId.ToString()}", OldValue = JsonConvert.SerializeObject(oldValue), NewValue = JsonConvert.SerializeObject(model), OperateUser = user, Remarks = "Update", CreateDateTime = DateTime.Now, }); } } else { var pkid = _dbScopeManagerConfig.Execute(conn => _dal.AddVendorProductPriorityConfig(conn, model)); result = pkid > 0; if (result) { model.PKID = pkid; model.CreateDateTime = DateTime.Now; model.LastUpdateDateTime = DateTime.Now; _baoYangManager.InsertLog("OprVendorProduct", new OprVendorProductModel() { LogType = "VendorProductPriorityConfig", IdentityId = $"{model.ProductType}_{model.ConfigType}_{model.VehicleId ?? model.RegionId.ToString()}", OldValue = string.Empty, NewValue = JsonConvert.SerializeObject(model), OperateUser = user, Remarks = "Add", CreateDateTime = DateTime.Now, }); } } } catch (Exception ex) { _logger.Error("EditVendorProductPriorityConfigPriority", ex); } return(result); }
public async Task <ActionResult> RemoveCache(VendorProductPriorityConfigModel model) { if (string.IsNullOrEmpty(model?.ProductType)) { return(Json(new { Status = false, Msg = "未知的对象" }, JsonRequestBehavior.AllowGet)); } var manager = new VendorProductPriorityConfigManager(); var result = await manager.RemoveCache(new List <VendorProductPriorityConfigModel>(1) { model }); return(Json(new { Status = result, Msg = $" 清除缓存{(result ? "成功" : "失败")}" }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 编辑优先级 /// </summary> /// <param name="models"></param> /// <returns></returns> public ActionResult EditPriority(VendorProductPriorityConfigModel model) { if (model == null || string.IsNullOrEmpty(model.ProductType) || string.IsNullOrEmpty(model.ConfigType)) { return(Json(new { Satus = false, Msg = "未知的编辑对象" }, JsonRequestBehavior.AllowGet)); } var manager = new VendorProductPriorityConfigManager(); var result = manager.UpSertVendorProductPriorityConfigPriority(model, User.Identity.Name); return(Json(new { Status = result, Msg = $"更新优先级{(result ? "成功" : "失败")}" }, JsonRequestBehavior.AllowGet)); }
/// <summary> /// 编辑品牌优先级 /// </summary> /// <param name="conn"></param> /// <param name="model"></param> /// <returns></returns> public bool EditVendorProductPriorityConfig(SqlConnection conn, VendorProductPriorityConfigModel model) { #region sql const string sql = @"UPDATE Configuration.dbo.VendorProductPriorityConfig SET Priority = @Priority , IsEnabled = @IsEnabled , IsDeleted = 0 , LastUpdateDateTime = GETDATE() WHERE PKID = @PKID;"; #endregion var parameters = new[] { new SqlParameter("@PKID", model.PKID), new SqlParameter("@Priority", model.Priority), new SqlParameter("@IsEnabled", model.IsEnabled) }; var result = SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql, parameters); return(result > 0); }
/// <summary> /// 是否存在品牌优先级配置 /// </summary> /// <param name="conn"></param> /// <param name="model"></param> /// <returns></returns> public bool IsExistVendorProductPriorityConfigByVehicleId (SqlConnection conn, VendorProductPriorityConfigModel model) { const string sql = @"SELECT COUNT(1) FROM Configuration..VendorProductPriorityConfig AS s WITH ( NOLOCK ) WHERE s.ProductType = @ProductType AND s.ConfigType = @ConfigType AND (@VehicleId IS NULL OR @VehicleId=N'' OR s.VehicleId = @VehicleId) AND (@RegionId IS NULL OR @RegionId=N'' OR s.RegionId = @RegionId) AND s.IsDeleted = 0 AND s.PKID <> @PKID;"; var paras = new[] { new SqlParameter("@ProductType", model.ProductType), new SqlParameter("@ConfigType", model.ConfigType), new SqlParameter("@VehicleId", model.VehicleId), new SqlParameter("@RegionId", model.RegionId), new SqlParameter("@PKID", model.PKID) }; var result = Convert.ToInt32(SqlHelper.ExecuteScalar(conn, CommandType.Text, sql, paras)) > 0; return(result); }