Initial
This commit is contained in:
@@ -0,0 +1,60 @@
|
||||
using System;
|
||||
using AutoMapper;
|
||||
using MileageTraker.Web.DAL;
|
||||
using MileageTraker.Web.Utility;
|
||||
|
||||
namespace MileageTraker.Web.ViewModels
|
||||
{
|
||||
public class ConfirmCreateLogViewModel : CreateLogViewModel
|
||||
{
|
||||
public string VehicleType { get; set; }
|
||||
public string VehicleColor { get; set; }
|
||||
public string VehicleTagNumber { get; set; }
|
||||
public string DateHowLongAgo { get; set; }
|
||||
public int? PreviousOdometer { get; set; }
|
||||
public DateTime? PreviousDate { get; set; }
|
||||
public int? Miles { get; set; }
|
||||
|
||||
static ConfirmCreateLogViewModel()
|
||||
{
|
||||
Mapper.CreateMap<CreateLogViewModel, ConfirmCreateLogViewModel>()
|
||||
.ForMember(c => c.CityName, opt => opt.AddFormatter(new TitleCaseFormatter()))
|
||||
.ForMember(c => c.EmployeeName, opt => opt.AddFormatter(new TitleCaseFormatter()));
|
||||
}
|
||||
|
||||
public ConfirmCreateLogViewModel(CreateLogViewModel createLogViewModel)
|
||||
{
|
||||
Mapper.Map(createLogViewModel, this);
|
||||
|
||||
DateHowLongAgo = (DateTime.Today - DateTime.Parse(Date)).ToVerboseStringHistoric();
|
||||
|
||||
var dataService = new DataService();
|
||||
|
||||
var endOdometer = int.Parse(createLogViewModel.EndOdometer);
|
||||
var date = DateTime.Parse(createLogViewModel.Date);
|
||||
|
||||
var previousLog = dataService.GetPreviousLog(endOdometer, createLogViewModel.VehicleId, date, DateTime.Now);
|
||||
if (previousLog != null)
|
||||
{
|
||||
PreviousOdometer = previousLog.EndOdometer;
|
||||
PreviousDate = previousLog.Date;
|
||||
Miles = endOdometer - previousLog.EndOdometer;
|
||||
}
|
||||
|
||||
var matchingEmployeeName = dataService.GetEmployeeNameCorrected(EmployeeName);
|
||||
|
||||
if (!string.IsNullOrEmpty(matchingEmployeeName))
|
||||
EmployeeName = matchingEmployeeName;
|
||||
|
||||
var matchingCity = dataService.GetCitiesCorrected(CityName);
|
||||
|
||||
if (!string.IsNullOrEmpty(matchingCity))
|
||||
CityName = matchingCity;
|
||||
|
||||
var vehicle = dataService.GetVehicle(VehicleId);
|
||||
VehicleColor = vehicle.Color;
|
||||
VehicleType = vehicle.Type;
|
||||
VehicleTagNumber = vehicle.TagNumber;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user