{"version":3,"file":"deliveryInstructionUpdateCtrl.js","sourceRoot":"","sources":["../../../../src/modules/controllers/purchase/deliveryInstructionUpdateCtrl.ts"],"names":[],"mappings":"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","sourcesContent":["module controllers {\r\n export module purchase {\r\n interface IDeliveryInstructionUpdateScope extends ng.IScope {\r\n diUpdateCtrl: controllers.purchase.PurchaseOrderUpdateCtrl\r\n }\r\n\r\n interface IDeliveryInstructionUpdateParams extends ng.ui.IStateParamsService {\r\n diId: number;\r\n poId: number;\r\n }\r\n\r\n export class deliveryInstructionUpdateCtrl {\r\n static $inject = [\"$scope\", '$rootScope', 'generalService', '$q', '$stateParams', \"$anchorScroll\", \"$state\", \"deliveryInstructionService\", \"routeCodeService\",\r\n \"transportModeService\", \"unLocationCodeService\", \"countryService\", \"warehouseService\", \"cartageContractorService\", \"notifyPartyService\", \"shippingPriorityService\",\r\n \"routeLeadTimesService\", \"bsLoadingOverlayService\", \"documentRepositoryService\", \"$uibModal\", \"sundryItemService\", \"currencyService\",\r\n \"deliveryInstructionSundryItemService\", \"calendarPeriodService\", \"$transitions\", \"$interval\", \"typeOfPackageService\", 'permitService', 'transportTypeService','$timeout','purchaseOrderService',\r\n \"customAttributeService\", \"customAttributeAnswerOptionService\",\"shipperService\"];\r\n\r\n breadCrumbDesc: string;\r\n selectedTab: number;\r\n\r\n showOnlyProhibited: boolean = false;\r\n deliveryInstruction: interfaces.purchase.IDeliveryInstruction;\r\n\r\n destinationCountryList: Array;\r\n placeOfUnloadingList: Array;\r\n deliverToWarehouseList: Array;\r\n\r\n routeLeadTimes: interfaces.master.IRouteLeadTimes;\r\n\r\n dateFormat: string = \"YYYY/MM/DD\";\r\n\r\n documentRepository: interfaces.documentManagement.IDocumentRepository;\r\n\r\n apiDIS: uiGrid.IGridApi;\r\n apiDISundry: uiGrid.IGridApi;\r\n\r\n costingSKUs: Array = [];\r\n\r\n notBeforeMin: moment.Moment = undefined;\r\n\r\n IsDisabled: boolean = false;\r\n\r\n showAll: boolean = false;\r\n\r\n //Attribute Grid\r\n apiCA: uiGrid.IGridApi;\r\n attributeList: interfaces.master.ICustomAttribute[] = [];\r\n attributeAnswerOptionList: interfaces.applicationcore.IDropdownModel[] = [];\r\n\r\n constructor(public $scope: IDeliveryInstructionUpdateScope, private $rootScope: interfaces.applicationcore.IRootScope,\r\n public generalService: interfaces.applicationcore.IGeneralService, public $q: ng.IQService,\r\n public $stateParams: IDeliveryInstructionUpdateParams, public $anchorScroll: ng.IAnchorScrollService,\r\n public $state: ng.ui.IStateService, public deliveryInstructionService: interfaces.purchase.IDeliveryInstructionService,\r\n public routeCodeService: interfaces.master.IRouteCodeService, public transportModeService: interfaces.applicationcore.ITransportModeService,\r\n public unLocationCodeService: interfaces.applicationcore.IUNLocationCodeService, public countryService: interfaces.applicationcore.ICountryService,\r\n public warehouseService: interfaces.master.IWarehouseService, public cartageContractorService: interfaces.master.ICartageContractorService,\r\n public notifyPartyService: interfaces.master.INotifyPartyService, public shippingPriorityService: interfaces.master.IShippingPriorityService,\r\n public routeLeadTimesService: interfaces.master.IRouteLeadTimesService, public bsLoadingOverlayService,\r\n public documentRepositoryService: interfaces.documentManagement.IDocumentRepositoryService, public $uibModal: angular.ui.bootstrap.IModalService,\r\n public sundryItemService: interfaces.master.ISundryItemService, public currencyService: interfaces.applicationcore.ICurrencyService,\r\n public deliveryInstructionSundryItemService: interfaces.purchase.IDeliveryInstructionSundryItemService,\r\n public calendarPeriodService: interfaces.master.ICalendarPeriodService, $transitions: ng.ui.core.ITransition,\r\n public $interval: ng.IIntervalService, public typeOfPackageService: interfaces.master.ITypeOfPackageService,\r\n private permitService: interfaces.master.IPermitService,\r\n private transportTypeService: interfaces.master.ITransportTypeService,\r\n public $timeout: ng.ITimeoutService,private purchaseOrderService: interfaces.purchase.IPurchaseOrderService,\r\n public customAttributeService: services.master.customAttributeService,\r\n public customAttributeAnswerOptionService: services.master.customAttributeAnswerOptionService,\r\n private shipperService: interfaces.master.IShipperService,) {\r\n\r\n bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.loadDI().then(() => {\r\n\r\n bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.loadLeadTimes(this.deliveryInstruction.Route, this.deliveryInstruction.ShippingPriority);\r\n });\r\n this.breadCrumbDesc = this.deliveryInstruction.Code;\r\n });\r\n });\r\n\r\n //Reloads DI after add/edit of sundry item\r\n $transitions.onSuccess({\r\n to: 'auth.PurchaseOrders.Update.Di',\r\n from: 'auth.PurchaseOrders.Update.Di.**'\r\n }, () => {\r\n this.loadDI();\r\n });\r\n }\r\n\r\n public loadDI() {\r\n var defer = this.$q.defer();\r\n\r\n this.deliveryInstructionService.getDetail().query({ Id: this.$stateParams.diId, ordId: this.$stateParams.poId }, (data: interfaces.purchase.IDeliveryInstruction) => {\r\n this.deliveryInstruction = data;\r\n if (!this.deliveryInstruction.NotAfterDate && this.deliveryInstruction.NotBeforeDate)\r\n {\r\n this.deliveryInstruction.NotAfterDate = this.deliveryInstruction.NotBeforeDate.clone();\r\n this.deliveryInstruction.NotAfterDate.add(3, 'day');\r\n }\r\n\r\n this.gvwDIS.data = data.DeliveryInstructionSKUAllocations;\r\n this.gvwDISundry.data = data.DeliveryInstructionSundryItems;\r\n this.gvwPRList.data = data.DeliveryInstructionPRList;\r\n this.gvwDeliveryInstructionAttribute.data = data.DeliveryInstructionAttributeList;\r\n\r\n this.getDocuments(this.showAll).then(() => {\r\n defer.resolve();\r\n });\r\n }, (reponseError) => {\r\n this.generalService.displayMessageHandler(reponseError.data);\r\n defer.reject();\r\n });\r\n\r\n return defer.promise;\r\n }\r\n\r\n public loadRouteCodes() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.deliveryInstruction) {\r\n this.routeCodeService.getDropdownListByCountry(this.deliveryInstruction.OwnerEntityId, true, this.deliveryInstruction.LoadingCountryId).query((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\r\n return defer.promise;\r\n }\r\n\r\n public loadTransportModes() {\r\n var defer = this.$q.defer();\r\n\r\n this.transportModeService.getDropdownList().query({}, (data) => {\r\n defer.resolve(data);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n defer.resolve([]);\r\n });\r\n\r\n return defer.promise;\r\n }\r\n //Loading Transport Type\r\n loadTransportTypes(searchText: string) {\r\n\r\n if (this.deliveryInstruction) {\r\n return this.transportTypeService.getDropdownList(this.deliveryInstruction.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 public loadPlaceOfLoading(searchText) {\r\n var defer = this.$q.defer();\r\n\r\n if ((this.$scope.$parent).diUpdateCtrl.PurchaseOrder) {\r\n this.unLocationCodeService.getDropdownList().query({ countryId: (this.$scope.$parent).diUpdateCtrl.PurchaseOrder.CountryOfOrigin.Id, searchText: searchText }, (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 public loadCountries() {\r\n var defer = this.$q.defer();\r\n\r\n this.countryService.getDropdownList().query({}, (data) => {\r\n defer.resolve(data);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n defer.resolve([]);\r\n });\r\n\r\n return defer.promise;\r\n }\r\n\r\n public loadPlaceOfUnloading(searchText: string) {\r\n var defer = this.$q.defer();\r\n\r\n if (this.deliveryInstruction && this.deliveryInstruction.DestinationCountry) {\r\n this.unLocationCodeService.getDropdownList().query({ countryId: this.deliveryInstruction.DestinationCountry.Id, searchText: searchText }, (data) => {\r\n defer.resolve(data);\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 public loadWarehouse() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.deliveryInstruction && this.deliveryInstruction.PlaceOfUnloading) {\r\n this.warehouseService.getDropdownList().query({ ownerEntityId: this.deliveryInstruction.OwnerEntityId, unLocationCodeId: this.deliveryInstruction.PlaceOfUnloading.Id }, (data) => {\r\n defer.resolve(data);\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 public loadCartageContractors() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.deliveryInstruction && this.deliveryInstruction.PlaceOfUnloading) {\r\n this.cartageContractorService.getDropdownList().query({ ownerEntityId: this.deliveryInstruction.OwnerEntityId }, (data) => {\r\n defer.resolve(data);\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 loadShippers(searchText: string) {\r\n \r\n return this.shipperService.getShipperDropdown(this.deliveryInstruction.OwnerEntityId , searchText).query({\r\n }, () => {\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n shipperChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n //Always try and get Route default from Shipper\r\n this.loadShipperDefaults(model.Id); \r\n }\r\n\r\n loadShipperDefaults(shipperId: number){\r\n return this.shipperService.getShipperDefaults(shipperId).get({\r\n\r\n }, (data: interfaces.master.IShipperDefaults) => {\r\n if (data.NotifyParty) {\r\n this.deliveryInstruction.NotifyParty = data.NotifyParty;\r\n } \r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }).$promise;\r\n }\r\n\r\n\r\n public loadNotifyParties() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.deliveryInstruction) {\r\n this.notifyPartyService.getDropdownList().query({ ownerEntityId: this.deliveryInstruction.OwnerEntityId }, (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 public loadShippingPriorities() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.deliveryInstruction) {\r\n this.shippingPriorityService.getDropdownList().query(\r\n { \r\n entityId: this.deliveryInstruction.OwnerEntityId, \r\n transportModeId: this.deliveryInstruction.TransportMode?this.deliveryInstruction.TransportMode.Id:null,\r\n IsInbound: true\r\n }, \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 public loadRouteDefaults(route: interfaces.applicationcore.IDropdownModel) {\r\n\r\n this.routeCodeService.getRouteData().query({ routeId: route ? route.Id : 0 },\r\n (routeCodeData: interfaces.master.IRouteCode) => {\r\n this.setRouteDefaults(routeCodeData);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n }\r\n\r\n public setRouteDefaults(routeDefaultData: interfaces.master.IRouteCode) {\r\n if (routeDefaultData && routeDefaultData.Code) {\r\n\r\n this.deliveryInstruction.PlaceOfLoading = routeDefaultData.LoadingLocation;\r\n if (!this.deliveryInstruction.DestinationCountry || this.deliveryInstruction.DestinationCountry.Id != routeDefaultData.DestinationCountry.Id) {\r\n this.deliveryInstruction.DestinationCountry = routeDefaultData.DestinationCountry;\r\n this.placeOfUnloadingList = [];\r\n }\r\n this.deliveryInstruction.PlaceOfUnloading = routeDefaultData.UnloadingLocation;\r\n this.deliveryInstruction.TransportMode = routeDefaultData.TransportMode;\r\n if (routeDefaultData.ReceiptWarehouse !== null)\r\n this.deliveryInstruction.DeliverToWarehouse = routeDefaultData.ReceiptWarehouse;\r\n if (routeDefaultData.CartageContractor !== null)\r\n this.deliveryInstruction.CartageContractor = routeDefaultData.CartageContractor;\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\r\n if (this.deliveryInstruction.Week)\r\n this.tradeWeekChanged(this.deliveryInstruction.Week);\r\n\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 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 if (!forward) {\r\n //On Change Not Before Date\r\n this.deliveryInstruction.NotAfterDate = newValue.clone().add(3, \"day\");\r\n this.deliveryInstruction.RequiredDateOfArrival = newValue.clone().add((this.routeLeadTimes.RequiredDateOfArrival * -1), \"day\");\r\n this.deliveryInstruction.ShippedByDate = this.deliveryInstruction.RequiredDateOfArrival.clone().add((this.routeLeadTimes.ETA * -1), \"day\");\r\n this.deliveryInstruction.EarliestShippedByDate = this.deliveryInstruction.ShippedByDate.clone().add((this.routeLeadTimes.ShipByDate * -1), \"day\");\r\n this.deliveryInstruction.SupplierDeliveryDueDate = this.deliveryInstruction.EarliestShippedByDate.clone().add((this.routeLeadTimes.SupplierDueDate * -1), \"day\");\r\n } else if (this.routeLeadTimes) {\r\n //On Change Supplier Delivery Due Date\r\n this.deliveryInstruction.EarliestShippedByDate = newValue.clone().add((this.routeLeadTimes.SupplierDueDate * 1), \"day\");\r\n this.deliveryInstruction.ShippedByDate = this.deliveryInstruction.EarliestShippedByDate.clone().add((this.routeLeadTimes.ShipByDate * 1), \"day\");\r\n this.deliveryInstruction.RequiredDateOfArrival = this.deliveryInstruction.ShippedByDate.clone().add((this.routeLeadTimes.ETA * 1), \"day\");\r\n this.deliveryInstruction.NotBeforeDate = this.deliveryInstruction.RequiredDateOfArrival.clone().add((this.routeLeadTimes.RequiredDateOfArrival * 1), \"day\");\r\n this.deliveryInstruction.NotAfterDate = this.deliveryInstruction.NotBeforeDate.clone().add(3, \"day\");\r\n }\r\n }\r\n\r\n public routeChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n\r\n var promises = [];\r\n promises.push(this.loadRouteDefaults(model));\r\n promises.push(this.loadLeadTimes(model, this.deliveryInstruction.ShippingPriority).then(\r\n () => {\r\n this.calculateLeadTimes(false, this.deliveryInstruction.NotBeforeDate);\r\n }\r\n ));\r\n\r\n return this.$q.all(promises);\r\n });\r\n }\r\n\r\n public shippingPriorityChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.loadLeadTimes(this.deliveryInstruction.Route, model).then(\r\n () => {\r\n this.calculateLeadTimes(false, this.deliveryInstruction.NotBeforeDate);\r\n }\r\n );\r\n });\r\n }\r\n\r\n public notBeforeDateChanged(newValue: moment.Moment) {\r\n this.calculateLeadTimes(false, newValue);\r\n }\r\n\r\n public supplierDeliveryDueDateChanged(newValue: moment.Moment) {\r\n this.calculateLeadTimes(true, newValue);\r\n }\r\n \r\n public destinationCountryChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n this.deliveryInstruction.DestinationCountry = model;\r\n this.deliveryInstruction.PlaceOfUnloading = undefined;\r\n this.placeOfUnloadingList = [];\r\n }\r\n \r\n public getDocuments(showAll:boolean) {\r\n return this.documentRepositoryService.getDocumentRepository().query({ referenceNumber: this.deliveryInstruction.Code, systemType: Enum.EnumSystemType.DeliveryInstruction, ownerEntityId: this.deliveryInstruction.OwnerEntityId, showAll:showAll }, (documentRepository: interfaces.documentManagement.IDocumentRepository) => {\r\n this.documentRepository = documentRepository;\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 this.$state.go(\"auth.PurchaseOrders.Update.Di.Documents\");\r\n }\r\n \r\n public gvwDIS: 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 enableRowSelection: true,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n enablePinning: false,\r\n cellEditableCondition: () => { return this.$scope.diUpdateCtrl.PurchaseOrder ? this.$scope.diUpdateCtrl.PurchaseOrder.LockdownType < 2 : true },\r\n enableSorting: true,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => { this.registerDISApi(gridApi) },\r\n columnDefs: [{\r\n name: \"COST\",\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: \"SEQ\",\r\n displayName: \"#\",\r\n field: \"POSequenceNumber\",\r\n width: 35,\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n enableFiltering: false\r\n }, {\r\n name: \"SKUCODE\",\r\n displayName: \"SKU\",\r\n field: \"SKUCode\",\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
`\r\n }, {\r\n name: \"SKUDESC\",\r\n displayName: \"Description\",\r\n field: \"SKUDescription\",\r\n width: 200,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"ORDQTY\",\r\n displayName: \"Order Qty\",\r\n field: \"OrderedQuantity\",\r\n type: \"number\",\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 2',\r\n width: 100,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n filterHeaderTemplate: `\r\n
\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: \"AVAILQTY\",\r\n displayName: \"Available Qty\",\r\n field: \"AvailableQuantity\",\r\n type: \"number\",\r\n width: 100,\r\n cellFilter: 'number: 2',\r\n cellClass: 'text-right',\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n filterHeaderTemplate: `\r\n
\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: \"ALLOQTY\",\r\n displayName: \"Allocated Qty\",\r\n field: \"AllocatedQuantity\",\r\n type: \"number\",\r\n width: 100,\r\n cellFilter: 'number: 2',\r\n cellClass: 'text-right',\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"INVOQTY\",\r\n displayName: \"Invoice Qty\",\r\n field: \"InvoiceQuantity\",\r\n type: \"number\",\r\n cellFilter: 'number: 2',\r\n cellClass: 'text-right',\r\n width: 100,\r\n enableCellEdit: false,\r\n filterHeaderTemplate: `\r\n
\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: \"RECVQTY\",\r\n displayName: \"Received Qty\",\r\n field: \"ReceivedQuantity\",\r\n type: \"number\",\r\n cellFilter: 'number: 2',\r\n cellClass: 'text-right',\r\n width: 100,\r\n enableCellEdit: false,\r\n filterHeaderTemplate: `\r\n
\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: \"OUTSQTY\",\r\n displayName: \"Outstanding Qty\",\r\n field: \"OutstandingQuantity\",\r\n type: \"number\",\r\n cellFilter: 'number: 2',\r\n cellClass: 'text-right',\r\n width: 120,\r\n enableCellEdit: false,\r\n filterHeaderTemplate: `\r\n
\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: \"SUPPRICE\",\r\n displayName: \"Supplier Price\",\r\n field: \"SupplierPrice\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 105,\r\n enableCellEdit: false,\r\n filterHeaderTemplate: `\r\n
\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: \"CURCODE\",\r\n displayName: \"Currency\",\r\n field: \"CurrencyCode\",\r\n width: 100,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n \r\n
\r\n
`\r\n }, {\r\n name: \"UNITGLC\",\r\n displayName: \"Unit GLC\",\r\n field: \"UnitGLC\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 75,\r\n enableCellEdit: false,\r\n filterHeaderTemplate: `\r\n
\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: \"CUSVALUE\",\r\n displayName: \"Customs Value\",\r\n field: \"CustomsValue\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 125,\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"NOPACKAGE\",\r\n displayName: \"Number of Packages\",\r\n field: \"NumberOfPackages\",\r\n cellFilter: \"number: 2\",\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
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"TYPEOFPACKAGE\",\r\n displayName: \"Type Of Package\",\r\n field: \"TypeOfPackage\",\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n width: 125,\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
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n if (cellValue) {\r\n return (cellValue.Display.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || searchTerm.length === 0);\r\n } else {\r\n return false;\r\n }\r\n }\r\n },\r\n sortingAlgorithm: (a, b, rowA, rowB, direction) => {\r\n var nulls = this.apiDIS.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: \"GROSSWEIGHT\",\r\n displayName: \"Package Gross Weight\",\r\n field: \"GrossWeight\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 155,\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"NETWEIGHT\",\r\n displayName: \"Package Net Weight\",\r\n field: \"NetWeight\",\r\n cellFilter: \"number: 2\",\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
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"CUBE\",\r\n displayName: \"Package Cube\",\r\n field: \"Cube\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 125,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellTemplate: `
{{MODEL_COL_FIELD | number:5}}
`,\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }]\r\n };\r\n\r\n public registerDISApi(gridApi: uiGrid.IGridApi) {\r\n this.apiDIS = gridApi;\r\n\r\n this.apiDIS.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiDIS.selection.selectRow(gridSelection.row.entity);\r\n });\r\n }\r\n\r\n loadTypeOfPackages(searchText: string) {\r\n return this.typeOfPackageService.getDropdownList(this.deliveryInstruction.OwnerEntityId).query(() => { }, (errorResponse) => { this.generalService.displayMessageHandler(errorResponse.data); }).$promise;\r\n }\r\n\r\n public removeDetail() {\r\n this.generalService.displayConfirmationBox(\"Confirm?\", \"Are you sure you want to remove the SKU Line?\").then((result: boolean) => {\r\n if (result) {\r\n if (this.apiDIS && this.apiDIS.selection.getSelectedRows().length > 0) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.deliveryInstructionService.removeSKUAllocation(this.apiDIS.selection.getSelectedRows()[0].Id).delete((data) => {\r\n this.generalService.displayMessageHandler(data);\r\n this.loadDI();\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 public loadCostingDetail() {\r\n return this.deliveryInstructionService.getCostingLineListForMultipleCostings().query({ diId: this.deliveryInstruction.Id }).$promise;\r\n }\r\n\r\n public recostLines() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.deliveryInstructionService.calculateDeliveryInstructionCost().save({}, this.deliveryInstruction, (data) => {\r\n this.generalService.displayMessageHandler(data);\r\n this.loadDI();\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 public openDetailLineCosting(disId: number) {\r\n this.$uibModal.open({\r\n animation: true,\r\n size: \"lg\",\r\n template: `\r\n
\r\n
\r\n

Costing Detail

\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n
\r\n
\r\n `,\r\n controller: class diDetailCostingCtrl {\r\n disId: number;\r\n deliveryInstruction: interfaces.purchase.IDeliveryInstruction\r\n\r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService, private items, private bsLoadingOverlayService,\r\n private deliveryInstructionService: interfaces.purchase.IDeliveryInstructionService, private generalService) {\r\n this.disId = items.disId;\r\n this.deliveryInstruction = items.deliveryInstruction;\r\n }\r\n\r\n ok() {\r\n this.$uibModalInstance.close();\r\n }\r\n\r\n recostLines() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'costing.detail.load'\r\n },\r\n () => {\r\n return this.deliveryInstructionService.calculateDeliveryInstructionCost().save({ deliveryInstructionSkuAllocationId: this.disId}, this.deliveryInstruction, (data) => {\r\n this.generalService.displayMessageHandler(data);\r\n this.$uibModalInstance.close(true);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n this.$uibModalInstance.close(false);\r\n }).$promise;\r\n });\r\n }\r\n },\r\n controllerAs: 'disCostingCtrl',\r\n resolve: {\r\n items: () => {\r\n return {\r\n disId: disId,\r\n deliveryInstruction: this.deliveryInstruction\r\n };\r\n }\r\n }\r\n }).result.then((result) => {\r\n if (result) {\r\n this.loadDI();\r\n }\r\n });\r\n }\r\n \r\n public gvwDISundry: 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 enableRowSelection: false,\r\n enableFullRowSelection: true,\r\n useExternalPagination: false,\r\n enableRowHeaderSelection: true,\r\n enableHorizontalScrollbar: 2,\r\n enablePinning: false,\r\n rowEditWaitInterval: -1,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => { this.registerDISundryApi(gridApi); },\r\n cellEditableCondition: () => { return this.$scope.diUpdateCtrl.PurchaseOrder ? this.$scope.diUpdateCtrl.PurchaseOrder.LockdownType < 2 : true },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n enableFiltering: false,\r\n field: \"Id\",\r\n cellTemplate: `\r\n
\r\n \r\n
`,\r\n enableSorting: false,\r\n enableColumnMenu: false,\r\n width: 35,\r\n headerCellTemplate: `\r\n
\r\n \r\n
`\r\n },{\r\n name: \"SEQ\",\r\n displayName: \"#\",\r\n field: 'SequenceNumber',\r\n enableFiltering: false,\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 0',\r\n width: 35\r\n }, {\r\n name: \"CODE\",\r\n displayName: \"*Sundry Item Code\",\r\n field: 'SundryItem',\r\n enableCellEdit: true,\r\n width: 200,\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
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n if (cellValue) {\r\n return (cellValue.Display.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || searchTerm.length === 0);\r\n } else {\r\n return false;\r\n }\r\n }\r\n },\r\n sortingAlgorithm: (a, b, rowA, rowB, direction) => {\r\n var nulls = this.apiDIS.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: \"DESC\",\r\n displayName: \"*Sundry Item Description\",\r\n field: 'SundryItem',\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n width: 275,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Description}}
`,\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: \"*Quantity\",\r\n field: 'Quantity',\r\n width: 100,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 6',\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"SELLPRICE\",\r\n displayName: \"*Price\",\r\n field: 'SellingPrice',\r\n width: 100,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 5',\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"SELLVALUE\",\r\n displayName: \"Value\",\r\n field: 'SellingValue',\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 2',\r\n width: 100,\r\n filterHeaderTemplate: `\r\n
\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: \"VATVALUE\",\r\n displayName: \"VAT Value\",\r\n field: 'VATValue',\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 2',\r\n width: 100,\r\n filterHeaderTemplate: `\r\n
\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: \"CURCODE\",\r\n displayName: \"Currency\",\r\n field: 'Currency',\r\n enableCellEdit: true,\r\n width: 200,\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
`,\r\n filter: {\r\n condition: (searchTerm, cellValue) => {\r\n if (cellValue) {\r\n return (cellValue.Code.toLocaleLowerCase().indexOf(searchTerm.toLocaleLowerCase()) >= 0 || searchTerm.length === 0);\r\n } else {\r\n return false;\r\n }\r\n }\r\n },\r\n sortingAlgorithm: (a, b, rowA, rowB, direction) => {\r\n var nulls = this.apiDIS.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 public registerDISundryApi(gridApi: uiGrid.IGridApi) {\r\n this.apiDISundry = gridApi;\r\n\r\n this.apiDISundry.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiDISundry.selection.selectRow(gridSelection.row.entity);\r\n });\r\n }\r\n\r\n public CopyCostingFromClick(){\r\n if (this.apiDIS.selection.getSelectedRows().length > 0)\r\n {\r\n var selectedItem = this.apiDIS.selection.getSelectedRows()[0];\r\n \r\n if (selectedItem.AllocatedQuantity!==0 && selectedItem.Id>0)\r\n {\r\n this.displaySKUAllocations((this.$scope.$parent).diUpdateCtrl.PurchaseOrder.LinkedPurchaseOrderId).then((result: interfaces.purchase.IDeliveryInstructionSKUAllocation) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => { \r\n \r\n return this.purchaseOrderService.copyCostingFromParentToChildOrderByLine().save({\r\n sourceSKUAllocationId: result.Id,\r\n destinationSKUAllocationId: selectedItem.Id,\r\n },\r\n (result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.apiDIS.rowEdit.setRowsClean(this.apiDIS.selection.getSelectedRows());\r\n \r\n }, (failureMessage) => {\r\n this.generalService.displayMessageHandler(failureMessage.data);\r\n \r\n });\r\n\r\n }); \r\n }\r\n }); \r\n \r\n }\r\n else\r\n {\r\n this.generalService.displayMessage('Allocated Quantity must be > 0',Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n else\r\n {\r\n this.generalService.displayMessage('Please select a SKU Allocation line',Enum.EnumMessageType.Warning);\r\n }\r\n }\r\n\r\n \r\n\r\n public displaySKUAllocations(purchaseOrderId: number)\r\n {\r\n\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 SKU Allocation\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \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, deliveryInstructionService: interfaces.purchase.IDeliveryInstructionService) => {\r\n $scope.purchaseOrderId = purchaseOrderId;\r\n\r\n $scope.cancel = () => {\r\n $uibModalInstance.dismiss();\r\n }\r\n \r\n $scope.ok = (entity: interfaces.purchase.IDeliveryInstructionSKUAllocation) => {\r\n $uibModalInstance.close(entity);\r\n }; \r\n\r\n $scope.gvwSKU = {\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: false,\r\n useExternalPagination: false,\r\n paginationPageSizes: [15, 30, 45, 60],\r\n paginationPageSize: 15,\r\n enableRowHeaderSelection: false,\r\n enableHorizontalScrollbar: 2,\r\n enableVerticalScrollbar: 1,\r\n onRegisterApi: (gridApi) => {\r\n $scope.IsLoading = true;\r\n\r\n deliveryInstructionService.getListByPOId($scope.purchaseOrderId).query((result: Array) => {\r\n $scope.gvwSKU.data = result;\r\n $scope.IsLoading = false;\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n $scope.IsLoading = false;\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: 54,\r\n enableCellEditOnFocus: false\r\n }, \r\n {\r\n name: \"DICode\",\r\n displayName: \"DI Code\",\r\n field: \"DICode\",\r\n type: \"string\",\r\n width: 120,\r\n }, {\r\n name: \"SKUCode\",\r\n displayName: \"SKU Code\",\r\n field: \"SKUCode\",\r\n type: \"string\",\r\n width: 140,\r\n }, {\r\n name: \"SKUDescription\",\r\n displayName: \"SKU Description\",\r\n field: \"SKUDescription\",\r\n type: \"string\",\r\n width: 200,\r\n }]\r\n }; \r\n },\r\n controllerAs: \"SKUcTRL\",\r\n size: \"md\",\r\n resolve: {\r\n \r\n }\r\n }).result;\r\n } \r\n\r\n public removeSundryItem() {\r\n if (this.apiDISundry.selection.getSelectedRows().length > 0) {\r\n\r\n var selectedItem = this.apiDISundry.selection.getSelectedRows()[0];\r\n\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"Remove selected sundry item? \" + selectedItem.SundryItem.Display).then((result: boolean) => {\r\n if (result) {\r\n if (!selectedItem.Id) {\r\n var index = (>this.gvwDISundry.data).indexOf(selectedItem);\r\n (>this.gvwDISundry.data).splice(index, 1);\r\n } else if (selectedItem.Id > 0) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n\r\n return this.deliveryInstructionSundryItemService.delete().delete({ pdsId: selectedItem.Id }, (messageHandler: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(messageHandler);\r\n this.loadDI();\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 public generateSundryItems_click() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n\r\n return this.SaveDI().then((msgHandler: interfaces.applicationcore.IMessageHandler) => {\r\n\r\n if (!msgHandler.HasErrorMessage) {\r\n this.generateSundryItems();\r\n } else {\r\n this.generalService.displayMessageHandler(msgHandler);\r\n }\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n }\r\n\r\n GoCalculateExchangeRate() {\r\n var defered = this.$q.defer();\r\n\r\n this.deliveryInstructionService.recalculateExchangeRate().save(this.deliveryInstruction,\r\n (result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n defered.resolve(result);\r\n\r\n }, (failureMessage) => {\r\n this.generalService.displayMessageHandler(failureMessage.data);\r\n defered.reject(failureMessage);\r\n });\r\n\r\n return defered.promise;\r\n }\r\n\r\n RecalculateExchangeRate() {\r\n \r\n this.generalService.displayConfirmationBox(\"Confirm\", \"Are you sure you want to recalculate the exchange rate?\").then((result) => {\r\n\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.GoCalculateExchangeRate().then((data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n this.loadDI();\r\n }, (data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n })\r\n }\r\n });\r\n }\r\n\r\n generateSundryItems() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n\r\n return this.deliveryInstructionSundryItemService.generateSundryItems().get({ pdiId: this.deliveryInstruction.Id }, (msgHandler: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(msgHandler);\r\n\r\n this.loadDI();\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n });\r\n });\r\n }\r\n\r\n addInlineSundryItem() {\r\n (>(this.gvwDISundry.data)).splice(0, 0, {\r\n Quantity: 0,\r\n SellingValue: 0,\r\n SellingPrice: 0,\r\n VATValue: 0\r\n });\r\n }\r\n\r\n loadSundryItem(searchText: string) {\r\n if (this.deliveryInstruction) {\r\n\r\n return this.sundryItemService.getDropdownListForCostModel(this.deliveryInstruction.OwnerEntityId, this.deliveryInstruction.CostingModel.CostModel.Id, searchText).query(() => {\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.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 loadCurrencies() {\r\n var defered = this.$q.defer>();\r\n\r\n this.currencyService.getCurrencyDropdownList().query((currencyList: Array) => {\r\n defered.resolve(currencyList);\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 loadCalendarPeriods() {\r\n if (this.deliveryInstruction) {\r\n return this.calendarPeriodService.getDropdownList().query({ ownerEntityId: this.deliveryInstruction.OwnerEntityId, calendarTypeId: Enum.EnumCalendarType.TradingCalendar, startDate: this.deliveryInstruction.PurchaseOrderDate.format(\"YYYYMMDDTHH:mm\") }, (resultList: Array) => {\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n }\r\n\r\n var defered = this.$q.defer>();\r\n\r\n defered.resolve([]);\r\n\r\n return defered.promise;\r\n }\r\n\r\n tradeWeekChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n if ((model && !this.deliveryInstruction.Week)) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.calendarPeriodService.get(model.Id).get((result: interfaces.master.ICalendarPeriod) => {\r\n this.deliveryInstruction.NotBeforeDate = result.StartDate;\r\n this.notBeforeMin = result.StartDate;\r\n this.notBeforeDateChanged(result.StartDate);\r\n this.deliveryInstruction.NotAfterDate = result.EndDate;\r\n }, () => {\r\n\r\n }).$promise;\r\n });\r\n } else if (this.deliveryInstruction.Week) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.calendarPeriodService.get(model.Id).get((result: interfaces.master.ICalendarPeriod) => {\r\n this.deliveryInstruction.NotBeforeDate = result.StartDate;\r\n this.notBeforeMin = result.StartDate;\r\n this.notBeforeDateChanged(result.StartDate);\r\n this.deliveryInstruction.NotAfterDate = result.EndDate;\r\n }, () => {\r\n\r\n }).$promise;\r\n });\r\n } else {\r\n this.notBeforeMin = undefined\r\n }\r\n }\r\n\r\n downloadPRToExcel() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n this.deliveryInstructionService.GetDeliveryInstructionPRListExcel(this.deliveryInstruction.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: 'di.update'\r\n }, () => {\r\n return this.deliveryInstructionService.ViewDetailPR().query({\r\n diId: this.deliveryInstruction.Id,\r\n showOnlyProhibited: this.showOnlyProhibited,\r\n }, (result: Array) => {\r\n\r\n this.deliveryInstruction.DeliveryInstructionPRList = 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 //////////////////////////////////////////////\r\n //P&R List.\r\n paginationPROptions = {\r\n pageNumber: 1,\r\n pageSize: 25\r\n };\r\n\r\n apiPRList: uiGrid.IGridApi;\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: true,\r\n //Menu + Download\r\n enableGridMenu: false,\r\n exporterMenuCsv: false,\r\n exporterMenuPdf: false,\r\n exporterMenuExcel: false,\r\n exporterExcelFilename: \"SalesOrderPRList.xlsx\",\r\n gridMenuShowHideColumns: false,\r\n exporterFieldCallback: (grid, row, col, value) => {\r\n return this.generalService.handleValue(value);\r\n },\r\n exporterSuppressColumns: ['EDIT', 'Notes'],\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.deliveryInstruction ? this.deliveryInstruction.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.deliveryInstruction ? this.deliveryInstruction.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.deliveryInstruction ? this.deliveryInstruction.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.deliveryInstructionService.GetPermitsForDropdown().query({\r\n deliveryInstructionRestrictionId: 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 checkPR() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n }, () => {\r\n return this.SaveDI().then(() => {\r\n this.deliveryInstructionService.CheckForPR(this.deliveryInstruction.Id).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: 'di.update'\r\n }, () => {\r\n return this.loadDI();\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.purchase.IDeliveryInstructionPRDisplay = 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.purchase.IDeliveryInstructionPRDisplay = 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: 'di.update'\r\n }, () => {\r\n return this.SaveDI().then(() => {\r\n this.deliveryInstructionService.RunQuotaAllocation(this.deliveryInstruction.Id).save({\r\n diId: this.deliveryInstruction.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: 'di.update'\r\n }, () => {\r\n return this.loadDI();\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 //Delivery Instruction Custom Attribute START\r\n\r\n registerPurchaseOrderAttributeApi(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 return this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.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 return this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n }, () => {\r\n this.loadDI();\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.gvwDeliveryInstructionAttribute.data, (o) => {\r\n return o === selectedRow;\r\n });\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 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 insertCA() {\r\n this.deliveryInstruction.DeliveryInstructionAttributeList.push({\r\n Id: 0,\r\n Attribute: { Id: 0, AttributeType: 0, IsNotEditable: false },\r\n CategoryType: 825,\r\n CategoryKey: this.deliveryInstruction.Id,\r\n IsActive: true\r\n });\r\n }\r\n\r\n loadAttributeList() {\r\n return this.customAttributeService.GetCustomAttributeByCategory(825,this.deliveryInstruction.OwnerEntityId).query(\r\n {\r\n }, (resultList:interfaces.master.ICustomAttribute[]) => {\r\n this.attributeList = resultList;\r\n }).$promise;\r\n }\r\n\r\n gvwDeliveryInstructionAttribute: 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 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 },\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: 60,\r\n enableCellEditOnFocus: false,\r\n headerCellTemplate: `\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: 210\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: 210\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 //Delivery Instruction Custom Attribute END\r\n\r\n SaveDI() {\r\n if (this.apiDISundry) {\r\n this.deliveryInstruction.DeliveryInstructionSundryItems = _.map(this.apiDISundry.rowEdit.getDirtyRows(this.apiDISundry.grid), (o) => { return o.entity });\r\n } else {\r\n this.deliveryInstruction.DeliveryInstructionSundryItems = [];\r\n }\r\n\r\n if (this.apiDIS) {\r\n this.deliveryInstruction.DeliveryInstructionSKUAllocations = _.map(this.apiDIS.rowEdit.getDirtyRows(this.apiDIS.grid), (o) => { return o.entity });\r\n } else {\r\n this.deliveryInstruction.DeliveryInstructionSKUAllocations = [];\r\n }\r\n\r\n if (this.apiPRList) {\r\n this.deliveryInstruction.DeliveryInstructionPRList = _.map(this.apiPRList.rowEdit.getDirtyRows(this.apiPRList.grid), (o) => { return o.entity });\r\n } else {\r\n this.deliveryInstruction.DeliveryInstructionPRList = [];\r\n }\r\n\r\n return this.deliveryInstructionService.save().save(this.deliveryInstruction, (data: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(data);\r\n if (!data.HasErrorMessage) {\r\n\r\n if (this.apiDISundry) {\r\n this.apiDISundry.rowEdit.setRowsClean(this.deliveryInstruction.DeliveryInstructionSundryItems);\r\n }\r\n\r\n if (this.apiDIS) {\r\n this.apiDIS.rowEdit.setRowsClean(this.deliveryInstruction.DeliveryInstructionSKUAllocations);\r\n }\r\n\r\n if (this.apiPRList) {\r\n this.apiPRList.rowEdit.setRowsClean(this.deliveryInstruction.DeliveryInstructionPRList);\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 Save() {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"Save Delivery Instruction?\").then((result) => {\r\n\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n\r\n return this.SaveDI().then((msgHandler: interfaces.applicationcore.IMessageHandler) => {\r\n if (this.deliveryInstruction.Id)\r\n this.loadDI();\r\n else {\r\n this.$state.params[\"diId\"] = Number(msgHandler.ID);\r\n this.$state.go('auth.PurchaseOrders.Update.Di', this.$state.params, { reload: 'auth.PurchaseOrders.Update.Di' });\r\n }\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n SaveClose() {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"Save Delivery Instruction?\").then((result) => {\r\n\r\n if (result) {\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'di.update'\r\n },\r\n () => {\r\n return this.SaveDI().then((data) => {\r\n if (data) {\r\n this.$state.go(\"^\");\r\n this.$anchorScroll(\"topAnchor\");\r\n } else {\r\n this.$anchorScroll(\"topAnchor\");\r\n }\r\n\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n Close() {\r\n this.$state.go(\"^\");\r\n }\r\n }\r\n\r\n angular.module(\"app\").controller(\"deliveryInstructionUpdateCtrl\", controllers.purchase.deliveryInstructionUpdateCtrl);\r\n }\r\n}"]}