Commit 601f0ca5 by aagusti

Merge branch 'master' of https://git.opensipkd.com/taufik/esipkd

2 parents 05c46ef9 715562db
No preview for this file type
......@@ -51,6 +51,9 @@ from daftar import (STATUS, deferred_status,
)
from ..models.bjb_qris import BJBQRIS
from ..models.bjb_va import BJBVA
SESS_ADD_FAILED = 'Gagal tambah Tagihan'
SESS_EDIT_FAILED = 'Gagal edit Tagihan'
log = logging.getLogger(__name__)
......@@ -915,6 +918,30 @@ def view_pdf(request):
imgqrcode.save(path, 'PNG')
item.qrcode = open(path, 'rb').read()
# ---------------------------- untuk tambah qris---------------------
no_bayar = row.kode
qris = DBSession.query(BJBQRIS).join(ARInvoice, ARInvoice.kode==BJBQRIS.invoice_no).\
filter(BJBQRIS.invoice_no==no_bayar).first()
from ..tools import get_tmp
if qris:
img_qr = qrcode.make(str(qris.qrcode))
path = get_tmp() + str(qris.va_number)
img_qr.save(path, 'PNG')
item.qris = open(path, 'rb').read()
else:
item.qris=''
# -----------------------------------------------------------------------
# ---------------------------- untuk tambah va---------------------
qva = DBSession.query(BJBVA).join(ARInvoice, ARInvoice.kode==BJBVA.invoice_no).\
filter(BJBVA.invoice_no==no_bayar).first()
if qva:
item.qva = qva.va_number
else:
item.qva=''
# -----------------------------------------------------------------------
data = {}
data['item'] = item
template.render(data)
......
......@@ -247,7 +247,9 @@ class view(object):
@view_config(route_name='bjbqris-add', renderer='templates/bjbqris/add-edit.pt', permission='add')
def view_add(self):
request = self.req
params = request.params
form = get_form(request, AddSchema)
row_invoice = q_inv(params['no_invoice']).first()
if request.POST:
if 'simpan' in request.POST:
......@@ -270,7 +272,20 @@ class view(object):
return route_list(request)
elif SESS_ADD_FAILED in request.session:
return session_failed(request, SESS_ADD_FAILED)
values = {}
if row_invoice:
pokok, denda = calculate_tagihan(dict(pokok = row_invoice.jumlah,jatuh_tempo=row_invoice.jatuh_tempo))
values = {}
values['invoice_no']=row_invoice.kode
values['description']=row_invoice.description
values['customer_name']=row_invoice.subjek_nama
values['customer_email']=row_invoice.subjek_email and row_invoice.subjek_email or '-'
values['customer_phone']=row_invoice.subjek_phone and row_invoice.subjek_phone or '-'
values['expired_date']=ymdhms(datetime.combine(date.today(),time(23,59,59)))
values['amount']=(pokok + denda)
else:
alues = {}
form.set_appstruct(values)
return dict(form=form)
......
......@@ -91,6 +91,7 @@ class AddSchema(colander.Schema):
colander.Integer(),
oid = "amount",
title="Amount")
class EditSchema(AddSchema):
invoice_no = colander.SchemaNode(
......@@ -246,7 +247,11 @@ class view(object):
@view_config(route_name='bjbva-add', renderer='templates/bjbva/add-edit.pt', permission='read')
def view_add(self):
request = self.req
params = request.params
form = get_form(request, AddSchema)
row_invoice = q_inv(params['no_invoice']).first()
# ArInvoice.departemen_id==request.session['departemen_id'])
if request.POST:
if 'simpan' in request.POST:
......@@ -271,9 +276,26 @@ class view(object):
return route_list(request)
elif SESS_ADD_FAILED in request.session:
return session_failed(request, SESS_ADD_FAILED)
values = {}
form.set_appstruct(values)
return dict(form=form)
if row_invoice:
pokok, denda = calculate_tagihan(dict(pokok = row_invoice.jumlah,jatuh_tempo=row_invoice.jatuh_tempo))
print ("++++++++++++++++++++++++++", str(row_invoice.description))
values = {}
values['invoice_no']=str(row_invoice.kode)
values['description']=str(row_invoice.description)
values['customer_name']=row_invoice.subjek_nama
values['customer_email']=row_invoice.subjek_email and row_invoice.subjek_email or '-'
values['customer_phone']=row_invoice.subjek_phone and row_invoice.subjek_phone or '-'
values['expired_date']=ymdhms(datetime.combine(date.today(),time(23,59,59)))
values['amount']=(pokok + denda)
print ('---------------------------------', values)
form.set_appstruct(values)
return dict(form=form, invoice_no=params['no_invoice'])
else:
values = {}
form.set_appstruct(values)
return dict(form=form)
########
......
......@@ -43,9 +43,11 @@
<script src="/static/datatables/media/js/dataTables.bootstrap.js"></script>
<script>
var mID;
var mKD;
var oTable;
var iPos;
var oFormUrl = "/arinvoiceb/";
var oFormUrli = "/";
var oTableUrl = oFormUrl+"grid/act";
$.fn.dataTable.ext.search.push(
function( oSettings, aData, iDataIndex ) {
......@@ -173,24 +175,20 @@
' <button id="btn_print1" class="btn btn btn-info pull-left" type="button">Kwitansi</button>',
' <button id="btn_posting" class="btn btn btn-success pull-left" type="button">Posting</button>',
' <button id="btn_close" class="btn btn btn-warning" type="button">Tutup</button>',
' <label class="pull-left">Periode',
' <input id="awal" class="input-sm " type="text" value="${rows.awal}">',
' s.d <input id="akhir" class="input-sm " type="text" value="${rows.akhir}">',
' </label>',
' <button id="btn_pdf" class="btn btn btn-success pull-left" type="button">PDF</button>',
' <button id="btn_csv" class="btn btn btn-info pull-left" type="button">CSV</button>',
'<div class="dropdown">',
'<button class="btn btn btn-danger pull-left" type="button" id="bjb_va_qris" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">BJB VA / QRIS',
'</button>',
'<div class="dropdown-menu" aria-labelledby="bjb_va_qris">',
'<li><a href="/bjbva">BJB VA</a></li>',
'<li><a href="/bjbqris">BJB QRIS</a></li>',
'</div>',
'</div>',
' <button id="btn_va" class="btn btn btn-success pull-left" type="button">CREATE VA</button>',
' <button id="btn_qris" class="btn btn btn-info pull-left" type="button">CREATE QRIS</button>',
' &nbsp;',
'</div>',
'<div class="btn-group pull-left">',
'</div>',
'<div class="btn-group pull-left">',
' <label class="pull-left">Periode',
' <input id="awal" class="input-sm " type="text" value="${rows.awal}">',
' s.d <input id="akhir" class="input-sm " type="text" value="${rows.akhir}">',
' </label>',
'</div>',
];
......@@ -226,6 +224,7 @@
//var aData = oTable.fnGetData(iPos);
var aData = oTable.row( this ).data();
mID = aData[0];
mKD = aData[1];
oTable.$('tr.selected').removeClass('selected');
$(this).addClass('selected');
}
......@@ -243,6 +242,23 @@
}
});
$('#btn_va').click(function () {
if (mKD) {
window.location = oFormUrli+'bjbva/add?no_invoice='+mKD;
} else {
alert('Silahkan pilih data yang akan tambah Va');
}
});
$('#btn_qris').click(function () {
if (mKD) {
window.location = oFormUrli+'/bjbqris/add?no_invoice='+mKD;
} else {
alert('Silahkan pilih data yang akan tambah QRIS');
}
});
$('#btn_posting').click(function () {
url = oFormUrl+'posting?awal='+$('#awal').val()+"&akhir="+$('#akhir').val();
window.location = url;
......
......@@ -44,7 +44,7 @@
$('.input-date').datetimepicker({
format: "yyyy-mm-dd hh:ii:ss"
});
<tal:block tal:condition="not 'id' in request.matchdict">
<tal:block tal:condition="not 'id' in request.matchdict and not 'no_invoice' in request.params">
$('#invoice_no').select2({
ajax: {
url: '/bjbva/kodebayar/act',
......@@ -101,6 +101,11 @@
$('#response_code').prop('readonly', true);
$('#response_message').prop('readonly', true);
</tal:block>
<tal:block tal:condition="'no_invoice' in request.params and request.params['no_invoice']">
$('#invoice_no').select2('data', {id: {invoice_no}, value: {invoice_no}});
</tal:block>
});
</script>
</div> <!-- /metal:script -->
......
Markdown is supported
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!