case 4025 replaced partnumber with partname and changed partname to partdescription

This commit is contained in:
2021-11-22 20:30:03 +00:00
parent 7b3b547072
commit 0265efbc26
45 changed files with 336 additions and 327 deletions

View File

@@ -396,7 +396,7 @@ $BODY$;
when 17 then aytable = 'afileattachment'; aynamecolumn ='displayfilename';
when 18 then aytable = 'adatalistsavedfilter';
when 19 then aytable = 'aformcustom'; aynamecolumn = 'formkey';
when 20 then aytable = 'apart'; aynamecolumn ='partnumber';
when 20 then aytable = 'apart';
when 21 then aytable = 'apm'; aynamecolumn ='serial';
when 22 then aytkey= 'PMItem';
when 23 then aytkey= 'WorkOrderItemExpense';
@@ -511,7 +511,7 @@ BEGIN
when 17 then aytable = 'afileattachment'; aynamecolumn ='displayfilename';
when 18 then aytable = 'adatalistsavedfilter';
when 19 then aytable = 'aformcustom'; aynamecolumn = 'formkey';
when 20 then aytable = 'apart'; aynamecolumn ='partnumber';
when 20 then aytable = 'apart';
when 21 then aytable = 'apm'; aynamecolumn ='serial';
when 22 then aytkey= 'PMItem';
when 23 then aytkey= 'WorkOrderItemExpense';
@@ -784,9 +784,9 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
await ExecQueryAsync("ALTER TABLE auser ADD FOREIGN KEY (vendorid) REFERENCES avendor(id)");
//PART
await ExecQueryAsync("CREATE TABLE apart (id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name TEXT, active BOOL NOT NULL, "
await ExecQueryAsync("CREATE TABLE apart (id BIGINT GENERATED ALWAYS AS IDENTITY PRIMARY KEY, name TEXT NOT NULL UNIQUE, active BOOL NOT NULL, "
+ "notes TEXT, wiki TEXT, customfields TEXT, tags VARCHAR(255) ARRAY, "
+ "partnumber TEXT NOT NULL UNIQUE, manufacturerid BIGINT REFERENCES avendor, manufacturernumber TEXT, "
+ "description TEXT, manufacturerid BIGINT REFERENCES avendor, manufacturernumber TEXT, "
+ "wholesalerid BIGINT REFERENCES avendor, wholesalernumber TEXT, alternativewholesalerid BIGINT REFERENCES avendor, alternativewholesalernumber TEXT, "
+ "cost DECIMAL(38,18) NOT NULL, retail DECIMAL(38,18) NOT NULL, unitofmeasure TEXT, upc TEXT "
+ " )");
@@ -1038,7 +1038,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
+ "FROM apurchaseorderitem WHERE (COALESCE(apurchaseorderitem.quantityordered,0)-COALESCE(apurchaseorderitem.quantityreceived,0)) > 0 GROUP BY partid, partwarehouseid");
//VIEWRESTOCKREQUIRED (used by PO indirectly through a keyless model in dbset)
await ExecQueryAsync("CREATE VIEW viewrestockrequired AS SELECT apart.id AS partid, apartwarehouse.id AS partwarehouseid, apart.partnumber, apartwarehouse.name AS displaywarehouse, "
await ExecQueryAsync("CREATE VIEW viewrestockrequired AS SELECT apart.id AS partid, apartwarehouse.id AS partwarehouseid, apart.name as partname, apart.description as partdescription, apartwarehouse.name AS displaywarehouse, "
+ "amanufacturer.id AS manufacturerid, 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(vpartsonorderuncommitted.quantityonorder,0) AS onorderquantity, "
@@ -1054,7 +1054,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
//VIEWPARTINVENTORYLIST
await ExecQueryAsync(
"CREATE VIEW viewpartinventorylist AS select apart.id as partid, apart.partnumber, apart.name as partname, apart.active as partactive, apart.cost as partcost, apart.retail as partretail,"
"CREATE VIEW viewpartinventorylist AS select apart.id as partid, apart.name as partname, apart.description as partdescription, apart.active as partactive, apart.cost as partcost, apart.retail as partretail,"
+ "apart.tags as parttags, apartwarehouse.id as partwarehouseid, apartwarehouse.name as partwarehousename, awholesaler.name as wholesalername, awholesaler.id as wholesalerid, "
+ "aaltwholesaler.id as altwholesalerid, aaltwholesaler.name as altwholesalername, vpartinventorynow.balance as onhandqty,COALESCE(vpartsonorder.quantityonorder,0) as onorderqty, "
+ "COALESCE(vpartsonordercommitted.quantityonordercommitted,0) as onordercommittedqty,COALESCE(apartstocklevel.minimumquantity,0) as restockminqty, "
@@ -1070,7 +1070,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
//VIEWUNFULFILLEDPARTREQUESTLIST
await ExecQueryAsync("CREATE VIEW viewunfulfilledpartrequestlist AS SELECT AWORKORDERITEMPARTREQUEST.ID AS REQUESTID, PARTID, PARTWAREHOUSEID, QUANTITY, AWORKORDER.SERIAL, "
+ "APART.PARTNUMBER AS PARTNUMBER, APART.NAME AS PARTNAME, APARTWAREHOUSE.NAME AS PARTWAREHOUSENAME, AWHOLESALER.NAME AS WHOLESALERNAME, "
+ "APART.DESCRIPTION AS PARTDESCRIPTION, APART.NAME AS PARTNAME, APARTWAREHOUSE.NAME AS PARTWAREHOUSENAME, AWHOLESALER.NAME AS WHOLESALERNAME, "
+ "AWORKORDERITEMPARTREQUEST.REQUESTEDBYUSERID AS REQUESTEDBYUSERID, AUSER.NAME AS REQUESTEDBYUSERNAME, "
+ "AWHOLESALER.ID AS WHOLESALERID, AALTWHOLESALER.ID AS ALTWHOLESALERID, AALTWHOLESALER.NAME AS ALTWHOLESALERNAME FROM AWORKORDERITEMPARTREQUEST "
+ "LEFT JOIN AWORKORDERITEM ON AWORKORDERITEM.ID = AWORKORDERITEMPARTREQUEST.WORKORDERITEMID LEFT JOIN AWORKORDER ON AWORKORDERITEM.WORKORDERID = AWORKORDER.ID "
@@ -1082,7 +1082,7 @@ $BODY$ LANGUAGE PLPGSQL STABLE");
//VIEWPARTINVENTORYREQUESTLIST (note: twinned with pareventoryrequestdatalist, this drives reporting for that datalist which is not reportable directly)
await ExecQueryAsync("CREATE VIEW VIEWPARTINVENTORYREQUESTLIST AS SELECT AWORKORDERITEMPARTREQUEST.ID AS REQUESTID, APART.ID AS PARTID, APARTWAREHOUSE.ID AS PARTWAREHOUSEID, QUANTITY, "
+ "APART.PARTNUMBER AS PARTNUMBER, APART.NAME AS PARTNAME, APARTWAREHOUSE.NAME AS PARTWAREHOUSENAME, AWHOLESALER.NAME AS WHOLESALERNAME, "
+ "APART.DESCRIPTION AS PARTDESCRIPTION, APART.NAME AS PARTNAME, APARTWAREHOUSE.NAME AS PARTWAREHOUSENAME, AWHOLESALER.NAME AS WHOLESALERNAME, "
+ "AWORKORDER.SERIAL AS WOSERIAL, AWORKORDERITEMPARTREQUEST.REQUESTEDBYUSERID AS REQUESTEDBYUSERID, AUSER.NAME AS REQUESTEDBYUSERNAME, "
+ "AWHOLESALER.ID AS WHOLESALERID, AALTWHOLESALER.ID AS ALTWHOLESALERID, AALTWHOLESALER.NAME AS ALTWHOLESALERNAME, "
+ "APARTMANU.NAME AS MANUFACTURERNAME, APARTMANU.ID AS MANUFACTURERID, APART.UPC AS PARTUPC, APURCHASEORDER.ID AS PURCHASEORDERID, APURCHASEORDER.SERIAL AS PURCHASEORDERSERIAL, "

View File

@@ -2529,7 +2529,7 @@ namespace AyaNova.Util
public HashSet<string> HashPartNumbers = new HashSet<string>();
public HashSet<string> HashPartNames = new HashSet<string>();
private int TotalSeededParts = 0;
//////////////////////////////////////////////////////
//PART
@@ -2546,22 +2546,22 @@ namespace AyaNova.Util
Part o = new Part();
do
{
o.PartNumber = Fake.Finance.Account(6);
} while (!HashPartNumbers.Add(o.PartNumber));
o.Name = Fake.Finance.Account(6);
} while (!HashPartNames.Add(o.Name));
o.Name = "pnm" + o.PartNumber;//temporary?? get rid of name??
o.Active = true;
o.Notes = Fake.Lorem.Sentence(null, 3);
o.Tags = RandomTags();
o.ManufacturerId = Fake.Random.Long(1, 3);//There are minimum 10 vendors seeded, want parts all in the first few so that some po stuff can kick in (vendorpartnumber etc)
o.ManufacturerNumber = "man-" + o.PartNumber;
o.ManufacturerNumber = "man-" + o.Name;
o.UPC = Fake.Commerce.Ean13();
o.WholeSalerId = Fake.Random.Long(4, 6);
o.WholeSalerNumber = "ws-" + o.PartNumber;
o.WholeSalerNumber = "ws-" + o.Name;
o.AlternativeWholeSalerId = Fake.Random.Long(7, 9);
o.AlternativeWholeSalerNumber = "aws-" + o.PartNumber;
o.AlternativeWholeSalerNumber = "aws-" + o.Name;
o.Cost = Fake.Random.Decimal(1, 25);
o.Retail = o.Cost * 1.2m;
@@ -2577,7 +2577,7 @@ namespace AyaNova.Util
TotalSeededParts++;
if (NewObject == null)
{
var err = $"Seeder::SeedPart error creating {o.PartNumber}\r\n{biz.GetErrorsAsString()}";
var err = $"Seeder::SeedPart error creating {o.Name}\r\n{biz.GetErrorsAsString()}";
log.LogError(err);
throw new System.Exception(err);
}
@@ -2621,7 +2621,7 @@ namespace AyaNova.Util
}
if (partInventory == null)
{
var err = $"Seeder::SeedPart - error creating {o.PartNumber} INVENTORY \r\n{PartInventoryBizNess.GetErrorsAsString()}";
var err = $"Seeder::SeedPart - error creating {o.Name} INVENTORY \r\n{PartInventoryBizNess.GetErrorsAsString()}";
log.LogError(err);
throw new System.Exception(err);
}