From 4779b6a19f689b649cbef6361c7e7d569a2e8374 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Tue, 19 Sep 2017 11:09:23 +0630 Subject: [PATCH 01/11] update --- app/views/origami/discounts/index.html.erb | 4 ++-- .../settings/order_queue_stations/_form.html.erb | 2 +- .../settings/order_queue_stations/edit.html.erb | 2 -- .../settings/order_queue_stations/index.html.erb | 13 +++++++++---- .../settings/order_queue_stations/show.html.erb | 2 +- app/views/settings/processing_items/_form.html.erb | 4 ++++ db/sym_master.sql | 14 +++++++------- 7 files changed, 24 insertions(+), 17 deletions(-) diff --git a/app/views/origami/discounts/index.html.erb b/app/views/origami/discounts/index.html.erb index 55e649ed..2c3d970a 100644 --- a/app/views/origami/discounts/index.html.erb +++ b/app/views/origami/discounts/index.html.erb @@ -196,9 +196,9 @@ <% if @member_discount%> -
+ <%end %> diff --git a/app/views/settings/order_queue_stations/_form.html.erb b/app/views/settings/order_queue_stations/_form.html.erb index 67b34798..08c00c90 100644 --- a/app/views/settings/order_queue_stations/_form.html.erb +++ b/app/views/settings/order_queue_stations/_form.html.erb @@ -11,7 +11,7 @@ div.form-inputs span{ <%= f.input :is_active %> <%= f.input :printer_name %> - <%= f.input :font_size %> + <%= f.input :print_copy %> <%= f.hidden_field :processing_items %> <%= f.label "Select Zones", :class => 'control-label' %> diff --git a/app/views/settings/order_queue_stations/edit.html.erb b/app/views/settings/order_queue_stations/edit.html.erb index 27cf2fc8..7301418c 100644 --- a/app/views/settings/order_queue_stations/edit.html.erb +++ b/app/views/settings/order_queue_stations/edit.html.erb @@ -1,6 +1,4 @@ -
-

Menu Item Option

+

Order Queue Station

diff --git a/app/views/settings/processing_items/_form.html.erb b/app/views/settings/processing_items/_form.html.erb index 61ee6438..6613f4b6 100644 --- a/app/views/settings/processing_items/_form.html.erb +++ b/app/views/settings/processing_items/_form.html.erb @@ -2,6 +2,10 @@ <%= f.error_notification %> <%= f.input :processing_items, as: :hidden %> Select Menu Items

+
+ <%= f.button :submit, class:'pull-right', label: "Add Menu Items to Queue Station" %> +
+

<% @menu_categories.each do |category|%> diff --git a/db/sym_master.sql b/db/sym_master.sql index 84822ba5..95251c4c 100644 --- a/db/sym_master.sql +++ b/db/sym_master.sql @@ -128,9 +128,9 @@ insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('accounts','sx_2_store', 100, current_timestamp, current_timestamp); --- insert into sym_trigger_router --- (trigger_id,router_id,initial_load_order,initial_load_select,last_update_time,create_time) --- values('accounts','sx_2_one_store',100,'store_id=''$(externalId)''',current_timestamp,current_timestamp); +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('accounts','store_2_sx', 100, current_timestamp, current_timestamp); insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) @@ -144,15 +144,15 @@ insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,sc values ('000','sx','000',1,null,null,null,null,null,current_timestamp,null,0,0,'000'); insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id) values ('001','store','001',1,null,null,null,null,null,current_timestamp,null,0,0,'000'); -insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id) - values ('002','store','002',1,null,null,null,null,null,current_timestamp,null,0,0,'000'); +-- insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id) +-- values ('002','store','002',1,null,null,null,null,null,current_timestamp,null,0,0,'000'); insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id) values ('000','acd36ce830d1fda466eec921433f38',0,current_timestamp,0,current_timestamp,'000'); insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id) values ('001','acd36ce830d1fda466eec921433f38',1,null,1,null,'000'); -insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id) - values ('002','acd36ce830d1fda466eec921433f38',1,null,1,null,'000'); +-- insert into sym_node_security (node_id,node_password,registration_enabled,registration_time,initial_load_enabled,initial_load_time,created_at_node_id) +-- values ('002','acd36ce830d1fda466eec921433f38',1,null,1,null,'000'); insert into sym_node_identity values ('000'); From 6514fc528505298586d7e046fe421601f7002bd1 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Tue, 19 Sep 2017 14:30:27 +0630 Subject: [PATCH 02/11] update sym_master.sql --- db/sym_master.sql | 22 +++++++++++++++++++++- 1 file changed, 21 insertions(+), 1 deletion(-) diff --git a/db/sym_master.sql b/db/sym_master.sql index 95251c4c..af8ae243 100644 --- a/db/sym_master.sql +++ b/db/sym_master.sql @@ -126,7 +126,27 @@ values('store_2_sx', 'store', 'sx', 'default',current_timestamp, current_timesta # Add triggers for tables with router insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) -values('accounts','sx_2_store', 100, current_timestamp, current_timestamp); +values('menus','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_categories','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_items','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_attributes','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_options','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_instances','store_2_sx', 100, current_timestamp, current_timestamp); insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) From 7191f0511ccaec43656d981518221b71210b4e41 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Tue, 19 Sep 2017 18:02:23 +0630 Subject: [PATCH 03/11] update sym master.sql --- db/sym_master.sql | 371 ++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 355 insertions(+), 16 deletions(-) diff --git a/db/sym_master.sql b/db/sym_master.sql index af8ae243..d3e848cd 100644 --- a/db/sym_master.sql +++ b/db/sym_master.sql @@ -48,10 +48,18 @@ delete from sym_node; # Create Channels for logically grouped tables +insert into sym_channel +(channel_id, processing_order, max_batch_size, enabled, description) +values('setting', 1, 100000, 1, 'All Settings'); + insert into sym_channel (channel_id, processing_order, max_batch_size, enabled, description) values('dining', 1, 100000, 1, 'sale_transactional data from register and back office'); +insert into sym_channel +(channel_id, processing_order, max_batch_size, enabled, description) +values('commission', 1, 100000, 1, 'Commission ,Commissioners ,Products and Promotion'); + insert into sym_channel (channel_id, processing_order, max_batch_size, enabled, description) values('menu', 1, 100000, 1, 'Item and pricing data'); @@ -60,6 +68,14 @@ insert into sym_channel (channel_id, processing_order, max_batch_size, enabled, description) values('order', 1, 100000, 1, 'Item and pricing data'); +insert into sym_channel +(channel_id, processing_order, max_batch_size, enabled, description) +values('sale', 1, 100000, 1, 'Sale data'); + +insert into sym_channel +(channel_id, processing_order, max_batch_size, enabled, description) +values('oqs', 1, 100000, 1, 'OQS and cashier temenal'); + # Create Node Groups and Links insert into sym_node_group (node_group_id) values ('sx'); insert into sym_node_group (node_group_id) values ('store'); @@ -67,27 +83,95 @@ insert into sym_node_group (node_group_id) values ('store'); insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action) values ('sx', 'store', 'W'); insert into sym_node_group_link (source_node_group_id, target_node_group_id, data_event_action) values ('store', 'sx', 'P'); -# Create Trigger for Tables +# Create Trigger for Setting Channel +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('lookups','lookups','setting',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('membership_actions','membership_actions','setting',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('membership_settings','membership_settings','setting',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('payment_method_settings','payment_method_settings','setting',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('print_settings','print_settings','setting',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('shops','shops','setting',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('customers','customers','setting',current_timestamp,current_timestamp); + +# Create Trigger for Dining Channel insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('zones','zones','dining',current_timestamp,current_timestamp); insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) -values('menus','menus','menu',current_timestamp,current_timestamp); +values('dining_charges','dining_charges','dining',current_timestamp,current_timestamp); insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) -values('menu_categories','menu_categories','menu',current_timestamp,current_timestamp); +values('dining_facilities','dining_facilities','dining',current_timestamp,current_timestamp); +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('dining_queues','dining_queues','dining',current_timestamp,current_timestamp); + + +# Create Trigger for Commission Channel +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('commissioners','commissioners','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('commissions','commissions','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('employees','employees','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('in_duties','in_duties','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('inventory_definitions','inventory_definitions','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('product_commissions','product_commissions','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('products','products','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('promotion_products','promotion_products','commission',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('promotions','promotions','commission',current_timestamp,current_timestamp); + +# Create Trigger for Menu Channel insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('accounts','accounts','menu',current_timestamp,current_timestamp); -insert into sym_trigger -(trigger_id,source_table_name,channel_id,last_update_time,create_time) -values('menu_items','menu_items','menu',current_timestamp,current_timestamp); - insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('menu_item_attributes','menu_item_attributes','menu',current_timestamp,current_timestamp); @@ -96,10 +180,35 @@ insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('menu_item_options','menu_item_options','menu',current_timestamp,current_timestamp); +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('menus','menus','menu',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('menu_categories','menu_categories','menu',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('menu_items','menu_items','menu',current_timestamp,current_timestamp); + insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('menu_item_instances','menu_item_instances','menu',current_timestamp,current_timestamp); +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('item_sets','item_sets','menu',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('menu_item_sets','menu_item_sets','menu',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('menu_instance_item_sets','menu_instance_item_sets','menu',current_timestamp,current_timestamp); + +# Create Trigger for Order Channel insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('orders','orders','order',current_timestamp,current_timestamp); @@ -108,6 +217,67 @@ insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('order_items','order_items','order',current_timestamp,current_timestamp); +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('bookings','bookings','order',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('booking_orders','booking_orders','order',current_timestamp,current_timestamp); + +# Create Trigger for Sale Channel +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('sales','sales','sale',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('sale_items','sale_items','sale',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('sale_audits','sale_audits','sale',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('sale_orders','sale_orders','sale',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('sale_payments','sale_payments','sale',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('sale_taxes','sale_taxes','sale',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('payment_journals','payment_journals','sale',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('shift_sales','shift_sales','sale',current_timestamp,current_timestamp); + +# Create Trigger for Order Channel +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('assigned_order_items','assigned_order_items','oqs',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('cashier_terminals','cashier_terminals','oqs',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('cashier_login_logs','cashier_login_logs','oqs',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('order_queue_process_by_zones','order_queue_process_by_zones','oqs',current_timestamp,current_timestamp); + +insert into sym_trigger +(trigger_id,source_table_name,channel_id,last_update_time,create_time) +values('order_queue_stations','order_queue_stations','oqs',current_timestamp,current_timestamp); # Create Routers for Nodes insert into sym_router @@ -124,6 +294,106 @@ values('store_2_sx', 'store', 'sx', 'default',current_timestamp, current_timesta # Add triggers for tables with router + +# Setting Channel +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('lookups','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('membership_actions','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('membership_settings','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('payment_method_settings','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('print_settings','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('shops','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('customers','store_2_sx', 100, current_timestamp, current_timestamp); +#End Setting Channel + +# Dining Channel +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('zones','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('dining_charges','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('dining_facilities','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('dining_queues','store_2_sx', 100, current_timestamp, current_timestamp); +#end Dining Channel + +# Commission/Promotion/Product Channel +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('commissioners','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('commissions','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('employees','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('in_duties','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('inventory_definitions','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('product_commissions','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('products','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('promotion_products','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('promotions','store_2_sx', 100, current_timestamp, current_timestamp); +#end Commission/Promotion/Product Channel + +# Menu Channel +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('accounts','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_attributes','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_options','store_2_sx', 100, current_timestamp, current_timestamp); + insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('menus','store_2_sx', 100, current_timestamp, current_timestamp); @@ -136,22 +406,25 @@ insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('menu_items','store_2_sx', 100, current_timestamp, current_timestamp); -insert into sym_trigger_router -(trigger_id,router_id,initial_load_order,last_update_time,create_time) -values('menu_item_attributes','store_2_sx', 100, current_timestamp, current_timestamp); - -insert into sym_trigger_router -(trigger_id,router_id,initial_load_order,last_update_time,create_time) -values('menu_item_options','store_2_sx', 100, current_timestamp, current_timestamp); - insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('menu_item_instances','store_2_sx', 100, current_timestamp, current_timestamp); insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) -values('accounts','store_2_sx', 100, current_timestamp, current_timestamp); +values('item_sets','store_2_sx', 100, current_timestamp, current_timestamp); +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_sets','store_2_sx', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_instance_item_sets','store_2_sx', 100, current_timestamp, current_timestamp); + +#End Menu Channel + +# Order Channel insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('orders','store_2_sx', 200, current_timestamp, current_timestamp); @@ -160,6 +433,72 @@ insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('order_items','store_2_sx', 200, current_timestamp, current_timestamp); +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('bookings','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('booking_orders','store_2_sx', 200, current_timestamp, current_timestamp); +# End Order Channel + +# Sale Channel +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sales','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_items','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_audits','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_orders','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_payments','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_taxes','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('payment_journals','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('shift_sales','store_2_sx', 200, current_timestamp, current_timestamp); +# End Sale Channel + +# Oqs Channel +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('assigned_order_items','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('cashier_terminals','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('cashier_login_logs','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('order_queue_process_by_zones','store_2_sx', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('order_queue_stations','store_2_sx', 200, current_timestamp, current_timestamp); +# End Oqs Channel + + insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id) values ('000','sx','000',1,null,null,null,null,null,current_timestamp,null,0,0,'000'); insert into sym_node (node_id,node_group_id,external_id,sync_enabled,sync_url,schema_version,symmetric_version,database_type,database_version,heartbeat_time,timezone_offset,batch_to_send_count,batch_in_error_count,created_at_node_id) From 274eebd19cbb5745dc7e8684961be34c997e628d Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 20 Sep 2017 16:40:34 +0630 Subject: [PATCH 04/11] update symmaster --- db/sym_master.sql | 1 + 1 file changed, 1 insertion(+) diff --git a/db/sym_master.sql b/db/sym_master.sql index d3e848cd..81d9b77d 100644 --- a/db/sym_master.sql +++ b/db/sym_master.sql @@ -279,6 +279,7 @@ insert into sym_trigger (trigger_id,source_table_name,channel_id,last_update_time,create_time) values('order_queue_stations','order_queue_stations','oqs',current_timestamp,current_timestamp); + # Create Routers for Nodes insert into sym_router (router_id,source_node_group_id,target_node_group_id,router_type,create_time,last_update_time) From a6380fc77c36b48508cec1718eaaa1eb07ed820b Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Thu, 21 Sep 2017 14:11:28 +0630 Subject: [PATCH 05/11] update sym master sql --- db/sym_master.sql | 215 ++++++++++++++++++++++++++++++++++++++++++++-- 1 file changed, 206 insertions(+), 9 deletions(-) diff --git a/db/sym_master.sql b/db/sym_master.sql index 81d9b77d..bb05a94e 100644 --- a/db/sym_master.sql +++ b/db/sym_master.sql @@ -286,8 +286,8 @@ insert into sym_router values('sx_2_store', 'sx', 'store', 'default',current_timestamp, current_timestamp); insert into sym_router -(router_id,source_node_group_id,target_node_group_id,router_type,create_time,last_update_time) -values('store_2_sx', 'store', 'sx', 'default',current_timestamp, current_timestamp); +(router_id,source_node_group_id,target_node_group_id,router_type,sync_on_delete,create_time,last_update_time) +values('store_2_sx', 'store', 'sx', 'default',0,current_timestamp, current_timestamp); -- insert into sym_router -- (router_id,source_node_group_id,target_node_group_id,router_type,router_expression,create_time,last_update_time) @@ -296,7 +296,7 @@ values('store_2_sx', 'store', 'sx', 'default',current_timestamp, current_timesta # Add triggers for tables with router -# Setting Channel +# Setting Channel # From Store to Master insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('lookups','store_2_sx', 100, current_timestamp, current_timestamp); @@ -324,9 +324,39 @@ values('shops','store_2_sx', 100, current_timestamp, current_timestamp); insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('customers','store_2_sx', 100, current_timestamp, current_timestamp); + +# Setting Channel # From Master to Store +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('lookups','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('membership_actions','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('membership_settings','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('payment_method_settings','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('print_settings','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('shops','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('customers','sx_2_store', 100, current_timestamp, current_timestamp); + #End Setting Channel -# Dining Channel +# Dining Channel # From Store to SX insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('zones','store_2_sx', 100, current_timestamp, current_timestamp); @@ -342,9 +372,27 @@ values('dining_facilities','store_2_sx', 100, current_timestamp, current_timesta insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('dining_queues','store_2_sx', 100, current_timestamp, current_timestamp); + +# Dining Channel # From SX to Store +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('zones','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('dining_charges','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('dining_facilities','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('dining_queues','sx_2_store', 100, current_timestamp, current_timestamp); + #end Dining Channel -# Commission/Promotion/Product Channel +# Commission/Promotion/Product Channel # From Store to SX insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('commissioners','store_2_sx', 100, current_timestamp, current_timestamp); @@ -380,9 +428,47 @@ values('promotion_products','store_2_sx', 100, current_timestamp, current_timest insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('promotions','store_2_sx', 100, current_timestamp, current_timestamp); + +# Commission/Promotion/Product Channel # From SX to Store +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('commissioners','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('commissions','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('employees','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('in_duties','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('inventory_definitions','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('product_commissions','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('products','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('promotion_products','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('promotions','sx_2_store', 100, current_timestamp, current_timestamp); + #end Commission/Promotion/Product Channel -# Menu Channel +# Menu Channel # From Store to SX insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('accounts','store_2_sx', 100, current_timestamp, current_timestamp); @@ -423,9 +509,49 @@ insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('menu_instance_item_sets','store_2_sx', 100, current_timestamp, current_timestamp); +# Menu Channel # From SX to Store +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('accounts','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_attributes','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_options','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menus','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_categories','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_items','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_instances','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('item_sets','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_item_sets','sx_2_store', 100, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('menu_instance_item_sets','sx_2_store', 100, current_timestamp, current_timestamp); #End Menu Channel -# Order Channel +# Order Channel # From Store to Sx insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('orders','store_2_sx', 200, current_timestamp, current_timestamp); @@ -441,9 +567,26 @@ values('bookings','store_2_sx', 200, current_timestamp, current_timestamp); insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('booking_orders','store_2_sx', 200, current_timestamp, current_timestamp); + +# Order Channel # From SX to Store +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('orders','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('order_items','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('bookings','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('booking_orders','sx_2_store', 200, current_timestamp, current_timestamp); # End Order Channel -# Sale Channel +# Sale Channel # From Store to Sx insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('sales','store_2_sx', 200, current_timestamp, current_timestamp); @@ -475,9 +618,42 @@ values('payment_journals','store_2_sx', 200, current_timestamp, current_timestam insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('shift_sales','store_2_sx', 200, current_timestamp, current_timestamp); + +# Sale Channel # From SX to Store +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sales','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_items','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_audits','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_orders','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_payments','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('sale_taxes','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('payment_journals','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('shift_sales','sx_2_store', 200, current_timestamp, current_timestamp); # End Sale Channel -# Oqs Channel +# Oqs Channel # From Store to Sx insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('assigned_order_items','store_2_sx', 200, current_timestamp, current_timestamp); @@ -497,6 +673,27 @@ values('order_queue_process_by_zones','store_2_sx', 200, current_timestamp, curr insert into sym_trigger_router (trigger_id,router_id,initial_load_order,last_update_time,create_time) values('order_queue_stations','store_2_sx', 200, current_timestamp, current_timestamp); + +# Oqs Channel # From SX to Store +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('assigned_order_items','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('cashier_terminals','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('cashier_login_logs','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('order_queue_process_by_zones','sx_2_store', 200, current_timestamp, current_timestamp); + +insert into sym_trigger_router +(trigger_id,router_id,initial_load_order,last_update_time,create_time) +values('order_queue_stations','sx_2_store', 200, current_timestamp, current_timestamp); # End Oqs Channel From dd9e8fe90857e59c4035d285e570ab02fd12218a Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Thu, 21 Sep 2017 17:54:57 +0630 Subject: [PATCH 06/11] update queue and completed sale --- app/controllers/crm/dining_queues_controller.rb | 2 +- app/controllers/origami/home_controller.rb | 4 ++-- app/controllers/origami/orders_controller.rb | 2 +- app/controllers/origami/rooms_controller.rb | 4 ++-- app/controllers/origami/sales_controller.rb | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/app/controllers/crm/dining_queues_controller.rb b/app/controllers/crm/dining_queues_controller.rb index 22351395..a48e03a7 100644 --- a/app/controllers/crm/dining_queues_controller.rb +++ b/app/controllers/crm/dining_queues_controller.rb @@ -6,7 +6,7 @@ class Crm::DiningQueuesController < BaseCrmController # GET /crm/dining_queues.json def index today = DateTime.now.strftime('%Y-%m-%d') - @dining_queues = DiningQueue.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? ", today).order("queue_no asc") + @dining_queues = DiningQueue.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and status is NULL ", today).order("queue_no asc") end # GET /crm/dining_queues/1 diff --git a/app/controllers/origami/home_controller.rb b/app/controllers/origami/home_controller.rb index 27822a17..27b9cc52 100644 --- a/app/controllers/origami/home_controller.rb +++ b/app/controllers/origami/home_controller.rb @@ -4,7 +4,7 @@ class Origami::HomeController < BaseOrigamiController def index @tables = Table.all.active.order('status desc') @rooms = Room.all.active.order('status desc') - @complete = Sale.where("sale_status != 'new'") + @complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d')) @orders = Order.all.order('date desc') @shop = Shop.find_by_id(1) @@ -15,7 +15,7 @@ class Origami::HomeController < BaseOrigamiController def show @tables = Table.all.active.order('status desc') @rooms = Room.all.active.order('status desc') - @complete = Sale.where("sale_status != 'new'") + @complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d')) @orders = Order.all.order('date desc') @status_order = "" diff --git a/app/controllers/origami/orders_controller.rb b/app/controllers/origami/orders_controller.rb index f3cddd74..800c460b 100644 --- a/app/controllers/origami/orders_controller.rb +++ b/app/controllers/origami/orders_controller.rb @@ -3,7 +3,7 @@ class Origami::OrdersController < BaseOrigamiController def show @tables = Table.all.active.order('status desc') @rooms = Room.all.active.order('status desc') - @complete = Sale.where("sale_status != 'new'") + @complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d')) @orders = Order.all.order('status desc') @order = Order.find(params[:order_id]) sale_order = SaleOrder.find_by_order_id(@order.order_id) diff --git a/app/controllers/origami/rooms_controller.rb b/app/controllers/origami/rooms_controller.rb index 23d64602..0eed53bc 100644 --- a/app/controllers/origami/rooms_controller.rb +++ b/app/controllers/origami/rooms_controller.rb @@ -3,7 +3,7 @@ class Origami::RoomsController < BaseOrigamiController def index @tables = Table.all.active.order('status desc') @rooms = Room.all.active.order('status desc') - @complete = Sale.where("sale_status != 'new'") + @complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d')) @orders = Order.all.order('date desc') # @shift = ShiftSale.current_open_shift(current_user.id) end @@ -11,7 +11,7 @@ class Origami::RoomsController < BaseOrigamiController def show @tables = Table.all.active.order('status desc') @rooms = Room.all.active.order('status desc') - @complete = Sale.where("sale_status != 'new'") + @complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d')) @orders = Order.all.order('date desc') @room = DiningFacility.find(params[:room_id]) diff --git a/app/controllers/origami/sales_controller.rb b/app/controllers/origami/sales_controller.rb index 3a9586fb..56e41a2a 100644 --- a/app/controllers/origami/sales_controller.rb +++ b/app/controllers/origami/sales_controller.rb @@ -3,7 +3,7 @@ class Origami::SalesController < BaseOrigamiController def show @tables = Table.all.active.order('status desc') @rooms = Room.all.active.order('status desc') - @complete = Sale.where("sale_status != 'new'") + @complete = Sale.where("DATE_FORMAT(created_at,'%Y-%m-%d') = ? and sale_status != 'new'",DateTime.now.strftime('%Y-%m-%d')) @orders = Order.all.order('date desc') @sale = Sale.find(params[:sale_id]) end From ddf466d3fe6726eae5143b43aed349122b44a14f Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 27 Sep 2017 11:26:13 +0630 Subject: [PATCH 07/11] update addorder available and max qty --- app/assets/javascripts/addorder.js | 59 +++-- app/assets/stylesheets/sx-sidebar.css | 223 ++++++++++++++++++ .../origami/addorders_controller.rb | 2 +- app/models/menu_category.rb | 1 + app/views/origami/addorders/detail.html.erb | 2 +- .../addorders/get_menu_category.json.jbuilder | 5 +- 6 files changed, 265 insertions(+), 27 deletions(-) create mode 100644 app/assets/stylesheets/sx-sidebar.css diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 6d79ca2a..2611b491 100644 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -10,6 +10,7 @@ $(function(){ //show menu item list when click menu category function show_menu_item_list(url_item){ + var menu_list = $('.menu_items_list'); menu_list.empty(); //Start Ajax @@ -22,6 +23,7 @@ $(function(){ var menu_items_list = $('.menu_items_list'); menu_items_list.empty(); menu_items = data.menu_items; + console.log(url_item); for(var field in menu_items) { if (menu_items[field].is_sub_item == false) { instances = menu_items[field].instances ; @@ -110,6 +112,7 @@ $(function(){ for(var field in item_sets) { value = item_sets[field]["instances"]; $(value).each(function(i){ + console.log(value); $.ajax({ type: "GET", url: '../../api/restaurant/menu_item_instances/'+value[i]["id"], @@ -121,6 +124,8 @@ $(function(){ +"' data-code='"+result["code"] +"' data-price='"+result["price"] +"' data-option='"+JSON.stringify(result["options"]) + +"' data-min-qty='"+item_sets[field]["min_selectable_qty"] + +"' data-max-qty='"+item_sets[field]["max_selectable_qty"] +"'>" +'
' +''+result["name"]+'' @@ -157,6 +162,8 @@ $(function(){ $(".options-list").empty(); item_options = $(this).data('option'); + min_qty = $(this).data('min-qty'); + max_qty = $(this).data('max-qty'); code = $(this).data('code'); for(var field in item_options) { @@ -171,31 +178,35 @@ $(function(){ $(".options-list").append(row); } - if($(this).hasClass('selected-instance') == true){ - sub_total = $('#set_total_price').text(); - name = $(this).data('name'); - price = $(this).data('price'); - // qty = $('#set_change_qty').val(); - qty = document.getElementById("set_count").value; - total = qty*price; - var total_price = +sub_total - +total; - $(this).removeClass('selected-instance'); - $(".options-list").empty(); - $(this).removeAttr('data-options'); - $('#instance_option').text('') - }else { + console.log($('.selected-instance').length) - sub_total = $('#set_total_price').text(); - name = $(this).data('name'); - price = $(this).data('price'); - // qty = $('#set_change_qty').val(); - qty = document.getElementById("set_count").value; - total = qty*price; - var total_price = +sub_total + +total; - $(this).addClass('selected-instance'); - } - $('#set_unit_price').text(price); - $('#set_total_price').text(total_price); + if($(this).hasClass('selected-instance') == true){ + sub_total = $('#set_total_price').text(); + name = $(this).data('name'); + price = $(this).data('price'); + // qty = $('#set_change_qty').val(); + qty = document.getElementById("set_count").value; + total = qty*price; + var total_price = +sub_total - +total; + $(this).removeClass('selected-instance'); + $(".options-list").empty(); + $(this).removeAttr('data-options'); + $('#instance_option').text('') + }else { + if ($('.selected-instance').length+1 <= max_qty) { + sub_total = $('#set_total_price').text(); + name = $(this).data('name'); + price = $(this).data('price'); + // qty = $('#set_change_qty').val(); + qty = document.getElementById("set_count").value; + total = qty*price; + var total_price = +sub_total + +total; + $(this).addClass('selected-instance'); + } + } + $('#set_unit_price').text(price); + $('#set_total_price').text(total_price); + }); //End selecct attribute buttom // click add order diff --git a/app/assets/stylesheets/sx-sidebar.css b/app/assets/stylesheets/sx-sidebar.css new file mode 100644 index 00000000..6f8d5f04 --- /dev/null +++ b/app/assets/stylesheets/sx-sidebar.css @@ -0,0 +1,223 @@ +/*! + * Start Bootstrap - Simple Sidebar (http://startbootstrap.com/template-overviews/simple-sidebar) + * Copyright 2013-2017 Start Bootstrap + * Licensed under MIT (https://github.com/BlackrockDigital/startbootstrap-simple-sidebar/blob/master/LICENSE) + */ + +/**/ +#wrapper { + padding-left: 0; + -webkit-transition: all 0.5s ease; + -moz-transition: all 0.5s ease; + -o-transition: all 0.5s ease; + transition: all 0.5s ease; +} + +#wrapper.toggled { + padding-left: 200px; +} + +#sidebar-wrapper { + /* z-index: 1000;*/ + /*position: fixed;*/ + z-index: 1; + position: ; + left: 200px; + width: 0; + height: 100%; + margin-left: -224px; + margin-top:-20px; + overflow-x: ; + -webkit-transition: all 0.5s ease; + -moz-transition: all 0.5s ease; + -o-transition: all 0.5s ease; + transition: all 0.5s ease; +} + +#wrapper.toggled #sidebar-wrapper { + width: 216px; +} + +#page-content-wrapper { + width: 100%; + position: absolute; + padding: 0px; + +} + +#wrapper.toggled #page-content-wrapper { + position: absolute; + margin-right: -200px; +} + + +/* Sidebar Styles */ + +.sidebar-nav { + position: absolute; + background: #222d32; + top: 0; + width: 200px; + margin: 0; + padding: 0; + list-style: none; +} + +.sidebar-nav li { + text-indent: 20px; + line-height: 40px; +} +.sidebar-nav>li.header { + color: #4b646f; + background-color: #1a2226; + line-height: 35px !important; +} +.main-nav { + + /* background-color: #161926 !important;*/ +} +/*.main-nav a { + color: #fff !important; +} +*/ +.sidebar-nav li a { + display: block; + text-decoration: none; + color: #999999; +} + +.sidebar-nav li a:hover { + text-decoration: none; + color: #fff; + background: rgba(255, 255, 255, 0.2); +} + +.sidebar-nav li a:active, +.sidebar-nav li a:focus { + text-decoration: none; +} + +.sidebar-nav > .sidebar-brand { + height: 65px; + font-size: 18px; + line-height: 60px; +} + +.sidebar-nav > .sidebar-brand a { + color: #999999; +} + +.sidebar-nav > .sidebar-brand a:hover { + color: #fff; + background: none; +} + +@media(min-width:768px) { + #wrapper { + padding-left: 0; + } + #wrapper.toggled { + padding-left: 210px; + } + #sidebar-wrapper { + width: 0; + } + #wrapper.toggled #sidebar-wrapper { + width: 216px; + } + #page-content-wrapper { + padding: 0px; + position: relative; + } + #wrapper.toggled #page-content-wrapper { + position: relative; + margin-right: 0; + } +} +.accordion { + width: 200px; + list-style: none; + font-size: 14px; + color: #999999 ; + padding: 0px !important; + margin: 0px !important; +} + +.accordion .link { + cursor: pointer; + display: block; + /* padding: 15px 15px 15px 42px; + color: #4D4D4D;*/ + /* font-size: 14px; + font-weight: 700;*/ + /*border-bottom: 1px solid #CCC;*/ + position: relative; + -webkit-transition: all 0.4s ease; + -o-transition: all 0.4s ease; + transition: all 0.4s ease; +} + +/*.accordion li:last-child .link { border-bottom: 0; }*/ + +.accordion li i { + position: absolute; + top: 13px; + left: 12px; + font-size: 16px; + color: #999999; + -webkit-transition: all 0.4s ease; + -o-transition: all 0.4s ease; + transition: all 0.4s ease; +} + +.accordion li i.fa-chevron-down { + right: 12px; + left: auto; + font-size: 16px; +} +.accordion li .link:hover { + background: rgba(255, 255, 255, 0.2); + color: #FFF; +} +.accordion li.open .link { color: #fff; } + +.accordion li.open .link > .submenu { display: block;overflow: hidden;} + +.accordion li.open i { color: #fff; } + +.accordion li.open i.fa-chevron-down { + -webkit-transform: rotateX(180deg); + -ms-transform: rotateX(180deg); + -o-transform: rotateX(180deg); + transform: rotateX(180deg); +} + +.submenu { + display: none; + list-style: none; + margin-left: ; + background: #161926; + font-size: 14px; +} + +.submenu li { + margin-left: -38px; + } + +.submenu a { + display: block; + text-decoration: none; + color: #d9d9d9; + padding-left:20px; + -webkit-transition: all 0.25s ease; + -o-transition: all 0.25s ease; + transition: all 0.25s ease; +} + +.submenu a:hover { + background: #b63b4d; + color: #FFF; +} + + + diff --git a/app/controllers/origami/addorders_controller.rb b/app/controllers/origami/addorders_controller.rb index 6c9127ae..b8fd5921 100644 --- a/app/controllers/origami/addorders_controller.rb +++ b/app/controllers/origami/addorders_controller.rb @@ -9,7 +9,7 @@ class Origami::AddordersController < BaseOrigamiController end def detail - @menu = MenuCategory.all + @menu = MenuCategory.all.active @table_id = params[:id] @table = DiningFacility.find(@table_id) @booking = @table.get_booking diff --git a/app/models/menu_category.rb b/app/models/menu_category.rb index 29484bcc..e386a227 100644 --- a/app/models/menu_category.rb +++ b/app/models/menu_category.rb @@ -9,6 +9,7 @@ class MenuCategory < ApplicationRecord validates_presence_of :name, :menu, :order_by default_scope { order('order_by asc') } + scope :active, -> {where("is_available = 1")} def self.destroyCategory(menu_category) # find the sub menu item of current item diff --git a/app/views/origami/addorders/detail.html.erb b/app/views/origami/addorders/detail.html.erb index 34920a1d..425715f1 100644 --- a/app/views/origami/addorders/detail.html.erb +++ b/app/views/origami/addorders/detail.html.erb @@ -197,7 +197,7 @@

-



+
diff --git a/app/views/origami/addorders/get_menu_category.json.jbuilder b/app/views/origami/addorders/get_menu_category.json.jbuilder index 8c96a6c7..91f659e8 100644 --- a/app/views/origami/addorders/get_menu_category.json.jbuilder +++ b/app/views/origami/addorders/get_menu_category.json.jbuilder @@ -1,5 +1,8 @@ if @menu.menu_items json.menu_items @menu.menu_items do |item| - json.partial! 'origami/addorders/menu_item', item: item + if item.is_available + json.partial! 'origami/addorders/menu_item', item: item + end + end end From 12458b71beb89f43832c794864a76e88bb2631c7 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 27 Sep 2017 11:30:47 +0630 Subject: [PATCH 08/11] update addorder --- app/assets/javascripts/addorder.js | 25 ++++++++++++------------- 1 file changed, 12 insertions(+), 13 deletions(-) diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 2611b491..8edc25b8 100644 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -166,20 +166,19 @@ $(function(){ max_qty = $(this).data('max-qty'); code = $(this).data('code'); - for(var field in item_options) { - value = item_options[field]["values"]; - type = item_options[field]["type"]; - row = "

"+type+"

" - $(value).each(function(i){ - row +=""; - }); - $(".options-list").append(row); + if ($('.selected-instance').length+1 <= max_qty) { + for(var field in item_options) { + value = item_options[field]["values"]; + type = item_options[field]["type"]; + row = "

"+type+"

" + $(value).each(function(i){ + row +=""; + }); + $(".options-list").append(row); + } } - - console.log($('.selected-instance').length) - if($(this).hasClass('selected-instance') == true){ sub_total = $('#set_total_price').text(); name = $(this).data('name'); From eaa591a17bf9ac01b76e0caf136a051c909f9c26 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 27 Sep 2017 13:07:33 +0630 Subject: [PATCH 09/11] update addorder --- app/assets/javascripts/addorder.js | 77 +++++++++++++++++++----------- 1 file changed, 48 insertions(+), 29 deletions(-) diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index 8edc25b8..dfb94dd4 100644 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -110,6 +110,9 @@ $(function(){ item_sets = $(this).data('item-sets'); for(var field in item_sets) { + + $('.set_order').attr('data-min-qty',item_sets[field]["min_selectable_qty"]); + value = item_sets[field]["instances"]; $(value).each(function(i){ console.log(value); @@ -161,12 +164,15 @@ $(function(){ $(".options-list").empty(); + rowCount = $('.selected-instance'); item_options = $(this).data('option'); + min_qty = $(this).data('min-qty'); max_qty = $(this).data('max-qty'); + code = $(this).data('code'); - if ($('.selected-instance').length+1 <= max_qty) { + if (rowCount.length+1 <= max_qty) { for(var field in item_options) { value = item_options[field]["values"]; type = item_options[field]["type"]; @@ -192,7 +198,7 @@ $(function(){ $(this).removeAttr('data-options'); $('#instance_option').text('') }else { - if ($('.selected-instance').length+1 <= max_qty) { + if (rowCount.length+1 <= max_qty) { sub_total = $('#set_total_price').text(); name = $(this).data('name'); price = $(this).data('price'); @@ -214,36 +220,49 @@ $(function(){ qty = parseInt($('#set_count').val()); item_code = $('#set_item_code').text(); item_name = $('#set_name').text(); + min_qty = $(this).data('min-qty'); var items = $('.selected-instance'); - attribute_arr = [] - option_arr = [] - var rowCount = $('.summary-items tbody tr').length+1; - $(items).each(function(i){ - code = $(items[i]).attr('data-code'); - name = $(items[i]).attr('data-name'); - price = $(items[i]).attr('data-price'); - option = $(items[i]).attr('data-options'); - total = qty * price ; - option_arr.push(option); - row ="
" - +'' - +'' - +'' - +'' - +''; - $(".summary-items tbody").append(row); - rowCount = rowCount + 1; - }); - calculate_sub_total(); + if (items.length >= min_qty) { + attribute_arr = [] + option_arr = [] + var rowCount = $('.summary-items tbody tr').length+1; + $(items).each(function(i){ + code = $(items[i]).attr('data-code'); + name = $(items[i]).attr('data-name'); + price = $(items[i]).attr('data-price'); + option = $(items[i]).attr('data-options'); + total = qty * price ; + option_arr.push(option); + row ="" + +'' + +'' + +'' + +'' + +''; + $(".summary-items tbody").append(row); + rowCount = rowCount + 1; + }); + calculate_sub_total(); + $(".sx_item_set_detailModal").css({ 'display': "none" }); + }else{ + $(".sx_item_set_detailModal").css({ 'display': "block" }); + $.alert({ + title: 'Alert!', + content: 'Please Select Minimum ' + min_qty + " items", + type: 'red', + typeAnimated: true, + btnClass: 'btn-danger', + }); + } }); //End add order Click From d4484ce8495a98251c08e476a4db10c6f620c5a8 Mon Sep 17 00:00:00 2001 From: Aung Myo Date: Wed, 27 Sep 2017 15:29:08 +0630 Subject: [PATCH 10/11] update addorder --- app/assets/javascripts/addorder.js | 44 ++++++++++++------- .../origami/addorders_controller.rb | 1 + .../settings/set_menu_items_controller.rb | 3 +- app/views/origami/addorders/detail.html.erb | 10 ++--- 4 files changed, 36 insertions(+), 22 deletions(-) diff --git a/app/assets/javascripts/addorder.js b/app/assets/javascripts/addorder.js index dfb94dd4..01d42309 100644 --- a/app/assets/javascripts/addorder.js +++ b/app/assets/javascripts/addorder.js @@ -23,23 +23,11 @@ $(function(){ var menu_items_list = $('.menu_items_list'); menu_items_list.empty(); menu_items = data.menu_items; - console.log(url_item); + + for(var field in menu_items) { if (menu_items[field].is_sub_item == false) { instances = menu_items[field].instances ; - $(instances).each(function(i){ - if (instances[i].is_default === true) { - code = instances[i].code; - name = instances[i].name; - price = parseFloat(instances[i].price).toFixed(2); - is_available = instances[i].is_available ; - is_on_promotion = instances[i].is_on_promotion; - item_attributes = instances[i].values; - promotion_price = instances[i].promotion_price; - code = instances[i].code; - } - }); - qty = 1; options = []; @@ -47,10 +35,32 @@ $(function(){ fa_plus = ''; menu_item_box = 'set_item_box'; data_target = 'sx_item_set_detailModal'; + + code = menu_items[field].code; + name = menu_items[field].name; + price = 0;//parseFloat( menu_items[field].price).toFixed(2); + is_available = menu_items[field].is_available ; + is_on_promotion = 0; + item_attributes = menu_items[field].attributes; + promotion_price = menu_items[field].promotion_price; }else{ fa_plus = 'fa-plus'; menu_item_box = 'menu_item_box'; - data_target = 'sx_item_detailModal' + data_target = 'sx_item_detailModal'; + + $(instances).each(function(i){ + if (instances[i].is_default === true) { + code = instances[i].code; + name = instances[i].name; + price = parseFloat(instances[i].price).toFixed(2); + is_available = instances[i].is_available ; + is_on_promotion = instances[i].is_on_promotion; + item_attributes = instances[i].values; + promotion_price = instances[i].promotion_price; + code = instances[i].code; + } + }); + } if (menu_items[field].image) { @@ -115,7 +125,6 @@ $(function(){ value = item_sets[field]["instances"]; $(value).each(function(i){ - console.log(value); $.ajax({ type: "GET", url: '../../api/restaurant/menu_item_instances/'+value[i]["id"], @@ -625,6 +634,9 @@ $(function(){ $(".item_box").removeAttr("data-active"); }); + $('#sx_item_set_detailModal').on('click','#close', function(){ + $("#sx_item_set_detailModal").css({ 'display': "none" }); + }); //click save buttom after change qty $('#sx_itemModal').on('click','#save', function(){ summary_items_filter(); diff --git a/app/controllers/origami/addorders_controller.rb b/app/controllers/origami/addorders_controller.rb index b8fd5921..7f68eba3 100644 --- a/app/controllers/origami/addorders_controller.rb +++ b/app/controllers/origami/addorders_controller.rb @@ -36,6 +36,7 @@ class Origami::AddordersController < BaseOrigamiController if (params[:id]) #Pull this menu @menu = MenuCategory.find_by_id(params[:id]) + puts @menu.menu_items[1].item_attributes.to_json return @menu else MenuCategory.current_menu diff --git a/app/controllers/settings/set_menu_items_controller.rb b/app/controllers/settings/set_menu_items_controller.rb index d37a59c9..f97aa09e 100644 --- a/app/controllers/settings/set_menu_items_controller.rb +++ b/app/controllers/settings/set_menu_items_controller.rb @@ -125,7 +125,8 @@ class Settings::SetMenuItemsController < ApplicationController end def set_settings_item_attribute - @item_attributes = MenuItemAttribute.all.order("id asc").map{|a| [a.name, a.value]} + @item_attributes = MenuItemAttribute.all.order("id asc")#.map{|a| [a.name, a.value]} + end def set_settings_item_option diff --git a/app/views/origami/addorders/detail.html.erb b/app/views/origami/addorders/detail.html.erb index 425715f1..eb19090a 100644 --- a/app/views/origami/addorders/detail.html.erb +++ b/app/views/origami/addorders/detail.html.erb @@ -62,7 +62,7 @@
'+rowCount+'' + item_name+ ' ' + name +'' + qty + '' - + parseFloat(total).toFixed(2) - +'
'+rowCount+'' + item_name+ ' ' + name +'' + qty + '' + + parseFloat(total).toFixed(2) + +'