Files
juipnet/Host/Views/Product/Index.cshtml
wanyongkang d318014316 初始提交
2020-10-07 20:25:03 +08:00

308 lines
11 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
@using Hncore.Pass.Vpn.Response.Product
@using Microsoft.Extensions.Configuration
@using Hncore.Pass.BaseInfo.Response
@using Hncore.Infrastructure.Serializer;
@inject IConfiguration m_Configuration
@model List<ProductWithPackageResponse>
@{
ViewData["Title"] = "购买产品";
UserLoginModel user = null;
if (this.Context.Request.Cookies.TryGetValue("userInfo", out string userCookie))
{
user = userCookie.FromJsonTo<UserLoginModel>();
}
var pid = this.Context.Request.Query.ContainsKey("id") ? this.Context.Request.Query["id"].ToString() : "";
var defaultProduct = Model.Select(m => m.Product).FirstOrDefault();
if (pid == "")
{
pid = Model.Select(m => m.Product).FirstOrDefault().Id.ToString();
}
else
{
defaultProduct = Model.Select(m => m.Product).FirstOrDefault(m => m.Id.ToString() == pid);
}
var productPackages = Model.Where(m => m.Product.Id == defaultProduct.Id).FirstOrDefault().Packages.Where(p => p.Status == 1 && p.IsTest == 0);//.Select(m => m.Packages.Where(p => p.Status == 1 && p.IsTest == 0).FirstOrDefault());
var defaultPackage = productPackages.FirstOrDefault();// Model.Where(m => m.Product.Id == defaultProduct.Id).Select(m => m.Packages.FirstOrDefault()).FirstOrDefault();
var baseUrl = m_Configuration["BaseInfoUrl"];
Func<string, string> P = (path) => $"{baseUrl}{path}";
}
<style>
.productName {
font-style: oblique;
font-weight: 400;
font-size: 32px;
color: #f49119;
}
.pkgNameCard {
background: #223da4;
height: 90px;
padding: 15px;
}
.clear {
clear: both;
}
.clearfix:after {
content: ".";
display: block;
visibility: hidden;
height: 0;
clear: both
}
.main-page {
margin: 0 auto;
width: 1170px;
padding-bottom:50px;
}
.main-page .left {
width:15%;
border-right: 1px #ccc solid;
margin-top: 25px;
padding-right:10px;
}
.main-page .left, .main-page .right {
float: left;
}
.main-page .nav-back {
height: 300px;
}
.main-page .nav {
position: relative;
margin-top: -300px;
width: 136px;
text-align: center;
font-size: 18px;
font-family: "微软雅黑";
color: #000;
}
.main-page .nav div {
height: 47px;
line-height: 47px;
margin-bottom: 8px;
border-radius: 2px;
cursor: pointer;
}
.main-page .nav div.on {
background: #223da4;
color: #fff;
}
.main-page .right {
width: 85%;
height: 800px;
}
.main-page .content {
position: relative;
overflow: hidden;
}
.contentNew {
border:none;
}
.youhuiNew {
font-size: 16px;
border: none;
text-align: center;
padding: 10px 0;
color: red;
font-weight: bold;
}
.mtop {
margin-top:30px;
}
</style>
<!-- ad -->
<div class="container-fluid ad">
<a asp-action="taobao" asp-controller="article"> <img src="~/img/acBanner.png"></a>
</div>
@*新布局*@
<p class="text-center tit"><img src="~/img/titi_choose.png"></p>
<div class="main-page">
<div class="left">
<div class="nav-back"></div>
<div class="nav">
@foreach (var item in Model)
{
<div class="productItem" id="@("p"+item.Product.Id)" a-pid="@item.Product.Id" a-pkg-id="@(item.Packages.FirstOrDefault(m=>m.Status==1).Id)">@item.Product.Name</div>
}
</div>
</div>
<div class="right">
<div class="contentNew">
@foreach (var item in Model)
{
<div class="container packagebox" id="@("box"+item.Product.Id)">
<div class="container bg_taocan">
<div class="row" style="background:url(/img/products.png) no-repeat; background-size:100% 100%;">
<div class="col-lg-4" style="height:200px;padding-top:30px;padding-left:50px;">
<p class="productName">@item.Product.Name</p>
<p style=" border-bottom: 2px solid #fff;font-size:16px;">@(string.Join("|",item.Packages.Select(m=>m.Name)))</p>
</div>
<div class="col-lg-8" style="height:200px;padding-top:30px">
@foreach (var str in item.Product.ContentLine)
{
<p>@str</p>
}
<div class="row" style="text-align: right; position: absolute; right: 50px; bottom: 10px;">
@if (user == null)
{
<button type="button" class="btn btn-warning testLogin" a-productId="@item.Product.Id">免费试用</button>
<button type="button" class="btn btn-warning reBuy">续费通道</button>
}
else
{
<a asp-action="test" asp-controller="product" asp-route-id="@item.Product.Id"><button type="button" class="btn btn-warning">免费试用</button></a>
<a asp-action="myaccounts" asp-controller="user"><button type="button" class="btn btn-warning">续费通道</button></a>
}
</div>
</div>
</div>
</div>
@*<p class="text-center nameSmall">—<span>@item.Product.Name</span>—</p>*@
<div class="card" style="margin-top:30px;">
@foreach (var package in item.Packages.Where(m => m.IsTest == 0 && m.Status == 1))
{
<div class="item packageitem" id="@("pkg"+package.Id)" a-pkg-id="@package.Id">
<p><span class="price">@package.Price</span>元</p>
<p class="yuanjia">原价:<span>@package.LinePrice</span>元</p>
<p>@(package.DayPrice)元/天</p>
<div class="pkgNameCard">
<p class="tianka">@package.Name</p>
<p class="qixian">@package.Profile</p>
</div>
<img src="~/img/check.png" class="cardCheck">
</div>
}
</div>
<div style="border: 1px dashed #ccc;margin-top:30px;width:90%;margin-left: 63px;">
<p class="youhuiNew">温馨提示需求5个以上可以联系客服设置优惠价若您之前享优惠价请联系客服帮你改价哦开通后有任何问题可无理由退款</p>
</div>
@if (user == null)
{
<p class="tijiao"><button type="button" class="btn btn-primary login">提交</button></p>
}
else
{
<p class="tijiao"><button type="button" class="btn btn-primary btn-submit">提交</button></p>
}
</div>
}
</div>
</div>
<div class="clear"></div>
</div>
@section Scripts{
<script type="text/javascript">
var currentPkgId = 0;
var testProductId = 0;
function select(id) {
var el = "#p" + id;
var packageBox = "#box" + id;
$(".packagebox").hide();
$(packageBox).show();
$(el).addClass("on");
$(el).siblings().removeClass("on");
var pkgid = $(el).attr("a-pkg-id");
selectPackage(pkgid);
}
function selectPackage(id) {
currentPkgId = id;
var el = "#pkg" + id;
//$(".packageitem").hide();
//$(el).show()
$(el).addClass("kuang");
$(el).siblings().removeClass("kuang");
$(el).find(".cardCheck").show();
$(el).siblings().find(".cardCheck").hide();
}
function loginSuccess(data) {
window.location.href = "Buy?id=" + currentPkgId;
}
function testLoginSuccess(data) {
window.location.href = "Test?id=" + testProductId;
}
function reBuyLoginSuccess(data) {
window.location.href = "/User/MyAccounts";
}
$(function () {
$(".productItem").click(function () {
//$(this).addClass("kuang");
//$(this).siblings().removeClass("kuang");
//$(this).find(".check").show();
//$(this).siblings().find(".check").hide();
var pid = $(this).attr('a-pid');
select(pid);
});
$(".card .item").click(function () {
currentPkgId = $(this).attr('a-pkg-id');
selectPackage(currentPkgId)
//$(this).addClass("kuang");
//$(this).siblings().removeClass("kuang");
//$(this).find(".cardCheck").show();
//$(this).siblings().find(".cardCheck").hide();
})
$(".btn-submit").click(function () {
window.location.href = "Buy?id=" + currentPkgId;
})
$(".testLogin").click(function () {
loginCallback = testLoginSuccess;
testProductId = $(this).attr("a-productId");
$(".mask").show();
$(".main").show();
$(".main").addClass("animated bounceInDown");
});
$(".reBuy").click(function () {
loginCallback = reBuyLoginSuccess;
$(".mask").show();
$(".main").show();
$(".main").addClass("animated bounceInDown");
});
})
select(@defaultProduct.Id)
</script>
@*<script type="text/javascript">
$(".main-page .nav div").mouseenter(function () {
var $this = $(this);
var index = $this.index();
}).mouseleave(function () {
var $this = $(this);
var index = $this.index();
}).click(function () {
var $this = $(this);
var index = $this.index();
var l = -(index * 800);
$(".main-page .nav div").removeClass("on");
$(".main-page .nav div").eq(index).addClass("on");
$(".main-page .content .con-ggh:eq(0)").stop().animate({ "margin-top": l }, 500);
});
</script>*@
}