From 08bccd6144e040f18bbb704534fbf47d969218f4 Mon Sep 17 00:00:00 2001 From: Yan Date: Tue, 31 Oct 2017 11:03:00 +0630 Subject: [PATCH 1/5] fix seed for new receipt no --- app/models/seed_generator.rb | 20 ++++++-------------- 1 file changed, 6 insertions(+), 14 deletions(-) diff --git a/app/models/seed_generator.rb b/app/models/seed_generator.rb index 1451b11e..0748edf1 100755 --- a/app/models/seed_generator.rb +++ b/app/models/seed_generator.rb @@ -14,22 +14,14 @@ class SeedGenerator < ApplicationRecord # Generate Receipt No def self.new_receipt_no - seed = SeedGenerator.find_by_model("sale") - new_receipt_no = 0 - if (seed.nil?) - seed = SeedGenerator.new() - seed.model = "sale" - new_receipt_no = seed.next - seed.save + # Only return seed no + cur_val, next_val = self.update_seed("sale") - else - current_no = seed.next - seed.next = seed.next - seed.current = current_no - seed.save - end + if (cur_val == 0) + cur_val, next_val = self.execute_query("sale") + end - return seed.current + return cur_val end # Generate for 4 digit Code From 89381eb72b1f615adfa242696e6215eecb397dd1 Mon Sep 17 00:00:00 2001 From: Yan Date: Tue, 31 Oct 2017 13:34:52 +0630 Subject: [PATCH 2/5] add manage in ability for supervisor --- app/models/ability.rb | 13 +++++++-- app/views/layouts/_left_sidebar.html.erb | 4 +++ config/locales/en.yml | 1 + config/locales/mm.yml | 36 ++++++++++++++++++++---- 4 files changed, 46 insertions(+), 8 deletions(-) diff --git a/app/models/ability.rb b/app/models/ability.rb index 13712f3e..1636d048 100755 --- a/app/models/ability.rb +++ b/app/models/ability.rb @@ -129,10 +129,19 @@ class Ability can :item_edit, :sale_edit can :item_void_cancel, :sale_edit can :cancel_all_void, :sale_edit - can :apply_void, :sale_edit - + can :apply_void, :sale_edit can :overall_void, :void + can :index, :other_charge + can :create, :other_charge + can :index, :discount + can :create, :discount + can :remove_discount_items, :discount + can :remove_all_discount, :discount + + can :manage, Customer + can :manage, DiningQueue + can :first_bill, :payment can :create, :payment can :show, :payment diff --git a/app/views/layouts/_left_sidebar.html.erb b/app/views/layouts/_left_sidebar.html.erb index a0006ce5..d269a3c1 100755 --- a/app/views/layouts/_left_sidebar.html.erb +++ b/app/views/layouts/_left_sidebar.html.erb @@ -35,18 +35,21 @@ <%= t :dashboard %> + <% if can? :menage, OrderQueueStation %>
  • room_service <%= t :oqs %>
  • + <% end %>
  • monetization_on <%= t :origami %>
  • + <% if can? :menage, Customer %>
  • widgets @@ -61,6 +64,7 @@
  • + <% end %>
  • store diff --git a/config/locales/en.yml b/config/locales/en.yml index f8146589..dc020d95 100755 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -101,6 +101,7 @@ en: discount: "DISCOUNT" charges: "CHARGES" commissions: "COMMISSIONS" + commissioners: "COMMISSIONERS" in_duties: "IN DUTIES" move: "MOVE" req_bill: "REQ BILL" diff --git a/config/locales/mm.yml b/config/locales/mm.yml index 54239960..b17ba8de 100755 --- a/config/locales/mm.yml +++ b/config/locales/mm.yml @@ -6,7 +6,7 @@ mm: origami: "အရောင်းကောင်တာ" crm: "စားသုံးသူကြီးကြပ်ရေး" customer: "စားသုံးသူကြီးကြပ်ရေး" - queue: "စားသုံးသူကြီးကြပ်ရေး" + queue: "တန်းစီစာရင်း" inventory: "ကုန်လှောင်ရုံ" settings: "သတ်မှတ်ချက်များ" transactions: "အလုပ်ပြီးမြောက်မှု့များ" @@ -21,7 +21,7 @@ mm: products: "ကုန်စည်များ" promotions: "အရောင်းမြှင့်တင်ရေး" commissions: "ကော်မရှင်များ" - commissioners: "ကော်မရှင်များ" + commissioners: "ကော်မရှင်နာများ" printer: "ပရင့်တာ" logout: "ထွက်ရန်" sale: "အရောင်း" @@ -38,9 +38,33 @@ mm: category: "အမျိုးအစား" processed: "လုပ်ဆောင်ခဲ့ပြီး" completed: "ဆောင်ရွက်ပြီးစီး" - tax_profile: "Tax Profile" - payment_methods: "Payment Methods" - accounts: "Accounts" + tax_profile: "အခွန်အမျိုးအစား" + payment_method: "ငွေပေးချေရန်နည်းလမ်း" + payment_methods: "ငွေပေးချေရန်နည်းလမ်းများ" + accounts: "အကောင့်များ" + details: "အသေးစိတ်များ" + menus: "မီနူးများ" + sale_count: "ရောင်းရသည့်အရေအတွက်" + total_sale: "စုစုပေါင်းရောင်းရငွေ" + total_credit: "စုစုပေါင်းအကြွေး" + total_card: "ငွေရှင်းကတ်စုစုပေါင်း" + OQS: "အိုကျူအက်စ်" + tables: "စားပွဲများ" + rooms: "အခန်းများ" + cash_in: "ငွေသွင်း" + cash_out: "ငွေထုတ်" + close_cashier: "ငွေစာရင်းအပိတ်" + payment_reference: "ငွေပေးချေမှုအကိုးအကား" + reference_number: "ငွေပေးချေမှုနံပါတ်" + shift_started_at: "တာ၀န်စခဲ့သည့်အချိန်" + cashier_name: "ငွေထိန်းနာမည်" + closing_balance: "ငွေစာရင်းအပိတ်စာရင်း" + card_tap: "ကတ်ဖြင့်တို့ထိပါ" + customer_details: "စားသုံးသူကိုယ်ရေးအသေးစိတ်" + order_details: "မှာကြားမှုအသေးစိတ်" + sale_details: "ရောင်းရငွေအသေးစိတ်" + inventory_definitions: "ကုန်လှောင်ရုံပစ္စည်းဖွင့်ဆိုချက်များ" + sale_audits: "အရောင်းပြင်ဆင်ခြင်းများ" views: btn: @@ -75,7 +99,7 @@ mm: customer: "စားသုံးသူ" discount: "လျှော့စျေး" charges: "ပိုက်ဆံကောက်သည်" - commissions: "ကော်မရှင်များ" + commissions: "ကော်မရှင်များ" in_duties: "တာဝန်ကျသူများ" move: "ရွေ့ပြောင်းသည်" req_bill: "ကျသင့်ငွေတောင်းခံသည်" From 6a3e604af3a6920cf9672251690c688f5ae48191 Mon Sep 17 00:00:00 2001 From: Yan Date: Tue, 31 Oct 2017 13:42:09 +0630 Subject: [PATCH 3/5] dev ip change --- config/environments/development.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/environments/development.rb b/config/environments/development.rb index 4c681ee6..2eda7ecf 100755 --- a/config/environments/development.rb +++ b/config/environments/development.rb @@ -55,5 +55,5 @@ Rails.application.configure do config.file_watcher = ActiveSupport::EventedFileUpdateChecker # Set Cable URL - config.action_cable.url = "ws://192.168.1.39:3002/cable" + config.action_cable.url = "ws://192.168.1.196:3002/cable" end From c8c32cd6b353f7679a9fbeb5495cdcf826fa390e Mon Sep 17 00:00:00 2001 From: Yan Date: Tue, 31 Oct 2017 13:45:14 +0630 Subject: [PATCH 4/5] add logo --- public/image/SX-Logo-small.png | Bin 0 -> 989 bytes public/image/SX-logo.png | Bin 0 -> 3609 bytes 2 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 public/image/SX-Logo-small.png create mode 100644 public/image/SX-logo.png diff --git a/public/image/SX-Logo-small.png b/public/image/SX-Logo-small.png new file mode 100644 index 0000000000000000000000000000000000000000..be14a5c97aa63a9bcc862db43d253ae1a5ae55ed GIT binary patch literal 989 zcmV<310wv1P)n6#eWZwWvBErDoA6aW}~BOyz|c`#{MO*Vq>Is82G$I9;Jl(p^cfm zj^cnM&+|tcTg=me$HXHW4O~rPWEl&AgGL-`$-G)aWETT@wTb}90d?t47p)gU9w+m> z-0(a03Qr_kCs2mk@_QOt?A$VWCDud3QkEePVgHvEbK6@N_E~mO%qwCe&=r?!-fW8m z?qjPy3aq#VN-V@?J&?t%Ua{;BmR~1R?Q^VoAkXUx1W#_aPGF^}e+vWhROMW;+d4F* zSnWaHF%~f?1CYo6FQ_VKp~zqtKEBSpbijbAeRLVHjSwdiQLcOh#}5d_cUXe9OxhW0g~%0Hp!IBWn-t*S!eAwJ|0 zL3kJ(>>Gn`QX#eBYr}iFkas|^uURvBMkL;lyfC?>qW6YQpd)z|#Ycsr!jKvanvb18 zc~78}Pi$0@V&7M7U)lVZxnO{Oxu#wA0ru@cm49g3UObEV25qxoOLtK1K?s%=s^=N3 z4y7;{yb;m(lDGHS09w?o=;XoN(Wkc7+E8CrLoMSuku7-P zQIMdnnY_J*Jc4nPQb5=!A?5%cS1FS4o012lRfg@kJ=RUz0PP}CW1yz%L1P;SN)Uzj zSxbCUT3wvj8hOOVvpRzqR~f_$=Wg#^k_U#Ho(TGT#LC04QIrzg?XuPM(w1k_=6_d) zXWHl@&B<3x9x)M&Oq8N18U{;zU!InPn^w@V$OYxpCv09{BxT(#Uj&-$&(2=Ti2_2*aP(t_8 zB_a?&>4~(6Jl@~?d^@vyW_D)x%rq`89t0uhY?7N7Zo} z>1*Kd*L~`5;SKW-a`JN{({%NAcH@P3Ik~%;yE(ZA`+jy)xi0R4=x9QbOS^?v0R;-| zalR9O`@&dXLEk{A`B-<~ML%S9HIMS8UWZCTs1;ZxYa$`kSj$hI)L|Y7x3Ok22=CM< zQi04!;&^0xNQd2JCq2bA@&9Ydcp8D+_|E!rJS}PHUi>}Os#Hse!Y(P;YH|=b zN9&S&ZaQh0c8f|(7h6D4Mq|iKD6gKkVQ=6aS(8E#?jL=4`oSzjV~@;2YNQqS0RH|C zL-=xX9;RmZUtp?FrwgG&w)oljmRuoXHY{#`{pp{Y-y;*#W4jJzI>qs4dZN8XhNT{o-at^8?*WYpB2vXCYINMw7Tzp>G-F{QDw zVd^>Dm=_ean8e|K6y;8l6qbL>Rcc3F4@6Ov+v(#0NK4&Y99dgH&Mk>c(mCm0E z-9aHWZx9EtBO_Z(Hi4Xr z^Cu%akB4O7&q9q+QGiKlt+)yFZb^DYbq`yMV@t?&GKY0Ngh#^xQW{m=)|+I#K=t)J z&2C#n_9e!omFfF~P;z5lyrL(YcHJdwvC;P|!N*92sNBpDHS_AZ$)sQg&3Ys3&WtCG zRH%*SorLp7S(GNW$Z~36kRhS7N^1Rn;)wG}a94-xxHACc$J=0!MccxR7D;Pjm_eQ* z_yzcGFB30Uc*#qo8zE&{|| zU?p2i&G;iLa7)5^kRdzqZ~l5?4Q3ZLF6Mk5wi68w9(doHoL3K*27T1IXDphuScP!N z%nkpTr%UPkQQ=~VpnXNu#YT~sKcV5Mq_q($0Yy$=pOL2R2Oot*R>LM&2QD#GCrrvV zX>DUkfK9YNr^9aSqb6U^kJ=iN!WM%}+!D4$K}mP?=ug%d391fWjoRew@K)o>Y3Wos z#A@{O+-#4x)x@d|55^)1RQ1}9Bsn<)RPxEsHx$|U#m4PFj)mFg# zih5}VLi_ZF-l(k-&UeSTGL$G%ff_SC;B;}$RJ_6A9VRqkmI8u_sm`GPotOfzWu!VO zu}7L*Pv^7^0L#$C!cIiCIE9H#IfMR)Lx!b+($tEWVmrSWKqlYY%O<`^c#N`&wp~eFdYn%)&(q`Szga#JshsaBA z=Riw$FnDavxnQ)+>?x$^oHvlCCPbSTzsNN%l|uB34HEZXYsJhfUW$b}pHeu3Ys-<5 zP%k1Eq?s`G8WgA>I?2yKma~=;;S3}!xS60r&s%)BUD%e%w`E3Xf?B4esjvbbW-j@7Un1>~r1CjG4F5MFTD)X)DT<^LTflQx#Pjf;nTQO zO3jvqz};7oJOMwfbQO`^msR`|FyJQ7&kJR1R}ymr;%PcN(6a?joN);(bt5N}Iq{?F zN1o3<{c}P6FBP7R*pNPfXv?4HJXG4aTdrIe`7lZ%8lZpoSnuSXwpcXbB9P9O8aPLgh|z{kG2k)eiMm~6m*lK5m*<@!Q>(+`>x z^#GYuQ|mV99Q%A(-@%UB{?K3RM|uRsvmS%B%=UqHH9f$}re5ssSC&Bi6?3bQVD%OfS{NUGMrCUHTD^5M{ z>o;g>vW`n;aiJ%#aE!-1UNt^DE?WdOSy}aAxu_XtPE!rNh!EdglUemQ_(@&kX+ATv zG~R0$U29~noT;3TnZY@!lU_O+2IgI3#STD^qfUN`P@tnh!;98FsPH7(``#ycGY6oFyv8@If{al$z|6lRS&PJ^0%# zVqY3Jv$8U7{YX35x2aG6otTxDse3Pgu4!8c?j*Eb<~60G1m5$ZD%+lA>lfhkMi=zj zGP3%QET^dF+OJv8_@*W8o3R42R&UyzcG1i)yyyk}0338nwO_L<%aotcbrJ#$SG`QO zwh0qiMA&XpXaKeSi{WFD>Fj%JdSz!3mTjJCO06Z@v295ps=`z5<)6U;R1Y}NQ$n_- z!rS4K!A4Z$%Qs4+Ko^{;S*azqs}vpha5W`HjP0yP=sBpCP!jtLuVY4#<0tm~1V6$%vfw36Sz~d*y*$7YD{d8{` z^J8$l6{YA`_E2^e9B(Ga2JevJL?F|@I^BPRhX{a0o#Xm-5|)F-ud6(^rJUCI;qh{| z$;w*TzU>6N*|V251X#ZRyGCJ!&__74HHnNj|I|!DzSC}{r*XWH0hb)|Z5yj|&vHq$ zioM^XJPjNoxdILh^{ur+WEl73Bjo(33u_L&^CtyAPw@qN^61pvS=YBc~2wlh00phEbzoCE9@F~;Xxqt`9{?dNp%*O%|`*IotFKe-0pZyPcHFoB%M zs^5#fL%30LPuD!8`huY~z2#?o+Op}ZehDg%-?Q}CNMgeDMVX8ufHrzKK&>1ceL1B% z67ZW;8BQq+ilKTwBIk@czB}QK1k(<}6c+s)-L{PxxRz6`ynZVT6Q`5ELl!K~I)ta> z*FKXBU*v`r9-VjPd>K?(GNaQUUg@6I4Z>Lglfj$4Hy!Xept7B-g~`EAs@s>uO3G&p zxIhA)v8t+3_BR6p=>g<{8@1QGV-{xz+PMF8|0c)(T$0fE+m7BAn)GY;F^+72O6=QC zQ(?=4DmJ;|Flhenl~_*(Ky_XyAbZhp7)N~D_M#>w6$%ap235*1NXRB!XcaWON1URo z7%c*C81juiy@>F3000Hybk Date: Tue, 31 Oct 2017 15:57:50 +0630 Subject: [PATCH 5/5] check for payment methods --- .../origami/others_payments_controller.rb | 2 +- .../origami/payments_controller.rb | 62 +++++++++++++------ app/models/payment_method_setting.rb | 2 +- 3 files changed, 45 insertions(+), 21 deletions(-) diff --git a/app/controllers/origami/others_payments_controller.rb b/app/controllers/origami/others_payments_controller.rb index ed3fc93c..fa88afb7 100755 --- a/app/controllers/origami/others_payments_controller.rb +++ b/app/controllers/origami/others_payments_controller.rb @@ -4,7 +4,7 @@ class Origami::OthersPaymentsController < BaseOrigamiController @sale_id = params[:sale_id] @payment_method_setting = PaymentMethodSetting.all - @rebate = MembershipSetting.find_by_rebate(1) + @rebate = MembershipSetting.find_by_rebate(1) # @sale_id = params[:sale_id] # sale_data = Sale.find_by_sale_id(@sale_id) diff --git a/app/controllers/origami/payments_controller.rb b/app/controllers/origami/payments_controller.rb index 06174935..d6671700 100755 --- a/app/controllers/origami/payments_controller.rb +++ b/app/controllers/origami/payments_controller.rb @@ -164,28 +164,40 @@ class Origami::PaymentsController < BaseOrigamiController sale_id = params[:sale_id] member_info = nil - saleObj = Sale.find(sale_id) + saleObj = Sale.find(sale_id) - unique_code = "ReceiptBillPdf" - customer= Customer.find(saleObj.customer_id) + # For Cashier by Zone + bookings = Booking.where("sale_id='#{sale_id}'") + if bookings.count > 1 + # for Multiple Booking + table = DiningFacility.find(bookings[0].dining_facility_id) + else + table = DiningFacility.find(bookings[0].dining_facility_id) + end - #shop detail - shop_details = Shop.find(1) - # get member information - rebate = MembershipSetting.find_by_rebate(1) - if customer.membership_id != nil && rebate - member_info = Customer.get_member_account(customer) - rebate_amount = Customer.get_membership_transactions(customer,saleObj.receipt_no) - end - # get printer info - print_settings=PrintSetting.find_by_unique_code(unique_code) + cashier_zone = CashierTerminalByZone.find_by_zone_id(table.zone_id) + cashier_terminal = CashierTerminal.find(cashier_zone.cashier_terminal_id) - # Calculate price_by_accounts - item_price_by_accounts = SaleItem.calculate_price_by_accounts(saleObj.sale_items) - discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items) + unique_code = "ReceiptBillPdf" + customer= Customer.find(saleObj.customer_id) - printer = Printer::ReceiptPrinter.new(print_settings) - printer.print_receipt_bill(print_settings,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "Re-print") + #shop detail + shop_details = Shop.find(1) + # get member information + rebate = MembershipSetting.find_by_rebate(1) + if customer.membership_id != nil && rebate + member_info = Customer.get_member_account(customer) + rebate_amount = Customer.get_membership_transactions(customer,saleObj.receipt_no) + end + # get printer info + print_settings=PrintSetting.find_by_unique_code(unique_code) + + # Calculate price_by_accounts + item_price_by_accounts = SaleItem.calculate_price_by_accounts(saleObj.sale_items) + discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items) + + printer = Printer::ReceiptPrinter.new(print_settings) + printer.print_receipt_bill(print_settings,cashier_terminal,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "Re-print") end def foc @@ -200,6 +212,18 @@ class Origami::PaymentsController < BaseOrigamiController sale_payment = SalePayment.new sale_payment.process_payment(saleObj, @user, cash, "foc") + # For Cashier by Zone + bookings = Booking.where("sale_id='#{sale_id}'") + if bookings.count > 1 + # for Multiple Booking + table = DiningFacility.find(bookings[0].dining_facility_id) + else + table = DiningFacility.find(bookings[0].dining_facility_id) + end + + cashier_zone = CashierTerminalByZone.find_by_zone_id(table.zone_id) + cashier_terminal = CashierTerminal.find(cashier_zone.cashier_terminal_id) + unique_code = "ReceiptBillPdf" customer= Customer.find(saleObj.customer_id) @@ -213,7 +237,7 @@ class Origami::PaymentsController < BaseOrigamiController discount_price_by_accounts = SaleItem.get_discount_price_by_accounts(saleObj.sale_items) printer = Printer::ReceiptPrinter.new(print_settings) - printer.print_receipt_bill(print_settings,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "FOC") + printer.print_receipt_bill(print_settings,cashier_terminal,saleObj.sale_items,saleObj,customer.name, item_price_by_accounts, discount_price_by_accounts, member_info,rebate_amount,shop_details, "FOC") end end diff --git a/app/models/payment_method_setting.rb b/app/models/payment_method_setting.rb index 2ffff25d..4f1de785 100755 --- a/app/models/payment_method_setting.rb +++ b/app/models/payment_method_setting.rb @@ -1,4 +1,4 @@ class PaymentMethodSetting < ApplicationRecord # validations - validates_presence_of :payment_method, :gateway_communication_type, :gateway_url, :auth_token, :merchant_account_id + validates_presence_of :payment_method #, :gateway_communication_type, :gateway_url, :auth_token, :merchant_account_id end