vyapari 0.1.4 → 0.1.5dev

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (164) hide show
  1. checksums.yaml +4 -4
  2. data/app/assets/images/vyapari/sample_stock_bundle.csv +1 -0
  3. data/app/controllers/vyapari/admin/base_controller.rb +10 -0
  4. data/app/controllers/vyapari/admin/brands_controller.rb +99 -0
  5. data/app/controllers/vyapari/admin/categories_controller.rb +115 -0
  6. data/app/controllers/vyapari/admin/countries_controller.rb +2 -2
  7. data/app/controllers/vyapari/admin/dashboard_controller.rb +3 -1
  8. data/app/controllers/vyapari/admin/exchange_rates_controller.rb +2 -2
  9. data/app/controllers/vyapari/admin/products_controller.rb +79 -0
  10. data/app/controllers/vyapari/admin/regions_controller.rb +1 -1
  11. data/app/controllers/vyapari/admin/resource_controller.rb +1 -0
  12. data/app/controllers/vyapari/admin/stores_controller.rb +67 -0
  13. data/app/controllers/vyapari/admin/suppliers_controller.rb +67 -0
  14. data/app/controllers/vyapari/admin/terminals_controller.rb +150 -0
  15. data/app/controllers/vyapari/application_controller.rb +12 -0
  16. data/app/controllers/vyapari/store_manager/base_controller.rb +28 -0
  17. data/app/controllers/vyapari/store_manager/dashboard_controller.rb +30 -0
  18. data/app/controllers/vyapari/store_manager/resource_controller.rb +17 -0
  19. data/app/controllers/vyapari/store_manager/stock_bundles_controller.rb +206 -0
  20. data/app/controllers/vyapari/store_manager/stock_entries_controller.rb +161 -0
  21. data/app/controllers/vyapari/terminal_staff/base_controller.rb +29 -0
  22. data/app/controllers/vyapari/terminal_staff/dashboard_controller.rb +29 -0
  23. data/app/controllers/vyapari/terminal_staff/invoices_controller.rb +138 -0
  24. data/app/controllers/vyapari/terminal_staff/line_items_controller.rb +123 -0
  25. data/app/controllers/vyapari/terminal_staff/resource_controller.rb +17 -0
  26. data/app/controllers/vyapari/user_dashboard_controller.rb +31 -0
  27. data/app/models/brand.rb +63 -10
  28. data/app/models/category.rb +60 -16
  29. data/app/models/country.rb +27 -5
  30. data/app/models/exchange_rate.rb +31 -6
  31. data/app/models/image/brand_image.rb +3 -0
  32. data/app/models/image/category_image.rb +3 -0
  33. data/app/models/image/product_image.rb +3 -0
  34. data/app/models/invoice.rb +223 -0
  35. data/app/models/line_item.rb +206 -0
  36. data/app/models/product.rb +67 -13
  37. data/app/models/region.rb +26 -3
  38. data/app/models/stock_bundle.rb +249 -0
  39. data/app/models/stock_entry.rb +271 -0
  40. data/app/models/store.rb +216 -0
  41. data/app/models/supplier.rb +85 -0
  42. data/app/models/terminal.rb +158 -0
  43. data/app/models/vyapari/application_record.rb +4 -0
  44. data/app/uploaders/brand_image_uploader.rb +14 -0
  45. data/app/uploaders/category_image_uploader.rb +14 -0
  46. data/app/uploaders/product_image_uploader.rb +14 -0
  47. data/app/uploaders/stock_bundle_uploader.rb +10 -0
  48. data/app/views/layouts/kuppayam/_footer.html.erb +1 -1
  49. data/app/views/layouts/kuppayam/_sidebar.html.erb +45 -44
  50. data/app/views/layouts/vyapari/_store_manager_menu.html.erb +107 -0
  51. data/app/views/layouts/vyapari/_terminal_staff_menu.html.erb +103 -0
  52. data/app/views/layouts/vyapari/store_manager.html.erb +112 -0
  53. data/app/views/layouts/vyapari/terminal_staff.html.erb +116 -0
  54. data/app/views/vyapari/admin/brands/_form.html.erb +23 -0
  55. data/app/views/vyapari/admin/brands/_index.html.erb +89 -0
  56. data/app/views/vyapari/admin/brands/_row.html.erb +63 -0
  57. data/app/views/vyapari/admin/brands/_show.html.erb +104 -0
  58. data/app/views/vyapari/admin/brands/index.html.erb +48 -0
  59. data/app/views/vyapari/admin/categories/_form.html.erb +28 -0
  60. data/app/views/vyapari/admin/categories/_index.html.erb +101 -0
  61. data/app/views/vyapari/admin/categories/_row.html.erb +69 -0
  62. data/app/views/vyapari/admin/categories/_show.html.erb +115 -0
  63. data/app/views/vyapari/admin/{users → categories}/index.html.erb +8 -24
  64. data/app/views/vyapari/admin/countries/_index.html.erb +1 -1
  65. data/app/views/vyapari/admin/countries/index.html.erb +19 -3
  66. data/app/views/vyapari/admin/exchange_rates/_form.html.erb +3 -4
  67. data/app/views/vyapari/admin/exchange_rates/_index.html.erb +7 -7
  68. data/app/views/vyapari/admin/exchange_rates/_row.html.erb +3 -3
  69. data/app/views/vyapari/admin/exchange_rates/_show.html.erb +1 -0
  70. data/app/views/vyapari/admin/exchange_rates/index.html.erb +19 -3
  71. data/app/views/vyapari/admin/products/_form.html.erb +32 -0
  72. data/app/views/vyapari/admin/products/_index.html.erb +58 -0
  73. data/app/views/vyapari/admin/products/_row.html.erb +30 -0
  74. data/app/views/vyapari/admin/products/_show.html.erb +81 -0
  75. data/app/views/vyapari/admin/products/index.html.erb +48 -0
  76. data/app/views/vyapari/admin/regions/_index.html.erb +1 -1
  77. data/app/views/vyapari/admin/regions/index.html.erb +19 -3
  78. data/app/views/vyapari/admin/stores/_form.html.erb +37 -0
  79. data/app/views/vyapari/admin/stores/_index.html.erb +84 -0
  80. data/app/views/vyapari/admin/stores/_row.html.erb +55 -0
  81. data/app/views/vyapari/admin/stores/_show.html.erb +110 -0
  82. data/app/views/vyapari/admin/stores/index.html.erb +48 -0
  83. data/app/views/vyapari/admin/suppliers/_form.html.erb +32 -0
  84. data/app/views/vyapari/admin/suppliers/_index.html.erb +58 -0
  85. data/app/views/vyapari/admin/suppliers/_row.html.erb +30 -0
  86. data/app/views/vyapari/admin/suppliers/_show.html.erb +81 -0
  87. data/app/views/vyapari/admin/suppliers/index.html.erb +48 -0
  88. data/app/views/vyapari/admin/terminals/_form.html.erb +24 -0
  89. data/app/views/vyapari/admin/terminals/_index.html.erb +75 -0
  90. data/app/views/vyapari/admin/terminals/_row.html.erb +49 -0
  91. data/app/views/vyapari/admin/terminals/_show.html.erb +74 -0
  92. data/app/views/vyapari/store_manager/dashboard/index.html.erb +93 -0
  93. data/app/views/vyapari/store_manager/stock_bundles/_form.html.erb +99 -0
  94. data/app/views/vyapari/store_manager/stock_bundles/_index.html.erb +74 -0
  95. data/app/views/vyapari/store_manager/stock_bundles/_row.html.erb +44 -0
  96. data/app/views/vyapari/store_manager/stock_bundles/_show.html.erb +110 -0
  97. data/app/views/vyapari/store_manager/stock_bundles/create.html.erb +57 -0
  98. data/app/views/vyapari/store_manager/stock_bundles/index.html.erb +36 -0
  99. data/app/views/vyapari/store_manager/stock_bundles/update.html.erb +57 -0
  100. data/app/views/vyapari/store_manager/stock_entries/_form.html.erb +50 -0
  101. data/app/views/vyapari/store_manager/stock_entries/_index.html.erb +80 -0
  102. data/app/views/vyapari/store_manager/stock_entries/_row.html.erb +33 -0
  103. data/app/views/vyapari/store_manager/stock_entries/_show.html.erb +110 -0
  104. data/app/views/vyapari/store_manager/stock_entries/_stock_bundle.html.erb +61 -0
  105. data/app/views/vyapari/store_manager/stock_entries/index.html.erb +45 -0
  106. data/app/views/vyapari/terminal_staff/dashboard/_counts.html.erb +88 -0
  107. data/app/views/vyapari/terminal_staff/dashboard/_invoices.html.erb +37 -0
  108. data/app/views/vyapari/terminal_staff/dashboard/index.html.erb +36 -0
  109. data/app/views/vyapari/terminal_staff/invoices/_draft.html.erb +62 -0
  110. data/app/views/vyapari/terminal_staff/invoices/_form.html.erb +120 -0
  111. data/app/views/vyapari/terminal_staff/invoices/_index.html.erb +64 -0
  112. data/app/views/vyapari/terminal_staff/invoices/_row.html.erb +33 -0
  113. data/app/views/vyapari/terminal_staff/invoices/_show.html.erb +171 -0
  114. data/app/views/vyapari/terminal_staff/invoices/index.html.erb +37 -0
  115. data/app/views/vyapari/terminal_staff/invoices/new.js.erb +13 -0
  116. data/app/views/vyapari/terminal_staff/invoices/show.html.erb +1 -0
  117. data/app/views/vyapari/terminal_staff/line_items/_form.html.erb +40 -0
  118. data/app/views/vyapari/terminal_staff/line_items/_index.html.erb +94 -0
  119. data/app/views/vyapari/terminal_staff/line_items/create.js.erb +34 -0
  120. data/app/views/vyapari/terminal_staff/line_items/destroy.js.erb +25 -0
  121. data/app/views/vyapari/terminal_staff/stores/index.html.erb +24 -0
  122. data/app/views/vyapari/user_dashboard/index.html.erb +51 -0
  123. data/config/routes.rb +62 -5
  124. data/db/import_data/brands.csv +7 -0
  125. data/db/import_data/categories.csv +12 -0
  126. data/db/import_data/countries.csv +1 -0
  127. data/db/import_data/dummy/brands.csv +7 -0
  128. data/db/import_data/dummy/categories.csv +12 -0
  129. data/db/import_data/dummy/countries.csv +1 -0
  130. data/db/import_data/dummy/exchange_rates.csv +5 -0
  131. data/db/import_data/dummy/products-copy.csv +1 -0
  132. data/db/import_data/dummy/products.csv +1 -0
  133. data/db/import_data/dummy/products.xlsx +0 -0
  134. data/db/import_data/dummy/regions.csv +13 -0
  135. data/db/import_data/dummy/stores.csv +10 -0
  136. data/db/import_data/dummy/suppliers.csv +14 -0
  137. data/db/import_data/dummy/terminals.csv +11 -0
  138. data/db/import_data/exchange_rates.csv +5 -0
  139. data/db/import_data/regions.csv +13 -0
  140. data/db/import_data/stores.csv +3 -0
  141. data/db/import_data/suppliers.csv +14 -0
  142. data/db/import_data/terminals.csv +3 -0
  143. data/db/migrate/20170000000200_create_exchange_rates.rb +3 -2
  144. data/db/migrate/20170000000203_create_contacts.rb +22 -0
  145. data/db/migrate/20170000000204_create_bank_accounts.rb +21 -0
  146. data/db/migrate/20170000000205_create_suppliers.rb +18 -0
  147. data/db/migrate/20170000000206_create_stores.rb +21 -0
  148. data/db/migrate/20170000000207_create_terminals.rb +18 -0
  149. data/db/migrate/20170000000210_create_brands.rb +14 -0
  150. data/db/migrate/20170000000211_create_categories.rb +22 -0
  151. data/db/migrate/20170000000212_create_products.rb +29 -0
  152. data/db/migrate/20170000000213_create_invoices.rb +58 -0
  153. data/db/migrate/20170000000215_create_stock_bundles.rb +17 -0
  154. data/db/migrate/20170000000216_create_stock_entries.rb +20 -0
  155. data/db/sample_reports/products.xlsx +0 -0
  156. data/lib/tasks/vyapari/all.rake +73 -0
  157. data/lib/vyapari/version.rb +1 -1
  158. metadata +150 -15
  159. data/app/controllers/vyapari/admin/users_controller.rb +0 -130
  160. data/app/views/vyapari/admin/users/_form.html.erb +0 -39
  161. data/app/views/vyapari/admin/users/_index.html.erb +0 -101
  162. data/app/views/vyapari/admin/users/_row.html.erb +0 -72
  163. data/app/views/vyapari/admin/users/_show.html.erb +0 -199
  164. data/lib/tasks/vyapari_tasks.rake +0 -4
@@ -17,6 +17,7 @@
17
17
  <div class="col-md-3 col-sm-12 col-xs-12">
18
18
 
19
19
  <% edit_link = edit_admin_exchange_rate_path(id: @exchange_rate.id) %>
20
+
20
21
  <% delete_link = admin_exchange_rate_path(id: @exchange_rate.id) %>
21
22
 
22
23
  <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @exchange_rate.can_be_edited? %>
@@ -9,10 +9,26 @@
9
9
 
10
10
  <div id="div_exchange_rate_action_buttons">
11
11
  <div class="row">
12
- <div class="col-md-4">
13
- <%= link_to raw("<i class='fa fa-plus mr-10'></i><span class='btn-text'> New Exchange Rate</span>"), new_admin_exchange_rate_path, :class=>"btn btn-primary pull-left mb-5", :remote=>true %>
12
+ <div class="col-md-6">
13
+
14
+ <%= theme_button('New Exchange Rate', 'plus', new_admin_exchange_rate_path(), classes: "pull-left", btn_type: "success") %>
15
+
16
+ <%= theme_button('Refresh', 'refresh', admin_exchange_rates_path(), classes: "pull-left ml-10", btn_type: "white") %>
17
+
18
+ <!-- Single button -->
19
+ <div class="ml-10 btn-group hidden">
20
+ <button type="button" class="btn btn-white dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
21
+ More Actions <span class="caret"></span>
22
+ </button>
23
+ <ul class="dropdown-menu">
24
+ <li><a href="#">Import Users</a></li>
25
+ <li><a href="#">Import History</a></li>
26
+ <li role="separator" class="divider"></li>
27
+ <li><a href="#">Export Users</a></li>
28
+ </ul>
29
+ </div>
14
30
  </div>
15
- <div class="col-md-8">
31
+ <div class="col-md-6">
16
32
  <%= search_form_kuppayam(ExchangeRate, admin_exchange_rates_path, text: @filters[:query]) %>
17
33
  </div>
18
34
  </div>
@@ -0,0 +1,32 @@
1
+ <%= form_for([:admin, @product], :html => {:id=>"form_product", :class=>"mb-0 form-horizontal", :product => "form", :method => (@product.new_record? ? :post : :put), :remote=>true}) do |f| %>
2
+
3
+ <div id="product_form_error">
4
+ <%= @product.errors[:base].to_sentence %>
5
+ </div>
6
+
7
+ <div class="form-inputs mb-30 mt-30">
8
+ <%= theme_form_field(@product, :name) %>
9
+ <%= theme_form_field(@product, :code) %>
10
+
11
+ <%= theme_form_field(@product, :address, required: true, html_options: {type: :textarea}) %>
12
+
13
+ <%= theme_form_field(@product, :city) %>
14
+
15
+ <% options = {assoc_collection: Country.select("id, name").order("name ASC").all, required: true, editable: true, assoc_display_method: :name} %>
16
+ <%= theme_form_assoc_group(@product, :country_id, **options) %>
17
+
18
+ </div>
19
+
20
+ <div>
21
+
22
+ <%= submit_tag("Save", :class=>"btn btn-primary pull-right ml-10") %>
23
+
24
+ <%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeGenericModal();", class: "pull-right ml-10 btn btn-white" %>
25
+
26
+ </div>
27
+ <%= clear_tag(10) %>
28
+
29
+ </div>
30
+
31
+ <% end %>
32
+
@@ -0,0 +1,58 @@
1
+ <div class="table-responsive">
2
+ <table class="table table-hover members-table middle-align">
3
+ <thead>
4
+ <tr>
5
+ <th style="text-align: center;width:60px">#</th>
6
+ <th>Name</th>
7
+ <th>Code</th>
8
+ <th>City</th>
9
+ <th>Country</th>
10
+ <th style="text-align: center;">Actions</th>
11
+ </tr>
12
+ </thead>
13
+
14
+ <tbody>
15
+ <% @products.each_with_index do |product, i| %>
16
+
17
+ <% edit_link = edit_admin_product_path(id: product.id) %>
18
+ <% delete_link = admin_product_path(id: product.id) %>
19
+
20
+ <tr id="tr_product_<%= product.id %>">
21
+
22
+ <th scope="row" style="text-align: center;">
23
+ <% if i < 0 %>
24
+ <i class="fa fa-check text-success"></i>
25
+ <% else %>
26
+ <%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
27
+ <% end %>
28
+ </th>
29
+
30
+ <td class="product-name"><%= link_to product.name, admin_product_path(product), remote: true %></td>
31
+
32
+ <td class="product-name"><%= link_to product.code, admin_product_path(product), remote: true %></td>
33
+
34
+ <td class="product-name"><%= link_to product.city, admin_product_path(product), remote: true %></td>
35
+
36
+ <td class="product-name"><%= link_to product.country.try(:name), admin_product_path(product), remote: true %></td>
37
+
38
+
39
+ <td class="action-links" style="width:10%">
40
+
41
+ <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Product"), edit_link, :remote=>true, class: "edit" %>
42
+
43
+ <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, product: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
44
+
45
+ </td>
46
+
47
+ </tr>
48
+ <% end %>
49
+ </tbody>
50
+ </table>
51
+ </div>
52
+
53
+ <div class="row">
54
+ <div class="col-sm-12">
55
+ <%= paginate_kuppayam(@products) %>
56
+ </div>
57
+ </div>
58
+
@@ -0,0 +1,30 @@
1
+ <% edit_link = edit_admin_product_path(id: product.id) %>
2
+ <% delete_link = admin_product_path(id: product.id) %>
3
+
4
+ <tr id="tr_product_<%= product.id %>">
5
+
6
+ <th scope="row" style="text-align: center;">
7
+ <% if i < 0 %>
8
+ <i class="fa fa-check text-success"></i>
9
+ <% else %>
10
+ <%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
11
+ <% end %>
12
+ </th>
13
+
14
+ <td class="product-name"><%= link_to product.name, admin_product_path(product), remote: true %></td>
15
+
16
+ <td class="product-name"><%= link_to product.code, admin_product_path(product), remote: true %></td>
17
+
18
+ <td class="product-name"><%= link_to product.city, admin_product_path(product), remote: true %></td>
19
+
20
+ <td class="product-name"><%= link_to product.country.try(:name), admin_product_path(product), remote: true %></td>
21
+
22
+ <td class="action-links" style="width:10%">
23
+
24
+ <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Product"), edit_link, :remote=>true, class: "edit" %>
25
+
26
+ <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, product: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
27
+
28
+ </td>
29
+
30
+ </tr>
@@ -0,0 +1,81 @@
1
+ <div id="div_product_show">
2
+
3
+ <div class="row">
4
+
5
+ <div class="col-md-9 col-sm-12 col-xs-12" style="border-right:1px solid #f1f1f1;">
6
+
7
+ <div class="visible-sm visible-xs mt-50"></div>
8
+
9
+ <%= theme_panel_heading(@product.display_name) %>
10
+ <%= theme_panel_sub_heading(@product.code, "#") %>
11
+ <%= theme_panel_sub_heading(@product.city, "#") %>
12
+ <%= theme_panel_description(@product.country.name) if @product.country %>
13
+
14
+ <%= clear_tag(10) %>
15
+
16
+ <div class="mt-20" style="max-width: 100%;overflow: auto;max-height: 500px;">
17
+ <%= raw(@product.address) %>
18
+ </div>
19
+
20
+ <%= clear_tag(10) %>
21
+
22
+ <div class="visible-sm visible-xs mb-50"></div>
23
+
24
+ </div>
25
+
26
+ <div class="col-md-3 col-sm-12 col-xs-12">
27
+
28
+ <% edit_link = edit_admin_product_path(id: @product.id) %>
29
+ <% delete_link = admin_product_path(id: @product.id) %>
30
+
31
+ <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @product.can_be_edited? %>
32
+
33
+ <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, product: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "btn btn-block btn-danger btn-only-hover" if @product.can_be_deleted? %>
34
+
35
+ <div class="visible-sm visible-xs mb-50"></div>
36
+
37
+ </div>
38
+
39
+ </div>
40
+
41
+ <%= clear_tag(50) %>
42
+
43
+ <ul class="nav nav-pills">
44
+ <li class="active">
45
+ <a href="#technical_details" data-toggle="tab" aria-expanded="false">
46
+ <span class="visible-xs"><i class="fa-database"></i></span>
47
+ <span class="hidden-xs">Technical Details</span>
48
+ </a>
49
+ </li>
50
+ </ul>
51
+
52
+ <div class="tab-content">
53
+ <div class="tab-pane active" id="technical_details">
54
+
55
+ <%= clear_tag(20) %>
56
+
57
+ <div class="table-responsive">
58
+ <table class="table table-striped table-condensed table-bordered mb-30">
59
+ <tbody>
60
+
61
+ <tr>
62
+ <th>ID</th><td colspan="3"><%= @product.id %></td>
63
+ </tr>
64
+
65
+ <tr>
66
+ <th>Created At</th><td><%= @product.created_at.strftime("%m/%d/%Y - %H:%M:%S") if @product.created_at %></td>
67
+ <th>Updated At</th><td><%= @product.updated_at.strftime("%m/%d/%Y - %H:%M:%S") if @product.updated_at %></td>
68
+ </tr>
69
+
70
+ </tbody>
71
+ </table>
72
+
73
+ </div>
74
+
75
+ </div>
76
+ </div>
77
+
78
+ <%= link_to "Close", "#", onclick: "closeGenericModal();", class: "btn btn-primary pull-right" %>
79
+
80
+ <%= clear_tag %>
81
+ </div>
@@ -0,0 +1,48 @@
1
+ <div class="row">
2
+
3
+ <div class="col-md-12">
4
+
5
+ <ul class="nav nav-tabs">
6
+ </ul>
7
+ <div class="tab-content">
8
+ <div class="tab-pane active">
9
+
10
+ <div id="div_product_action_buttons">
11
+ <div class="row">
12
+ <div class="col-md-6">
13
+
14
+ <%= theme_button('Add a Product', 'plus', new_admin_product_path(), classes: "pull-left", btn_type: "success") %>
15
+
16
+ <%= theme_button('Refresh', 'refresh', admin_products_path(), classes: "pull-left ml-10", btn_type: "white") %>
17
+
18
+ <!-- Single button -->
19
+ <div class="ml-10 btn-group hidden">
20
+ <button type="button" class="btn btn-white dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
21
+ More Actions <span class="caret"></span>
22
+ </button>
23
+ <ul class="dropdown-menu">
24
+ <li><a href="#">Import Users</a></li>
25
+ <li><a href="#">Import History</a></li>
26
+ <li role="separator" class="divider"></li>
27
+ <li><a href="#">Export Users</a></li>
28
+ </ul>
29
+ </div>
30
+ </div>
31
+ <div class="col-md-6">
32
+ <%= search_form_kuppayam(Product, admin_products_path, text: @filters[:query]) %>
33
+ </div>
34
+ </div>
35
+ </div>
36
+ <%= clear_tag(10) %>
37
+
38
+ <div id="div_product_index">
39
+ <%= render :partial=>"vyapari/admin/products/index" %>
40
+ </div>
41
+ <%= clear_tag(10) %>
42
+
43
+ </div>
44
+ </div>
45
+
46
+ </div>
47
+
48
+ </div>
@@ -2,7 +2,7 @@
2
2
  <table class="table table-hover members-table middle-align">
3
3
  <thead>
4
4
  <tr>
5
- <th style="text-align: center;width:20px">#</th>
5
+ <th style="text-align: center;width:60px">#</th>
6
6
  <th>Name</th>
7
7
  <th>Code</th>
8
8
  <th>Country</th>
@@ -9,10 +9,26 @@
9
9
 
10
10
  <div id="div_region_action_buttons">
11
11
  <div class="row">
12
- <div class="col-md-4">
13
- <%= link_to raw("<i class='fa fa-plus mr-10'></i><span class='btn-text'> New Region</span>"), new_admin_region_path, :class=>"btn btn-primary pull-left mb-5", :remote=>true %>
12
+ <div class="col-md-6">
13
+
14
+ <%= theme_button('Add a Region', 'plus', new_admin_region_path(), classes: "pull-left", btn_type: "success") %>
15
+
16
+ <%= theme_button('Refresh', 'refresh', admin_regions_path(), classes: "pull-left ml-10", btn_type: "white") %>
17
+
18
+ <!-- Single button -->
19
+ <div class="ml-10 btn-group hidden">
20
+ <button type="button" class="btn btn-white dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
21
+ More Actions <span class="caret"></span>
22
+ </button>
23
+ <ul class="dropdown-menu">
24
+ <li><a href="#">Import Users</a></li>
25
+ <li><a href="#">Import History</a></li>
26
+ <li role="separator" class="divider"></li>
27
+ <li><a href="#">Export Users</a></li>
28
+ </ul>
29
+ </div>
14
30
  </div>
15
- <div class="col-md-8">
31
+ <div class="col-md-6">
16
32
  <%= search_form_kuppayam(Region, admin_regions_path, text: @filters[:query]) %>
17
33
  </div>
18
34
  </div>
@@ -0,0 +1,37 @@
1
+ <%= form_for([:admin, @store], :html => {:id=>"form_store", :class=>"mb-0 form-horizontal", :store => "form", :method => (@store.new_record? ? :post : :put), :remote=>true}) do |f| %>
2
+
3
+ <div id="store_form_error">
4
+ <%= @store.errors[:base].to_sentence %>
5
+ </div>
6
+
7
+ <div class="form-inputs mb-30 mt-30">
8
+ <%= theme_form_field(@store, :name) %>
9
+ <%= theme_form_field(@store, :code) %>
10
+
11
+ <%
12
+ store_types = Store::STORE_TYPES_REVERSE
13
+ options_list = Array[*store_types.collect {|v,i| [v,i] }]
14
+ %>
15
+ <%= theme_form_select_group(f, @store, :store_type, options_list, label: "Store Type", param_name: "store_type", prompt: true, required: true) %>
16
+
17
+ <% options = {assoc_collection: Region.select("id, name").order("name ASC").all, required: false, editable: true, assoc_display_method: :name} %>
18
+ <%= theme_form_assoc_group(@store, :region_id, **options) %>
19
+
20
+ <% options = {assoc_collection: Country.select("id, name").order("name ASC").all, required: false, editable: true, assoc_display_method: :name} %>
21
+ <%= theme_form_assoc_group(@store, :country_id, **options) %>
22
+
23
+ </div>
24
+
25
+ <div>
26
+
27
+ <%= submit_tag("Save", :class=>"btn btn-primary pull-right ml-10") %>
28
+
29
+ <%= link_to raw("<i class='fa fa-close mr-5'></i><span>Cancel</span>"), "#", onclick: "closeLargeModal();", class: "pull-right ml-10 btn btn-white" %>
30
+
31
+ </div>
32
+ <%= clear_tag(10) %>
33
+
34
+ </div>
35
+
36
+ <% end %>
37
+
@@ -0,0 +1,84 @@
1
+ <div class="table-responsive">
2
+ <table class="table table-hover members-table middle-align">
3
+ <thead>
4
+ <tr>
5
+ <th style="text-align: center;width:60px">#</th>
6
+ <th>Name</th>
7
+ <th>Code</th>
8
+ <th>Store Type</th>
9
+ <th>Region</th>
10
+ <th>Country</th>
11
+ <th>Status</th>
12
+ <th style="text-align: center;" colspan="2">Actions</th>
13
+ </tr>
14
+ </thead>
15
+
16
+ <tbody>
17
+ <% @stores.each_with_index do |store, i| %>
18
+
19
+ <% edit_link = edit_admin_store_path(id: store.id) %>
20
+ <% delete_link = admin_store_path(id: store.id) %>
21
+
22
+ <tr id="tr_store_<%= store.id %>">
23
+
24
+ <th scope="row" style="text-align: center;">
25
+ <% if i < 0 %>
26
+ <i class="fa fa-check text-success"></i>
27
+ <% else %>
28
+ <%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
29
+ <% end %>
30
+ </th>
31
+
32
+ <td class="store-name"><%= link_to store.name, admin_store_path(store), remote: true %></td>
33
+
34
+ <td class="store-name"><%= link_to store.code, admin_store_path(store), remote: true %></td>
35
+
36
+ <td class="store-name"><%= link_to store.display_store_type, admin_store_path(store), remote: true %></td>
37
+
38
+ <td class="store-name"><%= link_to store.region.try(:name), admin_store_path(store), remote: true %></td>
39
+
40
+ <td class="store-name"><%= link_to store.country.try(:name), admin_store_path(store), remote: true %></td>
41
+
42
+ <td>
43
+ <% if store.inactive? %>
44
+ <span class="ml-5 mt-5 label label-default">Inactive</span>
45
+ <% elsif store.active? %>
46
+ <span class="ml-5 mt-5 label label-success">Active</span>
47
+ <% elsif store.closed? %>
48
+ <span class="ml-5 mt-5 label label-danger">Closed</span>
49
+ <% end %>
50
+ </td>
51
+
52
+ <td class="action-links" style="width:10%">
53
+
54
+ <!-- Activate -->
55
+ <%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Activate"), update_status_admin_store_path(store, :status =>'active'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", :class=>"edit" if store.can_be_activated? %>
56
+
57
+ <!-- In Activate -->
58
+ <%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> In Activate"), update_status_admin_store_path(store, :status =>'inactive'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", :class=>"" if store.can_be_inactivated? %>
59
+
60
+ <!-- Close -->
61
+ <%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Close"), update_status_admin_store_path(store, :status =>'closed'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure? Do you really want to close the store?' }, :class=>"delete" if store.can_be_closed? %>
62
+
63
+ </td>
64
+
65
+ <td class="action-links" style="width:10%">
66
+
67
+ <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Store"), edit_link, :remote=>true, class: "edit" %>
68
+
69
+ <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, store: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
70
+
71
+ </td>
72
+
73
+ </tr>
74
+ <% end %>
75
+ </tbody>
76
+ </table>
77
+ </div>
78
+
79
+ <div class="row">
80
+ <div class="col-sm-12">
81
+ <%= paginate_kuppayam(@stores) %>
82
+ </div>
83
+ </div>
84
+
@@ -0,0 +1,55 @@
1
+ <% edit_link = edit_admin_store_path(id: store.id) %>
2
+ <% delete_link = admin_store_path(id: store.id) %>
3
+
4
+ <tr id="tr_store_<%= store.id %>">
5
+
6
+ <th scope="row" style="text-align: center;">
7
+ <% if i < 0 %>
8
+ <i class="fa fa-check text-success"></i>
9
+ <% else %>
10
+ <%= i + 1 + (@per_page.to_i * (@current_page.to_i - 1)) %>
11
+ <% end %>
12
+ </th>
13
+
14
+ <td class="store-name"><%= link_to store.name, admin_store_path(store), remote: true %></td>
15
+
16
+ <td class="store-name"><%= link_to store.code, admin_store_path(store), remote: true %></td>
17
+
18
+ <td class="store-name"><%= link_to store.display_store_type, admin_store_path(store), remote: true %></td>
19
+
20
+ <td class="store-name"><%= link_to store.region.try(:name), admin_store_path(store), remote: true %></td>
21
+
22
+ <td class="store-name"><%= link_to store.country.try(:name), admin_store_path(store), remote: true %></td>
23
+
24
+ <td>
25
+ <% if store.inactive? %>
26
+ <span class="ml-5 mt-5 label label-default">Inactive</span>
27
+ <% elsif store.active? %>
28
+ <span class="ml-5 mt-5 label label-success">Active</span>
29
+ <% elsif store.closed? %>
30
+ <span class="ml-5 mt-5 label label-danger">Closed</span>
31
+ <% end %>
32
+ </td>
33
+
34
+ <td class="action-links" style="width:10%">
35
+
36
+ <!-- Activate -->
37
+ <%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Activate"), update_status_admin_store_path(store, :status =>'active'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", :class=>"edit" if store.can_be_activated? %>
38
+
39
+ <!-- In Activate -->
40
+ <%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> In Activate"), update_status_admin_store_path(store, :status =>'inactive'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", :class=>"" if store.can_be_inactivated? %>
41
+
42
+ <!-- Close -->
43
+ <%= link_to raw("<i class=\"fa fa-circle-o mr-5\"></i> Close"), update_status_admin_store_path(store, :status =>'closed'), :method =>'PUT', :remote=>true, role: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure? Do you really want to close the store?' }, :class=>"delete" if store.can_be_closed? %>
44
+
45
+ </td>
46
+
47
+ <td class="action-links" style="width:10%">
48
+
49
+ <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit Store"), edit_link, :remote=>true, class: "edit" %>
50
+
51
+ <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, store: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "delete" %>
52
+
53
+ </td>
54
+
55
+ </tr>
@@ -0,0 +1,110 @@
1
+ <% @terminals = @store.terminals.page(@current_page).per(@per_page) %>
2
+
3
+ <div id="div_store_show">
4
+
5
+ <div class="row">
6
+
7
+ <div class="col-md-9 col-sm-12 col-xs-12" style="border-right:1px solid #f1f1f1;">
8
+
9
+ <div class="visible-sm visible-xs mt-50"></div>
10
+
11
+ <%= theme_panel_heading(@store.display_name) %>
12
+ <%= theme_panel_sub_heading(@store.code, "#") %>
13
+ <%= theme_panel_sub_heading(@store.store_type, "#") %>
14
+ <%= theme_panel_description(@store.region.name) if @store.region %>
15
+ <%= theme_panel_description(@store.country.name) if @store.country %>
16
+
17
+ <%= clear_tag(10) %>
18
+
19
+ <div class="visible-sm visible-xs mb-50"></div>
20
+
21
+ </div>
22
+
23
+ <div class="col-md-3 col-sm-12 col-xs-12">
24
+
25
+ <% edit_link = edit_admin_store_path(id: @store.id) %>
26
+ <% delete_link = admin_store_path(id: @store.id) %>
27
+
28
+ <%= link_to raw("<i class=\"linecons-pencil\"></i> Edit"), edit_link, :remote=>true, class: "btn btn-block btn-success" if @store.can_be_edited? %>
29
+
30
+ <%= link_to raw("<i class=\"linecons-trash\"></i> Delete"), delete_link, method: :delete, store: "menuitem", tabindex: "-1", data: { confirm: 'Are you sure?' }, :remote=>true, class: "btn btn-block btn-danger btn-only-hover" if @store.can_be_deleted? %>
31
+
32
+ <div class="visible-sm visible-xs mb-50"></div>
33
+
34
+ </div>
35
+
36
+ </div>
37
+
38
+ <%= clear_tag(50) %>
39
+
40
+ <ul class="nav nav-pills">
41
+ <li class="active">
42
+ <a href="#terminals" data-toggle="tab" aria-expanded="false">
43
+ <span class="visible-xs"><i class="fa-database"></i></span>
44
+ <span class="hidden-xs">Terminals</span>
45
+ </a>
46
+ </li>
47
+
48
+ <li class="">
49
+ <a href="#technical_details" data-toggle="tab" aria-expanded="false">
50
+ <span class="visible-xs"><i class="fa-database"></i></span>
51
+ <span class="hidden-xs">Technical Details</span>
52
+ </a>
53
+ </li>
54
+ </ul>
55
+
56
+ <div class="tab-content">
57
+
58
+ <div class="tab-pane active" id="terminals" style="border: 1px solid #000;min-height:200px;padding:20px;margin-bottom:20px;max-height: 400px;overflow-y: auto;">
59
+
60
+ <%= clear_tag(20) %>
61
+
62
+ <div id="div_terminal_action_buttons">
63
+ <div class="row">
64
+ <div class="col-md-6">
65
+
66
+ <%= theme_button('Add a Terminal', 'plus', new_admin_store_terminal_path(@store), classes: "pull-left", btn_type: "success") %>
67
+
68
+ <%= theme_button('Refresh', 'refresh', admin_store_terminals_path(@store), classes: "pull-left ml-10", btn_type: "white") %>
69
+ </div>
70
+ <div class="col-md-6">
71
+ <%= search_form_kuppayam(Terminal, admin_store_terminals_path(@store), text: "") %>
72
+ </div>
73
+ </div>
74
+ </div>
75
+ <%= clear_tag(10) %>
76
+
77
+ <div id="div_terminal_index">
78
+ <%= render :partial=>"vyapari/admin/terminals/index" %>
79
+ </div>
80
+ </div>
81
+
82
+ <div class="tab-pane" id="technical_details">
83
+
84
+ <%= clear_tag(20) %>
85
+
86
+ <div class="table-responsive">
87
+ <table class="table table-striped table-condensed table-bordered mb-30">
88
+ <tbody>
89
+
90
+ <tr>
91
+ <th>ID</th><td colspan="3"><%= @store.id %></td>
92
+ </tr>
93
+
94
+ <tr>
95
+ <th>Created At</th><td><%= @store.created_at.strftime("%m/%d/%Y - %H:%M:%S") if @store.created_at %></td>
96
+ <th>Updated At</th><td><%= @store.updated_at.strftime("%m/%d/%Y - %H:%M:%S") if @store.updated_at %></td>
97
+ </tr>
98
+
99
+ </tbody>
100
+ </table>
101
+
102
+ </div>
103
+
104
+ </div>
105
+ </div>
106
+
107
+ <%= link_to "Close", "#", onclick: "closeLargeModal();", class: "btn btn-primary pull-right" %>
108
+
109
+ <%= clear_tag %>
110
+ </div>