优化付款交货待办展示并支持列表快捷登记
This commit is contained in:
+12
-4
@@ -8,13 +8,14 @@ from functools import wraps
|
||||
|
||||
from flask import (Flask, flash, jsonify, redirect, render_template, request,
|
||||
send_file, send_from_directory, session, url_for)
|
||||
from sqlalchemy import func
|
||||
from sqlalchemy import func, or_
|
||||
from werkzeug.security import check_password_hash, generate_password_hash
|
||||
from security import db, current_user, login_required, role_required, init_security, validate_password, sign_in
|
||||
from money import number, format_price
|
||||
from order_logic import scope
|
||||
from order_routes import register_order_routes
|
||||
from order_tracking import TRACKING_FILTERS, filter_tracking, register_tracking_routes
|
||||
from order_tracking import (TRACKING_FILTERS, filter_tracking, register_tracking_routes,
|
||||
tracking_conditions, tracking_priority)
|
||||
from excel_io import read_rows, read_material_rows, read_supplier_rows, save_upload
|
||||
from flask import abort
|
||||
|
||||
@@ -77,10 +78,14 @@ def index():
|
||||
month_total = (scope(db.query(func.sum(Order.total_amount)))
|
||||
.filter(Order.status == "approved").scalar() or 0)
|
||||
tracking_counts = {key: filter_tracking(scope(db.query(Order)), key).count() for key in TRACKING_FILTERS}
|
||||
tracking_rows = scope(db.query(Order)).filter_by(status='approved').order_by(Order.id.desc()).limit(12).all()
|
||||
tracking_key = request.args.get('tracking', 'open')
|
||||
tracking_query = filter_tracking(scope(db.query(Order)), tracking_key or 'open')
|
||||
tracking_total = tracking_query.count()
|
||||
tracking_rows = tracking_query.order_by(tracking_priority(), Order.id.asc()).limit(12).all()
|
||||
return render_template("index.html", user=u, todo=todo, my_orders=my_orders,
|
||||
counts=counts, month_total=month_total,
|
||||
tracking_counts=tracking_counts, tracking_rows=tracking_rows,
|
||||
tracking_key=tracking_key or 'open', tracking_total=tracking_total,
|
||||
status_text=STATUS_TEXT, role_text=ROLE_TEXT)
|
||||
|
||||
|
||||
@@ -108,7 +113,10 @@ def orders():
|
||||
q = q.filter(Order.order_date <= date_to)
|
||||
if u.role == "maker":
|
||||
q = q.filter(Order.created_by == u.id)
|
||||
q = filter_tracking(q, request.args.get('tracking', ''))
|
||||
tracking = request.args.get('tracking', '')
|
||||
q = filter_tracking(q, tracking)
|
||||
if not tracking and request.args.get('show_completed') != '1':
|
||||
q = q.filter(or_(Order.status != 'approved', ~tracking_conditions()['closed']))
|
||||
rows = q.order_by(Order.id.desc()).all()
|
||||
return render_template("orders.html", user=u, rows=rows, status_text=STATUS_TEXT,
|
||||
doc_types=DOC_TYPES, args=request.args)
|
||||
|
||||
Reference in New Issue
Block a user