private DateTimeOffset CalculateNextWatering(WaterRate waterRate, DateTimeOffset timeLastWatered) { DateTimeOffset newTime; if (timeLastWatered == null) { newTime = DateTimeOffset.Now; } else { newTime = timeLastWatered; } switch (waterRate) { case WaterRate.Daily: newTime = timeLastWatered.AddDays(1); break; case WaterRate.Weekly: newTime = timeLastWatered.AddDays(7); break; case WaterRate.Biweekly: newTime = timeLastWatered.AddDays(14); break; case WaterRate.Monthly: newTime = timeLastWatered.AddMonths(1); break; } return(newTime); }
public async Task <IActionResult> Edit(int id, [Bind("Id,HoldingTypeId,WaterConnectionId,Rate,FloorNos,FloorRate,FineRate,IsActive,Remark")] WaterRate waterRate) { if (id != waterRate.Id) { return(NotFound()); } if (ModelState.IsValid) { try { waterRate.UpdateDate = DateTime.Now; //waterRate.UpdatedBy =; _context.Update(waterRate); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!WaterRateExists(waterRate.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction(nameof(Index))); } ViewData["HoldingTypeId"] = new SelectList(_context.HoldingType, "Id", "TypeName", waterRate.HoldingTypeId); ViewData["WaterConnectionId"] = new SelectList(_context.WaterConnection, "Id", "Id", waterRate.WaterConnectionId); return(View(waterRate)); }
public async Task <IActionResult> Create([Bind("Id,HoldingTypeId,WaterConnectionId,Rate,FloorNos,FloorRate,FineRate,IsActive,Remark")] WaterRate waterRate) { if (ModelState.IsValid) { waterRate.InsertDate = DateTime.Now; // clientInfo.InsertBy= _context.Add(waterRate); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } ViewData["HoldingTypeId"] = new SelectList(_context.HoldingType, "Id", "TypeName", waterRate.HoldingTypeId); ViewData["WaterConnectionId"] = new SelectList(_context.WaterConnection, "Id", "Id", waterRate.WaterConnectionId); return(View(waterRate)); }