using Yw.Dto.Run; namespace Yw.Application { /// /// RunRealRecord /// [Route("Run/Real/Record/Std")] [ApiDescriptionSettings("Run", Name = "运行实时记录(Std)", Order = 89000)] public class RunRealRecord_StdController : IDynamicApiController { /// /// 获取最近记录 /// [Route("GetLastRecord@V1.0")] [HttpGet] public RunRealRecordStdDto GetLastRecord([FromQuery][Required] ObjectInput input) { var model = new Service.RunRealRecord().GetLastRecord(input.ObjectType, input.ObjectID); return model == null ? null : new RunRealRecordStdDto(model); } /// /// 获取最近记录列表 /// [Route("GetLastRecordList@V1.0")] [HttpGet] public List GetLastRecordList([FromQuery][Required] ObjectIdsOfObjectTypeInput input) { var ids = LongListHelper.ToList(input.ObjectIds); var list = new Service.RunRealRecord().GetLastRecord(input.ObjectType, ids); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取 /// [Route("GetByObjectTypeAndObjectID@V1.0")] [HttpGet] public List GetByObjectTypeAndObjectID([FromQuery][Required] ObjectOfNullableTimeRangeAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetByObjectTypeAndObjectID(input.ObjectType, input.ObjectID, input.StartTime, input.EndTime, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取 (限制数量) /// [Route("GetLimitByObjectTypeAndObjectID@V1.0")] [HttpGet] public List GetLimitByObjectTypeAndObjectID([FromQuery][Required] ObjectLimitOfNullableTimeRangeAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetLimitByObjectTypeAndObjectID(input.ObjectType, input.ObjectID, input.StartTime, input.EndTime, input.Limit, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取某日的数据 /// [Route("GetByObjectTypeAndObjectIDOfDay@V1.0")] [HttpGet] public List GetByObjectTypeAndObjectIDOfDay([FromQuery][Required] ObjectOfDayAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetByObjectTypeAndObjectIDOfDay(input.ObjectType, input.ObjectID, input.Day, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取某日的数据 (限制数量) /// [Route("GetLimitByObjectTypeAndObjectIDOfDay@V1.0")] [HttpGet] public List GetLimitByObjectTypeAndObjectIDOfDay([FromQuery][Required] ObjectLimitOfDayAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetLimitByObjectTypeAndObjectIDOfDay(input.ObjectType, input.ObjectID, input.Day, input.Limit, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取日期区间的数据 /// [Route("GetByObjectTypeAndObjectIDOfDayRange@V1.0")] [HttpGet] public List GetByObjectTypeAndObjectIDOfDayRange([FromQuery][Required] ObjectOfDayRangeAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetByObjectTypeAndObjectIDOfDayRange(input.ObjectType, input.ObjectID, input.StartDay, input.EndDay, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取日期区间的数据 (限制数量) /// [Route("GetLimitByObjectTypeAndObjectIDOfDayRange@V1.0")] [HttpGet] public List GetLimitByObjectTypeAndObjectIDOfDayRange([FromQuery][Required] ObjectLimitOfDayRangeAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetLimitByObjectTypeAndObjectIDOfDayRange(input.ObjectType, input.ObjectID, input.StartDay, input.EndDay, input.Limit, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取时间区间的数据 /// [Route("GetByObjectTypeAndObjectIDOfTimeRange@V1.0")] [HttpGet] public List GetByObjectTypeAndObjectIDOfTimeRange([FromQuery][Required] ObjectOfTimeRangeAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetByObjectTypeAndObjectIDOfTimeRange(input.ObjectType, input.ObjectID, input.StartTime, input.EndTime, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } /// /// 通过 ObjectType 和 ObjectID 获取时间区间的数据 (限制数量) /// [Route("GetLimitByObjectTypeAndObjectIDOfTimeRange@V1.0")] [HttpGet] public List GetLimitByObjectTypeAndObjectIDOfTimeRange([FromQuery][Required] ObjectLimitOfTimeRangeAndNullableRunInput input) { var list = new Yw.Service.RunRealRecord().GetLimitByObjectTypeAndObjectIDOfTimeRange(input.ObjectType, input.ObjectID, input.StartTime, input.EndTime, input.Limit, input.Run); var vmList = list?.Select(x => new RunRealRecordStdDto(x)).ToList(); return vmList; } } }