forked from ury-erp/pos
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit ae5c939
Showing
78 changed files
with
9,127 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,90 @@ | ||
|
||
name: CI | ||
|
||
on: | ||
push: | ||
branches: | ||
- develop | ||
pull_request: | ||
|
||
concurrency: | ||
group: develop-ury_pos-${{ github.event.number }} | ||
cancel-in-progress: true | ||
|
||
jobs: | ||
tests: | ||
runs-on: ubuntu-latest | ||
strategy: | ||
fail-fast: false | ||
name: Server | ||
|
||
services: | ||
mariadb: | ||
image: mariadb:10.6 | ||
env: | ||
MYSQL_ROOT_PASSWORD: root | ||
ports: | ||
- 3306:3306 | ||
options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 | ||
|
||
steps: | ||
- name: Clone | ||
uses: actions/checkout@v2 | ||
|
||
- name: Setup Python | ||
uses: actions/setup-python@v2 | ||
with: | ||
python-version: '3.10' | ||
|
||
- name: Setup Node | ||
uses: actions/setup-node@v2 | ||
with: | ||
node-version: 14 | ||
check-latest: true | ||
|
||
- name: Cache pip | ||
uses: actions/cache@v2 | ||
with: | ||
path: ~/.cache/pip | ||
key: ${{ runner.os }}-pip-${{ hashFiles('**/*requirements.txt', '**/pyproject.toml', '**/setup.py', '**/setup.cfg') }} | ||
restore-keys: | | ||
${{ runner.os }}-pip- | ||
${{ runner.os }}- | ||
- name: Get yarn cache directory path | ||
id: yarn-cache-dir-path | ||
run: 'echo "::set-output name=dir::$(yarn cache dir)"' | ||
|
||
- uses: actions/cache@v2 | ||
id: yarn-cache | ||
with: | ||
path: ${{ steps.yarn-cache-dir-path.outputs.dir }} | ||
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }} | ||
restore-keys: | | ||
${{ runner.os }}-yarn- | ||
- name: Setup | ||
run: | | ||
pip install frappe-bench | ||
bench init --skip-redis-config-generation --skip-assets --python "$(which python)" ~/frappe-bench | ||
mysql --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL character_set_server = 'utf8mb4'" | ||
mysql --host 127.0.0.1 --port 3306 -u root -proot -e "SET GLOBAL collation_server = 'utf8mb4_unicode_ci'" | ||
- name: Install | ||
working-directory: /home/runner/frappe-bench | ||
run: | | ||
bench get-app ury_pos $GITHUB_WORKSPACE | ||
bench setup requirements --dev | ||
bench new-site --db-root-password root --admin-password admin test_site | ||
bench --site test_site install-app ury_pos | ||
bench build | ||
env: | ||
CI: 'Yes' | ||
|
||
- name: Run Tests | ||
working-directory: /home/runner/frappe-bench | ||
run: | | ||
bench --site test_site set-config allow_tests true | ||
bench --site test_site run-tests --app ury_pos | ||
env: | ||
TYPE: server |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
.DS_Store | ||
*.pyc | ||
*.egg-info | ||
*.swp | ||
tags | ||
ury_pos/docs/current | ||
node_modules/ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
# Features of URY POS | ||
|
||
**POS Opening and Closing** | ||
|
||
- In URY POS , POS opening and closing can be done directly from the URY POS interface. | ||
|
||
- Triggering `Profile icon` will list POS Opeing and POS Closing buttons | ||
clicking it will direct to the respective pages | ||
|
||
- It's important to note that if no POS Opening is initiated for the day, URY POS will not allow order taking, ensuring precise tracking of restaurant operations. | ||
|
||
- POS Closing: | ||
- At the end of the day, the cashier can close PoS by creating a POS Closing Voucher. | ||
- Select the POS Opening Entry to retrieve all sales registered. | ||
- On creating a POS Closing Voucher, all the POS invoices fetched for the selected period will be consolidated into one final Sales Invoice. The status of all the POS invoices will change from 'Paid' to 'Consolidated' once they are successfully consolidated into a sales invoice on closing. | ||
|
||
|
||
|
||
**Table Selection** | ||
|
||
- URY POS table order taking workflow begins with table selection. | ||
|
||
- Tables are visually represented as cards, providing flexibility in the selection process | ||
|
||
- On the top left side of table have badges that indicated table status: | ||
- Attention(Red): Indicates the table occupied for more than one hour. | ||
- Occupied(Yellow): Indicates occupied tables. | ||
- Free(Green):Signifies available tables | ||
- Active(Blue): Highlights the currently selected table. | ||
|
||
- Occupied table propeties | ||
- On the top right of table has button that contains a drop down for table and captain transfer | ||
- Table Transfer : Transfer an order from one table to another after placing the initial order. Clear the original table, and occupy the new table. | ||
- Captain Transfer : Enables the transfer of an order from one captain to another after placing an order at a table. | ||
- `Bill` button to generate a bill against the order, clearing the table. | ||
- `Eye icon` button for navigate to the order page | ||
- Table time is displayed within each card | ||
- On selecting a table with an existing order, will automatically navigate to the menu page. | ||
|
||
|
||
**Menu Selection** | ||
|
||
- Search bar to quickly locate specific menu items, enhancing speed and accuracy during busy periods. | ||
|
||
- Menu filtering with Button All - Display all menu item. Priority - displays only prioritized items. | ||
|
||
- Menus are presented in a card format which includes the menu name, selected quantity of the item , and +/- buttons for adjusting quantities. | ||
|
||
- For precise quantity adjustments, users can click on the quantity display, triggering a dialogue box for easy modification. | ||
|
||
**Order Taking** | ||
|
||
- This is the Key step of restaurant work flow. | ||
|
||
- Takeaway order can be done by directly selecting menu items and adding customer details | ||
|
||
- Input customer details and the number of guests (Pax Count) in Customer Info Tab. | ||
|
||
- For returning customers, URY POS displays their top three ordered items in Favourite item section. | ||
|
||
- In Order info page show selected menu items in a list view. | ||
|
||
- Quantity adjusted can be adjusted from here also by clicking on the quantity field. | ||
|
||
- Action Buttons in Table Order are , | ||
|
||
- Update : Used to generate an order, ie. creating a POS invoice in draft status. | ||
- Cancel : To cancel order (draft invoice) and clear the table. | ||
|
||
- After triggering the `Update` Button, a restaurant order is placed, and the POS invoice ID is then updated in the 'Inovice' field for reference. | ||
|
||
|
||
**Order Print** | ||
|
||
- URY offers three printing methods. | ||
|
||
- QZ printing | ||
|
||
- You may need first install [QZ Tray](https://qz.io/download/) if is not already on your system | ||
- You have to create a file called privateKey.js and insert your private key in this file | ||
- To setup QZ , POS Profile List > POS Profile > QZ Print > QZ Host to enable QZ printing. | ||
- If there are multiple devices for printing , Private IP of the machine hosting the QZ server is given as 'QZ Host' | ||
- Otherwise, use 'localhost' or 127.0.0.1 in the 'QZ Host' data field. | ||
|
||
- Network Printing | ||
|
||
- Network printing is an alternative option, which functions when QZ printing is in a disabled state. | ||
- To setup it POS Profile List > POS Profile > Printer Settings | ||
- At the table, tsetting for the printer name is provided with the checkbox 'Bill' set to true. | ||
- The printer name correspond to printer configured in [Network Printer Settings](https://docs.erpnext.com/docs/user/manual/en/print-settings#3-network-printer-print-server) in ERPnext. | ||
|
||
- Websocket Printing | ||
|
||
- If Either of QZ and Network Printing are not configured , URY POS will call websocket printing. | ||
- Page can be accessed in `/app/websocket-print` in your browser | ||
|
||
**Invoice Settlement** | ||
|
||
- Click the `Invoice icon` to navigate to the recent order page. Invoices can be settled by selecting individual invoices from the list. | ||
|
||
- Available filters in Recent order | ||
- Draft : List POS invoices in draft status that are printed from table orders and those taken from takeaway orders. | ||
- Unbilled : POS invoices in draft and not billed from the Table Order. | ||
- Paid : Contains paid POS invoice | ||
- Consolidated : Shows consolidated POS invoice | ||
- Return : Shows return POS invoice | ||
|
||
- Available Buttons in Recent order | ||
- Edit:To edit draft POS invoice | ||
- Print Receipt:To print POS invoice | ||
- Make Payment:To make payment of POS invoice.Payment supports multiple payment options. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,33 @@ | ||
## URY POS Installation | ||
|
||
**Prerequisite Setup:** | ||
- Before using URY POS, ensure you have URY installed. | ||
- Follow the [URY installation guide](https://github.com/ury-erp/ury/blob/main/INSTALLATION.md) for the installation process. | ||
|
||
|
||
### To install URY POS , follow these steps: | ||
|
||
**Create New site:** | ||
|
||
```sh | ||
$ bench new-site sitename | ||
``` | ||
|
||
**Install the URY POS app to your bench:** | ||
|
||
```sh | ||
$ bench get-app ury_pos https://github.com/ury-erp/pos.git | ||
``` | ||
|
||
**To install URY POS into site:** | ||
|
||
```sh | ||
$ bench --site sitename install-app ury_pos | ||
``` | ||
|
||
**Migrate the site:** | ||
|
||
```sh | ||
$ bench --site sitename migrate | ||
``` | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
include MANIFEST.in | ||
include requirements.txt | ||
include *.json | ||
include *.md | ||
include *.py | ||
include *.txt | ||
recursive-include ury_pos *.css | ||
recursive-include ury_pos *.csv | ||
recursive-include ury_pos *.html | ||
recursive-include ury_pos *.ico | ||
recursive-include ury_pos *.js | ||
recursive-include ury_pos *.json | ||
recursive-include ury_pos *.md | ||
recursive-include ury_pos *.png | ||
recursive-include ury_pos *.py | ||
recursive-include ury_pos *.svg | ||
recursive-include ury_pos *.txt | ||
recursive-exclude ury_pos *.pyc |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
# URY POS - Open Source Restaurant Management System | ||
|
||
URY POS is a light weight and easy to use web-based application designed for streamlined order management. It serves as an efficient tool for both cashiers and captains, facilitating order processing at the cash counter and tables.It supports various order types, including dine-in, delivery, and takeout. URY POS is compatibile with a wide range of devices, including desktops, tablets, and smartphones. | ||
|
||
> :warning: Warning : | ||
> URY POS is currently in active development, and we are continuously making changes, updates, and working on new features and improvements. Please be aware that until a stable release is reached, backward compatibility is not guaranteed. We make every effort to maintain compatibility. | ||
> :information_source: Note : | ||
> Our system has been successfully running at scale, serving over 10+ outlets for the past 10 months. | ||
- [Part of the URY Ecosystem](https://github.com/ury-erp/ury#readme) | ||
|
||
## Features | ||
|
||
below is the key Features of URY POS | ||
|
||
1. *POS Opening and Closing* | ||
2. *Table Selection* | ||
3. *Menu Selection* | ||
4. *Order Taking* | ||
5. *Order Print* | ||
6. *Invoice Settlement* | ||
|
||
For more comprehensive list of features [go here.](FEATURES.md) | ||
|
||
## Getting Started | ||
|
||
To start using URY POS, you need to first install URY and then setup your first restaurant. | ||
|
||
1. [URY POS Installation Guide](INSTALLATION.md). | ||
|
||
2. [URY POS Setup Instructions](SETUP.md). | ||
|
||
|
||
## About | ||
|
||
URY POS is developed by [Tridz Technologies Pvt Ltd](https://tridz.com) and supported by [Frappe](http://frappe.io). |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
URY POS Setup: | ||
|
||
- URY POS follows the same configurations as URY. | ||
- Refer to the [URY Setup](https://github.com/ury-erp/ury/blob/main/SETUP.md) for basic configuration details. | ||
- To access URY POS: | ||
- Navigate to `/urypos/Table` | ||
- Login to URY POS. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
License: MIT |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
{ | ||
"name": "ury_pos", | ||
"version": "1.0.0", | ||
"description": "URY POS", | ||
"main": "index.js", | ||
"scripts": { | ||
"test": "echo \"Error: no test specified\" && exit 1", | ||
"dev": "cd urypos && yarn dev", | ||
"build": "cd urypos && yarn build" | ||
}, | ||
"keywords": [], | ||
"author": "", | ||
"license": "ISC" | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
# frappe -- https://github.com/frappe/frappe is installed via 'bench init' |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
from setuptools import setup, find_packages | ||
|
||
with open("requirements.txt") as f: | ||
install_requires = f.read().strip().split("\n") | ||
|
||
# get version from __version__ variable in ury_pos/__init__.py | ||
from ury_pos import __version__ as version | ||
|
||
setup( | ||
name="ury_pos", | ||
version=version, | ||
description="URY POS", | ||
author="Tridz Technologies", | ||
author_email="[email protected]", | ||
packages=find_packages(), | ||
zip_safe=False, | ||
include_package_data=True, | ||
install_requires=install_requires | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
|
||
__version__ = '0.0.1' | ||
|
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
from frappe import _ | ||
|
||
def get_data(): | ||
return [ | ||
{ | ||
"module_name": "URY POS", | ||
"type": "module", | ||
"label": _("URY POS") | ||
} | ||
] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,10 @@ | ||
""" | ||
Configuration for docs | ||
""" | ||
|
||
# source_link = "https://github.com/[org_name]/ury_pos" | ||
# headline = "App that does everything" | ||
# sub_heading = "Yes, you got that right the first time, everything" | ||
|
||
def get_context(context): | ||
context.brand_html = "URY POS" |
Oops, something went wrong.