Exemple #1
0
def return_to_warehouse(user):
    deal_id = user.deal_data.deal_id

    # get stage, check it's actual
    actual_stage = BW.get_deal_stage(deal_id)

    if actual_stage != BFM.DEAL_IS_IN_DELIVERY_STATUS_ID:
        return BW.BW_WRONG_STAGE

    fields = {
        DEAL_STAGE_ALIAS: BFM.DEAL_APPROVED_STATUS_ID,
        DEAL_WAREHOUSE_RETURNED: BFM.DEAL_IS_RETURNED_TO_WAREHOUSE_YES,
        DEAL_WAREHOUSE_RETURN_REASON: user.data.warehouse_return_reason
    }

    BW.update_deal(deal_id, fields)
    return BW.BW_OK
Exemple #2
0
def finish_deal(user):
    deal_id = user.deal_data.deal_id

    # get stage, check it's actual
    actual_stage = BW.get_deal_stage(deal_id)

    if actual_stage != BFM.DEAL_IS_IN_DELIVERY_STATUS_ID:
        return BW.BW_WRONG_STAGE

    fields = {
        DEAL_STAGE_ALIAS: BFM.DEAL_SUCCESSFUL_STATUS_ID,
        DEAL_WAREHOUSE_RETURNED: BFM.DEAL_IS_RETURNED_TO_WAREHOUSE_NO
    }

    if user.data.late_reason is None:
        fields[DEAL_IS_LATE_ALIAS] = BFM.DEAL_IS_LATE_NO
    else:
        fields[DEAL_IS_LATE_ALIAS] = BFM.DEAL_IS_LATE_YES
        fields[DEAL_IS_LATE_REASON_ALIAS] = user.data.late_reason

    BW.update_deal(deal_id, fields)
    return BW.BW_OK