Skip to content

Commit 70dc2e2

Browse files
authored
Merge pull request #77 from easykeys/version/6.3.6
Version/6.3.6
2 parents d12609a + cb45731 commit 70dc2e2

File tree

5 files changed

+69
-13
lines changed

5 files changed

+69
-13
lines changed

GitVersion.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
mode: ContinuousDelivery
2-
next-version: 6.3.5
2+
next-version: 6.3.6
33
increment: Patch
44
major-version-bump-message: '\+semver:\s?(breaking|major|release)'
55
minor-version-bump-message: '\+semver:\s?(feat|feature|minor)'

src/EasyKeys.Shipping.DHL.Shipment/DHLExpressShipmentProvider.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ public async Task<ShipmentLabel> CreateShipmentAsync(Shipping.Abstractions.Model
246246
ReceiverId = details.Recipient.Email,
247247
LanguageCode = "eng",
248248
LanguageCountryCode = "UK",
249-
BespokeMessage = details.CustomShipmentMessage ?? "Package has shipped!"
249+
BespokeMessage = details.CustomShipmentMessage ?? "Your Package has shipped!"
250250
}
251251
},
252252
EstimatedDeliveryDate = new EstimatedDeliveryDate
@@ -381,6 +381,6 @@ private string GetFilingType(Shipping.Abstractions.Models.Shipment shipment, Shi
381381
valueAddedServices.Add(paperless);
382382
}
383383

384-
return valueAddedServices.Any() ? valueAddedServices.ToArray() : null;
384+
return valueAddedServices.Any() ? valueAddedServices.Distinct().ToArray() : null;
385385
}
386386
}

src/EasyKeys.Shipping.FedEx.Shipment/RestApi/Impl/FedExShipmentProvider.cs

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@ public async Task<ShipmentLabel> CreateShipmentAsync(FedExServiceType serviceTyp
198198
DocType = ShippingDocumentFormatDocType.PDF,
199199
StockType = ShippingDocumentFormatStockType.PAPER_LETTER
200200
},
201-
201+
202202
CustomerImageUsages =
203203
[
204204
new CustomerImageUsage
@@ -309,7 +309,7 @@ public async Task<ShipmentLabel> CreateShipmentAsync(FedExServiceType serviceTyp
309309
shipmentRequest.RequestedShipment.CustomsClearanceDetail.DutiesPayment = new Payment_1
310310
{
311311
PaymentType = Payment_1PaymentType.RECIPIENT,
312-
Payor = new Payor_1
312+
Payor = string.IsNullOrEmpty(shipmentDetails.AccountNumber) ? null : new Payor_1
313313
{
314314
ResponsibleParty = new Party_2
315315
{
@@ -326,7 +326,7 @@ public async Task<ShipmentLabel> CreateShipmentAsync(FedExServiceType serviceTyp
326326
shipmentRequest.RequestedShipment.CustomsClearanceDetail.DutiesPayment = new Payment_1
327327
{
328328
PaymentType = Payment_1PaymentType.THIRD_PARTY,
329-
Payor = new Payor_1
329+
Payor = string.IsNullOrEmpty(shipmentDetails.AccountNumber) ? null : new Payor_1
330330
{
331331
ResponsibleParty = new Party_2
332332
{
@@ -388,6 +388,12 @@ public async Task<ShipmentLabel> CreateShipmentAsync(FedExServiceType serviceTyp
388388
}
389389
};
390390
break;
391+
default:
392+
shipmentRequest.RequestedShipment.ShippingChargesPayment = new Payment
393+
{
394+
PaymentType = PaymentType.SENDER
395+
};
396+
break;
391397
}
392398

393399
var token = await _authService.GetTokenAsync(cancellationToken);
@@ -408,15 +414,15 @@ public async Task<ShipmentLabel> CreateShipmentAsync(FedExServiceType serviceTyp
408414
var netCharge = (decimal?)rateDetail?.TotalNetCharge ?? 0m;
409415
var surCharge = (decimal?)rateDetail?.TotalSurcharges ?? 0m;
410416

411-
foreach (var piece in createdShipment.PieceResponses!)
417+
foreach (var piece in createdShipment?.PieceResponses!)
412418
{
413419
if(createdShipment?.ShipmentDocuments != null)
414420
{
415421
foreach (var doc in createdShipment.ShipmentDocuments!)
416422
{
417423
label.ShippingDocuments.Add(new Document
418424
{
419-
DocumentName = doc.ContentType.ToString()!,
425+
DocumentName = doc.ContentType.ToString() !,
420426
ImageType = doc.DocType!,
421427
Bytes = [doc.EncodedLabel],
422428
CopiesToPrint = doc.CopiesToPrint.ToString()

src/EasyKeys.Shipping.FedEx.Shipment/WebServices/Impl/FedExShipmentProvider.cs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -635,11 +635,7 @@ private void SetPackageLineItems(
635635
PartiesToTransactionAreRelatedSpecified = true,
636636
DutiesPayment = new Payment()
637637
{
638-
PaymentType = PaymentType.RECIPIENT,
639-
Payor = new Payor()
640-
{
641-
ResponsibleParty = request.RequestedShipment.ShippingChargesPayment.Payor.ResponsibleParty
642-
}
638+
PaymentType = PaymentType.RECIPIENT
643639
}
644640
};
645641

test/EasyKeys.Shipping.FuncTest/FedEx/FedExShipmentProviderTests.cs

Lines changed: 54 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,60 @@ public FedExShipmentProviderTests(ITestOutputHelper output)
3131
_output = output;
3232
}
3333

34+
[Fact]
35+
public async Task CreateDelete_Labels_ChargeRecipient_For_Domestic_Shipments_Async()
36+
{
37+
var packages = new List<Package>
38+
{
39+
// fedex envelope
40+
FedExRateConfigurator.GetFedExEnvelop(0.05M, 199m),
41+
};
42+
43+
var configurator = new FedExRateConfigurator(
44+
_origin,
45+
_domestic,
46+
packages.First(),
47+
true,
48+
DateTime.Now);
49+
50+
var stype = FedExServiceType.FedExStandardOvernight;
51+
var ptype = FedExPackageType.FedExEnvelope;
52+
53+
var shipmentOptions = new ShipmentOptions(ptype.Name, DateTime.Now);
54+
55+
var shipment = new Shipment(_origin, _domestic, packages, shipmentOptions);
56+
57+
var (sender, recipient) = TestShipments.CreateContactInfo();
58+
59+
var shipmentDetails = new EasyKeys.Shipping.FedEx.Shipment.Models.ShipmentDetails
60+
{
61+
Sender = sender,
62+
Recipient = recipient,
63+
64+
TransactionId = "1234",
65+
66+
PaymentType = FedExPaymentType.Recipient,
67+
CustomsPaymentType = FedExPaymentType.Recipient,
68+
AccountNumber = "",
69+
70+
RateRequestType = "list",
71+
72+
LabelOptions = new EasyKeys.Shipping.FedEx.Shipment.Models.LabelOptions()
73+
{
74+
LabelFormatType = "COMMON2D",
75+
ImageType = "PNG",
76+
}
77+
};
78+
79+
foreach (var provider in _providers)
80+
{
81+
var label = await provider.CreateShipmentAsync(stype, shipment, shipmentDetails, CancellationToken.None);
82+
83+
Assert.NotNull(label);
84+
Assert.True(label.InternalErrors.Any());
85+
}
86+
}
87+
3488
[Fact]
3589
public async Task CreateDelete_Labels_For_Domestic_Shipments_Async()
3690
{

0 commit comments

Comments
 (0)