/// <summary> /// 添加机油粘度特殊地区配置 /// </summary> /// <param name="conn"></param> /// <param name="model"></param> /// <returns></returns> public static int AddOilViscosityRegionConfig(SqlConnection conn, OilViscosityRegionModel model) { var sql = @"INSERT INTO BaoYang..OilViscosityRegionPriorityConfig ( RegionId, OilViscosity ) VALUES ( @RegionId, @OilViscosity ) SELECT SCOPE_IDENTITY();"; var parameters = new SqlParameter[] { new SqlParameter("@RegionId", model.RegionId), new SqlParameter("@OilViscosity", model.OilViscosity) }; return(Convert.ToInt32(SqlHelper.ExecuteScalar(conn, CommandType.Text, sql, parameters))); }
/// <summary> /// 更新机油粘度特殊地区配置 /// </summary> /// <param name="conn"></param> /// <param name="model"></param> /// <returns></returns> public static bool UpdateOilViscosityRegionConfig(SqlConnection conn, OilViscosityRegionModel model) { var sql = @"UPDATE BaoYang..OilViscosityRegionPriorityConfig SET OilViscosity = @OilViscosity , IsDeleted = 0 , LastUpdateDateTime = GETDATE() WHERE RegionId = @RegionId;"; var parameters = new SqlParameter[] { new SqlParameter("@RegionId", model.RegionId), new SqlParameter("@OilViscosity", model.OilViscosity) }; return(SqlHelper.ExecuteNonQuery(conn, CommandType.Text, sql, parameters) > 0); }
/// <summary> /// 批量新增或更新机油粘度特殊地区配置 /// </summary> /// <param name="regionIds"></param> /// <param name="oilViscosity"></param> /// <param name="user"></param> /// <returns></returns> public bool MultAddOrEditOilViscosityRegionConfig(List <int> regionIds, string oilViscosity, string user) { var result = false; try { if (regionIds != null && regionIds.Any() && !string.IsNullOrWhiteSpace(oilViscosity)) { var insertModels = new List <OilViscosityRegionModel>(); var backupModels = new List <OilViscosityRegionModel>(); var updateModels = new List <OilViscosityRegionModel>(); var logData = new List <BaoYangOprLog>(); foreach (var regionId in regionIds) { var oldValue = GetOilViscosityRegionConfigByRegionId(regionId); if (oldValue == null) { var insertModel = new OilViscosityRegionModel { RegionId = regionId, OilViscosity = oilViscosity, CreateDateTime = DateTime.Now, LastUpdateDateTime = DateTime.Now }; insertModels.Add(insertModel); } else { if (oldValue.IsDeleted) { backupModels.Add(oldValue); } else { updateModels.Add(oldValue); } } } dbScopeManagerGungnir.CreateTransaction(conn => { foreach (var insertModel in insertModels) { var pkid = DalBaoYangOilViscosityPriorityConfig.AddOilViscosityRegionConfig(conn, insertModel); if (pkid < 1) { throw new Exception($"AddOilViscosityRegionConfig失败,{JsonConvert.SerializeObject(insertModel)}"); } insertModel.PKID = pkid; var log = new BaoYangOprLog { LogType = "OilViscosityRegionConfig", IdentityID = insertModel.RegionId.ToString(), OldValue = null, NewValue = JsonConvert.SerializeObject(insertModel), Remarks = $"添加机油粘度配置:{oilViscosity}", OperateUser = user, }; logData.Add(log); } foreach (var oldValue in updateModels) { var updateModel = new OilViscosityRegionModel { PKID = oldValue.PKID, RegionId = oldValue.RegionId, OilViscosity = oilViscosity, CreateDateTime = oldValue.CreateDateTime, LastUpdateDateTime = DateTime.Now, IsDeleted = false }; var updateResult = DalBaoYangOilViscosityPriorityConfig.UpdateOilViscosityRegionConfig(conn, updateModel); if (!updateResult) { throw new Exception($"UpdateOilViscosityRegionConfig失败,{JsonConvert.SerializeObject(updateModel)}"); } var log = new BaoYangOprLog { LogType = "OilViscosityRegionConfig", IdentityID = updateModel.RegionId.ToString(), OldValue = JsonConvert.SerializeObject(oldValue), NewValue = JsonConvert.SerializeObject(updateModel), Remarks = $"更新机油粘度配置:{oilViscosity}", OperateUser = user, }; logData.Add(log); } foreach (var backupModel in backupModels) { var updateModel = new OilViscosityRegionModel { PKID = backupModel.PKID, RegionId = backupModel.RegionId, OilViscosity = oilViscosity, CreateDateTime = backupModel.CreateDateTime, LastUpdateDateTime = DateTime.Now, IsDeleted = false }; var updateResult = DalBaoYangOilViscosityPriorityConfig.UpdateOilViscosityRegionConfig(conn, updateModel); if (!updateResult) { throw new Exception($"UpdateOilViscosityRegionConfig失败,{JsonConvert.SerializeObject(updateModel)}"); } var log = new BaoYangOprLog { LogType = "OilViscosityRegionConfig", IdentityID = updateModel.RegionId.ToString(), OldValue = JsonConvert.SerializeObject(backupModel), NewValue = JsonConvert.SerializeObject(updateModel), Remarks = $"添加机油粘度配置:{oilViscosity}", OperateUser = user, }; logData.Add(log); } result = true; }); foreach (var log in logData) { LoggerManager.InsertLog("BYOprLog", log); } } } catch (Exception ex) { Logger.Error("MultiAddOrEditOilViscosityRegionConfig", ex); } return(result); }