$_POST['delete'] !=
NULL
$this->
loadModel($one)
->delete()
Цикл foreach
($_POST['id'] as
$one)
Конец цикла
foreach
Конец
$_POST['delivery']!=
NULL
buy(1)
$_POST['justBuy']!=
NULL
buy(0)
Начало
buy ($delivery)
//$delivery = 1 для заказов с доставкой
//$delivery = 0 для заказов без доставки
$mes="";
$quantity=0;
$sum=0.0;
Цикл foreach
($_POST['id'] as
$one)
Конец цикла
foreach
$pr->quantity!=0
да
нет
да
нет
$pr->quantity<$bas
->quantity
$quantity=$pr
->quantity;
$pr->quantity!=0
$quantity=$bas
->quantity;
$c=0;
$b!=NULL
Цикл foreach
($b as $v)
$c+=$v->
quantity;
Конец цикла
foreach
$quantity
=$c;
$model=$this
->module->
getBasketModel();
$product=$this
->module->
getProductModel();
$bas=$model->
findByPk($one);
$pr=$product->
findByPk($bas
->productID);
да
$bas->
updateByPk($bas->
id,array('quantity'=>
$quantity));
$timestamp
= time();
$date_time_array =
getdate($timestamp);
$timestamp = mktime(
$date_time_array['hours'],
$date_time_array['minutes'] - 10,
$date_time_array['seconds'],
$date_time_array['mon'],
$date_time_array['mday'],
$date_time_array['year']);
$b=$model->
findAll(array('condition'=>
'order.created>=:created AND
product.id =:productID',
'params'=> array(
':created' => $timestamp,
':productID' =>
$bas->productID,)));
$v->
delete();
Ж
Ж
да
нет
да
нет
К
да
З
нет
И
И
И
З
И
$sum+=$pr->
sum*$quantity;
$pr->
updateByPk($pr->
id,array('quantity'
=>$pr->quantity -
$quantity));
$bas->orderID!
=0
$basket=new Basket;
$basket->orderID=$bas->orderID;
$basket->clientID=$bas->clientID;
$basket->productID=
$bas->productID;
$basket->quantity=
$bas->quantity;
$basket
->save();
К
К
$ord=$this->
module->
getOrderModel();
exit("Выбранных
товаров на
складе не
осталось");
$sum==0.0
$delivery==1
$ord-
>sum=$sum+$options-
>deliveryCost;
$ord->delivery=1;
$options=Wmopti
ons::model()-
>findByPk(1);
$ord->sum=$sum;
$ord->delivery=0;
да
К
нет
да
нет
нет
да
Л Л
Конец
Л
$options=$command->queryRow();
$criteria=new CDbCriteria;
$criteria->compare('orderID',
$ord->id);
$data=new CActiveDataProvider(
Basket,
array('criteria'=>$criteria,));
$ord->
created=time();
$ord->save();
$command=
$connection->
createCommand($sql);
$ord->status=1;
$connection=Yii::app()->db;
$sql='SELECT
secret,purse,mode,deliveryCost
FROM wmoptions WHERE id=1';
$this->render('_wmPayForm',
array('options'=>$options,
'order'=>$ord,
'model'=>$data,
'orderMessage'=>$this->
module->orderMessage,
'csrfToken'=>$this->
module->csrfToken,));
Конец
Конец цикла foreach
($_POST['id'] as $one)
$this->
render('basket',array
('model'=>$model,));
Е
Рис. 2.10. Блок – схема метода «actionBasket($id)»
присланных Мерчант – сервисом в запросе данных представлена на рис. 2.11.