Exemplo n.º 1
0
        /// <summary>
        /// Запис на Страни в Обжалвания към съдебен акт
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public bool CaseSessionActComplainPerson_SaveData(CheckListViewVM model)
        {
            try
            {
                var caseSessionActComplainPeople = repo.AllReadonly <CaseSessionActComplainPerson>().Where(x => x.CaseSessionActComplainId == model.ObjectId).ToList();
                repo.DeleteRange(caseSessionActComplainPeople);
                var caseSessionActComplain = repo.GetById <CaseSessionActComplain>(model.ObjectId);

                foreach (var checkList in model.checkListVMs.Where(x => x.Checked))
                {
                    var person = new CaseSessionActComplainPerson()
                    {
                        CourtId = caseSessionActComplain.CourtId,
                        CaseId  = caseSessionActComplain.CaseId,
                        CaseSessionActComplainId = model.ObjectId,
                        CasePersonId             = int.Parse(checkList.Value),
                        DateWrt = DateTime.Now,
                        UserId  = userContext.UserId
                    };

                    repo.Add <CaseSessionActComplainPerson>(person);
                }
                repo.SaveChanges();

                return(true);
            }
            catch (Exception ex)
            {
                logger.LogError(ex, $"Грешка при запис на Страни в Обжалвания към съдебен акт Id={ model.ObjectId }");
                return(false);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Създаване на обжалване по документ - автоматично
        /// </summary>
        /// <param name="DocumentId"></param>
        /// <returns></returns>
        public bool CaseSessionActComplain_CreateFromDocument(long DocumentId)
        {
            try
            {
                var document = repo.AllReadonly <Document>()
                               .Include(x => x.DocumentCaseInfo)
                               .Include(x => x.DocumentPersons)
                               .Where(x => x.Id == DocumentId)
                               .FirstOrDefault();

                if (document != null)
                {
                    if ((document.DocumentDirectionId == DocumentConstants.DocumentDirection.Incoming) &&
                        (document.DocumentGroupId == NomenclatureConstants.DocumentGroup.DocumentForComplain_AccompanyingDocument) &&
                        (document.DocumentCaseInfo.Any(x => x.SessionActId != null)))
                    {
                        var caseSessionAct = repo.GetById <CaseSessionAct>(document.DocumentCaseInfo.Select(x => x.SessionActId).FirstOrDefault());
                        var casePersons    = casePersonService.CasePerson_Select(caseSessionAct.CaseId ?? 0, null, false, false, false).Where(x => x.CaseSessionId == null).ToList();

                        //caseSessionAct.CanAppeal = true;
                        //caseSessionAct.DateWrt = DateTime.Now;
                        //caseSessionAct.UserId = userContext.UserId;
                        //repo.Update(caseSessionAct);

                        var caseSessionActComplain = new CaseSessionActComplain()
                        {
                            CourtId            = caseSessionAct.CourtId,
                            CaseId             = caseSessionAct.CaseId,
                            CaseSessionActId   = caseSessionAct.Id,
                            ComplainDocumentId = document.Id,
                            ComplainStateId    = NomenclatureConstants.ComplainState.Recived,
                            UserId             = userContext.UserId,
                            DateWrt            = DateTime.Now
                        };
                        repo.Add(caseSessionActComplain);

                        foreach (var documentPerson in document.DocumentPersons)
                        {
                            var casePerson = casePersons.Where(x => x.Uic == documentPerson.Uic).FirstOrDefault();

                            if (casePerson != null)
                            {
                                var caseSessionActComplainPerson = new CaseSessionActComplainPerson()
                                {
                                    CourtId = caseSessionAct.CourtId,
                                    CaseId  = caseSessionAct.CaseId,
                                    CaseSessionActComplainId = caseSessionActComplain.Id,
                                    CasePersonId             = casePerson.Id,
                                    UserId  = userContext.UserId,
                                    DateWrt = DateTime.Now
                                };

                                repo.Add(caseSessionActComplainPerson);
                            }
                        }

                        repo.SaveChanges();
                    }
                }

                return(true);
            }
            catch (Exception ex)
            {
                logger.LogError(ex, $"Грешка при запис на Обжалвания към съдебен акт Id={ DocumentId }");
                return(false);
            }
        }