Esempio n. 1
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="model">Модель ответа от клиента</param>
 /// <returns></returns>
 public string LoadModelPreCheck(AisParsedData model)
 {
     try
     {
         var logicModel = Automation.LogicsSelectAutomations.FirstOrDefault(logic => logic.Id == 6);
         if (logicModel != null)
         {
             int result;
             using (var context = new Base.Automation())
             {
                 result = context.Database.SqlQuery <int>(logicModel.SelectUser,
                                                          new SqlParameter(logicModel.SelectedParametr.Split(',')[0], model.N134),
                                                          new SqlParameter(logicModel.SelectedParametr.Split(',')[1], model.Tree),
                                                          new SqlParameter(logicModel.SelectedParametr.Split(',')[2], model.IdTemplate)).FirstOrDefault();
             }
             if (result != 0)
             {
                 using (var context = new Base.Automation())
                 {
                     var select = (from faceModelTemplateGetPosts in context.FaceModelTemplateGetPosts where faceModelTemplateGetPosts.Id == result select new { FaceModelTemplateGetPosts = faceModelTemplateGetPosts }).FirstOrDefault();
                     if (select != null)
                     {
                         var modelUpdate = new Base.FaceModelTemplateGetPost()
                         {
                             Id          = select.FaceModelTemplateGetPosts.Id,
                             IdUl        = select.FaceModelTemplateGetPosts.IdUl,
                             IdTemplate  = select.FaceModelTemplateGetPosts.IdTemplate,
                             IdTree      = select.FaceModelTemplateGetPosts.IdTree,
                             StatusModel = "Ок!"
                         };
                         Automation.Entry(modelUpdate).State = EntityState.Modified;
                         Automation.SaveChanges();
                         Base.LogicsSelectAutomation logicModelFullStatus;
                         using (var context2 = new Base.Automation())
                         {
                             logicModelFullStatus = context2.LogicsSelectAutomations.FirstOrDefault(logic => logic.Id == 10);
                         }
                         if (logicModelFullStatus != null)
                         {
                             using (var context3 = new Base.Automation())
                             {
                                 var resultDb = context3.Database.SqlQuery <string>(logicModelFullStatus.SelectUser,
                                                                                    new SqlParameter(logicModelFullStatus.SelectedParametr.Split(',')[0],
                                                                                                     select.FaceModelTemplateGetPosts.Id)).FirstOrDefault();
                             }
                         }
                     }
                 }
             }
         }
         return("Ok!");
     }
     catch (Exception ex)
     {
         Loggers.Log4NetLogger.Error(ex);
     }
     return(null);
 }
Esempio n. 2
0
 /// <summary>
 /// Метод для снятия статуса для повторной отработки
 /// </summary>
 /// <param name="idModels">Уникальные номера моделей</param>
 /// <param name="status">Статус обработки ветки</param>
 public void CheckStatus(List <int> idModels, string status)
 {
     try
     {
         using (var context = new Base.Automation())
         {
             var selectModels = (from faceModelTemplateGetPosts in context.FaceModelTemplateGetPosts where idModels.Contains(faceModelTemplateGetPosts.Id)  select new { FaceModelTemplateGetPosts = faceModelTemplateGetPosts });
             foreach (var selectModel in selectModels)
             {
                 var modelUpdate = new Base.FaceModelTemplateGetPost()
                 {
                     Id          = selectModel.FaceModelTemplateGetPosts.Id,
                     IdUl        = selectModel.FaceModelTemplateGetPosts.IdUl,
                     IdTemplate  = selectModel.FaceModelTemplateGetPosts.IdTemplate,
                     IdTree      = selectModel.FaceModelTemplateGetPosts.IdTree,
                     StatusModel = status
                 };
                 Automation.Entry(modelUpdate).State = EntityState.Modified;
                 Automation.SaveChanges();
                 var parameterControl       = string.IsNullOrWhiteSpace(status) ? 11 : 10; //Если null или Empty то УН 12 в противном случае 11;
                 var logicModelOnFullStatus = Automation.LogicsSelectAutomations.FirstOrDefault(logic => logic.Id == parameterControl);
                 if (logicModelOnFullStatus != null)
                 {
                     var resultFullOnBlockStatus = Automation.Database
                                                   .SqlQuery <string>(logicModelOnFullStatus.SelectUser,
                                                                      new SqlParameter(logicModelOnFullStatus.SelectedParametr.Split(',')[0], selectModel.FaceModelTemplateGetPosts.Id))
                                                   .FirstOrDefault();
                 }
             }
         }
     }
     catch (Exception ex)
     {
         Loggers.Log4NetLogger.Error(ex);
     }
 }