DefaultController.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?php
  2. namespace addons\Purchase\backend\controllers;
  3. use Yii;
  4. use common\controllers\AddonsController;
  5. /**
  6. * 默认控制器
  7. *
  8. * Class DefaultController
  9. * @package addons\Purchase\backend\controllers
  10. */
  11. class DefaultController extends BaseController
  12. {
  13. public $enableCsrfValidation = false;
  14. /**
  15. * 首页
  16. *
  17. * @return string
  18. */
  19. public function actionIndex()
  20. {
  21. return $this->render('index',[
  22. ]);
  23. }
  24. public function actionGoods()
  25. {
  26. if (Yii::$app->request->isAjax) {
  27. if (Yii::$app->request->isGet) {
  28. $get = Yii::$app->request->get();
  29. $where[] = ['mall_id' => $this->mall_id];
  30. $where[] = ['<>','status',StatusEnum::DELETE];
  31. if (isset($get['goods_name']) && !empty($get['goods_name'])) {
  32. $goodsLists = Goods::goodsSearchFromAddons('goods_name', $get['goods_name'], $this->mall_id);
  33. if (empty($goodsLists)) {
  34. return $this->success('操作成功', ['list' => []]);
  35. } else {
  36. $goodsIds = array_column($goodsLists, 'id');
  37. $where[] = ['goods_id' => $goodsIds];
  38. }
  39. }
  40. $params = [
  41. 'where' => $where,
  42. 'limit' => 10,
  43. 'select' => ['goods_id', 'num', 'created_at', 'money', 'type', 'price', 'score'],
  44. 'order' => 'created_at desc'
  45. ];
  46. $list = ScoreMallGoods::listPage($params);
  47. if ($list['list']) {
  48. $url = Yii::$app->services->setting->mall->get($this->mall_id, 'basic.web_url');
  49. $url = $url ?? '';
  50. $list['domain'] = $url;
  51. if (!isset($goodsLists)) {
  52. $goodsLists = Goods::find()
  53. ->select(['id', 'goods_name', 'cover_pic', 'price'])
  54. ->where(['in', 'id', array_column($list['list'], 'goods_id')])
  55. ->asArray()->indexBy('id')->all();
  56. }
  57. $goodsLists = array_column($goodsLists, null, 'id');
  58. foreach ($list['list'] as &$val) {
  59. $val['money'] = $val['money'] ?? '0.00';
  60. $val['created_at'] = date('Y-m-d H:i:s', $val['created_at']);
  61. $val['type_info'] = ScoreMallEnum::getTypeMap($val['type']);
  62. $val['goods_name'] = isset($goodsLists[$val['goods_id']]) ? $goodsLists[$val['goods_id']]['goods_name'] : '';
  63. $val['cover_pic'] = isset($goodsLists[$val['goods_id']]) ? $goodsLists[$val['goods_id']]['cover_pic'] : '';
  64. $val['price'] = isset($goodsLists[$val['goods_id']]) ? $goodsLists[$val['goods_id']]['price'] : '';
  65. }
  66. }
  67. return $this->success('操作成功', $list);
  68. }
  69. }
  70. return $this->render('index');
  71. }
  72. }