def do_post(sess): start_date = req_date("start", "day") finish_year = req_int("finish_year") finish_month = req_int("finish_month") finish_day = req_int("finish_day") finish_date_ct = ct_datetime(finish_year, finish_month, finish_day, 23, 30) finish_date = to_utc(finish_date_ct) finish_date_str = finish_date_ct.strftime("%Y%m%d%H%M") if "site_id" in request.values: site_id = req_int("site_id") file_name = f"sites_hh_data_{site_id}_{finish_date_str}.csv" args = site_id, start_date, finish_date, g.user, file_name threading.Thread(target=site_content, args=args).start() return chellow_redirect("/downloads", 303) else: typ = req_str("type") site_codes_str = req_str("site_codes") site_codes = site_codes_str.splitlines() if len(site_codes) == 0: site_codes = None file_name = f"sites_hh_data_{finish_date_str}_filter.zip" args = site_codes, typ, start_date, finish_date, g.user, file_name threading.Thread(target=none_content, args=args).start() return chellow_redirect("/downloads", 303)
def do_post(sess): start_date = req_date("start") finish_date = req_date("finish") supply_id = req_int("supply_id") if "supply_id" in request.values else None if "mpan_cores" in request.values: mpan_cores_str = req_str("mpan_cores") mpan_cores = mpan_cores_str.splitlines() if len(mpan_cores) == 0: mpan_cores = None else: for i in range(len(mpan_cores)): mpan_cores[i] = parse_mpan_core(mpan_cores[i]) else: mpan_cores = None if finish_date < start_date: raise BadRequest("The finish date can't be before the start date.") is_zipped = req_bool("is_zipped") user = g.user threading.Thread( target=content, args=(start_date, finish_date, supply_id, mpan_cores, is_zipped, user), ).start() return chellow_redirect("/downloads", 303)
def handle_request(mpan_cores=None): start_year = req_int("start_year") start_month = req_int("start_month") start_day = req_int("start_day") start_date_ct = ct_datetime(start_year, start_month, start_day) finish_year = req_int("finish_year") finish_month = req_int("finish_month") finish_day = req_int("finish_day") finish_date_ct = ct_datetime(finish_year, finish_month, finish_day, 23, 30) imp_related = req_bool("imp_related") channel_type = req_str("channel_type") is_zipped = req_bool("is_zipped") supply_id = req_int("supply_id") if "supply_id" in request.values else None user = g.user args = ( start_date_ct, finish_date_ct, imp_related, channel_type, is_zipped, supply_id, mpan_cores, user, ) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303)
def do_get(session): user = g.user date = req_date('date') if 'supply_id' in request.values: supply_id = req_int('supply_id') else: supply_id = None if 'mpan_cores' in request.values: mpan_cores_str = req_str('mpan_cores') mpan_cores = mpan_cores_str.splitlines() if len(mpan_cores) == 0: mpan_cores = None else: for i in range(len(mpan_cores)): mpan_cores[i] = parse_mpan_core(mpan_cores[i]) else: mpan_cores = None running_name, finished_name = chellow.dloads.make_names( 'supplies_snapshot.csv', user) args = (running_name, finished_name, date, supply_id, mpan_cores) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303)
def do_get(session): user = g.user date = req_date("date") if "supply_id" in request.values: supply_id = req_int("supply_id") else: supply_id = None if "mpan_cores" in request.values: mpan_cores_str = req_str("mpan_cores") mpan_cores = mpan_cores_str.splitlines() if len(mpan_cores) == 0: mpan_cores = None else: for i in range(len(mpan_cores)): mpan_cores[i] = parse_mpan_core(mpan_cores[i]) else: mpan_cores = None running_name, finished_name = chellow.dloads.make_names( "supplies_snapshot.csv", user) args = (running_name, finished_name, date, supply_id, mpan_cores) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303)
def do_post(sess): start_date = req_date('start') finish_date = req_date('finish') supply_id = req_int('supply_id') if 'supply_id' in request.values else None if 'mpan_cores' in request.values: mpan_cores_str = req_str('mpan_cores') mpan_cores = mpan_cores_str.splitlines() if len(mpan_cores) == 0: mpan_cores = None else: for i in range(len(mpan_cores)): mpan_cores[i] = parse_mpan_core(mpan_cores[i]) else: mpan_cores = None if finish_date < start_date: raise BadRequest("The finish date can't be before the start date.") is_zipped = req_bool('is_zipped') user = g.user threading.Thread( target=content, args=( start_date, finish_date, supply_id, mpan_cores, is_zipped, user) ).start() return chellow_redirect("/downloads", 303)
def do_post(sess): if 'mpan_cores' in request.values: mpan_cores_str = req_str('mpan_cores') mpan_cores = mpan_cores_str.splitlines() if len(mpan_cores) == 0: mpan_cores = None else: for i in range(len(mpan_cores)): mpan_cores[i] = parse_mpan_core(mpan_cores[i]) return handle_request(mpan_cores)
def do_post(sess): if "mpan_cores" in request.values: mpan_cores_str = req_str("mpan_cores") mpan_cores = mpan_cores_str.splitlines() if len(mpan_cores) == 0: mpan_cores = None else: for i in range(len(mpan_cores)): mpan_cores[i] = parse_mpan_core(mpan_cores[i]) return handle_request(mpan_cores)
def handle_request(mpan_cores=None): start_date = req_date('start') finish_date = req_date('finish') imp_related = req_bool('imp_related') channel_type = req_str('channel_type') is_zipped = req_bool('is_zipped') supply_id = req_int('supply_id') if 'supply_id' in request.values else None user = g.user threading.Thread(target=content, args=(start_date, finish_date, imp_related, channel_type, is_zipped, supply_id, mpan_cores, user)).start() return chellow_redirect("/downloads", 303)
def handle_request(mpan_cores=None): start_date = req_date('start') finish_date = req_date('finish') imp_related = req_bool('imp_related') channel_type = req_str('channel_type') is_zipped = req_bool('is_zipped') supply_id = req_int('supply_id') if 'supply_id' in request.values else None user = g.user threading.Thread( target=content, args=( start_date, finish_date, imp_related, channel_type, is_zipped, supply_id, mpan_cores, user)).start() return chellow_redirect("/downloads", 303)
def do_get(sess): months = req_int('months') finish_year = req_int('finish_year') finish_month = req_int('finish_month') finish_date = Datetime(finish_year, finish_month, 1, tzinfo=pytz.utc) + \ relativedelta(months=1) - HH start_date = finish_date + HH - relativedelta(months=months) typ = req_str('type') site_id = req_int('site_id') args = (start_date, finish_date, site_id, typ, g.user) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303)
def do_get(sess): months = req_int('months') finish_year = req_int('finish_year') finish_month = req_int('finish_month') finish_date = Datetime(finish_year, finish_month, 1, tzinfo=pytz.utc) + \ relativedelta(months=1) - HH start_date = finish_date + HH - relativedelta(months=months) typ = req_str('type') site_id = req_int('site_id') args = (start_date, finish_date, site_id, typ, g.user) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303)
def do_get(sess): months = req_int('months') finish_year = req_int('finish_year') finish_month = req_int('finish_month') finish_date = Datetime(finish_year, finish_month, 1, tzinfo=pytz.utc) + \ relativedelta(months=1) - HH start_date = finish_date + HH - relativedelta(months=months) file_name = "site_hh_data_" + start_date.strftime("%Y%m%d%H%M") + ".csv" typ = req_str('type') site_id = req_int('site_id') return send_response( content, args=(start_date, finish_date, site_id, typ, sess), file_name=file_name)
def do_get(sess): months = req_int("months") finish_year = req_int("finish_year") finish_month = req_int("finish_month") month_list = list( c_months_u(finish_year=finish_year, finish_month=finish_month, months=months)) start_date, finish_date = month_list[0][0], month_list[-1][-1] typ = req_str("type") site_id = req_int("site_id") args = (start_date, finish_date, site_id, typ, g.user) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303)
def do_get(sess): batch_id = bill_id = contract_id = start_date = finish_date = None if "mpan_cores" in request.values: mpan_cores = req_str("mpan_cores").splitlines() else: mpan_cores = [] fname_additional = "" if "batch_id" in request.values: batch_id = req_int("batch_id") batch = Batch.get_by_id(sess, batch_id) fname_additional = f"_batch_{batch.reference}" elif "bill_id" in request.values: bill_id = req_int("bill_id") bill = Bill.get_by_id(sess, bill_id) fname_additional = "bill_" + str(bill.id) elif "contract_id" in request.values: contract_id = req_int("contract_id") contract = Contract.get_by_id(sess, contract_id) start_date = req_date("start_date") finish_date = req_date("finish_date") s = ["contract", str(contract.id)] for dt in (start_date, finish_date): s.append(hh_format(dt).replace(" ", "T").replace(":", "")) fname_additional = "_".join(s) else: raise BadRequest( "The bill check needs a batch_id, a bill_id or a start_date " "and finish_date.") args = ( batch_id, bill_id, contract_id, start_date, finish_date, g.user, mpan_cores, fname_additional, ) print(args) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303)
def do_post(sess): base_name = [] now = utc_datetime_now() if "scenario_id" in request.values: scenario_id = req_int("scenario_id") scenario = Scenario.get_by_id(sess, scenario_id) scenario_props = scenario.props base_name.append(scenario.name) start_year = scenario_props["scenario_start_year"] start_month = scenario_props["scenario_start_month"] start_date_ct = ct_datetime(now.year, now.month, 1) if start_year is None: scenario_props["scenario_start_year"] = start_date_ct.year if start_month is None: scenario_props["scenario_start_month"] = start_date_ct.month else: year = req_int("finish_year") month = req_int("finish_month") months = req_int("months") start_date, _ = next( c_months_c(finish_year=year, finish_month=month, months=months)) by_hh = req_bool("by_hh") scenario_props = { "scenario_start_year": start_date.year, "scenario_start_month": start_date.month, "scenario_duration": months, "by_hh": by_hh, } base_name.append("monthly_duration") try: site_id = req_int("site_id") if "site_id" in request.values else None if "site_codes" in request.values: site_codes = req_str("site_codes").splitlines() # Check sites codes are valid for site_code in site_codes: Site.get_by_code(sess, site_code) else: site_codes = [] if "supply_id" in request.values: supply_id = req_int("supply_id") else: supply_id = None if "compression" in request.values: compression = req_bool("compression") else: compression = True user = g.user args = ( scenario_props, base_name, site_id, supply_id, user, compression, site_codes, now, ) threading.Thread(target=content, args=args).start() return chellow_redirect("/downloads", 303) except BadRequest as e: flash(e.description) now = Datetime.utcnow() month_start = Datetime(now.year, now.month, 1) - relativedelta(months=1) month_finish = Datetime(now.year, now.month, 1) - HH return make_response( render_template( "ods_monthly_duration.html", month_start=month_start, month_finish=month_finish, ), 400, )