背景:
宝安区需求,企业会下载表格,打印后填报。填报后收上表格,统一录入PDA。因为某台PDA只能录某个地方的表格,所以他们希望纸质表上有个二维码,扫描出现填报公司的一些信息,以及统计(好像是这样,没文档,口头说的)。
访问文件下载接口,传入user_id,就能下载到带有user_id二维码的问卷,扫描二维码,会出现一个信息页面,点击完成按钮,会将该公司状态更新为完成。
很小的项目,从头到尾简单纪录一下
整个项目
flask框架:main.py
import sys, time, os from util import * from flask import Flask, jsonify, g, make_response, send_from_directory, request, render_template from flask_cors import CORS reload(sys) sys.setdefaultencoding('utf8') app = Flask(__name__) app.app_context().push() @app.before_request def before_request(): pass @app.after_request def after_request(response): response.headers['Access-Control-Allow-Origin'] = '*'#处理跨域 return response @app.route('/report/down') def down(): user_id = request.args['user_id'] count(user_id, 'down') file_name = mergePdf(user_id) remove_file(file_name) return send_from_directory(os.getcwd(), file_name, as_attachment=True) @app.route('/report/complete') def complete(): user_id = request.args['user_id'] count(user_id, 'complete') return jsonify({}) @app.route('/report/detail') def detail(): info = reportInfo() info['noComplete'] = info['len']-info['down'] info['area_name'] = '西乡街道'#暂时写死 info['user_id'] = request.args['user_id'] return render_template("result.html", info=info) @app.route('/report/report_info') def report_info(): return jsonify(reportInfo()) def runFlask(port): app.run(host='0.0.0.0', port=port, threaded=True)#异步请求 CORS(app, supports_credentials=True) if '__main__' == __name__: runFlask(9090)