StatSaleClass.php 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace biz\stat\classes;
  3. use biz\base\classes\BaseClass;
  4. use biz\stat\models\StatSale;
  5. class StatSaleClass extends BaseClass
  6. {
  7. public static $baseFile = '\biz\stat\models\StatSale';
  8. //获取销售总和 ssh 20210829
  9. public static function getSum($where)
  10. {
  11. $amount = self::sum($where, 'amount');
  12. return empty($amount) ? 0 : $amount;
  13. }
  14. public static function getSaleList($where)
  15. {
  16. }
  17. //销售统计 ssh 20210827
  18. public static function replace($main, $shop, $amount, $date = null)
  19. {
  20. $mainId = $shop->mainId ?? 0;
  21. $time = $date == null ? date('Ymd') : $date;
  22. $stat = self::getByCondition(['mainId' => $mainId, 'time' => $time], true);
  23. if (empty($stat)) {
  24. $stat = self::add(['mainId' => $mainId, 'time' => $time, 'num' => 0], true);
  25. }
  26. $id = $stat->id;
  27. $unique = self::getLockById($id);
  28. $currentAmount = bcadd($unique->amount, $amount, 2);
  29. $unique->amount = $currentAmount;
  30. $unique->totalAmount = $main->totalSale;
  31. $unique->num += 1;
  32. $unique->save();
  33. StatSaleMonthClass::replace($main, $shop, $amount, $time);
  34. }
  35. }