Главная Случайная страница


Полезное:

Как сделать разговор полезным и приятным Как сделать объемную звезду своими руками Как сделать то, что делать не хочется? Как сделать погремушку Как сделать так чтобы женщины сами знакомились с вами Как сделать идею коммерческой Как сделать хорошую растяжку ног? Как сделать наш разум здоровым? Как сделать, чтобы люди обманывали меньше Вопрос 4. Как сделать так, чтобы вас уважали и ценили? Как сделать лучше себе и другим людям Как сделать свидание интересным?


Категории:

АрхитектураАстрономияБиологияГеографияГеологияИнформатикаИскусствоИсторияКулинарияКультураМаркетингМатематикаМедицинаМенеджментОхрана трудаПравоПроизводствоПсихологияРелигияСоциологияСпортТехникаФизикаФилософияХимияЭкологияЭкономикаЭлектроника






Приложение 2. Программный код функции вычисления стомости игры/бронирования





 

Код функции вычисления стоимости игры/бронирования написан на языке программирования PHP.

 

function Calc($club, $rows, $date, $timeStart, $timeEnd, $actionId=0, $promoCode="")

{

 

$todayTimeStamp=mktime(0, 0, 0, substr($date,5,2), substr($date,8,2), substr($date,0,4));

$total = 0;

$rowsCalc=array();

 

foreach ($rows as $row)

{

$rowsCalc[$row]=$this->CalcRow($club, $row, $date, $timeStart, $timeEnd);

$total+=$rowsCalc[$row];

}

 

 

$params= ['club'=>$club,'rows'=>$rows,'dateTimeStamp'=>$todayTimeStamp,'timeStart'=>$timeStart-$todayTimeStamp,'timeEnd'=>$timeEnd-$todayTimeStamp];

//var_dump($params);

if ($actionId==0)

{

return $total;

}

 

$AT = new ActionTable();

//var_dump($actionId);

//var_dump($promoCode);

if ($actionId=='-1' && $promoCode!="")

{

$Action = $AT->getByPromoCode($promoCode,$params);

//var_dump($Action);

}

elseif ($actionId>0)

{

$Action = $AT->getByID($actionId);

}

 

//var_dump($Action);

 

if (!$Action)

{

return $total;

}

 

foreach ($rowsCalc as $key => $sum)

{

 

// проверка на акцию - можно ли применять

$canDoAction = $AT->checkAction($Action['actionId'], $club, $key, $todayTimeStamp, $timeStart, $timeEnd);

 

if (!$canDoAction)

{

continue;

}

 

$this->actionInfo="(Акция: ".$Action['name'].")";

// еслиакциязафиксцену

if ($Action['discountVariant']=='fix')

{

$rowsCalc[$key]=$Action['price'];

}

else

{

// если %

if ($Action['discountType']=='%')

{

if ($Action['crossType']=='inside' || $Action['crossType']=='crossfull')

{

$rowsCalc[$key]=$rowsCalc[$key]-($rowsCalc[$key]*0.01*$Action['discount']);

}

else

{

// cross - расчитать период скидки

// расчитать сумму за период

// высчитать скидку

// вычесть скидку

}

}

 

// если в рублях

if ($Action['discountType']=='Р')

{

if ($Action['crossType']=='inside' || $Action['crossType']=='crossfull')

{

$rowsCalc[$key]=$rowsCalc[$key]-$Action['discount'];

}

else

{

// cross - расчитать период скидки

// расчитать сумму за период

// высчитать скидку

// вычесть скидку

}

}

 

// если в минутах

if ($Action['discountType']=='М')

{

// если cross - расчитать период скидки

 

// если вначале

// расчет стоимости вначале

// иначе

// расчет стоимости вконце

 

// вычесть

 

//$timeMin = ($timeEnd-$timeStart)/60;

 

if ($Action['crossType']=='inside' || $Action['crossType']=='crossfull')

{

 

if ($Action['timeDiscountFrom']=='start')

{

$rowsCalc[$key]=$this->CalcRow($club, $key, $date, $timeStart+$Action['discount']*60, $timeEnd);

}

else

{

$rowsCalc[$key]=$this->CalcRow($club, $key, $date, $timeStart, $timeEnd-$Action['discount']*60);

}

}

else

{

// расчет

}

}

}

}

 

$total=0;

foreach ($rowsCalc as $val)

{

$total+=$val;

}

 

return $total;

}

Date: 2015-07-17; view: 312; Нарушение авторских прав; Помощь в написании работы --> СЮДА...



mydocx.ru - 2015-2024 year. (0.005 sec.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав - Пожаловаться на публикацию