Crewshop Schiphol
The crewshop at Schiphol is a shop were crew (pilots, steward) can buy all kind of product like tobacco, perfume, alcohol and cosmetics. The shop is located in the flight center at Schiphol. B&S took ownership in 2014 from AviaPartner.
For the crewshop Bovertis developed a few components:
-
Crewshop handling in Resolut POS 2
-
Server component with website
-
Integration in Resolut BOS (check)
The crewshop at Schiphol provides two type of sales:
-
products that can be bought in the shop and taken immediately
-
product that can be bought but are delivered from the warehouse
When the purchase is started, the cashier must select to start a warehouse sale or shop sale. Warehouse sales are booked on a flight number, shop sales not. It is not allowed to mix sales, responsibility for the cashier.
The warehouse services should process all tickets (sales), if there is not PosTicketAviaPartnerSale
object on it, do nothing.
If the object is there, we should create or update the order for this specific flight.
The warehouse service should also track opened orders (flights) and close them one hour (configurable) before departure. The picking order is printed.
Technical info
The POS is using the AirportCrewShopPlugin
which can be found in $/ResolutPOS/AddOns/ResolutV2Plugins.
The plugin is calling the CrewShopWebService
, in fact GetAllFlightOrders
, CloseFlightOrder
and OpenFlightOrders
WS methods.
Codebase
History
The crewshop at Schiphol changed owner from Avia partner to B&S.
These are the changes for Resolut POS:
the plugin is using a webservice to post crew sales to the server
use parameter CrewShopPlugin_url
to set the endpoint on the server (test or prod)
the parameters AviaBackoffice
are changed to CrewshopBackoffice
Set parameter AllowNoFlightSales
to 1, this allows sales without a boarding card.
Stocks
The POS can check and show the stock levels of all products on the receipt. The idea is to do this in real time (background), but it is informal only. Theoretically it is possible stock is 0 (or <0) while there is enough stock in the warehouse.
POS
(Shops sales are not in scope for the crewshop)
When a warehouse sale is started, the POS will check the flight data on the server (not in the local database) and check if the flight is not closed (=does not exists or is open). If not closed the user can proceed.
When the transaction is paid the sale is finalized. We have two options:
a- a plugin will update the stocks in the table, the server will poll for new tickets
b- we pass the ticket to a webservice method and the webservice will update the stocks and open/create the flight
Network
The server is located in the datacenter in Dordrecht, Eindhoven and Schiphol Crewshop are in a VPN LAN.
The users are working on a RDP in Amsterdam on the server in Dordrecht, they can print from RDP to the local printers. So we can print from the server in Dordrecht to a printer on Schiphol.
Remark
-
When the print fails we should panic otherwise the order will not be delivered.
-
Remind that the crewshop is just a shop within BOS (67)
Parameters
ParameterName | Description |
---|---|
CrewshopSchiphol |
= 1 This enables the crewshop start screen (flight number input) |
CrewShopBackofficeServer |
|
CrewShopBackofficeUser |
|
CrewShopBackofficePassword |
|
CrewShopBackofficeDatabase |
These parameters are used to contact the stock information |
CrewShopStockQuery |
Overrides the default stock query |
AllowNoFlightSales |
= 1 Allows sales without entering a flight number (shop sale) |
CrewShopPlugin_URL |
|
TEST SK: | |
http://172.20.16.92:9098/CrewShopWebService | |
TEST B&S: | |
http://drdbovertistest.bs-international.nl:8080/CrewShopWebService | AirportCrewShopPlugin.dll is needed in C:\POS\Plugins folder.Parameter for CrewShop web service must be set (web service is used for loading of flight orders, sending crew sale tickets, and closing/reopening of flight orders).Sample parameter value:<parameter name=“CrewShopPlugin_URL”>http://172.20.16.92:9098/CrewShopWebService</parameter> |
Commands
AppCrewshopStockView - Salesscreen, shows stock information
Crew Shop Service - installation & configuration
To install the windows service for Crew Shop you must run this command as Administrator: CrewShopService.exe install. It will install the service.
Then you must allow configured ports (on which web service / web portal will be self-hosted). See below: sample configuration…
Configure all the required parameters (configuration file: CrewShopService.exe.config).
Run the service (from: services.msc)
Sample configuration file (B&S test)
CrewShopService_BS_configuration.xml
Allow ports on which WS/web will be self-hosted, i.e. 8080, 9090 or different ports if these are not available.
B&S network - TEST environment
To access B&S TEST environment you must login to their VPN (use Internet Explorer).
-
navigate to https://webportal.bs-gg.com and login as User: bovertis_admin Passwd: B0v3rt1s
-
Select Bovertis Test server and login as User: blijdorp\bovertis_admin
On the server go to D:\APPLICATIONS\ResolutBosSuite\CrewShopService where CrewShopSvc TEST is installed.
Logs - folder for storing logs
Stock - folder which is now configured in config. file to load Stock.CSV from this folder, later stock will be loaded from some file share so this folder will not be needed
Tickets - when ticket is sent from POS plugin to CrewShopWebService it is stored in this folder, after processing (creating flight orders from PosTicket) it is deleted
Web\Root\Reports - reports are generated & printed automatically (for closed orders), they are stored in this folder so that they are accessible from web portal (see sample report below).
Web\Root - web portal files & folders (css/scripts/html) are here
To copy some files to B&S server you need to copy it to Bovertis FTP first (ftp://support.bovertis.nl, \BOV-SUPPORT), User: PosNet
Web portal (first prototype)
There is also web portal deployed together with web service (self-hosted by CrewShopService) for displaying dashboard with upcoming flights, opened/closed orders & reporting…
Web portal SK:
http://172.20.16.92:9099/
Web portal B&S:
http://drdbovertistest.bs-international.nl:9090/
Dashboard
It will display order details (new page), print order will display generated report, close order will close the order from web portal.
Flights - displaying next 10 upcoming flights on the current day
Orders
-
opened flight orders (not closed yet - you can do crew sales on these flights)
-
closed flight orders (crew sale should not be possible - only when order is re-opened). Reports are generated automatically for closed orders.
Reports - you can display generated PDF report & print it from the browser.
Generated report - after clicking “Show PDF” report will be displayed in the browser from where it can be printed.
Later there will be automatic printing implemented to configured printer & automatic e-mailing of generated reports to specified e-mail addresses.