from flask import ( Blueprint, render_template, request, redirect, url_for, flash ) from app.models.subcontractor_model import Subcontractor from app.services.subcontractor_rate_service import SubcontractorRateService from app.constants.messages import SuccessMessage, ErrorMessage engi_bp = Blueprint( "engineering", __name__, url_prefix="/engi" ) @engi_bp.route("/") def engineering_master(): return render_template( "engineering/index.html", title="Engineering Masters" ) @engi_bp.route("/subcontractor-rate") def add_subcontractor_rates(): subcontractors = Subcontractor.query.filter_by(status="Active").all() if request.method == "POST": try: SubcontractorRateService.save_rate(request.form) flash(SuccessMessage.SAVE, "success") return redirect(url_for("engineering.add_subcontractor_rates")) except Exception as e: flash(ErrorMessage.INTERNAL_SERVER_ERROR, "danger") return render_template( "engineering/add_rate.html", title="Subcontractor Rate Master", subcontractors=subcontractors ) @engi_bp.route("/client-rate") def client_rates(): return render_template( "engineering/client_rate.html", title="Client Rate Master" )