update workflow

This commit is contained in:
2012-08-23 20:38:54 +02:00
parent 4168ed1dc5
commit 5b27d6dcd9
5 changed files with 36 additions and 29 deletions
+24 -2
View File
@@ -57,8 +57,8 @@ root.Qrammer =
else
eval(res)
return
alert(res['message']) if res['message'] && !res['ok']
alert(res['message']) if res['message'] && res['ok']
window.location = '/' if res['message'] && !res['ok']
window.location = '/view_active_list' if res['ok']
load_active_order_list: (supplier_id) ->
$.get('/suppliers/'+supplier_id+'/active_order_list.json', (res) ->
body = $('#active-orders-table tbody')
@@ -119,6 +119,28 @@ root.Qrammer =
row.append(td_buttons)
#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: ->
wrapper = $('<div class="modal"></div>')
+1 -1
View File
@@ -12,7 +12,7 @@ class List
validates :table_id, presence: true
def close!
#TODO: close orders
orders.map(&:close!)
self.state = 'closed'
self.closed_at = Time.now
save
+6 -1
View File
@@ -1,7 +1,7 @@
class Order
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 :user
@@ -42,4 +42,9 @@ class Order
self.state = 'delivered'
save
end
def close!
self.state = 'closed' if placed? || active?
save
end
end
+2 -24
View File
@@ -10,28 +10,6 @@ table#active-list-table.table
- content_for :footer do
javascript:
jQuery(function(){
$.get('#{current_list_path(session[:active_list_id], format: :json).html_safe}', function(res){
var body = $('#active-list-table tbody');
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>');
})
Qrammer.active_user_list('#{session[:active_list_id]}')
setInterval( "Qrammer.active_user_list('#{session[:active_list_id]}')", 7500);
})
+2
View File
@@ -36,3 +36,5 @@ Actielijst:
- Bewoordingen critisch en klantgericht doornemen
- Plaats omgevingen in ihpone / ipad omgeving (gerelateerd)
- Barman en vaste tafels
handle closed list on list update for user list