123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687 |
- <?php
- namespace Admin\Controller;
- use Common\Controller\AdminController;
- class NoticeController extends AdminController {
- public function __construct(){
- parent::__construct();
- }
-
- public function index(){
- $page = I('get.p','1');
- session('page',$page);
- $condition = array('is_delete'=>1,'user_id'=>0);
- $count = M('Notice')->where($condition)->count();
- //分页
- $Page = new \Think\Page($count);
- $show = $Page->show();
- $noticeList = M('Notice')->where($condition)->field()->order('notice_id desc')->limit($Page->firstRow.','.$Page->listRows)->select();
- $this->assign('page',$show);
- $this->assign('list',$noticeList);
- $this->display();
- }
-
- public function edit(){
- $step = I('step','');
- $noticeId = I('notice_id','');
- if (empty($step)){
- $info = array();
- if (!empty($noticeId)){
- $info = M('Notice')->where(array('notice_id'=>$noticeId))->find();
- }
- $this->assign('info',$info);
- $this->display();
- }else if($step==2){
- $userIdArr = array();
- $userType = I('user_type','');
- $refUserId = I('ref_user_id','');
- $refUserId = str_replace(',', ',', $refUserId);
- $refUserId = trim($refUserId,',');
- if ($userType==2){
- if (empty($refUserId)){
- $this->error('用户id不能为空');
- }
- $userIdArr = explode(',', $refUserId);
- $userInfo = M('User')->where(array('user_id'=>array('IN',$userIdArr)))->field('user_id')->select();
- if (function_exists('array_column')){
- $userIdDbArr = array_column($userInfo, 'user_id');
- }else{
- foreach ($userInfo as $r){
- $userIdDbArr[] = $r['user_id'];
- }
- }
- if (count($userIdArr)!=count($userIdDbArr)){
- $userIdDiff = array_diff($userIdArr, $userIdDbArr);
- $userIdDiffStr = implode(',', $userIdDiff);
- $this->error('您输入的“'.$userIdDiffStr.'”未找到相关用户id信息,请仔细核实后提交。');
- }
- }
- $noticeContent = I('notice_content','');
- if (mb_strlen($noticeContent,'UTF8')<2 || mb_strlen($noticeContent,'UTF8')>500){
- $this->error('通知消息2到500个汉字');
- }
-
- if (empty($noticeId)){
- if ($userType==2){
- M('Notice')->add(array('notice_content'=>$noticeContent,'notice_title'=>'系统消息','ref_user_id'=>$refUserId,'user_id'=>0,'operate_dt'=>time()));
- M('User')->where(array('user_id'=>array('IN',$userIdArr),'is_delete'=>1))->setInc('sys_notice');
- }else{
- M('Notice')->add(array('notice_content'=>$noticeContent,'notice_title'=>'系统消息','user_id'=>0,'operate_dt'=>time()));
- M('User')->where(array('is_delete'=>1))->setInc('sys_notice');
- }
- }else{
- M('Notice')->where(array('notice_id'=>$noticeId))->save(array('notice_content'=>$noticeContent));
- }
- $this->success('通知消息操作成功','/admin/notice/index');
- }
- }
-
- public function del(){
- $noticeId = I('notice_id','');
- if (empty($noticeId)){
- $this->error("通知消息ID错误",'/admin/notice/index');
- }
- //M('Notice')->where(array('notice_id'=>$noticeId))->save(array('is_delete'=>2));
- M('Notice')->where(array('notice_id'=>$noticeId))->delete();
- $this->success('通知消息删除成功','/admin/notice/index');
- }
- }
|