/// <summary> /// Удаление системного блока из БД /// </summary> /// <param name="systemUnit">Системный блок</param> /// <param name="idUser">Ун пользователя</param> public ModelReturn <SysBlock> DeleteSystemUnit(SysBlock systemUnit, int?idUser) { try { using (var context = new InventoryContext()) { var isExistSystemUnit = context.Database.SqlQuery <object>($"Select * From SysBlock Where IdSysBlock = {systemUnit.IdSysBlock} and IdUser is null and IdStatus is null"); if (isExistSystemUnit.Any()) { HistoryLog.HistoryLog log = new HistoryLog.HistoryLog(); DeleteModelDb(context, new SysBlock() { IdSysBlock = systemUnit.IdSysBlock }); log.GenerateHistory(systemUnit.IdHistory, systemUnit.IdSysBlock, "Системный блок", idUser, $"Модель: {systemUnit.NameSysBlock?.NameComputer} Серийный номер: {systemUnit.SerNum} Сервисный номер: {systemUnit.ServiceNum} Инвентарный номер: {systemUnit.InventarNumSysBlok} Имя компьютера: {systemUnit.NameComputer}", "Произведено удаление!"); return(new ModelReturn <SysBlock>("Системный блок удален!", systemUnit)); } return(new ModelReturn <SysBlock>("Не возможно удалить системный блок! Есть привязки к пользователю или к статусу!", systemUnit, 1)); } } catch (Exception e) { Loggers.Log4NetLogger.Error(e); } return(new ModelReturn <SysBlock>("При удалении системного блока возникли ошибки " + systemUnit.IdSysBlock + " произошла ошибка смотри log.txt", systemUnit, 2)); }
/// <summary> /// Подписка на изменение Системных блоков /// </summary> /// <param name="sysblok">Системный блок</param> public static void SubscribeSysBlok(SysBlock sysblok) { IHubContext context = GlobalHost.ConnectionManager.GetHubContext <SignalRinventory>(); Loggers.Log4NetLogger.Info(new Exception("Модель Системного блока рассылка пошла: " + sysblok.IdSysBlock + " " + sysblok.Coment)); SerializeJson json = new SerializeJson(); context.Clients.All.SubscribeSysBlok(json.JsonLibaryIgnoreDate(sysblok)); }