From 27de2246ca0a60b9419474c5ccc6d2fe72140bb3 Mon Sep 17 00:00:00 2001 From: Alexander Smirnov Date: Thu, 21 Dec 2023 13:00:22 +0300 Subject: [PATCH] add bonus/stat during moving from pure php to yii --- erp24/actions/bonus/StatAction.php | 12 ++ erp24/controllers/BonusController.php | 15 ++ erp24/views/bonus/stat.php | 189 ++++++++++++++++++++++++++ 3 files changed, 216 insertions(+) create mode 100644 erp24/actions/bonus/StatAction.php create mode 100644 erp24/controllers/BonusController.php create mode 100644 erp24/views/bonus/stat.php diff --git a/erp24/actions/bonus/StatAction.php b/erp24/actions/bonus/StatAction.php new file mode 100644 index 0000000..a3db19c --- /dev/null +++ b/erp24/actions/bonus/StatAction.php @@ -0,0 +1,12 @@ +controller->render('stat'); + } +} \ No newline at end of file diff --git a/erp24/controllers/BonusController.php b/erp24/controllers/BonusController.php new file mode 100644 index 0000000..226735a --- /dev/null +++ b/erp24/controllers/BonusController.php @@ -0,0 +1,15 @@ + \yii_app\actions\bonus\StatAction::class, + ]; + } + +} diff --git a/erp24/views/bonus/stat.php b/erp24/views/bonus/stat.php new file mode 100644 index 0000000..07acd18 --- /dev/null +++ b/erp24/views/bonus/stat.php @@ -0,0 +1,189 @@ +='$date1 00:00:00' AND users_bonus.date<='$date2 23:59:59'"; + +if(!empty($_REQUEST["store_id"]) and $_REQUEST["store_id"]!="-1") { $store_id=intval($_REQUEST["store_id"]);$where .=" AND users_bonus.store_id='$store_id'";} +if(!empty($_REQUEST["tip"]) and $_REQUEST["tip"]!="-1") { $tip=htmlentities($_REQUEST["tip"]);$where .=" AND users_bonus.tip='$tip'";} +if(!empty($_REQUEST["phone"])) { $phone=htmlentities($_REQUEST["phone"]);$where .=" AND users_bonus.phone LIKE '%$phone%'";} +if(!empty($_REQUEST["name"])) { $name_s=htmlentities($_REQUEST["name"]);$where .=" AND users_bonus.name LIKE '%$name_s%'";} +if(!empty($_REQUEST["lid_id"])) { $lid_id_s=intval($_REQUEST["lid_id"]);$where .=" AND users_bonus.lid_id LIKE '%$lid_id_s%'";} + + + +echo" +
+request->getCsrfToken() . "\" /> + +
+ + + + + + + +
+ +
+ + +
"; + + + + + +//$data = $db::getRows("SELECT *,users.phone as phone_user, DATE_FORMAT(users_bonus.date,'%d.%m.%Y') as date_t FROM users_bonus LEFT JOIN users ON (users_bonus.user_id=users.id AND ($where) ) order by users_bonus.date limit 300"); + +$data = $db::getRows("SELECT *, DATE_FORMAT(date,'%d.%m.%Y') as date_t FROM users_bonus WHERE $where order by date_t, phone DESC, bonus asc, tip ASC limit 800"); +echo"

Движения в бонусной программе Выбрано ".count($data)."

"; +echo"
+"; +foreach ($data as $row) { + + + + if($row["tip"]=="plus") {$tip="+"; $store_arr_bonus[$row["store_id"]]["plus"]=$store_arr_bonus[$row["store_id"]]["plus"]+$row["bonus"];} + else { $tip="-"; $store_arr_bonus[$row["store_id"]]["minus"]=$store_arr_bonus[$row["store_id"]]["minus"]+$row["bonus"]; } + echo''; + + $phones[$row["tip"]][]=$row["phone"]; +} +echo'
бонусыдатамагазинсотрудникнаименование
'; + + +//echo'X'; + + echo ''.$tip.' '.$row["bonus"].''.$row["date_t"].''.$store_arr[$row["store_id"]].''.$user_arr[$row["admin_id"]].''.$row["name"].' '.$row["phone"].' '; + if(!empty($row["referal_id"])) echo 'referal_id='.$row["referal_id"]; + + echo'
'; + + + + + +$data = $db::getRows("SELECT sum(bonus) as bonuss, count(*) as cnt, store_id,phone FROM users_bonus WHERE tip='minus' AND date>='$date1 00:00:00' AND date<='$date2 23:59:59' group by user_id, store_id, phone order by cnt DESC"); +echo"

Количество покупок клиента за период

"; +echo"
+"; +foreach ($data as $row) { + echo""; + +} +echo'
кол-во списанийбонусымагазинID клиента
".$row["cnt"]."".$row["bonuss"]."".$store_arr[$row["store_id"]]."".$row["phone"]."
'; + + + + + +$data = $db::getRows("SELECT sum(bonus) as bonuss, count(*) as cnt, store_id,phone FROM users_bonus WHERE tip='plus' AND +date>='$date1 00:00:00' AND date<='$date2 23:59:59' group by store_id, phone order by cnt DESC"); +echo"

Количество начислений

"; +echo"
+"; +foreach ($data as $row) { + echo""; + +} +echo'
кол-во списанийбонусымагазинID клиента
".$row["cnt"]."".$row["bonuss"]."".$store_arr[$row["store_id"]]."".$row["phone"]."
'; + + + + +$data = $db::getRows("SELECT sum(bonus) as bonuss,store_id,admin_id FROM users_bonus WHERE date>='$date1 00:00:00' AND date<='$date2 23:59:59' group by store_id, admin_id "); +echo"

Бонусы в магазинах за период

"; +echo"
+"; +foreach ($data as $row) { + echo""; + +} +echo'
бонусымагазинсотрудник
".$row["bonuss"]."".$store_arr[$row["store_id"]]."".$row["admin_id"]."
+ +Сортировка по списанным +ПО дате и по количеству бонусов +По количеству покупок + +Если больше 2 списаний в месяц проверить списания - список +Отчет по продажам в разрезе магазинов +Какое количество бонусов списано в магазине +Сколько новых клиентов подключил магазин за месяц +Сколько клиентов в день сработало + +'; + + + + + + + + +$data = $db::getRows("SELECT count(*) as cnt , avg(sale_avg_price) as sale_avg_price, sum(balans) as balans, sum(bonus_minus) as bonus_minus, created_store_id, created_store +FROM users WHERE date>='$date1 00:00:00' AND date<='$date2 23:59:59' group by created_store_id, created_store "); +echo"

Новые клиенты в бонусной за период

"; +echo"
+"; +foreach ($data as $row) { + echo""; + +} +echo'
бонусыпотраченомагазинсотрудник
".$row["balans"]." ".$row["bonus_minus"]." = ".$row["cnt"]." ".$row["sale_avg_price"]." ".$row["created_store"]."".$row["admin_id"]."
'; + + + + +$_CONFIG["jscss"]=""; + + + + + +include_once dirname(__DIR__, 2) . '/templates/bottom_light.php'; -- 2.39.5