import request from '/@/utils/request';

/**
 * 流失趋势 获取卸载趋势参数
 * @param startDate	开始时间(yyyy-MM-dd)，不传则默认为当周第一天
 * @param endDate	结束时间(yyyy-MM-dd)，不传则默认为当前时间
 * @param timeUnit	时间单位(day/week/month)，不传则默认为day
 * @param appId	appId
 * @param channel	渠道
 * @param version	版本
 * @returns 
 */
export const uninstallTrend = (data?: Object) => {
	return request({
		url: '/stats/uninstall/trend',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载画像
 * @param startDate	开始时间(yyyy-MM-dd)，不传则默认为当周第一天
 * @param endDate	结束时间(yyyy-MM-dd)，不传则默认为当前时间
 * @param timeUnit	时间单位(day/week/month)，不传则默认为day
 * @param appId	appId
 * @param channel	渠道
 * @param version	版本
 * @returns 
 */
export const uninstallPortrait = (data?: Object) => {
	return request({
		url: '/stats/uninstall/portrait',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载归因-卸载预测
 * @param cycle	周期（周/月）
 * @param type	类型(0-卸载流失设备, 1-召回设备（预测）)	
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @param startDate	开始日期	
 * @param endDate	结束日期	
 * @returns 
 */
export const uninstallPredict = (data?: Object) => {
	return request({
		url: '/stats/uninstall/predict',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载归因-安装卸载比
 * @param cycle	周期（周/月）
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @param startDate	开始日期	
 * @param endDate	结束日期	
 * @param pageNum	页码
 * @param pageSize	每页大小
 * @returns 
 */
export const predictDetail = (data?: Object) => {
	return request({
		url: '/stats/uninstall/predict/detail',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载归因-安装卸载比明细
 * @param cycle	周期（周/月）
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @param pageNum	页码
 * @param pageSize	每页大小	
 * @returns 
 */
export const predictDetailList = (data?: Object) => {
	return request({
		url: '/stats/uninstall/predict/detailList',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载洞察-体验干扰
 * @param cycle	周期（周/月）
 * @param type	类型
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @returns 
 */
export const uninstallInterfere = (data?: Object) => {
	return request({
		url: '/stats/uninstall/uninstallInterfere',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载洞察-行为还原
 * @param cycle	周期（周/月）
 * @param type	类型
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @returns 
 */
export const uninstallAction = (data?: Object) => {
	return request({
		url: '/stats/uninstall/uninstallAction',
		method: 'post',
		data: data,
	});
};

/**
 * 流失概况-获取卸载趋势明细数据
 * @param startDate	开始时间(yyyy-MM-dd)
 * @param endDate	结束时间(yyyy-MM-dd)	
 * @param timeUnit	时间单位(week/month)	
 * @param appId	appId	
 * @param channel	渠道	
 * @param version	版本	
 * @param pageNum	页码	
 * @param pageSize	每页条数	
 * @returns 
 */
export const uninstallTrendDetail = (data?: Object) => {
	return request({
		url: '/stats/uninstall/trend/detail',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载洞察-卸载前状态
 * @param cycle	周期（周/月）
 * @param type	类型 1
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @returns 
 */
export const uninstallBefore = (data?: Object) => {
	return request({
		url: '/stats/uninstall/uninstallBefore',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载洞察-卸载后流失
 * @param cycle	周期（周/月）
 * @param type	类型 2
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @returns 
 */
export const uninstallAfter = (data?: Object) => {
	return request({
		url: '/stats/uninstall/uninstallAfter',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载洞察-卸载设备活跃情况
 * @param cycle	周期（周/月）
 * @param type	类型 4
 * @param appId	应用ID	
 * @param channel	渠道	
 * @param version	应用版本	
 * @returns 
 */
export const uninstallActive = (data?: Object) => {
	return request({
		url: '/stats/uninstall/active',
		method: 'post',
		data: data,
	});
};

/**
 * 卸载洞察-设备系统分布
 * @param type	类型 3
 */