added supply usage history
This commit is contained in:
@@ -703,7 +703,7 @@ namespace CarCareTracker.Controllers
|
|||||||
var result = _serviceRecordDataAccess.SaveServiceRecordToVehicle(serviceRecord.ToServiceRecord());
|
var result = _serviceRecordDataAccess.SaveServiceRecordToVehicle(serviceRecord.ToServiceRecord());
|
||||||
if (result && serviceRecord.Supplies.Any())
|
if (result && serviceRecord.Supplies.Any())
|
||||||
{
|
{
|
||||||
RequisitionSupplyRecordsByUsage(serviceRecord.Supplies);
|
RequisitionSupplyRecordsByUsage(serviceRecord.Supplies, DateTime.Parse(serviceRecord.Date), serviceRecord.Description);
|
||||||
}
|
}
|
||||||
return Json(result);
|
return Json(result);
|
||||||
}
|
}
|
||||||
@@ -774,7 +774,7 @@ namespace CarCareTracker.Controllers
|
|||||||
var result = _collisionRecordDataAccess.SaveCollisionRecordToVehicle(collisionRecord.ToCollisionRecord());
|
var result = _collisionRecordDataAccess.SaveCollisionRecordToVehicle(collisionRecord.ToCollisionRecord());
|
||||||
if (result && collisionRecord.Supplies.Any())
|
if (result && collisionRecord.Supplies.Any())
|
||||||
{
|
{
|
||||||
RequisitionSupplyRecordsByUsage(collisionRecord.Supplies);
|
RequisitionSupplyRecordsByUsage(collisionRecord.Supplies, DateTime.Parse(collisionRecord.Date), collisionRecord.Description);
|
||||||
}
|
}
|
||||||
return Json(result);
|
return Json(result);
|
||||||
}
|
}
|
||||||
@@ -1455,7 +1455,7 @@ namespace CarCareTracker.Controllers
|
|||||||
var result = _upgradeRecordDataAccess.SaveUpgradeRecordToVehicle(upgradeRecord.ToUpgradeRecord());
|
var result = _upgradeRecordDataAccess.SaveUpgradeRecordToVehicle(upgradeRecord.ToUpgradeRecord());
|
||||||
if (result && upgradeRecord.Supplies.Any())
|
if (result && upgradeRecord.Supplies.Any())
|
||||||
{
|
{
|
||||||
RequisitionSupplyRecordsByUsage(upgradeRecord.Supplies);
|
RequisitionSupplyRecordsByUsage(upgradeRecord.Supplies, DateTime.Parse(upgradeRecord.Date), upgradeRecord.Description);
|
||||||
}
|
}
|
||||||
return Json(result);
|
return Json(result);
|
||||||
}
|
}
|
||||||
@@ -1552,7 +1552,7 @@ namespace CarCareTracker.Controllers
|
|||||||
}
|
}
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
private void RequisitionSupplyRecordsByUsage(List<SupplyUsage> supplyUsage)
|
private void RequisitionSupplyRecordsByUsage(List<SupplyUsage> supplyUsage, DateTime dateRequisitioned, string usageDescription)
|
||||||
{
|
{
|
||||||
foreach(SupplyUsage supply in supplyUsage)
|
foreach(SupplyUsage supply in supplyUsage)
|
||||||
{
|
{
|
||||||
@@ -1563,6 +1563,12 @@ namespace CarCareTracker.Controllers
|
|||||||
result.Quantity -= supply.Quantity;
|
result.Quantity -= supply.Quantity;
|
||||||
//deduct cost.
|
//deduct cost.
|
||||||
result.Cost -= (supply.Quantity * unitCost);
|
result.Cost -= (supply.Quantity * unitCost);
|
||||||
|
result.UsageHistory.Add(new SupplyUsageHistory {
|
||||||
|
Date = dateRequisitioned,
|
||||||
|
Description = usageDescription,
|
||||||
|
Quantity = supply.Quantity,
|
||||||
|
Cost = (supply.Quantity * unitCost)
|
||||||
|
});
|
||||||
//save
|
//save
|
||||||
_supplyRecordDataAccess.SaveSupplyRecordToVehicle(result);
|
_supplyRecordDataAccess.SaveSupplyRecordToVehicle(result);
|
||||||
}
|
}
|
||||||
@@ -1635,6 +1641,7 @@ namespace CarCareTracker.Controllers
|
|||||||
VehicleId = result.VehicleId,
|
VehicleId = result.VehicleId,
|
||||||
Files = result.Files,
|
Files = result.Files,
|
||||||
Tags = result.Tags,
|
Tags = result.Tags,
|
||||||
|
UsageHistory = result.UsageHistory,
|
||||||
ExtraFields = StaticHelper.AddExtraFields(result.ExtraFields, _extraFieldDataAccess.GetExtraFieldsById((int)ImportMode.SupplyRecord).ExtraFields)
|
ExtraFields = StaticHelper.AddExtraFields(result.ExtraFields, _extraFieldDataAccess.GetExtraFieldsById((int)ImportMode.SupplyRecord).ExtraFields)
|
||||||
};
|
};
|
||||||
return PartialView("_SupplyRecordModal", convertedResult);
|
return PartialView("_SupplyRecordModal", convertedResult);
|
||||||
@@ -1668,7 +1675,7 @@ namespace CarCareTracker.Controllers
|
|||||||
var result = _planRecordDataAccess.SavePlanRecordToVehicle(planRecord.ToPlanRecord());
|
var result = _planRecordDataAccess.SavePlanRecordToVehicle(planRecord.ToPlanRecord());
|
||||||
if (result && planRecord.Supplies.Any())
|
if (result && planRecord.Supplies.Any())
|
||||||
{
|
{
|
||||||
RequisitionSupplyRecordsByUsage(planRecord.Supplies);
|
RequisitionSupplyRecordsByUsage(planRecord.Supplies, DateTime.Parse(planRecord.DateCreated), planRecord.Description);
|
||||||
}
|
}
|
||||||
return Json(result);
|
return Json(result);
|
||||||
}
|
}
|
||||||
@@ -1722,7 +1729,7 @@ namespace CarCareTracker.Controllers
|
|||||||
var result = _planRecordDataAccess.SavePlanRecordToVehicle(existingRecord.ToPlanRecord());
|
var result = _planRecordDataAccess.SavePlanRecordToVehicle(existingRecord.ToPlanRecord());
|
||||||
if (result && existingRecord.Supplies.Any())
|
if (result && existingRecord.Supplies.Any())
|
||||||
{
|
{
|
||||||
RequisitionSupplyRecordsByUsage(existingRecord.Supplies);
|
RequisitionSupplyRecordsByUsage(existingRecord.Supplies, DateTime.Parse(existingRecord.DateCreated), existingRecord.Description);
|
||||||
}
|
}
|
||||||
return Json(new OperationResponse { Success = result, Message = result ? "Plan Record Added" : StaticHelper.GenericErrorMessage });
|
return Json(new OperationResponse { Success = result, Message = result ? "Plan Record Added" : StaticHelper.GenericErrorMessage });
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -35,5 +35,6 @@
|
|||||||
public List<UploadedFiles> Files { get; set; } = new List<UploadedFiles>();
|
public List<UploadedFiles> Files { get; set; } = new List<UploadedFiles>();
|
||||||
public List<string> Tags { get; set; } = new List<string>();
|
public List<string> Tags { get; set; } = new List<string>();
|
||||||
public List<ExtraField> ExtraFields { get; set; } = new List<ExtraField>();
|
public List<ExtraField> ExtraFields { get; set; } = new List<ExtraField>();
|
||||||
|
public List<SupplyUsageHistory> UsageHistory { get; set; } = new List<SupplyUsageHistory>();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,6 +14,7 @@
|
|||||||
public List<UploadedFiles> Files { get; set; } = new List<UploadedFiles>();
|
public List<UploadedFiles> Files { get; set; } = new List<UploadedFiles>();
|
||||||
public List<string> Tags { get; set; } = new List<string>();
|
public List<string> Tags { get; set; } = new List<string>();
|
||||||
public List<ExtraField> ExtraFields { get; set; } = new List<ExtraField>();
|
public List<ExtraField> ExtraFields { get; set; } = new List<ExtraField>();
|
||||||
|
public List<SupplyUsageHistory> UsageHistory { get; set; } = new List<SupplyUsageHistory>();
|
||||||
public SupplyRecord ToSupplyRecord() { return new SupplyRecord {
|
public SupplyRecord ToSupplyRecord() { return new SupplyRecord {
|
||||||
Id = Id,
|
Id = Id,
|
||||||
VehicleId = VehicleId,
|
VehicleId = VehicleId,
|
||||||
@@ -26,7 +27,8 @@
|
|||||||
Notes = Notes,
|
Notes = Notes,
|
||||||
Files = Files,
|
Files = Files,
|
||||||
Tags = Tags,
|
Tags = Tags,
|
||||||
ExtraFields = ExtraFields
|
ExtraFields = ExtraFields,
|
||||||
|
UsageHistory = UsageHistory
|
||||||
}; }
|
}; }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
9
Models/Supply/SupplyUsageHistory.cs
Normal file
9
Models/Supply/SupplyUsageHistory.cs
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
namespace CarCareTracker.Models
|
||||||
|
{
|
||||||
|
public class SupplyUsageHistory {
|
||||||
|
public DateTime Date { get; set; }
|
||||||
|
public string Description { get; set; }
|
||||||
|
public decimal Quantity { get; set; }
|
||||||
|
public decimal Cost { get; set; }
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -80,6 +80,10 @@
|
|||||||
<div class="modal-footer">
|
<div class="modal-footer">
|
||||||
@if (!isNew)
|
@if (!isNew)
|
||||||
{
|
{
|
||||||
|
@if (Model.UsageHistory.Any())
|
||||||
|
{
|
||||||
|
<button type="button" class="btn btn-warning" onclick="showSupplyUsageHistory()"><i class="bi bi-clock-history"></i></button>
|
||||||
|
}
|
||||||
<button type="button" class="btn btn-danger" onclick="deleteSupplyRecord(@Model.Id)" style="margin-right:auto;">@translator.Translate(userLanguage,"Delete")</button>
|
<button type="button" class="btn btn-danger" onclick="deleteSupplyRecord(@Model.Id)" style="margin-right:auto;">@translator.Translate(userLanguage,"Delete")</button>
|
||||||
}
|
}
|
||||||
<button type="button" class="btn btn-secondary" onclick="hideAddSupplyRecordModal()">@translator.Translate(userLanguage,"Cancel")</button>
|
<button type="button" class="btn btn-secondary" onclick="hideAddSupplyRecordModal()">@translator.Translate(userLanguage,"Cancel")</button>
|
||||||
@@ -94,13 +98,18 @@
|
|||||||
</div>
|
</div>
|
||||||
<script>
|
<script>
|
||||||
var uploadedFiles = [];
|
var uploadedFiles = [];
|
||||||
|
var supplyUsageHistory = [];
|
||||||
getUploadedFilesFromModel();
|
getUploadedFilesFromModel();
|
||||||
function getUploadedFilesFromModel() {
|
function getUploadedFilesFromModel() {
|
||||||
@foreach (UploadedFiles filesUploaded in Model.Files)
|
@foreach (UploadedFiles filesUploaded in Model.Files)
|
||||||
{
|
{
|
||||||
@:uploadedFiles.push({ name: "@filesUploaded.Name", location: "@filesUploaded.Location" });
|
@:uploadedFiles.push({ name: "@filesUploaded.Name", location: "@filesUploaded.Location" });
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
@foreach(SupplyUsageHistory usageHistory in Model.UsageHistory)
|
||||||
|
{
|
||||||
|
@:supplyUsageHistory.push({date: decodeHTMLEntities("@usageHistory.Date.ToShortDateString()"), description: decodeHTMLEntities("@usageHistory.Description"), quantity: decodeHTMLEntities("@usageHistory.Quantity.ToString("F")"), cost: decodeHTMLEntities("@usageHistory.Cost.ToString("C2")")})
|
||||||
|
}
|
||||||
function getSupplyRecordModelData() {
|
function getSupplyRecordModelData() {
|
||||||
return { id: @Model.Id}
|
return { id: @Model.Id}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -130,6 +130,7 @@ function getAndValidateSupplyRecordValues() {
|
|||||||
quantity: supplyQuantity,
|
quantity: supplyQuantity,
|
||||||
files: uploadedFiles,
|
files: uploadedFiles,
|
||||||
tags: supplyTags,
|
tags: supplyTags,
|
||||||
extraFields: extraFields.extraFields
|
extraFields: extraFields.extraFields,
|
||||||
|
usageHistory: supplyUsageHistory
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
Reference in New Issue
Block a user