From 901602acf937174dc366a98edf31598c6f64fc20 Mon Sep 17 00:00:00 2001 From: yaooo <272523191@qq.com> Date: Sat, 18 Nov 2023 11:47:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=AE=A1=E6=A0=B8=E6=9C=BA?= =?UTF-8?q?=E5=88=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/contract/view/index/view_set.html | 6 ++++ app/home/controller/Flow.php | 5 ++-- app/home/view/flow/add.html | 22 ++++++++++---- app/oa/controller/Approve.php | 41 +++++++++++++++++++++++++++ app/oa/view/approve/add_flow.html | 6 ++++ app/user/controller/Department.php | 3 +- app/user/view/department/add.html | 15 ++++++++-- app/user/view/department/index.html | 3 +- 8 files changed, 88 insertions(+), 13 deletions(-) diff --git a/app/contract/view/index/view_set.html b/app/contract/view/index/view_set.html index cfa1c08..dfaa464 100644 --- a/app/contract/view/index/view_set.html +++ b/app/contract/view/index/view_set.html @@ -140,6 +140,12 @@ else if(flow_data[a].flow_type==2){ userList+= '
  • 上级部门负责人
  • '; } + else if(flow_data[a].flow_type==5){ + userList+= '
  • 当前部门分管领导
  • '; + } + else if(flow_data[a].flow_type==6){ + userList+= '
  • 上级部门分管领导
  • '; + } else{ if(flow_data[a].flow_type==3){ sign_type= ' 或签'; diff --git a/app/home/controller/Flow.php b/app/home/controller/Flow.php index fe6d584..fd46726 100644 --- a/app/home/controller/Flow.php +++ b/app/home/controller/Flow.php @@ -51,7 +51,8 @@ class Flow extends BaseController $param = get_params(); if (request()->isAjax()) { $param['flow_list'] = ''; - $flow_list=[]; + $flow_list=[]; + if($param['check_type']==1){ $flowTypeData = isset($param['flowType']) ? $param['flowType'] : ''; $flowUidsData = isset($param['flowUidsA']) ? $param['flowUidsA'] : ''; @@ -59,7 +60,7 @@ class Flow extends BaseController if (!$value) { continue; } - if($value>2 && $flowUidsData[$key]==''){ + if(($value==3 || $value==4) && $flowUidsData[$key]==''){ return to_assign(1, '第'.($key+1).'行的指定人未选择'); break; } diff --git a/app/home/view/flow/add.html b/app/home/view/flow/add.html index 1c769ed..8c99fe3 100644 --- a/app/home/view/flow/add.html +++ b/app/home/view/flow/add.html @@ -6,7 +6,7 @@ .layui-form-item{margin-bottom:5px;} .layui-form-item .layui-btn-danger{display:none; margin-top:-8px} .layui-form-item:hover .layui-btn-danger{display:inline-block;} -.select-1,.select-2{display:none;} +.select-1,.select-2,.select-5,.select-6{display:none;} {/block} @@ -69,7 +69,9 @@
    @@ -201,7 +203,9 @@
    @@ -226,7 +230,9 @@
    @@ -245,11 +251,13 @@ + 添加审批层级

    温馨提示

    -

    1、当选择 “当前部门负责人” 审批时。系统仅会通知当前部门的负责人。

    -

    2、当选择 “上一级部门负责人” 审批时。系统仅会通知当前部门的上一级部门的负责人。

    -

    3、当选择 “指定人员(多人或签)” 时,表示指定用户中任意一人审批即可,可单选或多选。

    -

    4、当选择 “指定人员(多人会签)” 时,表示指定人员中所有人都需要审批,可单选或多选。

    -

    5、如果指定用户没有分配查看审批模块的功能权限,系统会通知其审批,但是他无法查看此审批数据信息。

    +

    1、当选择 当前部门负责人 审批时。系统仅会通知当前部门的负责人。

    +

    2、当选择 当前部门分管领导 审批时。系统仅会通知当前部门的分管领导。

    +

    3、当选择 上一级部门负责人 审批时。系统仅会通知当前部门的上一级部门的负责人。

    +

    4、当选择 上一级部门分管领导 审批时。系统仅会通知当前部门的上一级部门的分管领导。

    +

    5、当选择 指定人员(多人或签) 时,表示指定用户中任意一人审批即可,可单选或多选。

    +

    6、当选择 指定人员(多人会签) 时,表示指定人员中所有人都需要审批,可单选或多选。

    +

    7、如果指定用户没有分配查看审批模块的功能权限,系统会通知其审批,但是他无法查看此审批数据信息。

    @@ -408,7 +416,9 @@
    \ \ diff --git a/app/oa/controller/Approve.php b/app/oa/controller/Approve.php index 2c60f09..683a6f5 100644 --- a/app/oa/controller/Approve.php +++ b/app/oa/controller/Approve.php @@ -253,6 +253,47 @@ class Approve extends BaseController } $flow_list = Db::name('Flow')->where('id',$param['flow_id'])->value('flow_list'); $flow = unserialize($flow_list); + + foreach($flow as $item) { + // 当前部门负责人 + if ($item['flow_type'] == 1) { + $manager_id = Db::name('department')->where('id', $this->did)->value('manager_id'); + if (empty($manager_id)) { + return to_assign(1,'当前部门负责人不存在'); + } + } + // 上一级部门负责人 + if ($item['flow_type'] == 2) { + $pid = Db::name('department')->where('id', $this->did)->value('pid'); + if (empty($pid)) { + 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) { + $leader_id = Db::name('department')->where('id', $this->did)->value('leader_id'); + if (empty($leader_id)) { + return to_assign(1,'当前部门分管领导不存在'); + } + } + // 上一级部门分管领导 + if ($item['flow_type'] == 6) { + $pid = Db::name('department')->where('id', $this->did)->value('pid'); + if (empty($pid)) { + return to_assign(1,'上一级部门不存在'); + } + $leader_id = Db::name('department')->where('id', $pid)->value('leader_id'); + if (empty($leader_id)) { + return to_assign(1,'当前部门分管领导不存在'); + } + } + + } + halt($flow, $this->uid, $this->did); if ($param['id'] > 0) { $param['update_time'] = time(); $param['check_status'] = 0; diff --git a/app/oa/view/approve/add_flow.html b/app/oa/view/approve/add_flow.html index ec76d89..6cb24c8 100644 --- a/app/oa/view/approve/add_flow.html +++ b/app/oa/view/approve/add_flow.html @@ -72,6 +72,12 @@ function flowStep(){ else if(flow_data[a].flow_type==2){ userList+= '
  • 上级部门负责人
  • '; } + else if(flow_data[a].flow_type==5){ + userList+= '
  • 当前部门分管领导
  • '; + } + else if(flow_data[a].flow_type==6){ + userList+= '
  • 上级部门分管领导
  • '; + } else{ if(flow_data[a].flow_type==3){ sign_type= ' 或签'; diff --git a/app/user/controller/Department.php b/app/user/controller/Department.php index 23910d4..f359004 100644 --- a/app/user/controller/Department.php +++ b/app/user/controller/Department.php @@ -21,9 +21,10 @@ class Department extends BaseController { if (request()->isAjax()) { $cate = Db::name('Department') - ->field('d.*,a.name as leader') + ->field('d.*,a.name as leader,b.name as manager') ->alias('d') ->join('Admin a', 'a.id = d.leader_id', 'LEFT') + ->join('Admin b', 'b.id = d.manager_id', 'LEFT') ->order('d.sort desc,d.id asc') ->select(); $list = generateTree($cate); diff --git a/app/user/view/department/add.html b/app/user/view/department/add.html index 44973ca..09c4ba9 100644 --- a/app/user/view/department/add.html +++ b/app/user/view/department/add.html @@ -18,7 +18,7 @@ {/volist} - + 排序* @@ -53,15 +53,24 @@ - 部门负责人 + 分管领导 + 部门负责人 + + + 部门联系电话 diff --git a/app/user/view/department/index.html b/app/user/view/department/index.html index 37f7c4f..8e0ad8b 100644 --- a/app/user/view/department/index.html +++ b/app/user/view/department/index.html @@ -38,7 +38,8 @@ , { field: 'pid', title: '上级部门ID',width: 120, align: 'center'} , { field: 'title', title: '部门名称'} , { field: 'sort', title: '排序',width: 80, align: 'center'} - , { field: 'leader', title: '部门负责人',width: 120, align: 'center'} + , { field: 'leader', title: '分管领导',width: 120, align: 'center'} + , { field: 'manager', title: '部门负责人',width: 120, align: 'center'} , { field: 'phone', title: '部门电话',width: 160,} , { width:180, title: '操作', align: 'center', templet: function (d) { var html = '';