Create view for index campaing and his controller method
This commit is contained in:
parent
46db196633
commit
6a315764a8
@ -3,6 +3,10 @@ namespace Microsoft.eShopOnContainers.WebMVC.Controllers
|
|||||||
using Microsoft.AspNetCore.Authorization;
|
using Microsoft.AspNetCore.Authorization;
|
||||||
using Microsoft.AspNetCore.Mvc;
|
using Microsoft.AspNetCore.Mvc;
|
||||||
using Microsoft.eShopOnContainers.WebMVC.Services;
|
using Microsoft.eShopOnContainers.WebMVC.Services;
|
||||||
|
using Microsoft.eShopOnContainers.WebMVC.ViewModels;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
|
||||||
[Authorize]
|
[Authorize]
|
||||||
public class CampaignsController : Controller
|
public class CampaignsController : Controller
|
||||||
@ -12,10 +16,76 @@ namespace Microsoft.eShopOnContainers.WebMVC.Controllers
|
|||||||
public CampaignsController(ICampaignService campaignService) =>
|
public CampaignsController(ICampaignService campaignService) =>
|
||||||
_campaignService = campaignService;
|
_campaignService = campaignService;
|
||||||
|
|
||||||
public IActionResult Index()
|
public async Task<IActionResult> Index()
|
||||||
{
|
{
|
||||||
var campaignList = _campaignService.GetCampaigns();
|
//var campaignList = await _campaignService.GetCampaigns();
|
||||||
return View();
|
|
||||||
|
var campaignList = new List<Campaign>
|
||||||
|
{
|
||||||
|
new Campaign
|
||||||
|
{
|
||||||
|
Id = 1,
|
||||||
|
Name = "NameTest1",
|
||||||
|
Description = "DescriptionTest1",
|
||||||
|
From = DateTime.Now,
|
||||||
|
To = DateTime.Now.AddDays(7),
|
||||||
|
PictureUri = "http://localhost:5110/api/v1/campaigns/1/pic"
|
||||||
|
},
|
||||||
|
new Campaign
|
||||||
|
{
|
||||||
|
Id = 2,
|
||||||
|
Name = "NameTest2",
|
||||||
|
Description = "DescriptionTest2",
|
||||||
|
From = DateTime.Now,
|
||||||
|
To = DateTime.Now.AddDays(7),
|
||||||
|
PictureUri = "http://localhost:5110/api/v1/campaigns/2/pic"
|
||||||
|
},
|
||||||
|
new Campaign
|
||||||
|
{
|
||||||
|
Id = 3,
|
||||||
|
Name = "NameTest3",
|
||||||
|
Description = "DescriptionTest3",
|
||||||
|
From = DateTime.Now,
|
||||||
|
To = DateTime.Now.AddDays(7),
|
||||||
|
PictureUri = "http://localhost:5110/api/v1/campaigns/3/pic"
|
||||||
|
},
|
||||||
|
new Campaign
|
||||||
|
{
|
||||||
|
Id = 4,
|
||||||
|
Name = "NameTest4",
|
||||||
|
Description = "DescriptionTest4",
|
||||||
|
From = DateTime.Now,
|
||||||
|
To = DateTime.Now.AddDays(7),
|
||||||
|
PictureUri = "http://localhost:5110/api/v1/campaigns/4/pic"
|
||||||
|
},
|
||||||
|
new Campaign
|
||||||
|
{
|
||||||
|
Id = 5,
|
||||||
|
Name = "NameTest5",
|
||||||
|
Description = "DescriptionTest5",
|
||||||
|
From = DateTime.Now,
|
||||||
|
To = DateTime.Now.AddDays(7),
|
||||||
|
PictureUri = "http://localhost:5110/api/v1/campaigns/5/pic"
|
||||||
|
},
|
||||||
|
new Campaign
|
||||||
|
{
|
||||||
|
Id = 6,
|
||||||
|
Name = "NameTest6",
|
||||||
|
Description = "DescriptionTest6",
|
||||||
|
From = DateTime.Now,
|
||||||
|
To = DateTime.Now.AddDays(7),
|
||||||
|
PictureUri = "http://localhost:5110/api/v1/campaigns/6/pic"
|
||||||
|
}
|
||||||
|
};
|
||||||
|
|
||||||
|
return View(campaignList);
|
||||||
|
}
|
||||||
|
|
||||||
|
public async Task<IActionResult> Details(int id)
|
||||||
|
{
|
||||||
|
var campaign = await _campaignService.GetCampaignById(id);
|
||||||
|
|
||||||
|
return View(campaign);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
@ -1,7 +1,36 @@
|
|||||||
|
|
||||||
@{
|
@{
|
||||||
ViewData["Title"] = "Index";
|
ViewData["Title"] = "Campaigns";
|
||||||
|
@model IEnumerable<Campaign>
|
||||||
}
|
}
|
||||||
|
|
||||||
<h2>Index</h2>
|
<section class="esh-campaigns-hero">
|
||||||
|
<div class="container">
|
||||||
|
<img class="esh-campaigns-title" src="~/images/main_banner_text.png" />
|
||||||
|
</div>
|
||||||
|
</section>
|
||||||
|
|
||||||
|
@Html.Partial("_Header", new List<Header>() {
|
||||||
|
new Header() { Controller = "Catalog", Text = "Back to catalog" } })
|
||||||
|
|
||||||
|
<div class="container">
|
||||||
|
<div class="card-group esh-campaigns-items row">
|
||||||
|
@foreach (var campaign in Model ?? Enumerable.Empty<Campaign>())
|
||||||
|
{
|
||||||
|
<div class="esh-campaigns-item col-md-4">
|
||||||
|
<form asp-controller="Campaigns" asp-action="Details" asp-route-id="@campaign.Id">
|
||||||
|
<div class="card-block">
|
||||||
|
<h4 class="card-title esh-campaigns-name">@campaign.Name</h4>
|
||||||
|
<p class="card-text esh-campaigns-description">@campaign.Description</p>
|
||||||
|
<img class="card-img-top esh-campaigns-thumbnail" src="@campaign.PictureUri" alt="@campaign.Name">
|
||||||
|
</div>
|
||||||
|
<div class="card-footer">
|
||||||
|
<small class="text-muted">
|
||||||
|
From @campaign.From.ToString("MMMM dd, yyyy") until @campaign.To.ToString("MMMM dd, yyyy")
|
||||||
|
</small>
|
||||||
|
</div>
|
||||||
|
<input class="esh-campaigns-button" type="submit" value="More details">
|
||||||
|
</form>
|
||||||
|
</div>
|
||||||
|
}
|
||||||
|
</div>
|
||||||
|
</div>
|
Loading…
x
Reference in New Issue
Block a user