Change.php 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <?php
  2. namespace app\admin\controller\platprofit;
  3. use app\common\controller\Backend;
  4. /**
  5. * 转换收益
  6. *
  7. * @icon fa fa-circle-o
  8. */
  9. class Change extends Backend
  10. {
  11. /**
  12. * Change模型对象
  13. * @var \app\admin\model\platprofit\Change
  14. */
  15. protected $model = null;
  16. public function _initialize()
  17. {
  18. parent::_initialize();
  19. $this->model = new \app\admin\model\platprofit\Change;
  20. }
  21. public function import()
  22. {
  23. parent::import();
  24. }
  25. /**
  26. * 默认生成的控制器所继承的父类中有index/add/edit/del/multi五个基础方法、destroy/restore/recyclebin三个回收站方法
  27. * 因此在当前控制器中可不用编写增删改查的代码,除非需要自己控制这部分逻辑
  28. * 需要将application/admin/library/traits/Backend.php中对应的方法复制到当前控制器,然后进行修改
  29. */
  30. /**
  31. * 查看
  32. */
  33. public function index()
  34. {
  35. //当前是否为关联查询
  36. $this->relationSearch = true;
  37. //设置过滤方法
  38. $this->request->filter(['strip_tags', 'trim']);
  39. if ($this->request->isAjax()) {
  40. //如果发送的来源是Selectpage,则转发到Selectpage
  41. if ($this->request->request('keyField')) {
  42. return $this->selectpage();
  43. }
  44. list($where, $sort, $order, $offset, $limit) = $this->buildparams();
  45. // $list = $this->model
  46. // ->with(['party','user'])
  47. // ->where($where)
  48. // ->order($sort, $order)
  49. // ->group("party_id")
  50. // ->select();
  51. //
  52. // $plat_value = $this->model
  53. // ->with(['party','user'])
  54. // ->where($where)
  55. // ->order($sort, $order)
  56. // ->group("party.party_id")
  57. // ->sum("plat_value");
  58. //
  59. // foreach ($list as $row) {
  60. // $row->getRelation('party')->visible(['party_id','party_name']);
  61. // $row->getRelation('user')->visible(['u_id','nickname']);
  62. // }
  63. // $result = array("total" => 1, "rows" => $list);
  64. //
  65. // $result = json($result);
  66. // $result->plat_value = $plat_value;
  67. //
  68. // return $result;
  69. $filter = $this->request->request('filter');
  70. $wheres = json_decode($filter,true);
  71. $where = [];
  72. if(isset($wheres["createtime"])) {
  73. $createtime = explode(" - ",$wheres["createtime"]);
  74. $where["change.createtime"] = ["between",strtotime($createtime[0]).",".strtotime($createtime[1])];
  75. }
  76. isset($wheres["party_id"]) && $where["party_id"] = $wheres["party_id"];
  77. $list = $this->model->alias("change")
  78. ->field("change.id,sum(change.plat_value) as plat_value,user.u_id,user.nickname,party.party_id,party.party_name,change.createtime")
  79. ->join("hx_party party","change.party_id = party.id","inner")
  80. ->join("hx_user user","user.id = change.user_id","left")
  81. ->order($sort, $order)
  82. ->where($where)
  83. ->where(["party.id"=>["gt",0]])
  84. ->group("change.party_id")
  85. ->select();
  86. $result = array("total" => 1, "rows" => $list);
  87. return json($result);
  88. }
  89. return $this->view->fetch();
  90. }
  91. }