114 lines
2.9 KiB
Python
114 lines
2.9 KiB
Python
from flask import Flask, render_template, request, jsonify
|
|
import sys
|
|
import os
|
|
from api_routes import api_routes
|
|
import webview
|
|
from waitress import serve
|
|
|
|
if getattr(sys, 'frozen', False):
|
|
template_folder = os.path.join(sys._MEIPASS, 'templates')
|
|
app = Flask(__name__, template_folder=template_folder, static_url_path='/static')
|
|
else:
|
|
app = Flask(__name__, static_url_path='/static')
|
|
|
|
|
|
#app = Flask(__name__, static_url_path='/static')
|
|
app.register_blueprint(api_routes) # 분리된 API 라우트 등록
|
|
|
|
@app.route('/')
|
|
def index():
|
|
return render_template('layer.html')
|
|
|
|
@app.route('/progress')
|
|
def progess():
|
|
return render_template('progress.html')
|
|
|
|
@app.route('/oneLineProgress')
|
|
def oneLineProgess():
|
|
return render_template('oneLineProgress.html')
|
|
|
|
# 종료 함수
|
|
def shutdown_waitress_server():
|
|
print("Shutting down the server...")
|
|
os._exit(0)
|
|
|
|
def destroy(window):
|
|
print('Destroying window..')
|
|
window.destroy()
|
|
print('Destroyed!')
|
|
|
|
@app.route('/shutdown', methods=['POST'])
|
|
def shutdown():
|
|
destroy(test)
|
|
shutdown_waitress_server()
|
|
return 'Server shutting down'
|
|
|
|
port=5000
|
|
|
|
# if __name__ == "__main__":
|
|
# app.run(port=port, debug=True)
|
|
|
|
test = webview.create_window('Palletizing', app)
|
|
if __name__ == "__main__":
|
|
webview.start()
|
|
serve(app, host="0.0.0.0", port=port)
|
|
|
|
|
|
# from flask import Flask, render_template, request
|
|
# import sys
|
|
# import os
|
|
# from api_routes import api_routes
|
|
# import webview
|
|
# from waitress import serve
|
|
# import threading
|
|
|
|
# # Flask 애플리케이션 설정
|
|
# if getattr(sys, 'frozen', False):
|
|
# template_folder = os.path.join(sys._MEIPASS, 'templates')
|
|
# app = Flask(__name__, template_folder=template_folder, static_url_path='/static')
|
|
# else:
|
|
# app = Flask(__name__, static_url_path='/static')
|
|
|
|
# app.register_blueprint(api_routes)
|
|
|
|
# @app.route('/')
|
|
# def index():
|
|
# return render_template('layer.html')
|
|
|
|
# @app.route('/progress')
|
|
# def progress():
|
|
# return render_template('progress.html')
|
|
|
|
# @app.route('/oneLineProgress')
|
|
# def oneLineProgress():
|
|
# return render_template('oneLineProgress.html')
|
|
|
|
# # 종료 함수
|
|
# def shutdown_server():
|
|
# print("Shutting down the server...")
|
|
# os._exit(0)
|
|
|
|
# # 종료 라우트 설정
|
|
# @app.route('/shutdown', methods=['POST'])
|
|
# def shutdown():
|
|
# print("Shutdown request received.")
|
|
# destroy(test) # Webview 윈도우 종료
|
|
# shutdown_server() # Waitress 서버와 프로그램 종료
|
|
# return 'Server shutting down...'
|
|
|
|
# # Webview 윈도우 종료 함수
|
|
# def destroy(window):
|
|
# print('Destroying window..')
|
|
# window.destroy()
|
|
# print('Destroyed!')
|
|
|
|
# # 서버 실행
|
|
# port = 5000
|
|
# test = webview.create_window('Palletizing', app)
|
|
|
|
# if __name__ == "__main__":
|
|
# # Webview와 Waitress 서버를 별도 스레드로 실행
|
|
# server_thread = threading.Thread(target=lambda: serve(app, host="0.0.0.0", port=port))
|
|
# server_thread.start()
|
|
# webview.start()
|