Example #1
0
        private ShikinSyuushiUchiwakeRow CreateUchiwakeRow(int daikubunId, int kamokuKubunIndex, int startKaikeiKubun, int endKaikeiKubun)
        {
            int kubunId       = db.MTKamokuKubun.GetParentOf(daikubunId).GetId();
            int kamokuKubunId = shikinSyuushiList[0].ChildRowsOf[daikubunId][kamokuKubunIndex].Id;

            var uchiwakeRow = new ShikinSyuushiUchiwakeRow(kubunId, daikubunId, kamokuKubunId);

            long sum = 0;
            long naibuTorihikiSyoukyoGaku = 0;

            for (int kaikeiKubun = 0; kaikeiKubun < shikinSyuushiList.Count; kaikeiKubun++)
            {
                long taisyaku = shikinSyuushiList[kaikeiKubun].ChildRowsOf[daikubunId][kamokuKubunIndex].Taisyaku;
                sum += taisyaku;
                naibuTorihikiSyoukyoGaku -= shikinSyuushiList[kaikeiKubun].ChildRowsOf[daikubunId][kamokuKubunIndex].NaibuTorihikiSyoukyoGaku;

                if (kaikeiKubun >= startKaikeiKubun)
                {
                    uchiwakeRow.SetCol(kaikeiKubun - startKaikeiKubun + (int)StaticCols.NumStaticCols, taisyaku);
                }
            }
            uchiwakeRow.SetCol((int)StaticCols.Summary, sum);
            uchiwakeRow.SetCol((int)StaticCols.NaibuTorihikiSyoukyoGaku, naibuTorihikiSyoukyoGaku);
            uchiwakeRow.SetCol((int)StaticCols.HoujinSummary, sum + naibuTorihikiSyoukyoGaku);

            return(uchiwakeRow);
        }
Example #2
0
        public ShikinSyuushiUchiwakeRow GetSummaryRow(models.query.ShikinSyuushi.SummaryItem item, int startKaikeiKubun, int endKaikeiKubun)
        {
            var uchiwakeRow = new ShikinSyuushiUchiwakeRow(-1, -1, (int)item);

            long sum = 0;
            long naibuTorihikiSyoukyoGaku = 0;

            for (int kaikeiKubun = 0; kaikeiKubun < shikinSyuushiList.Count; kaikeiKubun++)
            {
                long taisyaku = shikinSyuushiList[kaikeiKubun].SummaryRows[(int)item].Taisyaku;
                sum += taisyaku;
                naibuTorihikiSyoukyoGaku += shikinSyuushiList[kaikeiKubun].SummaryRows[(int)item].NaibuTorihikiSyoukyoGaku;

                if (kaikeiKubun >= startKaikeiKubun)
                {
                    uchiwakeRow.SetCol(kaikeiKubun - startKaikeiKubun + (int)StaticCols.NumStaticCols, taisyaku);
                }
            }
            uchiwakeRow.SetCol((int)StaticCols.Summary, sum);
            uchiwakeRow.SetCol((int)StaticCols.NaibuTorihikiSyoukyoGaku, naibuTorihikiSyoukyoGaku);
            uchiwakeRow.SetCol((int)StaticCols.HoujinSummary, sum - naibuTorihikiSyoukyoGaku);

            return(uchiwakeRow);
        }