Exemple #1
0
def assign_va_to_user(username, designer_username, rate):
    designer_user = firebase_api.find_user_by_username(designer_username)
    first_name, last_name = designer_user.get("first_name"), designer_user.get(
        "last_name")
    firebase_api.patch_object(
        "virtual_assistants/" + username + "/" + designer_username, {
            "rate": rate,
            "designer_first_name": first_name,
            "designer_last_name": last_name,
            "assigned_on": datetime.datetime.utcnow().isoformat()
        })
    firebase_api.patch_object(
        "clients/" + designer_username + "/" + username, {
            "rate": rate,
            "assigned_on": datetime.datetime.utcnow().isoformat()
        })
Exemple #2
0
def approve_completed_work(username, assignment_id, upload_uuid):
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id + "/completed_work/" +
        upload_uuid, {
            "approval_status": "approved",
            "approved_on": datetime.datetime.utcnow().isoformat()
        })
Exemple #3
0
def add_completed_work_to_assignment(username, assignment_id, upload_uuid,
                                     s3_url, designer_username):
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id + "/completed_work/" +
        upload_uuid, {
            "s3_url": s3_url,
            "approval_status": "pending",
            "added_by": designer_username,
            "created_at": datetime.datetime.utcnow().isoformat()
        })
    designers = get_vas_for_user(username)
    rate = 0
    for designer in designers:
        if designer["username"] == designer_username:
            rate = designer.get("rate") or 0
            break
    commission_amount = rate
    create_va_commission(username,
                         designer_username,
                         assignment_id,
                         upload_uuid,
                         commission_amount,
                         approval_status="pending")
Exemple #4
0
def delete_upload_from_assignment(username, assignment_id, upload_uuid):
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id +
        "/inspiration_uploads/" + upload_uuid, None)
Exemple #5
0
def add_upload_to_assignment(username, assignment_id, upload_uuid):
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id +
        "/inspiration_uploads/" + upload_uuid, {"s3_url": s3_url})
Exemple #6
0
def delete_inspiration_asin_from_assignment(username, assignment_id, asin):
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id +
        "/inspiration_asins/" + asin, False)
Exemple #7
0
def add_inspiration_asin_to_assignment(username, assignment_id, asin):
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id +
        "/inspiration_asins/" + asin, True)
Exemple #8
0
def update_assignment(username, assignment_id, assignment_data):
    updated_on = datetime.datetime.utcnow().isoformat()
    assignment_data["updated_on"] = updated_on
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id, assignment_data)
Exemple #9
0
def update_rate(username, designer_username, rate):
    firebase_api.patch_object(
        "virtual_assistants/" + username + "/" + designer_username + "/rate",
        rate)
    return firebase_api.patch_object(
        "clients/" + designer_username + "/" + username + "/rate", rate)
Exemple #10
0
def unassign_va_from_user(username, designer_username):
    firebase_api.patch_object(
        "virtual_assistants/" + username + "/" + designer_username, None)
    return firebase_api.patch_object(
        "clients/" + designer_username + "/" + username, None)
Exemple #11
0
def mark_commission_as_paid_out(username, commission_id):
    return firebase_api.patch_object(
        "commissions/" + username + "/" + commission_id + "/paid_out", True)
Exemple #12
0
def assign_payout_id(username, commission_id, payout_id):
    return firebase_api.patch_object(
        "commissions/" + username + "/" + commission_id + "/payout_id",
        payout_id)
Exemple #13
0
def disapprove_va_commission(username, commission_id):
    return firebase_api.patch_object(
        "commissions/" + username + "/" + commission_id + "/approved", False)
Exemple #14
0
def delete_completed_work_from_assignment(username, assignment_id, s3_url):
    return firebase_api.patch_object(
        "assignments/" + username + "/" + assignment_id + "/completed_work/" +
        upload_uuid, None)
					if reportProcessingStatus.text == "_DONE_":
						endDate = reportRequestInfo[2]
						scheduled = reportRequestInfo[3]
						reportRequestId = reportRequestInfo[4]
						startedProcessingDate = reportRequestInfo[5]
						submittedDate = reportRequestInfo[6]
						startDate = reportRequestInfo[7]
						completedDate = reportRequestInfo[8]
						generatedReportId = reportRequestInfo[9]
						progress_data[username][report_type]["status"] = reportProcessingStatus.text
						progress_data[username][report_type]["reportId"] = generatedReportId.text
					elif reportProcessingStatus.text == "_CANCELLED_":
						# don't consider this an unfinished user, so we have this elif branch
						# to prevent execution of the else statement
						pass
					else:
						found_unfinished_user = True
			if not found_unfinished_user:
				firebase_api.patch_object("reports/" + username + "/", progress_data[username])
				print("All reports for " + username + " have been successfully processed.")
			print("\n")

	print("FINISHED ITERATION.\n\n\n\n\n")
	time.sleep(60)

	if not found_unfinished_user:
		#firebase_api.save_object("reports", progress_data)
		pipeline_finished = True