#include "BakeryItem.h"



BakeryItem::BakeryItem(double itemPrice, string itemName, int itemStockRemaining)
{
	_itemPrice = itemPrice;
	_itemName = itemName;
	_itemStockRemaining = itemStockRemaining;
}


BakeryItem::~BakeryItem()
{
}

void BakeryItem::SetItemPrice(double itemPrice) 
{
	_itemPrice = itemPrice;
}

int BakeryItem::GetNumberSold(void)
{
	return _numberSold;
}

double BakeryItem::GetTotalItemProfit(void)
{
	return _totalItemProfit;
}

double BakeryItem::GetItemPrice(void)
{
	return _itemPrice;
}

string BakeryItem::ItemName(void)
{
	return _itemName;
}

int BakeryItem::GetItemStockRemaining(void)
{
	return _itemStockRemaining;
}

bool BakeryItem::AddToStock(int newStock)
{
	if (newStock >= 0)
	{
		_itemStockRemaining = _itemStockRemaining + newStock;
		return true;
	}

	return false;
}

bool BakeryItem::SellItem(int numberSold)
{
	if (numberSold > _itemStockRemaining)
	{
		//Don't have enough stock :-(
		return false;
	}

	if (numberSold < 0)
	{
		//Can't sell a negative number of an item.
		return false;
	}

	_numberSold = _numberSold + numberSold;
	_itemStockRemaining = _itemStockRemaining - numberSold;
	_totalItemProfit = _totalItemProfit + (_itemPrice * numberSold);

	return true;
}