"CounterSignSubtaskHandler", self::NEXT_ASSIGNER_MODIFY_TASK => "NextAssignerModifyTaskHandler", self::FH_TASK => "FhTaskHandler", self::B4_TASK => "B4TaskHandler", self::B7_TASK => "B7TaskHandler" ); public function update() { $where = "task_id = '" . $this->task_id . "'"; DB::update_table("workflow_task", array( "form_key" => $this->getFormKey(), "flow_code" => $this->getFlowCode(), "task_type" => $this->getTaskType(), "completion_condition" => $this->getCompletionCondition(), "state" => $this->getState(), "join_role" => $this->getJoinRole(), "role_type" => $this->getRoleType(), "necessary" => $this->getNecessary(), "creator" => $this->getCreator(), "error_info" => $this->getErrorInfo(), "create_code" => $this->getCreateCode(), "wf_condition" => $this->getWfCondition(), "remark" => $this->getRemark() ), $where); } public function delete() { DB::query("delete from workflow_task where task_id='" . $this->task_id . "' ", $db = 'default'); } function parseRole() { $function = "_roleIs" . $this->getRoleType(); if (!method_exists('NodeTask', $function)) { return self::processUndefined($function); } return $this->$function(); } /** * @return mixed */ public function getCreator() { return $this->creator; } /** * @param mixed $creator * @return NodeTask */ public function setCreator($creator) { $this->creator = $creator; return $this; } /** * @return mixed */ public function getCreateCode() { return $this->create_code; } /** * @param mixed $create_code * @return NodeTask */ public function setCreateCode($create_code) { $this->create_code = $create_code; return $this; } /** * @return mixed */ public function getWfCondition() { return $this->wf_condition; } /** * @param mixed $condition * @return NodeTask */ public function setWfCondition($condition) { $this->wf_condition = $condition; return $this; } private function _roleIsString() { #以下为专人 $strAssign = $this->getJoinRole(); $assignEmps = array(); $arr_a = explode('|', $strAssign); foreach ($arr_a as $key => $value) { if (empty($value)) { continue; } $arr_b = explode(':', $value); $val = explode('-', $arr_b[0]); $arr_c = explode(',', $arr_b[1]); $str_next_user = ""; foreach ($arr_c as $key => $value) { if (empty($value)) { continue; } if ($value == '00000') { $str_next_user .= '00000' . '-' . "00000,"; } else { $str_next_user .= AssignerStringParser::process($value); } } array_push($assignEmps, array( 'assign_status' => $val[0], //assign_status 'assigner_string' => $str_next_user )); } return $assignEmps; } private function _roleIsSQL() { return DB::result($this->getJoinRole()); } /** * @return mixed */ public function getTaskId() { return $this->task_id; } /** * @param mixed $task_id * @return NodeTask */ public function setTaskId($task_id) { $this->task_id = $task_id; return $this; } /** * @return mixed */ public function getTaskType() { return $this->task_type; } /** * @param mixed $task_type * @return NodeTask */ public function setTaskType($task_type) { $this->task_type = $task_type; return $this; } /** * @return mixed */ public function getFlowCode() { return $this->flow_code; } /** * @param mixed $flow_code * @return NodeTask */ public function setFlowCode($flow_code) { $this->flow_code = $flow_code; return $this; } /** * @return mixed */ public function getFormKey() { return $this->form_key; } /** * @param mixed $form_key * @return NodeTask */ public function setFormKey($form_key) { $this->form_key = $form_key; return $this; } /** * @return mixed */ public function getNecessary() { return $this->necessary; } /** * @param mixed $necessary * @return NodeTask */ public function setNecessary($necessary) { $this->necessary = $necessary; return $this; } /** * @return mixed */ public function getCompletionCondition() { return $this->completion_condition; } /** * @param mixed $completion_condition * @return NodeTask */ public function setCompletionCondition($completion_condition) { $this->completion_condition = $completion_condition; return $this; } /** * @return mixed */ public function getState() { return $this->state; } /** * @param mixed $state * @return NodeTask */ public function setState($state) { $this->state = $state; return $this; } /** * @return mixed */ public function getJoinRole() { return $this->join_role; } /** * @param mixed $join_role * @return NodeTask */ public function setJoinRole($join_role) { $this->join_role = $join_role; return $this; } /** * @return mixed */ public function getErrorInfo() { return $this->error_info; } /** * @param mixed $error_info * @return NodeTask */ public function setErrorInfo($error_info) { $this->error_info = $error_info; return $this; } /** * @return mixed */ public function getRemark() { return $this->remark; } /** * @param mixed $remark * @return NodeTask */ public function setRemark($remark) { $this->remark = $remark; return $this; } /** * @return mixed */ public function getCreateDate() { return $this->create_date; } /** * @param mixed $create_date * @return NodeTask */ public function setCreateDate($create_date) { $this->create_date = $create_date; return $this; } /** * @return mixed */ public function getFinishDate() { return $this->finish_date; } /** * @param mixed $finish_date * @return NodeTask */ public function setFinishDate($finish_date) { $this->finish_date = $finish_date; return $this; } /** * @return mixed */ public function getPhase() { return $this->phase; } /** * @param mixed $phase * @return NodeTask */ public function setPhase($phase) { $this->phase = $phase; return $this; } /** * @return mixed */ public function getRoleType() { return $this->role_type; } /** * @param mixed $role_type * @return NodeTask */ public function setRoleType($role_type) { $this->role_type = $role_type; return $this; } }