ESR-4639 -
Parcel File Creation Email
Ecron: BrokerManifestOutMain
Start()
packages =
packageBpc.GetPackagesForBroker()
packages = _packageRepository.
GetPackagesForBrokerManifestOut()
S. Proc.: [packages].
[GetPackagesForBrokerManifestOut]
result =
GetPackagesFromBrokerManifestOutAssignResults
(reader, db)
select top (200) p.packageId, b.brokerId, b.BrokerName, *
from packages.packages p
join orders.orders o on o.orderid= p.OrderId
Join Parties.Brokers b on p.BrokerId = b.BrokerId
where p.PackageStatusId = 1 (Routing Applied) and o.OrderTypeId <> 4 (Completed)
ProcessPackagesByBroker
(p, brandsWithActivations)
IF: BrokerId = 1 (Asendia)
ELSE:
ProcessAsendiaPackages
(packages.ToList(),
brandsWithActivations)
ProcessEswBrokerManifestOutPackages
(packages.ToList())
AsendiaParcelFileCreation
(packages, brandsWithActivations)
\FileProcessing\
AsendiaParcelFileCreation.cs
Start()
click to edit
SQL Scripts
BEGIN TRAN
USE eswPlatform
UPDATE Packages.Packages
SET PackageStatusId = 1
WHERE PackageId IN (3251528, 3251529, 3251530, 3251531, 3251532)
ROLLBACK TRAN
SELECT * FROM Parties.Brokers
SELECT * FROM Lookups.PackageStatuses
SELECT * FROM Lookups.OrderStatuses
select top (200) p.PackageId, p.PackageStatusId, ps.Description, b.BrokerId, b.BrokerName, o.OrderId, o.OrderStatusId, os.Description, *
from packages.packages p
join Lookups.PackageStatuses ps on p.PackageStatusId = ps.PackageStatusId
join orders.orders o on o.orderid= p.OrderId
join Lookups.OrderStatuses os on o.OrderStatusId = os.OrderStatusId
Join Parties.Brokers b on p.BrokerId = b.BrokerId
where b.BrokerId = 1
--and p.PackageStatusId = 1
and o.OrderTypeId <> 4
ORDER BY p.LastUpdateTime DESC
eCron Test
TestFileProcessing
TestBrokerManifestOutFile
For local testing,
un-comment:
\BusinessObjects\esw.BusinessObjects.Objects\EmailBpc.cs
GetSmtpClient(...)
//DEBUG ONLY! REPLACE username AND password WITH YOUR GMAIL ACCOUNT TO TEST THIS FUNCTIONALITY LOCALLY!//host = "smtp.gmail.com";
//port = 587;
//username = "esw5574@gmail.com";
//password = "eshopworld";
//client.EnableSsl = true;