Advert.php 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. <?php
  2. declare (strict_types = 1);
  3. namespace app\model\api;
  4. use library\basic\BaseModel;
  5. use think\Model;
  6. /**
  7. * @mixin \think\Model
  8. */
  9. class Advert extends BaseModel
  10. {
  11. /**
  12. * 获取列表数据
  13. * @param $page
  14. * @param $where
  15. * @param $pageCount
  16. * @param $desc
  17. */
  18. public function getList($page,$where = [],$pageCount = 20,$filed = '*',$desc = ''){
  19. $data = $this
  20. ->field("p.*,ap.cate_name,ap.json")
  21. ->alias("p")
  22. ->join("adver_page ap",'ap.id=p.page_id')
  23. ->when(!empty($where),function ($query) use($where){
  24. if(!empty($where['page_id'])) {
  25. $query->where('p.page_id',$where['page_id']);
  26. }
  27. if(!empty($where['title'])) {
  28. $query->wherelike('p.title','%' . $where['title'] . '%');
  29. }
  30. if(isset($where['sassid'])) {
  31. $query->where('p.sassid',$where['sassid']);
  32. }
  33. })
  34. ->order($desc)
  35. ->paginate(['list_rows'=>$pageCount,'page'=>$page])
  36. ->toArray();
  37. foreach ($data['data'] as $k=>$v) {
  38. $data['data'][$k]['time'] = date('Y-m-d',$v['time']);
  39. $data['data'][$k]['jsonAr'] = json_decode($v['data'],true);
  40. }
  41. //echo $this->getLastSql();
  42. return [$data['total'],$data['data']];
  43. }
  44. /**
  45. * 保存分类
  46. * @param $post
  47. * @return bool
  48. */
  49. public function savePage($post){
  50. if(!empty($post['id'])) {
  51. $this->where('id',$post['id'])->save($post);
  52. return true;
  53. } else {
  54. unset($post['id']);
  55. $post['time'] = time();
  56. $bool = $this->insert($post);
  57. return $bool;
  58. }
  59. }
  60. }