{"version":3,"file":"consignmentExportUpdateCtrl.js","sourceRoot":"","sources":["../../../../src/modules/controllers/consigment/consignmentExportUpdateCtrl.ts"],"names":[],"mappings":"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","sourcesContent":["module controllers {\r\n export module consigment {\r\n interface IPurchaseUpdateScope extends ng.IScope { }\r\n\r\n interface IConsignmentUpdateParams extends ng.ui.IStateParamsService {\r\n conId: number;\r\n manId: number;\r\n }\r\n\r\n export class ConsignmentExportUpdateCtrl {\r\n static $inject = [\"$scope\", \"$rootScope\", \"generalService\", \"$q\", \"$stateParams\", \"currencyService\", \"classificationValueService\",\r\n \"supplierService\", \"paymentMethodService\", \"termsOfPaymentService\", \"costModelService\", \"$anchorScroll\", \"$state\", \"purchaseOrderSKUService\",\r\n \"countryService\", \"incotermService\", \"termsOfDeliveryService\", \"consigneeService\", \"deliveryInstructionService\", \"documentRepositoryService\", \"bsLoadingOverlayService\",\r\n \"lookupService\", \"skuService\", \"$timeout\", \"$transitions\", \"transportModeService\", \"routeCodeService\", \"consignmentService\", \"cargoTypeService\", \"routeLeadTimesService\",\r\n \"$uibModal\", \"containerISOService\", \"containerService\", \"notifyPartyService\", \"addressService\", \"unLocationCodeService\", \"shipperService\", \"cartageContractorService\",\r\n \"warehouseService\", \"transportTypeService\", \"typeOfPackageService\", \"consignmentDetailService\", \"shippingPriorityService\", \"isInbound\", \"menuService\",\r\n \"commercialInvoiceService\", \"consignmentCustomsDetailService\", \"userAccountService\", \"goodsDeclarationService\",\r\n \"consignmentDocumentService\", \"consignmentTemplateService\", \"documentTypeService\", \"customAttributeService\", \"customAttributeAnswerOptionService\", \"permitService\",\"vesselScheduleService\",\"uiGridConstants\", 'reportService'\r\n ,\"LiveTrackingService\",\"tariffCountryService\",\"customsProcedureMatrixService\",'customsOfficeCodeService','companyService','flowTypeService'\r\n ];\r\n\r\n public consignmentID: number;\r\n public consignment: interfaces.consignment.IConsignment;\r\n\r\n poNumber: string;\r\n\r\n selectedTab: number = 0;\r\n AddEditDescription: string;\r\n\r\n //Transport Mode Type\r\n //selectedTransportMode: number = 0;\r\n //transportMode: number;\r\n transportList: ng.resource.IResourceArray;\r\n\r\n //Route Data\r\n routeId: number = 1;\r\n routeData: interfaces.master.IRouteCode;\r\n routeLeadTimesData: interfaces.master.IRouteLeadTimes;\r\n ShippingPriority: interfaces.applicationcore.IDropdownModel;\r\n ExportConsignmentCostModel: interfaces.applicationcore.IDropdownModel;\r\n public consignmentLeadTimesLockDown: interfaces.consignment.IConsignmentLeadTimesLockDown;\r\n\r\n //Cargo Types\r\n cargoTypeList: Array;\r\n\r\n //Document Actions\r\n actionList: interfaces.applicationcore.IDropdownModel[];\r\n\r\n //Report List\r\n reportList: interfaces.applicationcore.IDropdownModel[];\r\n\r\n //Documents\r\n documentRepository: interfaces.documentManagement.IDocumentRepository;\r\n\r\n //Status\r\n public conStatus: interfaces.master.IStatusData;\r\n\r\n //Transit Point List Grid\r\n apiTransList: uiGrid.IGridApi;\r\n\r\n //Containers List Grid\r\n apiContainersList: uiGrid.IGridApi;\r\n containersList: Array;\r\n\r\n //Customs List Grid\r\n apiCustomsList: uiGrid.IGridApi;\r\n\r\n //apiGoodsDecList\r\n apiGoodsDecList: uiGrid.IGridApi;\r\n apiClearInList: uiGrid.IGridApi;\r\n\r\n //consignment Document Grid\r\n apiConDocList: uiGrid.IGridApi;\r\n\r\n //Address Details\r\n address: interfaces.applicationcore.IAddress;\r\n\r\n loadPromises: ng.IPromise[];\r\n\r\n allowGenerateReqDocs: boolean;\r\n allowViewCustoms: boolean = true;\r\n allowViewRefundClaims: boolean = false;\r\n hasViewRefundClaimRights: boolean = false;\r\n hasGenerateRemoveClearInRight: boolean = false;\r\n hasAddRemoveManualGoodsDecRight: boolean = false;\r\n hasGenerateAndRemoveGoodsDeclarationRight: boolean = false;\r\n hasMultipleGenerateRights : boolean = false;\r\n hasOverrideResponsibleUserRight: boolean = false; \r\n hasOverrideConsignmentNumberRight: boolean = false; \r\n\r\n allowCreateNewVersion: boolean;\r\n\r\n paginationOptions = {\r\n pageNumber: 1,\r\n pageSize: 25\r\n };\r\n\r\n paginationPROptions = {\r\n pageNumber: 1,\r\n pageSize: 25\r\n };\r\n\r\n editingPacking: boolean = false;\r\n isLoadingDetail: boolean = false;\r\n getAll: boolean = false;\r\n getAllClearIn: boolean = false;\r\n\r\n showOnlyProhibited: boolean = false;\r\n showAll: boolean = false;\r\n\r\n apiPRList: uiGrid.IGridApi;\r\n\r\n apiCIList: uiGrid.IGridApi;\r\n selectedCI: uiGrid.IGridRow;\r\n\r\n routeLeadTimes: interfaces.master.IRouteLeadTimes;\r\n\r\n functionType: number = 384;\r\n reason: string = \"\";\r\n\r\n consignmentTemplates: interfaces.applicationcore.IDropdownModel[];\r\n documentTypes: ng.resource.IResourceArray;\r\n\r\n breadCrumbDesc: string;\r\n\r\n consignmentHook: any;\r\n manifestHook: any;\r\n\r\n //Attribute Grid\r\n apiCA: uiGrid.IGridApi;\r\n attributeList: interfaces.applicationcore.IDropdownModel[] = [];\r\n attributeAnswerOptionList: interfaces.applicationcore.IDropdownModel[] = [];\r\n\r\n originalShipperId? : number;\r\n originalConigneeId?: number;\r\n originalNotifyPartyId?: number;\r\n\r\n consignmentTypeDefaults: interfaces.consignment.ConsignmentTypeDefaults = null;\r\n\r\n constructor(private $scope: IPurchaseUpdateScope,\r\n private $rootScope: interfaces.applicationcore.IRootScope,\r\n private generalService: interfaces.applicationcore.IGeneralService,\r\n private $q: ng.IQService, private $stateParams: IConsignmentUpdateParams,\r\n private currencyService: interfaces.applicationcore.ICurrencyService,\r\n private classificationValueService: interfaces.applicationcore.IClassificationValueService,\r\n private supplierService: interfaces.master.ISupplierService,\r\n private paymentMethodService: interfaces.master.IPaymentMethodService,\r\n private termsOfPaymentService: interfaces.master.ITermsOfPaymentService,\r\n private costModelService: interfaces.costing.ICostModelService,\r\n private $anchorScroll: ng.IAnchorScrollService,\r\n private $state: ng.ui.IStateService,\r\n private purchaseOrderSKUService: interfaces.purchase.IPurchaseOrderSKUService,\r\n public countryService: interfaces.applicationcore.ICountryService,\r\n public incotermService: interfaces.applicationcore.IIncotermService,\r\n public termsOfDeliveryService: interfaces.master.ITermsOfDeliveryService,\r\n public consigneeService: interfaces.master.IConsigneeService,\r\n public deliveryInstructionService: interfaces.purchase.IDeliveryInstructionService,\r\n public documentRepositoryService: interfaces.documentManagement.IDocumentRepositoryService,\r\n public bsLoadingOverlayService,\r\n private lookupService: interfaces.applicationcore.ILookupService,\r\n public skuService: interfaces.master.ISKUService, public $timeout: ng.ITimeoutService,\r\n public $transitions: ng.ui.core.ITransition,\r\n public transportModeService: interfaces.applicationcore.ITransportModeService,\r\n public routeCodeService: interfaces.master.IRouteCodeService,\r\n public consignmentService: interfaces.consignment.IConsignmentService,\r\n public cargoTypeService: interfaces.master.ICargoTypeService,\r\n public routeLeadTimesService: interfaces.master.IRouteLeadTimesService,\r\n private $uibModal: ng.ui.bootstrap.IModalService,\r\n public containerISOService: interfaces.applicationcore.IContainerISOService,\r\n public containerService: interfaces.logistics.IContainerService,\r\n public notifyPartyService: interfaces.master.INotifyPartyService,\r\n public addressService: interfaces.applicationcore.IAddressService,\r\n public unLocationCodeService: interfaces.applicationcore.IUNLocationCodeService,\r\n public shipperService: interfaces.master.IShipperService,\r\n public cartageContractorService: interfaces.master.ICartageContractorService,\r\n public warehouseService: interfaces.master.IWarehouseService,\r\n public transportTypeService: interfaces.master.ITransportTypeService,\r\n public typeOfPackageService: interfaces.master.ITypeOfPackageService,\r\n private consignmentDetailService: interfaces.consignment.IConsignmentDetailService,\r\n public shippingPriorityService: interfaces.master.IShippingPriorityService,\r\n public isInbound: boolean,\r\n private menuService: interfaces.applicationcore.IMenuService,\r\n private commercialInvoiceService: interfaces.logistics.ICommercialInvoiceService,\r\n private consignmentCustomsDetailService: interfaces.logistics.IConsignmentCustomsDetailService,\r\n private userAccountService: interfaces.applicationcore.IUserAccountService,\r\n private goodsDeclarationService: interfaces.customs.IGoodsDeclarationService,\r\n public consignmentDocumentService: interfaces.logistics.IConsignmentDocumentService,\r\n private consignmentTemplateService: interfaces.compliance.IConsignmentTemplateService,\r\n private documentTypeService: interfaces.documentManagement.IDocumentTypeService,\r\n public customAttributeService: services.master.customAttributeService,\r\n public customAttributeAnswerOptionService: services.master.customAttributeAnswerOptionService,\r\n private permitService: interfaces.master.IPermitService,\r\n private vesselScheduleService: interfaces.logistics.IVesselScheduleService,\r\n private uiGridConstants: uiGrid.IUiGridConstants,\r\n private reportService: interfaces.reporting.IReportService,\r\n private liveTrackingService: interfaces.logistics.ILiveTrackingService,\r\n private tariffCountryService: interfaces.tariff.ITariffCountryService,\r\n private customsProcedureMatrixService: interfaces.tariff.ICustomsProcedureMatrixService,\r\n private customsOfficeCodeService: interfaces.tariff.ICustomsOfficeCodeService,\r\n private companyService: interfaces.master.ICompanyService,\r\n private flowTypeService: interfaces.customs.IFlowTypeService,\r\n ) {\r\n if ($stateParams.conId === null) {\r\n return;\r\n }\r\n\r\n this.consignmentHook = $transitions.onSuccess({\r\n to: 'auth.ConsignmentExports.Update',\r\n from: 'auth.ConsignmentExports.Update.**'\r\n }, () => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n\r\n this.consignmentHook = $transitions.onSuccess({\r\n to: 'auth.ConsignmentImports.Update',\r\n from: 'auth.ConsignmentImports.Update.**'\r\n }, () => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n\r\n this.manifestHook = $transitions.onSuccess({\r\n to: 'auth.Manifests.Update.ConsignmentExport',\r\n from: 'auth.Manifests.Update.ConsignmentExport.**'\r\n }, () => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n\r\n this.manifestHook = $transitions.onSuccess({\r\n to: 'auth.Manifests.Update.ConsignmentImport',\r\n from: 'auth.Manifests.Update.ConsignmentImport.**'\r\n }, () => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n\r\n $scope.$on('$destroy', () => {\r\n $transitions.onStart({}, this.consignmentHook);\r\n $transitions.onStart({}, this.manifestHook);\r\n });\r\n\r\n //Get the ID to get the Consignments Details.\r\n this.consignmentID = $stateParams.conId;\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n }\r\n\r\n loadConsignment() {\r\n if (this.consignment) {\r\n this.consignment.CostInvoiceList = undefined;\r\n this.consignment.ContainersList = undefined;\r\n this.consignment.ConsignmentGoodsDeclarationList = undefined;\r\n this.consignment.ConsignmentClearingInstructionList = undefined;\r\n this.consignment.ConsignmentCustomsDetailList = undefined;\r\n this.consignment.ConsignmentDetailList = undefined;\r\n this.consignment.ConsignmentPRList = undefined;\r\n }\r\n return this.consignmentService.GetConsignment(this.consignmentID).get((result: interfaces.consignment.IConsignment) => {\r\n this.consignment = result;\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.breadCrumbDesc = \"Consignment Import: \" + this.consignment.WaybillNumber;\r\n } else {\r\n this.breadCrumbDesc = \"Consignment Export: \" + this.consignment.WaybillNumber;\r\n }\r\n } else {\r\n this.breadCrumbDesc = this.consignment.WaybillNumber;\r\n }\r\n\r\n this.originalShipperId = this.consignment.Shipper? this.consignment.Shipper.Id : null;\r\n this.originalConigneeId = this.consignment.Consignee? this.consignment.Consignee.Id : null;\r\n this.originalNotifyPartyId = this.consignment.NotifyParty? this.consignment.NotifyParty.Id : null;\r\n\r\n this.estimateLoadingDateChanged(null);\r\n this.loadConsignmentLeadTimesLockDown();\r\n\r\n this.isLoadingDetail = true;\r\n\r\n this.$timeout(() => {\r\n this.loadControls();\r\n\r\n this.gvwCOD.data = this.consignment.ConsignmentDetailList;\r\n this.gCIList.data = this.consignment.ConsignmentCommercialInvoiceList;\r\n\r\n if (this.consignment.ConsignmentCommercialInvoiceList.length > 0) {\r\n this.AddEditDescription = \"Refresh Commercial Invoice\";\r\n } else {\r\n this.AddEditDescription = \"Add Commercial Invoice\";\r\n }\r\n\r\n this.gvwContainers.data = this.consignment.ContainersList;\r\n this.gvwCustoms.data = this.consignment.ConsignmentCustomsDetailList;\r\n this.gvwGoodsDec.data = this.consignment.ConsignmentGoodsDeclarationList;\r\n this.gvwDocMatrix.data = this.consignment.ConsignmentDocumentList;\r\n this.gvwPRList.data = this.consignment.ConsignmentPRList;\r\n this.gvwConsignmentAttribute.data = result.ConsignmentAttributeList;\r\n\r\n //Setting the total item number\r\n this.gvwContainers.totalItems = this.consignment.ContainersList.length;\r\n this.gvwCustoms.totalItems = this.consignment.ConsignmentCustomsDetailList.length;\r\n this.gvwGoodsDec.totalItems = this.consignment.ConsignmentGoodsDeclarationList.length;\r\n //this.gvwClearIn.totalItems = this.consignment.ConsignmentClearingInstructionList.length;\r\n this.gvwDocMatrix.totalItems = this.consignment.ConsignmentDocumentList.length;\r\n this.gvwPRList.totalItems = this.consignment.ConsignmentPRList.length;\r\n this.gvwCOD.totalItems = this.consignment.ConsignmentDetailList.length;\r\n this.gCIList.totalItems = this.consignment.ConsignmentCommercialInvoiceList.length;\r\n\r\n this.isLoadingDetail = false;\r\n });\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n }\r\n\r\n loadConsignmentLeadTimesLockDown() {\r\n if (this.consignment) {\r\n var ConsignmentLeadTimesLockDown: interfaces.consignment.IConsignmentLeadTimesLockDown = {\r\n EstimatedClearingDate: false,\r\n EstimatedDateOfLoading: false,\r\n ActualLoadingDate: false,\r\n ShipByDate: false,\r\n EstimateDateOfArrival: false,\r\n EstimateArrivalAtDestuff: false,\r\n EstimateDateAtStore: false,\r\n ActualClearingDate: false,\r\n DateLoading: false,\r\n ShippedOnBoardDate: false,\r\n ActualTimeOfArrival: false,\r\n ActualDateAtDestuff: false,\r\n ActualDateAtStore: false,\r\n OriginalEstimatedTimeOfDelivery: false,\r\n FromStackDate: false,\r\n ToStackDate: false,\r\n ProvisionalDateAtDestuff: false,\r\n EstimatedDestinationClearanceDate: false,\r\n ActualDestinationClearanceDate: false\r\n }\r\n\r\n this.consignmentLeadTimesLockDown = ConsignmentLeadTimesLockDown;\r\n\r\n // Open/Partial/Authorised Lockdown\r\n if (this.consignment.LockdownType <= 2) {\r\n this.consignmentLeadTimesLockDown.EstimatedClearingDate = false;\r\n this.consignmentLeadTimesLockDown.EstimatedDateOfLoading = false;\r\n this.consignmentLeadTimesLockDown.ActualLoadingDate = false;\r\n this.consignmentLeadTimesLockDown.ShipByDate = false;\r\n this.consignmentLeadTimesLockDown.EstimateDateOfArrival = false;\r\n this.consignmentLeadTimesLockDown.EstimateArrivalAtDestuff = false;\r\n this.consignmentLeadTimesLockDown.EstimateDateAtStore = false;\r\n this.consignmentLeadTimesLockDown.ActualClearingDate = false;\r\n this.consignmentLeadTimesLockDown.DateLoading = false;\r\n this.consignmentLeadTimesLockDown.ShippedOnBoardDate = false;\r\n this.consignmentLeadTimesLockDown.ActualTimeOfArrival = false;\r\n this.consignmentLeadTimesLockDown.ActualDateAtDestuff = false;\r\n this.consignmentLeadTimesLockDown.ActualDateAtStore = false;\r\n this.consignmentLeadTimesLockDown.OriginalEstimatedTimeOfDelivery = true;\r\n this.consignmentLeadTimesLockDown.FromStackDate = false;\r\n this.consignmentLeadTimesLockDown.ToStackDate = false;\r\n this.consignmentLeadTimesLockDown.ProvisionalDateAtDestuff = false;\r\n this.consignmentLeadTimesLockDown.EstimatedDestinationClearanceDate = false;\r\n this.consignmentLeadTimesLockDown.ActualDestinationClearanceDate = false;\r\n }\r\n\r\n // Finalised\r\n if (this.consignment.LockdownType === 3) {\r\n this.consignmentLeadTimesLockDown.EstimatedClearingDate = true;\r\n this.consignmentLeadTimesLockDown.EstimatedDateOfLoading = true;\r\n this.consignmentLeadTimesLockDown.ActualLoadingDate = true;\r\n this.consignmentLeadTimesLockDown.ShipByDate = true;\r\n this.consignmentLeadTimesLockDown.EstimateDateOfArrival = true;\r\n this.consignmentLeadTimesLockDown.EstimateArrivalAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.EstimateDateAtStore = true;\r\n this.consignmentLeadTimesLockDown.ActualClearingDate = true;\r\n this.consignmentLeadTimesLockDown.DateLoading = true;\r\n this.consignmentLeadTimesLockDown.ShippedOnBoardDate = false; //export only \r\n this.consignmentLeadTimesLockDown.ActualTimeOfArrival = false; //export only\r\n this.consignmentLeadTimesLockDown.ActualDateAtDestuff = false; //export only\r\n this.consignmentLeadTimesLockDown.ActualDateAtStore = false; //export only\r\n this.consignmentLeadTimesLockDown.OriginalEstimatedTimeOfDelivery = true;\r\n this.consignmentLeadTimesLockDown.FromStackDate = true;\r\n this.consignmentLeadTimesLockDown.ToStackDate = true;\r\n this.consignmentLeadTimesLockDown.ProvisionalDateAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.EstimatedDestinationClearanceDate = true;\r\n this.consignmentLeadTimesLockDown.ActualDestinationClearanceDate = true;\r\n }\r\n\r\n //Cancelled / Full\r\n if (this.consignment.LockdownType >= 4) {\r\n this.consignmentLeadTimesLockDown.EstimatedClearingDate = true;\r\n this.consignmentLeadTimesLockDown.EstimatedDateOfLoading = true;\r\n this.consignmentLeadTimesLockDown.ActualLoadingDate = true;\r\n this.consignmentLeadTimesLockDown.ShipByDate = true;\r\n this.consignmentLeadTimesLockDown.EstimateDateOfArrival = true;\r\n this.consignmentLeadTimesLockDown.EstimateArrivalAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.EstimateDateAtStore = true;\r\n this.consignmentLeadTimesLockDown.ActualClearingDate = true;\r\n this.consignmentLeadTimesLockDown.DateLoading = true;\r\n this.consignmentLeadTimesLockDown.ShippedOnBoardDate = true;\r\n this.consignmentLeadTimesLockDown.ActualTimeOfArrival = true;\r\n this.consignmentLeadTimesLockDown.ActualDateAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.ActualDateAtStore = true;\r\n this.consignmentLeadTimesLockDown.OriginalEstimatedTimeOfDelivery = true;\r\n this.consignmentLeadTimesLockDown.FromStackDate = true;\r\n this.consignmentLeadTimesLockDown.ToStackDate = true;\r\n this.consignmentLeadTimesLockDown.ProvisionalDateAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.EstimatedDestinationClearanceDate = true;\r\n this.consignmentLeadTimesLockDown.ActualDestinationClearanceDate = true;\r\n }\r\n\r\n //Route has Lead times\r\n if (this.routeLeadTimes) {\r\n if (this.routeLeadTimes.Id > 0) {\r\n this.consignmentLeadTimesLockDown.EstimatedClearingDate = true;\r\n //this.consignmentLeadTimesLockDown.EstimatedDateOfLoading = true;\r\n this.consignmentLeadTimesLockDown.ShipByDate = true;\r\n this.consignmentLeadTimesLockDown.EstimateDateOfArrival = true;\r\n this.consignmentLeadTimesLockDown.EstimateArrivalAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.EstimateDateAtStore = true;\r\n }\r\n }\r\n\r\n // Consignment is linked to Manifest?\r\n if (this.consignment.IsLinkedToManifest) {\r\n this.consignmentLeadTimesLockDown.EstimatedClearingDate = true;\r\n this.consignmentLeadTimesLockDown.EstimatedDateOfLoading = true;\r\n this.consignmentLeadTimesLockDown.ShipByDate = true;\r\n this.consignmentLeadTimesLockDown.EstimateDateOfArrival = true;\r\n this.consignmentLeadTimesLockDown.EstimateArrivalAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.ActualClearingDate = true;\r\n this.consignmentLeadTimesLockDown.DateLoading = true;\r\n this.consignmentLeadTimesLockDown.ShippedOnBoardDate = true;\r\n this.consignmentLeadTimesLockDown.ActualTimeOfArrival = true;\r\n this.consignmentLeadTimesLockDown.ActualDateAtDestuff = true;\r\n this.consignmentLeadTimesLockDown.FromStackDate = true;\r\n this.consignmentLeadTimesLockDown.ToStackDate = true;\r\n this.consignmentLeadTimesLockDown.ActualLoadingDate = true;\r\n }\r\n }\r\n }\r\n\r\n loadControls() {\r\n var promises = [];\r\n\r\n this.editingPacking = false;\r\n\r\n promises.push(this.loadCargoTypes());\r\n promises.push(this.getDocuments(this.showAll));\r\n promises.push(this.loadStatus());\r\n promises.push(this.getAllowGenerateReqDocsRight());\r\n promises.push(this.loadComplianceTemplates());\r\n promises.push(this.loadConsignmentLeadTimesLockDown());\r\n\r\n if (this.consignment) {\r\n if (this.consignment.IsInbound) {\r\n promises.push(this.getAllowCreateNewVersionImportRight());\r\n promises.push(this.getHasGenerateRemoveClearInRight());\r\n \r\n }\r\n else {\r\n promises.push(this.getAllowCreateNewVersionExportRight());\r\n \r\n }\r\n }\r\n\r\n promises.push(this.getAllowViewRefundClaimRight());\r\n \r\n promises.push(this.getHasAddRemoveGoodsDecRight());\r\n\r\n promises.push(this.getHasGenerateAndRemoveGoodsDeclarationRight());\r\n\r\n promises.push(this.loadConsignmentTypeDefaults());\r\n\r\n if (this.isInbound){\r\n promises.push(this.getImportConsignmentResponsibleUserOverrideRight());\r\n promises.push(this.getConsignmentNumberOverrideRight(714));\r\n }\r\n else{\r\n promises.push(this.getExportConsignmentResponsibleUserOverrideRight());\r\n promises.push(this.getConsignmentNumberOverrideRight(715));\r\n }\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.$q.all(promises).then(()=>{\r\n //All the Rights have loaded, lets check if the User has multuiple 'Generate' Rights to enable the Action button or the individual buttons\r\n\r\n const trueCount = [\r\n this.hasAddRemoveManualGoodsDecRight,\r\n this.hasGenerateAndRemoveGoodsDeclarationRight,\r\n ].filter((value) => value === true).length; \r\n this.hasMultipleGenerateRights = trueCount > 1;\r\n\r\n });\r\n });\r\n }\r\n\r\n loadConsignmentTypeDefaults() {\r\n return this.consignmentService.GetConsignmentTypeDefaultsByConsignment(this.consignment.Id).get((result: interfaces.consignment.ConsignmentTypeDefaults) => {\r\n this.consignmentTypeDefaults = result; \r\n \r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise; \r\n }\r\n\r\n loadComplianceTemplates() {\r\n return this.consignmentTemplateService.getForConsignmentDropdown(this.consignment.Id).query((result: interfaces.applicationcore.IDropdownModel[]) => {\r\n this.consignmentTemplates = result;\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n openConsignmentTemplate(templateId: number) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.Compliance\", { transactionId: templateId });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.Compliance\", { transactionId: templateId });\r\n }\r\n } else {\r\n if (this.consignment.IsInbound)\r\n this.$state.go(\"auth.ConsignmentImports.Update.Compliance\", { transactionId: templateId });\r\n else\r\n this.$state.go(\"auth.ConsignmentExports.Update.Compliance\", { transactionId: templateId });\r\n }\r\n\r\n });\r\n }\r\n\r\n loadUsers(searchText: string) {\r\n if (this.consignment) {\r\n return this.userAccountService.getDropdownList(searchText, this.consignment.OwnerEntityId).query(\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n loadRouteCodes() {\r\n if (this.consignment) {\r\n return this.routeCodeService.getDropdownListAll(this.consignment.OwnerEntityId, this.consignment.IsInbound).query({},\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n loadTerminals(searchText: string){\r\n var countryId : number;\r\n if (this.consignment.IsInbound)\r\n countryId = this.consignment.UnloadingCountry.Id;\r\n else\r\n countryId = this.consignment.LoadingCountry.Id;\r\n\r\n return this.vesselScheduleService.GetTerminalsForDropDownByCountry(countryId,searchText).query({\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n \r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n loadExportConsignmentCostModels() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.consignment) {\r\n this.costModelService.getDropdownList().query({ ownerEntityId: this.consignment.OwnerEntityId, typeId: 600 }, (resultList) => {\r\n defer.resolve(resultList);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n defer.resolve([]);\r\n });\r\n\r\n } else {\r\n defer.resolve([]);\r\n }\r\n\r\n return defer.promise;\r\n }\r\n\r\n routeCodeChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n if (this.consignment && model) {\r\n return this.routeCodeService.getRouteData().query({\r\n routeId: model.Id,\r\n },\r\n (result: interfaces.master.IRouteCode) => {\r\n //Load the data.\r\n if (result.LoadingCountry) {\r\n this.consignment.LoadingCountry = result.LoadingCountry;\r\n }\r\n\r\n if (result.LoadingLocation) {\r\n this.consignment.LoadingLocation = result.LoadingLocation;\r\n }\r\n\r\n if (result.DispatchWarehouse) {\r\n this.consignment.DispatchWarehouse = result.DispatchWarehouse;\r\n }\r\n\r\n if (result.DestinationCountry) {\r\n this.consignment.UnloadingCountry = result.DestinationCountry;\r\n }\r\n\r\n if (result.UnloadingLocation) {\r\n this.consignment.UnloadingLocation = result.UnloadingLocation;\r\n }\r\n\r\n if (result.ReceiptWarehouse) {\r\n this.consignment.ReceiptWarehouse = result.ReceiptWarehouse;\r\n }\r\n\r\n if (result.TransportMode) {\r\n this.consignment.TransportMode = result.TransportMode;\r\n }\r\n\r\n if (result.MasterCartageContractor) {\r\n this.consignment.MasterCartageContractor = result.MasterCartageContractor;\r\n }\r\n\r\n if (result.CartageContractor) {\r\n this.consignment.CartageContractor = result.CartageContractor;\r\n }\r\n\r\n if (result.Terminal){\r\n this.consignment.Terminal = result.Terminal;\r\n }\r\n\r\n this.consignment.IsInbound = result.IsInbound;\r\n\r\n this.consignment.TrackToStore = result.TrackToStore;\r\n\r\n if (result.CargoType){\r\n this.consignment.CargoTypeId = result.CargoType.Id;\r\n }\r\n\r\n this.estimateLoadingDateChanged(this.consignment.EstimateLoadingDate);\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n loadTransportModes() {\r\n return this.transportModeService.getDropdownList().query({},\r\n (result: ng.resource.IResourceArray) => {\r\n this.transportList = result;\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n loadLoadingLocation(searchText: string) {\r\n if (this.consignment && this.consignment.LoadingCountry) {\r\n return this.unLocationCodeService.getDropdownList().query({\r\n countryId: this.consignment.LoadingCountry.Id,\r\n searchText: searchText\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Unloading Location\r\n loadUnloadingLocation(searchText: string) {\r\n if (this.consignment && this.consignment.UnloadingCountry) {\r\n return this.unLocationCodeService.getDropdownList().query({\r\n countryId: this.consignment.UnloadingCountry.Id,\r\n searchText: searchText\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Shipper\r\n loadShipper(searchText: string) {\r\n if (this.consignment) {\r\n return this.shipperService.getShipperDropdown(this.consignment.OwnerEntityId, searchText).query({\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Master Contractor\r\n loadMasterContractor() {\r\n if (this.consignment) {\r\n return this.cartageContractorService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n\r\n }\r\n\r\n //Loading Cartage Contractor\r\n loadCartageContractor() {\r\n if (this.consignment) {\r\n return this.cartageContractorService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Sub Cartage Contractor\r\n loadSubCartageContractor() {\r\n if (this.consignment) {\r\n return this.cartageContractorService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Dispatch Warehouse\r\n loadDispatchWarehouse() {\r\n if (this.consignment && this.consignment.LoadingCountry) {\r\n return this.warehouseService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId,\r\n CountryId: this.consignment.LoadingCountry.Id\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Receipt Warehouse\r\n loadReceiptWarehouse() {\r\n if (this.consignment && this.consignment.UnloadingCountry) {\r\n return this.warehouseService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId,\r\n CountryId: this.consignment.UnloadingCountry.Id\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Loading Country\r\n loadLoadingCountry() {\r\n return this.countryService.getDropdownList().query({\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n //When changed the Dispatch Warehouse needs to reload.\r\n loadingCountryChanged() {\r\n this.consignment.DispatchWarehouse = null;\r\n }\r\n\r\n //When changed the Dispatch Warehouse needs to reload.\r\n unloadingCountryChanged() {\r\n this.consignment.ReceiptWarehouse = null;\r\n }\r\n\r\n //Loading Unoading Country\r\n loadUnloadingCountry() {\r\n return this.countryService.getDropdownList().query({\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n //Loading HouseWaybill Issued Location\r\n loadHouseWaybillIssuedLocation(searchText: string) {\r\n if (this.consignment && this.consignment.UnloadingCountry) {\r\n return this.unLocationCodeService.getDropdownListAllCountries().query({\r\n searchText: searchText\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n };\r\n }\r\n\r\n //Loading Transport Document Issued Location\r\n loadTransportDocumentIssuedLocation(searchText: string) {\r\n if (this.consignment && this.consignment.LoadingCountry) {\r\n return this.unLocationCodeService.getDropdownListAllCountries().query({\r\n searchText: searchText\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Transport Type\r\n loadTransportType(searchText: string) {\r\n if (this.consignment) {\r\n return this.transportTypeService.getDropdownList(this.consignment.OwnerEntityId, searchText).query({\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Inland Transport Mode\r\n loadInlandTransportMode() {\r\n return this.transportModeService.getDropdownList().query({},\r\n (result: ng.resource.IResourceArray) => {\r\n this.transportList = result;\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n //Loading Sea Inland Contractor\r\n loadSeaInlandCartageContractor() {\r\n if (this.consignment) {\r\n return this.cartageContractorService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Air Inland Contractor\r\n loadAirInlandCartageContractor() {\r\n if (this.consignment) {\r\n return this.cartageContractorService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId\r\n },\r\n (result: ng.resource.IResourceArray) => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n //Loading Route Data\r\n loadRouteData() {\r\n return this.routeCodeService.getRouteData().query(\r\n {\r\n routeId: this.routeId\r\n },\r\n (result: interfaces.master.IRouteCode) => {\r\n //Set all the values from the data collected to the dropdowns.\r\n this.routeData = result;\r\n },\r\n (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n //Loading Cargo Types\r\n loadCargoTypes() {\r\n return this.cargoTypeService.GetList().query(\r\n {\r\n }, (result: Array) => {\r\n this.cargoTypeList = result;\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n //Load Route Lead Times\r\n loadRouteLeadTimes() {\r\n return this.routeLeadTimesService.getByRoute().query(\r\n {\r\n routeId: this.routeId,\r\n shippingPriorityId: this.consignment.ShippingPriority ? this.consignment.ShippingPriority.Id : 0\r\n }, (routeLeadTimesData: interfaces.master.IRouteLeadTimes) => {\r\n //Get the data back.\r\n this.routeLeadTimesData = routeLeadTimesData;\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n //Documents\r\n getDocuments(showAll:boolean) {\r\n return this.documentRepositoryService.getDocumentRepository().query({ \r\n referenceNumber: this.consignment.WaybillNumber, \r\n systemType: this.isInbound? Enum.EnumSystemType.ImportConsignment:Enum.EnumSystemType.Consignment, \r\n ownerEntityId: this.consignment.OwnerEntityId,\r\n showAll:showAll\r\n }, (documentRepository: interfaces.documentManagement.IDocumentRepository) => {\r\n this.documentRepository = documentRepository;\r\n \r\n if (this.documentRepository)\r\n this.loadDocumentTypes();\r\n \r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n }\r\n \r\n refreshDocuments(showAll:boolean) {\r\n this.showAll = showAll;\r\n this.documentRepository = null;\r\n return this.getDocuments(showAll);\r\n }\r\n\r\n printDocuments() {\r\n if (this.$stateParams.manId) {\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.Documents\");\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.Documents\");\r\n }\r\n } else {\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.Documents\");\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.Documents\");\r\n }\r\n }\r\n }\r\n\r\n //Status\r\n loadStatus() { \r\n this.conStatus = {\r\n StatusName: this.consignment.StatusName,\r\n Id: this.consignment.Id,\r\n EntityId: this.consignment.OwnerEntityId,\r\n CurrentStatusId: this.consignment.StatusId,\r\n CurrentStatusComments: this.consignment.StatusLastComments,\r\n CurrentStatusStampDate: this.consignment.StatusLastUpdateStampDate,\r\n CurrentStatusStampFullName: this.consignment.StatusLastUpdateStampFullName,\r\n CurrentStatusType: this.isInbound ? Enum.EnumStatusType.ConsignmentImport : Enum.EnumStatusType.ConsignmentExport,\r\n EnumStatusType: this.isInbound ? Enum.EnumStatusType.ConsignmentImport : Enum.EnumStatusType.ConsignmentExport,\r\n EnumStatusAuthorisationType: this.isInbound ? Enum.EnumStatusAuthorisationType.ConsignmentImport : Enum.EnumStatusAuthorisationType.ConsignmentExport,\r\n IsEditable: true,\r\n Comments: ''\r\n };\r\n }\r\n\r\n updateStatus = (newStatusId: number, comments: string) => {\r\n var paramsObject: interfaces.master.IStatusChange = {\r\n referenceId: this.consignment.Id,\r\n newStatusId: newStatusId,\r\n comments: comments\r\n };\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.SaveConsignment().then(() => {\r\n this.consignmentService.changeStatus().save({}, paramsObject, (data: interfaces.applicationcore.IMessageHandler) => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n this.selectedTab = 8;\r\n return this.loadConsignment();\r\n });\r\n\r\n this.generalService.displayMessageHandler(data);\r\n }, (failureData) => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n this.selectedTab = 8;\r\n return this.loadConsignment();\r\n });\r\n\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n };\r\n\r\n removeInlineTransitPoint(entity: interfaces.logistics.IConsignmentCustomsDetail) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentCustomsDetailService.delete(entity.Id).delete((result) => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n\r\n _.remove(this.gvwTransList.data, (o) => {\r\n return o === entity;\r\n });\r\n }\r\n\r\n updateTransitPoints() {\r\n //Customs Detail\r\n if (this.apiCustomsList && this.apiCustomsList.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ConsignmentCustomsDetailList = _.map(this.apiCustomsList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n if (this.apiTransList && this.apiTransList.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ConsignmentCustomsDetailList = _.map(this.apiTransList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n this.consignment.ConsignmentCustomsDetailList = [];\r\n }\r\n }\r\n\r\n //Updating the Consignment\r\n return this.consignmentService.update().save((this.consignment), (result: interfaces.applicationcore.IMessageHandler) => {\r\n if (!result.HasErrorMessage) {\r\n\r\n if (this.apiCustomsList) {\r\n this.apiCustomsList.rowEdit.setRowsClean(this.consignment.ConsignmentCustomsDetailList);\r\n }\r\n\r\n if (this.apiTransList) {\r\n this.apiTransList.rowEdit.setRowsClean(this.consignment.ConsignmentCustomsDetailList);\r\n }\r\n }\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n }).$promise;\r\n\r\n }\r\n\r\n //Transit Points List Grid\r\n gvwTransList: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: false,\r\n useExternalFiltering: false,\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: true,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => { this.registerTransitGridApi(gridApi); },\r\n columnDefs: [{\r\n name: \"REMOVE\",\r\n displayName: \"\",\r\n field: \"TransitPointRemove\",\r\n cellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n enableCellEditOnFocus: false,\r\n width: 55,\r\n headerCellTemplate: `\r\n
\r\n \r\n
`\r\n }, {\r\n name: 'COUNTRY',\r\n displayName: 'Transit Country',\r\n field: 'TransitCountry',\r\n enableCellEditOnFocus: true,\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n width: 250\r\n }]\r\n };\r\n\r\n registerTransitGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiTransList = gridApi;\r\n\r\n this.apiTransList.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiTransList.selection.selectRow(gridSelection.row.entity);\r\n });\r\n\r\n this.$timeout(() => {\r\n this.gvwTransList.data = this.consignment.ConsignmentCustomsDetailList;\r\n });\r\n }\r\n\r\n //Containers Tab Grid\r\n gvwContainers: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: false,\r\n useExternalFiltering: false,\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: true,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => { this.registerContainersGridApi(gridApi); },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"ID\",\r\n cellTemplate: `\r\n
\r\n \r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n enableCellEdit: false,\r\n width: 92,\r\n enableCellEditOnFocus: false,\r\n headerCellTemplate: `\r\n
\r\n \r\n
`\r\n }, {\r\n name: \"CONTAINERNUMBER\",\r\n displayName: \"* Container Number\",\r\n field: \"Number\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 2 : true },\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n enableCellEditOnFocus: true\r\n }, {\r\n name: \"CONTAINERISO\",\r\n displayName: \"Container Size\",\r\n field: \"ContainerISOCode\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 2 : true },\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableCellEditOnFocus: true\r\n }, {\r\n name: \"GROSSMASS\",\r\n displayName: \"Gross Mass\",\r\n field: \"GrossMass\",\r\n type: \"number\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 2 : true },\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n enableCellEditOnFocus: true\r\n }]\r\n };\r\n\r\n registerContainersGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiContainersList = gridApi;\r\n\r\n this.apiContainersList.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiContainersList.selection.selectRow(gridSelection.row.entity);\r\n });\r\n }\r\n\r\n //Add and remove in line Contaainer\r\n addInlineContainers() {\r\n (>(this.gvwContainers.data)).splice(0, 0, {});\r\n }\r\n\r\n removeInlineContainers(entity: interfaces.logistics.IContainer) {\r\n\r\n if (entity.Id > 0) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.containerService.delete(this.consignment.Id, null, entity.Id).delete((result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n } else {\r\n _.remove(this.gvwContainers.data, (o) => {\r\n return o === entity;\r\n });\r\n }\r\n }\r\n\r\n editContainers(entity: interfaces.logistics.IContainer) {\r\n if (this.consignment) {\r\n if (this.$state.current.name === \"auth.Manifests.Update.ConsignmentExport\") {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.Container\", { contId: entity.Id });\r\n return;\r\n }\r\n\r\n if (this.$state.current.name === \"auth.Manifests.Update.ConsignmentImport\") {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.Container\", { contId: entity.Id });\r\n return;\r\n }\r\n\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.Container\", { contId: entity.Id });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.Container\", { contId: entity.Id });\r\n }\r\n }\r\n }\r\n\r\n //Load Container ISO.\r\n loadContainerISOs(searchText: string) {\r\n return this.containerISOService.getContainerISODropdown(searchText).query(\r\n () => {\r\n\r\n }, (failureData) => {\r\n }).$promise;\r\n }\r\n\r\n //Customs Tab Grid\r\n gvwCustoms: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: false,\r\n useExternalFiltering: false,\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: true,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => { this.registerCustomsGridApi(gridApi); },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"CustomsId\",\r\n cellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n enableCellEdit: false,\r\n width: 55,\r\n enableCellEditOnFocus: false,\r\n headerCellTemplate: `\r\n
\r\n \r\n
`\r\n }, {\r\n name: \"TRANSITCOUNT\",\r\n displayName: \"Transit Country\",\r\n field: \"TransitCountry\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableCellEditOnFocus: true\r\n }, {\r\n name: \"LRNNUMBER\",\r\n displayName: \"LRN Number\",\r\n field: \"LRNumber\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n enableCellEditOnFocus: true\r\n }, {\r\n name: \"LRNDATE\",\r\n displayName: \"LRN Date\",\r\n field: \"LRNDate\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD | momentDateFilter: 'YYYY/MM/DD'}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableCellEditOnFocus: true\r\n }, {\r\n name: \"PRODMEASURE\",\r\n displayName: \"Procedure Measure\",\r\n field: \"LRNProcedure\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n enableCellEditOnFocus: true\r\n }]\r\n };\r\n\r\n //Add and remove in line Customs\r\n addInlineCustoms() {\r\n this.gvwCustoms.data = this.consignment.ConsignmentCustomsDetailList;\r\n this.gvwCustoms.data.push({\r\n TransitCountryCode: \"\",\r\n TransitCountryDescription: \"\"\r\n });\r\n }\r\n\r\n removeInlineCustoms(entity: interfaces.logistics.IConsignmentCustomsDetail) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentCustomsDetailService.delete(entity.Id).delete((result) => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n\r\n _.remove(this.gvwCustoms.data, (o) => {\r\n return o === entity;\r\n });\r\n }\r\n\r\n registerCustomsGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiCustomsList = gridApi;\r\n\r\n this.apiCustomsList.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiCustomsList.selection.selectRow(gridSelection.row.entity);\r\n });\r\n }\r\n\r\n //Loading the Consignees with Search\r\n loadConsignees(searchText: string) {\r\n var defered = this.$q.defer();\r\n\r\n if (!this.consignment) {\r\n defered.resolve([]);\r\n return defered.promise;\r\n }\r\n\r\n this.consigneeService.getDropdownList(this.consignment.OwnerEntityId, searchText).query({}, (list: Array) => {\r\n defered.resolve(list);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n defered.resolve([]);\r\n });\r\n\r\n return defered.promise;\r\n\r\n }\r\n\r\n //Loading the Notify Parties\r\n loadNotifyParty() {\r\n if (this.consignment) {\r\n return this.notifyPartyService.getDropdownList().query({\r\n ownerEntityId: this.consignment.OwnerEntityId\r\n }, () => {\r\n\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n packageTypeChanged(model: interfaces.applicationcore.IDropdownModel, entity: interfaces.consignment.IConsignmentDetailDisplay) { \r\n if (this.apiCOD) {\r\n this.apiCOD.rowEdit.setRowsDirty([entity]);\r\n } \r\n }\r\n \r\n\r\n apiCOD: uiGrid.IGridApi;\r\n gvwCOD: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: false,\r\n useExternalFiltering: false,\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => {\r\n this.apiCOD = gridApi;\r\n this.apiCOD.selection.on.rowSelectionChanged(this.$scope, () => {\r\n this.editingPacking = false;\r\n });\r\n\r\n this.apiCOD.cellNav.on.navigate(this.$scope, (newCol) => {\r\n this.$timeout(() => {\r\n this.apiCOD.selection.selectRow(newCol.row.entity);\r\n });\r\n });\r\n },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"ID\",\r\n cellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n enableCellEdit: false,\r\n width: 32,\r\n enableCellEditOnFocus: false,\r\n headerCellTemplate: `\r\n
\r\n \r\n
`\r\n }, {\r\n name: \"SEQNUM\",\r\n displayName: \"#\",\r\n field: \"LineNumber\",\r\n enableFiltering: false,\r\n type: \"number\",\r\n cellClass: 'text-right',\r\n width: 30,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"DESCGOOD\",\r\n displayName: \"Description Of Goods\",\r\n field: \"DescriptionOfGoods\",\r\n width: 250,\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"NUMPACKAGE\",\r\n displayName: \"Number Of Packages\",\r\n field: \"NumberOfPackages\",\r\n type: \"number\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"TOPACK\",\r\n displayName: \"Type Of Package\",\r\n field: \"TypeOfPackage\",\r\n enableFiltering: true,\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n enableCellEditOnFocus: true,\r\n width: 200,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `
\r\n \r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return (cellValue.Display.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || searchTerm.length === 0);\r\n }\r\n },\r\n sortingAlgorithm: (a, b, rowA, rowB, direction) => {\r\n var nulls = this.apiCOD.core.sortHandleNulls(a, b);\r\n if (nulls !== null) {\r\n return nulls;\r\n } else {\r\n if (a === b) {\r\n return 0;\r\n }\r\n\r\n if (direction === \"desc\") {\r\n if (a.Display < b.Display) return -1;\r\n if (a.Display > b.Display) return 1;\r\n } else if (direction === \"asc\") {\r\n if (a.Display > b.Display) return 1;\r\n if (a.Display < b.Display) return -1;\r\n }\r\n\r\n return 0;\r\n }\r\n }\r\n }, {\r\n name: \"GROSSMASS\",\r\n displayName: \"Gross Mass\",\r\n field: \"Grossmass\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"NETMASS\",\r\n displayName: \"Net Mass\",\r\n field: \"NettMass\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"VOLUME\",\r\n displayName: \"Volume\",\r\n field: \"Volume\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }]\r\n };\r\n\r\n addInlineDetail() {\r\n (>(this.gvwCOD.data)).splice(0, 0, {});\r\n }\r\n\r\n removeDetail() {\r\n var selectedRow = this.apiCOD.selection.getSelectedRows()[0];\r\n if (selectedRow && selectedRow.Id > 0) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentDetailService.delete(selectedRow.Id).delete((result) => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n } else if (selectedRow) {\r\n _.remove(this.gvwCOD.data, (o) => {\r\n return o === selectedRow;\r\n });\r\n }\r\n }\r\n\r\n apiCOPACK: uiGrid.IGridApi;\r\n gvwCOPACK: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: true,\r\n useExternalFiltering: false,\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n cellEditableCondition: () => { return (this.consignment) ? (this.consignment.LockdownType > 2 ? false : true) : false },\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => {\r\n this.apiCOPACK = gridApi;\r\n\r\n if (this.consignment) {\r\n\r\n this.gvwCOPACK.columnDefs[5].visible = this.consignment.EnableItemTracking;\r\n this.gvwCOPACK.columnDefs[6].visible = this.consignment.EnableItemTracking;\r\n this.gvwCOPACK.columnDefs[7].visible = this.consignment.EnableItemTracking;\r\n this.gvwCOPACK.columnDefs[9].visible = this.consignment.EnableItemTracking;\r\n this.gvwCOPACK.columnDefs[10].visible = this.consignment.EnableItemTracking;\r\n\r\n if (this.consignment.CargoTypeId === 4)\r\n this.gvwCOPACK.columnDefs[13].visible = true;\r\n }\r\n this.$timeout(() => {\r\n this.apiCOPACK.grid.refresh();\r\n this.loadConsignmentDetailPacking();\r\n });\r\n\r\n\r\n this.apiCOPACK.cellNav.on.navigate(this.$scope, (newCol) => {\r\n this.$timeout(() => {\r\n this.apiCOPACK.selection.selectRow(newCol.row.entity);\r\n });\r\n });\r\n },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n field: \"\",\r\n enableFiltering: false,\r\n width: 55,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n headerCellTemplate: `\r\n
\r\n \r\n
`,\r\n cellTemplate: `\r\n
\r\n \r\n
`\r\n }, {\r\n name: \"SEQNUM\",\r\n displayName: \"#\",\r\n field: \"SequenceNumber\",\r\n enableFiltering: false,\r\n type: \"number\",\r\n cellClass: 'text-right',\r\n width: 30,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"SKUCODE\",\r\n displayName: \"SKU Code\",\r\n field: \"SKUCode\",\r\n width: 150,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"SKUDESC\",\r\n displayName: \"SKU Description\",\r\n field: \"SKUDescription\",\r\n width: 150,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"QTY\",\r\n displayName: \"Order Qty.\",\r\n field: \"Qty\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"LOTNUM\",\r\n displayName: \"Lot Number\",\r\n field: \"LotNumber\",\r\n width: 150,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n visible: false,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"SERIALNUM\",\r\n displayName: \"Serial Number\",\r\n field: \"SerialNumber\",\r\n width: 150,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n visible: false,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"LOTQTY\",\r\n displayName: \"Lot Quantity\",\r\n field: \"LotQty\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n visible: false,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"ALLQTY\",\r\n displayName: \"*Allocated Quantity\",\r\n field: \"AllocatedQty\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate: `\r\n
2\">\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: 'EXPDATE',\r\n displayName: 'Expiry Date',\r\n field: 'ExpiryDate',\r\n enableCellEditOnFocus: true,\r\n enableCellEdit: true,\r\n visible: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD | momentDateFilter: \"YYYY/MM/DD\"}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n width: 150,\r\n filterHeaderTemplate: `\r\n
\r\n \r\n \r\n
`,\r\n filter: {\r\n condition: function (searchTerm, cellValue) {\r\n if (cellValue) {\r\n return cellValue.isSameOrAfter(searchTerm);\r\n } else {\r\n return false;\r\n }\r\n }\r\n }\r\n }, {\r\n name: 'PRODDATE',\r\n displayName: 'Production Date',\r\n field: 'ProductionDate',\r\n enableCellEditOnFocus: true,\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD | momentDateFilter: \"YYYY/MM/DD\"}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n visible: false,\r\n width: 150,\r\n filterHeaderTemplate: `\r\n
\r\n \r\n \r\n
`,\r\n filter: {\r\n condition: function (searchTerm, cellValue) {\r\n if (cellValue) {\r\n return cellValue.isSameOrAfter(searchTerm);\r\n } else {\r\n return false;\r\n }\r\n }\r\n }\r\n }, {\r\n name: \"ALLPACK\",\r\n displayName: \"*Allocated Packages\",\r\n field: \"TrackingNumberOfPackages\",\r\n type: \"number\",\r\n cellFilter: \"number: 0\",\r\n cellClass: 'text-right',\r\n width: 150,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"TOPACK\",\r\n displayName: \"*Type Of Package\",\r\n field: \"TypeOfPackage\",\r\n enableFiltering: true,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n width: 175,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `
\r\n \r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return (cellValue.Display.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || searchTerm.length === 0);\r\n }\r\n },\r\n sortingAlgorithm: (a, b, rowA, rowB, direction) => {\r\n var nulls = this.apiCOD.core.sortHandleNulls(a, b);\r\n if (nulls !== null) {\r\n return nulls;\r\n } else {\r\n if (a === b) {\r\n return 0;\r\n }\r\n\r\n if (direction === \"desc\") {\r\n if (a.Display < b.Display) return -1;\r\n if (a.Display > b.Display) return 1;\r\n } else if (direction === \"asc\") {\r\n if (a.Display > b.Display) return 1;\r\n if (a.Display < b.Display) return -1;\r\n }\r\n\r\n return 0;\r\n }\r\n }\r\n }, {\r\n name: \"CONTAINER\",\r\n displayName: \"Container\",\r\n field: \"Container\",\r\n enableFiltering: true,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n visible: false,\r\n width: 175,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Code}}
`,\r\n editableCellTemplate: `
\r\n \r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return (cellValue.Display.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || searchTerm.length === 0);\r\n }\r\n },\r\n sortingAlgorithm: (a, b, rowA, rowB, direction) => {\r\n var nulls = this.apiCOD.core.sortHandleNulls(a, b);\r\n if (nulls !== null) {\r\n return nulls;\r\n } else {\r\n if (a === b) {\r\n return 0;\r\n }\r\n\r\n if (direction === \"desc\") {\r\n if (a.Display < b.Display) return -1;\r\n if (a.Display > b.Display) return 1;\r\n } else if (direction === \"asc\") {\r\n if (a.Display > b.Display) return 1;\r\n if (a.Display < b.Display) return -1;\r\n }\r\n\r\n return 0;\r\n }\r\n }\r\n }]\r\n };\r\n\r\n loadConsignmentDetailPacking() {\r\n this.isLoadingDetail = true;\r\n\r\n this.consignmentDetailService.getPackingList(this.consignment.Id).query((result) => {\r\n this.isLoadingDetail = false;\r\n this.gvwCOPACK.data = result;\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n this.isLoadingDetail = false;\r\n });\r\n }\r\n\r\n editPacking() {\r\n if (this.apiCOD && this.apiCOD.rowEdit.getDirtyRows().length === 0) {\r\n this.editingPacking = true;\r\n } else {\r\n this.generalService.displayMessageBox(\"Edit Packaging\", \"Please save consignment detail summary before editing the packing list\");\r\n }\r\n }\r\n\r\n savePacking() {\r\n if (this.editingPacking) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.savePackingList().then(() => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n });\r\n });\r\n } else {\r\n this.generalService.displayMessageBox(\"Edit Packaging\", \"Please load the packing list before editing the packing list\");\r\n }\r\n\r\n }\r\n\r\n loadTypeOfPackage(searchText: string) {\r\n return this.typeOfPackageService.getDropdownList(this.consignment.OwnerEntityId).query(() => {\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n }\r\n\r\n loadTypeOfPackagePacking(searchText: string) {\r\n var defer = this.$q.defer();\r\n\r\n if (this.consignment.ConsignmentDetailList.length > 0) {\r\n var topList = _.map(this.consignment.ConsignmentDetailList, (o) => {\r\n return {\r\n Id: o.Id, // We want the Id of the Consignment Detail Record.\r\n Code: o.TypeOfPackage.Code,\r\n Description: o.TypeOfPackage.Description,\r\n Display: o.LineNumber + \" - \" + o.NumberOfPackages + \" \" + o.TypeOfPackage.Description,\r\n };\r\n });\r\n\r\n topList = _.filter(topList, (n: interfaces.applicationcore.IDropdownModel) => {\r\n return (n.Display.toLocaleLowerCase().indexOf(searchText) >= 0 || searchText.length === 0);\r\n });\r\n\r\n defer.resolve(topList);\r\n } else {\r\n\r\n defer.resolve([]);\r\n }\r\n\r\n return defer.promise;\r\n }\r\n\r\n loadDetailContainers(searchText: string) {\r\n var defer = this.$q.defer();\r\n\r\n if (this.consignment.ContainersList.length > 0) {\r\n var contList = _.map(this.consignment.ContainersList, (o) => {\r\n return {\r\n Id: o.Id,\r\n Code: o.Number,\r\n Description: o.Number,\r\n Display: o.Number,\r\n };\r\n });\r\n\r\n contList = _.filter(contList, (n: interfaces.applicationcore.IDropdownModel) => {\r\n return (n.Display.toLocaleLowerCase().indexOf(searchText) >= 0 || searchText.length === 0);\r\n });\r\n\r\n defer.resolve(contList);\r\n } else {\r\n\r\n defer.resolve([]);\r\n }\r\n\r\n return defer.promise;\r\n }\r\n\r\n addContainer_click() {\r\n if (this.consignment) {\r\n if (this.$state.current.name === \"auth.Manifests.Update.ConsignmentExport\") {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.Container\", { contId: 0 });\r\n return;\r\n }\r\n\r\n if (this.$state.current.name === \"auth.Manifests.Update.ConsignmentImport\") {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.Container\", { contId: 0 });\r\n return;\r\n }\r\n\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.Container\", { contId: 0 });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.Container\", { contId: 0 });\r\n }\r\n }\r\n }\r\n\r\n DownloadFourKitesCSV(){\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n this.liveTrackingService.getFourKitesCSVData(this.consignment.Id).then(() => {\r\n }, (data) => {\r\n this.generalService.displayMessageHandler(data.data);\r\n });\r\n });\r\n }\r\n\r\n generatePackingDetail_click() {\r\n if (this.consignment.CargoTypeId === 4) {\r\n this.showContainerSizeModal().then((result) => { \r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n this.SaveConsignment().then(() => {\r\n return this.generatePackingDetail(result.Id?result.Id:null).then(() => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n });\r\n } else {\r\n this.generalService.displayConfirmationBox(\"Confirm?\", `This will save the consignment and then generate packing details, are you sure?`).then((result) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n this.SaveConsignment().then(() => {\r\n return this.generatePackingDetail().then(() => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n updateProRataTotals_click() {\r\n this.generalService.displayConfirmationBox(\"Pro Rata Gross Weight?\", `This will pro rata Gross Weight, Net Weight and Cube to all Commercial Invoice Lines from consignment details. Any existing values will be overridden. Are you sure you would like to continue?`).then((result) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n this.SaveConsignment().then(() => {\r\n return this.updateProRataTotals().then(() => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n showContainerSizeModal() {\r\n return this.$uibModal.open({\r\n animation: true,\r\n size: \"lg\",\r\n template: `
\r\n

Generate Packaging

\r\n
\r\n
\r\n

\r\n This function will generate Consignment and, if applicable, container details. If no container size is entered container details will not be generated.\r\n

\r\n

\r\n Warning: Any existing consignment and container details will be deleted.\r\n

\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
`,\r\n controller: class containerSizeCtrl {\r\n containerSize: interfaces.applicationcore.IDropdownModel;\r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, private containerISOService: interfaces.applicationcore.IContainerISOService) {\r\n }\r\n\r\n cancel() {\r\n this.$uibModalInstance.dismiss();\r\n }\r\n\r\n ok() {\r\n this.$uibModalInstance.close(this.containerSize?this.containerSize:1);\r\n }\r\n\r\n //Load Container ISO.\r\n loadContainerISOs(searchText: string) {\r\n return this.containerISOService.getContainerISODropdown(searchText).query(\r\n () => {\r\n\r\n }, (failureData) => {\r\n }).$promise;\r\n }\r\n },\r\n controllerAs: \"containerSizeCtrl\",\r\n resolve: {\r\n }\r\n }).result;\r\n }\r\n\r\n generatePackingDetail(containerSizeId?: number) {\r\n var defer = this.$q.defer();\r\n\r\n this.SaveConsignment().then(() => {\r\n this.consignmentDetailService.generatePackaging(this.consignmentID, containerSizeId).save((result: interfaces.applicationcore.IMessageHandler) => {\r\n defer.resolve();\r\n this.generalService.displayMessageHandler(result);\r\n\r\n }, (failureData) => {\r\n defer.reject();\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n }, () => {\r\n defer.reject();\r\n });\r\n\r\n return defer.promise;\r\n }\r\n\r\n savePackingList() {\r\n var defer = this.$q.defer();\r\n\r\n var packingList: Array;\r\n\r\n if (this.apiCOPACK && this.apiCOPACK.rowEdit.getDirtyRows().length > 0) {\r\n packingList = _.map(this.apiCOPACK.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n defer.resolve();\r\n return defer.promise;\r\n }\r\n\r\n this.consignmentDetailService.updatePackingList().save((packingList), (result: interfaces.applicationcore.IMessageHandler) => {\r\n defer.resolve();\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (this.apiCOPACK)\r\n this.apiCOPACK.rowEdit.setRowsClean(packingList);\r\n\r\n this.editingPacking = true;\r\n\r\n }, (failureData) => {\r\n defer.reject();\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.editingPacking = true;\r\n });\r\n\r\n return defer.promise;\r\n }\r\n\r\n updateProRataTotals() {\r\n var defer = this.$q.defer();\r\n\r\n this.SaveConsignment().then(() => {\r\n this.consignmentDetailService.updateProRataTotals(this.consignmentID).save((result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n }, () => {\r\n defer.reject();\r\n });\r\n\r\n return defer.promise;\r\n }\r\n\r\n removePackingDetail(entity: interfaces.consignment.IConsignmentDetailPacking) {\r\n if (entity && entity.IsNew) {\r\n _.remove(this.gvwCOD.data, (o) => {\r\n return o === entity;\r\n });\r\n } else if (entity) {\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentDetailService.deletePacking(entity.CommercialInvoiceSKUId, entity.CommercialInvoiceItemTrackingId, entity.ContainerConsignmentInvoiceDetailId).delete((result) => {\r\n this.loadConsignmentDetailPacking();\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n\r\n }\r\n }\r\n\r\n addInlinePackingDetail() {\r\n var selectedRow = this.apiCOPACK.selection.getSelectedRows()[0];\r\n\r\n if (selectedRow) {\r\n var packing = {\r\n IsNew: true,\r\n CommercialInvoiceSKUId: selectedRow.CommercialInvoiceSKUId,\r\n SKUCode: selectedRow.SKUCode,\r\n SKUDescription: selectedRow.SKUDescription,\r\n AllocatedQty: 0,\r\n LotQty: 0,\r\n Qty: selectedRow.Qty,\r\n TypeOfPackageDescription: selectedRow.TypeOfPackageDescription,\r\n TypeOfPackageCode: selectedRow.TypeOfPackageCode,\r\n ConsignmentDetailId: selectedRow.ConsignmentDetailId,\r\n DetailNumberOfPackages: 0,\r\n EnableItemTracking: selectedRow.EnableItemTracking\r\n };\r\n (>(this.gvwCOPACK.data)).splice(0, 0, packing);\r\n }\r\n }\r\n\r\n SaveConsignment() {\r\n // Containers\r\n if (this.apiContainersList && this.apiContainersList.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ContainersList = _.map(this.apiContainersList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n this.consignment.ContainersList = [];\r\n }\r\n\r\n //Consignment Documents\r\n if (this.apiConDocList && this.apiConDocList.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ConsignmentDocumentList = _.map(this.apiConDocList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n this.consignment.ConsignmentDocumentList = [];\r\n }\r\n\r\n //Customs Detail\r\n if (this.apiCustomsList && this.apiCustomsList.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ConsignmentCustomsDetailList = _.map(this.apiCustomsList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n if (this.apiTransList && this.apiTransList.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ConsignmentCustomsDetailList = _.map(this.apiTransList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n this.consignment.ConsignmentCustomsDetailList = [];\r\n }\r\n }\r\n\r\n //Detail\r\n if (this.apiCOD && this.apiCOD.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ConsignmentDetailList = _.map(this.apiCOD.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n this.consignment.ConsignmentDetailList = [];\r\n }\r\n\r\n //P&R\r\n if (this.apiPRList && this.apiPRList.rowEdit.getDirtyRows().length > 0) {\r\n this.consignment.ConsignmentPRList = _.map(this.apiPRList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n this.consignment.ConsignmentPRList = [];\r\n }\r\n\r\n return this.consignmentService.update().save((this.consignment), (result: interfaces.applicationcore.IMessageHandler) => {\r\n if (!result.HasErrorMessage) {\r\n if (this.apiCOD)\r\n this.apiCOD.rowEdit.setRowsClean(this.consignment.ConsignmentDetailList);\r\n\r\n if (this.apiCustomsList)\r\n this.apiCustomsList.rowEdit.setRowsClean(this.consignment.ConsignmentCustomsDetailList);\r\n\r\n if (this.apiContainersList)\r\n this.apiContainersList.rowEdit.setRowsClean(this.consignment.ContainersList);\r\n\r\n if (this.apiConDocList)\r\n this.apiConDocList.rowEdit.setRowsClean(this.consignment.ConsignmentDocumentList);\r\n\r\n if (this.apiPRList)\r\n this.apiPRList.rowEdit.setRowsClean(this.consignment.ConsignmentPRList);\r\n }\r\n\r\n this.$anchorScroll(\"topAnchor\");\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n }).$promise;\r\n }\r\n\r\n editCommercialInvoice(comInvoiceId: number) {\r\n if (!comInvoiceId) {\r\n return;\r\n }\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.CommercialInvoice\", { comId: comInvoiceId });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.CommercialInvoice\", { comId: comInvoiceId });\r\n }\r\n } else {\r\n\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.CommercialInvoice\", { comId: comInvoiceId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.CommercialInvoice\", { comId: comInvoiceId });\r\n }\r\n }\r\n }\r\n\r\n poWizzard() {\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.POWizard\", { conId: this.consignmentID, supId: selected.SupplierId, conType: this.consignment.ConsignmentTypeId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.SaleOrder\", { conId: this.consignmentID });\r\n }\r\n }\r\n else\r\n {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.PurchaseOrder\", { conId: this.consignmentID, supId: selected.SupplierId, conType: this.consignment.ConsignmentTypeId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.SaleOrder\", { conId: this.consignmentID });\r\n }\r\n }\r\n\r\n } else {\r\n this.apiCIList.selection.selectRow(this.gCIList.data[0]);\r\n\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.POWizard\", { conId: this.consignmentID, supId: selected.SupplierId, conType: this.consignment.ConsignmentTypeId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.SaleOrder\", { conId: this.consignmentID });\r\n } \r\n }\r\n else\r\n {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.PurchaseOrder\", { conId: this.consignmentID, supId: selected.SupplierId, conType: this.consignment.ConsignmentTypeId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.SaleOrder\", { conId: this.consignmentID });\r\n }\r\n }\r\n }\r\n }\r\n }\r\n\r\n gCIList: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: true,\r\n //useExternalFiltering: true,\r\n enableCellEdit: false,\r\n useExternalSorting: true,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n enablePagination: false,\r\n enablePaginationControls: false,\r\n paginationPageSizes: [25, 50, 75, 100],\r\n paginationPageSize: 25,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n showGridFooter: true,\r\n enableHorizontalScrollbar: 2,\r\n enableVerticalScrollbar: 1,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: () => { return this.consignmentTypeDefaults.AllowInvoiceNumberDateOverride}, \r\n onRegisterApi: (gridApi) => { this.registerGridApi(gridApi) },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n enableFiltering: false,\r\n cellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n width: 35\r\n }, {\r\n name: \"InvoiceNumber\",\r\n displayName: \"Invoice Number\",\r\n field: \"InvoiceNumber\",\r\n width: 120,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\\\r\n
`,\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n enableCellEditOnFocus: true \r\n }, {\r\n name: \"InvoiceDate\",\r\n displayName: \"Invoice Date\",\r\n cellFilter: 'momentDateFilter:\"YYYY/MM/DD\"',\r\n field: \"InvoiceDate\",\r\n width: 120,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD | momentDateFilter: 'YYYY/MM/DD'}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableCellEditOnFocus: true \r\n }, {\r\n name: \"Supplier\",\r\n displayName: \"Supplier\",\r\n field: \"Supplier\",\r\n width: 200,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"Customer\",\r\n displayName: \"Customer Name\",\r\n field: \"Customer\",\r\n width: 150,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"Reference\",\r\n displayName: \"Reference\",\r\n field: \"Reference\",\r\n width: 150,\r\n visible: !this.$stateParams.IsInbound,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"Incoterm\",\r\n displayName: \"Incoterm\",\r\n field: \"Incoterm\",\r\n width: 220,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"CurrencyCode\",\r\n displayName: \"Currency\",\r\n field: \"CurrencyCode\",\r\n width: 100,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"TotalInvoiceValue\",\r\n displayName: \"Total Value\",\r\n field: \"TotalInvoiceValue\",\r\n width: 100,\r\n cellClass: 'text-right',\r\n cellFilter: \"number: 2\",\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"TotalVAT\",\r\n displayName: \"Total VAT\",\r\n field: \"TotalVAT\",\r\n width: 100,\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 2',\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n },]\r\n };\r\n\r\n registerGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiCIList = gridApi;\r\n this.apiCIList.pagination.on.paginationChanged(this.$scope, (newPage, pageSize) => { this.CIListPageChange(newPage, pageSize) });\r\n\r\n this.apiCIList.selection.on.rowSelectionChanged(this.$scope, (selected) => { this.selectedCI = selected; });\r\n\r\n this.$timeout(() => {\r\n if (this.selectedCI)\r\n this.apiCIList.selection.selectRow(this.selectedCI.entity);\r\n });\r\n }\r\n\r\n CIListPageChange(newPage, pageSize) {\r\n this.paginationOptions.pageNumber = newPage;\r\n this.paginationOptions.pageSize = pageSize;\r\n }\r\n\r\n refreshConsignmentAddresses_click() {\r\n this.generalService.displayConfirmationBox(\"Refresh Addresses\", \"Would you like to refresh Consignment and Commercial Invoice Addresses?\").then(\r\n (result) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.refreshConsignmentAddresses().then((result) => {\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n });\r\n });\r\n });\r\n }\r\n });\r\n });\r\n }\r\n }, () => {\r\n\r\n }\r\n );\r\n }\r\n\r\n refreshConsignmentAddresses() {\r\n return this.consignmentService.refreshConsignmentAddresses(this.consignment.Id).save((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$anchorScroll(\"topAnchor\");\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n }).$promise;\r\n }\r\n\r\n updateConsignmentComments_click() {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"Any comments will be overwritten, do you want to continue?\").then(\r\n (result) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.updateConsignmentComments().then((result) => {\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n });\r\n });\r\n });\r\n }\r\n });\r\n });\r\n }\r\n }, () => {\r\n\r\n }\r\n );\r\n }\r\n\r\n updateConsignmentComments() {\r\n return this.consignmentService.generateConsignmentComments(this.consignment.Id).save((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$anchorScroll(\"topAnchor\");\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n }).$promise;\r\n }\r\n\r\n\r\n refreshFromSalesOrder_click() {\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n this.SaveConsignment().then(() => {\r\n return this.commercialInvoiceService.refreshFromSalesOrder().save(\r\n { comId: selected.Id }, (response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a commercial invoice\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n refreshFromDeliveryInstruction_click() {\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n this.SaveConsignment().then(() => {\r\n return this.commercialInvoiceService.refreshFromDeliveryInstruction().save(\r\n { comId: selected.Id }, (response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n })\r\n }, () => {\r\n return;\r\n });\r\n });\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a commercial invoice\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n tradeAgreementWizard_click() {\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n this.showTradeAgreementModal().then((data) => {\r\n if (data) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n this.SaveConsignment().then(() => {\r\n return this.commercialInvoiceService.commercialInvoiceTradeAgreementWizard(selected.Id, data.declarationCountryId, data.countryGroupId,\r\n data.originCriteriaId, data.preferenceCodeId, data.overrideExisting, data.uploadProductMaster).save((response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n }, () => {\r\n\r\n });\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a commercial invoice\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n showTradeAgreementModal() {\r\n return this.$uibModal.open({\r\n animation: true,\r\n template: `
\r\n
\r\n

Trade Agreement Wizard

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
`,\r\n controller: ($scope, $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, tariffCountryGroupService: interfaces.tariff.ITariffCountryGroupService,\r\n tariffCountryGroupOriginService: interfaces.tariff.ITariffCountryGroupOriginService, tariffPreferenceCodeService: interfaces.tariff.ITariffPreferenceCodeService,\r\n defaultDestinationCountry,\r\n targetCountry) => {\r\n $scope.loadLoadingCountry = () => { return this.loadLoadingCountry() };\r\n\r\n\r\n $scope.decCountry = defaultDestinationCountry;\r\n\r\n\r\n $scope.decCountryChange = () => {\r\n $scope.countryGroupList = undefined;\r\n $scope.groupCountry = undefined;\r\n $scope.prefCodeList = undefined;\r\n $scope.prefCode = undefined;\r\n };\r\n\r\n $scope.countryGroupList = [];\r\n $scope.loadCountryGroups = () => {\r\n\r\n if ($scope.decCountry) {\r\n return tariffCountryGroupService.getForDropDownByTargetCountry($scope.decCountry.Id, targetCountry.Id).query(() => {\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data, $scope);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n };\r\n\r\n $scope.originCriteriaList = [];\r\n $scope.loadCountryOrigins = () => {\r\n if ($scope.groupCountry) {\r\n return tariffCountryGroupOriginService.getDropdownList().query({\r\n countryGroupId: $scope.groupCountry.Id\r\n }, () => {\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data, $scope);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n };\r\n\r\n $scope.prefCodeList = [];\r\n $scope.loadPreferenceCodes = () => {\r\n if ($scope.decCountry) {\r\n return tariffPreferenceCodeService.getDropdownList().query({\r\n tariffCountryId: $scope.decCountry.Id\r\n }, () => {\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data, $scope);\r\n }).$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n };\r\n\r\n $scope.ok = () => {\r\n $uibModalInstance.close({\r\n declarationCountryId: $scope.decCountry.Id,\r\n countryGroupId: $scope.groupCountry.Id,\r\n originCriteriaId: $scope.orgCriteria ? $scope.orgCriteria.Id : undefined,\r\n preferenceCodeId: $scope.prefCode ? $scope.prefCode.Id : undefined,\r\n overrideExisting: $scope.overrideExisting,\r\n uploadProductMaster: $scope.uploadProductMaster\r\n });\r\n };\r\n\r\n $scope.cancel = () => {\r\n $uibModalInstance.dismiss(false);\r\n };\r\n },\r\n resolve: {\r\n defaultDestinationCountry: (this.consignment.IsInbound) ? this.consignment.UnloadingCountry : this.consignment.LoadingCountry,\r\n targetCountry: (this.consignment.IsInbound) ? this.consignment.LoadingCountry : this.consignment.UnloadingCountry,\r\n }\r\n }).result;\r\n }\r\n\r\n convertUnitOfMeasure_click() {\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n this.showConvertUnitOfMeasureModal().then((data) => {\r\n if (data) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n this.SaveConsignment().then(() => {\r\n return this.commercialInvoiceService.commercialInvoiceConvertUoM(data.isConvertUoM, selected.Id, data.uomId).save((response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n }, () => {\r\n\r\n });\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a commercial invoice\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n showConvertUnitOfMeasureModal() {\r\n return this.$uibModal.open({\r\n animation: true,\r\n template: `
\r\n
\r\n

Convert Unit of Measure

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

This utility will convert either the price or order unit of measure for the entire selected invoice. If you convert the price unit of measure, the prices will also be converted accordingly.

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
`,\r\n controller: ($scope, $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, unitOfMeasureService: interfaces.master.IUnitOfMeasureService) => {\r\n $scope.isConvertUoM = true;\r\n $scope.loadUoMs = () => {\r\n return unitOfMeasureService.getUoMDropdown().query({\r\n ownerEntityId: this.consignment.OwnerEntityId\r\n }, () => {\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data, $scope);\r\n }).$promise;\r\n };\r\n\r\n $scope.ok = () => {\r\n $uibModalInstance.close({\r\n isConvertUoM: $scope.isConvertUoM,\r\n uomId: $scope.uom.Id\r\n });\r\n };\r\n\r\n $scope.cancel = () => {\r\n $uibModalInstance.dismiss(false);\r\n };\r\n },\r\n resolve: {\r\n }\r\n }).result;\r\n }\r\n\r\n taCertificateAllocation_click() {\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.SaveConsignment().then(() => {\r\n return this.commercialInvoiceService.containCertificate(selected.Id).get((response) => {\r\n if (response.value) {\r\n this.existingCertificates(selected.Id);\r\n } else {\r\n this.noExistingCertificates(selected.Id);\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a commercial invoice\", Enum.EnumMessageType.Warning);\r\n }\r\n\r\n }\r\n\r\n noExistingCertificates(comId: number) {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"You are about to allocate certificate numbers. Would you like to continue?\").then((data) => {\r\n if (data) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.consignmentService.allocateCertificateNumbers(this.consignment.Id, comId).save((response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n }, () => {\r\n\r\n });\r\n }\r\n\r\n existingCertificates(comId: number) {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"There are certificates allocated to the commercial invoice. Re-allocating certificates to this commercial invoice will cancel these certificates if they are printed or reallocate a new number if they are not printed. Are you sure you want to Re-Allocate certificates?\").then((data) => {\r\n if (data) {\r\n this.showCertificateCancellationModal(comId).then((result) => {\r\n if (result) {\r\n this.reallocateCertificates(comId, result.currentCertificateId? result.currentCertificateId:0, result.documentType, result.newCertificateNumber?result.newCertificateNumber:'', result.cancellationReason, result.cancelAll?result.cancelAll:false);\r\n }\r\n });\r\n }\r\n }, () => {\r\n\r\n });\r\n }\r\n\r\n cancelAllCertificates(comId: number, cancellationReason: string) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.consignmentService.allocateCertificateNumbers(this.consignment.Id, comId, cancellationReason).save((response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n\r\n reallocateCertificates(comId: number, currentCertificateId: number, documentType: number, newCertificateNumber: string, cancellationReason: string, cancelAll: boolean) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.consignmentService.reallocateCertificateNumbers(currentCertificateId, newCertificateNumber, comId, cancellationReason, documentType, cancelAll).save((response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n if (cancelAll){\r\n //Auto-allocate certificates after Cancel All\r\n return this.noExistingCertificates(comId);\r\n }else\r\n {\r\n return this.loadConsignment();\r\n }\r\n });\r\n });\r\n }\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n\r\n showCertificateCancellationModal(comId: number) {\r\n return this.$uibModal.open({\r\n animation: true,\r\n template: `
\r\n
\r\n

Re-allocate Certificates

\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
`,\r\n controller: ($scope, $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, certificateRegisterDetailService: interfaces.master.ICertificateRegisterDetailService) => {\r\n\r\n $scope.certTypeChanged = () => {\r\n $scope.cancelAll = undefined;\r\n $scope.certNumbers = undefined;\r\n $scope.certType = undefined;\r\n $scope.certNumber = undefined;\r\n $scope.certNumberTo = undefined;\r\n $scope.certAvailableNumbers = undefined;\r\n }\r\n\r\n $scope.cancelAllChanged = (cancelAll:boolean) =>{\r\n $scope.certNumber = undefined;\r\n $scope.certNumberTo = undefined;\r\n }\r\n\r\n $scope.loadCertTypes = () => {\r\n return this.classificationValueService.GetClassificationValueDropdownByClassification().query({\r\n classificationId: 127\r\n }, () => {\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data, $scope);\r\n }).$promise;\r\n };\r\n\r\n $scope.certTypeChanged = () => {\r\n $scope.certNumbers = undefined;\r\n $scope.certAvailableNumbers = undefined;\r\n $scope.certNumber = undefined;\r\n $scope.certNumberTo = undefined;\r\n };\r\n\r\n $scope.loadCertNumbers = () => {\r\n if ($scope.certType) {\r\n return certificateRegisterDetailService.getAllocatedCertificateRegisterDetail(comId, $scope.certType.Id).query().$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n $scope.loadAvailableCertNumbers = (searchText) => {\r\n if ($scope.certType) {\r\n var countryId = 0;\r\n if (this.consignment.IsInbound && this.consignment.LoadingCountry)\r\n countryId = this.consignment.LoadingCountry.Id\r\n if (!this.consignment.IsInbound && this.consignment.UnloadingCountry)\r\n countryId = this.consignment.UnloadingCountry.Id\r\n\r\n if (countryId > 0)\r\n return certificateRegisterDetailService.GetAvailableCertificateRegisterDetailCountryBased(countryId, searchText, this.consignment.OwnerEntityId, $scope.certType.Id).query().$promise;\r\n else\r\n return certificateRegisterDetailService.getAvailableCertificateRegisterDetail(searchText, this.consignment.OwnerEntityId, $scope.certType.Id).query().$promise;\r\n } else {\r\n var defer = this.$q.defer();\r\n defer.resolve([]);\r\n return defer.promise;\r\n }\r\n }\r\n\r\n $scope.ok = () => {\r\n $uibModalInstance.close({\r\n currentCertificateId: $scope.certNumber ? $scope.certNumber.Id : undefined,\r\n newCertificateNumber: $scope.certNumberTo ? $scope.certNumberTo.Description : undefined,\r\n cancellationReason: $scope.reason,\r\n documentType: $scope.certType ? $scope.certType.Id : undefined,\r\n cancelAll: $scope.cancelAll\r\n });\r\n };\r\n\r\n $scope.cancel = () => {\r\n $uibModalInstance.dismiss(false);\r\n };\r\n },\r\n resolve: {\r\n }\r\n }).result;\r\n }\r\n\r\n //Load Shipping Priorities\r\n public loadShippingPriorities() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.consignment) {\r\n this.shippingPriorityService.getDropdownList().query(\r\n { \r\n entityId: this.consignment.OwnerEntityId, \r\n transportModeId: this.consignment.TransportMode?this.consignment.TransportMode.Id:null,\r\n IsInbound: this.consignment.IsInbound\r\n }, (data) => {\r\n defer.resolve(data);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n defer.resolve([]);\r\n });\r\n } else {\r\n defer.resolve([]);\r\n }\r\n\r\n return defer.promise;\r\n }\r\n\r\n //Loading Lead Times\r\n public shippingPriorityChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n\r\n this.consignment.ShippingPriority = model;\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.loadLeadTimes(this.consignment.RouteCode, model).then(\r\n () => {\r\n this.calculateLeadTimes(false, this.consignment.EstimateLoadingDate);\r\n }\r\n );\r\n });\r\n }\r\n\r\n public exportConsignmentCostModelChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n\r\n }\r\n\r\n loadCostingDetail() {\r\n\r\n }\r\n\r\n public CostExportConsignment() {\r\n if (this.ExportConsignmentCostModel) {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"You are about to Cost the Export Consignment. Would you like to continue?\").then((data) => {\r\n if (data) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.consignmentService.costExportConsignment(this.consignment.Id, this.ExportConsignmentCostModel.Id).save((response) => {\r\n this.generalService.displayMessageHandler(response);\r\n\r\n if (!response.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n }, () => {\r\n\r\n });\r\n }\r\n }\r\n\r\n //estimateLoadingDateChanged\r\n public estimateLoadingDateChanged(newValue: moment.Moment) {\r\n var defer = this.$q.defer();\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.loadLeadTimes(this.consignment.RouteCode, this.consignment.ShippingPriority).then(\r\n () => {\r\n this.calculateLeadTimes(false, newValue);\r\n }\r\n );\r\n });\r\n\r\n defer.resolve();\r\n return defer.promise;\r\n }\r\n\r\n //Not Promise?\r\n public estimateLoadingDateChangedNow(newValue: moment.Moment) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n return this.loadLeadTimes(this.consignment.RouteCode, this.consignment.ShippingPriority).then(\r\n () => {\r\n \r\n this.calculateLeadTimes(false, newValue);\r\n \r\n }\r\n );\r\n });\r\n }\r\n\r\n public actualShipByDateDateChanged(newValue: moment.Moment) {\r\n if (newValue){\r\n this.consignment.TransportDocumentDate = newValue; \r\n }\r\n }\r\n\r\n public loadLeadTimes(model: interfaces.applicationcore.IDropdownModel, shippingPriority: interfaces.applicationcore.IDropdownModel) {\r\n var defer = this.$q.defer();\r\n\r\n if (model && model.Id) {\r\n this.routeLeadTimesService.getByRoute().query({ routeId: model.Id, shippingPriorityId: shippingPriority ? shippingPriority.Id : 0 }, (routeLeadTime) => {\r\n this.routeLeadTimes = routeLeadTime;\r\n defer.resolve();\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }\r\n else {\r\n this.routeLeadTimes = {\r\n ETA: 0,\r\n ShipByDate: 0,\r\n CustomsClearedDate: 0,\r\n DateToStore: 0,\r\n DestinationClearing: 0,\r\n RequiredDateOfArrival: 0,\r\n RouteId: 0\r\n };\r\n\r\n defer.resolve();\r\n }\r\n\r\n return defer.promise;\r\n }\r\n\r\n public calculateLeadTimes(forward: boolean, newValue: moment.Moment) {\r\n if (!newValue)\r\n return;\r\n\r\n if (!this.routeLeadTimes)\r\n return;\r\n \r\n \r\n\r\n if (!forward) {\r\n //Assign Dates - Before\r\n if (this.consignment.ActualLoadingDate != newValue) {\r\n this.consignment.EstimateClearanceDate = newValue.clone().add((this.routeLeadTimes.CustomsClearedDate * -1), \"day\");\r\n }\r\n\r\n //Assign Dates - After\r\n this.consignment.EstimateShipByDate = newValue.clone().add((this.routeLeadTimes.ShipByDate * 1), \"day\");\r\n this.consignment.EstimateArrivalDate = this.consignment.EstimateShipByDate.clone().add((this.routeLeadTimes.ETA * 1), \"day\");\r\n this.consignment.EstimatedDestinationClearanceDate = this.consignment.EstimateArrivalDate.clone().add((this.routeLeadTimes.DestinationClearing * 1), \"day\");\r\n \r\n if (!this.isInbound)\r\n this.consignment.EstimateDestinationWarehouseDate = this.consignment.EstimatedDestinationClearanceDate.clone().add((this.routeLeadTimes.RequiredDateOfArrival * 1), \"day\");\r\n else\r\n this.consignment.EstimateDestinationWarehouseDate = this.consignment.EstimateArrivalDate.clone().add((this.routeLeadTimes.RequiredDateOfArrival * 1), \"day\");\r\n\r\n this.consignment.EstimateStoreDeliveryDate = this.consignment.EstimateDestinationWarehouseDate.clone().add((this.routeLeadTimes.DateToStore * 1), \"day\");\r\n\r\n this.loadConsignmentLeadTimesLockDown();\r\n }\r\n }\r\n\r\n insertCIL() {\r\n this.consignment.ConsignmentCommercialInvoiceList.push({\r\n\r\n });\r\n }\r\n\r\n createNew() {\r\n if (this.isInbound)\r\n {\r\n if (this.$stateParams.manId) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.CommercialInvoiceCreateNew\", { consignmentId: Number(this.consignment.Id) });\r\n }\r\n else\r\n {\r\n this.$state.go(\"auth.ConsignmentImports.Update.CommercialInvoiceCreateNew\", { consignmentId: Number(this.consignment.Id) });\r\n }\r\n }\r\n else{\r\n this.$state.go(\"auth.ConsignmentExports.Update.CommercialInvoiceCreateNew\", { consignmentId: Number(this.consignment.Id) });\r\n } \r\n }\r\n\r\n vesselSelected(vessel: interfaces.logistics.IVesselLookup) {\r\n this.consignment.TransportName = vessel.VesselName;\r\n \r\n if(vessel.VoyageNumber?.trim())\r\n {\r\n this.consignment.TransportNumber = vessel.VoyageNumber;\r\n }\r\n \r\n if(vessel.VesselCallSign?.trim()){\r\n this.consignment.VesselRadioCallSign = vessel.VesselCallSign;\r\n }\r\n \r\n if(vessel.CustomsOperatorCode?.trim()){\r\n this.consignment.VesselOperator = vessel.CustomsOperatorCode;\r\n }\r\n\r\n if (this.consignment.IsInbound){\r\n this.consignment.EstimateArrivalDate = vessel.DateOfArrival;\r\n }\r\n else\r\n {\r\n this.consignment.EstimateShipByDate = vessel.DateOfDeparture;\r\n this.consignment.FromStackDate = vessel.StackOpening;\r\n this.consignment.ToStackDate = vessel.StackClosing;\r\n }\r\n\r\n if(!this.consignment.Terminal && vessel.TerminalId){\r\n this.consignment.Terminal = {Id:vessel.TerminalId,Code:vessel.TerminalCode,Description:vessel.TerminalName,Display:vessel.TerminalCode + ' - ' + vessel.TerminalName};\r\n }\r\n\r\n if(this.consignment.IsInbound && !this.consignment.UnloadingLocation)\r\n {\r\n this.consignment.UnloadingLocation = {Id:vessel.LoccationId,Code:vessel.LocationCode,Description:vessel.LocationName,Display:vessel.LocationCode + ' - ' + vessel.LocationName};\r\n }\r\n\r\n if(!this.consignment.IsInbound && !this.consignment.LoadingLocation)\r\n {\r\n this.consignment.LoadingLocation = {Id:vessel.LoccationId,Code:vessel.LocationCode,Description:vessel.LocationName,Display:vessel.LocationCode + ' - ' + vessel.LocationName};\r\n } \r\n\r\n this.consignment.VesselId = vessel.VesselId;\r\n this.consignment.VesselScheduleVisitSequence = vessel.VisitId;\r\n\r\n }\r\n\r\n addeditCommercialInvoice_click() {\r\n\r\n if (!this.isInbound) {\r\n if (this.gCIList.data.length > 0) {\r\n this.$timeout(() => {\r\n this.apiCIList.selection.unSelectRow(this.gCIList.data[0]);\r\n this.apiCIList.selection.selectRow(this.gCIList.data[0]);\r\n })\r\n }\r\n }\r\n\r\n if (this.gCIList.data.length > 0) {\r\n if (this.$stateParams.manId) {\r\n if (this.isInbound)\r\n this.$state.go(\"auth.ConsignmentImports.PurchaseOrder\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: Number(this.gCIList.data[0].Id) });\r\n else\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.AddEditCommercialInvoice\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: Number(this.gCIList.data[0].Id) });\r\n }\r\n else {\r\n if (this.isInbound)\r\n this.$state.go(\"auth.ConsignmentImports.PurchaseOrder\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: Number(this.gCIList.data[0].Id) });\r\n else\r\n this.$state.go(\"auth.ConsignmentExports.Update.AddEditCommercialInvoice\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: Number(this.gCIList.data[0].Id) });\r\n }\r\n\r\n }\r\n else {\r\n if (this.$stateParams.manId) {\r\n if (this.isInbound)\r\n this.$state.go(\"auth.ConsignmentImports.PurchaseOrder\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: 0 });\r\n else\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.AddEditCommercialInvoice\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: 0 });\r\n }\r\n else {\r\n if (this.isInbound)\r\n this.$state.go(\"auth.ConsignmentImports.PurchaseOrder\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: 0 });\r\n else\r\n this.$state.go(\"auth.ConsignmentExports.Update.AddEditCommercialInvoice\", { consignmentId: Number(this.consignment.Id), commercialInvoiceId: 0 });\r\n }\r\n }\r\n\r\n\r\n }\r\n\r\n removeCIL() {\r\n if (this.apiCIList.selection.getSelectedRows().length > 0) {\r\n\r\n this.generalService.displayConfirmationBox(\"Confirm Remove\", \"Are you sure you want to remove this Commercial Invoice Line?\").then((result) => {\r\n var selectedRow: interfaces.consignment.ICommercialInvoiceDisplay = this.apiCIList.selection.getSelectedRows()[0];\r\n if (result && (!selectedRow.Id || selectedRow.Id <= 0)) {\r\n _.remove(this.consignment.ConsignmentCommercialInvoiceList, selectedRow);\r\n } else if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n\r\n return this.commercialInvoiceService.delete(selectedRow.Id).remove((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n if (!result.HasErrorMessage)\r\n return this.loadConsignment();\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n });\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a Commercial Invoice Line\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n printCIDocuments() {\r\n if (this.apiCIList && this.apiCIList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiCIList.selection.getSelectedRows()[0];\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.CommercialInvoice.Documents\", { comId: selected.Id });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.CommercialInvoice.Documents\", { comId: selected.Id });\r\n }\r\n } else {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.CommercialInvoice.Documents\", { comId: selected.Id });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.CommercialInvoice.Documents\", { comId: selected.Id });\r\n }\r\n }\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a commercial invoice\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n printGDDocuments() {\r\n if (this.apiGoodsDecList && this.apiGoodsDecList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiGoodsDecList.selection.getSelectedRows()[0];\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.GoodsDeclaration.Documents\", { gsdId: selected.Id, version: selected.version });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.GoodsDeclaration.Documents\", { gsdId: selected.Id, version: selected.version });\r\n }\r\n } else {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.GoodsDeclaration.Documents\", { gsdId: selected.Id, version: selected.version });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.GoodsDeclaration.Documents\", { gsdId: selected.Id, version: selected.version });\r\n }\r\n }\r\n } else {\r\n this.generalService.displayMessage(\"Please select a Goods Declaration\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n refundClaims() {\r\n if (this.apiGoodsDecList && this.apiGoodsDecList.selection.getSelectedRows().length > 0) {\r\n var selected = this.apiGoodsDecList.selection.getSelectedRows()[0];\r\n this.$state.go(\"auth.ConsignmentExports.Update.RefundClaim\", { refId: selected.RefundClaimId });\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a Goods Declaration\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n printGDCIDocuments() {\r\n if (this.apiClearInList && this.apiClearInList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected = this.apiClearInList.selection.getSelectedRows()[0];\r\n\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.GoodsDeclaration.Documents\", { gsdId: selected.Id, version: selected.version });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.GoodsDeclaration.Documents\", { gsdId: selected.Id, version: selected.version });\r\n }\r\n } else {\r\n this.generalService.displayMessage(\"Please select a Clearing Instruction\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n apportionateConsignmentAlc() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then(() => {\r\n this.consignmentService.apportionateConsignmentALC(this.consignment.Id).save((result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n\r\n changeAlcStatus(){\r\n let alcStatusChangeModel : interfaces.consignment.ALCStatusChangeModel = {\r\n consignmentId: this.consignment.Id,\r\n statusId: this.consignment.CostInvoiceSummary.ALCStatus.Id,\r\n varianceReason:this.consignment.CostInvoiceSummary.ALCVarianceReason?this.consignment.CostInvoiceSummary.ALCVarianceReason.Id:null,\r\n comments: this.consignment.CostInvoiceSummary.ALCReasonComments\r\n };\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentService.changeALCStatus().save({},alcStatusChangeModel,(result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n }\r\n\r\n reopenAlc(){\r\n let alcStatusChangeModel : interfaces.consignment.ALCStatusChangeModel = {\r\n consignmentId: this.consignment.Id,\r\n statusId: 633,\r\n varianceReason:null,\r\n comments: this.consignment.CostInvoiceSummary.ALCReasonComments\r\n };\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentService.changeALCStatus().save({},alcStatusChangeModel,(result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n } \r\n\r\n viewCostInvoiceSummary() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.menuService.getGTSConnectMenuItem(529).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result.url) {\r\n result.url += \"?Id=\" + this.consignment.Id;\r\n var url = this.$state.href(\"auth.IFrame\", { url: result.url });\r\n window.open(url, '_blank');\r\n }\r\n }).$promise;\r\n });\r\n }\r\n\r\n\r\n\r\n generateCostInvoices() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then(() => {\r\n this.commercialInvoiceService.generateCostInvoices(this.consignment.Id).save((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n\r\n editCostInvoice(costInvoiceId: number) {\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.CostInvoice\", { comId: costInvoiceId });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.CostInvoice\", { comId: costInvoiceId });\r\n }\r\n } else {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.CostInvoice\", { comId: costInvoiceId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.CostInvoice\", { comId: costInvoiceId });\r\n }\r\n }\r\n }\r\n\r\n viewCostInvoiceDocuments(costInvoiceId: number) {\r\n if (this.$stateParams.manId) {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.CostInvoice.Documents\", { comId: costInvoiceId });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.CostInvoice.Documents\", { comId: costInvoiceId });\r\n }\r\n } else {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.CostInvoice.Documents\", { comId: costInvoiceId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.CostInvoice.Documents\", { comId: costInvoiceId });\r\n }\r\n }\r\n }\r\n\r\n removeCostInvoice(costInvoiceId: number) {\r\n if (costInvoiceId) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.commercialInvoiceService.delete(costInvoiceId).delete((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n\r\n }\r\n }\r\n\r\n //Goods Declaration Grid\r\n gvwGoodsDec: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: false,\r\n useExternalFiltering: false,\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: false,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => {\r\n this.registerGoodsDecGridApi(gridApi);\r\n\r\n\r\n\r\n },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"Id\",\r\n cellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n enableCellEdit: false,\r\n width: 35,\r\n enableCellEditOnFocus: false,\r\n }, {\r\n name: \"EDISTATUS\",\r\n displayName: \"EDI\",\r\n field: \"EDIStatus\",\r\n enableCellEdit: false,\r\n cellTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n `,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n width: 45,\r\n enableCellEditOnFocus: false,\r\n }, {\r\n name: \"COUNTRY\",\r\n displayName: \"Country\",\r\n field: \"DeclarationCountry\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"CPCTYPE\",\r\n displayName: \"CPC\",\r\n field: \"CPCType\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"FUNCTION\",\r\n displayName: \"Function\",\r\n field: \"Function\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"VERSION\",\r\n displayName: \"Version\",\r\n field: \"version\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"LASTCUSTOMSSTATUS\",\r\n displayName: \"Last Customs Status\",\r\n field: \"LastCustomsStatus\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false,\r\n width: 150\r\n }, {\r\n name: \"SOURCE\",\r\n displayName: \"Source\",\r\n field: \"Source\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false,\r\n width: 140\r\n }, {\r\n name: \"MRNNUMBER\",\r\n displayName: \"MRN Number\",\r\n field: \"MRNNumber\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"ASSESSMENTDATE\",\r\n displayName: \"Assessment Date\",\r\n field: \"AssessmentDate\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD | momentDateFilter: 'YYYY/MM/DD'}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"DECLARANT\",\r\n displayName: \"Declarant\",\r\n field: \"Declarant\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"REFUNDREFERENCE\",\r\n displayName: \"Refund Reference\",\r\n field: \"RefundReference\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }, {\r\n name: \"REFUNDSTATUS\",\r\n displayName: \"Refund Status\",\r\n field: \"RefundStatus\",\r\n type: \"string\",\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false\r\n }]\r\n };\r\n\r\n //Edit Goods Dec\r\n editGoodsDec(entity: interfaces.customs.IGoodsDeclaration) {\r\n if (this.$stateParams.manId) {\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.GoodsDeclaration\", { gsdId: entity.Id, version: entity.version });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.GoodsDeclaration\", { gsdId: entity.Id, version: entity.version });\r\n }\r\n } else {\r\n if (this.consignment.IsInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.GoodsDeclaration\", { gsdId: entity.Id, version: entity.version });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.GoodsDeclaration\", { gsdId: entity.Id, version: entity.version });\r\n }\r\n }\r\n }\r\n\r\n registerGoodsDecGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiGoodsDecList = gridApi;\r\n\r\n this.apiGoodsDecList.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiGoodsDecList.selection.selectRow(gridSelection.row.entity);\r\n if (gridSelection.row.entity.RefundClaimId > 0 && this.hasViewRefundClaimRights) {\r\n this.allowViewRefundClaims = true;\r\n }\r\n else {\r\n this.allowViewRefundClaims = false;\r\n }\r\n });\r\n\r\n this.$timeout(() => {\r\n this.gvwGoodsDec.data = this.consignment.ConsignmentGoodsDeclarationList;\r\n });\r\n }\r\n\r\n generateGoodsDec(GoodsDeclarationType: string) {\r\n this.displayCreateVersion(false,GoodsDeclarationType);\r\n }\r\n //This is a change\r\n generate(isClearing: boolean, GoodsDeclarationType: string) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n //Save the consignment first before saving\r\n return this.SaveConsignment().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.goodsDeclarationService.generateGoodsDec().get({\r\n consignmentId: this.consignment.Id,\r\n functionClassificationValueId: this.functionType,\r\n versionChangeReason: this.reason,\r\n CreateClearingInstructionOnly: isClearing,\r\n GoodsDeclarationType: GoodsDeclarationType\r\n }, (result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }).$promise;\r\n });\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n showAllVersions() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.goodsDeclarationService.getGoodsDeclarations().query({\r\n consignmentId: this.consignment.Id,\r\n version: \"\",\r\n getAll: this.getAll,\r\n isClearingInstruction: false,\r\n }, (result: Array) => {\r\n this.consignment.ConsignmentGoodsDeclarationList = result;\r\n this.gvwGoodsDec.data = result;\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n\r\n dutyDrawbacks() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n if (this.consignment.DutyDrawbackId) {\r\n if (this.$stateParams.manId) {\r\n var url = '#!/RefundClaims/Update/' + this.consignment.DutyDrawbackId;\r\n window.open(url, '_blank');\r\n }\r\n else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.RefundClaim\", { refId: this.consignment.DutyDrawbackId });\r\n }\r\n }\r\n else {\r\n return this.SaveConsignment().then(() => {\r\n this.consignmentService.Create52203DDClaim(this.consignment.Id).save({\r\n conId: this.consignment.Id,\r\n }, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$anchorScroll(\"topAnchor\");\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n }, () => {\r\n return;\r\n });\r\n }\r\n });\r\n }\r\n\r\n removeGoodsDec() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n //Save the consignment first before saving\r\n return this.SaveConsignment().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n var selectedRow = this.apiGoodsDecList.selection.getSelectedRows()[0];\r\n if (selectedRow && selectedRow.Id > 0) {\r\n if (selectedRow.IsClearingInstruction && !this.getHasGenerateRemoveClearInRight){\r\n this.generalService.displayMessage(\"You do not have Rights to remove a Clearing Instruction\", Enum.EnumMessageType.Warning);\r\n }else if (selectedRow.Source === 'MANUAL' && !this.hasAddRemoveManualGoodsDecRight){\r\n this.generalService.displayMessage(\"You do not have Rights to remove a Manual Goods Declaration\", Enum.EnumMessageType.Warning);\r\n }else if (selectedRow.Source === 'GENERATED' && !this.hasGenerateAndRemoveGoodsDeclarationRight){\r\n this.generalService.displayMessage(\"You do not have Rights to remove a Goods Declaration\", Enum.EnumMessageType.Warning);\r\n }\r\n else{\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.goodsDeclarationService.delete(selectedRow.Id).delete((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n }\r\n } else if (selectedRow) {\r\n _.remove(this.gvwGoodsDec.data, (o) => {\r\n return o === selectedRow;\r\n });\r\n } else {\r\n this.generalService.displayMessage(\"Please select a Goods Declaration to remove\", Enum.EnumMessageType.Warning);\r\n }\r\n });\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n\r\n registerConsignmentAttributeApi(gridApi: uiGrid.IGridApi) {\r\n this.apiCA = gridApi;\r\n }\r\n\r\n removeInlineCA() {\r\n var selectedRow = this.apiCA.selection.getSelectedRows()[0];\r\n if (selectedRow && selectedRow.Id > 0) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.customAttributeService.deleteCustomAttributeValue(selectedRow.Id).save({ Id: selectedRow.Id }, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n this.loadConsignment();\r\n });\r\n });\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n } else if (selectedRow) {\r\n _.remove(this.gvwConsignmentAttribute.data, (o) => {\r\n return o === selectedRow;\r\n });\r\n }\r\n }\r\n\r\n removeInlineCA1(entity: interfaces.master.ICustomAttributeValue) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n\r\n return this.customAttributeService.deleteCustomAttributeValue(entity.Id).save({ Id: entity.Id }, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n this.loadConsignment();\r\n });\r\n });\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n\r\n if (this.apiCA) {\r\n this.apiCA.rowEdit.setRowsClean(this.consignment.ConsignmentAttributeList);\r\n }\r\n\r\n if (entity.Id === 0) {\r\n _.remove(this.gvwConsignmentAttribute.data, (o) => {\r\n return o === entity;\r\n });\r\n return;\r\n }\r\n }\r\n\r\n checkBoxAttributeChanged(entity) {\r\n if (this.apiCA) {\r\n this.apiCA.rowEdit.setRowsDirty([entity]);\r\n }\r\n }\r\n\r\n attributeValueChanged(model: interfaces.applicationcore.IDropdownModel, entity: interfaces.master.ICustomAttributeValue) {\r\n if (model) {\r\n entity.AttributeValue = model.Description;\r\n\r\n if (this.apiCA) {\r\n this.apiCA.rowEdit.setRowsDirty([entity]);\r\n }\r\n }\r\n }\r\n\r\n attributeValueOtherChanged(entity: interfaces.master.ICustomAttributeValue) {\r\n if (entity) {\r\n if (this.apiCA) {\r\n this.apiCA.rowEdit.setRowsDirty([entity]);\r\n }\r\n }\r\n }\r\n\r\n insertCA() {\r\n this.consignment.ConsignmentAttributeList.push({\r\n Id: 0,\r\n Attribute: { Id: 0, AttributeType: 0, IsNotEditable: false },\r\n CategoryType: this.isInbound?793:784,\r\n CategoryKey: this.consignment.Id,\r\n IsActive: true\r\n });\r\n }\r\n\r\n addAllAttributes() {\r\n var typeId = 784;\r\n if (this.consignment.IsInbound)\r\n typeId = 793;\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then(() => {\r\n this.customAttributeService.generateMandatoryAttributes(this.consignment.Id, typeId).save((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n\r\n loadAttributeList() {\r\n var typeId = 784;\r\n if (this.consignment.IsInbound)\r\n typeId = 793;\r\n\r\n return this.customAttributeService.GetCustomAttributeByCategory(typeId, this.consignment.OwnerEntityId).query({\r\n }, (resultList) => {\r\n this.attributeList = resultList;\r\n }).$promise;\r\n }\r\n\r\n loadAttributeAnswerOptionList(id) {\r\n return this.customAttributeAnswerOptionService.GetDropDownListByAttribute().query({\r\n attributeId: id\r\n }, (resultList) => {\r\n this.attributeAnswerOptionList = resultList;\r\n }).$promise;\r\n }\r\n\r\n gvwConsignmentAttribute: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: false,\r\n useExternalFiltering: false,\r\n enableCellEdit: true,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableRowHeaderSelection: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: false,\r\n useExternalPagination: false,\r\n enableHorizontalScrollbar: 2,\r\n rowTemplate: '
',\r\n rowEditWaitInterval: -1,\r\n onRegisterApi: (gridApi) => {\r\n this.apiCA = gridApi;\r\n\r\n this.apiCA.cellNav.on.navigate(this.$scope, (newCol) => {\r\n this.$timeout(() => {\r\n this.apiCA.selection.selectRow(newCol.row.entity);\r\n });\r\n });\r\n },\r\n columnDefs: [\r\n {\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"Id\",\r\n cellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n enableCellEdit: false,\r\n width: 80,\r\n enableCellEditOnFocus: false,\r\n headerCellTemplate: `\r\n
\r\n \r\n \r\n
`\r\n },\r\n {\r\n name: 'Attribute',\r\n displayName: '* Attribute',\r\n field: 'Attribute',\r\n enableCellEditOnFocus: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n width: 300\r\n },\r\n {\r\n name: 'AttributeValue',\r\n displayName: '* Attribute Value',\r\n field: 'CustomAttributeAnswerOption',\r\n enableCellEditOnFocus: true,\r\n cellTemplate: `
{{row.entity.AttributeValue}}
\r\n
{{row.entity.AttributeValue}}
\r\n
{{row.entity.AttributeNumericValue}}
\r\n
{{row.entity.AttributeDateValue | momentDateFilter: 'YYYY/MM/DD HH:mm'}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n \r\n

\r\n \r\n

\r\n\r\n

\r\n \r\n

\r\n\r\n \r\n
\r\n `,\r\n enableSorting: false,\r\n width: 300\r\n }\r\n , {\r\n name: \"IsActive\",\r\n displayName: \"Active\",\r\n enableFiltering: false,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellTemplate: ``,\r\n editableCellTemplate: `
\r\n

\r\n \r\n

\r\n
`,\r\n width: 60\r\n }\r\n ]\r\n };\r\n\r\n\r\n registerClearInGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiClearInList = gridApi;\r\n\r\n this.apiClearInList.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiClearInList.selection.selectRow(gridSelection.row.entity);\r\n });\r\n\r\n this.apiClearInList.selection.on.rowSelectionChanged(this.$scope, (selected) => {\r\n if (selected.entity.StatusIndicator > 0) {\r\n this.allowViewCustoms = false;\r\n }\r\n else {\r\n this.allowViewCustoms = true;\r\n }\r\n })\r\n\r\n this.$timeout(() => {\r\n //this.gvwClearIn.data = this.consignment.ConsignmentClearingInstructionList;\r\n });\r\n }\r\n\r\n generateClearIn() {\r\n this.displayCreateVersion(true,\"GENERATED\");\r\n }\r\n\r\n addManualDeclaration_Click(){\r\n \r\n \r\n this.displayCreateManualDeclaration().then((manualGoodsDeclarationCreate:interfaces.customs.IManualGoodsDeclarationCreate ) => {\r\n if (manualGoodsDeclarationCreate) {\r\n manualGoodsDeclarationCreate.consignmentId = this.consignment.Id;\r\n return this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n \r\n return this.goodsDeclarationService.createManualDeclaration().save({}, manualGoodsDeclarationCreate,\r\n (result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n \r\n if (!result.HasErrorMessage) {\r\n \r\n if (this.isInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.GoodsDeclaration\", { gsdId: Number(result.ID), version: 1 });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.GoodsDeclaration\", { gsdId: Number(result.ID), version: 1});\r\n }\r\n\r\n }\r\n }).$promise;\r\n });\r\n \r\n \r\n\r\n }\r\n });\r\n\r\n }\r\n\r\n \r\n displayCreateManualDeclaration() {\r\n //Get delivery status\r\n return this.$uibModal.open({\r\n animation: true,\r\n template: `\r\n
\r\n
\r\n
\r\n
\r\n \r\n Add Manual Declaration\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n `\r\n ,\r\n controller: class manualDeclarationCtrl {\r\n manualGoodsDeclarationCreate: interfaces.customs.IManualGoodsDeclarationCreate = {};\r\n\r\n \r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, private $q: ng.IQService,\r\n private goodsDeclarationService: interfaces.customs.IGoodsDeclarationService,\r\n private tariffCountryService: interfaces.tariff.ITariffCountryService,\r\n private customsProcedureMatrixService: interfaces.tariff.ICustomsProcedureMatrixService,\r\n private customsOfficeCodeService: interfaces.tariff.ICustomsOfficeCodeService,\r\n private companyService: interfaces.master.ICompanyService,\r\n private flowTypeService: interfaces.customs.IFlowTypeService,\r\n private classificationValueService: interfaces.applicationcore.IClassificationValueService,\r\n private ownerEntityId: number,\r\n ) {\r\n\r\n }\r\n\r\n cancel() {\r\n this.$uibModalInstance.dismiss();\r\n }\r\n\r\n ok() {\r\n this.$uibModalInstance.close(this.manualGoodsDeclarationCreate);\r\n }\r\n\r\n loadCountries() {\r\n return this.tariffCountryService.getActiveTariffCountries().query({\r\n }, (list: Array) => {\r\n }).$promise;\r\n }\r\n\r\n \r\n LoadCPCTypes() {\r\n return this.classificationValueService.GetClassificationValueDropdownByClassification().query({\r\n classificationId: Enum.ClassificationEnum.CPCType\r\n }, (resultList) => { \r\n }).$promise;\r\n }\r\n \r\n\r\n\r\n countryChanged(model:interfaces.applicationcore.IDropdownModel) {\r\n this.manualGoodsDeclarationCreate.Country = model;\r\n this.manualGoodsDeclarationCreate.ProcedureCategory = undefined;\r\n this.manualGoodsDeclarationCreate.CustomsProcedure = undefined;\r\n this.manualGoodsDeclarationCreate.PreviousCustomsProcedure = undefined;\r\n this.manualGoodsDeclarationCreate.OfficeOfEntry = undefined;\r\n this.manualGoodsDeclarationCreate.Declarant = undefined;\r\n this.manualGoodsDeclarationCreate.FlowType = undefined;\r\n this.manualGoodsDeclarationCreate.CPCType = undefined;\r\n\r\n if (model && model.Id > 0){\r\n \r\n this.loadDocumentFlowType().then((list: Array)=>{\r\n if (list.length === 1){\r\n this.manualGoodsDeclarationCreate.FlowType = list[0];\r\n } \r\n });\r\n }\r\n\r\n }\r\n\r\n loadCustomProcedureMatrix(){\r\n /*this.customsProcedureMatrixService.get(this.manualGoodsDeclarationCreate.Country.Id,\r\n this.manualGoodsDeclarationCreate.ProcedureCategory.Id,\r\n this.manualGoodsDeclarationCreate.CustomsProcedure? this.manualGoodsDeclarationCreate.CustomsProcedure.Id:undefined,\r\n this.manualGoodsDeclarationCreate.PreviousCustomsProcedure? this.manualGoodsDeclarationCreate.PreviousCustomsProcedure.Id : undefined)\r\n .get({},(result : interfaces.tariff.ICustomsProcedureMatrix) =>{\r\n if (result){\r\n if (result.TypeClassificationValueId){\r\n return this.classificationValueService.GetClassificationValueDropdownByClassification().query({\r\n classificationId: Enum.ClassificationEnum.CPCType\r\n }, (resultList : Array) => { \r\n var cpcType = resultList.find(x=>x.Id === result.TypeClassificationValueId); \r\n if (cpcType){\r\n this.manualGoodsDeclarationCreate.CPCType = cpcType;\r\n }\r\n\r\n }); \r\n }\r\n }\r\n });*/\r\n }\r\n\r\n loadProcedureCategory() {\r\n return this.customsProcedureMatrixService.getProcedureCategoryDropdownList(this.manualGoodsDeclarationCreate.Country.Id).query({\r\n }, (list: Array) => {\r\n }).$promise;\r\n }\r\n\r\n procedureCategoryChanged(model:interfaces.applicationcore.IDropdownModel) {\r\n this.manualGoodsDeclarationCreate.CustomsProcedure = undefined;\r\n this.manualGoodsDeclarationCreate.PreviousCustomsProcedure = undefined;\r\n if (model){\r\n this.manualGoodsDeclarationCreate.ProcedureCategory = model;\r\n this.loadCustomProcedureMatrix();\r\n }\r\n \r\n };\r\n\r\n loadCustomsProcedure(searchText) {\r\n if (!this.manualGoodsDeclarationCreate.ProcedureCategory) {\r\n var deferred = this.$q.defer();\r\n deferred.resolve([]);\r\n return deferred.promise;\r\n }\r\n\r\n return this.customsProcedureMatrixService.getCustomsProcedureDropdownList(this.manualGoodsDeclarationCreate.Country.Id, this.manualGoodsDeclarationCreate.ProcedureCategory.Id).query({\r\n }, (list: Array) => {\r\n }, (errorResponse) => {\r\n }).$promise;\r\n }\r\n\r\n loadPreviousCustomsProcedure() {\r\n return this.customsProcedureMatrixService.getPrevCustomsProcedureDropdownList(this.manualGoodsDeclarationCreate.Country.Id, this.manualGoodsDeclarationCreate.ProcedureCategory.Id, this.manualGoodsDeclarationCreate.CustomsProcedure.Id).query({\r\n }, (list: Array) => {\r\n }, (errorResponse) => { \r\n }).$promise;\r\n }\r\n\r\n previousCustomsProcedureChanged (model:interfaces.applicationcore.IDropdownModel) {\r\n if (model){\r\n this.manualGoodsDeclarationCreate.PreviousCustomsProcedure = model;\r\n this.loadCustomProcedureMatrix();\r\n }\r\n \r\n };\r\n\r\n customsProcedureChanged (model:interfaces.applicationcore.IDropdownModel) {\r\n if (model){\r\n this.manualGoodsDeclarationCreate.CustomsProcedure = model;\r\n this.loadCustomProcedureMatrix();\r\n }\r\n \r\n };\r\n\r\n\r\n loadCustomsOfficeOfEntry(searchText: string) {\r\n var deferred = this.$q.defer();\r\n \r\n this.customsOfficeCodeService.getForDropdown(searchText, this.manualGoodsDeclarationCreate.Country.Id).query({}, (list: Array) => {\r\n deferred.resolve(list);\r\n }, (errorResponse) => { \r\n deferred.resolve([]);\r\n });\r\n \r\n return deferred.promise;\r\n }\r\n\r\n loadDeclarantByCountry(){\r\n var deferred = this.$q.defer();\r\n\r\n this.companyService.getCustomsPartyByCountryDropdownList(this.ownerEntityId,this.manualGoodsDeclarationCreate.Country.Id, Enum.EnumCustomsPartyType.Guarantor).query({}, (list: Array) => {\r\n deferred.resolve(list);\r\n }, (errorResponse) => { \r\n deferred.resolve([]);\r\n });\r\n \r\n return deferred.promise;\r\n }\r\n\r\n loadDocumentFlowType() {\r\n var deferred = this.$q.defer();\r\n \r\n this.flowTypeService.getForDropdown(this.manualGoodsDeclarationCreate.Country.Id).query({\r\n }, (list: Array) => {\r\n \r\n deferred.resolve(list);\r\n }, (errorResponse) => { \r\n deferred.resolve([]);\r\n });\r\n \r\n return deferred.promise;\r\n } \r\n\r\n },\r\n controllerAs: \"manualDeclarationCtrl\",\r\n size: \"md\",\r\n resolve: {\r\n ownerEntityId: () => { return this.consignment.OwnerEntityId }\r\n }\r\n }).result;\r\n }\r\n\r\n\r\n viewRecon() {\r\n var selectedRow = this.apiGoodsDecList.selection.getSelectedRows()[0];\r\n if (selectedRow && selectedRow.Id > 0 && selectedRow.IsClearingInstruction) {\r\n if (selectedRow.StatusIndicator == 0) {\r\n this.generalService.displayMessage(\"No declaration has been received for the selected Clearing Instruction or the Customs Recon has not run.\", Enum.EnumMessageType.Warning);\r\n }\r\n else {\r\n this.$state.go(\"auth.ConsignmentImports.Update.CustomsRecon\", { cusId: Number(selectedRow.Id) });\r\n }\r\n }\r\n else {\r\n this.generalService.displayMessage(\"Please select a Clearing Instruction\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n //Display the Create Version\r\n displayCreateVersion(isClearing: boolean,GoodsDeclarationType:string) {\r\n var hasAccepted: boolean = false;\r\n\r\n //Check to see if the lists have any with accepted.\r\n /*if (isClearing) {\r\n //Check the Clearing Instructions List\r\n for (let clearIn of this.consignment.ConsignmentClearingInstructionList) {\r\n if (clearIn.isAccepted) {\r\n hasAccepted = true;\r\n }\r\n }\r\n\r\n } else {\r\n //Check the Goods Declaration List\r\n for (let goodsDec of this.consignment.ConsignmentGoodsDeclarationList) {\r\n if (goodsDec.isAccepted) {\r\n hasAccepted = true;\r\n }\r\n }\r\n }*/\r\n\r\n \r\n for (let goodsDec of this.consignment.ConsignmentGoodsDeclarationList) {\r\n if (goodsDec.PreventDeclarationAmendment) {\r\n this.generalService.displayMessage(\"Customs Declaration \" + goodsDec.MRNNumber+ \" is in a status that prevents Amendments being generated.\", Enum.EnumMessageType.Error);\r\n return;\r\n }\r\n }\r\n\r\n for (let goodsDec of this.consignment.ConsignmentGoodsDeclarationList) {\r\n if (goodsDec.isAccepted) {\r\n hasAccepted = true;\r\n }\r\n }\r\n\r\n //If no Accepted was found.\r\n if (!hasAccepted) {\r\n this.generate(isClearing,GoodsDeclarationType);\r\n return;\r\n }\r\n\r\n this.$uibModal.open({\r\n animation: true,\r\n template: `\r\n
\r\n
\r\n
\r\n
\r\n

Create New Version

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n `,\r\n controller: ($scope, $uibModalInstance: ng.ui.bootstrap.IModalInstanceService,\r\n ) => {\r\n $scope.reason;\r\n $scope.ok = () => {\r\n $uibModalInstance.dismiss();\r\n }\r\n\r\n $scope.updateType = (type: string) => {\r\n if (type == \"Amendment\") {\r\n this.functionType = 385;\r\n }\r\n\r\n if (type == \"Cancellation\") {\r\n this.functionType = 386;\r\n }\r\n\r\n this.generate(isClearing,GoodsDeclarationType);\r\n $uibModalInstance.dismiss();\r\n }\r\n\r\n $scope.changeReason = () => {\r\n this.reason = $scope.reason;\r\n }\r\n },\r\n controllerAs: \"createVersionCtrl\",\r\n size: \"md\",\r\n resolve: {\r\n }\r\n });\r\n }\r\n\r\n //////////////////////////////////////////////////\r\n editDetail(codId: number) {\r\n\r\n if (this.$stateParams.manId) {\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentImport.Detail\", { codId: codId });\r\n } else {\r\n this.$state.go(\"auth.Manifests.Update.ConsignmentExport.Detail\", { codId: codId });\r\n }\r\n } else {\r\n if (this.isInbound) {\r\n this.$state.go(\"auth.ConsignmentImports.Update.Detail\", { codId: codId });\r\n } else {\r\n this.$state.go(\"auth.ConsignmentExports.Update.Detail\", { codId: codId });\r\n }\r\n }\r\n }\r\n\r\n gvwDocMatrix: uiGrid.IGridOptions = {\r\n data: [],\r\n enableFiltering: false,\r\n useExternalFiltering: false,\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: true,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => { this.registerDocMatrixGridApi(gridApi); },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"ID\",\r\n cellTemplate: `\r\n
\r\n \r\n \r\n 3\">\r\n \r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n enableCellEdit: false,\r\n width: 130,\r\n enableCellEditOnFocus: false,\r\n\r\n },\r\n {\r\n name: \"DESCRIPTION\",\r\n displayName: \"* Description\",\r\n field: \"Description\",\r\n type: \"string\",\r\n cellClass: 'text-left',\r\n enableCellEdit: false, \r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n enableCellEditOnFocus: false,\r\n width: 400\r\n },\r\n \r\n /* {\r\n name: \"REPORT\",\r\n displayName: \"Document *\",\r\n field: \"Report\",\r\n type: \"string\",\r\n cellClass: 'text-left',\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 4 : true },\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableCellEditOnFocus: true,\r\n width: 300\r\n }, {\r\n name: \"DOCTYPE\",\r\n displayName: \"Document Type *\",\r\n field: \"DocType\",\r\n type: \"number\",\r\n cellClass: 'text-left',\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 4 : true },\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n \r\n
`,\r\n enableCellEditOnFocus: true,\r\n width: 200\r\n },*/ {\r\n name: \"ACTION\",\r\n displayName: \"* Action\",\r\n field: \"Action\",\r\n type: \"string\",\r\n cellClass: 'text-left',\r\n enableCellEdit: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 4 : true },\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n 3\" ui-select-wrap name=\"ReportCode-{{MODEL_COL_FIELD.$$hashKey}}\" append-to-body=\"true\" ng-model=\"MODEL_COL_FIELD\" form=\"inputForm\" load-data=\"grid.appScope.consignmentUpdateCtrl.loadActionList()\">\r\n
`,\r\n enableCellEditOnFocus: true,\r\n width: 210\r\n }, {\r\n name: \"COMPLETED\",\r\n displayName: \"Completed\",\r\n enableFiltering: false,\r\n width: 100,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 4 : true },\r\n cellTemplate: ``,\r\n editableCellTemplate: ` \r\n
\r\n

\r\n \r\n

\r\n
`\r\n }, {\r\n name: \"COMPLETEDBY\",\r\n displayName: \"Completed By\",\r\n field: \"CompletedBy\",\r\n width: 160,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`\r\n }, {\r\n name: \"COMPLETEDON\",\r\n displayName: \"Completed On\",\r\n field: \"CompletedOn\",\r\n width: 160,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n cellTemplate: `
{{MODEL_COL_FIELD | momentDateFilter: 'YYYY/MM/DD h:mm:ss a'}}
`\r\n }, {\r\n name: \"GTSCONNECT\",\r\n displayName: \"GTS Connect?\",\r\n enableFiltering: false,\r\n width: 120,\r\n field: \"GTSConnect\",\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n cellTemplate: ``,\r\n editableCellTemplate: ` \r\n
\r\n

\r\n \r\n

\r\n
`\r\n },]\r\n };\r\n\r\n getAllowGenerateReqDocsRight() {\r\n this.allowGenerateReqDocs = false;\r\n return this.menuService.getGTSConnectMenuItem(581).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.allowGenerateReqDocs = true;\r\n }\r\n\r\n if (this.consignment.LockdownType === 5){\r\n //Full lockdown then Cant Create New Version \r\n this.allowCreateNewVersion = false;\r\n }\r\n \r\n }).$promise;\r\n }\r\n\r\n getAllowCreateNewVersionExportRight() {\r\n this.allowCreateNewVersion = false;\r\n\r\n var rightId = 470;\r\n if (this.consignment.LockdownType >= 3)\r\n rightId = 513;\r\n\r\n return this.menuService.getGTSConnectMenuItem(rightId).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.allowCreateNewVersion = true;\r\n }\r\n\r\n if (this.consignment.LockdownType === 5){\r\n //Full lockdown then Cant Create New Version \r\n this.allowCreateNewVersion = false;\r\n }\r\n\r\n }).$promise;\r\n }\r\n\r\n getAllowViewRefundClaimRight() {\r\n this.allowCreateNewVersion = false;\r\n return this.menuService.getGTSConnectMenuItem(545).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.hasViewRefundClaimRights = true;\r\n }\r\n }).$promise;\r\n }\r\n\r\n getHasGenerateRemoveClearInRight(){\r\n this.hasGenerateRemoveClearInRight = false;\r\n return this.menuService.getGTSConnectMenuItem(698).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.hasGenerateRemoveClearInRight = true;\r\n }\r\n }).$promise;\r\n }\r\n\r\n getHasGenerateAndRemoveGoodsDeclarationRight(){\r\n this.hasGenerateAndRemoveGoodsDeclarationRight = false;\r\n return this.menuService.getGTSConnectMenuItem(572).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.hasGenerateAndRemoveGoodsDeclarationRight = true;\r\n }\r\n }).$promise;\r\n } \r\n\r\n getHasAddRemoveGoodsDecRight(){\r\n this.hasAddRemoveManualGoodsDecRight = false;\r\n return this.menuService.getGTSConnectMenuItem(699).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.hasAddRemoveManualGoodsDecRight = true;\r\n }\r\n }).$promise;\r\n } \r\n\r\n getAllowCreateNewVersionImportRight() {\r\n this.allowCreateNewVersion = false;\r\n\r\n var rightId = 471;\r\n if (this.consignment.LockdownType >= 3)\r\n rightId = 514;\r\n\r\n return this.menuService.getGTSConnectMenuItem(rightId).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.allowCreateNewVersion = true;\r\n }\r\n }).$promise;\r\n }\r\n\r\n getExportConsignmentResponsibleUserOverrideRight() { \r\n var rightId = 707;\r\n return this.menuService.getGTSConnectMenuItem(rightId).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.hasOverrideResponsibleUserRight = true;\r\n \r\n }\r\n }).$promise;\r\n }\r\n\r\n getImportConsignmentResponsibleUserOverrideRight() {\r\n \r\n var rightId = 708;\r\n return this.menuService.getGTSConnectMenuItem(rightId).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result && result.name) {\r\n this.hasOverrideResponsibleUserRight = true;\r\n \r\n }\r\n }).$promise;\r\n }\r\n\r\n getConsignmentNumberOverrideRight(rightId:number) { \r\n \r\n return this.menuService.getGTSConnectMenuItem(rightId).get((result: interfaces.applicationcore.IMenu) => {\r\n \r\n if (result && result.name) {\r\n this.hasOverrideConsignmentNumberRight = true;\r\n \r\n }\r\n }).$promise;\r\n }\r\n\r\n\r\n\r\n registerDocMatrixGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiConDocList = gridApi;\r\n }\r\n\r\n loadDocumentTypes() {\r\n\r\n return this.documentTypeService.getDocumentTypes().query({\r\n repTypeId: this.documentRepository.RepositoryTypeId,\r\n ownerEntityId: this.documentRepository.OwnerEntityId,\r\n referenceNumber: this.consignment.WaybillNumber\r\n }, (documentTypes: ng.resource.IResourceArray) => {\r\n this.documentTypes = documentTypes;\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n }\r\n\r\n loadActionList() {\r\n return this.classificationValueService.GetClassificationValueDropdownByClassification().query({\r\n classificationId: Enum.ClassificationEnum.DocumentActionType\r\n }, (resultList) => {\r\n this.actionList = resultList;\r\n }).$promise;\r\n }\r\n\r\n loadReportList() {\r\n return this.consignmentDocumentService.GetReportDropdownList().query({\r\n\r\n }, (resultList) => {\r\n this.reportList = resultList;\r\n }).$promise;\r\n }\r\n\r\n DocMatrixAdd_click(){\r\n\r\n this.displayAddDocMatrixActionManual().then((result:interfaces.logistics.IConsignmentDocument) => {\r\n if (result) {\r\n \r\n \r\n (>(this.gvwDocMatrix.data)).splice(0, 0, result);\r\n\r\n this.$timeout(() => {\r\n if (this.apiConDocList) {\r\n this.apiConDocList.rowEdit.setRowsDirty([result]);\r\n this.apiConDocList.core.notifyDataChange(this.uiGridConstants.dataChange.ALL);\r\n }\r\n });\r\n\r\n \r\n }\r\n });\r\n\r\n\r\n }\r\n\r\n displayAddDocMatrixActionManual() {\r\n return this.$uibModal.open({\r\n animation: true,\r\n template: `\r\n
\r\n
\r\n
\r\n
\r\n \r\n Consignment Documents - Add Action\r\n \r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n `\r\n ,\r\n controller: ($scope, $uibModalInstance: angular.ui.bootstrap.IModalInstanceService) => {\r\n\r\n $scope.actionText = undefined;\r\n\r\n $scope.actionChange = (model:interfaces.applicationcore.IDropdownModel) =>{\r\n\r\n $scope.Action = model;\r\n if ($scope.Action.Id === 488){\r\n $scope.Report = undefined;\r\n $scope.Document = undefined;\r\n }\r\n else{\r\n $scope.actionText = undefined;\r\n }\r\n\r\n switch($scope.Action.Id) { \r\n case 488: { \r\n $scope.Report = undefined;\r\n $scope.Document = undefined;\r\n break; \r\n } \r\n case 485: { \r\n $scope.Document = undefined;\r\n $scope.actionText = undefined;\r\n break; \r\n } \r\n case 486: { \r\n $scope.Report = undefined;\r\n $scope.actionText = undefined;\r\n break; \r\n } \r\n case 487: { \r\n $scope.actionText = undefined;\r\n break; \r\n } \r\n default: { \r\n //statements; \r\n break; \r\n } \r\n } \r\n }\r\n\r\n $scope.actionTextChanged = (model:string) =>{\r\n $scope.actionText = model;\r\n }\r\n\r\n $scope.reportChange = (model:interfaces.applicationcore.IDropdownModel) =>{\r\n $scope.Report = model;\r\n this.reportService.GetDocumentFromReport($scope.Report.Id).get((data: interfaces.applicationcore.IDropdownModel) => {\r\n if (data.Id>0){\r\n $scope.Document = data;\r\n }\r\n else\r\n {\r\n $scope.Document = undefined;\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n })\r\n }\r\n\r\n\r\n $scope.docChange = (model:interfaces.applicationcore.IDropdownModel) =>{\r\n $scope.Document = model;\r\n } \r\n\r\n $scope.cancel = () => {\r\n $uibModalInstance.dismiss();\r\n }\r\n\r\n $scope.ok = () => {\r\n var actionText = '';\r\n switch($scope.Action.Id) { \r\n case 488: { \r\n actionText = $scope.actionText;\r\n break; \r\n } \r\n case 485: { \r\n actionText = $scope.Report.Display;\r\n break; \r\n } \r\n case 486: { \r\n actionText = $scope.Document.Display; \r\n break; \r\n } \r\n case 487: { \r\n actionText = $scope.Document.Display; \r\n break; \r\n } \r\n default: { \r\n //statements; \r\n break; \r\n } \r\n } \r\n\r\n var consignmentDoc = {\r\n Action: $scope.Action,\r\n Description : actionText,\r\n Report : $scope.Report,\r\n DocType : $scope.Document, \r\n GTSConnect: $scope.showInGTSConnect,\r\n Notes: ''\r\n };\r\n\r\n $uibModalInstance.close(consignmentDoc);\r\n };\r\n\r\n $scope.loadDocumentTypes = () => {\r\n\r\n return this.documentTypeService.getDocumentTypes().query({\r\n repTypeId: this.documentRepository.RepositoryTypeId,\r\n ownerEntityId: this.documentRepository.OwnerEntityId,\r\n referenceNumber: this.consignment.WaybillNumber\r\n }, (documentTypes: ng.resource.IResourceArray) => {\r\n this.documentTypes = documentTypes;\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n }\r\n \r\n $scope.loadActionList = () => {\r\n return this.classificationValueService.GetClassificationValueDropdownByClassification().query({\r\n classificationId: Enum.ClassificationEnum.DocumentActionType\r\n }, (resultList) => {\r\n $scope.actions = resultList.filter((value)=>{return value.Id===485 || value.Id==486 || value.Id==487 || value.Id === 488});\r\n }).$promise;\r\n }\r\n \r\n $scope.loadReportList = () => {\r\n return this.consignmentDocumentService.GetReportDropdownList().query({\r\n \r\n }, (resultList) => {\r\n this.reportList = resultList;\r\n }).$promise;\r\n } \r\n\r\n $scope.loadActionList();\r\n\r\n },\r\n controllerAs: \"conDocMatrixAddManualCtrl\",\r\n size: \"md\",\r\n resolve: {\r\n\r\n }\r\n }).result;\r\n }\r\n\r\n DocMatrixAddDefault_click() {\r\n this.generalService.displayConfirmationBox(\"Confirm?\", \"Any existing records will be deleted, do you want to continue?\").then((result: boolean) => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n if (result) {\r\n return this.ConsignmentDocumentAddDefault();\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n ConsignmentDocumentAddDefault() {\r\n var conId = this.consignment.Id;\r\n\r\n return this.consignmentDocumentService.AddDefaultDocuments().save(\r\n { conId },\r\n () => {\r\n //Result\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n DocMatrxGenerateRequiredDocs_click() {\r\n this.generalService.displayConfirmationBox(\"Confirm?\", \"Generate Documents for Consignment?\").then((result: boolean) => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n if (result) {\r\n return this.SaveConsignment().then(() => {\r\n return this.ConsignmentDocumentGenerateDocs();\r\n }, () => {\r\n return;\r\n });\r\n }\r\n });\r\n });\r\n });\r\n }\r\n\r\n ConsignmentDocumentGenerateDocs() {\r\n var conId = this.consignment.Id;\r\n\r\n return this.consignmentDocumentService.GenerateRequiredDocuments().save(\r\n { conId },\r\n () => {\r\n //Result\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n addInlineDocMatrixDoc() {\r\n /*this.consignment.ConsignmentDocumentList.push({\r\n Id: 0,\r\n Notes: \"\",\r\n ConsignmentMaintenanceUrl:\"\"\r\n });*/\r\n\r\n var doc = {\r\n Id: 0,\r\n Notes: \"\",\r\n ConsignmentMaintenanceUrl: \"\"\r\n };\r\n \r\n (>(this.gvwDocMatrix.data)).splice(0, 0, doc);\r\n }\r\n\r\n showDocMatrixNotes(entity: interfaces.logistics.IConsignmentDocument) {\r\n\r\n this.displayNotes(entity.Notes).then((result) => {\r\n //if (result) {\r\n\r\n entity.Notes = result;\r\n this.apiConDocList.rowEdit.setRowsDirty([entity]);\r\n // }\r\n });\r\n\r\n\r\n }\r\n\r\n docMatrixCompleteChanged(row: uiGrid.IGridRow) {\r\n if (row.entity.Completed) {\r\n row.entity.CompletedBy = this.$rootScope.userFullName;\r\n row.entity.CompletedOn = moment().parseZone();// moment().toDate();\r\n }\r\n else {\r\n row.entity.CompletedBy = null\r\n row.entity.CompletedOn = null;\r\n }\r\n\r\n this.apiConDocList.rowEdit.setRowsDirty([row.entity]);\r\n }\r\n\r\n removeInlineDocMatrixDoc(entity: interfaces.logistics.IConsignmentDocument) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentDocumentService.delete().delete({ dmcId: entity.Id }, (result) => {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n\r\n _.remove(this.gvwDocMatrix.data, (o) => {\r\n return o === entity;\r\n });\r\n }\r\n\r\n displayNotes(Notes: string) {\r\n //Get delivery status\r\n return this.$uibModal.open({\r\n animation: true,\r\n template: `\r\n
\r\n
\r\n
\r\n
\r\n \r\n Consignment Document Notes\r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n `\r\n ,\r\n controller: ($scope, $uibModalInstance: angular.ui.bootstrap.IModalInstanceService) => {\r\n $scope.Notes = Notes;\r\n $scope.cancel = () => {\r\n $uibModalInstance.dismiss();\r\n }\r\n\r\n $scope.ok = () => {\r\n $uibModalInstance.close($scope.Notes);\r\n };\r\n },\r\n controllerAs: \"conDocumentNotesCtrl\",\r\n size: \"md\",\r\n resolve: {\r\n\r\n }\r\n }).result;\r\n }\r\n\r\n createNewVersion_Click() {\r\n this.generalService.displayConfirmationBox(\"Confirm?\", \"Create new version?\").then((result: boolean) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.createNewVersion(this.consignment.Id);\r\n });\r\n }\r\n });\r\n }\r\n\r\n downloadToExcel() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n },\r\n () => {\r\n this.consignmentService.GetConsignmentsPRListExcel(this.consignment.Id, this.showOnlyProhibited).then(() => {\r\n }, (data) => {\r\n this.generalService.displayMessageHandler(data.data);\r\n });\r\n });\r\n }\r\n\r\n showOnlyPRProhibited() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.consignmentService.ViewDetailPR().query({\r\n conId: this.consignment.Id,\r\n showOnlyProhibited: this.showOnlyProhibited,\r\n }, (result: Array) => {\r\n\r\n this.consignment.ConsignmentPRList = result;\r\n this.gvwPRList.data = result;\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n\r\n //////////////////////////////////////////////\r\n //P&R List.\r\n gvwPRList: uiGrid.IGridOptions | any = {\r\n data: [],\r\n enableCellEdit: false,\r\n useExternalSorting: false,\r\n multiSelect: false,\r\n enableColumnResizing: true,\r\n enableFullRowSelection: true,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n enableVerticalScrollbar: 1,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: true,\r\n showGridFooter: false,\r\n //Pagination\r\n paginationPageSizes: [25, 50, 75, 100],\r\n paginationPageSize: 25,\r\n useExternalPagination: false,\r\n //Menu + Download\r\n enableGridMenu: false,\r\n exporterMenuCsv: false,\r\n exporterMenuPdf: false,\r\n exporterMenuExcel: false,\r\n gridMenuShowHideColumns: false,\r\n exporterFieldCallback: (grid, row, col, value) => {\r\n return this.generalService.handleValue(value);\r\n },\r\n //Filters\r\n enableFiltering: true,\r\n useExternalFiltering: false,\r\n onRegisterApi: (gridApi) => { this.registerPRGridApi(gridApi) },\r\n columnDefs: [\r\n {\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"\",\r\n width: 20,\r\n enableFiltering: false,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n },{\r\n name: \"ProductCode\",\r\n displayName: \"Product Code\",\r\n field: \"ProductCode\",\r\n width: 100,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"ProductDescription\",\r\n displayName: \"Description\",\r\n field: \"ProductDescription\",\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n width: 210,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"CountryCode\",\r\n displayName: \"Country\",\r\n field: \"CountryCode\",\r\n width: 73,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"Flow\",\r\n displayName: \"Flow\",\r\n field: \"Flow\",\r\n width: 60,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"Restriction\",\r\n displayName: \"Restriction\",\r\n field: \"Restriction\",\r\n width: 220,\r\n cellTemplate: ``,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return (searchTerm.length === 0 || cellValue.Code.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || cellValue.Description.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0);\r\n }\r\n },\r\n }, {\r\n name: \"IsProhibited\",\r\n displayName: \"Prohibited\",\r\n field: \"IsProhibited\",\r\n width: 84,\r\n cellTemplate: ``,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`\r\n }, {\r\n name: \"IsException\",\r\n displayName: \"Is Exception\",\r\n field: \"IsException\",\r\n width: 91,\r\n cellTemplate: ``,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n editableCellTemplate:\r\n `
\r\n

\r\n \r\n

\r\n
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`\r\n }, {\r\n name: \"Permit\",\r\n displayName: \"Permit\",\r\n field: \"Permit\",\r\n width: 160,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Display}}
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
\r\n `,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n if (cellValue){\r\n if (cellValue.Description) {\r\n return (searchTerm.length === 0 || cellValue.Display.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || cellValue.Description.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0);\r\n } else {\r\n return (searchTerm.length === 0 || cellValue.Display.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0);\r\n }\r\n }\r\n }\r\n },\r\n },{\r\n name: \"PermitDisplay\",\r\n displayName: \"\",\r\n field: \"Permit\",\r\n width: 50,\r\n enableFiltering: false,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n cellTemplate: ``,\r\n },{\r\n name: \"IsQuota\",\r\n displayName: \"Quota\",\r\n field: \"IsQuota\",\r\n width: 58,\r\n cellTemplate: ``,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`\r\n }, {\r\n name: \"IsQuotaAllocated\",\r\n displayName: \"Quota Allocated\",\r\n field: \"IsQuotaAllocated\",\r\n width: 150,\r\n cellTemplate: ``,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`\r\n }, {\r\n name: \"QuotaRequiredValue\",\r\n displayName: \"Quota Value\",\r\n field: \"QuotaRequiredValue\",\r\n width: 150,\r\n cellFilter: \"number: 2\",\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"QuotaAllocatedValue\",\r\n displayName: \"Allocated Value\",\r\n field: \"QuotaAllocatedValue\",\r\n width: 150,\r\n cellFilter: \"number: 2\",\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n }, {\r\n name: \"QuotaCurrency\",\r\n displayName: \"Currency\",\r\n field: \"QuotaCurrency\",\r\n width: 75,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"QuotaRequiredAmount\",\r\n displayName: \"Quota Amount\",\r\n field: \"QuotaRequiredAmount\",\r\n width: 150,\r\n cellFilter: \"number: 2\",\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"QuotaAllocatedAmount\",\r\n displayName: \"Allocated Amount\",\r\n field: \"QuotaAllocatedAmount\",\r\n width: 150,\r\n cellFilter: \"number: 2\",\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: () => { return this.consignment ? this.consignment.LockdownType < 3 : true },\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n editableCellTemplate: `\r\n
\r\n

\r\n \r\n

\r\n
`,\r\n }, {\r\n name: \"QuotaUnitOfMeasure\",\r\n displayName: \"UoM\",\r\n field: \"QuotaUnitOfMeasure\",\r\n width: 58,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n },{\r\n name: \"TariffCode\",\r\n displayName: \"Tariff Code\",\r\n field: \"TariffCode\",\r\n width: 110,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }, {\r\n name: \"Comments\",\r\n displayName: \"Comments\",\r\n field: \"Comments\",\r\n width: 125,\r\n cellTemplate: `
{{MODEL_COL_FIELD}}
`,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`,\r\n }]\r\n };\r\n\r\n registerPRGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiPRList = gridApi;\r\n\r\n this.apiPRList.pagination.on.paginationChanged(this.$scope, (newPage, pageSize) => { this.PRListPageChange(newPage, pageSize) });\r\n\r\n this.apiPRList.cellNav.on.navigate(this.$scope, (newCol) => {\r\n this.$timeout(() => {\r\n this.apiPRList.selection.selectRow(newCol.row.entity);\r\n });\r\n });\r\n }\r\n\r\n PRListPageChange(newPage, pageSize) {\r\n this.paginationPROptions.pageNumber = newPage;\r\n this.paginationPROptions.pageSize = pageSize;\r\n }\r\n\r\n loadPermits(row: uiGrid.IGridRow, searchText: string) {\r\n return this.consignmentService.GetPermitsForDropdown().query({\r\n consignmentRestrictionId: row.entity.Id,\r\n searchText: searchText\r\n }, () => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n permitExceptionChanged(row: uiGrid.IGridRow) {\r\n this.apiPRList.rowEdit.setRowsDirty([row.entity]);\r\n }\r\n\r\n permitCodeChange(row: uiGrid.IGridRow) {\r\n this.apiPRList.rowEdit.setRowsDirty([row.entity]);\r\n row.entity.Permit.Id = null;\r\n row.entity.Permit.Description = row.entity.Permit.Display;\r\n }\r\n\r\n permitCodeDropdownChange(row: uiGrid.IGridRow) {\r\n this.apiPRList.rowEdit.setRowsDirty([row.entity]);\r\n }\r\n\r\n\r\n checkPR() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then(() => {\r\n this.consignmentService.CheckForPR(this.consignment.Id, this.consignment.IsInbound).save((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$anchorScroll(\"topAnchor\");\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n }).$promise;\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n\r\n addPermit() {\r\n if (this.apiPRList && this.apiPRList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected: interfaces.consignment.IConsignmentPRDisplay = this.apiPRList.selection.getSelectedRows()[0];\r\n\r\n if (selected.Restriction === null) {\r\n this.generalService.displayMessage(\"Only P&R Lines linked to restrictions can be split.\", Enum.EnumMessageType.Warning);\r\n } else {\r\n \r\n\r\n var newPR = {\r\n Id: selected.Id,\r\n ProductCode: selected.ProductCode,\r\n ProductDescription: selected.ProductDescription,\r\n CountryCode: selected.CountryCode,\r\n Flow: selected.Flow,\r\n TariffCode: selected.TariffCode,\r\n Restriction: selected.Restriction,\r\n RestrictionQuotaTypeId: selected.RestrictionQuotaTypeId,\r\n RestrictionQuotaTypeDesc: selected.RestrictionQuotaTypeDesc,\r\n IsProhibited: true,\r\n IsException: false,\r\n IsQuotaAllocated: false,\r\n\r\n QuotaRequiredValue: selected.QuotaRequiredValue,\r\n QuotaCurrency: selected.QuotaCurrency,\r\n QuotaRequiredAmount: selected.QuotaRequiredAmount,\r\n QuotaUnitOfMeasure: selected.QuotaUnitOfMeasure,\r\n\r\n Comments: selected.Comments,\r\n\r\n RestrictionPermitId: 0,\r\n Permit: null,\r\n IsQuota: selected.IsQuota,\r\n QuotaAllocatedValue: 0,\r\n QuotaAllocatedAmount: 0,\r\n RestrictionPermitActive: true\r\n };\r\n\r\n (>(this.gvwPRList.data)).splice(0, 0, newPR);\r\n }\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a P&R Line\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n removePermit() {\r\n if (this.apiPRList && this.apiPRList.selection.getSelectedRows().length > 0) {\r\n\r\n var selected: interfaces.consignment.IConsignmentPRDisplay = this.apiPRList.selection.getSelectedRows()[0];\r\n selected.RestrictionPermitActive = false;\r\n this.apiPRList.rowEdit.setRowsDirty([selected]);\r\n\r\n this.Save();\r\n\r\n } else {\r\n this.generalService.displayMessage(\"Please select a P&R Line\", Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n runQuotaAllocation() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then(() => {\r\n this.consignmentService.RunQuotaAllocation(this.consignment.Id).save({\r\n conId: this.consignment.Id,\r\n }, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$anchorScroll(\"topAnchor\");\r\n\r\n //if (!result.HasErrorMessage) { //this check has been removed as we always need to refresh the P&R grid after quota allocation\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n //}\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n\r\n changeLoadingLocationDescription() {\r\n return this.$uibModal.open({\r\n animation: true,\r\n size: \"md\",\r\n template: `\r\n
\r\n

Edit Loading Location Description

\r\n
\r\n
\r\n

\r\n Change Loading Location Description below:\r\n

\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
`,\r\n controller: class loadingLocationCtrl {\r\n loadingLocationDescription: string;\r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, loadingLocationDescription: string) {\r\n this.loadingLocationDescription = loadingLocationDescription;\r\n }\r\n\r\n ok() {\r\n this.$uibModalInstance.close(this.loadingLocationDescription);\r\n }\r\n\r\n cancel() {\r\n this.$uibModalInstance.dismiss();\r\n }\r\n },\r\n controllerAs: \"loadingLocationCtrl\",\r\n resolve: {\r\n loadingLocationDescription: () => { return this.consignment.LoadingLocation.Description; }\r\n }\r\n }).result.then((loadingLocationDescription) => {\r\n this.consignment.LoadingLocation.Description = loadingLocationDescription;\r\n this.consignment.LoadingLocation.Display = this.consignment.LoadingLocation.Code + \" - \" + this.consignment.LoadingLocation.Description;\r\n });\r\n }\r\n\r\n changeUnloadingLocationDescription() {\r\n return this.$uibModal.open({\r\n animation: true,\r\n size: \"md\",\r\n template: `\r\n
\r\n

Edit Unloading Location Description

\r\n
\r\n
\r\n

\r\n Change Unloading Location Description below:\r\n

\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
`,\r\n controller: class unloadingLocationCtrl {\r\n unloadingLocationDescription: string;\r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, unloadingLocationDescription: string) {\r\n this.unloadingLocationDescription = unloadingLocationDescription;\r\n }\r\n\r\n ok() {\r\n this.$uibModalInstance.close(this.unloadingLocationDescription);\r\n }\r\n\r\n cancel() {\r\n this.$uibModalInstance.dismiss();\r\n }\r\n },\r\n controllerAs: \"unloadingLocationCtrl\",\r\n resolve: {\r\n unloadingLocationDescription: () => { return this.consignment.UnloadingLocation.Description; }\r\n }\r\n }).result.then((unloadingLocationDescription) => {\r\n this.consignment.UnloadingLocation.Description = unloadingLocationDescription;\r\n this.consignment.UnloadingLocation.Display = this.consignment.UnloadingLocation.Code + \" - \" + this.consignment.UnloadingLocation.Description;\r\n });\r\n }\r\n //////////////////////////////////////////////\r\n\r\n createNewVersion(id: number) {\r\n return this.consignmentService.CreateNewVersion(id).save(\r\n (data: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(data);\r\n\r\n if (!data.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n generateUCR(ucrType: number) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then(() => {\r\n this.consignmentService.GenerateUCR(this.consignment.Id, ucrType).save({\r\n }, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.$anchorScroll(\"topAnchor\");\r\n\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n }\r\n\r\n Save() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n if (!result.HasErrorMessage) {\r\n this.$timeout(() => {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n });\r\n }\r\n });\r\n });\r\n }\r\n\r\n \r\n ViewOrder(orderId:number){\r\n var url = \"\";\r\n if (this.isInbound){\r\n url = '#!/PurchaseOrders/Update/'+orderId;\r\n }\r\n else{ \r\n url = '#!/SalesOrders/SalesOrders/Update/'+orderId;\r\n }\r\n\r\n window.open(url, '_blank');\r\n }\r\n\r\n SaveClose() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveConsignment().then(() => {\r\n this.Close();\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n });\r\n }\r\n\r\n Close() {\r\n this.$state.go(\"^\");\r\n }\r\n\r\n GetExportConsignmentXML() {\r\n this.generalService.displayYesNoConfirmation(\"Confirm\", \"Embed Document Repository files within the XML? This may result in a large download.\").then((embedDocs) => {\r\n this.consignmentService.GetExportConsignmentXML(this.consignment.WaybillNumber, this.consignment.Id,embedDocs);\r\n }, () => {\r\n\r\n });\r\n }\r\n\r\n GetPOWizardDetailExcel(){\r\n this.consignmentService.GetPOWizardDetailExcel(this.consignment.WaybillNumber, this.consignment.Id);\r\n }\r\n\r\n ConsignmentNumberOverride(){\r\n this.$uibModal.open({\r\n animation: true,\r\n size: \"md\",\r\n template: `\r\n
\r\n

Override Consignment Number

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\t\t\t\t
\r\n\t\t\t\t\t
\r\n \r\n\t\t\t\t\t\t \r\n\t\t\t\t\t
\r\n\t\t\t\t\t
\r\n \r\n

\r\n \r\n

\r\n \r\n\t\t\t\t\t
\r\n\t\t\t\t
\r\n\t\t\t
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n `,\r\n controller: class ConsignmentNumberOverrideCtrl {\r\n\r\n messages: interfaces.applicationcore.IMessage[] = [];\r\n disableSubmit: boolean = false;\r\n consignmentNumber:string;\r\n \r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService,\r\n private consignmentService: interfaces.consignment.IConsignmentService,\r\n public generalService: interfaces.applicationcore.IGeneralService,\r\n private $rootScope: interfaces.applicationcore.IRootScope,\r\n private $state: ng.ui.IStateService,\r\n public bsLoadingOverlayService,\r\n public ENV: interfaces.applicationcore.serverConfig,\r\n private conId : number,\r\n private entityId: number\r\n ) {\r\n\r\n \r\n }\r\n \r\n ConsignmentNumberOverride(){\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.overridenumber'\r\n },\r\n () => {\r\n\r\n\r\n return this.consignmentService.overrideConsignmentNumber(this.conId, this.consignmentNumber).save({\r\n }, (result : interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result); \r\n if (!result.HasErrorMessage) {\r\n this.disableSubmit = false;\r\n this.$uibModalInstance.close(true);\r\n }\r\n \r\n \r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n \r\n });\r\n\r\n \r\n\r\n }\r\n \r\n );\r\n \r\n }\r\n\r\n cancel() {\r\n this.$uibModalInstance.close(false);\r\n }\r\n \r\n \r\n },\r\n controllerAs: \"ConsignmentNumberOverrideCtrl\",\r\n resolve: { conId : this.consignmentID, entityId : this.consignment.OwnerEntityId\r\n }\r\n }).result.then((result) => {\r\n if (result) {\r\n this.loadConsignment();\r\n }\r\n });\r\n }\r\n\r\n UploadFromExcel(){\r\n this.$uibModal.open({\r\n animation: true,\r\n size: \"md\",\r\n template: `\r\n
\r\n

Upload PO Wizard from Excel

\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n\t\t\t\t
\r\n
\r\n \r\n
\r\n\t\t\t\t
\r\n\t\t\t
\r\n\r\n
\r\n
\r\n
\r\n \r\n {{uploadExcelCtrl.repositoryFile.filename}}\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n `,\r\n controller: class uploadExcelCtrl {\r\n\r\n messages: interfaces.applicationcore.IMessage[];\r\n\r\n\r\n disableSubmit: boolean = false;\r\n repositoryFile: interfaces.applicationcore.IRepositoryFile;\r\n\r\n poWizardExcelData: interfaces.consignment.IPOWizardExcelData;\r\n\r\n varianceAuthUser: interfaces.applicationcore.IDropdownModel;\r\n varianceAuthUserId: number = 0; //by default not authorized for variance\r\n\r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService,\r\n private countryService: interfaces.applicationcore.ICountryService,\r\n private entityService: interfaces.applicationcore.IEntityService,\r\n public consignmentService: interfaces.consignment.IConsignmentService,\r\n public generalService: interfaces.applicationcore.IGeneralService,\r\n private $rootScope: interfaces.applicationcore.IRootScope,\r\n private $state: ng.ui.IStateService,\r\n private refundClaimTypeService: interfaces.tariff.IRefundClaimTypeService,\r\n public bsLoadingOverlayService,\r\n public commercialInvoiceSkuService: interfaces.logistics.ICommercialInvoiceSkuService,\r\n private $uibModal: ng.ui.bootstrap.IModalService,\r\n private consignmentId : number\r\n ) {\r\n \r\n }\r\n\r\n varianceAuthorisation_Click() {\r\n\r\n this.displayVarianceAuthorisation().then((result) => {\r\n if (result) {\r\n this.varianceAuthUser = result;\r\n this.commercialInvoiceSkuService.ValidateUser().save((this.varianceAuthUser), (result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n \r\n this.varianceAuthUserId = this.varianceAuthUser.Id;\r\n \r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n }\r\n });\r\n \r\n }\r\n \r\n \r\n displayVarianceAuthorisation() {\r\n //Get delivery status\r\n return this.$uibModal.open({\r\n animation: true,\r\n template: `\r\n
\r\n
\r\n
\r\n
\r\n \r\n Commercial Invoice Variance Authorisation\r\n \r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n

\r\n \r\n

\r\n
\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n `\r\n ,\r\n controller: class varianceAuthorisationCtrl {\r\n user: interfaces.applicationcore.IDropdownModel;\r\n password: string;\r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, private commercialInvoiceSkuService: interfaces.logistics.ICommercialInvoiceSkuService) {\r\n \r\n }\r\n \r\n cancel() {\r\n this.$uibModalInstance.dismiss();\r\n }\r\n \r\n ok() {\r\n this.user.Code = this.password;\r\n this.$uibModalInstance.close(this.user);\r\n }\r\n \r\n \r\n \r\n //Load Container ISO.\r\n loadUserList() {\r\n return this.commercialInvoiceSkuService.getUserAuthorisationDropdownList().query(\r\n () => {\r\n \r\n }, (failureData) => {\r\n }).$promise;\r\n }\r\n },\r\n controllerAs: \"varianceAuthorisationCtrl\",\r\n size: \"md\",\r\n resolve: {\r\n }\r\n }).result;\r\n }\r\n\r\n \r\n\r\n cancel() {\r\n this.$uibModalInstance.close(false);\r\n }\r\n\r\n upload() {\r\n this.disableSubmit = true;\r\n this.poWizardExcelData = {\r\n consignmentId: this.consignmentId,\r\n authorizeVarianceUserId:this.varianceAuthUserId,\r\n repositoryFile:this.repositoryFile\r\n };\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'cominv.excelupload'\r\n },\r\n () => {\r\n\r\n this.consignmentService.UploadPOWizardFromExcel().save(this.poWizardExcelData, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.disableSubmit = false;\r\n if (!result.HasErrorMessage) {\r\n this.$uibModalInstance.close(true);\r\n }\r\n\r\n //this.$uibModalInstance.close(true);\r\n }, (errorResult) => {\r\n this.generalService.displayMessageHandler(errorResult.data);\r\n\r\n if (errorResult.data.Messages) {\r\n this.messages = [];\r\n }\r\n\r\n angular.forEach(errorResult.data.Messages, (o) => {\r\n angular.forEach(o.MessageItems, (n) => {\r\n this.messages.push(n);\r\n });\r\n });\r\n }).$promise;\r\n\r\n });\r\n }\r\n },\r\n controllerAs: \"uploadExcelCtrl\",\r\n resolve: { consignmentId : this.consignmentID\r\n }\r\n }).result.then((result) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.loadConsignment();\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n angular.module(\"app\").controller(\"consignmentUpdateCtrl\", controllers.consigment.ConsignmentExportUpdateCtrl);\r\n }\r\n}"]}