import {
  account_service_user_page_post, //用户分页
  account_service_role_page_post, //角色分页
  account_service_user_save_post, //保存
  account_service_user_delete_id_delete, //保存
  account_service_role_save_post, //添加角色
  account_service_role_delete_id_delete,
  account_service_group_page_post, //部门分页
  account_service_group_save_post,
  account_service_group_delete_id_delete,
} from '@/sdk/api/account';

import // device_service_area_tree_get, // 树区域列表
// device_service_area_patch, // 新增或更新
// device_service_area_id_get, // 根据id查询
// device_service_area_id_delete, // 删除
'@/sdk/api/device';

import { autoCreateEffects } from '@/utils/handleModels';
export default {
  namespace: 'setting',

  state: {
    users: [],
    roleList: [],
    roles: [],
    group: [],
    areaTree: [],
    areaDetail: {},
    modalAreaId: null,
  },
  effects: {
    ...autoCreateEffects([
      {
        type: 'account_service_user_page_post',
        api: account_service_user_page_post,
        handle: 'content',
        key: 'users',
      }, // 用户分页
      {
        type: 'account_service_group_page_post',
        api: account_service_group_page_post,
        handle: 'content',
        key: 'group',
      }, // 用户分页
      {
        type: 'account_service_role_page_post',
        api: account_service_role_page_post,
        handle: 'content',
        key: 'roles',
      }, // 角色分页
      {
        type: 'account_service_role_page',
        api: account_service_role_page_post,
        key: 'roleList',
      }, //角色
      {
        type: 'account_service_user_save_post',
        api: account_service_user_save_post,
      }, // 角色添加
      {
        type: 'account_service_user_delete_id_delete',
        api: account_service_user_delete_id_delete,
      }, //用户删除
      {
        type: 'account_service_role_save_post',
        api: account_service_role_save_post,
      },
      {
        type: 'account_service_role_delete_id_delete',
        api: account_service_role_delete_id_delete,
      }, //角色删除
      {
        type: 'account_service_group_save_post',
        api: account_service_group_save_post,
      },
      {
        type: 'account_service_group_delete_id_delete',
        api: account_service_group_delete_id_delete,
      }, //角色删除

      // {
      //   type: 'device_service_area_tree_get',
      //   api: device_service_area_tree_get,
      //   key: 'areaTree',
      // }, // 树区域列表
      // {
      //   type: 'device_service_area_id_get',
      //   api: device_service_area_id_get,
      //   key: 'areaDetail',
      // },// 区域 根据id查询
      // {
      //   type: 'device_service_area_patch',
      //   api: device_service_area_patch,
      // },// 区域修改
      // {
      //   type: 'device_service_area_id_delete',
      //   api: device_service_area_id_delete,
      // },// 区域删除
    ]),
  },

  reducers: {
    setModelsState(state, action) {
      return {
        ...state,
        ...action.payload,
      };
    },
  },
};