public void SplitHeirdomWithTestament(Person deadperson) { Testament t = deadperson.testament; foreach (Person p in t.assetDivide.Keys) { int stI = 0; for (int i = 0; i < p.bankAccounts.Length; i++) { if (p.bankAccounts[i].accountBlocked) { stI++; } else { break; } } deadperson.assetAccount.TransferAssetTaxFree(p.assetAccount, p.bankAccounts[stI], deadperson.bankAccounts[0], 0, t.assetDivide[p]); } foreach (Person p in t.moneyDivide.Keys) { int stI = 0; for (int i = 0; i < p.bankAccounts.Length; i++) { if (p.bankAccounts[i].accountBlocked) { stI++; } else { break; } } int stD = 0; for (int i = 0; i < deadperson.bankAccounts.Length; i++) { if (deadperson.bankAccounts[i].accountBlocked) { stD++; } else { break; } } if (stD < deadperson.bankAccounts.Length - 1) { break; } if (stI < p.bankAccounts.Length - 1) { deadperson.bankAccounts[stD].TransferMoneyTaxFree(p.bankAccounts[stI], "HS MTRANSFER FROM " + deadperson.ID, (int)t.moneyDivide[p]); } } }
private int num_verses = 0; //we set this once so we dont have to calculate it everytime #endregion Fields #region Constructors public Chapter( int chapter_id, ref Testament testament, ref Book book) { this.chapter_id = chapter_id; this.testament = testament; this.book = book; verses = new Hashtable(); }
public BibleBook(int a_templateID, int a_orderID, string a_bookName, int a_authorID, string a_authorName, Testament a_testament, List <Chapter> a_chapters) { TemplateID = a_templateID; m_orderID = a_orderID; BookName = a_bookName; m_debugName = a_bookName; m_authorID = a_authorID; m_authorName = a_authorName; m_testament = a_testament; m_chapters = a_chapters; }
public Book( int id, string name, string abbr, ref Testament testament) { this.id = id; this.name = name; this.testament = testament; this.abbr = abbr; chapters = new Hashtable(); }
public Verse( int verse_id, string text, ref Testament testament, ref Book book, ref Chapter chapter, ref Translation translation ) { this.verse_id = verse_id; this.text = text; this.book = book; this.chapter = chapter; this.next_verse = null; this.prev_verse = null; this.translation = translation; is_last_verse_of_chapter = false; }
/// <summary> /// Update an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public TestamentViewModel Update(TestamentViewModel model) { //this.ThrowExceptionIfExist(model); var entity = this._testamentRepository.Get(model.Id); //model.ToEntity(); entity = this._testamentRepository.Update(entity); Testament entityAr = entity.ChildTranslatedCustodies.FirstOrDefault(x => x.Language == Language.Arabic); entityAr.Description = model.DescriptionAr; this._testamentRepository.Update(entityAr); Testament entityEn = entity.ChildTranslatedCustodies.FirstOrDefault(x => x.Language == Language.English); entityEn.Description = model.DescriptionEn; this._testamentRepository.Update(entityEn); #region Commit Changes this._unitOfWork.Commit(); #endregion model = entity.ToModel(); return(model); }
public static void MakeList(ref List <Verse> lst) { lst = new List <Verse>(); //return Task.Run<int>(() => //{ using (CsvFileReader reader = new CsvFileReader("/sdcard/Android/data/com.companyname.KJVSharp/files/_MyV.csv")) { Testament testament = Testament.Old; int i = 0; try { CsvRow row = new CsvRow(); Book curBook = new Book() { BookName = "", }; // Chapter curChap = new Chapter() { Number = "", /*Testament = testament, BibleIndex = context.Books.Count() + 1,*/ Oid = new Guid(GetRandomOid()) }; var curVer = new Verse() { Text = "", }; while (reader.ReadRow(row)) { string[] segments = row.GetSegments(); Console.WriteLine($"{i} {row } {row }"); string verse = segments[1].Replace("<i>", "").Replace("</i>", ""); //should be Book, <i>was</i> ! ; string cell = segments[0]; string book; string vnum; string ch; try { if (GetBookChapterVerseNum(cell, out book, out ch, out vnum)) { //Book booktoadd = ; StaticHelperMethods.WriteOut($"Book {book} {ch}:{vnum} {verse}"); testament = testament == Testament.Old && book.Contains("Matthew") ? Testament.New : testament; if (curBook.BookName == book) { StaticHelperMethods.WriteOut($"SAMWBOOK"); } else { curBook = new Book() { BookName = book, }; // curBook = new Book() { BookName = book, /*Testament = testament, BibleIndex = context.Books.Count() + 1,*/ Oid = new Guid(GetRandomOid()) }; } curVer = new Verse() { Book = curBook, Number = vnum, Chapter = ch, Text = verse, // Length = verse.Length, // NumWords = verse.Where(x => string.IsNullOrWhiteSpace(x.ToString())).Count() }; lst.Add(curVer); } } catch (Exception ex) { StaticHelperMethods.WriteOut($"Ex {ex}"); System.Diagnostics.Debug.WriteLineIf(true, $"{ex}"); // return MasterbkList; } }// context.SaveChanges(); // return ret;// context.SaveChanges(); } catch (Exception ex) { StaticHelperMethods.WriteOut($"Ex {ex}"); System.Diagnostics.Debug.WriteLineIf(true, $"{ex}"); // return MasterbkList; } } var books = lst.Select(x => x.Book).Distinct(); foreach (var item in books) { item.Verses.AddRange(lst.Where(x => x.Book == item)); } return; }
/*add finally blocks*/ public static List<Book> getListOfBooks() { string sqlQuery = "Select id, abbr, testament, name From books Order by id"; MySqlConnection conn = DBManager.getConnection(); try { conn.Open(); MySqlCommand cmd = new MySqlCommand(sqlQuery, conn); MySqlDataReader rdr = cmd.ExecuteReader(); List<Book> list = new List<Book>(); Testament old_testament = new Testament(0, Testament.OLD_TESTAMENT_NAME); Testament new_testament = new Testament(1, Testament.NEW_TESTAMENT_NAME); while (rdr.Read()) { //quick hack int testament_id = Int32.Parse(rdr[2].ToString()); if (testament_id == 0) { list.Add( new Book( Int32.Parse((rdr[0]).ToString()), rdr[3].ToString(), ((rdr[1]).ToString()), ref old_testament)); } else { list.Add( new Book( Int32.Parse((rdr[0]).ToString()), rdr[3].ToString(), ((rdr[1]).ToString()), ref new_testament)); } } rdr.Close(); conn.Close(); return list; } catch (Exception ex) { Console.WriteLine(ex.StackTrace); conn.Close(); return null; } }
/*this adds the books to the testament*/ public static void addTestamentBooks(ref Testament testament) { string sqlQuery = "Select id, abbr, testament, name From books WHERE " +" testament ='"+ testament.testament_id+"' Order by id"; MySqlConnection conn = DBManager.getConnection(); try { conn.Open(); MySqlCommand cmd = new MySqlCommand(sqlQuery, conn); MySqlDataReader rdr = cmd.ExecuteReader(); Book prev_book = null; Book next_book = null; if (rdr.HasRows) { rdr.Read(); Book curr_book = new Book( Int32.Parse((rdr[0]).ToString()), rdr[3].ToString(), ((rdr[1]).ToString()), ref testament); while (curr_book != null) { //curr_chapter.prev_chapter = prev_chapter; if (rdr.Read()) { next_book = new Book( Int32.Parse((rdr[0]).ToString()), rdr[3].ToString(), ((rdr[1]).ToString()), ref testament); curr_book.prev_book = prev_book; curr_book.next_book = next_book; testament.addBook(ref curr_book); prev_book = curr_book; curr_book = next_book; } else { curr_book.prev_book = prev_book; curr_book.next_book = null; testament.addBook(ref curr_book); break; } } } /*while (rdr.Read()) { Book aBook = new Book( Int32.Parse((rdr[0]).ToString()), rdr[3].ToString(), ((rdr[1]).ToString()), ref testament); testament.addBook(ref aBook); }*/ rdr.Close(); conn.Close(); } catch (Exception ex) { Console.WriteLine(ex.StackTrace); conn.Close(); } }
public static Bible GetData(string resource) { Testament oldTestament = new Testament() { Id = Guid.NewGuid(), Name = "Old Testament", Books = new List <Book>() }; Testament newTestament = new Testament() { Id = Guid.NewGuid(), Name = "New Testament", Books = new List <Book>() }; Bible bible = new Bible() { Id = Guid.NewGuid(), OldTestamentId = oldTestament.Id, NewTestamentId = newTestament.Id, Name = "KJV", OldTestament = oldTestament, NewTestament = newTestament }; int lineNum = 0; try { var assembly = IntrospectionExtensions.GetTypeInfo(typeof(Verse)).Assembly; //foreach (var res in assembly.GetManifestResourceNames()) // info += "found resource: " + res; //Debug.WriteLine(info); Stream stream = assembly.GetManifestResourceStream(resource); //Stream stream = assembly.GetManifestResourceStream("BibleMemoryAssistant.Data.KJVWHOLE.csv"); string text = ""; if (stream != null) { using (var reader = new System.IO.StreamReader(stream)) { text = reader.ReadToEnd(); } } else { Debug.WriteLine("SHIT"); } var csv = text.Split('\n'); Book currentBook = null;//new Book() { Name = "Genesis", Position = 1 }; string strCurrentBook = ""; int intCurrentChapter = 0; Chapter currentChapter = null;//new Chapter() { Number = 1 }; Regex regexBook = new Regex(@"[\d]* ?[A-z]+\b"); Regex regexChaptVerse = new Regex(@"\b[\d]+:[\d]+"); bool isOldTestament = true; int bookIndex = 1; for (int i = 0; i < csv.Length; i++) { lineNum++; string line = csv[i]; string strRowBook = regexBook.Match(line).Value; if (isOldTestament && strRowBook == "Matthew") { isOldTestament = false; } var arrChapterVerse = regexChaptVerse.Match(line).Value.Split(':'); int intRowChapter = int.Parse(arrChapterVerse[0].Trim()); int intVerseNum = int.Parse(arrChapterVerse[1].Trim()); string strVerseContent = line.Substring(line.IndexOf(',') + 1); if (strCurrentBook != strRowBook) { //need to create new currentBook = new Book { Id = Guid.NewGuid(), Name = strRowBook, Position = bookIndex++, Chapters = new List <Chapter>() }; strCurrentBook = strRowBook; currentChapter = new Chapter() { Id = Guid.NewGuid(), Number = intRowChapter, Book = currentBook, BookId = currentBook.Id }; intCurrentChapter = intRowChapter; currentBook.Chapters.Add(currentChapter); if (isOldTestament) { currentBook.Testament = oldTestament; oldTestament.Books.Add(currentBook); } else { currentBook.Testament = newTestament; newTestament.Books.Add(currentBook); } } else if (intCurrentChapter != intRowChapter) { //new chapter currentChapter = new Chapter() { BookId = currentBook.Id, Number = intRowChapter, Book = currentBook }; intCurrentChapter = intRowChapter; currentBook.Chapters.Add(currentChapter); } currentChapter.Verses.Add(new Verse() { Text = strVerseContent, //Chapter = currentChapter, //ChapterId = currentChapter.Id, //Id = Guid.NewGuid(), IsMemorized = false, VerseNumber = intVerseNum }); } } catch (Exception ex) { Debug.WriteLine("THIS LINE " + lineNum + "\n" + ex.ToString()); } return(bible); }
/// <summary> /// Add an entity. /// </summary> /// <param name="model"></param> /// <returns></returns> public TestamentViewModel Add(TestamentViewModel model) { if (model.Journal == null) { this.ThrowExceptionIfExist(model); var entity = model.ToEntity(); entity = this._testamentRepository.Add(entity); foreach (var advance in model.Advances) { var advanceEntity = advance.ToEntity(); advanceEntity.Testament = entity; advanceEntity.CurrentAmount = advanceEntity.Amount; advanceEntity.IsClosed = false; entity.Advances.Add(advanceEntity); advanceEntity = this._advancesRepository.Add(advanceEntity); var advanceEntityAr = new Advance { Description = advance.DescriptionAr, Language = Language.Arabic, ParentKeyAdvance = advanceEntity }; advanceEntity.ChildTranslatedAdvances.Add(advanceEntityAr); this._advancesRepository.Add(advanceEntityAr); var advanceEntityEn = new Advance { Description = advance.DescriptionEn, Language = Language.English, ParentKeyAdvance = advanceEntity }; advanceEntity.ChildTranslatedAdvances.Add(advanceEntityEn); this._advancesRepository.Add(advanceEntityEn); } var entityAr = new Testament { //Id = entity.Id, Description = model.DescriptionAr, Language = Language.Arabic }; entity.ChildTranslatedCustodies.Add(entityAr); this._testamentRepository.Add(entityAr); var entityEn = new Testament { //Id = entity.Id, Description = model.DescriptionEn, Language = Language.English }; entity.ChildTranslatedCustodies.Add(entityEn); this._testamentRepository.Add(entityEn); #region Commit Changes this._unitOfWork.Commit(); #endregion model.Id = entity.Id; //this._journalPostingsService.TryPostAutomatic(entity.Id, MovementType.PaymentMovement); model.Journal = this._journalPostingsService.Post(model.Id, MovementType.Testament); model.Journal.Date = model.Date.Value; foreach (var Journal in model.Journal.journalDetails) { Journal.AccountFullCode = this._accountChartsRepository.Get().FirstOrDefault(x => x.Id == Journal.AccountId).FullCode; } } else if (model.Journal.PostingStatus == PostingStatus.Approved) { this._journalsService.AddJournal(model.Journal, PostingStatus.NeedAprove); var entity = this._testamentRepository.Get(model.Id); if (entity != null) { entity.IsPosted = false; entity.PostingDate = DateTime.Now; entity.PostedByUserId = this._currentUserService.CurrentUserId; entity = this._testamentRepository.Update(entity); } this._unitOfWork.Commit(); } else if (model.Journal.PostingStatus == PostingStatus.Rejected) { } return(model); }