def staff(): if request.method == 'GET': return render_template("staff_page.html") if request.method == 'POST': load_xlsx_type = request.form.get('load_xlsx') if load_xlsx_type == 'temperature': xlsx_data = load_xlsx(request.form.get('temp_datetime_from'), request.form.get('temp_datetime_to'), TemperatureSensor) if xlsx_data[2]: return excel.make_response_from_array( xlsx_data[2], "xlsx", file_name="Показания датчика температуры с " + str(xlsx_data[0]) + ' по ' + str(xlsx_data[1])) else: flash(u"Данные за указанный период не были найдены", "temperature") elif load_xlsx_type == 'pressure': xlsx_data = load_xlsx(request.form.get('press_datetime_from'), request.form.get('press_datetime_to'), PressureSensor) if xlsx_data[2]: return excel.make_response_from_array( xlsx_data[2], "xlsx", file_name="Показания датчика температуры с " + str(xlsx_data[0]) + ' по ' + str(xlsx_data[1])) else: flash(u"Данные за указанный период не были найдены", "pressure") return render_template("staff_page.html")
def export_s_and_h_xlsx(): if not session.has_key("username"):return redirect("/login") export_form = ExportSandHForm(request.form) try: if request.method == 'POST' and export_form.validate(): export_helper = S_and_H_ExportHelper(export_form) data_to_export = export_helper.get_export_data() attachment_output = excel.make_response_from_array(data_to_export, 'xlsx', status=200, file_name="S_and_H-Estado-{0}.xlsx".format( Utilities.get_state_label(export_helper.get_filtering_state()))) attachment_output.headers["Content-type"] = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" attachment_output.headers["Content-Disposition"] = "attachment; filename=S_and_H-Estado-{0}.xlsx".format( Utilities.get_state_label(export_helper.get_filtering_state())) return attachment_output return render_template("s_and_h_export_filters.html", form=export_form) except Exception as e: error = e return render_template("mensaje_sistema.html", message=error)
def export_invites(): invites = Invite.query.filter(Invite.organization == 'SUMLPU').all() data = [['status', 'datum', 'voonaam', 'naam', 'klas']] data_cache = {} for invite in invites: state = 'geen antwoord' date = 'nvt' class_group = invite.class_group if invite.class_group else '' if invite.contact_responses: response = invite.contact_responses[0] if response.info == 'student': state = 'student' else: state = 'tijdslot' date = response.timeslot key = invite.first_name + invite.last_name + class_group if not key in data_cache: data_cache[key] = [ state, date, invite.first_name, invite.last_name, class_group ] else: if state != 'geen antwoord': data_cache[key][0] = state data_cache[key][1] = date for k, v in data_cache.items(): data.append(v) return excel.make_response_from_array( data, "xlsx", file_name=u"overzicht-laptop-afhalen.xlsx")
def download_equipment(): return excel.make_response_from_array([[ 'category_id', 'label_id', 'service_id', 'model', 'serial', 'name', 'arrived_at', 'description' ]], "xls", file_name="equipment_samples")
def withdraw_download(): params = {} for key, value in request.args.items(): if value != '': params[key] = value params['per_page'] = 10000 if params.get('created_begin_timestamp'): params['created_begin_timestamp'] = int( time.mktime( time.strptime(params['created_begin_timestamp'], u"%Y年%m月%d日"))) if params.get('created_end_timestamp'): params['created_end_timestamp'] = int( time.mktime( time.strptime(params['created_end_timestamp'] + u' 23:59:59', u"%Y年%m月%d日 %H:%M:%S"))) params['per_page'] = 10000 member_data = Api.get('/admin/withdraw', params) status = dict(STATUS_FLAG) fields = [[u'时间', u'用户编号', u'提现数量', u'手续费', u'提现地址', u'交易哈希', u'状态']] data = [[ timestamp_to_str(y['created_timestamp']), y['user']['uid'], format_currency(y['amount']), format_currency(y['fee']), y['address'], y['txid'], status[y['status']] ] for y in member_data['items']] return excel.make_response_from_array(fields + data, "xls", file_name='提现')
def job_latest_result(job_id, result_type): """Download Job's latest result.""" fetching_result_job = Job.query.get_or_404(job_id) last_tracker = TrackJobRun.query.filter_by( job_id=fetching_result_job.job_id ).order_by(TrackJobRun.ran_on.desc()).first() if last_tracker is not None: queue = rdb.queue['default'] result = queue.fetch_job(str(last_tracker.track_job_run_id)).result if result_type in ['csv', 'xls', 'xlsx', 'ods']: result_array = [list(result['header'])] for row in result['rows']: result_array.append(list(row)) return excel.make_response_from_array( result_array, result_type, file_name="Result_tid_{tid}.{ext}".format( tid=last_tracker.track_job_run_id, ext=result_type ) ) elif result_type == 'raw': return jsonify(result) abort(404)
def download(): return excel.make_response_from_array([[ 'registration_number', 'first_name', 'last_name', 'level_id', 'unit_id', 'school', 'email', 'phone', 'theme' ]], "xls", file_name="trainee_samples")
def _excel(self): """excel数据""" sheet = [] sheet_title_list = [field['title'] for field in self.field_list] sheet.append(sheet_title_list) for data in self.data_list: row_data = [] for field in self.field_list: field_name = field.get('field', None) func = field.get('func', None) val = '' if field_name and func is None: val = getattr(data, field_name, '') elif field_name and func: val = getattr(data, field_name, '') val = func(val) elif not field_name and func: val = func(data) row_data.append(val) sheet.append(row_data) return excel.make_response_from_array(sheet, self.file_type, sheet_name = 'Sheet1', file_name = self.file_name)
def catalogue(): form = Recherche_form() if form.validate_on_submit(): limit = form.Par_page.data resultats = search(form, limit) if form.Download.data == True: array = [[ "N_inventaire", "Rue", "N_rue", "Nom_site", "Arrondissement", "Ville", "Latitude_x", "Longitude_y", "Support", "Couleur", "Taille", "Date_prise_vue", "Photographe", "Date_construction", "Architecte", "Classement_MH", "Généralité_architecture", "Mot_cle1", "Mot_cle2", "Mot_cle3", "Mot_cle4", "Mot_cle5", "Mot_cle6", "Cote_base", "Cote_classement" ]] for result in resultats: array.append(list(result)[:-2]) return Excel.make_response_from_array( array, "xlsx", file_name="recherche_Paris_Historique.xlsx") form.Par_page.data = limit return render_template("pages/catalogue.html", form=form, resultats=resultats) form.Par_page.data = 50 form.Rue.data = form.Rue.data form.Arrondissement.data = form.Arrondissement.data form.Mots_cles.data = form.Mots_cles.data form.Support.data = form.Support.data form.Taille.data = form.Taille.data form.Photographe.data = form.Photographe.data resultats = search(form, 50) return render_template("pages/catalogue.html", form=form, resultats=resultats)
def export_ppublicas(): if not session.has_key("username"):return redirect("/login") export_form = ExportPoliticasPublicasForm(request.form) try: if request.method == 'POST' and export_form.validate(): export_helper = PoliticasPublicasExportHelper(export_form) filtering_state = Utilities.get_state_label(export_helper.get_filtering_state()) filtering_category = export_helper.get_filtering_category() data_to_export = export_helper.get_export_data() attachment_output = excel.make_response_from_array(data_to_export, 'xlsx', status=200, file_name="Politicas-Publicas-{0}-{1}.xlsx".format( filtering_state, str(filtering_category).replace('.', '_'))) attachment_output.headers["Content-type"] = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" attachment_output.headers["Content-Disposition"] = "attachment; filename=Politicas-Publicas-{0}-{1}.xlsx".format( filtering_state, str(filtering_category).replace('.', '_')) return attachment_output return render_template("ppublicas_export_filters.html", form=export_form) except Exception as e: error = e return render_template("mensaje_sistema.html", message=error)
def admin_export(): try: log.write_to_console(msg="In Administators Export Route") try: cookie_id = request.cookies.get('{0}'.format(config.COOKIE_VALUE)) except Exception as e: cookie_id = None if cookie_id != None: session_details = session['{0}'.format(cookie_id)] log.write_to_console(msg="Account-User-Session: {}".format(session_details)) else: log.write_to_console(msg="Account-User-Session: No session Redirecting") return redirect(url_for("home.home_page")) svc = adminServices(session_details) if request.method == 'GET': print("In GET") print(request.args.to_dict()) data = svc.getAllAdministratorsExport(request.args.to_dict()) print(data) response_data = excel.make_response_from_array(data, "xls") response = make_response(response_data) response.headers['Content-Disposition'] = 'attachment; filename=BulkPay_Admins.xls' response.headers['Content-Type'] = 'application/xls' log.write_to_console(msg="Administrators export don retruning file") return response except TemplateNotFound as e: raise e
def export_performance_medios_sociales(): if not session.has_key("username"):return redirect("/login") export_form = ExportStatePerformanceForm(request.form) try: if request.method == 'POST' and export_form.validate(): export_helper = StatesPerformanceExportHelper(export_form) data_to_export = export_helper.get_performance_data_export_from(Constants.ranking_social_table_name()) attachment_output = excel.make_response_from_array(data_to_export, 'xlsx', status=200, file_name="PerformanceMediosSociales-Estado-{0}.xlsx".format( Utilities.get_state_label(export_helper.get_filtering_state()))) attachment_output.headers["Content-type"] = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet" attachment_output.headers["Content-Disposition"] = "attachment; filename=PerformanceMediosSociales-Estado-{0}-{1}.xls".format( Utilities.get_state_label(export_helper.get_filtering_state()), str(export_helper.get_filtering_category()).replace('.', '_')) return attachment_output return render_template("performance_social_net_filters.html", form=export_form) except Exception as e: error = e return render_template("mensaje_sistema.html", message=error)
def export(): s = request.form['string'] v = request.form['option'] con = sql.connect("TI.db") con.row_factory = sql.Row cur = con.cursor() if v == 'IP': cur.execute( "select ip,threat,threat_info from IP where ip like ? or threat like ? or threat_info like ? ", ('%' + s + '%', '%' + s + '%', '%' + s + '%')) # cur.execute("select * from IP where threat like '%spam%' ") if v == 'Domain': cur.execute( "select domain,threat,threat_info from Domain where domain like ? or threat like ? or threat_info like ? ", ('%' + s + '%', '%' + s + '%', '%' + s + '%')) if v == 'URL': cur.execute( "select url,threat,threat_info from URL where url like ? or threat like ? or threat_info like ? ", ('%' + s + '%', '%' + s + '%', '%' + s + '%')) if v == 'ti': cur.execute( "select data,threat,threat_info from ti where data like ? or threat like ? or threat_info like ? ", ('%' + s + '%', '%' + s + '%', '%' + s + '%')) if not s: cur.execute("select * from '%s' " % v) rows = cur.fetchall() return flask_excel.make_response_from_array(rows, "csv", file_name="data.csv")
def branches_export(): try: log.write_to_console(msg="In Branches Export Route") try: cookie_id = request.cookies.get('{0}'.format(config.COOKIE_VALUE)) except Exception as e: cookie_id = None if cookie_id != None: session_details = session['{0}'.format(cookie_id)] print("Session Data") print(session_details) else: return redirect(url_for("home.home_page")) svc = adminServices(session_details) if request.method == 'GET': print("In GET") data = svc.getAllBranchesExport() print(data) response_data = excel.make_response_from_array(data, "csv") response = make_response(response_data) response.headers['Content-Disposition'] = 'attachment; filename=SSNIT_Branches_list.csv' response.headers['Content-Type'] = 'application/csv' log.write_to_console(msg="Administrators export done returning file") return response except TemplateNotFound as e: raise e
def download_campaigns(): campaigns = Campaign.query.order_by(Campaign.created_at.desc()).all() campaigns_data = map(lambda x:x.campaign_details(),campaigns) header = ['Title','Start Date','End Date','Remaining Days','Number of Donors','Target amount','Books', 'LIC', 'Percentage', 'Funds Raised','Status','Name','Organization Email_Id', 'Organization Phone Numbers','Person Email_Id','Person Phone Number','Language', 'Children', 'State', 'City'] campaigns_data.insert(0,header) return excel.make_response_from_array(campaigns_data, "xls")
def vouchers_export(): try: print("In Vouchers Export") # access session data (session['k']=v) try: cookie_id = request.cookies.get('{0}'.format(cookie_jar)) except Exception as e: cookie_id = None if cookie_id != None: session_details = session['{0}'.format(cookie_id)] print("Session Data") print(session_details) else: return redirect(url_for("home.home_page")) svc = vouchersServices(session_details) if request.method == 'GET': print("In GET") print(request.args.to_dict()) data = svc.getAllvouchersExport(request.args.to_dict()) print(data) response_data = excel.make_response_from_array(data, "xls") response = make_response(response_data) response.headers['Content-Disposition'] = 'attachment; filename=siclife_vouchers.xls' response.headers['Content-Type'] = 'application/xls' return response except TemplateNotFound as e: raise e
def get(self): data = LocationTable.find({}) print(data) locations = dict() # geolocator = Nominatim(user_agent='http') i = 0 expense_data = [['Sr.', 'Date', 'Type', 'Location']] for x in data: date = x['datetime'] day, month, year = date.day, date.month, date.year date = datetime(year, month, day) if (datetime.now() - date).days <= 7: location = dict() st = str(x['latitude']) + ', ' + str(x['longitude']) location['latitude'] = x['latitude'] location['longitude'] = x['longitude'] location['address'] = x['address'] location['date'] = date.strftime("%d %B, %Y") location['type'] = x['type'] locations[i] = location expense_data.append([ i + 1, date.strftime("%d %B, %Y"), x['type'], x['address'] ]) i += 1 return excel.make_response_from_array(expense_data, "csv", file_name="Violation CSV")
def story_to_excel(): # story_list = db.session.query(Story.story_id,Story.story_url).all() # column_names = ['story_id', 'story_url'] # # story_list = Story.query.filter_by() # story_updatas = story_list # flask_excel.make_response_from_query_sets(story_updatas,column_names=['id','url'],file_name='test',file_type='xlsx') pagination = db.session.query( StoryChapter.chapter_id.label('章节'), Story.story_id.label('id'), Story.story_url.label('url')).outerjoin( Story, Story.story_id == StoryChapter.story_id).filter( Story.story_id == '39651').paginate( 1, per_page=current_app.config['FLASKY_POSTS_PER_PAGE'], error_out=False) # story_list = db.session.query(Story.story_id.label('id'),Story.story_url.label('url')).all() column_names = ['章节', 'id', 'url'] story_list = pagination.items return excel.make_response_from_query_sets(story_list, column_names, file_name='test', file_type='xlsx') # return excel.make # return excel.make_response_from_query_sets(story_list, column_names, file_name='test',file_type='xlsx') return excel.make_response_from_array(story_list, "xlsx", column_names)
def search_reports(): reports = Reports.query.whoosh_search(request.args.get('query')).all() if request.args.get('x'): return excel.make_response_from_array(reports, "xls") return render_template('its/reports/search.html', reports=reports, title='Search')
def backup(): users = db.datas.find() total = users.count() print (total) de = [[(users[i]['category']), (users[i]['name']), (users[i]['dob']), (users[i]['membership_number']), (users[i]['designation']), (users[i]['company_name']), # for j in range(i): (users[i]['address'][0]['add1']), (users[i]['address'][0]['add2']), (users[i]['address'][0]['add3']), (users[i]['address'][0]['add4']), (users[i]['address'][0]['city']), (users[i]['address'][0]['state']), (users[i]['address'][0]['region']), (users[i]['address'][0]['pin_code']), # for j in range(i): (users[i]['email'][0]['email']), (users[i]['email'][1]['email']), # for j in range(i): (users[i]['phone_number'][0]['number']), (users[i]['landline_number']), (users[i]['source_of_data']), (users[i]['date_of_creation']), #(users[i]['date_of_modification']), (users[i]['file_name'])]for i in range(total)] return excel.make_response_from_array(de, "csv", file_name="export_data")
def record_download(): params = {} for key, value in request.args.items(): if value != '': params[key] = value params['per_page'] = 10000 if params.get('created_begin_timestamp'): params['created_begin_timestamp'] = int( time.mktime( time.strptime(params['created_begin_timestamp'], u"%Y年%m月%d日"))) if params.get('created_end_timestamp'): params['created_end_timestamp'] = int( time.mktime( time.strptime(params['created_end_timestamp'] + u' 23:59:59', u"%Y年%m月%d日 %H:%M:%S"))) params['per_page'] = 10000 member_data = Api.get('/admin/wallet/record', params) wallet_type = dict(WALLET_TYPE_FLAG) type_flag = dict(TYPE_FLAG) fields = [[u'创建时间', u'用户编号', u'变化后余额', u'变化量', u'钱包类型', u'来源', u'详情信息']] data = [[ timestamp_to_str(y['created_timestamp']), y['user']['uid'], format_currency(y['current_amount']), format_currency(y['delta_amount']), wallet_type[y['wallet_type']], type_flag[y['type']], y['details']['message'] ] for y in member_data['items']] return excel.make_response_from_array(fields + data, "xls", file_name='钱包记录')
def download_donations(): donations = Donation.query.all() donations_data = map(lambda x:x.donation_details() + x.donor.user_details(),donations) header = ["Donor Name","Donor City","Donor State","Donor Address","Identification_Type","Identification","Donor Email", "Date", "Campaign Title", "Amount Donated", "Anonymous Donor", "80 G Cert Requested", "Confirmation Number", "User Name", "User Address", "User City", "User State", "User PIN", "User Phone"] donations_data.insert(0,header) return excel.make_response_from_array(donations_data, "xls")
def write_to_csv(data): with open('database.csv', mode='a') as database2: email = data["email"] subject = data["subject"] message = data["message"] database2 = excel.make_response_from_array( [["email", {email}], ["subject", {subject}], ["message", {message}]], "csv", file_name="database.csv") return database2
def download(): data = [["meeting_id", "title", "starttime"]] res = Meeting.query.all() for i in res: data.append([i.meeting_id, i.title, i.starttime]) output = excel.make_response_from_array(data, 'csv') output.headers["Content-Disposition"] = "attachment; filename=export.csv" output.headers["Content-type"] = "text/csv" return output
def download(): c, conn = connection() with conn: with c: v = [] v = [list(item) for item in view] return excel.make_response_from_array(v, "csv", file_name="mid_marks")
def export_manualDeleteTemplate(): if request.method == 'POST': dic_data = [{'imsi': '460068029099402'}, {'imsi': '416770118932592'}] sortedDicData = get_excelManualDeleteTemple(dic_data=dic_data) return excel.make_response_from_array(sortedDicData, "xls", file_name="manualDeleteTemplate") return False
def export_ManualInfo(): if request.method == 'POST': dic_data = json.loads(request.form['data']) sortedDicData = get_excelManulInfoDataAndSorted(dic_data=dic_data) return excel.make_response_from_array(sortedDicData, "xls", file_name="ExportManualInfoData") return False
def export_countrySrcStatic(): if request.method == 'POST': dic_data = json.loads(request.form['data']) sortedDicData = get_excelCountrySrcStaticDataAndSorted( dic_data=dic_data) return excel.make_response_from_array( sortedDicData, "xls", file_name="ExportCountrySrcStaticData") else: return False
def export_newVsimTestInfo(): if request.method == 'POST': dic_data = json.loads(request.form['data']) sortedDicData = get_excelNewVsimTestInfo(dic_data=dic_data) return excel.make_response_from_array(sortedDicData, "xls", file_name="NewVsimTestInfo") return False
def download(): c,conn=connection() with conn: with c: c.execute("SELECT * FROM festusers WHERE branch = %s",(session['username'],)) colname=[desc[0] for desc in c.description] tab_data=c.fetchall() tab_data.insert(0,colname) return excel.make_response_from_array(tab_data, "csv",file_name="registered_candidates")
def export(): category = request.args.get('category') phone_number = request.args.get('phone_number') designation = request.args.get('designation') pin_code = request.args.get('pin_code') if phone_number == '' and designation == '' and pin_code == '': users = db.datas.find({'category':category}) elif designation == '' and pin_code == '': users = db.datas.find({'phone_number':{'$all':[{ '$elemMatch':{'number':phone_number} }] },'category':category}) elif phone_number == '' and designation == '': users = db.datas.find({'category':category,'pin_code':pin_code}) elif phone_number == '' and pin_code == '': users = db.datas.find({'category':category,'designation':designation}) else: users = db.datas.find({'address':{'$all':[{ '$elemMatch':{'pin_code':pin_code} }] },'category':category,'designation':designation,'phone_number':{'$all':[{ '$elemMatch':{'number':phone_number} }] }}) total = users.count() print (total) de = [[(users[i]['category']), (users[i]['name']), (users[i]['dob']), (users[i]['membership_number']), (users[i]['designation']), (users[i]['company_name']), # for j in range(i): (users[i]['address'][0]['add1']), (users[i]['address'][0]['add2']), (users[i]['address'][0]['add3']), (users[i]['address'][0]['add4']), (users[i]['address'][0]['city']), (users[i]['address'][0]['state']), (users[i]['address'][0]['region']), (users[i]['address'][0]['pin_code']), # for j in range(i): (users[i]['email'][0]['email']), (users[i]['email'][1]['email']), # for j in range(i): (users[i]['phone_number'][0]['number']), (users[i]['landline_number']), (users[i]['source_of_data']), (users[i]['date_of_creation']), #(users[i]['date_of_modification']), (users[i]['file_name'])]for i in range(total)] return excel.make_response_from_array(de, "csv", file_name="export_data")
def export(): p = Pages() menu = p.getAllPages() pagesArray = [] pagesArray.append(["Page ID", "Title", "Content"]) for page in menu: pagesArray.append([page[0], page[1], page[2]]) return excel.make_response_from_array(pagesArray, "xls", file_name="export_pages")
def receipt_download(): if 'loggedin' and 'customer_id' in session: today = date.today() d = today.strftime("%d-%m-%Y") receipt = get_receipt() receipt = [list(x) for x in receipt] receipt.insert(0, receipt_head) return excel.make_response_from_array(receipt, "csv", file_name="{}-receipt".format(d)) return redirect(url_for('index'))
def get(self): cursor.execute( "SELECT etablissement, COUNT(* ) FROM contrevenants GROUP BY etablissement ORDER BY COUNT(* ) DESC ;") del datas[:] while True: row = cursor.fetchone() if row is None: break data = (row[0], row[1]) datas.append(data) r = Response(response=excel.make_response_from_array(datas, "csv"), status=200, mimetype="application/csv") r.headers["Content-Type"] = "text/csv; charset=utf-8" return r
def job_result(tracker_id, result_type): """Download Job's result.""" queue = rdb.queue['default'] result = queue.fetch_job(tracker_id).result if result_type in ['csv', 'xls', 'xlsx', 'ods']: result_array = [list(result['header'])] for row in result['rows']: result_array.append(list(row)) return excel.make_response_from_array( result_array, result_type, file_name="Result_tid_{tid}.{ext}".format( tid=tracker_id, ext=result_type ) ) elif result_type == 'raw': return jsonify(result) else: abort(404)