in src/AdminSite/Controllers/OffersController.cs [152:201]
public IActionResult OfferDetails(OfferModel offersData)
{
this.logger.Info(HttpUtility.HtmlEncode($"Offers Controller / OfferDetails: offerGuid {JsonSerializer.Serialize(offersData)}"));
try
{
var currentUserDetail = this.usersRepository.GetPartnerDetailFromEmail(this.CurrentUserEmailAddress);
if (offersData != null && offersData.OfferAttributes != null)
{
// query
var validItems = offersData.OfferAttributes.Where(i => i.IsRemove == false);
foreach (var offerAttribute in validItems)
{
var newOfferAttribute = new OfferAttributes()
{
Id = offerAttribute.AttributeID,
ParameterId = offerAttribute.ParameterId,
DisplayName = offerAttribute.DisplayName,
Description = offerAttribute.Description,
ValueTypeId = offerAttribute.ValueTypeId,
FromList = offerAttribute.FromList,
ValuesList = offerAttribute.ValuesList,
Max = offerAttribute.Max,
Min = offerAttribute.Min,
Type = offerAttribute.Type,
DisplaySequence = offerAttribute.DisplaySequence,
Isactive = offerAttribute.Isactive,
IsRequired = offerAttribute.IsRequired,
IsDelete = offerAttribute.IsDelete,
CreateDate = DateTime.Now,
UserId = currentUserDetail == null ? 0 : currentUserDetail.UserId,
OfferId = offersData.OfferGuid,
};
this.offersAttributeRepository.Add(newOfferAttribute);
}
var valueTypes = this.valueTypesRepository.GetAll().ToList();
this.ViewBag.ValueTypes = new SelectList(valueTypes, "ValueTypeId", "ValueType");
this.TempData["ShowWelcomeScreen"] = "True";
}
this.ModelState.Clear();
return this.RedirectToAction(nameof(this.OfferDetails), new { @offerGuId = offersData.OfferGuid });
}
catch (Exception ex)
{
this.logger.LogError($"Message:{ex.Message} :: {ex.InnerException}");
return this.View("Error", ex);
}
}