示例#1
0
 public IQueryable<EntityModel.File> GetFilesByParentId2(Guid parentId)
 {
     using (var context = new GeneralModelContainer())
     {
         return context.Files.Where(s => s.SourceMappings.Any(o => o.Source.SourceId == parentId));
     }
 }
        public void InsertWitnessesForMarriage(Guid marriageId, IList<MarriageWitness> persons)
        {
            using (var context = new GeneralModelContainer())
            {
                Marriage mToUpDate = context.Marriages.FirstOrDefault(m => m.Marriage_Id == marriageId);

                DeleteWitnessesForMarriage(marriageId);

                foreach (var dupePerson in persons.RemoveDuplicateReferences())
                {
                    _personDal.Delete(dupePerson.Person.PersonId);

                }

                foreach (var personDto in persons)
                {
                    var person = context.Persons.FirstOrDefault(p => p.Person_id == personDto.Person.PersonId);

                    if (person != null)
                        context.MarriageMapWitness.Add(new MarriageMapWitness
                        {
                            Persons = person,
                            Marriages = mToUpDate,
                            WitnessNote = personDto.Description
                        });
                }

                context.SaveChanges();
            }
        }
 public IQueryable<Relations> GetRelationByChildOrParent(Guid personId)
 {
     using (var context = new GeneralModelContainer())
     {
         return
             context.Relations.Where(
                 o => (o.PersonsA.Person_id == personId || o.PersonsB.Person_id == personId));
     }
 }
 public IQueryable<Relations> GetRelationByPersons2(Guid person1, Guid person2)
 {
     using (var context = new GeneralModelContainer())
     {
         return
             context.Relations.Where(
                 o => (o.PersonsA.Person_id == person1 && o.PersonsB.Person_id == person2)
                      || (o.PersonsB.Person_id == person1 && o.PersonsA.Person_id == person2));
     }
 }
 public List<Guid> GetParishIds(Guid sourceId)
 {
     using (var context = new GeneralModelContainer())
     {
         return
             context.SourceMappingParishs.Where(o => o.Source.SourceId == sourceId)
                 .Select(p => p.Parish.ParishId)
                 .ToList();
     }
 }
 public string GetWitnesseStringForMarriage(Guid marriageId)
 {
     using (var context = new GeneralModelContainer())
     {
         return string.Join(" ",
             context.MarriageMapWitness.Where(m => m.Marriages.Marriage_Id == marriageId)
                 .Select(p => p.Persons.Surname)
                 .ToArray());
     }
 }
        public List<ServiceSourceType> GetSourceTypeByFilter(SourceTypeSearchFilter sourceTypeSearchFilter)
        {
            using (var context = new GeneralModelContainer())
            {
                List<ServiceSourceType> sourceTypesDataTable;
                if (sourceTypeSearchFilter.Description.Trim() == "%")
                {
                    sourceTypesDataTable =
                        context.SourceTypes.OrderBy(s => s.SourceTypeOrder).Select(p => new ServiceSourceType
                        {
                            Description = p.SourceTypeDesc,
                            TypeId = p.SourceTypeId,
                            Order = p.SourceTypeOrder,
                            UserId = 0 //p.SourceUserAdded.GetValueOrDefault()
                        }).ToList();

                }
                else
                {
                    if (sourceTypeSearchFilter.SourceTypeIds.Count > 0)
                    {
                        sourceTypesDataTable =
                            context.SourceTypes.Where(
                                s => sourceTypeSearchFilter.SourceTypeIds.Contains(s.SourceTypeId))
                                .OrderBy(s => s.SourceTypeOrder)
                                .Select(p => new ServiceSourceType
                                {
                                    Description = p.SourceTypeDesc,
                                    TypeId = p.SourceTypeId,
                                    Order = p.SourceTypeOrder,
                                    UserId = 0 //p.SourceUserAdded
                                }).ToList();
                    }
                    else
                    {
                        sourceTypesDataTable =
                            context.SourceTypes.Where(
                                o => o.SourceTypeDesc.Contains(sourceTypeSearchFilter.Description))
                                .OrderBy(s => s.SourceTypeOrder)
                                .Select(p => new ServiceSourceType
                                {
                                    Description = p.SourceTypeDesc,
                                    TypeId = p.SourceTypeId,
                                    Order = p.SourceTypeOrder,
                                    UserId = 0 //p.SourceUserAdded
                                }).ToList();
                    }

                }

                return sourceTypesDataTable;
            }
        }
示例#8
0
        public List<BatchDto> GetBatchsAndContents(BatchSearchFilter searchFilter)
        {
            using (var context = new GeneralModelContainer())
            {
                //search filter current unused

                return context.BatchLog.ToList().Select(b => new BatchDto
                {
                    Id = b.Id, BatchId = b.BatchId, PersonId = b.PersonId, MarriageId = b.MarriageId, SourceId = b.SourceId, ParishId = b.ParishId, TimeRun = b.TimeRun, Ref = b.Ref, IsDeleted = b.IsDeleted.GetValueOrDefault()
                }).ToList();
            }
        }
示例#9
0
        public void DeleteParishs(List<Guid> parishIds)
        {
            using (var context = new GeneralModelContainer())
            {
                var customer = context.Parishs.Where(c => parishIds.Contains(c.ParishId) && c != null).ToList();

                foreach (var parish in customer)
                {
                    context.Parishs.Remove(parish);
                    context.SaveChanges();
                }
            }
        }
示例#10
0
 public List<CensusPlace> Get1841Census()
 {
     using (var context = new GeneralModelContainer())
     {
         return context.uvw_1841Census.ToList().Select(entry => new CensusPlace
         {
             ParishId = entry.ParishId,
             PlaceName = entry.ParishName,
             LocX = entry.ParishX.GetValueOrDefault(),
             LocY = entry.ParishY.GetValueOrDefault()
         }).ToList();
     }
 }
        public void DeleteByFileIdAndSourceId(Guid? sourceId, Guid? fileId)
        {
            using (var context = new GeneralModelContainer())
            {
                var sourcemapping = GetByFileIdAndSourceId2(sourceId, fileId).FirstOrDefault();

                if (sourcemapping != null)
                {
                    context.SourceMappings.Remove(sourcemapping);
                    context.SaveChanges();
                }
            }
        }
        public void DeleteByMappingId(int mappingId)
        {
            using (var context = new GeneralModelContainer())
            {
                var sourcemapping = context.SourceMappings.FirstOrDefault(sm => sm.MappingId == mappingId);

                if (sourcemapping != null)
                {
                    context.SourceMappings.Remove(sourcemapping);
                    context.SaveChanges();
                }
            }
        }
示例#13
0
        public void DeleteSource2(Guid sourceId)
        {
            using (var context = new GeneralModelContainer())
            {
                var source = context.Sources.FirstOrDefault(o => o.SourceId == sourceId);

                if (source == null) return;

                context.Sources.Remove(source);

                context.SaveChanges();
            }
        }
示例#14
0
        public void DeleteRelationMapping(int relationMappingId)
        {
            var relMap = GetRelationsByType2(relationMappingId).FirstOrDefault();

            if (relMap == null) return;

            using (var context = new GeneralModelContainer())
            {

                context.Relations.Remove(relMap);

                context.SaveChanges();
            }
        }
示例#15
0
 public List<ServiceFile> GetFilesByParent(Guid parentId)
 {
     using (var context = new GeneralModelContainer())
     {
         return
             context.Files.Where(s => s.SourceMappings.Any(o => o.Source.SourceId == parentId))
                 .Select(p => new ServiceFile
                 {
                     FileId = p.FiletId,
                     FileDescription = p.FileDescription,
                     FileLocation = p.FileLocation
                 }).ToList();
     }
 }
示例#16
0
 public List<ShortBatch> GetBatchList(BatchSearchFilter searchFilter)
 {
     using (var context = new GeneralModelContainer())
     {
         //search filter current unused
         return context.BatchLog.ToList().GroupBy(g => g.BatchId).Select(b => new ShortBatch
         {
             BatchId = b.First().BatchId,
             TimeRun = b.First().TimeRun,
             Ref = b.First().Ref,
             IsDeleted = b.First().IsDeleted.GetValueOrDefault()
         }).ToList();
     }
 }
示例#17
0
        public void Delete(Guid deathBirthRecId)
        {
            using (var context = new GeneralModelContainer())
            {

                var person = context.Persons.FirstOrDefault(o => o.Person_id == deathBirthRecId);

                if (person != null)
                {
                    person.IsDeleted = true;
                    context.SaveChanges();
                }

            }
        }
示例#18
0
        public void DeleteMarriageTemp2(Guid marriageId)
        {
            using (var context = new GeneralModelContainer())
            {

                var marriage = context.Marriages.FirstOrDefault(m => m.Marriage_Id == marriageId);

                if (marriage != null)
                {
                    marriage.IsDeleted = true;
                    context.SaveChanges();
                }

            }
        }
        public void DeleteByMapTypeIdAndSourceId(Guid sourceId, int mapTypeId)
        {
            using (var context = new GeneralModelContainer())
            {
                var sourcemapping = GetBySourceIdAndMapTypeId2(sourceId, mapTypeId).FirstOrDefault();

                if (sourcemapping != null)
                {
                    context.SourceMappings.Remove(sourcemapping);

                    context.SaveChanges();
                }

            }

            //  Adapter.DeleteBySourceIdAndMapTypeId(sourceId, mapTypeId);
        }
示例#20
0
        public IList<Guid> GetDataByDupeRefByMarriageId(Guid marriageId)
        {
            using (var context = new GeneralModelContainer())
            {
                var marriage = context.Marriages.FirstOrDefault(p => p.Marriage_Id == marriageId);

                if (marriage != null)
                {

                    return
                        context.Marriages.Where(o => o.UniqueRef == marriage.UniqueRef && o.IsDeleted == false)
                            .Select(p => p.Marriage_Id)
                            .ToList();
                }

                return new List<Guid>();
            }
        }
        public void DeleteBySourceIdMarriageIdOrPersonId(Guid? sourceId, Guid? recordId)
        {
            using (var context = new GeneralModelContainer())
            {
                var sourcemapping = GetByPersonOrMarriageIdAndSourceId2(sourceId, recordId).FirstOrDefault();

                if (sourcemapping != null)
                {
                    // because source mappings are added and removed in disconnected state from the db
                    // and the source mapping might not be in the entity model by this point BUT it could still be in the db
                    if (context.SourceMappings.Count(sm => sm.MappingId == sourcemapping.MappingId) > 0)
                        context.SourceMappings.Remove(sourcemapping);

                    context.SaveChanges();

                }
            }
        }
示例#22
0
        public Guid AddParish(string parishName, string parishNotes, 
            string deposited, string parentParish, int startYear, string parishCounty, int endYear, decimal parishX, decimal parishY)
        {
            Guid parishId = Guid.NewGuid();

            parishName = parishName.Trim();
            parentParish = parentParish.Trim();

            using (var context = new GeneralModelContainer())
            {
                var parishs =
                    context.Parishs.Where(
                        o =>
                            o.ParishName.ToLower().Contains(parishName) &&
                            o.ParishRegistersDeposited.ToLower().Contains(deposited.ToLower()));

                if (!parishs.Any())
                {
                    var parish = new Parish
                    {
                        ParishId = parishId,
                        ParentParish = parentParish,
                        ParishCounty = parishCounty,
                        ParishEndYear = endYear,
                        ParishName = parishName,
                        ParishNotes = parishNotes,
                        ParishRegistersDeposited = deposited,
                        ParishStartYear = startYear,
                        ParishX = parishX,
                        ParishY = parishY
                    };

                    context.Parishs.Add(parish);
                }
                else
                {
                    parishId = parishs.First().ParishId;
                }

                context.SaveChanges();

                return parishId;
            }
        }
 public List<MarriageWitness> GetWitnessesForMarriage(Guid marriageId)
 {
     using (var context = new GeneralModelContainer())
     {
         return context.MarriageMapWitness.
             Where(m => m.Marriages.Marriage_Id == marriageId)
             .ToList()
             .Select(
                 p =>
                     p.Persons != null
                         ? new MarriageWitness
                         {
                             Description = p.WitnessNote,
                             Person = p.Persons.ToServicePerson()
                         }
                         : null)
             .ToList();
     }
 }
        public void DeleteSourceTypes(List<int> sourceTypeIds)
        {
            using (var context = new GeneralModelContainer())
            {
                var st = context.SourceTypes.ToList();

                foreach (
                    var record in
                        sourceTypeIds.Select(
                            sourceTypeId =>
                                st.FirstOrDefault(o => o.SourceTypeId == sourceTypeId))
                            .Where(record => record != null))
                {
                    context.SourceTypes.Remove(record);
                }

                context.SaveChanges();
            }
        }
示例#25
0
        public void RemoveBatch(Guid batchId)
        {
            using (var context = new GeneralModelContainer())
            {
                var batchLogs = context.BatchLog.Where(c => batchId == c.BatchId).ToList();

                foreach (var batchLog in batchLogs.Where(b => b != null))
                {
                    var found = false;

                    if (batchLog.PersonId != null)
                    {

                        var person = context.Persons.FirstOrDefault(p => p.Person_id == batchLog.PersonId);

                        if (person != null)
                        {
                            context.Persons.Remove(person);
                            found = true;
                        }
                    }

                    if (batchLog.MarriageId != null)
                    {
                        var marriage = context.Marriages.FirstOrDefault(p => p.Marriage_Id == batchLog.MarriageId);

                        if (marriage != null)
                        {
                            context.Marriages.Remove(marriage);
                            found = true;
                        }
                    }

                    if (found)
                    {
                        batchLog.IsDeleted = true;
                        context.SaveChanges();
                    }

                }
            }
        }
示例#26
0
        public List<MarriageResult> GetByListId(List<Guid> marriageIds)
        {
            using (var context = new GeneralModelContainer())
            {
                var results = context.Marriages.Where(m => marriageIds.Contains(m.Marriage_Id)).ToList();

                return results.Select(r => new MarriageResult()
                {
                    MarriageId = r.Marriage_Id,
                    FemaleCName = r.FemaleCName,
                    FemaleSName = r.FemaleSName,
                    MaleCName = r.MaleCName,
                    MaleSName = r.MaleSName,
                    MarriageLocation = r.MarriageLocation,
                    MarriageTotalEvents = r.TotalEvents.GetValueOrDefault(),
                    MarriageYear = r.YearIntVal.GetValueOrDefault(),
                    UniqueRef = r.UniqueRef.GetValueOrDefault()
                }).ToList();
            }
        }
示例#27
0
 public List<LogDto> GetLogsByParams(LogSearch searchOptions)
 {
     using (var context = new GeneralModelContainer())
     {
         return
             context.Log.Where(
                 o =>
                     o.LogDate > searchOptions.From && o.LogDate < searchOptions.To &&
                     o.LogType == searchOptions.LogType).Select(a => new LogDto
                     {
                         LogData = a.LogData,
                         LogId = a.LogId,
                         LogType = a.LogType,
                         LogDate = a.LogDate,
                         LogException = a.LogException,
                         LogSource = a.LogSource,
                         LogStackTrace = a.LogStackTrace
                     }).ToList();
     }
 }
示例#28
0
        public int AddLog(LogDto log)
        {
            using (var context = new GeneralModelContainer())
            {
                var mylog = new Log
                {
                    LogData = log.LogData,
                    LogDate = log.LogDate,
                    LogType = log.LogType,
                    LogException = log.LogException,
                    LogSource = log.LogSource,
                    LogStackTrace = log.LogStackTrace
                };

                context.Log.Add(mylog);

                context.SaveChanges();

                return mylog.LogId;
            }
        }
        public void DeleteWitnessesForMarriage(Guid marriageId)
        {
            using (var context = new GeneralModelContainer())
            {
                foreach (
                    var mmw in
                        context.MarriageMapWitness.Where(m => m.Marriages.Marriage_Id == marriageId).ToList())
                {
                    context.MarriageMapWitness.Remove(mmw);

                    if (mmw.Persons != null)
                    {
                        if (
                            context.MarriageMapWitness.Count(o => o.Persons.Person_id == mmw.Persons.Person_id) ==
                            0)
                            context.Persons.Remove(mmw.Persons);
                    }
                }

                context.SaveChanges();
            }
        }
示例#30
0
        public Guid AddFile2(string description, string filePath, int userId, string thumbPath)
        {
            using (var context = new GeneralModelContainer())
            {
                var file = new EntityModel.File
                {
                    FileContent = "",
                    FileDate = DateTime.Today,
                    FileDescription = description,
                    FileEntryAdded = DateTime.Today,
                    FileLocation = filePath,
                    FilerUserAdded = userId,
                    FileThumbLocation = thumbPath,
                    FiletId = Guid.NewGuid()
                };

                context.Files.Add(file);

                context.SaveChanges();

                return file.FiletId;
            }
        }