Esempio n. 1
0
def populateSellerDetailsParameters(request, parameters = {}, version = "0"):

	defaultValue = 1

	if version == "1":
		defaultValue = 0

	sellerDetails = request.GET.get("seller_details", None)
	if validate_bool(sellerDetails):
		parameters["seller_details"] = int(sellerDetails)
	else:
		parameters["seller_details"] = defaultValue

	sellerDetailsDetails = request.GET.get("seller_details_details", None)
	if validate_bool(sellerDetailsDetails):
		parameters["seller_details_details"] = int(sellerDetailsDetails)
	else:
		parameters["seller_details_details"] = defaultValue

	sellerAddressDetails = request.GET.get("seller_address_details", None)
	if validate_bool(sellerAddressDetails):
		parameters["seller_address_details"] = int(sellerAddressDetails)
	else:
		parameters["seller_address_details"] = defaultValue

	sellerBankDetails = request.GET.get("seller_bank_details", None)
	if validate_bool(sellerBankDetails):
		parameters["seller_bank_details"] = int(sellerBankDetails)
	else:
		parameters["seller_bank_details"] = defaultValue

	return parameters
Esempio n. 2
0
def populateLogisticsParameters(request, parameters={}, version="0"):

    parameters = getPaginationParameters(request, parameters, 10, version)
    parameters = populateAllUserIDParameters(request, parameters, version)

    pincodeCode = request.GET.get("pincode_code", "")
    if pincodeCode != "" and pincodeCode != None:
        parameters["pincodesCodesArr"] = getArrFromString(pincodeCode)

    pincodeID = request.GET.get("pincodeID", "")
    if pincodeID != "" and pincodeID != None:
        parameters["pincodesArr"] = getArrFromString(pincodeID)

    logisticsPartnerID = request.GET.get("logisticspartnerID", "")
    if logisticsPartnerID != "" and logisticsPartnerID != None:
        parameters["logisticsPartnersArr"] = getArrFromString(
            logisticsPartnerID)

    regularDeliveryAvailable = request.GET.get("regular_delivery_available",
                                               "")
    if validate_bool(regularDeliveryAvailable):
        parameters["regular_delivery_available"] = int(
            regularDeliveryAvailable)

    regularPickupAvailable = request.GET.get("regular_pickup_available", "")
    if validate_bool(regularPickupAvailable):
        parameters["regular_pickup_available"] = int(regularPickupAvailable)

    codAvailable = request.GET.get("cod_available", "")
    if validate_bool(codAvailable):
        parameters["cod_available"] = int(codAvailable)

    return parameters
Esempio n. 3
0
def getArticleParameters(request, parameters={}, version="0"):

    defaultValue = 0

    articleID = request.GET.get("articleID", "")
    if articleID != "" and articleID != None:
        parameters["articlesArr"] = getArrFromString(articleID)

    showOnline = request.GET.get("show_online", None)
    if validate_bool(showOnline):
        parameters["show_online"] = int(showOnline)

    articleDetails = request.GET.get("article_details", None)
    if validate_bool(articleDetails):
        parameters["article_details"] = int(articleDetails)
    else:
        parameters["article_details"] = defaultValue

    internalUserDetails = request.GET.get("internal_user_details", None)
    if validate_bool(internalUserDetails):
        parameters["internal_user_details"] = int(internalUserDetails)
    else:
        parameters["internal_user_details"] = defaultValue

    parameters = populateInternalUserIDParameters(request, parameters)

    parameters = getPaginationParameters(request, parameters)

    return parameters
Esempio n. 4
0
def validateProductData(product, oldproduct, is_new):

    flag = 0

    if not "name" in product or product["name"] == None:
        flag = 1
        product["name"] = oldproduct.name
    if not "price_per_unit" in product or not validate_number(
            product["price_per_unit"]):
        flag = 1
        product["price_per_unit"] = oldproduct.price_per_unit
    if not "unit" in product or product["unit"] == None:
        product["unit"] = oldproduct.unit
    if not "tax" in product or not validate_number(product["tax"]):
        product["tax"] = oldproduct.tax
    if not "min_price_per_unit" in product or not validate_number(
            product["min_price_per_unit"]):
        product["min_price_per_unit"] = oldproduct.min_price_per_unit
    if not "lot_size" in product or not validate_integer(product["lot_size"]):
        flag = 1
        product["lot_size"] = oldproduct.lot_size
    if not "price_per_lot" in product or not validate_number(
            product["price_per_lot"]):
        flag = 1
        product["price_per_lot"] = oldproduct.price_per_lot
    if not "verification" in product or not validate_bool(
            product["verification"]):
        product["verification"] = oldproduct.verification
    if not "show_online" in product or not validate_bool(
            product["show_online"]):
        product["show_online"] = oldproduct.show_online
    if not "slug" in product or product["slug"] == None:
        product["slug"] = oldproduct.slug
    if not "display_name" in product or product["display_name"] == None:
        product["display_name"] = oldproduct.display_name
    if not "is_catalog" in product or not validate_bool(product["is_catalog"]):
        product["is_catalog"] = oldproduct.is_catalog
    if not "delete_status" in product or not validate_bool(
            product["delete_status"]):
        product["delete_status"] = oldproduct.delete_status

    if not float(product["min_price_per_unit"]) > 0 or not float(
            product["price_per_lot"]) > 0 or not float(
                product["price_per_unit"]) > 0:
        return False

    if not float(product["price_per_unit"]) >= float(
            product["min_price_per_unit"]) or not float(
                product["price_per_lot"]) >= float(product["price_per_unit"]):
        return False

    if is_new == 1 and flag == 1:
        return False

    return True
Esempio n. 5
0
def populateProductFilterParameters(request, parameters={}, version="0"):

    productID = request.GET.get("productID", "")
    if productID != "" and productID != None:
        parameters["productsArr"] = getArrFromString(productID)

    categoryID = request.GET.get("categoryID", "")
    if categoryID != "" and categoryID != None:
        parameters["categoriesArr"] = getArrFromString(categoryID)

    fabric = request.GET.get("fabric", "")
    if fabric != "" and fabric != None:
        parameters["fabricArr"] = getStrArrFromString(fabric)

    colour = request.GET.get("colour", "")
    if colour != "" and colour != None:
        parameters["colourArr"] = getStrArrFromString(colour)

    sizes = request.GET.get("sizes", "")
    if sizes != "" and sizes != None:
        parameters["sizesArr"] = getStrArrFromString(sizes)

    productShowOnline = request.GET.get("product_show_online", "")
    if productShowOnline != "" and validate_bool(productShowOnline):
        parameters["product_show_online"] = int(productShowOnline)

    productVerification = request.GET.get("product_verification", "")
    if productVerification != "" and validate_bool(productVerification):
        parameters["product_verification"] = int(productVerification)

    min_price_per_unit = request.GET.get("min_price_per_unit", "")
    max_price_per_unit = request.GET.get("max_price_per_unit", "")
    if validate_number(min_price_per_unit) and validate_number(
            max_price_per_unit) and float(min_price_per_unit) >= 0 and float(
                max_price_per_unit) > float(min_price_per_unit):
        parameters["price_filter_applied"] = True
        parameters["min_price_per_unit"] = float(min_price_per_unit)
        parameters["max_price_per_unit"] = float(max_price_per_unit)

    productOrderBy = request.GET.get("product_order_by", "")
    if productOrderBy != "" and productOrderBy != None:
        parameters["product_order_by"] = productOrderBy

    productUpdatedAt = request.GET.get("product_updated_at", "")
    if productUpdatedAt != "" and productUpdatedAt != None:
        parameters["product_updated_at"] = productUpdatedAt

    return parameters
Esempio n. 6
0
def validateArticleData(article, old_article, is_new):

    flag = 0

    if not "title" in article or article["title"] == None:
        flag = 1
        article["title"] = old_article.title
    if not "content" in article or article["content"] == None:
        flag = 1
        article["content"] = old_article.content
    if not "show_online" in article or not validate_bool(
            article["show_online"]):
        article["show_online"] = old_article.show_online
    if not "linkedin_pulse_link" in article or article[
            "linkedin_pulse_link"] == None:
        article["linkedin_pulse_link"] = old_article.linkedin_pulse_link
    if not "medium_link" in article or article["medium_link"] == None:
        article["medium_link"] = old_article.medium_link
    if not "tumblr_link" in article or article["tumblr_link"] == None:
        article["tumblr_link"] = old_article.tumblr_link
    if not "quora_link" in article or article["quora_link"] == None:
        article["quora_link"] = old_article.quora_link
    if not "blogspot_link" in article or article["blogspot_link"] == None:
        article["blogspot_link"] = old_article.blogspot_link

    if is_new == 1 and flag == 1:
        return False

    return True
Esempio n. 7
0
def validateBuyerInterestData(buyer_interest, old_buyer_interest, is_new):

	flag = 0

	if not "scale" in buyer_interest or not validate_buyer_interest_scale(buyer_interest["scale"]):
		buyer_interest["scale"] = old_buyer_interest.scale
	if not "min_price_per_unit" in buyer_interest or not validate_number(buyer_interest["min_price_per_unit"]) or not float(buyer_interest["min_price_per_unit"]) >= 0:
		buyer_interest["min_price_per_unit"] = old_buyer_interest.min_price_per_unit
	if not "max_price_per_unit" in buyer_interest or not validate_number(buyer_interest["max_price_per_unit"]) or not float(buyer_interest["max_price_per_unit"]) >= 0:
		buyer_interest["max_price_per_unit"] = old_buyer_interest.max_price_per_unit
	if not "fabric_filter_text" in buyer_interest or buyer_interest["fabric_filter_text"]==None:
		buyer_interest["fabric_filter_text"] = old_buyer_interest.fabric_filter_text
	if not "productid_filter_text" in buyer_interest or buyer_interest["productid_filter_text"]==None:
		buyer_interest["productid_filter_text"] = old_buyer_interest.productid_filter_text
	if not "is_active" in buyer_interest or not validate_bool(buyer_interest["is_active"]):
		buyer_interest["is_active"] = old_buyer_interest.is_active


	if float(buyer_interest["max_price_per_unit"]) > float(buyer_interest["min_price_per_unit"]):
		buyer_interest["price_filter_applied"] = True
	else:
		buyer_interest["price_filter_applied"] = False
		buyer_interest["min_price_per_unit"] = 0.0
		buyer_interest["max_price_per_unit"] = 0.0

	if is_new == 1 and flag == 1:
		return False

	return True
Esempio n. 8
0
def populateSellerIDParameters(request, parameters={}, version="0"):

    accessToken = getAccessToken(request)

    sellerID = request.GET.get("sellerID", "")
    tokenPayload = get_token_payload(accessToken, "sellerID")
    parameters["isSeller"] = 0
    if "sellerID" in tokenPayload and validate_integer(
            tokenPayload["sellerID"]) and "password" in tokenPayload:
        try:
            sellerPtr = Seller.objects.get(id=int(tokenPayload["sellerID"]),
                                           password=tokenPayload["password"],
                                           delete_status=False)
        except:
            pass
        else:
            parameters["sellersArr"] = [sellerPtr.id]
            parameters["isSeller"] = 1
    elif sellerID != "":
        parameters["sellersArr"] = getArrFromString(sellerID)

    sellerShowOnline = request.GET.get("seller_show_online", "")
    if sellerShowOnline != "" and validate_bool(sellerShowOnline):
        parameters["seller_show_online"] = int(sellerShowOnline)

    return parameters
Esempio n. 9
0
def populateBusinessTypeParameters(request, parameters = {}, version = "0"):

	parameters = populateAllUserIDParameters(request, parameters, version)

	canBuyerBuyFrom = request.GET.get("can_buyer_buy_from", None)
	if validate_bool(canBuyerBuyFrom):
		parameters["can_buyer_buy_from"] = int(canBuyerBuyFrom)

	canBeBuyer = request.GET.get("can_be_buyer", None)
	if validate_bool(canBeBuyer):
		parameters["can_be_buyer"] = int(canBeBuyer)

	canBeSeller = request.GET.get("can_be_seller", None)
	if validate_bool(canBeSeller):
		parameters["can_be_seller"] = int(canBeSeller)

	return parameters
Esempio n. 10
0
def validateSellerData(seller, oldseller, isnew):

    flag = 0

    if not "name" in seller or seller["name"] == None:
        flag = 1
        seller["name"] = oldseller.name
    if not "company_name" in seller or seller["company_name"] == None:
        seller["company_name"] = oldseller.company_name
    if not "mobile_number" in seller or seller[
            "mobile_number"] == None or not validate_mobile_number(
                str(seller["mobile_number"])):
        flag = 1
        seller["mobile_number"] = oldseller.mobile_number
    if not "email" in seller or seller["email"] == None or not validate_email(
            seller["email"]):
        seller["email"] = oldseller.email
    if not "password" in seller or seller["password"] == None:
        seller["password"] = oldseller.password
    if not "alternate_phone_number" in seller or seller[
            "alternate_phone_number"] == None:
        seller["alternate_phone_number"] = oldseller.alternate_phone_number
    if not "mobile_verification" in seller or not validate_bool(
            seller["mobile_verification"]):
        seller["mobile_verification"] = oldseller.mobile_verification
    if not "email_verification" in seller or not validate_bool(
            seller["email_verification"]):
        seller["email_verification"] = oldseller.email_verification
    if not "company_profile" in seller or seller["company_profile"] == None:
        seller["company_profile"] = oldseller.company_profile
    if not "seller_conditions" in seller or seller["seller_conditions"] == None:
        seller["seller_conditions"] = oldseller.seller_conditions
    if not "show_online" in seller or not validate_bool(seller["show_online"]):
        seller["show_online"] = oldseller.show_online
    else:
        seller["show_online_changed"] = True
    if not "concerned_person" in seller or seller["concerned_person"] == None:
        seller["concerned_person"] = oldseller.concerned_person
    if not "concerned_person_number" in seller or seller[
            "concerned_person_number"] == None:
        seller["concerned_person_number"] = oldseller.concerned_person_number

    if isnew == 1 and flag == 1:
        return False

    return True
Esempio n. 11
0
def populateBuyerDetailsParameters(request, parameters={}, version="0"):

    defaultValue = 1

    if version == "1":
        defaultValue = 0

    buyerDetails = request.GET.get("buyer_details", None)
    if validate_bool(buyerDetails):
        parameters["buyer_details"] = int(buyerDetails)
    else:
        parameters["buyer_details"] = defaultValue

    buyerDetailsDetails = request.GET.get("buyer_details_details", None)
    if validate_bool(buyerDetailsDetails):
        parameters["buyer_details_details"] = int(buyerDetailsDetails)
    else:
        parameters["buyer_details_details"] = defaultValue

    buyerAddressDetails = request.GET.get("buyer_address_details", None)
    if validate_bool(buyerAddressDetails):
        parameters["buyer_address_details"] = int(buyerAddressDetails)
    else:
        parameters["buyer_address_details"] = defaultValue

    buyerInterestDetails = request.GET.get("buyer_interest_details", None)
    if validate_bool(buyerInterestDetails):
        parameters["buyer_interest_details"] = int(buyerInterestDetails)
    else:
        parameters["buyer_interest_details"] = defaultValue

    buyerPurchasingStateDetails = request.GET.get(
        "buyer_purchasing_state_details", None)
    if validate_bool(buyerPurchasingStateDetails):
        parameters["buyer_purchasing_state_details"] = int(
            buyerPurchasingStateDetails)
    else:
        parameters["buyer_purchasing_state_details"] = 0

    buyerBuysFromDetails = request.GET.get("buyer_buys_from_details", None)
    if validate_bool(buyerBuysFromDetails):
        parameters["buyer_buys_from_details"] = int(buyerBuysFromDetails)
    else:
        parameters["buyer_buys_from_details"] = 0

    buyerProductDetails = request.GET.get("buyer_product_details", None)
    buyerProductCount = request.GET.get("buyer_product_count", None)
    if validate_bool(buyerProductDetails):
        parameters["buyer_product_details"] = int(buyerProductDetails)
        parameters["product_image_details"] = 1
        try:
            parameters["buyer_product_count"] = int(buyerProductCount)
        except Exception as e:
            parameters["buyer_product_count"] = 10
    else:
        parameters["buyer_product_details"] = 0

    return parameters
Esempio n. 12
0
def validateSellerDetailsData(sellerdetails, oldsellerdetails):
    if not "vat_tin" in sellerdetails or sellerdetails["vat_tin"] == None:
        sellerdetails["vat_tin"] = oldsellerdetails.vat_tin
    if not "cst" in sellerdetails or sellerdetails["cst"] == None:
        sellerdetails["cst"] = oldsellerdetails.cst
    if not "pan" in sellerdetails or sellerdetails["pan"] == None:
        sellerdetails["pan"] = oldsellerdetails.pan
    if not "name_on_pan" in sellerdetails or sellerdetails[
            "name_on_pan"] == None:
        sellerdetails["name_on_pan"] = oldsellerdetails.name_on_pan
    if not "dob_on_pan" in sellerdetails or sellerdetails[
            "dob_on_pan"] == None or not validate_date(
                sellerdetails["dob_on_pan"]):
        sellerdetails["dob_on_pan"] = oldsellerdetails.dob_on_pan
    if not "pan_verification" in sellerdetails or not validate_bool(
            sellerdetails["pan_verification"]):
        sellerdetails["pan_verification"] = oldsellerdetails.pan_verification
    if not "tin_verification" in sellerdetails or not validate_bool(
            sellerdetails["tin_verification"]):
        sellerdetails["tin_verification"] = oldsellerdetails.tin_verification
Esempio n. 13
0
def validateOrderShipmentData(orderShipment):

    flag = True

    if not "invoice_number" in orderShipment or orderShipment[
            "invoice_number"] == None:
        orderShipment["invoice_number"] = ""
    if not "invoice_date" in orderShipment or orderShipment[
            "invoice_date"] == None or not validate_date(
                orderShipment["invoice_date"]):
        return False
    if not "waybill_number" in orderShipment or orderShipment[
            "waybill_number"] == None:
        orderShipment["waybill_number"] = ""
    if not "packaged_weight" in orderShipment or not validate_number(
            orderShipment["packaged_weight"]):
        return False
    if not "packaged_length" in orderShipment or not validate_number(
            orderShipment["packaged_length"]):
        return False
    if not "packaged_breadth" in orderShipment or not validate_number(
            orderShipment["packaged_breadth"]):
        return False
    if not "packaged_height" in orderShipment or not validate_number(
            orderShipment["packaged_height"]):
        return False
    if not "cod_charge" in orderShipment or not validate_number(
            orderShipment["cod_charge"]):
        return False
    if not "shipping_charge" in orderShipment or not validate_number(
            orderShipment["shipping_charge"]):
        return False
    if not "remarks" in orderShipment or orderShipment["remarks"] == None:
        orderShipment["remarks"] = ""
    if not "rto_remarks" in orderShipment or orderShipment[
            "rto_remarks"] == None:
        orderShipment["rto_remarks"] = ""
    if not "tracking_url" in orderShipment or orderShipment[
            "tracking_url"] == None:
        orderShipment["tracking_url"] = ""
    if not "all_items" in orderShipment or not validate_bool(
            orderShipment["all_items"]):
        return False
    if not "logistics_partner" in orderShipment or orderShipment[
            "logistics_partner"] == None:
        return False
    else:
        try:
            logistics_partner = LogisticsPartner.objects.get(
                name=orderShipment["logistics_partner"])
        except Exception as e:
            return False

    return flag
Esempio n. 14
0
def populateProductDetailsParameters(request, parameters={}, version="0"):

    defaultValue = 1

    if version == "1":
        defaultValue = 0

    productDetails = request.GET.get("product_details", None)
    if validate_bool(productDetails):
        parameters["product_details"] = int(productDetails)
    else:
        parameters["product_details"] = defaultValue

    productDetailsDetails = request.GET.get("product_details_details", None)
    if validate_bool(productDetailsDetails):
        parameters["product_details_details"] = int(productDetailsDetails)
    else:
        parameters["product_details_details"] = defaultValue

    productLotDetails = request.GET.get("product_lot_details", None)
    if validate_bool(productLotDetails):
        parameters["product_lot_details"] = int(productLotDetails)
    else:
        parameters["product_lot_details"] = defaultValue

    productImageDetails = request.GET.get("product_image_details", None)
    if validate_bool(productImageDetails):
        parameters["product_image_details"] = int(productImageDetails)
    else:
        parameters["product_image_details"] = defaultValue

    categoryDetails = request.GET.get("category_details", None)
    if validate_bool(categoryDetails):
        parameters["category_details"] = int(categoryDetails)
    else:
        parameters["category_details"] = defaultValue

    parameters = populateSellerDetailsParameters(request, parameters, version)

    return parameters
Esempio n. 15
0
def populateCartParameters(request, parameters = {}, version = "0"):

	defaultValue = 1

	if version == "1":
		defaultValue = 0

	parameters = populateAllUserIDParameters(request, parameters, version)

	productID = request.GET.get("productID", "")
	if productID != "" and productID != None:
		parameters["productsArr"] = getArrFromString(productID)

	cartItemID = request.GET.get("cartitemID", "")
	if cartItemID != "" and cartItemID != None:
		parameters["cartItemsArr"] = getArrFromString(cartItemID)	

	cartItemStatus = request.GET.get("cart_item_status", "")
	if cartItemStatus != "":
		parameters["cartItemStatusArr"] = getArrFromString(cartItemStatus)

	parameters = populateBuyerDetailsParameters(request, parameters, version)
	parameters = populateSellerDetailsParameters(request, parameters, version)
	parameters = populateProductDetailsParameters(request, parameters, version)

	parameters = getPaginationParameters(request, parameters, 10, version)

	cartItemDetails = request.GET.get("cart_item_details", None)
	if validate_bool(cartItemDetails):
		parameters["cart_item_details"] = int(cartItemDetails)
	else:
		parameters["cart_item_details"] = defaultValue

	subCartDetails = request.GET.get("sub_cart_details", None)
	if validate_bool(subCartDetails):
		parameters["sub_cart_details"] = int(subCartDetails)
	else:
		parameters["sub_cart_details"] = defaultValue

	return parameters
Esempio n. 16
0
def populateBuyerParameters(request, parameters = {}, version = "0"):

	parameters = populateBuyerIDParameters(request, parameters, version)

	parameters = populateInternalUserIDParameters(request, parameters, version)

	buyerInterestID = request.GET.get("buyerinterestID", "")
	

	whatsappSharingActive = request.GET.get("whatsapp_sharing_active", None)
	if validate_bool(whatsappSharingActive):
		parameters["whatsapp_sharing_active"] = int(whatsappSharingActive)

	testBuyer = request.GET.get("test_buyer", None)
	if validate_bool(testBuyer):
		parameters["test_buyer"] = int(testBuyer)

	if buyerInterestID != "":
		parameters["buyerInterestArr"] = getArrFromString(buyerInterestID)

	buyersharedproductID = request.GET.get("buyersharedproductID", "")
	if buyersharedproductID != "" and validate_integer(buyersharedproductID):
		parameters["buyersharedproductID"] = int(buyersharedproductID)

	buyerMinID = request.GET.get("buyer_min_ID", "")
	if buyerMinID != "" and validate_integer(buyerMinID):
		parameters["buyer_min_ID"] = int(buyerMinID)

	buyerMaxID = request.GET.get("buyer_max_ID", "")
	if buyerMaxID != "" and validate_integer(buyerMaxID):
		parameters["buyer_max_ID"] = int(buyerMaxID)

	buyerPurchasingStateID = request.GET.get("buyerpurchasingstateID", "")
	if buyerPurchasingStateID != "":
		parameters["buyerPurchasingStateArr"] = getArrFromString(buyerPurchasingStateID)

	parameters = populateBuyerDetailsParameters(request, parameters, version)

	return parameters
Esempio n. 17
0
def populateCategorytDetailsParameters(request, parameters={}, version="0"):

    defaultValue = 1

    if version == "1":
        defaultValue = 0

    sellerCategoryDetails = request.GET.get("seller_category_details", None)
    if validate_bool(sellerCategoryDetails):
        parameters["seller_category_details"] = int(sellerCategoryDetails)
    else:
        parameters["seller_category_details"] = defaultValue

    categoryProductDetails = request.GET.get("category_product_details", None)
    if validate_bool(categoryProductDetails):
        parameters["category_product_details"] = int(categoryProductDetails)
        parameters = populateProductDetailsParameters(request, parameters,
                                                      version)

    parameters["category_details_details"] = 1

    return parameters
Esempio n. 18
0
def validateBuyerData(buyer, oldbuyer, is_new):

	flag = 0

	if not "name" in buyer or buyer["name"]==None:
		flag = 1
		buyer["name"] = oldbuyer.name
	if not "company_name" in buyer or buyer["company_name"]==None:
		buyer["company_name"] = oldbuyer.company_name
	if not "mobile_number" in buyer or not validate_mobile_number(buyer["mobile_number"]):
		flag = 1
		buyer["mobile_number"] = oldbuyer.mobile_number
	if not "email" in buyer or buyer["email"]==None or not validate_email(buyer["email"]):
		buyer["email"] = oldbuyer.email
		if is_new == 1:
			buyer["email"] = None
	if not "alternate_phone_number" in buyer or buyer["alternate_phone_number"]==None:
		buyer["alternate_phone_number"] = oldbuyer.alternate_phone_number
	if not "mobile_verification" in buyer or not validate_bool(buyer["mobile_verification"]):
		buyer["mobile_verification"] = oldbuyer.mobile_verification
	if not "email_verification" in buyer  or not validate_bool(buyer["email_verification"]):
		buyer["email_verification"] = oldbuyer.email_verification
	if not "gender" in buyer or buyer["gender"]:
		buyer["gender"] = oldbuyer.gender
	if not "whatsapp_number" in buyer or buyer["whatsapp_number"]==None:
		if oldbuyer.whatsapp_number==None or oldbuyer.whatsapp_number=="":
			buyer["whatsapp_number"] = buyer["mobile_number"]
		else:
			buyer["whatsapp_number"] = oldbuyer.whatsapp_number
	if not "whatsapp_sharing_active" in buyer or not validate_bool(buyer["whatsapp_sharing_active"]):
		buyer["whatsapp_sharing_active"] = oldbuyer.whatsapp_sharing_active
	if not "store_global_margin" in buyer or not validate_percent(buyer["store_global_margin"], False):
		buyer["store_global_margin"] = oldbuyer.store_global_margin

	if is_new == 1 and flag == 1:
		return False

	return True
Esempio n. 19
0
def validateBuyerLeadData(buyerlead, oldbuyerlead, is_new):

    flag = 0

    if not "name" in buyerlead or buyerlead["name"] == None:
        flag = 1
        buyerlead["name"] = oldbuyerlead.name
    if not "mobile_number" in buyerlead or buyerlead["mobile_number"] == None:
        flag = 1
        buyerlead["mobile_number"] = oldbuyerlead.mobile_number
    if not "email" in buyerlead or buyerlead["email"] == None:
        buyerlead["email"] = oldbuyerlead.email
    if not "status" in buyerlead or not validate_bool(buyerlead["status"]):
        buyerlead["status"] = oldbuyerlead.status
    if not "signup" in buyerlead or not validate_bool(buyerlead["signup"]):
        buyerlead["signup"] = oldbuyerlead.signup
    if not "comments" in buyerlead or buyerlead["comments"] == None:
        buyerlead["comments"] = oldbuyerlead.comments

    if is_new == 1 and flag == 1:
        return False

    return True
Esempio n. 20
0
def populateBuyerProductParameters(request, parameters = {}, version = "0"):

	parameters = populateBuyerParameters(request, parameters, version)

	isActive = request.GET.get("is_active", None)
	responded = request.GET.get("responded", None)
	buyerProductID = request.GET.get("buyerproductID", "")
	buyerInterestID = request.GET.get("buyerinterestID", "")
	productID = request.GET.get("productID", "")
	landing = request.GET.get("landing", "")
	
	if validate_bool(isActive):
		parameters["buyer_product_is_active"] = int(isActive)

	if validate_bool(landing):
		parameters["buyer_product_landing"] = int(landing)

	if validate_integer(responded):
		parameters["responded"] = int(responded)

	if buyerProductID != "":
		parameters["buyerProductsArr"] = getArrFromString(buyerProductID)

	if buyerInterestID != "":
		parameters["buyerInterestArr"] = getArrFromString(buyerInterestID)

	from .catalog_handler import populateProductFilterParameters

	parameters = populateProductFilterParameters(request, parameters, version)

	parameters = getPaginationParameters(request, parameters, 10, version)

	from .catalog_handler import populateProductDetailsParameters

	parameters = populateProductDetailsParameters(request, parameters, version)

	return parameters
Esempio n. 21
0
def populateMarketingContactsParameters(request, parameters={}, version="0"):
    parameters = populateInternalUserIDParameters(request, parameters, version)
    parameters = getPaginationParameters(request, parameters, 200)

    newContacts = request.GET.get("new_contacts", "")
    if newContacts != "" and validate_bool(newContacts):
        parameters["new_contacts"] = int(newContacts)
    else:
        parameters["new_contacts"] = 1

    marketingContactID = request.GET.get("marketingcontactID", "")
    if marketingContactID != "" and marketingContactID != None:
        parameters["marketingContactsArr"] = getArrFromString(
            marketingContactID)

    return parameters
Esempio n. 22
0
def populateCategoryParameters(request, parameters={}, version="0"):
    version = getApiVersion(request)
    categoryID = request.GET.get("categoryID", "")
    if categoryID != "":
        parameters["categoriesArr"] = getArrFromString(categoryID)

    categoryShowOnline = request.GET.get("category_show_online", "")
    if categoryShowOnline != "" and validate_bool(categoryShowOnline):
        parameters["category_show_online"] = int(categoryShowOnline)

    parameters = populateAllUserIDParameters(request, parameters, version)

    parameters = populateCategorytDetailsParameters(request, parameters,
                                                    version)

    return parameters
Esempio n. 23
0
def validateCategoryData(category, oldcategory, is_new):
	flag = 0
	if not "name" in category or category["name"]==None:
		flag = 1
		category["name"] = oldcategory.name
	if not "display_name" in category or category["display_name"]==None:
		if not is_new == 1:
			category["display_name"] = oldcategory.display_name
		else:
			category["display_name"] = category["name"]
	if not "show_online" in category or  not validate_bool(category["show_online"]):
		category["show_online"] = oldcategory.show_online

	if is_new == 1 and flag == 1:
		return False

	return True
Esempio n. 24
0
def populateOrderDetailsParameters(request, parameters = {}, version = "0"):

	defaultValue = 1

	if version == "1":
		defaultValue = 0

	orderDetails = request.GET.get("order_details", None)
	if validate_bool(orderDetails):
		parameters["order_details"] = int(orderDetails)
	else:
		parameters["order_details"] = defaultValue

	subOrderDetails = request.GET.get("sub_order_details", None)
	if validate_bool(subOrderDetails):
		parameters["sub_order_details"] = int(subOrderDetails)
	else:
		parameters["sub_order_details"] = defaultValue

	orderShipmentDetails = request.GET.get("order_shipment_details", None)
	if validate_bool(orderShipmentDetails):
		parameters["order_shipment_details"] = int(orderShipmentDetails)
	else:
		parameters["order_shipment_details"] = defaultValue

	orderItemDetails = request.GET.get("order_item_details", None)
	if validate_bool(orderItemDetails):
		parameters["order_item_details"] = int(orderItemDetails)
	else:
		parameters["order_item_details"] = defaultValue

	buyerPaymentDetails = request.GET.get("buyer_payment_details", None)
	if validate_bool(buyerPaymentDetails):
		parameters["buyer_payment_details"] = int(buyerPaymentDetails)
	else:
		parameters["buyer_payment_details"] = defaultValue

	sellerPaymentDetails = request.GET.get("seller_payment_details", None)
	if validate_bool(sellerPaymentDetails):
		parameters["seller_payment_details"] = int(sellerPaymentDetails)
	else:
		parameters["seller_payment_details"] = defaultValue

	parameters = populateBuyerDetailsParameters(request, parameters, version)

	parameters = populateSellerDetailsParameters(request, parameters, version)

	parameters = populateProductDetailsParameters(request, parameters, version)

	return parameters
Esempio n. 25
0
def validateContactUsLeadData(contactUsLead, oldcontactUsLead, is_new):

    flag = 0

    if not "remarks" in contactUsLead or contactUsLead["remarks"] == None:
        contactUsLead["remarks"] = oldcontactUsLead.remarks
    if not "mobile_number" in contactUsLead or contactUsLead[
            "mobile_number"] == None:
        contactUsLead["mobile_number"] = oldcontactUsLead.mobile_number
    if not "email" in contactUsLead or contactUsLead["email"] == None:
        contactUsLead["email"] = oldcontactUsLead.email
    if not "status" in contactUsLead or not validate_bool(
            contactUsLead["status"]):
        contactUsLead["status"] = oldcontactUsLead.status
    if not "comments" in contactUsLead or contactUsLead["comments"] == None:
        contactUsLead["comments"] = oldcontactUsLead.comments

    if is_new == 1 and flag == 1:
        return False

    return True
Esempio n. 26
0
def validateSellerPaymentData(sellerPayment):

    if not "payment_method" in sellerPayment or not validate_integer(
            sellerPayment["payment_method"]):
        return False
    if not "reference_number" in sellerPayment or sellerPayment[
            "reference_number"] == None:
        return False
    if not "details" in sellerPayment or sellerPayment["details"] == None:
        sellerPayment["details"] = ""
    if not "payment_time" in sellerPayment or not validate_date_time(
            sellerPayment["payment_time"]):
        return False
    if not "payment_value" in sellerPayment or not validate_number(
            sellerPayment["payment_value"]):
        return False
    if not "fully_paid" in sellerPayment or not validate_bool(
            sellerPayment["fully_paid"]):
        return False

    return True
Esempio n. 27
0
def validateSellerLeadData(sellerlead, oldsellerlead, is_new):

    flag = 0

    if not "company_name" in sellerlead or sellerlead["company_name"] == None:
        flag = 1
        sellerlead["company_name"] = oldsellerlead.company_name
    if not "mobile_number" in sellerlead or sellerlead["mobile_number"] == None:
        flag = 1
        sellerlead["mobile_number"] = oldsellerlead.mobile_number
    if not "email" in sellerlead or sellerlead["email"] == None:
        sellerlead["email"] = oldsellerlead.email
    if not "status" in sellerlead or not validate_bool(sellerlead["status"]):
        sellerlead["status"] = oldsellerlead.status
    if not "comments" in sellerlead or sellerlead["comments"] == None:
        sellerlead["comments"] = oldsellerlead.comments

    if is_new == 1 and flag == 1:
        return False

    return True
Esempio n. 28
0
	def validateBuyerStoreUrlData(data):
		if not "store_url" in data or data["store_url"] == None or len(data["store_url"]) < 6:
			return False
		if not "store_active" in data or not validate_bool(data["store_active"]):
			return False
		return True
Esempio n. 29
0
def post_new_buyer_product(request, parameters):
    try:
        requestbody = request.body.decode("utf-8")
        buyer_product = convert_keys_to_string(json.loads(requestbody))
    except Exception as e:
        return customResponse(400, error_code=4)

    if not len(buyer_product):
        return customResponse(400,
                              error_code=5,
                              error_details="Invalid data sent in request")

    buyerParameters = {}
    buyerParameters["test_buyer"] = False
    buyerParameters["whatsapp_sharing_active"] = True

    if "all_buyers" in buyer_product and validate_bool(
            buyer_product["all_buyers"]) and int(
                buyer_product["all_buyers"]) == 1:
        if parameters["isInternalUser"] == 0:
            return customResponse(403, error_code=8)
    else:
        if parameters["isBuyer"] == 1:
            buyer_product["buyerID"] = parameters["buyersArr"][0]
        elif not "buyerID" in buyer_product:
            return customResponse(400,
                                  error_code=5,
                                  error_details="Id for buyer not sent")
        buyerParameters["buyersArr"] = getArrFromString(
            buyer_product["buyerID"])

    allBuyersSeries = filterBuyer(buyerParameters).values_list('id', flat=True)

    if len(allBuyersSeries) == 0:
        return customResponse(400,
                              error_code=6,
                              error_details="Invalid ids for buyer sent")

    if not "productID" in buyer_product or buyer_product["productID"] == None:
        return customResponse(400,
                              error_code=5,
                              error_details="Id for product not sent")

    productParameters = {}
    productParameters["product_verification"] = True
    productParameters["product_show_online"] = True
    productParameters["productsArr"] = getArrFromString(
        buyer_product["productID"])

    allProductsDF = filterProducts(productParameters).values('id')
    if len(allProductsDF) == 0:
        return customResponse(400,
                              error_code=6,
                              error_details="Invalid ids for products sent")
    allProductsDF = DataFrame(list(allProductsDF))

    #buyerProductsPtr = BuyerProducts.objects.filter(buyer_id__in = allBuyersSeries).order_by('buyer_id')

    buyerProductParameters = {}
    buyerProductParameters["buyersArr"] = allBuyersSeries
    #buyerProductParameters["responded"] = 0

    allBuyerProductsDF = filterBuyerProducts(buyerProductParameters).values(
        'id', 'buyer_id', 'product_id', 'responded')
    if len(allBuyerProductsDF) == 0:
        columns = ['id', 'buyer_id', 'product_id', 'responded']
        allBuyerProductsDF = DataFrame(columns=columns)
    else:
        allBuyerProductsDF = DataFrame(list(allBuyerProductsDF))

    buyerProductsToCreate = []
    buyerProductsToUpdate = []
    buyerSharedProductIDtoCreate = []

    for buyer in allBuyersSeries:
        tempBuyerProductsDF = allBuyerProductsDF[allBuyerProductsDF.buyer_id ==
                                                 buyer]
        innerFrame = tempBuyerProductsDF[(tempBuyerProductsDF.product_id.isin(
            allProductsDF.id))]
        leftOnlyFrame = allProductsDF[(
            ~allProductsDF.id.isin(innerFrame.product_id))]

        for product_id in leftOnlyFrame['id'].tolist():
            buyerProduct = BuyerProducts(buyer_id=buyer,
                                         product_id=product_id,
                                         buyer_interest=None)
            buyerProductsToCreate.append(buyerProduct)

        buyerProductsToUpdate.extend(innerFrame['id'].tolist())

        newBuyerSharedProductID = BuyerSharedProductID(
            buyer_id=buyer, productid_filter_text=buyer_product["productID"])
        buyerSharedProductIDtoCreate.append(newBuyerSharedProductID)

    try:

        BuyerSharedProductID.objects.bulk_create(buyerSharedProductIDtoCreate,
                                                 batch_size=4000)

        BuyerProducts.objects.bulk_create(buyerProductsToCreate,
                                          batch_size=4000)

        BuyerProducts.objects.filter(id__in=buyerProductsToUpdate).update(
            is_active=True, delete_status=False, updated_at=timezone.now())

    except Exception as e:
        log.critical(e)
        closeDBConnection()
        return customResponse(500, error_code=1)
    else:
        closeDBConnection()
        return customResponse(200, {"buyer_product": "successfully added"})