예제 #1
0
 private static Domain.IncomeGroupLimitGroup loadIncomeGroup(System.Data.Common.DbDataReader reader)
 {
     Domain.IncomeGroupLimitGroup income = new Domain.IncomeGroupLimitGroup();
     income.Limitation = new List <Domain.IncomeGroupLimit>();
     Domain.IncomeGroupLimit limit = null;
     while (reader.Read())
     {
         var currentId = reader.GetGuid(0);
         if (income.Id != currentId)
         {
             income.Id            = currentId;
             income.CompanyId     = reader.GetGuid(1);
             income.IncomeGroupId = reader.IsDBNull(2) ? (Guid?)null : reader.GetGuid(2);
             income.Remark        = reader.GetString(3);
             income.Limitation    = new List <Domain.IncomeGroupLimit>();
         }
         var currlimitId = reader.GetGuid(4);
         if (!income.Limitation.Any(it => it.Id == currlimitId))
         {
             limit               = new Domain.IncomeGroupLimit();
             limit.Id            = currlimitId;
             limit.IncomeId      = reader.GetGuid(5);
             limit.Type          = (Common.Enums.PeriodType)reader.GetByte(6);
             limit.Price         = reader.GetInt32(7);
             limit.Airlines      = reader.GetString(12);
             limit.IsOwnerPolicy = reader.GetBoolean(13);
             limit.Period        = new List <Domain.IncomeGroupPeriod>();
             income.Limitation.Add(limit);
         }
         Domain.IncomeGroupPeriod period = new Domain.IncomeGroupPeriod();
         period.DeductId    = reader.GetGuid(8);
         period.StartPeriod = reader.GetDecimal(9);
         period.EndPeriod   = reader.GetDecimal(10);
         period.Period      = reader.GetDecimal(11);
         limit.Period.Add(period);
     }
     return(income);
 }
예제 #2
0
        private void LoadIncomeGroupPeriod(Domain.IncomeGroupDeductGlobal setting)
        {
            string sql = @"SELECT [DeductId],[StartPeriod],[EndPeriod],[Period] FROM T_OEMIncomeGroupPeriod WHERE DeductId=@IncomeId1";

            using (var dbOperator = new DbOperator(Provider, ConnectionString))
            {
                List <Domain.IncomeGroupPeriod> list = new List <Domain.IncomeGroupPeriod>();
                dbOperator.AddParameter("@IncomeId1", setting.Id);
                using (var reader = dbOperator.ExecuteReader(sql))
                {
                    Domain.IncomeGroupPeriod period = null;
                    while (reader.Read())
                    {
                        period             = new Domain.IncomeGroupPeriod();
                        period.DeductId    = reader.GetGuid(0);
                        period.StartPeriod = reader.GetDecimal(1);
                        period.EndPeriod   = reader.GetDecimal(2);
                        period.Period      = reader.GetDecimal(3);
                        list.Add(period);
                    }
                    setting.Period = list;
                }
            }
        }