public List <Balance> GetByRange(int skip, int take, EStatusVideo statusVideo, int id, string word) { List <VideoEquipment> videoEquipment = _repository.GetByRange(skip, take, id); List <Balance> listBalance = new List <Balance>(); Balance balance = new Balance(); DateTime date = DateTime.Today; DateTime ultimoDiaDoMes = new DateTime(date.Year, date.Month, DateTime.DaysInMonth(date.Year, date.Month)); decimal valueMonth = 0; //saber a quantidade de dias do mes atual int amoutDaysOfMonth = DateTime.DaysInMonth(date.Year, date.Month); //dividir o valor mensal pela quantidade de dias do mes //Se a data de inicio do video for mes atual, calcular a diferença até o ultimo dia do mes //Se a data de fim do video for no mes atual, calcular a diferenca até a da de fim //multiplicar a quantidade de dias do mes pelo valor diario ganho em cima do video foreach (var video in videoEquipment) { int amountDaysVideoVigente = amoutDaysOfMonth; // video.Video.Plan decimal value = (video.Video.Plan.ValueEquipmentMain + video.Video.Plan.ValueEquipmentAdditional * video.Video.TvAdditional) / amoutDaysOfMonth; if (video.Video.DateStart.Month == DateTime.Today.Month && video.Video.DateEnd.Month != DateTime.Today.Month && video.Video.Status == statusVideo) { amountDaysVideoVigente = amoutDaysOfMonth - video.Video.DateStart.Day + 1; //listBalance.Add(new Balance(video.IdVideo, video.Video.Company.FantasyName, value * amountDaysVideoVigente, _repository.GetVideoCountByEquipment(video.IdVideo), amountDaysVideoVigente, value, video.Video.DateStart, video.Video.DateEnd)); } else if (video.Video.DateEnd.Month == DateTime.Today.Month && video.Video.DateStart.Month != DateTime.Today.Month && video.Video.Status == statusVideo) { amountDaysVideoVigente = amoutDaysOfMonth - video.Video.DateEnd.Day + 1; //listBalance.Add(new Balance(video.IdVideo, video.Video.Company.FantasyName, value * amountDaysVideoVigente, _repository.GetVideoCountByEquipment(video.IdVideo), amountDaysVideoVigente, value, video.Video.DateStart, video.Video.DateEnd)); } else if (video.Video.DateEnd.Month == DateTime.Today.Month && video.Video.DateStart.Month == DateTime.Today.Month && video.Video.Status == statusVideo) { amountDaysVideoVigente = video.Video.DateEnd.Day - video.Video.DateStart.Day + 1; //listBalance.Add(new Balance(video.IdVideo, video.Video.Company.FantasyName, value * amountDaysVideoVigente, _repository.GetVideoCountByEquipment(video.IdVideo), amountDaysVideoVigente, value, video.Video.DateStart, video.Video.DateEnd)); } if ((video.Video.DateEnd.Month == DateTime.Today.Month || video.Video.DateStart.Month == DateTime.Today.Month || video.Video.DateStart.Month <= DateTime.Today.Month && video.Video.DateEnd.Month >= DateTime.Today.Month) && video.Video.Status == statusVideo) { listBalance.Add(new Balance(video.IdVideo, video.Video.Company.FantasyName, value * amountDaysVideoVigente, video.Video.TvAdditional + 1, amountDaysVideoVigente, value, video.Video.DateStart, video.Video.DateEnd, video.Video.Plan.Title)); } } //balance.AjustBalance(statusVideo,videoEquipment); return(balance.SerializableList(listBalance)); }
public static Expression <Func <Video, bool> > GetVideo(string word, EStatusVideo status) { if (string.IsNullOrEmpty(word) || word.Equals("null")) { return(x => !x.IdVideo.Equals(null) && x.Status == status); } return(x => (x.Company.CompanyName.Contains(word) || x.Company.FantasyName.Contains(word) || x.CategoryVideo.Category.Contains(word) || x.TypeVideo.Type.Contains(word))); }
public List <Video> GetByRangeCompany(int skip, int take, int id, EStatusVideo status) { return(_context.Video .Include("Company") .Include("CategoryVideo") .Include("TypeVideo") .Include("TimeVideo") .Include("ListVideoEquipment") .Where(VideoSpecs.GetVideoCompany(id, status)) .OrderBy(x => x.DateRegister) .Skip((skip - 1) * take).Take(take).ToList()); }
public Video(int idVideo, string url, EStatusVideo status, int tvAdditional, int idTypeVideo, int idTimeVideo, int idCompany, int idCategoryVideo, DateTime dateEnd, DateTime dateStart) { this.IdVideo = idVideo; this.Url = url; this.IdTypeVideo = idTypeVideo; this.IdCompany = idCompany; this.IdCategoryVideo = idCategoryVideo; this.Status = status; this.IdTimeVideo = idTimeVideo; this.DateEnd = dateEnd; this.DateStart = dateStart; this.TvAdditional = tvAdditional; }
public UpdateVideoCommand(int idVideo, string url, EStatusVideo status, int tvAdditional, int idTypeVideo, int idTimeVideo, int idCompany, int idCategoryVideo, int idPlan, DateTime dateEnd, DateTime dateStart, ICollection <VideoEquipment> listVideoEquipment) { this.IdVideo = idVideo; this.Url = url; this.IdTypeVideo = idTypeVideo; this.IdCompany = idCompany; this.IdCategoryVideo = idCategoryVideo; this.Status = status; this.IdTimeVideo = idTimeVideo; this.IdPlan = idPlan; this.DateEnd = dateEnd; this.TvAdditional = tvAdditional; this.DateStart = dateStart; }
public List <Balance> GetByRange(int skip, int take, EStatusVideo statusVideo, string word) { //List<VideoEquipment> videoEquipment = _repository.GetAll(); //List<Balance> listBalance = new List<Balance>(); //Balance balance = new Balance(); //foreach (var video in videoEquipment) //{ // Balance obj = new Balance(video.IdVideo, video.Video.Company.FantasyName, video.Video.Plan.ValueEquipmentMain + video.Video.Plan.ValueEquipmentAdditional * video.Video.TvAdditional, _repository.GetVideoCountByEquipment(video.IdVideo),0,0); // listBalance.Add(obj); //} //balance.AjustBalance(statusVideo,videoEquipment); return(null); //return balance.SerializableList(listBalance); }
public List <Video> GetByRange(int skip, int take, string word, EStatusVideo status) { return(_repository.GetByRange(skip, take, word, status)); }
public int GetCountCompany(int id, EStatusVideo status) { return(_repository.GetCountCompany(id, status)); }
public List <Video> GetByRangeCompany(int skip, int take, int id, EStatusVideo status) { return(_repository.GetByRangeCompany(skip, take, id, status)); }
public int GetCount(string word, EStatusVideo status) { return(_repository.GetCount(word, status)); }
public Task <HttpResponseMessage> GetCount(string word, EStatusVideo status) { var countVideo = _service.GetCount(word, status); return(CreateResponse(HttpStatusCode.OK, countVideo)); }
public Task <HttpResponseMessage> GetByRangeCompany(int skip, int id, EStatusVideo status, int take = 12) { var video = _service.GetByRangeCompany(skip, take, id, status); return(CreateResponse(HttpStatusCode.OK, video)); }
public int GetCountCompany(int id, EStatusVideo status) { return(_context.Video.Where(VideoSpecs.GetVideoCompany(id, status)).Count()); }
public static Expression <Func <Video, bool> > GetVideoCompany(int id, EStatusVideo status) { return(x => x.IdCompany == id && x.Status == status); }
public int GetCount(string word, EStatusVideo status) { return(_context.Video.Where(VideoSpecs.GetVideo(word, status)).Count()); }
public void AjustBalance(EStatusVideo statusVideo, IEnumerable <VideoEquipment> listVideoEquipment) { }
public Task <HttpResponseMessage> GetByRange(int skip, int take, EStatusVideo status, int id) { var balance = _service.GetByRange(skip, take, status, id, ""); return(CreateResponse(HttpStatusCode.OK, balance)); }
public List <Balance> GetByRange(int skip, int take, EStatusVideo statusVideo, string word) { throw new NotImplementedException(); }