Ejemplo n.º 1
0
        public async Task <IActionResult> Get(int id)
        {
            var service = new PublisherRepositoryService(connString);
            var result  = await service.GetPublisherById(id);

            var response = new GenericResponse <PublisherDTO>()
            {
                IsSuccess    = true,
                Message      = "Data fetched successfully.",
                ResponseCode = 200,
                Result       = result
            };

            return(Ok(response));
        }
Ejemplo n.º 2
0
        public async Task <IActionResult> CreateInstituteAssociation(PublisherAssociationModel model)
        {
            var username = ApplicationUtility.GetTokenAttribute(Request.Headers["Authorization"], "sub");
            var service  = new PublisherRepositoryService(connString);
            await service.CreatePublisherInstituteAssociation(model.InstituteId, model.PublisherId, username);

            var response = new GenericResponse <string>()
            {
                IsSuccess    = true,
                Message      = "Publisher Institute Association created successfully.",
                ResponseCode = 200,
                Result       = "Success"
            };

            return(Ok(response));
        }
Ejemplo n.º 3
0
        public async Task <IActionResult> EbookSearch(EBookSearch model)
        {
            var username = ApplicationUtility.GetTokenAttribute(Request.Headers["Authorization"], "sub");
            var service  = new PublisherRepositoryService(connString);
            var result   = await service.EbookSearch(model);

            var response = new GenericResponse <List <EBookDetail> >()
            {
                IsSuccess    = true,
                Message      = "Data fetched successfully.",
                ResponseCode = 200,
                Result       = result
            };

            return(Ok(response));
        }
Ejemplo n.º 4
0
        public async Task <IActionResult> UpdateEbook(EbookUpdateModel model)
        {
            var username = ApplicationUtility.GetTokenAttribute(Request.Headers["Authorization"], "sub");
            var service  = new PublisherRepositoryService(connString);
            await service.UpdateEbook(model, username);

            var response = new GenericResponse <string>()
            {
                IsSuccess    = true,
                Message      = "Ebook updated successfully.",
                ResponseCode = 200,
                Result       = "Success"
            };

            return(Ok(response));
        }
Ejemplo n.º 5
0
        public async Task <IActionResult> Create(PublisherModel model)
        {
            var username = ApplicationUtility.GetTokenAttribute(Request.Headers["Authorization"], "sub");
            var service  = new PublisherRepositoryService(connString);
            var pubId    = await service.CreatePublisher(model, username);

            PublisherAmazonAccount amazonAccountModel;

            if (model.CloudAccountRequired)
            {
                var bucketSevice = new AmazonS3Service();
                var bucketName   = GetName(model.PublisherName);
                await bucketSevice.CreateBucketToS3(bucketName);

                var iamService   = new AmazonIAMService();
                var iamUserName  = GetName(model.PublisherName);
                var accesKeyInfo = await iamService.CreateIAMUser("/", iamUserName);

                amazonAccountModel = new PublisherAmazonAccount()
                {
                    AccessKey   = accesKeyInfo.AccessKey,
                    Actor       = username,
                    BucketName  = bucketName,
                    IamUsername = iamUserName,
                    PublisherId = pubId,
                    SecretKey   = accesKeyInfo.SecurityKey
                };
                await service.CreatePublisherAmazonAccount(amazonAccountModel);
            }
            var response = new GenericResponse <int>()
            {
                IsSuccess    = true,
                Message      = "Publisher created successfully.",
                ResponseCode = 200,
                Result       = pubId
            };

            return(Ok(response));
        }