|
@@ -0,0 +1,156 @@
|
|
|
+<?php
|
|
|
+
|
|
|
+namespace app\admin\service\role;
|
|
|
+
|
|
|
+use app\model\SysRole;
|
|
|
+use support\Db;
|
|
|
+
|
|
|
+class RoleService
|
|
|
+{
|
|
|
+ /**
|
|
|
+ * @Desc 角色列表
|
|
|
+ * @Author Gorden
|
|
|
+ * @Date 2024/2/20 16:29
|
|
|
+ *
|
|
|
+ * @param $page
|
|
|
+ * @param $limit
|
|
|
+ * @param $keyword
|
|
|
+ * @return \support\Response
|
|
|
+ */
|
|
|
+ public static function roleList($page, $limit, $keyword)
|
|
|
+ {
|
|
|
+ $list = SysRole::select('*')
|
|
|
+ ->when($keyword != '', function ($query) use ($keyword) {
|
|
|
+ $query->where('role_name', 'like', '%' . $keyword . '%');
|
|
|
+ })
|
|
|
+ ->orderBy('role_addtimes', 'DESC')
|
|
|
+ ->forPage($page, $limit)
|
|
|
+ ->get()
|
|
|
+ ->toArray();
|
|
|
+ $count = SysRole::when($keyword != '', function ($query) use ($keyword) {
|
|
|
+ $query->where('role_name', 'like', '%' . $keyword . '%');
|
|
|
+ })->count();
|
|
|
+
|
|
|
+ return json_success('', compact('list', 'page', 'limit', 'count'));
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @Desc 角色详情
|
|
|
+ * @Author Gorden
|
|
|
+ * @Date 2024/2/20 16:37
|
|
|
+ *
|
|
|
+ * @param $id
|
|
|
+ * @return \support\Response
|
|
|
+ */
|
|
|
+ public static function roleInfo($id)
|
|
|
+ {
|
|
|
+ $role = SysRole::find($id);
|
|
|
+ if (!$role) {
|
|
|
+ return json_fail('角色不存在');
|
|
|
+ }
|
|
|
+
|
|
|
+ $role = $role->toArray();
|
|
|
+ return json_success('', $role);
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @Desc 添加角色
|
|
|
+ * @Author Gorden
|
|
|
+ * @Date 2024/2/20 16:02
|
|
|
+ *
|
|
|
+ * @param $params
|
|
|
+ * @return \support\Response
|
|
|
+ */
|
|
|
+ public static function insertRole($params)
|
|
|
+ {
|
|
|
+ try {
|
|
|
+ $data = [
|
|
|
+ 'role_status' => $params['role_status'],
|
|
|
+ 'role_category' => $params['role_category'],
|
|
|
+ 'role_name' => $params['role_name'],
|
|
|
+ 'role_remark' => $params['role_remark'] ? format_string($params['role_remark']) : null,
|
|
|
+ 'role_extend_json' => $params['role_extend_json'] ?? null,
|
|
|
+ 'role_addtimes' => time()
|
|
|
+ ];
|
|
|
+
|
|
|
+ // 入库
|
|
|
+ SysRole::insert($data);
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ return json_fail('角色添加失败');
|
|
|
+ }
|
|
|
+
|
|
|
+ return json_success('角色添加成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @Desc 修改角色
|
|
|
+ * @Author Gorden
|
|
|
+ * @Date 2024/2/20 16:02
|
|
|
+ *
|
|
|
+ * @param $id
|
|
|
+ * @param $params
|
|
|
+ * @return \support\Response
|
|
|
+ */
|
|
|
+ public static function updateRole($id, $params)
|
|
|
+ {
|
|
|
+ $role = SysRole::find($id);
|
|
|
+ if (!$role) {
|
|
|
+ return json_fail('角色不存在');
|
|
|
+ }
|
|
|
+
|
|
|
+ try {
|
|
|
+ $data = [
|
|
|
+ 'role_status' => $params['role_status'],
|
|
|
+ 'role_category' => $params['role_category'],
|
|
|
+ 'role_name' => $params['role_name'],
|
|
|
+ 'role_remark' => $params['role_remark'] ? format_string($params['role_remark']) : null,
|
|
|
+ 'role_extend_json' => $params['role_extend_json'],
|
|
|
+ ];
|
|
|
+ SysRole::where('role_id', $id)->update($data);
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ dd($e->getMessage());
|
|
|
+ return json_fail('角色修改失败');
|
|
|
+ }
|
|
|
+
|
|
|
+ return json_success('角色修改成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @Desc 删除角色
|
|
|
+ * @Author Gorden
|
|
|
+ * @Date 2024/2/20 16:40
|
|
|
+ *
|
|
|
+ * @param $id
|
|
|
+ * @return \support\Response
|
|
|
+ */
|
|
|
+ public static function delRole($id)
|
|
|
+ {
|
|
|
+ try {
|
|
|
+ SysRole::where('role_id', $id)->delete();
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ return json_fail('角色删除失败');
|
|
|
+ }
|
|
|
+ return json_success('角色删除成功');
|
|
|
+ }
|
|
|
+
|
|
|
+ /**
|
|
|
+ * @Desc 修改角色状态
|
|
|
+ * @Author Gorden
|
|
|
+ * @Date 2024/2/20 16:50
|
|
|
+ *
|
|
|
+ * @param $id
|
|
|
+ * @param $roleStatus
|
|
|
+ * @return \support\Response
|
|
|
+ */
|
|
|
+ public static function updateStatus($id, $roleStatus)
|
|
|
+ {
|
|
|
+ try {
|
|
|
+ SysRole::where('role_id', $id)->update(['role_status' => $roleStatus]);
|
|
|
+ } catch (\Exception $e) {
|
|
|
+ dd($e->getMessage());
|
|
|
+ return json_fail('角色状态修改失败');
|
|
|
+ }
|
|
|
+
|
|
|
+ return json_success('角色状态修改成功');
|
|
|
+ }
|
|
|
+}
|