Пример #1
0
    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]);
            }
        }
    }
Пример #2
0
        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();
        }
Пример #3
0
 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;
 }
Пример #4
0
 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();
 }
Пример #5
0
 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;
 }
Пример #6
0
        /// <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);
        }
Пример #7
0
        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;
        }
Пример #8
0
        /*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;
            }
        }
Пример #9
0
        /*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();

            }
        }
Пример #10
0
        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);
        }
Пример #11
0
        /// <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);
        }