Редактор карты зала
Электронные заказы
Отчет по удалениям
This commit is contained in:
miroman-afk
2022-09-22 16:34:02 +03:00
parent 1af2b267f5
commit dcd0e72d1f
43 changed files with 2481 additions and 727 deletions

View File

@@ -7,16 +7,16 @@
<form role="form" class="ng-pristine ng-valid container">
<div class="form-group row">
<div class="col-sm-6">
<input placeholder="Имя" ng-model="client_name" class="form-control"></input>
<input placeholder="Имя" ng-model="client_name" class="form-control">
<p>
</div>
<div class="col-sm-6">
<input ng-model="inputSearch" class="form-control" ui-mask="+375 (99) 999-99-99"></input>
<input ng-model="inputSearch" class="form-control" ui-mask="+375 (99) 999-99-99">
<p>
</div>
<br>
<div class="col-sm-12">
<input placeholder="Адрес" ng-model="client_address" class="form-control"></input>
<input placeholder="Адрес" ng-model="client_address" class="form-control">
<p>
</div>
</div>

View File

@@ -56,7 +56,7 @@
<thead>
<tr>
<th>Наимен.</th>
<th style="width: 120px; text-align: center">Количество</th>
<th style="width: 125px; text-align: center">Количество</th>
<th style="width: 80px; text-align: center">Итог</th>
<th style="width: 20px; text-align: center">#</th>
</tr>
@@ -71,12 +71,15 @@
<td>
<div class="btn-group" role="group">
<button type="button" class="btn btn-secondary btn-sm" ng-click="inOrderDecrement(item, item.item_count)" ng-disabled="item.item_count<=1">-</button>
<button type="button" class="btn btn-secondary btn-sm" ng-model="item.item_count" disabled>{{item.item_count}}</button>
<button type="button" class="btn btn-secondary btn-sm" ng-click="inOrderIncrement(item, item.item_count)">+</button>
<button type="button" class="btn btn-secondary btn-sm" ng-click="inOrderDecrement(item, item.item_count)" ng-disabled="item.item_count<=1" ng-if="item.is_real == 0">-</button>
<button type="button" class="btn btn-secondary btn-sm" ng-click="inOrderDecrement(item, item.item_count)" ng-disabled="item.item_count<=1" ng-if="item.is_real == 1" hidden>-</button>
<button type="button" class="btn btn-secondary btn-sm" ng-model="item.item_count" ng-if="item.is_real == 1" ng-click="enterCount(item, orderId, item.item_id)">{{item.item_count}}</button>
<button type="button" class="btn btn-secondary btn-sm" ng-model="item.item_count" ng-if="item.is_real == 0" disabled>{{item.item_count}}</button>
<button type="button" class="btn btn-secondary btn-sm" ng-click="inOrderIncrement(item, item.item_count)" ng-if="item.is_real == 0">+</button>
<button type="button" class="btn btn-secondary btn-sm" ng-click="inOrderIncrement(item, item.item_count)" ng-if="item.is_real == 1" hidden>+</button>
</div>
</td>
<td>{{ item.item_price * item.item_count }} BYN</td>
<td>{{ (item.item_price * item.item_count) | curr }} BYN</td>
<td>
<button type="button" class="btn danger btn-sm" ng-model="item" ng-click="deleteItem(item)">
<i class="material-icons">&#xE872;</i>
@@ -90,7 +93,6 @@
</div>
</div>
<div class="form-group row">
<div ng-if="totalCount" class="col">Количество товаров: {{totalCount}}</div>
<div ng-if="totalPrice" class="col">Итоговая сумма заказа: {{totalPrice}} BYN</div>
</div>
</form>

View File

@@ -93,4 +93,7 @@
<div class="modal fade" id="edit-selectmenuitem" data-backdrop="true" style="z-index: 1052">
<div ui-include="'../views/orders/selectmenuitem.html'"></div>
</div>
<div class="modal fade" id="edit-item-count" data-backdrop="true" style="z-index: 1052">
<div ui-include="'../views/orders/selectitemcount.html'"></div>
</div>

View File

@@ -1,20 +1,28 @@
<div class="modal-dialog">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Укажите количество</h5>
</div>
<div class="modal-body text-center p-lg">
<form role="form" class="ng-pristine ng-valid container">
<div class="form-group row">
<div class="col-sm-6">
<input class="form-control" placeholder="Количество" type="text" ng-model="item.count">
</div>
<div class="row-col h-v">
<div class="row-cell v-m">
<div class="modal-dialog modal-sm">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Укажите количество</h5>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn success p-x-md" ng-model="itemId" ng-click="addItem(orderId, itemId, item.count)" data-dismiss="modal">Сохранить</button>
<div class="modal-body text-center p-lg">
<form role="form" class="ng-pristine ng-valid container">
<div class="form-group row">
<div class="col-sm-12">
<div class="input-group m-b">
<input type="number" class="form-control" placeholder="Количество" ng-model="item.count">
</div>
</div>
</div>
</form>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
<button type="button" class="btn success p-x-md" ng-model="itemId"
ng-click="updateCount(item, item.count)" data-dismiss="modal">Сохранить
</button>
</div>
</div><!-- /.modal-content -->
</div>
</div>
</div>

View File

@@ -1,104 +0,0 @@
<div class="modal-dialog modal-list">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Выбор элемента меню</h5>
</div>
<div class="modal-body p-lg">
<div ng-if="selectMenuItemParams.currentMenu > 0">
<div class="list-item pointer no_selection" ios-dblclick="upMenuItem()">
<div class="list-left">
<span class="w-30">
<i class="material-icons" style="font-size: 30px;">&#xE2C7;</i>
</span>
</div>
<div class="list-body" style="line-height: 30px">...</div>
</div>
</div>
<div ng-if="selectMenuItemParams.currentMenu == 0">
<div class="list inset" ng-repeat="menu in selectMenuItemParams.menus">
<div class="list-item pointer no_selection" ios-dblclick="openMenuItem(menu)"
sglclick="selectItem(menu.id, 'menu', menu.name)"
ng-class="menu.id == selectedElement.value && selectedElement.type == 'menu' ? 'active' : ''">
<div class="list-left">
<span class="w-30">
<i class="material-icons" style="font-size: 30px;">&#xE2C7;</i>
</span>
</div>
<div class="list-body" style="line-height: 30px">
{{ menu.name }}
</div>
</div>
</div>
</div>
<div ng-if="selectMenuItemParams.currentMenu > 0">
<div class="list inset" ng-repeat="folder in selectMenuItemParams.folders">
<div class="list-item pointer no_selection" ios-dblclick="openFolderItem(folder)"
sglclick="selectItem(folder.id, 'folder', folder.name)"
ng-class="folder.id == selectedElement.value && selectedElement.type == 'folder' ? 'active' : ''">
<div class="list-left">
<span class="w-30">
<i class="material-icons" style="font-size: 30px;">&#xE2C7;</i>
</span>
</div>
<div class="list-body" style="line-height: 30px">
{{ folder.name }}
</div>
</div>
</div>
</div>
<div ng-if="selectMenuItemParams.currentMenu > 0">
<div class="list inset" ng-repeat="item in selectMenuItemParams.items">
<li class="list-item pointer no_selection" ng-click="selectItem(item.id, 'item', item.name)">
<div class="list-left">
<span class="w-30">
<i class="material-icons" style="font-size: 30px;">&#xE893;</i>
</span>
</div>
<div class="list-body">
<div class="container">
<div class="row justify-content-around">
<div class="col-6 col-sm-3">
{{ item.name }} <span class="text-muted">#{{ item.code }}</span>
<small class="block text-muted">{{ item.cosht | curr }} BYN</small>
</div>
<div ng-if="item.realCount" class="col-6 col-sm-4">
<div class="btn-group" role="group">
<button type="button" class="btn btn-secondary" ng-click="decrement(item, item.realCount)" ng-disabled="realCount<=0">-</button>
<button type="button" class="btn btn-secondary" ng-model="item.realCount" disabled>{{item.realCount}}</button>
<button type="button" class="btn btn-secondary" ng-click="increment(item, item.realCount)">+</button>
</div>
</div>
<div ng-if="!item.realCount" class="col-6 col-sm-4">
<div class="btn-group" role="group">
<button type="button" class="btn btn-secondary" ng-click="decrement(item, defaultCount)" ng-disabled="defaultCount<=0">-</button>
<button type="button" class="btn btn-secondary" ng-model="defaultCount" disabled>{{defaultCount}}</button>
<button type="button" class="btn btn-secondary" ng-click="increment(item, defaultCount)">+</button>
</div>
</div>
<div class="col-6 col-sm-3">
<button ng-if="!item.realCount" type="button" class="btn btn btn-success p-x-md" ng-model="orderId" ng-click="addItem(orderId, item.code, defaultCount)">+</button>
<button ng-if="item.realCount" type="button" class="btn btn btn-success p-x-md" ng-model="orderId" ng-click="addItem(orderId, item.code, item.realCount)">+</button>
</div>
</div>
</div>
</div>
<hr>
</li>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn dark-white p-x-md" data-dismiss="modal">Закрыть</button>
</div>
</div>
</div>

View File

@@ -20,60 +20,69 @@
<div ng-if="selectMenuItemParams.currentMenu == 0">
<div class="list inset" ng-repeat="menu in selectMenuItemParams.menus">
<div class="list-item pointer no_selection" ios-dblclick="openMenuItem(menu)"
sglclick="selectItem(menu.id, 'menu', menu.name)"
ng-class="menu.id == selectedElement.value && selectedElement.type == 'menu' ? 'active' : ''">
<div class="list-left">
sglclick="selectItem(menu.id, 'menu', menu.name)"
ng-class="menu.id == selectedElement.value && selectedElement.type == 'menu' ? 'active' : ''">
<div class="list-left">
<span class="w-30">
<i class="material-icons" style="font-size: 30px;">&#xE2C7;</i>
</span>
</div>
</div>
<div class="list-body" style="line-height: 30px">
{{ menu.name }}
<div class="list-body" style="line-height: 30px">
{{ menu.name }}
</div>
</div>
</div>
</div>
</div>
<div ng-if="selectMenuItemParams.currentMenu > 0">
<div class="list inset" ng-repeat="folder in selectMenuItemParams.folders">
<div class="list-item pointer no_selection" ios-dblclick="openFolderItem(folder)"
sglclick="selectItem(folder.id, 'folder', folder.name)"
ng-class="folder.id == selectedElement.value && selectedElement.type == 'folder' ? 'active' : ''">
<div class="list-left">
<div ng-if="selectMenuItemParams.currentMenu > 0">
<div class="list inset" ng-repeat="folder in selectMenuItemParams.folders">
<div class="list-item pointer no_selection" ios-dblclick="openFolderItem(folder)"
sglclick="selectItem(folder.id, 'folder', folder.name)"
ng-class="folder.id == selectedElement.value && selectedElement.type == 'folder' ? 'active' : ''">
<div class="list-left">
<span class="w-30">
<i class="material-icons" style="font-size: 30px;">&#xE2C7;</i>
</span>
</div>
</div>
<div class="list-body" style="line-height: 30px">
{{ folder.name }}
<div class="list-body" style="line-height: 30px">
{{ folder.name }}
</div>
</div>
</div>
</div>
<div class="row m-b" ng-if="selectMenuItemParams.currentMenu > 0" >
<div class="col-sm-4 col-xs-4" ng-repeat="item in selectMenuItemParams.items">
<div class="box">
<div class="box-header primary">
<h3>{{ item.cosht | curr }} BYN</h3>
<div class="box-tool">
<ul class="nav">
<li class="nav-item inline">
<a class="nav-link" ng-if="!item.realCount" type="button" class="btn btn-secondary" ng-model="orderId"
ng-click="addItem(orderId, item.code, defaultCount)">
<i class="material-icons md-18">&#xe854;</i>
</a>
</li>
</ul>
</div>
</div>
<div class="box-body">
<p class="m-0 text-left text-break" style="word-break: break-word;">{{ item.name }}</p>
</div>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn dark-white p-x-md" data-dismiss="modal">Закрыть</button>
</div>
</div>
<div class="container">
<div class="row justify-content-center inset" ng-if="selectMenuItemParams.currentMenu > 0">
<div class="col-xs-6" ng-repeat="item in selectMenuItemParams.items">
<button ng-if="!item.realCount" type="button" class="btn btn-secondary" ng-model="orderId" ng-click="addItem(orderId, item.code, defaultCount)" style="width: 160px; height: 130px; white-space: unset;">
<p>
<div style="word-wrap: break-word;">{{ item.name }}</div>
</p>
<p>
<small class="block text-muted">{{ item.cosht | curr }} BYN</small>
</p>
</button>
<p> </p>
</div>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn dark-white p-x-md" data-dismiss="modal">Закрыть</button>
</div>
</div>
</div>

View File

@@ -13,7 +13,7 @@
<div class="table-responsive" ng-if="report_delete.length > 0">
<table class="table table-bordered" ng-repeat="report in report_delete">
<thead>
<th>Смена#{{ report.shift_id }} Заказ #{{ report.order_code }}. {{ report.time }}</th>
<th>Смена#{{ report.shift_id }} Заказ #{{ report.order_code }}</th>
</thead>
<tbody>
@@ -21,8 +21,10 @@
<td>
<h6>{{ item.dish_name }}
<small>
(<strong>{{ item.count }}</strong> на сумму
<strong>{{ item.sum | curr }} BYN</strong>)
<p>Время удаления: <strong>{{item.time}}</strong></p>
<p>Цена товара: <strong>{{item.price}} BYN</strong></p>
<p>Количество: <strong>{{item.count}} шт</strong></p>
<p>На сумму: <strong>{{item.sum}} BYN</strong></p>
</small>
</h6>
@@ -37,9 +39,10 @@
</td>
</tr>
</tbody>
<hr>
</table>
<hr/>
<hr>
<table class="table table-bordered">
<tbody>

View File

@@ -0,0 +1,126 @@
<div id="container-places" style="bottom: 20px; right: 20px; position: fixed;">
<div class="m-b">
<div class="btn-group">
<button id="create_place" type="button" class="btn info btn-outline b-info">Добавить зал</button>
<button id="back" type="button" class="btn info p-x-md pull-left" data-toggle="modal" data-target="#back_places">Назад</button>
<button id="create_table" type="button" class="btn info btn-outline b-info">Добавить стол</button>
<button id="save_tables" type="button" class="btn info btn-outline b-info" ng-click="saveTables(place_id, tables)">Сохранить</button>
<button id="save_places" type="button" class="btn info btn-outline b-info" ng-click="savePlaces(roommap)">Сохранить</button>
</div>
</div>
</div>
<div id="back_places" class="modal confirm-box" data-backdrop="true" style="z-index: 1052">
<div class="bottom white b-b" style="height: 90px">
<div class="confirm-box-body p-lg">
<p>Сохранить изменения в текущем зале?</p>
</div>
<div class="confirm-box-footer">
<button type="button" class="btn dark-white p-x-md" data-dismiss="modal" ng-click="back()">Нет</button>
<button type="button" class="btn danger p-x-md" ng-model="tables" data-dismiss="modal" ng-click="saveTables(place_id, tables)">Да</button>
</div>
</div>
</div>
<div class="padding" id="places">
<div class="box">
<div class="padding">
<h4>Список залов
<ul class="nav pull-right">
<li class="nav-item ">
<span bs-tooltip="" title="FAQ" class="text-muted inline p-a-xs m-r-sm ng-scope">
<h5><i class="fa fa-question"></i></h5>
</span>
</li>
</ul>
</h4>
<hr/>
<div class="table-responsive">
<table class="table table-bordered m-a-0">
<thead>
<th ng-repeat="place in roommap">
<button type="button" class="btn info btn-block" sglclick="getTables(place.place_id)"
ios-dblclick="editPlace(place.place_id)" context-menu
data-target="place-{{ place.place_id }}">{{place.place_name}}
</button>
<div class="dropdown" id="place-{{ place.place_id }}" style="position: fixed; z-index: 2;">
<ul class="dropdown-menu" role="menu">
<li>
<a class="pointer" role="menuitem" tabindex="1"
ng-click="editPlace($index, place)">
Редактировать
</a>
<a class="pointer" role="menuitem" tabindex="1"
ng-click="deletePlace($index)">
Удалить
</a>
</li>
</ul>
</div>
</th>
</thead>
</table>
</div>
</div>
</div>
</div>
<div class="padding" id="background_1" ng-style="{'max-width':(maxWidth) + 'px', 'width':(screenWidth) + 'vw'}">
<div class="box">
<div class="padding" id="background" >
<!--<div id="tables" class="box" ng-style="{'height':(windowHeight) + 'px'}">-->
<div id="tables" class="box" ng-style="{'height':(windowHeight) + 'px'}" data-target="tables_editor" context-menu>
<div class="dropdown" id="tables_editor" style="position: fixed; z-index: 2;">
<ul class="dropdown-menu" role="menu">
<li>
<a class="pointer" role="menuitem" tabindex="1"
ng-click="alignTables()">
Выровнять по сетке
</a>
</li>
</ul>
</div>
<div ng-repeat="table in tables" ng-model="tables" context-menu>
<div id="{{ 'table_' + $index }}" class="demo-div" draggable resize context-menu
data-target="table-{{ $index }}"
ng-mouseup="getCoords($event, $index, table.table_id, table.place_id)"
ng-style="{'width':'' + table.width * percentWidth + 'px', 'height':'' + table.height * percentHeight + 'px', 'top':'calc(' + top + 'px + ' + table.x * percentHeight + 'px)', 'left': 'calc(' + left + 'px + ' + table.y * percentWidth + 'px)'}"
style="position: fixed;cursor: default;font-family: sans-serif;text-align: center;background-color: #FFFFFF;border: 2px solid #183147; z-index: 1;">
<span class="demo-text">
{{table.name}} {{table.table_id}}
</span>
</div>
<div class="dropdown" id="table-{{ $index }}" style="position: fixed; z-index: 2;">
<ul class="dropdown-menu" role="menu">
<li>
<a class="pointer" role="menuitem" tabindex="1"
ng-click="duplicateTable($index, table.place_id)">
Дублировать
</a>
<a class="pointer" role="menuitem" tabindex="2"
ng-click="editTable($index, table)">
Редактировать
</a>
<a class="pointer" role="menuitem" tabindex="3"
ng-click="deleteTable($index)">
Удалить
</a>
</li>
</ul>
</div>
</div>
</div>
</div>
</div>
</div>
<div class="modal fade" id="table-edit" data-backdrop="true">
<div ui-include="'../views/roommap/items/edit.html'"></div>
</div>
<script type="text/javascript" src="/libs/js/moment/locale/ru.js"></script>

View File

@@ -0,0 +1,70 @@
<div class="modal-dialog" id="animate" ui-class="fade-down-big">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">Редактирование стола</h5>
</div>
<div class="modal-body text-center p-lg">
<div class="box">
<div class="box-header">
<small>Номер стола должен отличаться от существующих.</small>
<small>Высота и ширина стола должны быть не меньше 80px.</small>
</div>
<div class="box-divider m-0"></div>
<div class="box-body">
<form role="form">
<div class="form-group row">
<label for="inputNumber" class="col-sm-2 form-control-label">Номер</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="inputNumber" placeholder="{{tableId}}"
ng-model="tableId"/>
</div>
</div>
<div class="form-group row">
<label for="inputName" class="col-sm-2 form-control-label">Имя</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="inputName"
ng-model="tableName"
placeholder="{{tableName}}"/>
</div>
</div>
<div class="form-group row">
<label for="inputWidth" class="col-sm-2 form-control-label">Ширина</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="inputWidth" placeholder="{{tableWidth}}"
ng-model="tableWidth"/>
</div>
</div>
<div class="form-group row">
<label for="inputHeight" class="col-sm-2 form-control-label">Высота</label>
<div class="col-sm-10">
<input type="text" class="form-control" id="inputHeight" placeholder="{{tableHeight}}"
ng-model="tableHeight"/>
</div>
</div>
<div class="form-group row">
<label for="inputType" class="col-sm-2 form-control-label">Вид стола</label>
<div class="col-sm-10">
<select class="form-control c-select">
<option>Прямоугольный</option>
<option>Круглый</option>
</select>
</div>
</div>
</form>
</div>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn dark-white p-x-md" data-dismiss="modal">Отмена</button>
<button type="button" class="btn danger p-x-md" data-dismiss="modal"
ng-click="saveTable(tableIndex, tableId, tableName, tableWidth, tableHeight)">Сохранить
</button>
</div>
</div><!-- /.modal-content -->
</div>
<script type="text/javascript" src="/libs/js/moment/locale/ru.js"></script>