update workflow
This commit is contained in:
@@ -57,8 +57,8 @@ root.Qrammer =
|
|||||||
else
|
else
|
||||||
eval(res)
|
eval(res)
|
||||||
return
|
return
|
||||||
alert(res['message']) if res['message'] && !res['ok']
|
window.location = '/' if res['message'] && !res['ok']
|
||||||
alert(res['message']) if res['message'] && res['ok']
|
window.location = '/view_active_list' if res['ok']
|
||||||
load_active_order_list: (supplier_id) ->
|
load_active_order_list: (supplier_id) ->
|
||||||
$.get('/suppliers/'+supplier_id+'/active_order_list.json', (res) ->
|
$.get('/suppliers/'+supplier_id+'/active_order_list.json', (res) ->
|
||||||
body = $('#active-orders-table tbody')
|
body = $('#active-orders-table tbody')
|
||||||
@@ -119,6 +119,28 @@ root.Qrammer =
|
|||||||
row.append(td_buttons)
|
row.append(td_buttons)
|
||||||
#foot.append('<tr><td></td><td class="currency"><strong>'+Qrammer.currency(res.total_amount)+'</strong></td></tr>');
|
#foot.append('<tr><td></td><td class="currency"><strong>'+Qrammer.currency(res.total_amount)+'</strong></td></tr>');
|
||||||
)
|
)
|
||||||
|
active_user_list: (list_id) ->
|
||||||
|
$.get('/lists/'+list_id+'/current.json', (res) ->
|
||||||
|
body = $('#active-list-table tbody')
|
||||||
|
foot = $('#active-list-table tfoot')
|
||||||
|
body.find('tr').remove()
|
||||||
|
foot.find('tr').remove()
|
||||||
|
if !res.orders && !res.orders.length
|
||||||
|
alert('No orders in list')
|
||||||
|
return
|
||||||
|
for order in res.orders
|
||||||
|
order_txts = []
|
||||||
|
row = $('<tr></tr>').appendTo(body)
|
||||||
|
row.addClass(order.state)
|
||||||
|
#if(order.state == 'placed') row.addClass('info');
|
||||||
|
#if(order.state == 'delivered') row.addClass('success');
|
||||||
|
row.addClass('error') if order.state == 'cancelled'
|
||||||
|
for product in order.products
|
||||||
|
order_txts.push(product.name + ' (' + product['number'] + ')')
|
||||||
|
row.append($('<td></td>').text(order_txts.join(', ')))
|
||||||
|
row.append($('<td class="currency"></td>').html(Qrammer.currency(order.total_amount)))
|
||||||
|
foot.append('<tr><td></td><td class="currency"><strong>'+Qrammer.currency(res.total_amount)+'</strong></td></tr>')
|
||||||
|
)
|
||||||
|
|
||||||
build_product_list_as_modal: ->
|
build_product_list_as_modal: ->
|
||||||
wrapper = $('<div class="modal"></div>')
|
wrapper = $('<div class="modal"></div>')
|
||||||
|
|||||||
+1
-1
@@ -12,7 +12,7 @@ class List
|
|||||||
validates :table_id, presence: true
|
validates :table_id, presence: true
|
||||||
|
|
||||||
def close!
|
def close!
|
||||||
#TODO: close orders
|
orders.map(&:close!)
|
||||||
self.state = 'closed'
|
self.state = 'closed'
|
||||||
self.closed_at = Time.now
|
self.closed_at = Time.now
|
||||||
save
|
save
|
||||||
|
|||||||
+6
-1
@@ -1,7 +1,7 @@
|
|||||||
class Order
|
class Order
|
||||||
include SimplyStored::Couch
|
include SimplyStored::Couch
|
||||||
|
|
||||||
property :state, default: 'placed' # placed, active, delivered, cancelled
|
property :state, default: 'placed' # placed, active, delivered, cancelled, closed
|
||||||
|
|
||||||
belongs_to :list
|
belongs_to :list
|
||||||
belongs_to :user
|
belongs_to :user
|
||||||
@@ -42,4 +42,9 @@ class Order
|
|||||||
self.state = 'delivered'
|
self.state = 'delivered'
|
||||||
save
|
save
|
||||||
end
|
end
|
||||||
|
|
||||||
|
def close!
|
||||||
|
self.state = 'closed' if placed? || active?
|
||||||
|
save
|
||||||
|
end
|
||||||
end
|
end
|
||||||
|
|||||||
@@ -10,28 +10,6 @@ table#active-list-table.table
|
|||||||
- content_for :footer do
|
- content_for :footer do
|
||||||
javascript:
|
javascript:
|
||||||
jQuery(function(){
|
jQuery(function(){
|
||||||
$.get('#{current_list_path(session[:active_list_id], format: :json).html_safe}', function(res){
|
Qrammer.active_user_list('#{session[:active_list_id]}')
|
||||||
var body = $('#active-list-table tbody');
|
setInterval( "Qrammer.active_user_list('#{session[:active_list_id]}')", 7500);
|
||||||
var foot = $('#active-list-table tfoot');
|
|
||||||
if(!res.orders && !res.orders.length){
|
|
||||||
alert('No orders in list');
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
for(var iorder = 0; iorder < res.orders.length; iorder++){
|
|
||||||
var order_txts = [];
|
|
||||||
var order = res.orders[iorder];
|
|
||||||
var row = $('<tr></tr>').appendTo(body);
|
|
||||||
row.addClass(order.state);
|
|
||||||
//if(order.state == 'placed') row.addClass('info');
|
|
||||||
//if(order.state == 'delivered') row.addClass('success');
|
|
||||||
if(order.state == 'cancelled') row.addClass('error');
|
|
||||||
for(var iproduct = 0; iproduct < order.products.length; iproduct++){
|
|
||||||
var product = order.products[iproduct];
|
|
||||||
order_txts.push(product.name + ' (' + product['number'] + ')')
|
|
||||||
}
|
|
||||||
row.append($('<td></td>').text(order_txts.join(', ')));
|
|
||||||
row.append($('<td class="currency"></td>').html(Qrammer.currency(res.orders[iorder].total_amount)))
|
|
||||||
}
|
|
||||||
foot.append('<tr><td></td><td class="currency"><strong>'+Qrammer.currency(res.total_amount)+'</strong></td></tr>');
|
|
||||||
})
|
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -36,3 +36,5 @@ Actielijst:
|
|||||||
- Bewoordingen critisch en klantgericht doornemen
|
- Bewoordingen critisch en klantgericht doornemen
|
||||||
- Plaats omgevingen in ihpone / ipad omgeving (gerelateerd)
|
- Plaats omgevingen in ihpone / ipad omgeving (gerelateerd)
|
||||||
- Barman en vaste tafels
|
- Barman en vaste tafels
|
||||||
|
|
||||||
|
handle closed list on list update for user list
|
||||||
|
|||||||
Reference in New Issue
Block a user