/**
 * Created by HaijunZhang on 2019/7/23.
 */
import request from 'utils/request'
import { wrapperParams } from 'utils'

export function login(params) {
  return request.post('/sms/v1/users/login', params)
}
export function getTokenInfo(params) {
  return request.post('/sms/v1/sso/token/info', params)
}
export function getToken() {
  return request.post('/sms/v1/sso/check')
}
export function getUserInfo() {
  return request.get('/sms/v1/login/detail')
}
export function logout() {
  return request.post('/sms/v1/users/logout')
}
export function getConfig(params) {
  return request.get('/sms/v1/logo', {
    params: wrapperParams(params)
  })
}
export function getDict(data) {
  return request.get('/dict/children', {
    params: wrapperParams(data)
  })
}
export function getDictChildren(params) {
  return request.get('/sms/v1/dictionaries/children', { params })
}

export function getSysconf() {
  return request.get('/sms/v1/configs')
}
export function getSysconfCode(params) {
  return request.get('/sms/v1/configs', { params })
}
export function getSysconfQueryByCode(params) {
  return request.get('/sms/v1/configs/queryByCode', { params })
}
export function modifySysconf(data) {
  return request.put('/sms/v1/configs', wrapperParams(data))
}

export function syncLdapApi() {
  return request.post('/sms/v1/configs/syncLdap')
}
// 获取首页概览信息
export function getPortal(params) {
  return request.get('/ims/v1/portal/platform/stats', { params: wrapperParams(params) })
}
export function getServiceQuota(tenantId, data) {
  return request.get(`/cos/v1/tenants/${tenantId}/quotas`, {
    params: wrapperParams(data)
  })
}
export function replaceToken(params) {
  return request.get('/sms/v1/token', { params })
}
// 获取用户权限
export function getUserPermissions(params) {
  return request.get('/sms/v1/users/permissions', { params })
}
// 获取系统配置信息
export function getSystemConfigs(params) {
  return request.get('/sms/v1/configs', { params })
}
// 获取树状系统配置信息
export function getSystemTreeConfigs(params) {
  return request.get('/sms/v1/configs/tree', { params })
}
// 更新系统配置信息
export function updateSystemConfigs(params) {
  return request.put('/sms/v1/system-configs', params, {
    headers: { 'Content-Type': 'multipart/form-data', BsmAjaxHeader: true, options: { noSeri: true } }
  })
}
// 测试连接
export function testLinkApi(category) {
  return request.get('/sms/v1/configs/test', { params: { category } })
}
export function getWinhongToken() {
  return request.get('/sms/v1/system/home/winhong/token')
}

// 右上角应用列表
// 应用信息说明
// 字段	类型	字段说明
// appState	int	应用状态（0注册 3上线 1发布 2下线）
// softwareDesc	String	应用描述
// approveManager	String	应用管理员
// appAddress	String	访问地址
// appCode	String	应用编码
// appIcon	String	应用图标
// softwareOperations	String	软件研发单位
// updateUid	String	更新人ID
// appId	String	应用ID
// softwarePublishTime	String	应用上线时间
// createUid	String	创建人ID
// appDepartment	String	应用单位
// area	String	所属区域
// linkNum	String	应用管理员联系电话
// assumeDept	String	软件承制单位
// useFlag	int	应用是否可用标志（1可用 0不可用）
// softwareVersion	String	应用版本
// appSecrecyLevel	String	应用密级
// appInfo	String	应用信息
// appDirection	String	应用方向
// appTheme	String	应用专题
// modelSystem	String	型号系统
// assumeLinkman	String	软件承制单位联系人
// linkmanNum	String	软件承制单位联系人电话
// appType	String	软件类型
// appPlatform"	String	应用平台
// appName	String	应用名称
// publishArea	String	应用发布区域中心编码
// sysPlace	String	部署位置
// appLevel	String	应用级别
// updateTime	String	更新时间
// createTime	String	注册时间
export function getAppList(params) {
  return request.get('/sms/v1/index/userAppList', { params })
}
