Files
raven/server/AyaNova/DataList/PartRestockDataList.cs
2021-02-26 20:02:00 +00:00

117 lines
5.3 KiB
C#

using System.Collections.Generic;
using AyaNova.Biz;
namespace AyaNova.DataList
{
internal class PartRestockDataList : DataListProcessingBase
{
//NOTE: this object has NO rowid as it's a synthetic list not primarily based on any particular db table
public PartRestockDataList()
{
// SELECT apart.id AS partid, apartwarehouse.id AS partwarehouseid, apart.partnumber, apartwarehouse.name AS displaywarehouse, "
// + "amanufacturer.id AS manufactureid, amanufacturer.name AS displaymanufacturer, awholesaler.id AS wholesalerid, awholesaler.name AS displaywholesaler, "
// + "aalternativewholesaler.id AS alternativewholesalerid, aalternativewholesaler.name AS displayalternativewholesaler,"
// + "apartstocklevel.minimumquantity, vpartinventorynow.balance, COALESCE(vpartsonorder.quantityonorder,0) AS onorderquantity, "
// + "apartstocklevel.minimumquantity - (COALESCE(vpartinventorynow.balance, 0) + COALESCE(vpartsonorder.quantityonorder, 0)) AS requiredquantity "
DefaultListObjectType = AyaType.PartInventoryRestock;
SQLFrom = "FROM vrestockrequired";
var RoleSet = BizRoles.GetRoleSet(DefaultListObjectType);
AllowedRoles = RoleSet.ReadFullRecord | RoleSet.Change;
DefaultColumns = new List<string>() {
"PartPartNumber", "PartWarehouseName", Vendor,manufac,whlsl "PartByWarehouseInventoryMinStockLevel",
"PartInventoryBalance", "PartByWarehouseInventoryQuantityOnOrder",
"PartByWarehouseInventoryReorderQuantity", "PartRestocktags" };
DefaultSortBy = new Dictionary<string, string>() { { "PartRestockname", "+" } };
FieldDefinitions = new List<DataListFieldDefinition>();
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "PartPartNumber",
FieldKey = "PartPartNumber",
AyaObjectType = (int)AyaType.Part,
UiFieldDataType = (int)UiFieldDataType.Text,
SqlIdColumnName = "partid",
SqlValueColumnName = "partnumber"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "PartWarehouseName",
FieldKey = "PartWarehouseName",
AyaObjectType = (int)AyaType.PartWarehouse,
UiFieldDataType = (int)UiFieldDataType.Text,
SqlIdColumnName = "partwarehouseid",
SqlValueColumnName = "displaywarehouse"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
FieldKey = "PartManufacturerID",
TKey = "PartManufacturerID",
UiFieldDataType = (int)UiFieldDataType.Text,
AyaObjectType = (int)AyaType.Vendor,
SqlIdColumnName = "manufactureid",
SqlValueColumnName = "displaymanufacturer"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
FieldKey = "PartWholesalerID",
TKey = "PartWholesalerID",
UiFieldDataType = (int)UiFieldDataType.Text,
AyaObjectType = (int)AyaType.Vendor,
SqlIdColumnName = "wholesalerid",
SqlValueColumnName = "displaywholesaler"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
FieldKey = "PartAlternativeWholesalerID",
TKey = "PartAlternativeWholesalerID",
UiFieldDataType = (int)UiFieldDataType.Text,
AyaObjectType = (int)AyaType.Vendor,
SqlIdColumnName = "alternativewholesalerid",
SqlValueColumnName = "displayalternativewholesaler"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "PartByWarehouseInventoryMinStockLevel",
FieldKey = "PartByWarehouseInventoryMinStockLevel",
UiFieldDataType = (int)UiFieldDataType.Decimal,
SqlValueColumnName = "apartstocklevel.minimumquantity"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "PartInventoryBalance",
FieldKey = "PartInventoryBalance",
UiFieldDataType = (int)UiFieldDataType.Decimal,
SqlValueColumnName = "vpartinventorynow.balance"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "PartByWarehouseInventoryQuantityOnOrder",
FieldKey = "PartByWarehouseInventoryQuantityOnOrder",
UiFieldDataType = (int)UiFieldDataType.Decimal,
SqlValueColumnName = "onorderquantity"
});
FieldDefinitions.Add(new DataListFieldDefinition
{
TKey = "PartByWarehouseInventoryReorderQuantity",
FieldKey = "PartByWarehouseInventoryReorderQuantity",
UiFieldDataType = (int)UiFieldDataType.Decimal,
SqlValueColumnName = "onorderquantity"
});
}
}//eoc
}//eons