From 8e5cfdeb975935c79abfa5315cf3ab0aaf971d2a Mon Sep 17 00:00:00 2001 From: Steve Roberts Date: Wed, 1 Jul 2020 10:56:52 +1000 Subject: [PATCH] Add more details on payments to invoice. --- app/assets/stylesheets/mail/email.scss | 42 +++++++++++++++++++ app/views/spree/admin/orders/_list.html.haml | 16 +++++++ .../spree/order_mailer/_payment.html.haml | 17 ++++---- 3 files changed, 68 insertions(+), 7 deletions(-) create mode 100644 app/views/spree/admin/orders/_list.html.haml diff --git a/app/assets/stylesheets/mail/email.scss b/app/assets/stylesheets/mail/email.scss index dee2738ead..83e1156baa 100644 --- a/app/assets/stylesheets/mail/email.scss +++ b/app/assets/stylesheets/mail/email.scss @@ -107,6 +107,48 @@ table.order-summary { } } +// put in separate order invoice scss file? +table.payment-list { + width:100%; + border-collapse: separate; + border-spacing: 0px; + font-size:12px; + + tbody tr td { + padding: 5px; + border-bottom: 1px solid #666; + + .payment-method-name{ + display:block; + font-weight:bold; + } + .payment-method-description{ + display:block; + } + } + + thead tr th { + border-bottom: 1px solid #666; + padding: 10px 5px 5px; + text-transform: uppercase; + text-align: left; + } + + th.amount, td.amount{ + text-align: right; + padding-right:15px; + } + + th.payment-state{ + text-align: right; + } + + td.payment-state{ + text-align: right; + text-transform: uppercase; + } +} + .text-right { text-align: right; } diff --git a/app/views/spree/admin/orders/_list.html.haml b/app/views/spree/admin/orders/_list.html.haml new file mode 100644 index 0000000000..898c3d5288 --- /dev/null +++ b/app/views/spree/admin/orders/_list.html.haml @@ -0,0 +1,16 @@ +%table.payment-list + %thead + %tr + %th= "#{Spree.t('date')}/#{Spree.t('time')}" + %th.amount= t(:amount) + %th= t(:payment_method) + %th.payment-state= t(:payment_state) + %tbody + - payments.each do |payment| + %tr + %td= pretty_time(payment.created_at) + %td.amount= payment.display_amount.to_html + %td + %span.payment-method-name= payment_method_name(payment) + %span.payment-method-description= payment.payment_method.description + %td.payment-state= t(payment.state, scope: :payment_states, default: payment.state.capitalize) \ No newline at end of file diff --git a/app/views/spree/order_mailer/_payment.html.haml b/app/views/spree/order_mailer/_payment.html.haml index 85ad234cda..1f5ef0375a 100644 --- a/app/views/spree/order_mailer/_payment.html.haml +++ b/app/views/spree/order_mailer/_payment.html.haml @@ -3,12 +3,15 @@ - if @order.paid? = t :email_payment_paid - else - = t :email_payment_not_paid + - if @order.outstanding_balance? + = @order.outstanding_balance < 0 ? t(:credit_owed) : t(:balance_due) + \: + %strong= @order.display_outstanding_balance + - else + = t :email_payment_not_paid %strong = t :email_payment_summary -%h4 - = t :email_payment_method - %strong= last_payment_method(@order)&.name -%p - %em= last_payment_method(@order)&.description -%p   +- if @order.payments.any? + = render partial: 'list', locals: { payments: @order.payments } +- else + .alpha.twelve.columns.no-objects-found= t(:order_has_no_payments)