更新审核机制
This commit is contained in:
parent
c8fb615970
commit
8e861aa10a
|
@ -180,7 +180,7 @@ class FinanceExpense extends ApiController
|
||||||
}
|
}
|
||||||
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
||||||
if (empty($leader_id)) {
|
if (empty($leader_id)) {
|
||||||
$this->apiError('当前部门分管领导不存在');
|
$this->apiError('上一级部门分管领导不存在');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -208,7 +208,7 @@ class FinanceInvoice extends ApiController
|
||||||
}
|
}
|
||||||
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
||||||
if (empty($leader_id)) {
|
if (empty($leader_id)) {
|
||||||
$this->apiError('当前部门分管领导不存在');
|
$this->apiError('上一级部门分管领导不存在');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -182,7 +182,7 @@ class OaApprove extends ApiController
|
||||||
}
|
}
|
||||||
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
||||||
if (empty($leader_id)) {
|
if (empty($leader_id)) {
|
||||||
$this->apiError('当前部门分管领导不存在');
|
$this->apiError('上一级部门分管领导不存在');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -209,7 +209,7 @@ function get_department_son($did = 0, $is_self = 1)
|
||||||
return $department_array;
|
return $department_array;
|
||||||
}
|
}
|
||||||
|
|
||||||
//读取员工所在部门的负责人(pid=1,上一级负责人)
|
//读取员工所在部门的分管领导(pid=1,上一级负责人)
|
||||||
function get_department_leader($uid=0,$pid=0)
|
function get_department_leader($uid=0,$pid=0)
|
||||||
{
|
{
|
||||||
$did = get_admin($uid)['did'];
|
$did = get_admin($uid)['did'];
|
||||||
|
@ -228,6 +228,25 @@ function get_department_leader($uid=0,$pid=0)
|
||||||
return $leader;
|
return $leader;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//读取员工所在部门的负责人(pid=1,上一级负责人)
|
||||||
|
function get_department_manager($uid=0,$pid=0)
|
||||||
|
{
|
||||||
|
$did = get_admin($uid)['did'];
|
||||||
|
if($pid==0){
|
||||||
|
$manager = Db::name('Department')->where(['id' => $did])->value('manager_id');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$pdid = Db::name('Department')->where(['id' => $did])->value('pid');
|
||||||
|
if($pdid == 0){
|
||||||
|
$manager = 0;
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$manager = Db::name('Department')->where(['id' => $pdid])->value('manager_id');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return $manager;
|
||||||
|
}
|
||||||
|
|
||||||
//读取部门负责人所在部门的数据权限【包括员工所在部门+其子部门】
|
//读取部门负责人所在部门的数据权限【包括员工所在部门+其子部门】
|
||||||
function get_department_role($uid = 0)
|
function get_department_role($uid = 0)
|
||||||
{
|
{
|
||||||
|
@ -340,19 +359,39 @@ function set_flow($flow_id,$check_admin_ids,$uid)
|
||||||
if ($check_type == 1) {
|
if ($check_type == 1) {
|
||||||
if($flow[0]['flow_type'] == 1){
|
if($flow[0]['flow_type'] == 1){
|
||||||
//部门负责人
|
//部门负责人
|
||||||
|
$manager = get_department_manager($uid);
|
||||||
|
if($manager == 0){
|
||||||
|
return to_assign(1,'审批流程设置有问题:当前部门负责人还未设置,请联系HR或者管理员');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$check_admin_ids = $manager;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if($flow[0]['flow_type'] == 2){
|
||||||
|
//上级部门负责人
|
||||||
|
$manager = get_department_manager($uid,1);
|
||||||
|
if($manager == 0){
|
||||||
|
return to_assign(1,'审批流程设置有问题:上级部门负责人还未设置,请联系HR或者管理员');
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
$check_admin_ids = $manager;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else if($flow[0]['flow_type'] == 5){
|
||||||
|
//部门分管领导
|
||||||
$leader = get_department_leader($uid);
|
$leader = get_department_leader($uid);
|
||||||
if($leader == 0){
|
if($leader == 0){
|
||||||
return to_assign(1,'审批流程设置有问题:当前部门负责人还未设置,请联系HR或者管理员');
|
return to_assign(1,'审批流程设置有问题:部门分管领导还未设置,请联系HR或者管理员');
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$check_admin_ids = $leader;
|
$check_admin_ids = $leader;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if($flow[0]['flow_type'] == 2){
|
else if($flow[0]['flow_type'] == 6){
|
||||||
//上级部门负责人
|
//上级部门分管领导
|
||||||
$leader = get_department_leader($uid,1);
|
$leader = get_department_leader($uid,1);
|
||||||
if($leader == 0){
|
if($leader == 0){
|
||||||
return to_assign(1,'审批流程设置有问题:上级部门负责人还未设置,请联系HR或者管理员');
|
return to_assign(1,'审批流程设置有问题:上级部门分管领导还未设置,请联系HR或者管理员');
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$check_admin_ids = $leader;
|
$check_admin_ids = $leader;
|
||||||
|
@ -385,10 +424,18 @@ function get_flow($uid,$flows)
|
||||||
$check_user_ids = [];
|
$check_user_ids = [];
|
||||||
if($flows['flow_type']==1){
|
if($flows['flow_type']==1){
|
||||||
$check_user = '部门负责人-';
|
$check_user = '部门负责人-';
|
||||||
$check_user_ids[]=get_department_leader($uid);
|
$check_user_ids[]=get_department_manager($uid);
|
||||||
}
|
}
|
||||||
else if($flows['flow_type']==2){
|
else if($flows['flow_type']==2){
|
||||||
$check_user = '上级部门负责人-';
|
$check_user = '上级部门负责人-';
|
||||||
|
$check_user_ids[]=get_department_manager($uid,1);
|
||||||
|
}
|
||||||
|
else if($flows['flow_type']==5){
|
||||||
|
$check_user = '部门分管领导-';
|
||||||
|
$check_user_ids[]=get_department_leader($uid);
|
||||||
|
}
|
||||||
|
else if($flows['flow_type']==6){
|
||||||
|
$check_user = '上级部门分管领导-';
|
||||||
$check_user_ids[]=get_department_leader($uid,1);
|
$check_user_ids[]=get_department_leader($uid,1);
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
|
|
|
@ -187,7 +187,7 @@ class Expense extends BaseController
|
||||||
}
|
}
|
||||||
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
||||||
if (empty($leader_id)) {
|
if (empty($leader_id)) {
|
||||||
return to_assign(1,'当前部门分管领导不存在');
|
return to_assign(1,'上一级部门分管领导不存在');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -187,7 +187,7 @@ class Invoice extends BaseController
|
||||||
}
|
}
|
||||||
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
||||||
if (empty($leader_id)) {
|
if (empty($leader_id)) {
|
||||||
return to_assign(1,'当前部门分管领导不存在');
|
return to_assign(1,'上一级部门分管领导不存在');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -257,38 +257,30 @@ class Approve extends BaseController
|
||||||
foreach($flow as $item) {
|
foreach($flow as $item) {
|
||||||
// 当前部门负责人
|
// 当前部门负责人
|
||||||
if ($item['flow_type'] == 1) {
|
if ($item['flow_type'] == 1) {
|
||||||
$manager_id = Db::name('department')->where('id', $this->did)->value('manager_id');
|
$manager = get_department_manager($this->uid);
|
||||||
if (empty($manager_id)) {
|
if (empty($manager)) {
|
||||||
return to_assign(1,'当前部门负责人不存在');
|
return to_assign(1,'当前部门负责人不存在');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 上一级部门负责人
|
// 上级部门负责人
|
||||||
if ($item['flow_type'] == 2) {
|
if ($item['flow_type'] == 2) {
|
||||||
$pid = Db::name('department')->where('id', $this->did)->value('pid');
|
$manager = get_department_manager($this->uid, 1);
|
||||||
if (empty($pid)) {
|
if (empty($manager)) {
|
||||||
return to_assign(1,'上一级部门不存在');
|
return to_assign(1,'上级部门负责人不存在');
|
||||||
}
|
|
||||||
$manager_id = Db::name('department')->where('id', $pid)->value('manager_id');
|
|
||||||
if (empty($manager_id)) {
|
|
||||||
return to_assign(1,'上一级部门负责人不存在');
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 当前部门分管领导
|
// 当前部门分管领导
|
||||||
if ($item['flow_type'] == 5) {
|
if ($item['flow_type'] == 5) {
|
||||||
$leader_id = Db::name('department')->where('id', $this->did)->value('leader_id');
|
$leader = get_department_leader($this->uid);
|
||||||
if (empty($leader_id)) {
|
if (empty($leader)) {
|
||||||
return to_assign(1,'当前部门分管领导不存在');
|
return to_assign(1,'当前部门分管领导不存在');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 上一级部门分管领导
|
// 上级部门分管领导
|
||||||
if ($item['flow_type'] == 6) {
|
if ($item['flow_type'] == 6) {
|
||||||
$pid = Db::name('department')->where('id', $this->did)->value('pid');
|
$leader = get_department_leader($this->uid, 1);
|
||||||
if (empty($pid)) {
|
if (empty($leader)) {
|
||||||
return to_assign(1,'上一级部门不存在');
|
return to_assign(1,'上级部门分管领导不存在');
|
||||||
}
|
|
||||||
$leader_id = Db::name('department')->where('id', $pid)->value('leader_id');
|
|
||||||
if (empty($leader_id)) {
|
|
||||||
return to_assign(1,'当前部门分管领导不存在');
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -368,23 +360,23 @@ class Approve extends BaseController
|
||||||
if (!isset($param['check_admin_ids'])) {
|
if (!isset($param['check_admin_ids'])) {
|
||||||
if($flow[0]['flow_type'] == 1){
|
if($flow[0]['flow_type'] == 1){
|
||||||
// 部门负责人
|
// 部门负责人
|
||||||
$leader = get_department_leader($this->uid);
|
$manager = get_department_manager($this->uid);
|
||||||
if($leader == 0){
|
$param['check_admin_ids'] = $manager;
|
||||||
return to_assign(1,'当前部门负责人还未设置,请联系HR或者管理员');
|
|
||||||
}
|
|
||||||
else{
|
|
||||||
$param['check_admin_ids'] = $leader;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
else if($flow[0]['flow_type'] == 2){
|
else if($flow[0]['flow_type'] == 2){
|
||||||
// 上级部门负责人
|
// 上级部门负责人
|
||||||
$leader = get_department_leader($this->uid,1);
|
$manager = get_department_manager($this->uid, 1);
|
||||||
if($leader == 0){
|
$param['check_admin_ids'] = $manager;
|
||||||
return to_assign(1,'上级部门负责人还未设置,请联系HR或者管理员');
|
|
||||||
}
|
}
|
||||||
else{
|
else if($flow[0]['flow_type'] == 5){
|
||||||
|
// 部门分管领导
|
||||||
|
$leader = get_department_leader($this->uid);
|
||||||
$param['check_admin_ids'] = $leader;
|
$param['check_admin_ids'] = $leader;
|
||||||
}
|
}
|
||||||
|
else if($flow[0]['flow_type'] == 6){
|
||||||
|
// 上级部门分管领导
|
||||||
|
$leader = get_department_leader($this->uid, 1);
|
||||||
|
$param['check_admin_ids'] = $leader;
|
||||||
}
|
}
|
||||||
else{
|
else{
|
||||||
$param['check_admin_ids'] = $flow[0]['flow_uids'];
|
$param['check_admin_ids'] = $flow[0]['flow_uids'];
|
||||||
|
|
Loading…
Reference in New Issue