import { otherHttp } from '/@/utils/http/axios'

enum Api {
    getUserInfo = '/sys/user/login/setting/getUserData', // 查询登录用户信息
    logout = '/sys/logout', // 登出
    sysLogin = '/sys/mLogin', // 登陆
    /* phoneLogin = '/sys/phoneLogin',
    sms = '/sys/sms', */
    phoneLogin = '/sys/phoneLogin',
    sms = '/sys/getLoginVerifyCode',
    dictList = '/sys/dict/queryAllDictItems', // 获取字典数据
    location = '/tianditu/geocode', // 根据经纬度获取地址
    sysRegister = '/app/user/register', // 注册
}
/**
 * @param params 请求参数
 * @description: 查询登录用户信息
 */
export function getUserInfo(params = {}) {
    return otherHttp.get(
        {
            url: Api.getUserInfo,
            data: params,
        },
        {
            errorMessageMode: null,
        },
    )
}

/**
 * @param params 请求参数
 * @description: 登录
 */
export function sysLogin(params = {}) {
    return otherHttp.post({
        url: Api.sysLogin,
        params,
    })
}

/**
 * 手机号登录
 * @param params 参数
 */
export function phoneLogin(params = {}) {
    return otherHttp.post({
        url: Api.phoneLogin,
        data: params,
    })
}

/**
 * @param params 请求参数
 * @description: 获取短信验证码
 */
export function sysSms(params = {}) {
    return otherHttp.post({
        url: Api.sms,
        data: params,
    })
}

/**
 * @param params 请求参数
 * @description: 退出登录
 */
export function logout(params = {}) {
    return otherHttp.get({
        url: Api.logout,
        params,
    })
}

/**
 * @param params 请求参数
 * @description: 获取字典数据
 */
export function dictList(params = {}) {
    return otherHttp.get({
        url: Api.dictList,
        params,
    })
}

/**
 * @param params 请求参数
 * @description: 发布需求
 */
export function location(params = {}) {
    return otherHttp.post({
        url: Api.location,
        params,
        headers: {
            'Content-Type': 'application/x-www-form-urlencoded',
        },
    })
}

/**
 * @param params 请求参数
 * @description: 注册
 */
export function sysRegister(params = {}) {
    return otherHttp.post({
        url: Api.sysRegister,
        params,
    })
}
