예제 #1
0
        public async Task <ScreenForReturnDto> Create(ScreenForCreationDto createDto)
        {
            var checkByNameFromRepo = await screenDal.GetAsync(x => x.Name.ToLower() == createDto.Name.ToLower());

            if (checkByNameFromRepo != null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { AlreadyExist = Messages.AlreadyExist });
            }

            var screenForCreate = mapper.Map <Screen>(createDto);
            var screenToSave    = await screenDal.Add(screenForCreate);

            List <SubScreenForCreationDto> subScreen = new List <SubScreenForCreationDto>()
            {
                new SubScreenForCreationDto()
                {
                    Name     = screenToSave.Position == "Vertical"?screenToSave.Name + " Üst":screenToSave.Name + " Sol",
                    Position = screenToSave.Position == "Vertical"?"Top":"Left",
                    Height   = screenToSave.Position == "Vertical"?30:0,
                    Width    = screenToSave.Position == "Vertical"?0:100,
                    ScreenId = screenToSave.Id,
                    Status   = true,
                },
                new SubScreenForCreationDto()
                {
                    Name     = screenToSave.Name + " Orta",
                    Position = screenToSave.Position == "Vertical"?"VMiddle":"HMiddle",
                    Height   = screenToSave.Position == "Vertical"?30:0,
                    Width    = screenToSave.Position == "Vertical"?0:30,
                    ScreenId = screenToSave.Id,
                    Status   = false
                },
                new SubScreenForCreationDto()
                {
                    Name     = screenToSave.Position == "Vertical"?screenToSave.Name + " Alt":screenToSave.Name + " Sağ",
                    Position = screenToSave.Position == "Vertical"?"Bottom":"Right",
                    Height   = screenToSave.Position == "Vertical"?30:0,
                    Width    = screenToSave.Position == "Vertical"?0:30,
                    ScreenId = screenToSave.Id,
                    Status   = false,
                }
            };

            var subScreenForCreate = mapper.Map <List <SubScreen> >(subScreen);
            var subScreenToSave    = await subSCreenDal.AddRange(subScreenForCreate);

            var screenForReturn = mapper.Map <Screen, ScreenForReturnDto>(screenToSave);

            return(screenForReturn);
        }
        public async Task <OnlineScreenForReturnDto> AddNewOnlineScreenAsync(OnlineScreen onlineScreen)
        {
            var checkScreen = await screenDal.GetAsync(x => x.Id == onlineScreen.ScreenId);

            if (checkScreen != null)
            {
                await onlineScreenDal.Add(onlineScreen);
            }

            return(mapper.Map <OnlineScreen, OnlineScreenForReturnDto>(onlineScreen));
        }
예제 #3
0
        public async Task <LiveTvBroadCastSubScreenForReturnDto> Create(LiveTvBroadCastSubScreenForCreationDto creationDto)
        {
            var checkById = await liveTvBroadCastSubScreenDal.GetAsync(x => x.SubScreenId == creationDto.SubScreenId && x.LiveTvBroadCastId == creationDto.LiveTvBroadCastId);

            if (checkById != null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { AlreadyExist = Messages.SubScreenAlreadyExist });
            }

            var subScreenFromRepo = await subSCreenDal.GetAsync(x => x.Id == creationDto.SubScreenId);

            if (subScreenFromRepo == null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = Messages.NotFoundSubSCreen });
            }

            var checkAnnounceFromRepo = await liveTvBroadCastDal.GetAsync(x => x.Id == creationDto.LiveTvBroadCastId);

            if (checkAnnounceFromRepo == null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = Messages.NotFoundAnnounce });
            }

            var screenFromRepo = await screenDal.GetAsync(x => x.Id == creationDto.ScreenId);

            if (screenFromRepo == null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = Messages.NotFoundScreen });
            }

            if (!checkAnnounceFromRepo.IsPublish)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = "Canlı Tv yayını henüz onay bekliyor...." });
            }

            var subScreenForReturn = new LiveTvBroadCastSubScreen()
            {
                SubScreenId       = subScreenFromRepo.Id,
                ScreenId          = screenFromRepo.Id,
                LiveTvBroadCastId = checkAnnounceFromRepo.Id,
                SubScreenName     = subScreenFromRepo.Name,
                SubScreenPosition = subScreenFromRepo.Position
            };

            var createSubScreen = await liveTvBroadCastSubScreenDal.Add(subScreenForReturn);

            var spec        = new LiveTvBroadCastSubScreenWithSubScreenForReturnSpecification(createSubScreen.Id);
            var getFromRepo = await liveTvBroadCastSubScreenDal.GetEntityWithSpecAsync(spec);

            return(mapper.Map <LiveTvBroadCastSubScreen, LiveTvBroadCastSubScreenForReturnDto>(getFromRepo));
        }
예제 #4
0
        public async Task <HomeAnnounceSubScreenForReturnDto> Create(HomeAnnounceSubScreenForCreationDto creationDto)
        {
            var checkById = await homeAnnounceSubScreenDal.GetAsync(x => x.SubScreenId == creationDto.SubScreenId && x.HomeAnnounceId == creationDto.HomeAnnounceId);

            if (checkById != null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { AlreadyExist = Messages.SubScreenAlreadyExist });
            }

            var subScreenFromRepo = await subSCreenDal.GetAsync(x => x.Id == creationDto.SubScreenId);

            if (subScreenFromRepo == null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = Messages.NotFoundSubSCreen });
            }

            var checkAnnounceFromRepo = await homeAnnounceDal.GetAsync(x => x.Id == creationDto.HomeAnnounceId);

            if (checkAnnounceFromRepo == null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = Messages.NotFoundAnnounce });
            }

            var screenFromRepo = await screenDal.GetAsync(x => x.Id == creationDto.ScreenId);

            if (screenFromRepo == null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = Messages.NotFoundScreen });
            }


            var subScreenForReturn = new HomeAnnounceSubScreen()
            {
                SubScreenId       = subScreenFromRepo.Id,
                ScreenId          = screenFromRepo.Id,
                HomeAnnounceId    = checkAnnounceFromRepo.Id,
                SubScreenName     = subScreenFromRepo.Name,
                SubScreenPosition = subScreenFromRepo.Position
            };

            var createSubScreen = await homeAnnounceSubScreenDal.Add(subScreenForReturn);

            var spec        = new HomeAnnounSubScreenWithSubScreenForReturnSpecification(createSubScreen.Id);
            var getFromRepo = await homeAnnounceSubScreenDal.GetEntityWithSpecAsync(spec);

            return(mapper.Map <HomeAnnounceSubScreen, HomeAnnounceSubScreenForReturnDto>(getFromRepo));
        }
예제 #5
0
        public async Task <ScreenHeaderPhotoForReturnDto> Create(FileUploadDto uploadDto)
        {
            var checkAnnounceById = await screenDal.GetAsync(x => x.Id == uploadDto.AnnounceId);

            if (checkAnnounceById == null)
            {
                throw new RestException(HttpStatusCode.BadRequest, new { NotFound = Messages.NotFoundScreen });
            }

            var uploadFile = await upload.Upload(uploadDto.File, "headerphoto");


            var mapForCreate = new ScreenHeaderPhotoForCreationDto();

            mapForCreate.Name     = uploadFile.Name;
            mapForCreate.FullPath = uploadFile.FullPath;
            mapForCreate.ScreenId = checkAnnounceById.Id;
            mapForCreate.FileType = uploadFile.FileType;
            mapForCreate.IsMain   = false;
            var mapForDb    = mapper.Map <ScreenHeaderPhoto>(mapForCreate);
            var createPhoto = await screenHeaderPhotoDal.Add(mapForDb);

            return(mapper.Map <ScreenHeaderPhoto, ScreenHeaderPhotoForReturnDto>(createPhoto));
        }