From 470fa1fe0ba642d646255d3e96e95257b0454fbc Mon Sep 17 00:00:00 2001 From: hdm Date: Wed, 15 Feb 2023 23:38:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=A1=E6=89=B9=E6=96=B0=E5=A2=9E=E6=8C=89?= =?UTF-8?q?=E6=97=A5=E6=9C=9F=E3=80=81=E7=94=B3=E8=AF=B7=E4=BA=BA=E3=80=81?= =?UTF-8?q?=E5=AE=A1=E6=89=B9=E7=B1=BB=E5=9E=8B=E6=9F=A5=E8=AF=A2?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/oa/controller/Approve.php | 41 ++++++++++++++++++-- app/oa/view/approve/copy.html | 60 ++++++++++++++++++++++++++++-- app/oa/view/approve/list.html | 70 +++++++++++++++++++++++++++++++---- 3 files changed, 156 insertions(+), 15 deletions(-) diff --git a/app/oa/controller/Approve.php b/app/oa/controller/Approve.php index f198493..c10b528 100644 --- a/app/oa/controller/Approve.php +++ b/app/oa/controller/Approve.php @@ -84,8 +84,24 @@ class Approve extends BaseController //查询条件 $map1 = []; $map2 = []; - $map1[] = ['', 'exp', Db::raw("FIND_IN_SET('{$user_id}',check_admin_ids)")]; - $map2[] = ['', 'exp', Db::raw("FIND_IN_SET('{$user_id}',flow_admin_ids)")]; + $map1[] = ['', 'exp', Db::raw("FIND_IN_SET('{$user_id}',f.check_admin_ids)")]; + $map2[] = ['', 'exp', Db::raw("FIND_IN_SET('{$user_id}',f.flow_admin_ids)")]; + + if (!empty($param['type'])) { + $map1[] = ['f.type', '=', $param['type']]; + $map2[] = ['f.type', '=', $param['type']]; + } + if (!empty($param['uid'])) { + $map1[] = ['f.admin_id', '=', $param['uid']]; + $map2[] = ['f.admin_id', '=', $param['uid']]; + } + //按时间检索 + $start_time = isset($param['start_time']) ? strtotime($param['start_time']) : 0; + $end_time = isset($param['end_time']) ? strtotime($param['end_time']) : 0; + if ($start_time > 0 && $end_time > 0) { + $map1[] = ['f.create_time', 'between', [$start_time, $end_time]]; + $map2[] = ['f.create_time', 'between', [$start_time, $end_time]]; + } $rows = empty($param['limit']) ? get_config('app.page_size') : $param['limit']; @@ -155,6 +171,8 @@ class Approve extends BaseController } return table_assign(0, '', $list); } else { + $type = Db::name('FlowType')->whereOr('status',1)->select()->toArray(); + View::assign('type', $type); return view(); } } @@ -166,8 +184,21 @@ class Approve extends BaseController $user_id = $this->uid; //查询条件 $map = []; - $map[] = ['check_status', '=', 2]; - $map[] = ['', 'exp', Db::raw("FIND_IN_SET('{$user_id}',copy_uids)")]; + $map[] = ['f.check_status', '=', 2]; + $map[] = ['', 'exp', Db::raw("FIND_IN_SET('{$user_id}',f.copy_uids)")]; + if (!empty($param['type'])) { + $map[] = ['f.type', '=', $param['type']]; + } + if (!empty($param['uid'])) { + $map[] = ['f.admin_id', '=', $param['uid']]; + } + //按时间检索 + $start_time = isset($param['start_time']) ? strtotime($param['start_time']) : 0; + $end_time = isset($param['end_time']) ? strtotime($param['end_time']) : 0; + if ($start_time > 0 && $end_time > 0) { + $map[] = ['f.create_time', 'between', [$start_time, $end_time]]; + } + $rows = empty($param['limit']) ? get_config('app.page_size') : $param['limit']; $list = Db::name('Approve') ->field('f.*,a.name,d.title as department_name,t.title as flow_type') @@ -190,6 +221,8 @@ class Approve extends BaseController }); return table_assign(0, '', $list); } else { + $type = Db::name('FlowType')->whereOr('status',1)->select()->toArray(); + View::assign('type', $type); return view(); } } diff --git a/app/oa/view/approve/copy.html b/app/oa/view/approve/copy.html index a2641ad..cb88d1c 100644 --- a/app/oa/view/approve/copy.html +++ b/app/oa/view/approve/copy.html @@ -1,7 +1,32 @@ {extend name="../../base/view/common/base" /} {block name="body"} -
+
+
+
+ +
+
+ + +
+
+
+ +
+ ~ +
+ +
+
+ + +