Skip to content

Commit

Permalink
Merge pull request #14512 from transcom/B-21464-MAIN
Browse files Browse the repository at this point in the history
B 21464 main
  • Loading branch information
r-mettler authored Feb 20, 2025
2 parents 9daddb7 + 6799a3f commit f130821
Show file tree
Hide file tree
Showing 19 changed files with 406 additions and 26 deletions.
4 changes: 2 additions & 2 deletions pkg/handlers/ghcapi/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -259,7 +259,7 @@ func NewGhcAPIHandler(handlerConfig handlers.HandlerConfig) *ghcops.MymoveAPI {

ghcAPI.MtoServiceItemUpdateMTOServiceItemStatusHandler = UpdateMTOServiceItemStatusHandler{
HandlerConfig: handlerConfig,
MTOServiceItemUpdater: mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher),
MTOServiceItemUpdater: mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()),
Fetcher: fetch.NewFetcher(queryBuilder),
ShipmentSITStatus: sitstatus.NewShipmentSITStatus(),
MTOShipmentFetcher: mtoshipment.NewMTOShipmentFetcher(),
Expand Down Expand Up @@ -553,7 +553,7 @@ func NewGhcAPIHandler(handlerConfig handlers.HandlerConfig) *ghcops.MymoveAPI {

ghcAPI.ShipmentUpdateSITServiceItemCustomerExpenseHandler = UpdateSITServiceItemCustomerExpenseHandler{
handlerConfig,
mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher),
mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()),
mtoshipment.NewMTOShipmentFetcher(),
shipmentSITStatus,
}
Expand Down
4 changes: 2 additions & 2 deletions pkg/handlers/ghcapi/mto_service_items_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -661,7 +661,7 @@ func (suite *HandlerSuite) TestUpdateMTOServiceItemStatusHandler() {
mock.Anything,
false,
).Return(400, nil)
mtoServiceItemStatusUpdater := mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher)
mtoServiceItemStatusUpdater := mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer())

handler := UpdateMTOServiceItemStatusHandler{
HandlerConfig: suite.HandlerConfig(),
Expand Down Expand Up @@ -723,7 +723,7 @@ func (suite *HandlerSuite) TestUpdateMTOServiceItemStatusHandler() {
mock.Anything,
false,
).Return(400, nil)
mtoServiceItemStatusUpdater := mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher)
mtoServiceItemStatusUpdater := mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer())

handler := UpdateMTOServiceItemStatusHandler{
HandlerConfig: suite.HandlerConfig(),
Expand Down
4 changes: 2 additions & 2 deletions pkg/handlers/ghcapi/mto_shipment_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -5243,7 +5243,7 @@ func (suite *HandlerSuite) TestUpdateSITServiceItemCustomerExpenseHandler() {
mock.Anything,
false,
).Return(400, nil)
updater := mtoserviceitem.NewMTOServiceItemUpdater(planner, builder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher)
updater := mtoserviceitem.NewMTOServiceItemUpdater(planner, builder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer())
req := httptest.NewRequest("PATCH", fmt.Sprintf("/shipments/%s/sit-service-item/convert-to-customer-expense", approvedShipment.ID.String()), nil)
req = suite.AuthenticateOfficeRequest(req, officeUser)
handlerConfig := suite.HandlerConfig()
Expand Down Expand Up @@ -5320,7 +5320,7 @@ func (suite *HandlerSuite) TestUpdateSITServiceItemCustomerExpenseHandler() {
mock.Anything,
false,
).Return(400, nil)
updater := mtoserviceitem.NewMTOServiceItemUpdater(planner, builder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher)
updater := mtoserviceitem.NewMTOServiceItemUpdater(planner, builder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer())
req := httptest.NewRequest("PATCH", fmt.Sprintf("/shipments/%s/sit-service-item/convert-to-customer-expense", approvedShipment.ID.String()), nil)
req = suite.AuthenticateOfficeRequest(req, officeUser)
handlerConfig := suite.HandlerConfig()
Expand Down
2 changes: 1 addition & 1 deletion pkg/handlers/primeapi/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ func NewPrimeAPI(handlerConfig handlers.HandlerConfig) *primeoperations.MymoveAP
moveWeights := move.NewMoveWeights(mtoshipment.NewShipmentReweighRequester(), waf)
uploadCreator := upload.NewUploadCreator(handlerConfig.FileStorer())
ppmEstimator := ppmshipment.NewEstimatePPM(handlerConfig.DTODPlanner(), &paymentrequesthelper.RequestPaymentHelper{})
serviceItemUpdater := mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher)
serviceItemUpdater := mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer())

userUploader, err := uploader.NewUserUploader(handlerConfig.FileStorer(), uploader.MaxCustomerUserUploadFileSizeLimit)
if err != nil {
Expand Down
4 changes: 2 additions & 2 deletions pkg/handlers/primeapi/mto_service_item_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -1693,7 +1693,7 @@ func (suite *HandlerSuite) TestUpdateMTOServiceItemDDDSIT() {
).Return(400, nil)
subtestData.handler = UpdateMTOServiceItemHandler{
suite.HandlerConfig(),
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher),
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()),
}

// create the params struct
Expand Down Expand Up @@ -1977,7 +1977,7 @@ func (suite *HandlerSuite) TestUpdateMTOServiceItemDOPSIT() {
).Return(400, nil)
subtestData.handler = UpdateMTOServiceItemHandler{
suite.HandlerConfig(),
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher),
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()),
}

// create the params struct
Expand Down
2 changes: 1 addition & 1 deletion pkg/handlers/supportapi/api.go
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ func NewSupportAPIHandler(handlerConfig handlers.HandlerConfig) http.Handler {
mtoserviceitem.NewMTOServiceItemCreator(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticPackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticShorthaulPricer(), ghcrateengine.NewDomesticOriginPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()), handlerConfig.HHGPlanner()),
}

supportAPI.MtoServiceItemUpdateMTOServiceItemStatusHandler = UpdateMTOServiceItemStatusHandler{handlerConfig, mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher)}
supportAPI.MtoServiceItemUpdateMTOServiceItemStatusHandler = UpdateMTOServiceItemStatusHandler{handlerConfig, mtoserviceitem.NewMTOServiceItemUpdater(handlerConfig.HHGPlanner(), queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer())}
supportAPI.WebhookReceiveWebhookNotificationHandler = ReceiveWebhookNotificationHandler{handlerConfig}

// Create TAC and LOA services
Expand Down
7 changes: 4 additions & 3 deletions pkg/handlers/supportapi/mto_service_item_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@ import (
"github.com/transcom/mymove/pkg/models"
routemocks "github.com/transcom/mymove/pkg/route/mocks"
"github.com/transcom/mymove/pkg/services/address"
"github.com/transcom/mymove/pkg/services/ghcrateengine"
moverouter "github.com/transcom/mymove/pkg/services/move"
mtoserviceitem "github.com/transcom/mymove/pkg/services/mto_service_item"
mtoshipment "github.com/transcom/mymove/pkg/services/mto_shipment"
Expand Down Expand Up @@ -88,7 +89,7 @@ func (suite *HandlerSuite) TestUpdateMTOServiceItemStatusHandlerApproveSuccess()
false,
).Return(400, nil)
handler := UpdateMTOServiceItemStatusHandler{handlerConfig,
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher),
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()),
}

// CALL FUNCTION UNDER TEST
Expand Down Expand Up @@ -146,7 +147,7 @@ func (suite *HandlerSuite) TestUpdateMTOServiceItemStatusHandlerRejectSuccess()
false,
).Return(400, nil)
handler := UpdateMTOServiceItemStatusHandler{handlerConfig,
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher),
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()),
}

// CALL FUNCTION UNDER TEST
Expand Down Expand Up @@ -204,7 +205,7 @@ func (suite *HandlerSuite) TestUpdateMTOServiceItemStatusHandlerRejectionFailedN
false,
).Return(400, nil)
handler := UpdateMTOServiceItemStatusHandler{handlerConfig,
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher),
mtoserviceitem.NewMTOServiceItemUpdater(planner, queryBuilder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer()),
}

// CALL FUNCTION UNDER TEST
Expand Down
15 changes: 15 additions & 0 deletions pkg/iws/rbs_error_test.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package iws

func (suite *iwsSuite) TestRbsError() {
data := `<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<RbsError>
<faultCode>14030</faultCode>
<faultMessage> Problem with this argument: EMA_TX</faultMessage>
</RbsError>`
_, _, _, err := parseWkEmaResponse([]byte(data))
suite.NotNil(err)
rbsError, ok := err.(*RbsError)
suite.True(ok)
suite.Equal(uint64(14030), rbsError.FaultCode)
suite.NotEmpty(rbsError.FaultMessage)
}
2 changes: 2 additions & 0 deletions pkg/models/mto_service_items.go
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,9 @@ type MTOServiceItemSingle struct {
SITEntryDate *time.Time `db:"sit_entry_date"`
SITDepartureDate *time.Time `db:"sit_departure_date"`
SITDestinationFinalAddressID *uuid.UUID `db:"sit_destination_final_address_id"`
SITDestinationFinalAddress *Address `belongs_to:"addresses" fk_id:"sit_destination_final_address_id"`
SITOriginHHGOriginalAddressID *uuid.UUID `db:"sit_origin_hhg_original_address_id"`
SITDestinationOriginalAddress *Address `belongs_to:"addresses" fk_id:"sit_destination_original_address_id"`
SITOriginHHGActualAddressID *uuid.UUID `db:"sit_origin_hhg_actual_address_id"`
EstimatedWeight *unit.Pound `db:"estimated_weight"`
ActualWeight *unit.Pound `db:"actual_weight"`
Expand Down
30 changes: 30 additions & 0 deletions pkg/services/mocks/MTOServiceItemUpdater.go

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion pkg/services/move_history/move_history_fetcher_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -379,7 +379,7 @@ func (suite *MoveHistoryServiceSuite) TestMoveHistoryFetcherScenarios() {
mock.Anything,
false,
).Return(400, nil)
updater := mtoserviceitem.NewMTOServiceItemUpdater(planner, builder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher)
updater := mtoserviceitem.NewMTOServiceItemUpdater(planner, builder, moveRouter, shipmentFetcher, addressCreator, portLocationFetcher, ghcrateengine.NewDomesticUnpackPricer(), ghcrateengine.NewDomesticLinehaulPricer(), ghcrateengine.NewDomesticDestinationPricer(), ghcrateengine.NewFuelSurchargePricer())
move := factory.BuildApprovalsRequestedMove(suite.DB(), nil, nil)
serviceItem := factory.BuildMTOServiceItem(suite.DB(), []factory.Customization{
{
Expand Down
1 change: 1 addition & 0 deletions pkg/services/mto_service_item.go
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@ type MTOServiceItemUpdater interface {
ApproveOrRejectServiceItem(appCtx appcontext.AppContext, mtoServiceItemID uuid.UUID, status models.MTOServiceItemStatus, rejectionReason *string, eTag string) (*models.MTOServiceItem, error)
UpdateMTOServiceItem(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem, eTag string, validator string) (*models.MTOServiceItem, error)
UpdateMTOServiceItemBasic(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem, eTag string) (*models.MTOServiceItem, error)
UpdateMTOServiceItemPricingEstimate(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem, shipment models.MTOShipment, eTag string) (*models.MTOServiceItem, error)
UpdateMTOServiceItemPrime(appCtx appcontext.AppContext, serviceItem *models.MTOServiceItem, planner route.Planner, shipment models.MTOShipment, eTag string) (*models.MTOServiceItem, error)
ConvertItemToCustomerExpense(appCtx appcontext.AppContext, shipment *models.MTOShipment, customerExpenseReason *string, convertToCustomerExpense bool) (*models.MTOServiceItem, error)
}
Expand Down
Loading

0 comments on commit f130821

Please sign in to comment.