BusinessSchool.php 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. <?php
  2. namespace app\controller\api\business;
  3. use crmeb\basic\BaseController;
  4. use think\App;
  5. use think\facade\Db;
  6. class BusinessSchool extends BaseController
  7. {
  8. protected $merId;
  9. protected $source;
  10. public function __construct(App $app)
  11. {
  12. parent::__construct($app);
  13. $this->source = $this->request->header('source');
  14. $this->merId = $this->request->header('merId');
  15. }
  16. public function classify_list(){
  17. $list = Db::name("business_school_classify")->field('id,name') ->where('mer_id',$this->merId)->where('state',1)->where('is_del',0)->order("sort desc,id desc")-> select() -> toArray();
  18. return app("json") -> success($list);
  19. }
  20. public function lst(){
  21. [$page, $limit] = $this->getPage();
  22. $where = $this->request->params(['classify']);
  23. $query=Db::name('business_school')
  24. -> alias("sp")
  25. -> join("business_school_classify spc","sp.classify = spc.id","left")
  26. ->where('spc.mer_id',$this->merId)
  27. ->where('sp.state',1)
  28. ->where('sp.is_del',0)
  29. -> when(!empty($where['classify']),function ($query) use ($where){
  30. $query -> where("sp.classify",$where['classify']);
  31. })->field("sp.id,sp.name,sp.image,sp.type,DATE(sp.create_time) as create_time,sp.reading,spc.name as classify_name");
  32. $count = $query -> count();
  33. $list = $query ->order("sp.sort desc,sp.id desc")->page($page,$limit)->select()->toArray();
  34. return app('json')->success(compact("list","count"));
  35. }
  36. public function detail(){
  37. $id = $this->request->param('id');
  38. $data=Db::name('business_school')
  39. -> alias("sp")
  40. -> join("business_school_classify spc","sp.classify = spc.id","left")
  41. ->where('spc.mer_id',$this->merId)
  42. ->where('sp.state',1)
  43. ->where('sp.id',$id)
  44. ->field("sp.id,sp.name,sp.image,sp.cover,sp.type,DATE(sp.create_time) as create_time,sp.mp4,sp.content,sp.reading,spc.name as classify_name")
  45. ->find();
  46. if($data){
  47. // $uid = $this->request->uid();
  48. $uid = 0;
  49. $data['relation']=false;
  50. if($uid){
  51. $relation_count=Db::name('user_relation')->where('type',11)->where('type_id',$id)->where('uid',$uid)->count();
  52. if($relation_count>0){
  53. $data['relation']=true;
  54. }
  55. }
  56. Db::name('business_school')->where('id',$id)->inc('reading')->update();
  57. return app('json')->success($data);
  58. }else{
  59. return app('json')->fail('课程不存在');
  60. }
  61. }
  62. }