diff --git a/InventoryTraker.Web/Controllers/ReportController.cs b/InventoryTraker.Web/Controllers/ReportController.cs index 514acd3..93a4381 100644 --- a/InventoryTraker.Web/Controllers/ReportController.cs +++ b/InventoryTraker.Web/Controllers/ReportController.cs @@ -58,18 +58,18 @@ namespace InventoryTraker.Web.Controllers } [HttpGet] - public ActionResult MonthlyInventory() + public ActionResult Movement() { return View(); } - public ActionResult MonthlyInventory(DateTime month) + public ActionResult Movement(DateTime month) { var startDate = month; var endDate = startDate.AddMonths(1); var inventoryTypeReport - = new InventoryTypeReport + = new MovementReport { Items = GetInventoryTypeReportItems(startDate, endDate), Month = month @@ -78,7 +78,7 @@ namespace InventoryTraker.Web.Controllers return BetterJson(inventoryTypeReport); } - private IEnumerable GetInventoryTypeReportItems(DateTime startDate, DateTime endDate) + private IEnumerable GetInventoryTypeReportItems(DateTime startDate, DateTime endDate) { var transactionsMostRecentBefore = (from transaction in _context.Transactions @@ -128,7 +128,7 @@ namespace InventoryTraker.Web.Controllers sums => sums.Inventory.Id, // pk (before, sums, r) => { - var item = new InventoryReportItem(); + var item = new MovementReportInventoryItem(); if (before != null) { @@ -163,7 +163,7 @@ namespace InventoryTraker.Web.Controllers from item in inventoryReportItems group item by item.Inventory.InventoryType into grp - select new InventoryTypeReportItem + select new MovementReportItem { InventoryType = Mapper.Map(grp.Key), BeginningQuantity = grp.Sum(g => g.BeginningQuantity), @@ -176,4 +176,15 @@ namespace InventoryTraker.Web.Controllers return inventoryTypeReportItems; } } + + internal class MovementReportInventoryItem + { + public Inventory Inventory { get; set; } + public int BeginningQuantity { get; set; } + public int AddedQuantity { get; set; } + public int TotalAvailableQuantity { get; set; } + public int DistributedQuantity { get; set; } + public int AdjustmentQuantity { get; set; } + public int EndingQuantity { get; set; } + } } \ No newline at end of file diff --git a/InventoryTraker.Web/InventoryTraker.Web.csproj b/InventoryTraker.Web/InventoryTraker.Web.csproj index 22000f2..646f5ad 100644 --- a/InventoryTraker.Web/InventoryTraker.Web.csproj +++ b/InventoryTraker.Web/InventoryTraker.Web.csproj @@ -246,8 +246,8 @@ - - + + @@ -309,7 +309,7 @@ - + Designer @@ -374,8 +374,8 @@ - - + + @@ -388,6 +388,7 @@ + @@ -410,7 +411,7 @@ - + Web.config diff --git a/InventoryTraker.Web/Models/InventoryReportItem.cs b/InventoryTraker.Web/Models/InventoryReportItem.cs index df276f1..4513ca2 100644 --- a/InventoryTraker.Web/Models/InventoryReportItem.cs +++ b/InventoryTraker.Web/Models/InventoryReportItem.cs @@ -2,14 +2,5 @@ using InventoryTraker.Web.Core; namespace InventoryTraker.Web.Models { - public class InventoryReportItem - { - public Inventory Inventory { get; set; } - public int BeginningQuantity { get; set; } - public int AddedQuantity { get; set; } - public int TotalAvailableQuantity { get; set; } - public int DistributedQuantity { get; set; } - public int AdjustmentQuantity { get; set; } - public int EndingQuantity { get; set; } - } + } \ No newline at end of file diff --git a/InventoryTraker.Web/Models/InventoryTypeReport.cs b/InventoryTraker.Web/Models/MovementReport.cs similarity index 57% rename from InventoryTraker.Web/Models/InventoryTypeReport.cs rename to InventoryTraker.Web/Models/MovementReport.cs index 1d1ac76..24c8ca3 100644 --- a/InventoryTraker.Web/Models/InventoryTypeReport.cs +++ b/InventoryTraker.Web/Models/MovementReport.cs @@ -3,9 +3,9 @@ using System.Collections.Generic; namespace InventoryTraker.Web.Models { - public class InventoryTypeReport + public class MovementReport { public DateTime Month { get; set; } - public IEnumerable Items { get; set; } + public IEnumerable Items { get; set; } } } \ No newline at end of file diff --git a/InventoryTraker.Web/Models/InventoryTypeReportItem.cs b/InventoryTraker.Web/Models/MovementReportItem.cs similarity index 90% rename from InventoryTraker.Web/Models/InventoryTypeReportItem.cs rename to InventoryTraker.Web/Models/MovementReportItem.cs index 6140dfe..629dae4 100644 --- a/InventoryTraker.Web/Models/InventoryTypeReportItem.cs +++ b/InventoryTraker.Web/Models/MovementReportItem.cs @@ -1,6 +1,6 @@ namespace InventoryTraker.Web.Models { - public class InventoryTypeReportItem + public class MovementReportItem { public InventoryTypeViewModel InventoryType { get; set; } public int BeginningQuantity { get; set; } diff --git a/InventoryTraker.Web/Utilities/MovementReportWriter.cs b/InventoryTraker.Web/Utilities/MovementReportWriter.cs new file mode 100644 index 0000000..cbd87e1 --- /dev/null +++ b/InventoryTraker.Web/Utilities/MovementReportWriter.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Web; +using CsvHelper.Configuration; +using InventoryTraker.Web.Models; + +namespace InventoryTraker.Web.Utilities +{ + public class MovementReportWriter + { + public sealed class InventoryTypeReportMap : CsvClassMap + { + public InventoryTypeReportMap() + { + + } + } + + } +} \ No newline at end of file diff --git a/InventoryTraker.Web/Views/Report/MonthlyInventory.cshtml b/InventoryTraker.Web/Views/Report/Movement.cshtml similarity index 59% rename from InventoryTraker.Web/Views/Report/MonthlyInventory.cshtml rename to InventoryTraker.Web/Views/Report/Movement.cshtml index 0e97c23..8932382 100644 --- a/InventoryTraker.Web/Views/Report/MonthlyInventory.cshtml +++ b/InventoryTraker.Web/Views/Report/Movement.cshtml @@ -3,12 +3,12 @@ ViewBag.Title = "Monthly Inventory Report"; } -
+

@ViewBag.Title

-
+
@@ -16,10 +16,10 @@
-
+
-

{{vm.monthlyInventoryData.month | date:'MMMM yyyy'}}

- +

{{vm.movementData.month | date:'MMMM yyyy'}}

+
diff --git a/InventoryTraker.Web/Views/Shared/_Navigation.cshtml b/InventoryTraker.Web/Views/Shared/_Navigation.cshtml index 3589a0b..f27d29f 100644 --- a/InventoryTraker.Web/Views/Shared/_Navigation.cshtml +++ b/InventoryTraker.Web/Views/Shared/_Navigation.cshtml @@ -39,7 +39,7 @@ Distribution
  • - Monthly Inventory + Monthly Inventory
  • diff --git a/InventoryTraker.Web/js/report/MonthlyInventoryReportController.js b/InventoryTraker.Web/js/report/MonthlyInventoryReportController.js deleted file mode 100644 index 0e86ec3..0000000 --- a/InventoryTraker.Web/js/report/MonthlyInventoryReportController.js +++ /dev/null @@ -1,12 +0,0 @@ -(function () { - 'use strict'; - - window.app.controller('MonthlyInventoryReportController', MonthlyInventoryReportController); - - MonthlyInventoryReportController.$inject = ['$scope', 'reportSvc']; - function MonthlyInventoryReportController($scope, reportSvc) { - var vm = this; - vm.loadData = reportSvc.loadMonthlyInventoryData; - vm.monthlyInventoryData = reportSvc.monthlyInventoryData; - } -})(); \ No newline at end of file diff --git a/InventoryTraker.Web/js/report/MovementReportController.js b/InventoryTraker.Web/js/report/MovementReportController.js new file mode 100644 index 0000000..ada26ce --- /dev/null +++ b/InventoryTraker.Web/js/report/MovementReportController.js @@ -0,0 +1,12 @@ +(function () { + 'use strict'; + + window.app.controller('MovementReportController', MovementReportController); + + MovementReportController.$inject = ['$scope', 'reportSvc']; + function MovementReportController($scope, reportSvc) { + var vm = this; + vm.loadData = reportSvc.loadMovementData; + vm.movementData = reportSvc.movementData; + } +})(); \ No newline at end of file diff --git a/InventoryTraker.Web/js/report/MonthlyInventoryReportDirective.js b/InventoryTraker.Web/js/report/MovementReportDirective.js similarity index 65% rename from InventoryTraker.Web/js/report/MonthlyInventoryReportDirective.js rename to InventoryTraker.Web/js/report/MovementReportDirective.js index 0bb3fb2..186ecfa 100644 --- a/InventoryTraker.Web/js/report/MonthlyInventoryReportDirective.js +++ b/InventoryTraker.Web/js/report/MovementReportDirective.js @@ -1,11 +1,11 @@ (function() { 'use strict'; - window.app.directive('monthlyInventoryReport', monthlyInventoryReport); - function monthlyInventoryReport() { + window.app.directive('movementReport', movementReport); + function movementReport() { return { - scope: { monthlyInventoryData: "=" }, - templateUrl: '/report/template/monthlyInventoryReport.tmpl.cshtml', + scope: { movementData: "=" }, + templateUrl: '/report/template/movementReport.tmpl.cshtml', controller: controller, controllerAs: 'vm' } @@ -14,7 +14,7 @@ controller.$inject = ['$scope', '$uibModal', 'inventorySvc']; function controller($scope, $uibModal, inventorySvc) { var vm = this; - vm.monthlyInventoryData = $scope.monthlyInventoryData; + vm.movementData = $scope.movementData; vm.editInventory = function (inventoryId) { inventorySvc.find(inventoryId) diff --git a/InventoryTraker.Web/js/report/reportSvc.js b/InventoryTraker.Web/js/report/reportSvc.js index 6a48e30..618c095 100644 --- a/InventoryTraker.Web/js/report/reportSvc.js +++ b/InventoryTraker.Web/js/report/reportSvc.js @@ -4,13 +4,13 @@ reportSvc.$inject = ['$http']; function reportSvc($http) { var distributionData = []; - var monthlyInventoryData = {}; + var movementData = {}; var svc = { distributionData: distributionData, loadDistributionReport: loadDistributionReport, - monthlyInventoryData: monthlyInventoryData, - loadMonthlyInventoryData: loadMonthlyInventoryData + movementData: movementData, + loadMovementData: loadMovementData }; return svc; @@ -22,10 +22,10 @@ }); } - function loadMonthlyInventoryData(query) { - return $http.post('/Report/MonthlyInventory', query) + function loadMovementData(query) { + return $http.post('/Report/Movement', query) .success(function (data) { - angular.copy(data, monthlyInventoryData); + angular.copy(data, movementData); }); } } diff --git a/InventoryTraker.Web/js/report/templates/monthlyInventoryReport.tmpl.cshtml b/InventoryTraker.Web/js/report/templates/movementReport.tmpl.cshtml similarity index 95% rename from InventoryTraker.Web/js/report/templates/monthlyInventoryReport.tmpl.cshtml rename to InventoryTraker.Web/js/report/templates/movementReport.tmpl.cshtml index d9221a1..7d7d522 100644 --- a/InventoryTraker.Web/js/report/templates/monthlyInventoryReport.tmpl.cshtml +++ b/InventoryTraker.Web/js/report/templates/movementReport.tmpl.cshtml @@ -13,7 +13,7 @@ - + @* *@ {{item.inventoryType.name}} {{item.inventoryType.unitsPerCase}} / {{item.inventoryType.containerType}} diff --git a/InventoryTraker.Web/js/utility/templates/monthQuery.tmpl.cshtml b/InventoryTraker.Web/js/utility/templates/monthQuery.tmpl.cshtml index 8f6daa4..e0c7446 100644 --- a/InventoryTraker.Web/js/utility/templates/monthQuery.tmpl.cshtml +++ b/InventoryTraker.Web/js/utility/templates/monthQuery.tmpl.cshtml @@ -16,7 +16,6 @@ class="form-control" bs-datepicker="" />
    -