You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

78 lines
2.2 KiB

<?php
class EndNode extends CommonFlowNode
{
function __construct($param)
{
parent::__construct($param);
}
public function getBackOption()
{
return null;
}
public function getAssignerList()
{
$strNextUser = "00000-结案,";
$assignerList = array();
array_push($assignerList, array(
"F4", //assign_status
$strNextUser
));
return $assignerList;
}
public function getAssignStatus()
{
//B4-退回:73376,73502,73396|A4-待评估:73376,73502|
$html = "'<option value='00000' >请选择</option>'";
return $html;
}
/**
* 检查是否满足流转下一关条件
* @param $assignClass
* @param $leadCode
* @return bool
*/
function checkTrust($assignClass, $leadCode)
{
$_flag = false;
switch ($assignClass) {
case 'A': //无需审核
$_flag = true;
break;
case 'B': //审核至科长
$_flag = (in_array($leadCode, array('50', '20', '19', '18', '17', '16', '12', '10')) ? true : false);
break;
case 'C': //审核至经理
$_flag = in_array($leadCode, array('20', '19', '18', '17', '16', '12', '10')) ? true : false;
break;
case 'D': //审核至 协理/厂长/总监
$_flag = in_array($leadCode, array('19', '18', '17', '16', '12', '10')) ? true : false;
break;
case 'E': //审核至副总
$_flag = in_array($leadCode, array('12', '10')) ? true : false;
break;
case 'F': //审核至总经理
$_flag = substr($leadCode, 0, 2) == '10' ? true : false;
break;
case 'X':
$method = MethodLoader::getInstanceByMethodString(strip_tags($this->getAssignClassMethod()));
$_assignClass = $method->invokeMethod($this->getFlow(), $this->getFormData());
$_flag = $this->checkTrust($_assignClass, $leadCode);
break;
default:
$_flag = false;
break;
}
return $_flag;
}
}