StatController.php 5.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. <?php
  2. namespace ghs\controllers;
  3. use biz\stat\classes\StatCgClass;
  4. use biz\stat\classes\StatPdAddClass;
  5. use biz\stat\classes\StatPdSubClass;
  6. use biz\stat\classes\StatRefundClass;
  7. use biz\stat\classes\StatSaleClass;
  8. use biz\stat\classes\StatStockInClass;
  9. use biz\stat\classes\StatStockOutClass;
  10. use biz\stat\classes\StatWastClass;
  11. use common\components\dateUtil;
  12. use Yii;
  13. use common\components\util;
  14. class StatController extends BaseController
  15. {
  16. //利润表 ssh 20210829
  17. public function actionProfit()
  18. {
  19. $get = Yii::$app->request->get();
  20. $where = [];
  21. $where['mainId'] = $this->mainId;
  22. $searchTime = $get['searchTime'] ?? 'today';
  23. if (!empty($searchTime)) {
  24. $startTime = $get['startTime'] ?? '';
  25. $endTime = $get['endTime'] ?? '';
  26. $period = dateUtil::formatTime($searchTime, $startTime, $endTime, true);
  27. $where['time'] = ['between', [$period['startTime'], $period['endTime']]];
  28. }
  29. //开单
  30. $sale = StatSaleClass::getSum($where);
  31. //调拨出库
  32. $stockOut = StatStockOutClass::getSum($where);
  33. //盘盈
  34. //$pdAdd = StatPdAddClass::getSum($where);
  35. //采购入库
  36. $cg = StatCgClass::getSum($where);
  37. //报损
  38. //$wast = StatWastClass::getSum($where);
  39. //调拨入库
  40. $stockIn = StatStockInClass::getSum($where);
  41. //盘亏
  42. //$pdSub = StatPdSubClass::getSum($where);
  43. //退款
  44. $refund = StatRefundClass::getSum($where);
  45. $in = $sale;
  46. $in = bcadd($in, $stockOut, 2);
  47. //$in = bcadd($in, $pdAdd, 2);
  48. $out = $cg;
  49. //$out = bcadd($out, $wast, 2);
  50. $out = bcadd($out, $stockIn, 2);
  51. //$out = bcadd($out, $pdSub, 2);
  52. $out = bcadd($out, $refund, 2);
  53. $balance = bcsub($in, $out, 2);
  54. $out = [
  55. 'income' => [
  56. ['name' => '销售', 'amount' => $sale],
  57. ['name' => '调拨出库', 'amount' => $stockOut],
  58. //['name' => '盘盈', 'amount' => $pdAdd],
  59. ],
  60. 'expend' => [
  61. ['name' => '采购', 'amount' => $cg],
  62. //['name' => '报损', 'amount' => $wast],
  63. ['name' => '调拨入库', 'amount' => $stockIn],
  64. //['name' => '盘亏', 'amount' => $pdSub],
  65. ['name' => '退款', 'amount' => $refund],
  66. ],
  67. 'balance' => $balance,
  68. ];
  69. util::success($out);
  70. }
  71. //统计列表 ssh 2020.1.5
  72. public function actionList()
  73. {
  74. $incomeStat = [
  75. 'total' => (185 + 381 + 662 + 443),
  76. 'list' => [
  77. ['name' => '2.6', 'num' => 185],
  78. ['name' => '2.7', 'num' => 381],
  79. ['name' => '2.8', 'num' => 662],
  80. ['name' => '2.9', 'num' => 443],
  81. ],
  82. ];
  83. $visitStat = [
  84. 'total' => (115 + 341 + 622 + 423),
  85. 'list' => [
  86. ['name' => '2.6', 'num' => 115],
  87. ['name' => '2.7', 'num' => 341],
  88. ['name' => '2.8', 'num' => 622],
  89. ['name' => '2.9', 'num' => 423],
  90. ],
  91. ];
  92. $userStat = [
  93. 'total' => (185 + 341 + 622 + 423),
  94. 'list' => [
  95. ['name' => '2.6', 'num' => 185],
  96. ['name' => '2.7', 'num' => 341],
  97. ['name' => '2.8', 'num' => 622],
  98. ['name' => '2.9', 'num' => 423],
  99. ],
  100. ];
  101. $fansStat = [
  102. 'total' => (185 + 241 + 322 + 553),
  103. 'list' => [
  104. ['name' => '2.6', 'num' => 185],
  105. ['name' => '2.7', 'num' => 241],
  106. ['name' => '2.8', 'num' => 322],
  107. ['name' => '2.9', 'num' => 553],
  108. ],
  109. ];
  110. $incomeSourceStat = [
  111. 'total' => (299 + 366 + 2995),
  112. 'list' => [
  113. ['name' => '门店', 'num' => 299],
  114. ['name' => '微信朋友圈', 'num' => 366],
  115. ['name' => '美团', 'num' => 2995],
  116. ],
  117. ];
  118. $categoryStat = [
  119. 'total' => (552 + 155 + 295 + 365 + 600 + 504),
  120. 'list' => [
  121. ['name' => '花束', 'num' => 552],
  122. ['name' => '花篮', 'num' => 155],
  123. ['name' => '蝴蝶兰', 'num' => 295],
  124. ['name' => '绿植', 'num' => 365],
  125. ['name' => '永生花', 'num' => 600],
  126. ['name' => '散花', 'num' => 504],
  127. ],
  128. ];
  129. $useStat = [
  130. 'total' => (552 + 155 + 295 + 365 + 600 + 504),
  131. 'list' => [
  132. ['name' => '年销花', 'num' => 552],
  133. ['name' => '送爱人', 'num' => 155],
  134. ['name' => '婚庆', 'num' => 295],
  135. ['name' => '开业', 'num' => 365],
  136. ['name' => '送母亲', 'num' => 600],
  137. ['name' => '生日', 'num' => 504],
  138. ]
  139. ];
  140. $data = ['incomeStat' => $incomeStat,
  141. 'visitStat' => $visitStat,
  142. 'userStat' => $userStat,
  143. 'fansStat' => $fansStat,
  144. 'incomeSourceStat' => $incomeSourceStat,
  145. 'categoryStat' => $categoryStat,
  146. 'useStat' => $useStat,
  147. ];
  148. util::success($data);
  149. }
  150. }