{"version":3,"file":"salesOrderUpdateCtrl.js","sourceRoot":"","sources":["../../../../src/modules/controllers/sales/salesOrderUpdateCtrl.ts"],"names":[],"mappings":"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","sourcesContent":["module controllers {\r\n 'use strict';\r\n export module sales {\r\n interface ISalesUpdateScope extends ng.IScope { }\r\n\r\n interface ISalesUpdateParams extends ng.ui.IStateParamsService {\r\n soId: number;\r\n }\r\n\r\n export class SalesOrderUpdateCtrl {\r\n static $inject = [\r\n \"$scope\", \r\n 'salesOrderService', \r\n '$rootScope', \r\n 'generalService', \r\n '$q', \r\n '$stateParams',\r\n 'currencyService',\r\n 'classificationValueService',\r\n 'supplierService',\r\n 'termsOfPaymentService',\r\n 'costModelService',\r\n \"$anchorScroll\",\r\n \"$state\",\r\n \"purchaseOrderSKUService\",\r\n \"countryService\",\r\n \"incotermService\",\r\n \"termsOfDeliveryService\",\r\n \"consigneeService\",\r\n \"documentRepositoryService\",\r\n \"bsLoadingOverlayService\",\r\n \"lookupService\",\r\n \"skuService\",\r\n \"$timeout\",\r\n '$transitions',\r\n 'customerService',\r\n 'bankService',\r\n 'shippingPriorityService',\r\n 'routeCodeService',\r\n 'transportModeService',\r\n 'unLocationCodeService',\r\n 'warehouseService',\r\n 'cartageContractorService',\r\n 'sundryItemService',\r\n 'salesOrderSKUService',\r\n 'salesOrderSundryItemService',\r\n 'entityService',\r\n 'permitService',\r\n 'menuService',\r\n \"customAttributeService\", \r\n \"customAttributeAnswerOptionService\",\r\n \"$uibModal\",\r\n ];\r\n\r\n public SalesOrderSearch: { id: number };\r\n public SalesOrder: interfaces.sales.ISalesOrder;\r\n\r\n public SOStatus: interfaces.master.IStatusData;\r\n\r\n showOnlyProhibited: boolean = false;\r\n showAll: boolean = false;\r\n\r\n soNumber: string;\r\n\r\n apiSOSkuList: uiGrid.IGridApi;\r\n apiSOSundryList: uiGrid.IGridApi;\r\n\r\n selectedTab: number = 0;\r\n\r\n documentRepository: interfaces.documentManagement.IDocumentRepository;\r\n\r\n termsOfDeliveryList: Array;\r\n\r\n UnloadingCountryList: Array;\r\n placeOfUnloadingList: Array;\r\n\r\n LoadingCountryList: Array;\r\n placeOfLoadingList: Array;\r\n\r\n deliverToWarehouseList: Array;\r\n\r\n incotermEditMode: boolean = false;\r\n incotermOverride: boolean = false;\r\n\r\n viewConsignmentRight: boolean = false;\r\n editConsingmentRight: boolean = false;\r\n\r\n viewSalesOrderRight: boolean = true;\r\n editSalesOrderRight: boolean = true;\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\r\n constructor(\r\n private $scope: ISalesUpdateScope,\r\n private salesOrderService: interfaces.sales.ISalesOrderService,\r\n private $rootScope: interfaces.applicationcore.IRootScope,\r\n public generalService: interfaces.applicationcore.IGeneralService,\r\n private $q: ng.IQService,\r\n private $stateParams: ISalesUpdateParams,\r\n private currencyService: interfaces.applicationcore.ICurrencyService,\r\n private classificationValueService: interfaces.applicationcore.IClassificationValueService,\r\n private supplierService: interfaces.master.ISupplierService,\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 documentRepositoryService: interfaces.documentManagement.IDocumentRepositoryService,\r\n public bsLoadingOverlayService,\r\n private lookupService: interfaces.applicationcore.ILookupService,\r\n public skuService: interfaces.master.ISKUService,\r\n public $timeout: ng.ITimeoutService,\r\n public $transitions: ng.ui.core.ITransition,\r\n public customerService: interfaces.master.ICustomerService,\r\n public bankService: interfaces.master.IBankService,\r\n public shippingPriorityService: interfaces.master.IShippingPriorityService,\r\n public routeCodeService: interfaces.master.IRouteCodeService,\r\n public transportModeService: interfaces.applicationcore.ITransportModeService,\r\n public unLocationCodeService: interfaces.applicationcore.IUNLocationCodeService,\r\n public warehouseService: interfaces.master.IWarehouseService,\r\n public cartageContractorService: interfaces.master.ICartageContractorService,\r\n public sundryItemService: interfaces.master.ISundryItemService,\r\n public salesOrderSKUService: interfaces.sales.ISalesOrderSKUService,\r\n public salesOrderSundryItemService: services.sales.salesOrderSundryItemService,\r\n private entityService: interfaces.applicationcore.IEntityService,\r\n private permitService: interfaces.master.IPermitService,\r\n private menuService: interfaces.applicationcore.IMenuService,\r\n public customAttributeService: services.master.customAttributeService,\r\n public customAttributeAnswerOptionService: services.master.customAttributeAnswerOptionService,\r\n private $uibModal: ng.ui.bootstrap.IModalService,\r\n ) {\r\n\r\n if ($stateParams.soId === null) {\r\n return;\r\n }\r\n\r\n this.SalesOrderSearch = { id: $stateParams.soId };\r\n \r\n \r\n this.loadSO();\r\n\r\n //Reloads PO after an update to SKU or DI.\r\n $transitions.onSuccess({\r\n to: 'auth.SalesOrders.Update',\r\n from: 'auth.SalesOrders.Update.**'\r\n }, () => {\r\n this.loadSO();\r\n });\r\n }\r\n\r\n loadSO() {\r\n\r\n if (this.apiSOSkuList) {\r\n this.apiSOSkuList.rowEdit.flushDirtyRows();\r\n }\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n return this.salesOrderService.getSalesOrder().query(this.SalesOrderSearch, (result) => {\r\n this.SalesOrder = result;\r\n this.gvwSOSku.data = this.SalesOrder.SalesOrderDetailSKUList; \r\n this.gvwSOSundry.data = this.SalesOrder.SalesOrderSundryItemsList;\r\n this.soNumber = this.SalesOrder.OrderNumber;\r\n this.gvwSalesOrderAttribute.data = result.SalesOrderAttributeList;\r\n \r\n this.gvwPRList.data = this.SalesOrder.SalesOrderPRList;\r\n this.gvwPRList.totalItems = this.SalesOrder.SalesOrderPRList.length;\r\n this.incotermEditMode = false;\r\n this.getAllowIncotermOverrideRight();\r\n this.getViewExportConsignmentRight();\r\n this.getEditExportConsignmentRight();\r\n this.loadControls();\r\n this.loadStatus();\r\n\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n }).$promise;\r\n });\r\n }\r\n\r\n getAllowIncotermOverrideRight() {\r\n this.incotermOverride = false;\r\n return this.menuService.getGTSConnectMenuItem(693).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result.name) {\r\n this.incotermOverride = true;\r\n }\r\n }).$promise;\r\n } \r\n\r\n getViewExportConsignmentRight() {\r\n this.viewConsignmentRight = false;\r\n return this.menuService.getGTSConnectMenuItem(380).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result.name) {\r\n this.viewConsignmentRight = true;\r\n }\r\n }).$promise;\r\n } \r\n\r\n getEditExportConsignmentRight() {\r\n this.editConsingmentRight = false;\r\n return this.menuService.getGTSConnectMenuItem(606).get((result: interfaces.applicationcore.IMenu) => {\r\n if (result.name) {\r\n this.editConsingmentRight = true;\r\n }\r\n }).$promise;\r\n } \r\n \r\n ViewConsignment = (conId: number) => {\r\n var url = '#!/ConsignmentExports/UpdateExport/'+conId;\r\n window.open(url, '_blank');\r\n }\r\n\r\n ViewSalesOrder = (soId: number) => {\r\n var url = '#!/SalesOrders/SalesOrders/Update/'+soId;\r\n window.open(url, '_blank');\r\n }\r\n\r\n incotermOverrideClick(){\r\n this.incotermEditMode = true;\r\n }\r\n\r\n loadControls() {\r\n var loadPromises: ng.IPromise[] = [];\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n loadPromises.push(this.getDocuments(this.showAll));\r\n\r\n return this.$q.all(loadPromises);\r\n });\r\n }\r\n\r\n loadTermsOfPayments(searchText: string) {\r\n var defered = this.$q.defer();\r\n\r\n if (this.SalesOrder) {\r\n this.termsOfPaymentService.getTermsOfPaymentDropdown(this.SalesOrder.OwnerEntityId, searchText).query({}, (termsOfPaymentList: Array) => {\r\n defered.resolve(termsOfPaymentList);\r\n }, (errorResponse) => {\r\n this.generalService.displayMessageHandler(errorResponse.data);\r\n defered.resolve([]);\r\n });\r\n } else {\r\n defered.resolve([]);\r\n }\r\n\r\n return defered.promise;\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\r\n return defered.promise;\r\n }\r\n\r\n loadIncoTerms() {\r\n var defered = this.$q.defer();\r\n\r\n this.incotermService.getDropdownList().query((data: Array) => {\r\n defered.resolve(data);\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 loadTermsOfDeliveries() {\r\n var defered = this.$q.defer();\r\n\r\n if (!this.SalesOrder || !this.SalesOrder.Incoterm) {\r\n defered.resolve([]);\r\n return defered.promise;\r\n }\r\n this.termsOfDeliveryService.getDropdownList().query({ ownerEntityId: this.SalesOrder.OwnerEntityId, incoTermId: this.SalesOrder.Incoterm.Id }, (list: Array) => {\r\n this.termsOfDeliveryList = list;\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 loadConsignees(searchText: string) {\r\n var defered = this.$q.defer();\r\n\r\n if (!this.SalesOrder) {\r\n defered.resolve([]);\r\n return defered.promise;\r\n }\r\n\r\n this.consigneeService.getDropdownList(this.SalesOrder.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 loadSuppliers(searchText: string) {\r\n var defered = this.$q.defer();\r\n\r\n if (!this.SalesOrder) {\r\n defered.resolve([]);\r\n return defered.promise;\r\n }\r\n\r\n if (this.$rootScope.Entity.Id) {\r\n this.supplierService.getSupplierDropdown(this.$rootScope.Entity.Id, 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 else {\r\n return this.entityService.getCurrentEntity().query((resultEntity: interfaces.applicationcore.IEntity) => {\r\n this.supplierService.getSupplierDropdown(resultEntity.Id, 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 }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n }\r\n\r\n return defered.promise;\r\n }\r\n\r\n loadCustomers() {\r\n var defered = this.$q.defer();\r\n\r\n if (!this.SalesOrder) {\r\n defered.resolve([]);\r\n return defered.promise;\r\n }\r\n\r\n if (this.$rootScope.Entity.Id) {\r\n this.customerService.getDropdownList(this.$rootScope.Entity.Id, \"\").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 else {\r\n return this.entityService.getCurrentEntity().query((resultEntity: interfaces.applicationcore.IEntity) => {\r\n this.customerService.getDropdownList(resultEntity.Id, \"\").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 }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n }\r\n\r\n return defered.promise;\r\n }\r\n\r\n loadBanks() {\r\n var defered = this.$q.defer();\r\n\r\n if (!this.SalesOrder) {\r\n defered.resolve([]);\r\n return defered.promise;\r\n }\r\n\r\n if (this.$rootScope.Entity.Id) {\r\n this.bankService.getDropdownList(this.$rootScope.Entity.Id, \"\").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 else {\r\n return this.entityService.getCurrentEntity().query((resultEntity: interfaces.applicationcore.IEntity) => {\r\n this.bankService.getDropdownList(resultEntity.Id, \"\").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 }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n }\r\n\r\n return defered.promise;\r\n }\r\n\r\n public loadShippingPriorities() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.SalesOrder) {\r\n this.shippingPriorityService.getDropdownList().query(\r\n { \r\n entityId: this.SalesOrder.OwnerEntityId, \r\n transportModeId: this.SalesOrder.TransportMethod?this.SalesOrder.TransportMethod.Id:null,\r\n IsInbound: false\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\r\n public loadRouteCodes() {\r\n var defer = this.$q.defer();\r\n\r\n if (this.SalesOrder && this.SalesOrder.LoadingCountry.Id) {\r\n this.routeCodeService.getDropdownListByCountry(this.SalesOrder.OwnerEntityId, false, this.SalesOrder.LoadingCountry.Id).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 loadTransportType() {\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\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 loadPlaceOfLoading(searchText) {\r\n var defer = this.$q.defer();\r\n\r\n if (this.SalesOrder && this.SalesOrder.LoadingCountry.Id) {\r\n this.unLocationCodeService.getDropdownList().query({ countryId: this.SalesOrder.LoadingCountry.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 loadPlaceOfUnloading(searchText: string) {\r\n var defer = this.$q.defer();\r\n\r\n if (this.SalesOrder && this.SalesOrder.UnLoadingCountry.Id) {\r\n this.unLocationCodeService.getDropdownList().query({ countryId: this.SalesOrder.UnLoadingCountry.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.SalesOrder && this.SalesOrder.PlaceOfLoading) {\r\n this.warehouseService.getDropdownList().query({ ownerEntityId: this.SalesOrder.OwnerEntityId, unLocationCodeId: this.SalesOrder.PlaceOfLoading.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.SalesOrder && this.SalesOrder.PlaceOfUnloading) {\r\n this.cartageContractorService.getDropdownList().query({ ownerEntityId: this.SalesOrder.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 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 this.SalesOrder.PlaceOfLoading = routeDefaultData.LoadingLocation;\r\n if (!this.SalesOrder.UnLoadingCountry || this.SalesOrder.UnLoadingCountry.Id != routeDefaultData.DestinationCountry.Id) {\r\n this.SalesOrder.UnLoadingCountry = routeDefaultData.DestinationCountry;\r\n this.placeOfUnloadingList = [];\r\n }\r\n this.SalesOrder.PlaceOfUnloading = routeDefaultData.UnloadingLocation;\r\n this.SalesOrder.TransportMethod = routeDefaultData.TransportMode;\r\n if (routeDefaultData.DispatchWarehouse !== null)\r\n this.SalesOrder.DispatchWarehouse = routeDefaultData.DispatchWarehouse;\r\n if (routeDefaultData.MasterCartageContractor !== null)\r\n this.SalesOrder.CartageContractor = routeDefaultData.MasterCartageContractor;\r\n }\r\n }\r\n\r\n public destinationCountryChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n this.SalesOrder.UnLoadingCountry = model;\r\n this.SalesOrder.PlaceOfUnloading = undefined;\r\n this.placeOfUnloadingList = [];\r\n }\r\n\r\n public loadingCountryChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n this.SalesOrder.LoadingCountry = model;\r\n this.SalesOrder.PlaceOfLoading = undefined;\r\n this.placeOfLoadingList = [];\r\n }\r\n\r\n getDocuments(showAll:boolean) {\r\n return this.documentRepositoryService.getDocumentRepository().query({ referenceNumber: this.SalesOrder.OrderNumber, systemType: Enum.EnumSystemType.SalesOrder, ownerEntityId: this.SalesOrder.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\r\n loadStatus() {\r\n this.SOStatus = {\r\n StatusName: this.SalesOrder.StatusCode + ' - ' + this.SalesOrder.StatusName,\r\n Id: this.SalesOrder.Id,\r\n EntityId: this.SalesOrder.OwnerEntityId,\r\n CurrentStatusId: this.SalesOrder.StatusId,\r\n CurrentStatusComments: this.SalesOrder.StatusLastComments,\r\n CurrentStatusStampDate: this.SalesOrder.StatusLastUpdateStampDate,\r\n CurrentStatusStampFullName: this.SalesOrder.StatusLastUpdateStampFullName,\r\n CurrentStatusType: Enum.EnumStatusType.SalesOrder,\r\n EnumStatusType: Enum.EnumStatusType.SalesOrder,\r\n EnumStatusAuthorisationType: Enum.EnumStatusAuthorisationType.SalesOrder,\r\n IsEditable: true\r\n };\r\n }\r\n\r\n downloadToExcel() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n this.salesOrderService.GetSalesOrderDetailSKUListExcel(this.SalesOrder.Id).then(() => {\r\n }, (data) => {\r\n this.generalService.displayMessageHandler(data.data);\r\n });\r\n });\r\n }\r\n\r\n public registerSOSundryApi(gridApi: uiGrid.IGridApi) {\r\n this.apiSOSundryList = gridApi;\r\n\r\n\r\n this.apiSOSundryList.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiSOSundryList.selection.selectRow(gridSelection.row.entity);\r\n \r\n });\r\n }\r\n\r\n canLockdownSundryItem(scope :any){\r\n debugger\r\n\r\n console.log(scope)\r\n\r\n // const id = scope.row.entity.Id;\r\n\r\n // if (id){\r\n \r\n // console.log('On canLockdownSundryItem(): ', id);\r\n // const item = this.SalesOrder.SalesOrderSundryItemsList.find(x => x.Id == id);\r\n // if (item)\r\n // return item.LockdownSI? false : true; \r\n // }\r\n \r\n return true;\r\n }\r\n\r\n public gvwSOSundry: 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.registerSOSundryApi(gridApi) },\r\n cellEditableCondition: () => { return this.SalesOrder ? this.SalesOrder.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 type: \"number\",\r\n cellClass: 'text-right', \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 cellEditableCondition: (scope) => { if (scope.row.entity.LockdownSI) {return false;} else {return true;} },\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.apiSOSundryList.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 cellEditableCondition: (scope) => { if (scope.row.entity.LockdownSI) {return false;} else {return true;} },\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 cellEditableCondition: (scope) => { if (scope.row.entity.LockdownSI) {return false;} else {return true;} },\r\n enableCellEditOnFocus: true,\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 2',\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 cellEditableCondition: (scope) => { if (scope.row.entity.LockdownSI) {return false;} else {return true;} },\r\n enableCellEditOnFocus: true,\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 2',\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: \"CURCODE\",\r\n displayName: \"Currency\",\r\n field: 'Currency',\r\n cellClass: 'text-left',\r\n width: 100,\r\n cellTemplate: `
{{MODEL_COL_FIELD.Code}}
`,\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 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: \"BASESELLVALUE\",\r\n displayName: \"Base Currency Value\",\r\n field: 'BaseCurrencyValue',\r\n cellClass: 'text-right',\r\n cellFilter: 'number: 2',\r\n width: 110,\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\r\n addInlineSundryItem() {\r\n this.SalesOrder.SalesOrderSundryItemsList.push({\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.SalesOrder) {\r\n return this.sundryItemService.getDropdownList(this.SalesOrder.OwnerEntityId,false, 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 routeChanged(model: interfaces.applicationcore.IDropdownModel)\r\n {\r\n if (model) {\r\n this.SalesOrder.Route = model;\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n return this.SaveSalesOrder().then((data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n this.loadSO();\r\n }, (data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n });\r\n }\r\n }\r\n\r\n SaveSalesOrder() {\r\n var defered = this.$q.defer();\r\n\r\n if (this.apiSOSundryList) {\r\n this.SalesOrder.SalesOrderSundryItemsList = _.map(this.apiSOSundryList.rowEdit.getDirtyRows(), 'entity');\r\n } else {\r\n this.SalesOrder.SalesOrderSundryItemsList = [];\r\n }\r\n\r\n if (this.apiSOSkuList) {\r\n this.SalesOrder.SalesOrderDetailSKUList = _.map(this.apiSOSkuList.rowEdit.getDirtyRows(), 'entity');\r\n }\r\n else {\r\n this.SalesOrder.SalesOrderDetailSKUList = [];\r\n }\r\n\r\n //P&R\r\n if (this.apiPRList && this.apiPRList.rowEdit.getDirtyRows().length > 0) {\r\n this.SalesOrder.SalesOrderPRList = _.map(this.apiPRList.rowEdit.getDirtyRows(), (o) => {\r\n return o.entity;\r\n });\r\n } else {\r\n this.SalesOrder.SalesOrderPRList = [];\r\n }\r\n\r\n this.salesOrderService.saveSalesOrder().query(this.SalesOrder, (result: interfaces.applicationcore.IMessageHandler) =>\r\n {\r\n if (!result.HasErrorMessage) {\r\n if (this.apiSOSundryList)\r\n this.apiSOSundryList.rowEdit.setRowsClean(this.SalesOrder.SalesOrderSundryItemsList);\r\n\r\n if (this.apiSOSkuList)\r\n this.apiSOSkuList.rowEdit.setRowsClean(this.SalesOrder.SalesOrderDetailSKUList);\r\n\r\n if (this.apiPRList)\r\n this.apiPRList.rowEdit.setRowsClean(this.SalesOrder.SalesOrderPRList);\r\n }\r\n\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 Save() {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"Save Sales Order?\").then((result) => {\r\n\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => { \r\n return this.SaveSalesOrder().then((data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n this.loadSO();\r\n }, (data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n });\r\n }\r\n });\r\n }\r\n\r\n SaveClose() {\r\n this.generalService.displayConfirmationBox(\"Confirm\", \"Save Sales Order?\").then((result) => {\r\n\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n return this.SaveSalesOrder().then((data) => {\r\n this.$state.go(\"^\");\r\n \r\n }, (failureData) => {\r\n this.$anchorScroll(\"topAnchor\");\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 updateStatus = (newStatusId: number, comments: string) => {\r\n var paramsObject: interfaces.master.IStatusChange = {\r\n referenceId: this.SalesOrder.Id,\r\n newStatusId: newStatusId,\r\n comments: comments\r\n };\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n return this.SaveSalesOrder().then(() => {\r\n this.salesOrderService.changeStatus().save({}, paramsObject, (data: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(data);\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n }, () => {\r\n this.selectedTab = 4;\r\n return this.loadSO();\r\n });\r\n \r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n }, () => {\r\n this.selectedTab = 4;\r\n return this.loadSO();\r\n });\r\n });\r\n }, () => {\r\n return;\r\n });\r\n });\r\n };\r\n \r\n gvwSOSku: 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 enableHorizontalScrollbar: 2,\r\n rowEditWaitInterval: -1,\r\n cellEditableCondition: true,\r\n showGridFooter: true,\r\n onRegisterApi: (gridApi) => { this.registerSkuGridApi(gridApi); },\r\n columnDefs: [{\r\n name: \"EDIT\",\r\n displayName: \"\",\r\n field: \"SalesOrderSKUId\",\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 enableCellEdit: false,\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: \"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: \"PRODCODE\",\r\n displayName: \"Product\",\r\n field: \"ProductCode\",\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: \"SKUCODE\",\r\n displayName: \"* SKU\",\r\n field: \"SKU\",\r\n enableFiltering: true,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: (scope) => { return this.SalesOrder ? this.SalesOrder.LockdownType < 1 && !scope.row.entity.LockdownSKU : 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 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.apiSOSkuList.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: \"SKUDESCRIPTION\",\r\n displayName: \"SKU Description\",\r\n field: \"SKU.Description\",\r\n width: 300,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: (scope) => { return this.SalesOrder ? this.SalesOrder.LockdownType < 2 && !scope.row.entity.LockdownSKU : 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: \"ORDQTY\",\r\n displayName: \"* Order Qty\",\r\n field: \"OrderedQty\",\r\n type: \"number\",\r\n cellFilter: 'number: 5',\r\n width: 90,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: (scope) => { return this.SalesOrder ? this.SalesOrder.LockdownType < 1 && !scope.row.entity.LockdownSKU : true },\r\n cellClass: 'text-right',\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: \"ORDUOM\",\r\n displayName: \"Order UoM\",\r\n field: \"OrderUnitOfMeasureCode\",\r\n width: 90,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`\r\n }, {\r\n name: \"PRCQTY\",\r\n displayName: \"Price Qty\",\r\n cellFilter: 'number: 5',\r\n field: \"PriceQty\",\r\n type: \"number\",\r\n width: 90,\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n }, {\r\n name: \"PRCUOM\",\r\n displayName: \"Price UoM\",\r\n field: \"PricingUnitOfMeasureCode\",\r\n width: 90,\r\n enableCellEdit: false,\r\n enableCellEditOnFocus: false,\r\n filterHeaderTemplate: `\r\n
\r\n
\r\n
\r\n
`\r\n }, {\r\n name: \"BASEPRICE\",\r\n displayName: \"* Base Cost Price\",\r\n field: \"BaseCostPrice\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 125,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: (scope) => {\r\n if (this.SalesOrder)\r\n {\r\n if (this.SalesOrder.LockdownType < 1 && this.SalesOrder.IsCostModelEnforced && !scope.row.entity.LockdownSKU)\r\n {\r\n return true;\r\n }\r\n }\r\n return false;\r\n },\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: \"SUPPRICE\",\r\n displayName: \"* Selling Price\",\r\n field: \"SellingPrice\",\r\n type: \"number\",\r\n cellFilter: \"number: 5\",\r\n cellClass: 'text-right',\r\n width: 125,\r\n enableCellEdit: true,\r\n enableCellEditOnFocus: true,\r\n cellEditableCondition: (scope) => {\r\n if (this.SalesOrder)\r\n {\r\n if (this.SalesOrder.LockdownType >= 1 || this.SalesOrder.IsCostModelEnforced || scope.row.entity.LockdownSKU)\r\n {\r\n return false;\r\n }\r\n }\r\n return true;\r\n },\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: \"SUPVALUE\",\r\n displayName: \"Selling Value\",\r\n field: \"SellingValue\",\r\n type: \"number\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 125,\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n },\r\n {\r\n name: \"VATVALUE\",\r\n displayName: \"VAT Value\",\r\n field: \"VATValue\",\r\n type: \"number\",\r\n cellFilter: \"number: 2\",\r\n cellClass: 'text-right',\r\n width: 125,\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 filter: {\r\n condition: (searchTerm, cellValue) => {\r\n return cellValue >= searchTerm;\r\n }\r\n }\r\n },\r\n {\r\n name: \"CURRENCY\",\r\n displayName: \"Currency\",\r\n field: \"Currency\",\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\r\n registerSkuGridApi(gridApi: uiGrid.IGridApi) {\r\n this.apiSOSkuList = gridApi;\r\n\r\n this.apiSOSkuList.cellNav.on.navigate(this.$scope, (gridSelection) => {\r\n this.apiSOSkuList.selection.selectRow(gridSelection.row.entity);\r\n });\r\n }\r\n\r\n editSKULineClick(sosId: number) {\r\n if (!sosId)\r\n sosId = 0;\r\n\r\n this.$state.go(\"auth.SalesOrders.Update.Sku\", { soId: this.SalesOrder.Id, sosId: sosId });\r\n\r\n }\r\n\r\n\r\n\r\n addInlineSku() {\r\n var soSku = {\r\n sosId: 0,\r\n SalesOrderId: this.SalesOrder.Id,\r\n CurrencyId: this.SalesOrder.Currency.Id,\r\n Currency: this.SalesOrder.Currency.Code\r\n };\r\n\r\n (>(this.gvwSOSku.data)).splice(0, 0, soSku);\r\n }\r\n\r\n detailRemoveClick() {\r\n var selectedRows = >this.apiSOSkuList.selection.getSelectedRows();\r\n\r\n if (selectedRows && selectedRows.length <= 0) {\r\n return;\r\n }\r\n\r\n if (!selectedRows[0].SalesOrderDetailId || selectedRows[0].SalesOrderDetailId === 0) {\r\n this.apiSOSkuList.rowEdit.setRowsClean(selectedRows);\r\n (>(this.gvwSOSku.data)).splice((>(this.gvwSOSku.data)).lastIndexOf(selectedRows[0]), 1);\r\n return;\r\n }\r\n\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 this.removeSKULine(selectedRows[0].SalesOrderDetailId);\r\n }\r\n });\r\n }\r\n\r\n removeSKULine(salesOrderDetailId: number) {\r\n this.salesOrderSKUService.delete().delete({ salesOrderDetailId: salesOrderDetailId }, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n\r\n this.loadSO();\r\n\r\n }, (failureMessage) => {\r\n this.generalService.displayMessageHandler(failureMessage.data);\r\n });\r\n }\r\n\r\n loadSKUs(searchText: string) {\r\n if (this.SalesOrder) {\r\n return this.skuService.getDropdownList(this.SalesOrder.OwnerEntityId, 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 skuChanged(model: interfaces.applicationcore.IDropdownModel, entity: interfaces.sales.ISalesOrderDetailSKUDisplay) {\r\n if (model) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n return this.skuService.getSKU().query({ skuId: model.Id }, (defaults: interfaces.master.ISKU) => {\r\n\r\n entity.SalesOrderId = this.SalesOrder.Id;\r\n entity.SKU = model;\r\n entity.ProductId = defaults.ProductId;\r\n entity.ProductCode = defaults.Product.Code;\r\n entity.OrderUnitOfMeasureCode = defaults.Product.UnitOfMeasureCode;\r\n entity.OrderUoMId = defaults.Product.OrderUnitOfMeasureId;\r\n entity.PricingUnitOfMeasureCode = defaults.Product.UnitOfPricingCode;\r\n entity.PricingUoMId = defaults.Product.PricingUnitOfMeasureId;\r\n entity.OrderedQty = 0;\r\n entity.PriceQty = 0;\r\n entity.SellingPrice = 0;\r\n entity.SellingValue = 0;\r\n\r\n this.$timeout(() => {\r\n this.apiSOSkuList.rowEdit.setRowsDirty([entity]);\r\n });\r\n });\r\n });\r\n }\r\n };\r\n\r\n generateFECNumber_Click()\r\n {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n }, () => {\r\n return this.generateFECNumber().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.loadSO();\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n });\r\n\r\n };\r\n \r\n\r\n generateFECNumber() {\r\n return this.salesOrderService.generateFECNumber().save({\r\n id: this.SalesOrder.Id\r\n }).$promise;\r\n };\r\n\r\n recalculateExchangeRate() {\r\n var defered = this.$q.defer();\r\n\r\n this.salesOrderService.recalculateExchangeRate().save(this.SalesOrder,\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_Click() {\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: 'so.update'\r\n },\r\n () => {\r\n return this.recalculateExchangeRate().then((data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n this.loadSO();\r\n }, (data) => {\r\n this.$anchorScroll(\"topAnchor\");\r\n });\r\n })\r\n }\r\n });\r\n }\r\n\r\n defaultComments_Click() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n }, () => {\r\n return this.defaultComments().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.loadSO();\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n });\r\n\r\n };\r\n\r\n defaultComments() {\r\n return this.salesOrderService.refreshComments().save({\r\n id: this.SalesOrder.Id\r\n }).$promise;\r\n };\r\n\r\n generateSundryItems_Click() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n }, () => {\r\n return this.refreshSundryItems().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.loadSO();\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n });\r\n };\r\n\r\n refreshTariffCodeAndOriginClick() {\r\n this.generalService.displayConfirmationBox(\"Confirm?\", \"This will override any tarrifing for the country of export from the product master, are you sure you want to continue?\").then((result: boolean) => {\r\n if (result) {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n }, () => {\r\n return this.refreshTariffCodeAndOrigin().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.loadSO();\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n });\r\n }\r\n });\r\n };\r\n\r\n refreshTariffCodeAndOrigin(){\r\n return this.salesOrderService.refreshTariffCodeAndOrigin().save({\r\n id: this.SalesOrder.Id\r\n }).$promise;\r\n }\r\n\r\n refreshSundryItems() {\r\n return this.salesOrderService.refreshSundryItems().save({\r\n id: this.SalesOrder.Id\r\n }).$promise;\r\n };\r\n\r\n CostSalesOrder_Click() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n }, () => {\r\n return this.costSalesOrder().then((result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.loadSO();\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n });\r\n });\r\n };\r\n\r\n public costSalesOrder() {\r\n return this.salesOrderService.costSalesOrder().save({\r\n id: this.SalesOrder.Id,\r\n costModelId: this.SalesOrder.CostingModel.CostModel.Id\r\n }).$promise;\r\n }\r\n\r\n public loadCostingDetail() {\r\n return this.salesOrderService.getCostingLineListForMultipleCostings().query({ id: this.SalesOrder.Id }).$promise;\r\n }\r\n\r\n removeSundryLine_Click()\r\n {\r\n var selectedRows = >this.apiSOSundryList.selection.getSelectedRows();\r\n\r\n if (selectedRows && selectedRows.length <= 0) {\r\n return;\r\n }\r\n\r\n this.generalService.displayConfirmationBox(\"Confirm?\", \"Are you sure you want to remove the Sundry Line?\").then((result: boolean) => {\r\n if (result) {\r\n this.removeSundryLine(selectedRows[0].Id);\r\n }\r\n });\r\n }\r\n\r\n removeSundryLine(Id: number) {\r\n this.salesOrderSundryItemService.delete().delete({ sosId: Id }, (result) => {\r\n this.generalService.displayMessageHandler(result);\r\n this.loadSO();\r\n }, (failureMessage) => {\r\n this.generalService.displayMessageHandler(failureMessage.data);\r\n });\r\n }\r\n\r\n printDocuments() {\r\n this.$state.go(\"auth.SalesOrders.Update.Documents\", { soId: this.SalesOrder.Id }); \r\n }\r\n\r\n downloadPRToExcel() {\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'so.update'\r\n },\r\n () => {\r\n this.salesOrderService.GetSalesOrderPRListExcel(this.SalesOrder.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: 'so.update'\r\n }, () => {\r\n return this.salesOrderService.ViewDetailPR().query({\r\n soId: this.SalesOrder.Id,\r\n showOnlyProhibited: this.showOnlyProhibited,\r\n }, (result: Array) => {\r\n\r\n this.SalesOrder.SalesOrderPRList = 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 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.SalesOrder ? this.SalesOrder.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.SalesOrder ? this.SalesOrder.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.SalesOrder ? this.SalesOrder.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.salesOrderService.GetPermitsForDropdown().query({\r\n salesOrderRestrictionId: 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: 'so.update'\r\n }, () => {\r\n return this.SaveSalesOrder().then(() => {\r\n this.salesOrderService.CheckForPR(this.SalesOrder.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: 'so.update'\r\n }, () => {\r\n return this.loadSO();\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.sales.ISalesOrderPRDisplay = 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.sales.ISalesOrderPRDisplay = 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: 'so.update'\r\n }, () => {\r\n return this.SaveSalesOrder().then(() => {\r\n this.salesOrderService.RunQuotaAllocation(this.SalesOrder.Id).save({\r\n soId: this.SalesOrder.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: 'so.update'\r\n }, () => {\r\n return this.loadSO();\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 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.loadSO();\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.gvwSalesOrderAttribute.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 insertCA() {\r\n this.SalesOrder.SalesOrderAttributeList.push({\r\n Id: 0,\r\n Attribute: { Id: 0, AttributeType: 0, IsNotEditable: false },\r\n CategoryType: 833,\r\n CategoryKey: this.SalesOrder.Id,\r\n IsActive: true\r\n });\r\n }\r\n\r\n addAllAttributes() {\r\n var typeId = 833\r\n\r\n this.bsLoadingOverlayService.wrap({\r\n referenceId: 'con.update'\r\n }, () => {\r\n return this.SaveSalesOrder().then(() => {\r\n this.customAttributeService.generateMandatoryAttributes(this.SalesOrder.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: 'so.update'\r\n }, () => {\r\n return this.loadSO();\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 = 833;\r\n \r\n\r\n return this.customAttributeService.GetCustomAttributeByCategory(typeId, this.SalesOrder.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 gvwSalesOrderAttribute: 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 \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.createNewVersion(this.SalesOrder.Id,4,\"Create New Version\");\r\n }\r\n });\r\n }\r\n\r\n createNewVersion(id: number, functionClassificationValueId: number, reason: string) {\r\n this.salesOrderService.CreateNewVersion().save(\r\n { id, functionClassificationValueId, reason },\r\n () => {\r\n //Result\r\n this.loadSO();\r\n }, (failureData) => {\r\n this.generalService.displayMessageHandler(failureData.data);\r\n }); \r\n }\r\n\r\n incoTermChanged(model: interfaces.applicationcore.IDropdownModel) {\r\n this.SalesOrder.Incoterm = model;\r\n this.SalesOrder.TermsOfDelivery = null;\r\n this.termsOfDeliveryList = [];\r\n if (model) {\r\n this.loadTermsOfDeliveries();\r\n }\r\n }\r\n\r\n linkChildOrder(salesOrderId: number){\r\n\r\n\r\n this.$uibModal.open({\r\n animation: true,\r\n size: \"md\",\r\n template: `\r\n
\r\n

Link Child Order

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

\r\n Select a child order to link to this order. The lines from the child order will be copied to this order. Only orders that are not already authorised and not linked to another order will be available for selection\r\n

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

\r\n \r\n

\r\n
\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 modalPopupCtrl {\r\n\r\n messages: interfaces.applicationcore.IMessage[] = [];\r\n disableSubmit: boolean = false;\r\n childSaleOrderModel: interfaces.applicationcore.IDropdownModel;\r\n salesOrderId: number;\r\n\r\n childOrderList: interfaces.applicationcore.IDropdownModel[] = [];\r\n \r\n constructor($scope, private $uibModalInstance: angular.ui.bootstrap.IModalInstanceService,\r\n private salesOrderService: interfaces.sales.ISalesOrderService,\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 $q: ng.IQService,\r\n ) {\r\n this.salesOrderId = salesOrderId;\r\n }\r\n \r\n Submit(){\r\n this.$uibModalInstance.close(this.childSaleOrderModel); \r\n }\r\n\r\n cancel() {\r\n this.$uibModalInstance.close(false);\r\n }\r\n\r\n loadChildOrders() {\r\n var defer = this.$q.defer();\r\n \r\n this.salesOrderService.getChildOrdersList().query({salesOrderId}, (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 },\r\n controllerAs: \"modalPopupCtrl\",\r\n resolve: { \r\n }\r\n }).result.then((result) => {\r\n if (result) { \r\n \r\n return this.bsLoadingOverlayService.wrap({\r\n referenceId: 'childOrder.modal'\r\n }, () => {\r\n\r\n const params = {\r\n parentSalesOrderId: salesOrderId, \r\n childSalesOrderId: result.Id\r\n }\r\n\r\n console.log(params);\r\n\r\n return this.salesOrderService.linkChildOrder().save( params,\r\n (result: interfaces.applicationcore.IMessageHandler) => {\r\n this.generalService.displayMessageHandler(result);\r\n \r\n if (!result.HasErrorMessage) {\r\n \r\n this.loadSO(); \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 }\r\n\r\n angular.module(\"app\").controller(\"salesOrderUpdateCtrl\", controllers.sales.SalesOrderUpdateCtrl);\r\n }\r\n}"]}