private UnParkResponse UnParkedVehicleResponse(ParkingDetails unParkData, UnParkedDetails unParkedData) { try { UnParkResponse responseData = new UnParkResponse { ReceiptNumber = unParkData.ReceiptNumber, OwnerName = unParkData.OwnerName, VehicleNumber = unParkData.VehicleNumber, VehicleBrand = unParkData.VehicleBrand, Color = unParkData.Color, IsParked = unParkData.IsParked, Disability = unParkData.Disability, AttendantName = unParkData.AttendantName, ParkingDate = unParkData.ParkingDate, UnParkedDate = unParkedData.UnParkedDate, ParkingSlot = unParkData.ParkingSlot, TotalTime = unParkedData.TotalTime, TotalAmt = unParkedData.TotalAmt }; if (responseData != null) { return(responseData); } return(null); } catch (Exception ex) { throw new Exception(ex.Message); } }
public UnParkResponse UnParkVehicle(int securityID, int receiptNo) { try { var securityExists = _appDBContext.Users. Any(security => security.ID == securityID); if (securityExists) { double total = _appDBContext.ParkingDetails. Where(vehicle => vehicle.ReceiptNumber == receiptNo). Select(vehicle => (DateTime.Now.Subtract(vehicle.ParkingDate).TotalMinutes)).Sum(); UnParkedDetails unParkedData = new UnParkedDetails { ReceiptNumber = receiptNo, UnParkedDate = DateTime.Now, TotalTime = total, TotalAmt = total * 10 }; _appDBContext.UnParkedDetails.Add(unParkedData); _appDBContext.SaveChanges(); var unParkData = _appDBContext.ParkingDetails. Where(vehicle => vehicle.ReceiptNumber == receiptNo). FirstOrDefault(); unParkData.IsParked = false; _appDBContext.SaveChanges(); UnParkResponse responseData = UnParkedVehicleResponse(unParkData, unParkedData); return(responseData); } return(null); } catch (Exception ex) { throw new Exception(ex.Message); } }