示例#1
0
 /// <summary>
 /// Сохранение заявки на новый сервис
 /// </summary>
 /// <param name="ar"></param>
 public void Save(AcceptRequest ar)
 {
     using (Models.PhonesDataContext model = new Models.PhonesDataContext())
     {
         model.RequestTickets.InsertOnSubmit(new Models.RequestTicket()
         {
             RequestDate  = DateTime.Now,
             RequestStage = StageEnum.NewRequest.ToString(),
             ServiceType  = ServiceTypeEnum.UserService.ToString(),
             UTNLogin     = ar.UTNLogin,
             serviceId    = ar.ServiceId,
             secret       = ar.Secret,
         });
         model.SubmitChanges();
     }
 }
示例#2
0
        /// <summary>
        /// Сохраняю запросы пользователя на приложения
        /// акцептирование айтишниками и владельцами
        /// </summary>
        /// <param name="data"></param>
        public void SaveApplications(Models.ApplicationView data)
        {
            using (OfficeMapper.Models.PhonesDataContext model = new Models.PhonesDataContext())
            {
                Models.AuthUser user = Lib.ADAuth.GetUser(data.User.UTNLogin);

                #region TODO: Applications
                /////----Проверяю все поданные заявки и сохраняю их в базе
                //foreach (var app in data.Applications)
                //{
                //    ///---Если записи нет - добавляю
                //    if(model.AssignedServices.Count(x=>x.UserId == user.Id
                //    && x.ServiceId == app.Id) == 0 && app.UserClamed == true)
                //    {
                //        model.AssignedServices.InsertOnSubmit(new Models.AssignedService() {
                //            ServiceId = app.Id,
                //            UserId = user.Id,
                //            UserClaimed = app.UserClamed
                //        });
                //        model.SubmitChanges();

                //        ///---Если это не режим инвентаризации, отправляю заявки по каждому приложению отдельно
                //        if(bool.Parse(System.Configuration.ConfigurationManager.AppSettings["learningMode"]) != true)
                //        {
                //            ///---Создаем новый запрос на сервис
                //            AcceptRequest ar = new AcceptRequest() {
                //                ServiceId = app.Id,
                //                ServiceType = ServiceTypeEnum.UserService,
                //                RequestDate = DateTime.Now,
                //                UserId = user.sAMAccountName,
                //                RequestStage = StageEnum.NewRequest,
                //                Secret =Guid.NewGuid().ToString()
                //            };
                //            var wfManager = new StandardKernel(new AcceptingWorkflowBindingModule(ServiceTypeEnum.UserService)).Get<AcceptingWorkflowManager>();
                //            wfManager.Save(ar);
                //            //ApproveClaimRequest(user.sAMAccountName, app.Id);
                //        }
                //    }


                //    ///--Если запись есть, но нет галки - удаляю
                //    if (model.AssignedServices.Count(x => x.UserId == user.Id
                //     && x.ServiceId == app.Id) > 0 && app.UserClamed == false)
                //    {
                //        var deleteRec = model.AssignedServices.First(x => x.UserId == user.Id
                //     && x.ServiceId == app.Id);
                //        model.AssignedServices.DeleteOnSubmit(deleteRec);
                //        model.SubmitChanges();
                //    }
                //}
                #endregion

                #region TODO: Shares
                /////----Проверяю все поданные заявки и сохраняю их в базе
                //foreach (var app in data.Applications)
                //{
                //    ///---Если записи нет - добавляю
                //    if (model.AssignedServices.Count(x => x.UserId == user.Id
                //     && x.ServiceId == app.Id) == 0 && app.UserClamed == true)
                //    {
                //        model.AssignedServices.InsertOnSubmit(new Models.AssignedService()
                //        {
                //            ServiceId = app.Id,
                //            UserId = user.Id,
                //            UserClaimed = app.UserClamed
                //        });
                //        model.SubmitChanges();

                //        ///---Если это не режим инвентаризации, отправляю заявки по каждому приложению отдельно
                //        if (bool.Parse(System.Configuration.ConfigurationManager.AppSettings["learningMode"]) != true)
                //        {
                //            ///---Создаем новый запрос на сервис
                //            AcceptRequest ar = new AcceptRequest()
                //            {
                //                ServiceId = app.Id,
                //                ServiceType = ServiceTypeEnum.UserService,
                //                RequestDate = DateTime.Now,
                //                UserId = user.sAMAccountName,
                //                RequestStage = StageEnum.NewRequest,
                //                Secret = Guid.NewGuid().ToString()
                //            };
                //            var wfManager = new StandardKernel(new AcceptingWorkflowBindingModule(ServiceTypeEnum.UserService)).Get<AcceptingWorkflowManager>();
                //            wfManager.Save(ar);
                //            //ApproveClaimRequest(user.sAMAccountName, app.Id);
                //        }
                //    }


                //    ///--Если запись есть, но нет галки - удаляю
                //    if (model.AssignedServices.Count(x => x.UserId == user.Id
                //     && x.ServiceId == app.Id) > 0 && app.UserClamed == false)
                //    {
                //        var deleteRec = model.AssignedServices.First(x => x.UserId == user.Id
                //     && x.ServiceId == app.Id);
                //        model.AssignedServices.DeleteOnSubmit(deleteRec);
                //        model.SubmitChanges();
                //    }
                //}
                #endregion

                #region Application Inventarization
                ///---Если это режим инвентаризации, перечень всех приложений на утверждение Техответственных
                if (bool.Parse(System.Configuration.ConfigurationManager.AppSettings["learningMode"]) == true)
                {
                    ///---Создаю пачку запросов с одним Secret для
                    List <AcceptRequest> ars = new List <AcceptRequest>();
                    string Secret            = Guid.NewGuid().ToString();
                    foreach (var app in data.Applications.Where(x => x.UserClamed == true).ToList())
                    {
                        model.AssignedServices.InsertOnSubmit(new Models.AssignedService()
                        {
                            ServiceId   = app.Id,
                            UserId      = user.Id,
                            UserClaimed = app.UserClamed,
                            UTNLogin    = data.User.UTNLogin
                        });
                        model.SubmitChanges();

                        AcceptRequest ar = new AcceptRequest()
                        {
                            ServiceId    = app.Id,
                            ServiceType  = ServiceTypeEnum.UserService,
                            RequestDate  = DateTime.Now,
                            UTNLogin     = user.UTNLogin,
                            RequestStage = StageEnum.NewRequest,
                            Secret       = Secret
                        };
                        ars.Add(ar);
                    }

                    ///---Принимаю запросы на новые сеервисы, которые уже используются, но не проинвенчены
                    //foreach (var newService in )
                    //{

                    //}

                    ///---Сохраняю запрос
                    var wfManager = new StandardKernel(new AcceptingWorkflowBindingModule(ServiceTypeEnum.UserService)).Get <AcceptingWorkflowManager>();
                    wfManager.Save(ars);
                }
                #endregion

                #region TODO: Shares Inventarization
                /////---Если это режим инвентаризации, перечень всех приложений на утверждение Техответственных
                //if (bool.Parse(System.Configuration.ConfigurationManager.AppSettings["learningMode"]) == true)
                //{
                //    ///---Создаю пачку запросов с одним Secret для
                //    List<AcceptRequest> ars = new List<AcceptRequest>();
                //    string Secret = Guid.NewGuid().ToString();
                //    foreach (var app in data.Applications.Where(x => x.UserClamed == true).ToList())
                //    {
                //        AcceptRequest ar = new AcceptRequest()
                //        {
                //            ServiceId = app.Id,
                //            ServiceType = ServiceTypeEnum.UserService,
                //            RequestDate = DateTime.Now,
                //            UserId = user.sAMAccountName,
                //            RequestStage = StageEnum.NewRequest,
                //            Secret = Secret
                //        };
                //        ars.Add(ar);
                //    }

                //    var wfManager = new StandardKernel(new AcceptingWorkflowBindingModule(ServiceTypeEnum.UserService)).Get<AcceptingWorkflowManager>();
                //    wfManager.Save(ars);
                //}
                #endregion
            }
        }
示例#3
0
 public void Save(AcceptRequest ar)
 {
     Console.WriteLine("fs");
 }
 public void Save(AcceptRequest ar)
 {
     service.Save(ar);
     PushNextStage(ar.Secret);
 }