hitro dodajanje vozila
This commit is contained in:
@@ -7,10 +7,12 @@ using Microsoft.AspNetCore.Mvc.RazorPages;
|
||||
using Microsoft.EntityFrameworkCore;
|
||||
using EveryThing.Data;
|
||||
using EveryThing.Models;
|
||||
using EveryThing.Models.CodeTable;
|
||||
using EveryThing.Models.Vehicle;
|
||||
using Microsoft.AspNetCore.Authorization;
|
||||
using Microsoft.AspNetCore.Identity;
|
||||
using EveryThing.Models.Invoice;
|
||||
using JetBrains.Annotations;
|
||||
using Microsoft.AspNetCore.Mvc.Rendering;
|
||||
|
||||
namespace EveryThing.Pages.CodeTableVehicles
|
||||
@@ -61,5 +63,201 @@ namespace EveryThing.Pages.CodeTableVehicles
|
||||
Vehicles = Vehicles.Where(s => s.Title.Contains(searchString)).ToList();
|
||||
}
|
||||
}
|
||||
|
||||
public IActionResult OnGetCodeTableVehicleModal([CanBeNull] string title, bool edit, int idCodeTableVehicle)
|
||||
{
|
||||
var user = _userManager.GetUserAsync(User).Result;
|
||||
|
||||
Vehicle vehicle = null;
|
||||
|
||||
if (edit)
|
||||
{
|
||||
vehicle = _context.Vehicles
|
||||
.Where(x => x.IdCompanyFk == user.IdCompanyFk)
|
||||
.FirstOrDefault(x => x.IdVehicle == idCodeTableVehicle);
|
||||
|
||||
//files = _context.Files
|
||||
// .Where(x => x.IdCompanyFk == user.IdCompanyFk
|
||||
// && x.IdReferenceFk == item.IdItem
|
||||
// && x.FileType == FileType.CodeTableItem)
|
||||
// .ToList();
|
||||
}
|
||||
|
||||
if (vehicle == null)
|
||||
{
|
||||
vehicle = new Vehicle();
|
||||
|
||||
if (title != null)
|
||||
vehicle.Title = title;
|
||||
|
||||
vehicle.Active = true;
|
||||
}
|
||||
|
||||
var departments = new SelectList(_context.CodeTableDepartements.Where(x => x.IdCompanyFk == user.IdCompanyFk && x.Active), "IdDepartement", "Title");
|
||||
var fuelTypes = new SelectList(_context.VehicleFuelTypes.Where(x => x.IdCompanyFk == user.IdCompanyFk), "IdVehicleFuelType", "Title");
|
||||
var groups = new SelectList(_context.VehicleGroups.Where(x => x.IdCompanyFk == user.IdCompanyFk && x.Active), "IdVehicleGroup", "Title");
|
||||
var makes = new SelectList(_context.VehicleMakes.Where(x => x.IdCompanyFk == user.IdCompanyFk && x.Active), "IdVehicleMake", "Title");
|
||||
var types = new SelectList(_context.VehicleTypes.Where(x => x.IdCompanyFk == user.IdCompanyFk && x.Active), "IdVehicleType", "Title");
|
||||
|
||||
return Partial("AddEditVehicleModal", new CodeTableVehicles.IndexModel.AddEditCodeTableVehicle
|
||||
{
|
||||
Vehicle = vehicle,
|
||||
Edit = edit,
|
||||
IdCodeTableVehicle = idCodeTableVehicle,
|
||||
Departments = departments,
|
||||
FuelTypes = fuelTypes,
|
||||
VehicleGroups = groups,
|
||||
VehicleMakes = makes,
|
||||
VehicleTypes = types
|
||||
//Files = files,
|
||||
});
|
||||
}
|
||||
|
||||
public IActionResult OnPostCodeTableVehicle(bool edit, Vehicle vehicleData)
|
||||
{
|
||||
var user = _userManager.GetUserAsync(User).Result;
|
||||
var successful = true;
|
||||
var error = "";
|
||||
|
||||
if (edit)
|
||||
{
|
||||
var vehicle = _context.Vehicles
|
||||
.Where(x => x.IdCompanyFk == user.IdCompanyFk)
|
||||
.FirstOrDefault(x => x.IdVehicle == vehicleData.IdVehicle);
|
||||
if (vehicle != null)
|
||||
{
|
||||
vehicle.Title = vehicleData.Title;
|
||||
vehicle.IdVehicleTypeFk = vehicleData.IdVehicleTypeFk;
|
||||
vehicle.IdMakeFk = vehicleData.IdMakeFk;
|
||||
vehicle.Model = vehicleData.Model;
|
||||
vehicle.Year = vehicleData.Year;
|
||||
vehicle.VinNumber = vehicleData.VinNumber;
|
||||
vehicle.EngineNumber = vehicleData.EngineNumber;
|
||||
vehicle.IdFuelTypeFk = vehicleData.IdFuelTypeFk;
|
||||
vehicle.IdDepartementFk = vehicleData.IdDepartementFk;
|
||||
vehicle.IdVehicleGroupFk = vehicleData.IdVehicleGroupFk;
|
||||
vehicle.VehicleMeterType = vehicleData.VehicleMeterType;
|
||||
vehicle.Note = vehicleData.Note;
|
||||
vehicle.RegistrationNumber = vehicleData.RegistrationNumber;
|
||||
vehicle.Active = vehicleData.Active;
|
||||
_context.SaveChanges();
|
||||
}
|
||||
else
|
||||
{
|
||||
successful = false;
|
||||
error = $"Codetable vehicle with ID: {vehicleData.IdVehicle} not found";
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
var vehicle = new Vehicle
|
||||
{
|
||||
IdCompanyFk = user.IdCompanyFk,
|
||||
Title = vehicleData.Title,
|
||||
IdVehicleTypeFk = vehicleData.IdVehicleTypeFk,
|
||||
IdMakeFk = vehicleData.IdMakeFk,
|
||||
Model = vehicleData.Model,
|
||||
Year = vehicleData.Year,
|
||||
VinNumber = vehicleData.VinNumber,
|
||||
EngineNumber = vehicleData.EngineNumber,
|
||||
IdFuelTypeFk = vehicleData.IdFuelTypeFk,
|
||||
IdDepartementFk = vehicleData.IdDepartementFk,
|
||||
IdVehicleGroupFk = vehicleData.IdVehicleGroupFk,
|
||||
VehicleMeterType = vehicleData.VehicleMeterType,
|
||||
Note = vehicleData.Note,
|
||||
RegistrationNumber = vehicleData.RegistrationNumber,
|
||||
Active = vehicleData.Active
|
||||
};
|
||||
_context.Vehicles.Add(vehicle);
|
||||
_context.SaveChanges();
|
||||
|
||||
vehicleData.IdVehicle = vehicle.IdVehicle;
|
||||
}
|
||||
|
||||
return new JsonResult(new { idCodeTableVehicle = vehicleData.IdVehicle, error = error, successful = successful });
|
||||
}
|
||||
|
||||
public IActionResult OnDeleteCodeTableVehicle(int idCodeTableVehicle)
|
||||
{
|
||||
var user = _userManager.GetUserAsync(User).Result;
|
||||
var successful = true;
|
||||
var error = "";
|
||||
|
||||
var vehicle = _context.Vehicles
|
||||
.Where(x => x.IdCompanyFk == user.IdCompanyFk)
|
||||
.FirstOrDefault(x => x.IdVehicle == idCodeTableVehicle);
|
||||
if (vehicle != null)
|
||||
{
|
||||
_context.Vehicles.Remove(vehicle);
|
||||
_context.SaveChanges();
|
||||
}
|
||||
else
|
||||
{
|
||||
successful = false;
|
||||
error = $"Codetable vehicle with ID: {idCodeTableVehicle} not found";
|
||||
}
|
||||
|
||||
return new JsonResult(new { idCodeTableItem = idCodeTableVehicle, error = error, successful = successful });
|
||||
}
|
||||
|
||||
public IActionResult OnGetCodeTableVehicle(int idCodeTableVehicle)
|
||||
{
|
||||
var user = _userManager.GetUserAsync(User).Result;
|
||||
|
||||
var successful = true;
|
||||
var error = "";
|
||||
var vehicleInUse = false;
|
||||
|
||||
var vehicle = _context.Vehicles
|
||||
.Where(x => x.IdCompanyFk == user.IdCompanyFk)
|
||||
.Include(x => x.VehicleVehicleFueling)
|
||||
.Include(x => x.VehicleVehicleIncident)
|
||||
.Include(x => x.VehicleVehicleIssue)
|
||||
.Include(x => x.VehicleNote)
|
||||
.Include(x => x.VehicleVehicleDriver)
|
||||
.Include(x => x.VehicleVehicleMeterReading)
|
||||
.Include(x => x.VehicleVehicleDrive)
|
||||
.Include(x => x.VehicleTransportLoadingOrder)
|
||||
.FirstOrDefault(x => x.IdVehicle == idCodeTableVehicle);
|
||||
|
||||
if (vehicle == null)
|
||||
{
|
||||
successful = false;
|
||||
error = $"Codetable vehicle with ID: {idCodeTableVehicle} not found";
|
||||
}
|
||||
else
|
||||
{
|
||||
vehicleInUse = vehicle.VehicleVehicleFueling.Count > 0
|
||||
|| vehicle.VehicleVehicleIncident.Count > 0
|
||||
|| vehicle.VehicleVehicleIssue.Count > 0
|
||||
|| vehicle.VehicleVehicleDriver.Count > 0
|
||||
|| vehicle.VehicleVehicleMeterReading.Count > 0
|
||||
|| vehicle.VehicleVehicleDrive.Count > 0
|
||||
|| vehicle.VehicleTransportLoadingOrder.Count > 0
|
||||
|| vehicle.VehicleNote.Count > 0;
|
||||
vehicle.VehicleVehicleFueling = null;
|
||||
vehicle.VehicleVehicleIncident = null;
|
||||
vehicle.VehicleVehicleIssue = null;
|
||||
vehicle.VehicleNote = null;
|
||||
vehicle.VehicleVehicleDriver = null;
|
||||
vehicle.VehicleVehicleMeterReading = null;
|
||||
vehicle.VehicleVehicleDrive = null;
|
||||
vehicle.VehicleTransportLoadingOrder = null;
|
||||
}
|
||||
|
||||
return new JsonResult(new { vehicle, error, successful, vehicleInUse });
|
||||
}
|
||||
|
||||
public IActionResult OnGetCodeTableVehiclesSelect()
|
||||
{
|
||||
var user = _userManager.GetUserAsync(User).Result;
|
||||
|
||||
var vehicles = _context.Vehicles
|
||||
.Where(x => x.IdCompanyFk == user.IdCompanyFk
|
||||
&& x.Active)
|
||||
.OrderBy(x => x.Title);
|
||||
|
||||
return new JsonResult(new { vehicles = new SelectList(vehicles, "IdVehicle", "Title") });
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user