Notice.php 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. <?php
  2. namespace app\mainapp\controller;
  3. use app\mainapp\BaseController;
  4. use app\common\model\Notice as NoticeModel;
  5. use app\common\model\NoticeCate as NoticeCateModel;
  6. use app\common\model\BrokerNotice as BrokerNoticeModel;
  7. class Notice extends BaseController
  8. {
  9. // 详情
  10. public function getNotice()
  11. {
  12. $noticeid = input('noticeid/d', 0);
  13. $notice = NoticeModel::with('noticeCate')->append(['createtime_text'])->findOrEmpty($noticeid);
  14. if ($notice->isEmpty()){
  15. page_result(1, "通知公告信息不存在");
  16. }
  17. $notice->volume += 1;
  18. $notice->save();
  19. page_result(0, "", array(
  20. 'notice' => $notice
  21. ));
  22. }
  23. // 列表
  24. public function listNotice()
  25. {
  26. $ppage = input('ppage/d', 1);
  27. $psize = input('psize/d', 20);
  28. $map[] = ['status','=',1];
  29. $map[] = ['createtime','<=',time()];
  30. $cateid = input('cateid/d');
  31. if ($cateid!=0){
  32. $map[] = ['cateid', '=', $cateid];
  33. }
  34. $plist = NoticeModel::with('noticeCate')->where($map)->order(['priority'=>'desc','id'=>'desc'])->page($ppage)->limit($psize)->append(['createtime_text'])->select();
  35. page_result(0, "", array(
  36. 'plist' => $plist,
  37. 'pstatus' => $psize > count($plist) ? 'noMore' : 'more'
  38. ));
  39. }
  40. // 全部分类
  41. public function allCate()
  42. {
  43. $allcate = NoticeCateModel::where('status',1)->order(['priority'=>'desc','id'=>'desc'])->select()->toArray();
  44. array_unshift( $allcate, array('id'=>0,'title'=>'全部') );
  45. page_result(0, "", array('allcate'=>$allcate));
  46. }
  47. // 列表
  48. public function listBrokerNotice()
  49. {
  50. $ppage = input('ppage/d', 1);
  51. $psize = input('psize/d', 20);
  52. $map[] = ['status','=',1];
  53. $map[] = ['createtime','<=',time()];
  54. $plist = BrokerNoticeModel::where($map)->order(['priority'=>'desc','id'=>'desc'])->page($ppage)->limit($psize)->append(['createtime_text'])->select();
  55. page_result(0, "", array(
  56. 'plist' => $plist,
  57. 'pstatus' => $psize > count($plist) ? 'noMore' : 'more'
  58. ));
  59. }
  60. public function brokerNoticeDetail()
  61. {
  62. $noticeid = input('noticeid/d', 0);
  63. $notice = BrokerNoticeModel::findOrEmpty($noticeid);
  64. if ($notice->isEmpty()){
  65. page_result(1, "通知公告信息不存在");
  66. }
  67. $notice->volume += 1;
  68. $notice->save();
  69. page_result(0, "", array(
  70. 'notice' => $notice
  71. ));
  72. }
  73. }