diff --git a/app/adminapi/controller/CateController.php b/app/adminapi/controller/CateController.php index 9a65c557a..66a37cbb8 100644 --- a/app/adminapi/controller/CateController.php +++ b/app/adminapi/controller/CateController.php @@ -9,24 +9,14 @@ declare (strict_types=1); namespace app\adminapi\controller; -use app\admin\BaseController; -use app\admin\validate\FlowTypeCheck; -use app\admin\validate\ExpenseCateCheck; -use app\admin\validate\CostCateCheck; -use app\admin\validate\IndustryCheck; -use app\admin\validate\ServicesCheck; -use app\admin\validate\WorkCateCheck; -use app\admin\validate\InvoiceSubjectCheck; use think\exception\ValidateException; use think\facade\Db; -use think\facade\View; -use function app\admin\controller\add_log; class CateController extends BaseAdminController { //审批类型 - public function flow_type() + public function index() { $cate = Db::name('FlowType')->order('id asc')->select()->toArray(); $type = get_config('approve.type'); @@ -42,21 +32,21 @@ class CateController extends BaseAdminController $value['department'] = implode(',', $department); } } - return to_assign(0, '', $cate); + return $this->success('success', $cate); } //审批类型添加 - public function flow_type_add() + public function create() { $param = get_params(); if (!empty($param['id']) && $param['id'] > 0) { $data['update_time'] = time(); $res = Db::name('FlowType')->strict(false)->field(true)->update($param); - return to_assign(); + return $this->success('修改成功', [], 1, 1); } else { $param['create_time'] = time(); $insertId = Db::name('FlowType')->strict(false)->field(true)->insertGetId($param); - return to_assign(); + return $this->success('添加成功', [], 1, 1); } } diff --git a/app/adminapi/controller/FlowController.php b/app/adminapi/controller/FlowController.php new file mode 100644 index 000000000..0ae4d0fa2 --- /dev/null +++ b/app/adminapi/controller/FlowController.php @@ -0,0 +1,103 @@ +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') + ->select()->toArray(); + 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', $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->success('操作失败', [], 1, 1); + } + } +}