getPage(); $type = get_config('approve.type'); $query = Db::name('Flow'); $list = $query->field('f.*,a.name as username,t.title as flow_cate') ->alias('f') ->join('Admin a', 'a.id = f.admin_id', 'left') ->join('FlowType t', 't.id = f.flow_cate', 'left') ->page($page, $limit)->select()->toArray(); $count = $query->count(); foreach ($list as $key => &$value) { $department = Db::name('Department')->where('id', 'in', $value['department_ids'])->column('title'); $value['department'] = implode(',', $department); if ($value['department'] == '') { $value['department'] = '全公司'; } foreach ($type as $k => $val) { if ($value['type'] == $val['id']) { $value['type_name'] = $val['title']; } } } return $this->success('success', ['count' => $count, 'data' => $list]); } //添加新增/编辑 public function create() { $param = get_params(); $param['flow_list'] = ''; $flow_list = []; if ($param['check_type'] == 1) { $flowTypeData = isset($param['flowType']) ? $param['flowType'] : ''; $flowUidsData = isset($param['flowUidsA']) ? $param['flowUidsA'] : ''; foreach ($flowTypeData as $key => $value) { if (!$value) { continue; } if ($value > 2 && $flowUidsData[$key] == '') { return $this->fail('第' . ($key + 1) . '行的指定人未选择'); } $item = []; $item['flow_type'] = $value; $item['flow_uids'] = $flowUidsData[$key]; $flow_list[] = $item; } $param['flow_list'] = serialize($flow_list); } if ($param['check_type'] == 3) { $flowNameData = isset($param['flowName']) ? $param['flowName'] : ''; $flowUidsData = isset($param['flowUidsB']) ? $param['flowUidsB'] : ''; foreach ($flowNameData as $key => $value) { if (!$value) { continue; } if ($flowUidsData[$key] == '') { return $this->fail('第' . ($key + 1) . '行的指定人未选择'); } $item = []; $item['flow_name'] = $value; $item['flow_type'] = 5; $item['flow_uids'] = $flowUidsData[$key]; $flow_list[] = $item; } if (empty($flow_list)) { return $this->fail('审批流程信息未完善'); } $param['flow_list'] = serialize($flow_list); } if ($param['id'] > 0) { $param['update_time'] = time(); Db::name('Flow')->strict(false)->field(true)->update($param); } else { $param['admin_id'] = $this->adminId; $param['create_time'] = time(); $mid = Db::name('Flow')->strict(false)->field(true)->insertGetId($param); } return $this->success('保存成功', [], 1, 1); } //禁用/启用 public function status() { $param = get_params(); $param['update_time'] = time(); $res = Db::name('Flow')->where('id', $param['id'])->strict(false)->field('status,update_time')->update($param); if ($res !== false) { return $this->success('保存成功', [], 1, 1); } else { return $this->fail('操作失败'); } } }