コード例 #1
0
ファイル: SearchASync.php プロジェクト: fu-tao/meelier_c
 private function syncActivity($id)
 {
     $info = Activity::findFirst('activity_id = ' . $id);
     if (!$info) {
         return false;
     }
     // 删除数据
     if ($info->activity_state <= 0) {
         $this->delete(SearchDataType::Activity, $info->activity_id);
         return true;
     }
     // 同步数据
     $title = $info->activity_title;
     $searchContent = \Apps\Common\Libs\BeautyParlor::formatServiceIntro($info->activity_intro, $this->getDI());
     $tagInt = $info->city_id;
     $tagStr = strval($info->activity_type);
     $showData = json_encode(['id' => $info->activity_id, 'type' => $info->activity_type, 'title' => $info->activity_title, 'cover' => $info->activity_cover, 'state' => $info->activity_state]);
     $this->save(SearchDataType::Activity, $id, $showData, $title, $searchContent, $tagInt, $tagStr);
     return true;
 }
コード例 #2
0
 /**
  * 发布/结束活动
  * @date: 2016年1月5日 
  * @author: chenxiaolin
  */
 public function setStateAction()
 {
     $req = $this->request;
     if (!$req->isPost()) {
         $id = intval($req->getQuery('id', null, 0));
         $state = intval($req->getQuery('state'));
         $this->view->setVar('id', $id);
         $this->view->setVar('state', $state);
         $this->view->setVar("action", '/activity/setState');
         return;
     }
     if ($req->isPost()) {
         $response = new ResponseResult();
         $response->callback = $req->getPost('callback', null, 'parent.setFormResult');
         $response->callbackJavascriptTag = true;
         $id = intval($req->getPost('id', null, 0));
         $state = intval($req->getPost('state', null, -10000));
         $activity_start_time = $req->getPost('activity_start_time');
         $activity_end_time = $req->getPost('activity_end_time');
         //发布时:开始时间不能>=结束时间
         if ($state == 1 && $activity_start_time >= $activity_end_time) {
             $response->sendError(ResponseResultStatus::PARAM_CANNOT_EMPTY, '开始时间不能大于等于结束时间!');
             return $response;
         }
         if (!in_array($state, [0, 1, 2])) {
             return $response->sendError(ResponseResultStatus::PARAM_CANNOT_EMPTY, '请求异常');
         }
         $info = Activity::findFirst('activity_id = ' . $id);
         //活动存在
         if ($info) {
             if ($state == 1) {
                 //发布活动:修改活动的开始时间,结束时间,状态等信息
                 $info->update(['activity_state' => $state, 'activity_update_time' => date('Y-m-d H:i:s'), 'activity_start_time' => $activity_start_time, 'activity_end_time' => $activity_end_time]);
                 SearchASync::Instance()->noticeSync($id, SearchDataType::Activity);
                 return $response->sendResult('ok');
             } else {
                 //结束活动
                 $info->update(['activity_state' => $state, 'activity_update_time' => date('Y-m-d H:i:s')]);
                 SearchASync::Instance()->noticeSync($id, SearchDataType::Activity);
                 return (new ResponseResult())->sendResult('ok');
                 /* $arr=[
                        'status'=>10000
                    ];
                    echo json_encode($arr);
                    exit; */
             }
         }
     } else {
         return $response->sendError(ResponseResultStatus::PARAM_CANNOT_EMPTY, '请求异常');
     }
 }
コード例 #3
0
 /**
  * 设置状态
  * 
  * @return $this|ResponseResult
  */
 public function setStateAction()
 {
     $req = $this->request;
     if ($req->isPost()) {
         $id = intval($req->getPost('id', null, 0));
         $state = intval($req->getPost('state', null, -10000));
         if (!in_array($state, [-1, 0, 1, 2])) {
             return (new ResponseResult())->sendError(ResponseResultStatus::PARAM_CANNOT_EMPTY, '请求异常');
         }
         $info = Activity::findFirst('activity_id = ' . $id);
         /* if ($info) {
         				$info->update ( [ 
         						'activity_state' => $state 
         				] );
         			} */
         $end_time = strtotime($info->activity_end_time);
         //活动结束时间
         $current_time = time();
         //当前时间
         $numTime = $end_time - $current_time;
         //活动结束的时候,将活动结束时间设置为当前时间
         if ($info) {
             //判断活动结束时间是否大于当前时间:大于-->活动结束时间设置为当前时间;小于:--> 活动已结束
             if ($state == 2 && $numTime > 0) {
                 $info->update(['activity_state' => $state, 'activity_end_time' => date('Y-m-d H:i:s')]);
             } else {
                 $info->update(['activity_state' => $state]);
             }
         }
         SearchASync::Instance()->noticeSync($id, SearchDataType::Activity);
         return (new ResponseResult())->sendResult('ok');
     } else {
         return (new ResponseResult())->sendError(ResponseResultStatus::PARAM_CANNOT_EMPTY, '请求异常');
     }
 }