Ejemplo n.º 1
0
def bill_new():
	no = db.session.query(db.func.max(Bill.no)).filter_by(site_id=g.sid, branch_id=g.bid).scalar() or 0
	ref_no = no + 1
	bill_no = strftime('%Y%m') + '-' + str(ref_no).zfill(g.bigit)
	status = Status.query.filter_by(name='new', module='bill').first()

	bill = Bill(site_id=g.sid, branch_id=g.bid)
	bill.no = ref_no
	bill.bill_no = bill_no
	bill.status_id = status.id
	bill.currency = g.currency
	bill.user_id = g.uid
	bill.tax_rate = g.tax
	bill.discount_rate = g.discount_rate

	bill_count = Bill.query.filter_by(site_id=g.sid, branch_id=g.bid, status_id=status.id).count()
	data, error = BillSchema().dump(bill)
	return jsonify({
		'bill': data,
		'hold_bill_count': bill_count
	})