public function getLocalNextAction() { $nextActions = JOB_STATUS::getNextAction(Utility::getCurrentUserID(), $this); $cancelActions = array(); foreach ($nextActions as $orderAction) { $strOfOrderStatus = JOB_STATUS::getStrOfStatus($orderAction); $strOfOrderStatus['nextaction'] = $strOfOrderStatus['status']; unset($strOfOrderStatus['status']); unset($strOfOrderStatus['statusStr']); unset($strOfOrderStatus['statusDescription']); if ($orderAction == JOB_STATUS::DRAFT) { $cancelActions[] = $strOfOrderStatus; } else { $nextActions[] = $strOfOrderStatus; } } return array('cancelActions' => $cancelActions, 'nextActions' => $nextActions); }
public static function actionUpdate() { $currentUser = Utility::getCurrentUserModel(); $p_id = W2HttpRequest::getRequestInt('id', null, false, false); $tmpModel = JobHandler::loadModelById($p_id); switch ($auth = static::getAuthIfUserCanDoIt(Utility::getCurrentUserID(), 'update', $tmpModel)) { case 'admin': //有管理权限 // $tmpModel -> setUserID(W2HttpRequest::getRequestInt('userid')); $tmpModel->setStatus(W2HttpRequest::getRequestInt('status')); $nextAction = W2HttpRequest::getRequestInt('nextaction'); if (!is_null($nextAction)) { if (JOB_STATUS::isNextActionCanDo(Utility::getCurrentUserID(), $tmpModel, $nextAction)) { switch ($nextAction) { default: # code... break; } $tmpModel->setJobStatus($nextAction); } else { return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '错误的操作事件,不可使用该功能,请刷新订单后重试。'); } } // $tmpModel -> setCreateTime(W2HttpRequest::getRequestDateTime('createtime')); // $tmpModel -> setModifyTime(W2HttpRequest::getRequestDateTime('modifytime')); // $tmpModel -> setCreateTime(W2HttpRequest::getRequestDateTime('createtime')); // $tmpModel -> setModifyTime(W2HttpRequest::getRequestDateTime('modifytime')); case 'self': //作者 if ($auth == 'self' && $tmpModel->getJobStatus() >= JOB_STATUS::WAITJOIN) { return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '已发布成功的任务,不可以编辑哦。'); break; } // $tmpModel -> setBossGenre(W2HttpRequest::getRequestInt('bossgenre')); // $tmpModel -> setJobType(W2HttpRequest::getRequestInt('jobtype')); // $tmpModel -> setTagID(W2HttpRequest::getRequestInt('tagid')); $tmpModel->setJobStartDate(W2HttpRequest::getRequestDate('jobstartdate')); $tmpModel->setJobEndDate(W2HttpRequest::getRequestDate('jobenddate')); $tmpModel->setJobAreaID(W2HttpRequest::getRequestInt('jobareaid')); $tmpModel->setAddress(W2HttpRequest::getRequestString('address')); $tmpModel->setLng(W2HttpRequest::getRequestFloat('lng')); $tmpModel->setLat(W2HttpRequest::getRequestFloat('lat')); // $tmpModel -> setJobberCount(W2HttpRequest::getRequestInt('jobbercount')); $tmpModel->setMoney(W2HttpRequest::getRequestFloat('money')); // $tmpModel -> setAdvanceMoney(W2HttpRequest::getRequestFloat('advancemoney')); // $tmpModel -> setAdvanceType(W2HttpRequest::getRequestInt('advancetype')); // $tmpModel -> setAdvanceTime(W2HttpRequest::getRequestDateTime('advancetime')); // $tmpModel -> setPayType(W2HttpRequest::getRequestInt('paytype')); // $tmpModel -> setPayDay(W2HttpRequest::getRequestInt('payday')); $tmpModel->setDescription(W2HttpRequest::getRequestString('description')); $tmpModel->setFeedbackType(W2HttpRequest::getRequestInt('feedbacktype')); $tmpModel->setFeedbackRate(W2HttpRequest::getRequestInt('feedbackrate')); $tmpModel->setSchoolIDs(W2HttpRequest::getRequestString('schoolids')); $tmpModel->setProfessionalIDs(W2HttpRequest::getRequestString('professionalids')); $tmpModel->setDegreeTypes(W2HttpRequest::getRequestString('degreetypes')); if ($currentUser->isAuthedCompany()) { $tmpModel->setJobStatus(JOB_STATUS::WAITJOIN); //直接发布,招募中 } else { $tmpModel->setJobStatus(JOB_STATUS::PENDING); //待审中 } break; case 'normal': //正常用户 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您没有权限执行该操作'); break; case 'draft': //未激活 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '该账号未激活,不可使用该功能。'); break; case 'pending': //待审禁言 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '该账号被禁言,不可使用该功能。'); break; case 'disabled': //封号 return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '该账号不可用,不可使用该功能。'); break; case 'visitor': return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您需要登录后才可以执行该操作'); break; case 'empty': return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NOT_MODEL, '不存在对应数据'); break; default: return Utility::getArrayForResults(RUNTIME_CODE_ERROR_NO_AUTH, '您没有权限执行该操作'); break; } return static::save($tmpModel); }