2024-11-18 15:13:21 +08:00
|
|
|
|
using Infrastructure;
|
|
|
|
|
|
using Microsoft.AspNetCore.Authorization;
|
|
|
|
|
|
using Microsoft.AspNetCore.Mvc;
|
|
|
|
|
|
using OpenAuth.App.ServiceApp;
|
|
|
|
|
|
using OpenAuth.App.ServiceApp.Response;
|
|
|
|
|
|
using OpenAuth.WebApi.Model.CustomAttribute;
|
2024-11-14 15:01:46 +08:00
|
|
|
|
|
|
|
|
|
|
namespace OpenAuth.WebApi.Controllers.ServiceControllers
|
|
|
|
|
|
{
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 统计分析
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
[Route("api/[controller]/[action]")]
|
|
|
|
|
|
[ApiController]
|
|
|
|
|
|
public class DataAnalysisController : ControllerBase
|
|
|
|
|
|
{
|
2024-11-18 15:13:21 +08:00
|
|
|
|
readonly DataAnalysisApp _app;
|
|
|
|
|
|
public DataAnalysisController(DataAnalysisApp app)
|
2024-11-14 15:01:46 +08:00
|
|
|
|
{
|
2024-11-18 15:13:21 +08:00
|
|
|
|
_app = app;
|
|
|
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 小组或人员统计
|
|
|
|
|
|
/// </summary>
|
2024-11-19 10:20:10 +08:00
|
|
|
|
/// <param name="type">2-小组,1-人员</param>
|
2024-11-18 15:13:21 +08:00
|
|
|
|
/// <param name="dateType">1-本月,2-本周,3-本日</param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
[HttpGet]
|
|
|
|
|
|
public async Task<Response<List<UserOrGroupTaskResp>>> GetGroupOrUserTaskAndTuBan(int type, int dateType)
|
|
|
|
|
|
{
|
|
|
|
|
|
Response<List<UserOrGroupTaskResp>> response = new Response<List<UserOrGroupTaskResp>>();
|
|
|
|
|
|
try
|
|
|
|
|
|
{
|
|
|
|
|
|
return await _app.GetGroupOrUserTaskAndTuBan(type, dateType);
|
2024-11-24 10:55:12 +08:00
|
|
|
|
}
|
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
|
{
|
|
|
|
|
|
response.Code = 500;
|
|
|
|
|
|
response.Message = ex.InnerException?.Message ?? ex.Message;
|
|
|
|
|
|
}
|
|
|
|
|
|
return response;
|
|
|
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 根据时间统计小组和个人任务及图斑
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="beginTime"></param>
|
|
|
|
|
|
/// <param name="endTime"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
[HttpGet]
|
|
|
|
|
|
public async Task<Response<List<UserOrGroupTaskResp>>> GetGroupOrUserTaskAndTuBanByTime(DateTime beginTime, DateTime endTime)
|
|
|
|
|
|
{
|
|
|
|
|
|
Response<List<UserOrGroupTaskResp>> response = new Response<List<UserOrGroupTaskResp>>();
|
|
|
|
|
|
try
|
|
|
|
|
|
{
|
|
|
|
|
|
return await _app.GetGroupOrUserTaskAndTuBanByTime(beginTime, endTime);
|
2024-11-18 15:13:21 +08:00
|
|
|
|
}
|
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
|
{
|
|
|
|
|
|
response.Code = 500;
|
|
|
|
|
|
response.Message = ex.InnerException?.Message ?? ex.Message;
|
|
|
|
|
|
}
|
|
|
|
|
|
return response;
|
|
|
|
|
|
}
|
|
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 解译分析数据交付与费用记账表
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="beginTime"></param>
|
|
|
|
|
|
/// <param name="endTime"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
[HttpGet]
|
2024-11-19 10:03:38 +08:00
|
|
|
|
public async Task<Response<AiShpDataExpenseAccountingTableResp>> GetAiShpDataExpenseAccountingTable(DateTime beginTime, DateTime endTime)
|
2024-11-18 15:13:21 +08:00
|
|
|
|
{
|
2024-11-19 10:03:38 +08:00
|
|
|
|
Response<AiShpDataExpenseAccountingTableResp> response = new Response<AiShpDataExpenseAccountingTableResp>();
|
2024-11-18 15:13:21 +08:00
|
|
|
|
try
|
|
|
|
|
|
{
|
|
|
|
|
|
return await _app.GetAiShpDataExpenseAccountingTable(beginTime, endTime);
|
|
|
|
|
|
}
|
|
|
|
|
|
catch (Exception ex)
|
|
|
|
|
|
{
|
|
|
|
|
|
response.Code = 500;
|
|
|
|
|
|
response.Message = ex.InnerException?.Message ?? ex.Message;
|
|
|
|
|
|
}
|
|
|
|
|
|
return response;
|
2024-11-14 15:01:46 +08:00
|
|
|
|
}
|
2024-11-22 11:19:09 +08:00
|
|
|
|
/// <summary>
|
|
|
|
|
|
/// 导出解译分析数据交付与费用记账表
|
|
|
|
|
|
/// </summary>
|
|
|
|
|
|
/// <param name="startTime"></param>
|
|
|
|
|
|
/// <param name="endTime"></param>
|
|
|
|
|
|
/// <returns></returns>
|
|
|
|
|
|
[HttpPost]
|
|
|
|
|
|
public IActionResult AiShpDataExpenseAccountingTableToExcel(DateTime startTime, DateTime endTime)
|
|
|
|
|
|
{
|
|
|
|
|
|
var res = new Response();
|
|
|
|
|
|
var excelRes = _app.AiShpDataExpenseAccountingTableToExcel(startTime, endTime);
|
|
|
|
|
|
if (excelRes.Code == 200)
|
|
|
|
|
|
{
|
|
|
|
|
|
return File(excelRes.Result.ToArray(),
|
|
|
|
|
|
"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
|
|
|
|
|
|
"解译分析数据交付与费用记账表.xls");
|
|
|
|
|
|
}
|
|
|
|
|
|
else
|
|
|
|
|
|
{
|
|
|
|
|
|
res.Code = excelRes.Code;
|
|
|
|
|
|
res.Message = excelRes.Message;
|
|
|
|
|
|
}
|
|
|
|
|
|
return Ok(res);
|
|
|
|
|
|
}
|
2024-11-14 15:01:46 +08:00
|
|
|
|
}
|
|
|
|
|
|
}
|