public ActionResult GetMerchantPackageById([FromBody] JObject objJson) { try { if (string.IsNullOrEmpty(Convert.ToString(Request.Headers["api_key"]))) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Invalid ApiKey" }))); } string strMerchantId = MerchantLoginSessionKeys.GetMerchantIdByApiKey(_appDbContext, Guid.Parse(Request.Headers["api_key"])); if (string.IsNullOrEmpty(strMerchantId)) { return(StatusCode(StatusCodes.Status403Forbidden, (new { Status = "Error", Error = "Invalid ApiKey" }))); } var objMerchantPackages = (from mp in _appDbContext.MerchantPackages join mc in _appDbContext.MerchantCampaigns on mp.CampaignID equals mc.Id into DetailsMerchantCampaigns from mc1 in DetailsMerchantCampaigns.DefaultIfEmpty() join pt in _appDbContext.PackageType on mp.PackageTypeID equals pt.Id into DetailsPackageType from pt1 in DetailsPackageType.DefaultIfEmpty() where (mp.PackageId == Convert.ToInt32(objJson.SelectToken("merchantpackagesid")) && mc1.MerchantId == strMerchantId) select new { PackageId = Convert.ToString(mp.PackageId), CampaignName = mc1.Name, PackageType = pt1.Description, Description = mp.Description, Price = Convert.ToString(mp.Price), CreatedDate = Convert.ToString(mp.CreatedDate), StartDate = Convert.ToString(mp.StartDate), EndDate = Convert.ToString(mp.EndDate), PackagePictures = ( from mpp in _appDbContext.MerchantPackagesPictures where (mpp.PackageId == mp.PackageId) select new { Id = Convert.ToString(mpp.Id), ImageUrl = (Convert.ToString(configuration.GetSection("appSettings").GetSection("ServerUrl").Value) + "MerchantPackagesPictures/" + mpp.ImageName), AddedDate = Convert.ToString(mpp.AddedDate) } ) }); if (objMerchantPackages == null || objMerchantPackages.Count() <= 0) { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Package doesn’t exist." }))); } return(Ok(new { Status = "OK", MerchantPackages = objMerchantPackages })); } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support", SystemError = ex.Message }))); } }
public async Task <ActionResult> DeletePackagePciture([FromBody] JObject objJson) { try { if (string.IsNullOrEmpty(Convert.ToString(Request.Headers["api_key"]))) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Invalid ApiKey" }))); } string strMerchantId = MerchantLoginSessionKeys.GetMerchantIdByApiKey(_appDbContext, Guid.Parse(Request.Headers["api_key"])); if (string.IsNullOrEmpty(strMerchantId)) { return(StatusCode(StatusCodes.Status403Forbidden, (new { Status = "Error", Error = "Invalid ApiKey" }))); } var objMerchantPackagesPictures = (from mpp in _appDbContext.MerchantPackagesPictures join mp in _appDbContext.MerchantPackages on mpp.PackageId equals mp.PackageId into DetailsMerchantPackages from mp1 in DetailsMerchantPackages.DefaultIfEmpty() join mc in _appDbContext.MerchantCampaigns on mp1.CampaignID equals mc.Id into DetailsMerchantCampaigns from mc1 in DetailsMerchantCampaigns.DefaultIfEmpty() where (mpp.Id == Convert.ToInt32(objJson.SelectToken("merchantpackagespicturesid")) && mc1.MerchantId == strMerchantId) select mpp).ToList <MerchantPackagesPictures>(); if (objMerchantPackagesPictures == null || objMerchantPackagesPictures.Count() <= 0) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Package pictures doesn’t exist or Invalid Merchant." }))); } else { _appDbContext.MerchantPackagesPictures.Remove(objMerchantPackagesPictures[0]); int returnVal = await _appDbContext.SaveChangesAsync(); if (returnVal > 0) { string strSavedPath = "MerchantPackagesPictures/" + objMerchantPackagesPictures[0].ImageName; var filePath = Path.Combine(_hostingEnvironment.WebRootPath, strSavedPath); if (System.IO.File.Exists(filePath)) { System.IO.File.Delete(filePath); } return(Ok(new { Status = "OK", Detail = "Merchant Packages Picture Deleted." })); } else { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support" }))); } } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support", SystemError = ex.Message }))); } }
public async Task <ActionResult> UpdateMerchantPackage([FromBody] JObject objJson) { try { if (string.IsNullOrEmpty(Convert.ToString(Request.Headers["api_key"]))) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Invalid ApiKey" }))); } string strMerchantId = MerchantLoginSessionKeys.GetMerchantIdByApiKey(_appDbContext, Guid.Parse(Request.Headers["api_key"])); if (string.IsNullOrEmpty(strMerchantId)) { return(StatusCode(StatusCodes.Status403Forbidden, (new { Status = "Error", Error = "Invalid ApiKey" }))); } var objMerchantPackageDetails = (from mp in _appDbContext.MerchantPackages join mc in _appDbContext.MerchantCampaigns on mp.CampaignID equals mc.Id into DetailsMerchantCampaigns from mc1 in DetailsMerchantCampaigns.DefaultIfEmpty() where (mp.PackageId == Convert.ToInt32(objJson.SelectToken("merchantpackagesid")) && mc1.MerchantId == strMerchantId) select mp); if (objMerchantPackageDetails == null || objMerchantPackageDetails.Count() <= 0) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Package doesn’t exist or Invalid Merchant." }))); } MerchantPackages objMerchantPackages = new MerchantPackages(); objMerchantPackages.PackageId = Convert.ToInt32(objJson.SelectToken("merchantpackagesid")); objMerchantPackages.PackageTypeID = Convert.ToInt32(objJson.SelectToken("packagetypeid")); objMerchantPackages.Description = Convert.ToString(objJson.SelectToken("description")); objMerchantPackages.Price = Convert.ToDecimal(objJson.SelectToken("price")); _appDbContext.MerchantPackages.Attach(objMerchantPackages); _appDbContext.Entry(objMerchantPackages).Property("PackageTypeID").IsModified = true; _appDbContext.Entry(objMerchantPackages).Property("Description").IsModified = true; _appDbContext.Entry(objMerchantPackages).Property("Price").IsModified = true; int returnVal = await _appDbContext.SaveChangesAsync(); if (returnVal > 0) { return(Ok(new { Status = "OK", Detail = "Merchant Package Updated." })); } else { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support" }))); } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support", SystemError = ex.Message }))); } }
public async Task <ActionResult> ExtendMerchantPackage([FromBody] JObject objJson) { try { if (string.IsNullOrEmpty(Convert.ToString(Request.Headers["api_key"]))) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Invalid ApiKey" }))); } string strMerchantId = MerchantLoginSessionKeys.GetMerchantIdByApiKey(_appDbContext, Guid.Parse(Request.Headers["api_key"])); if (string.IsNullOrEmpty(strMerchantId)) { return(StatusCode(StatusCodes.Status403Forbidden, (new { Status = "Error", Error = "Invalid ApiKey" }))); } var objMerchantPackageDetails = (from mp in _appDbContext.MerchantPackages join mc in _appDbContext.MerchantCampaigns on mp.CampaignID equals mc.Id into DetailsMerchantCampaigns from mc1 in DetailsMerchantCampaigns.DefaultIfEmpty() where (mp.PackageId == Convert.ToInt32(objJson.SelectToken("merchantpackagesid")) && mc1.MerchantId == strMerchantId) select mp).ToList <MerchantPackages>(); if (objMerchantPackageDetails == null || objMerchantPackageDetails.Count() <= 0) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Packages doesn’t exist or Invalid Merchant." }))); } MerchantPackages objMerchantPackages = new MerchantPackages(); objMerchantPackages.CampaignID = objMerchantPackageDetails[0].CampaignID; objMerchantPackages.PackageTypeID = objMerchantPackageDetails[0].PackageTypeID; objMerchantPackages.Description = objMerchantPackageDetails[0].Description; objMerchantPackages.Price = objMerchantPackageDetails[0].Price; objMerchantPackages.CreatedDate = DateTime.UtcNow; objMerchantPackages.StartDate = Convert.ToDateTime(objJson.SelectToken("startdate")); objMerchantPackages.EndDate = Convert.ToDateTime(objJson.SelectToken("enddate")); await _appDbContext.MerchantPackages.AddAsync(objMerchantPackages); int returnVal = await _appDbContext.SaveChangesAsync(); if (returnVal > 0) { return(Ok(new { Status = "OK", Detail = "Duplicate Merchant Package Created." })); } else { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support" }))); } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support", SystemError = ex.Message }))); } }
public async Task <ActionResult> UploadPackagePictures([FromBody] JObject objJson) { try { if (string.IsNullOrEmpty(Convert.ToString(Request.Headers["api_key"]))) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Invalid ApiKey" }))); } string strMerchantId = MerchantLoginSessionKeys.GetMerchantIdByApiKey(_appDbContext, Guid.Parse(Request.Headers["api_key"])); if (string.IsNullOrEmpty(strMerchantId)) { return(StatusCode(StatusCodes.Status403Forbidden, (new { Status = "Error", Error = "Invalid ApiKey" }))); } var objMerchantPackageDetails = (from mp in _appDbContext.MerchantPackages join mc in _appDbContext.MerchantCampaigns on mp.CampaignID equals mc.Id into DetailsMerchantCampaigns from mc1 in DetailsMerchantCampaigns.DefaultIfEmpty() where (mp.PackageId == Convert.ToInt32(objJson.SelectToken("merchantpackagesid")) && mc1.MerchantId == strMerchantId) select mp); if (objMerchantPackageDetails == null || objMerchantPackageDetails.Count() <= 0) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Package doesn’t exist or Invalid Merchant." }))); } string FileExtension = Path.GetExtension(Convert.ToString(objJson.SelectToken("filename"))); if (FileExtension != ".jpg" && FileExtension != ".jpeg" && FileExtension != ".png" && FileExtension != ".gif") { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Invalid File Type. Upload only - .jpg, .jpeg, .png, .gif." }))); } if (string.IsNullOrEmpty(Convert.ToString(objJson.SelectToken("base64string")))) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Base64string missing." }))); } string strFileName = "PkgImg_" + Convert.ToString(objJson.SelectToken("merchantpackagesid")) + "_" + Convert.ToString(DateTime.UtcNow.Ticks) + FileExtension; string strSavedPath = "MerchantPackagesPictures/" + strFileName; var filePath = Path.Combine(_hostingEnvironment.WebRootPath, strSavedPath); string base64string = Convert.ToString(objJson.SelectToken("base64string")).Replace(" ", "+"); byte[] imageBytes = Convert.FromBase64String(base64string); MemoryStream ms = new MemoryStream(imageBytes, 0, imageBytes.Length); ms.Write(imageBytes, 0, imageBytes.Length); Image image = System.Drawing.Image.FromStream(ms, true); if (ms.Length > ((1000 * 1024) * 5)) { return(StatusCode(StatusCodes.Status401Unauthorized, (new { Status = "Error", Error = "Invalid File size. Upload upto 5 MB image size." }))); } image.Save(filePath); MerchantPackagesPictures objMerchantPackagesPictures = new MerchantPackagesPictures(); objMerchantPackagesPictures.PackageId = Convert.ToInt32(objJson.SelectToken("merchantpackagesid")); objMerchantPackagesPictures.ImageName = strFileName; objMerchantPackagesPictures.AddedDate = DateTime.UtcNow; await _appDbContext.MerchantPackagesPictures.AddAsync(objMerchantPackagesPictures); int returnVal = await _appDbContext.SaveChangesAsync(); if (returnVal > 0) { return(Ok(new { Status = "OK", Detail = "Merchant package picture upload successfully." })); } else { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support" }))); } } catch (Exception ex) { return(StatusCode(StatusCodes.Status500InternalServerError, (new { Status = "Error", Error = "Internal Server error. Please contact customer support", SystemError = ex.Message }))); } }