73 lines
1.2 KiB
C#
73 lines
1.2 KiB
C#
|
|
using System.IO;
|
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
using Microsoft.AspNetCore.Mvc.RazorPages;
|
|
|
|
using CVRLIB.Inventory;
|
|
|
|
namespace VSERVERWS.Pages;
|
|
|
|
|
|
public class PuceModel : PageModel {
|
|
private readonly ILogger<PrivacyModel> _logger;
|
|
|
|
|
|
public Dictionary<string, CVINVENTORY> PuceCVINV = new Dictionary<string, CVINVENTORY>();
|
|
|
|
|
|
public PuceModel(ILogger<PrivacyModel> logger) {
|
|
_logger = logger;
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
public async Task OnGet() {
|
|
|
|
var tCVINV = await PuceListINV();
|
|
|
|
PuceCVINV = tCVINV.ParseByCodePrefix();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
public async Task<CVINVENTORY> PuceListINV() {
|
|
|
|
CVINVENTORY rCVI;
|
|
|
|
var PCODES = new SortedSet<string>();
|
|
|
|
|
|
var pcodefiles = Directory.GetFiles(Program.AppData + @"\Puce", "*.csv");
|
|
|
|
foreach ( var filepath in pcodefiles ) {
|
|
|
|
var LINES = await System.IO.File.ReadAllLinesAsync(filepath);
|
|
|
|
foreach (var line in LINES) {
|
|
|
|
if (string.IsNullOrWhiteSpace(line)) continue;
|
|
|
|
string PCODE = line.Split(',')[0].Trim(['"']);
|
|
|
|
PCODES.Add(PCODE);
|
|
}
|
|
}
|
|
|
|
rCVI = await CVINVENTORY.LoadItemsAsync(PCODES);
|
|
rCVI.RemoveZeroQTY();
|
|
|
|
|
|
return rCVI;
|
|
}
|
|
|
|
|
|
|
|
}
|