Exemplo n.º 1
0
        public METER Save(METER meter)
        {
            if (meter.ID == 0)
            {
                context.METERs.Add(meter);
            }
            else
            {
                context.Entry(meter).State = EntityState.Modified;
            }
            context.SaveChanges();

            return(meter);
        }
Exemplo n.º 2
0
        private string CheckVerificationNoteForMeter(METER meter, MeterType meterType)
        {
            var age = Bill.Date.Year - meter.VARIFICATION_DATE.Year;

            if (meter.VARIFICATION_DATE > Bill.Date.AddYears(-age))
            {
                age--;
            }

            return((age >= meterType.VarificationPeriod) ?
                   String.Format(Localization.MeterVerificationNote,
                                 meterType.VarificationPeriod, meter.VARIFICATION_DATE.ToString("dd MM yyyy")) :
                   String.Empty);
        }
Exemplo n.º 3
0
        private static void GetTemperatureHistory(TownUtilityBillSystemEntities context, BillModel model, METER m)
        {
            List <Temperature> temperaturesDB        = new List <Temperature>();
            DateTime           temperatureStartDate  = new DateTime();
            DateTime           temperatureFinishDate = new DateTime();
            int    temperatureYearsHistory           = 2;
            float  valueSum = 0;
            float  averageValue;
            string fullMonthName = "";

            temperatureStartDate  = Convert.ToDateTime(model.Bill.Period + "-01");
            temperatureStartDate  = temperatureStartDate.AddYears(-1);
            temperatureFinishDate = temperatureStartDate.AddMonths(1);

            var temperatureItemsDB = context.TEMPERATURE.Where(t => t.TOWN_ID == m.ADDRESS.TOWN_ID).ToList();

            foreach (var d in temperatureItemsDB)
            {
                temperaturesDB.Add(new Temperature()
                {
                    Id = d.ID, Date = d.DATE, MinValue = d.MINVALUE, MaxValue = d.MAXVALUE
                });
            }

            for (int j = 0; j < temperatureYearsHistory; j++)
            {
                for (; temperatureStartDate < temperatureFinishDate; temperatureStartDate = temperatureStartDate.AddDays(1))
                {
                    valueSum += (float)(temperaturesDB.Where(t => t.Date == temperatureStartDate).FirstOrDefault().MinValue + temperaturesDB.Where(t => t.Date == temperatureStartDate).FirstOrDefault().MaxValue) / 2;
                }

                temperatureStartDate = temperatureStartDate.AddMonths(-1);
                fullMonthName        = temperatureStartDate.ToString("MMMM yyyy");
                averageValue         = valueSum / System.DateTime.DaysInMonth(temperatureStartDate.Year, temperatureStartDate.Month);

                model.Temperatures.Add(new TemperatureModel()
                {
                    AverageValue = (float)Math.Round(averageValue, 1), MonthName = fullMonthName
                });

                temperatureStartDate  = temperatureStartDate.AddYears(1);
                temperatureFinishDate = temperatureStartDate.AddMonths(1);
                valueSum = 0;
            }
        }
Exemplo n.º 4
0
 public void Delete(METER meter)
 {
     context.METERs.Remove(meter);
     context.SaveChanges();
 }
Exemplo n.º 5
0
        private static float GetConsumedMonthValue(DateTime startDate, DateTime finishDate, METER meter)
        {
            using (var context = new TownUtilityBillSystemV2Entities())
            {
                float consumedMonthValue;

                var startMeterItem = (from item in context.METER_ITEMs
                                      where item.METER_ID == meter.ID && item.DATE == startDate
                                      select item).FirstOrDefault();

                var finishMeterItem = (from item in context.METER_ITEMs
                                       where item.METER_ID == meter.ID && item.DATE == finishDate
                                       select item).FirstOrDefault();

                consumedMonthValue = finishMeterItem.VALUE - startMeterItem.VALUE;

                return(consumedMonthValue);
            }
        }