using HZQR.Common;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Reflection;
using System.Web.Http;
using System.Web.Http.Description;
using WebAPiDemo.GeneralMethod.Common;
using WebAPiDemo.GeneralMethod.Services;
using WebAPiDemo.Model;
using WebAPiDemo.Models;
using WebAPiDemo.Models.Common;
namespace WebAPiDemo.Controllers
{
public class ValuesController : BaseController
{
#region 获取月度车辆类型占比
///
/// 获取月度车辆类型占比
///
/// 统计月份,格式yyyyMM
/// 服务区内码集合,多个用,隔开
/// 服务区方位
/// 进出类型,默认0
///
/// 返参:
///
VEHICLE_TYPE:车辆类型
///
VEHICLE_COUNT:车流量
///
STAY_TIMES:停留时长(s)
///
[Route("WebAPiDemo/GetMonthCartTypeList")]
[AcceptVerbs("GET")]
[ResponseType(typeof(Models.JsonMsg))]
public IHttpActionResult GetMonthCartTypeList(string StatisticsMonth, string ServerpartIds = "",string ServerpartRegion="",int InoutType= 0)
{
string Parameter = "入参信息:统计月份【" + StatisticsMonth + "】,服务区内码【" + ServerpartIds + "】,ServerpartRegion 【" + ServerpartRegion + "】 ,InoutType 【" + InoutType + "】";
//判断月度字段是否为空
if(string.IsNullOrWhiteSpace(StatisticsMonth))
{
return Ok(Method.Common.ReturnJson(200, "StatisticsMonth!"));
}
//判断服务区内码是否为空
if (string.IsNullOrWhiteSpace(ServerpartIds))
{
return Ok(Method.Common.ReturnJson(200, "ServerpartIds!"));
}
try
{
//实例化查询帮忙类
CartCountAnalysisHelper service = new CartCountAnalysisHelper();
//实例化一个查询类
PageCartCountAnalysisRequestDto pageRequestDto = new PageCartCountAnalysisRequestDto()
{
StatisticsMonth = StatisticsMonth,
ServerpartIds = ServerpartIds,
ServerpartRegion = ServerpartRegion,
InoutType = InoutType,
};
//获取获取月度车辆类型占比数据
var result = service.MonthCartTypeList(pageRequestDto);
//判断是否为空
if (result != null)
{
return Ok(Models.JsonMsg>.Success(result, 100, "查询成功"));
}
else
{
return Ok(Method.Common.ReturnJson(200, "查询失败:无数据返回"));
}
}
catch (Exception ex)
{
//事务回滚
transaction.Rollback();
LogUtil.WriteLog(null, "查询失败!失败原因:" + ex.Message + "\r\n" + Parameter,
DateTime.Now.ToString("yyyyMMdd") + "_GetMonthCartTypePageList");
return Ok(Method.Common.ReturnJson(999, "查询失败" + ex.Message));
}
}
#endregion
#region 获取月度车辆归属地排行
///
/// 获取月度车辆归属地排行
///
/// 统计月份
/// 服务区内码集合,多个用,隔开
/// 服务区方位
/// 车辆类型
///
/// 返参:
///
PROVINCE_COUNT:省内车流量
///
OUTPROVINCE_COUNT:省外车流量
///
Ttoal_COUNT:总车流量(s)
///
list:车辆归属地列表
///
LICENSE_PLATE:车牌归属地
///
VEHICLE_COUNT:车流量
///
STAY_TIMES:停留时长
///
VEHICLE_COUNT_RATIO:车流量占比
///
[Route("WebAPiDemo/GetMonthCartRank")]
[AcceptVerbs("GET")]
[ResponseType(typeof(Models.JsonMsg))]
public IHttpActionResult GetMonthCartRank(string StatisticsMonth, string ServerpartIds, string ServerpartRegion, string CartType = "")
{
string Parameter = "入参信息:统计月份【" + StatisticsMonth + "】,服务区内码【" + ServerpartIds + "】,服务区方位【" + ServerpartIds + "】, 车辆类型【" + CartType + "】";
//判断月度是否为空
if (string.IsNullOrWhiteSpace(StatisticsMonth))
{
return Ok(Method.Common.ReturnJson(200, "StatisticsMonth!"));
}
//判断服务区内码是否为空
if (string.IsNullOrWhiteSpace(ServerpartIds))
{
return Ok(Method.Common.ReturnJson(200, "ServerpartIds!"));
}
try
{
//实例化查询帮助类
CartCountAnalysisHelper service = new CartCountAnalysisHelper();
//调用业务代码,获取月度车辆归属地排行数据
var result = service.MonthCartRank(StatisticsMonth, ServerpartIds, ServerpartRegion, CartType);
if (result != null)
{
return Ok(Models.JsonMsg.Success(result, 100, "查询成功"));
}
else
{
return Ok(Method.Common.ReturnJson(200, "查询失败:无数据返回"));
}
}
catch (Exception ex)
{
//事务回滚
transaction.Rollback();
LogUtil.WriteLog(null, "查询失败!失败原因:" + ex.Message + "\r\n" + Parameter,
DateTime.Now.ToString("yyyyMMdd") + "_GetMonthCartRank");
return Ok(Method.Common.ReturnJson(999, "查询失败" + ex.Message));
}
}
#endregion
}
}