292 lines
11 KiB
Plaintext
292 lines
11 KiB
Plaintext
|
|
@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>
|
|||
|
|
.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: #0c215d;
|
|||
|
|
color: #fff;
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.main-page .right {
|
|||
|
|
width: 85%;
|
|||
|
|
height: 800px;
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
.main-page .content {
|
|||
|
|
position: relative;
|
|||
|
|
overflow: hidden;
|
|||
|
|
}
|
|||
|
|
.contentNew {
|
|||
|
|
border:none;
|
|||
|
|
}
|
|||
|
|
.youhuiNew {
|
|||
|
|
font-size:14px;
|
|||
|
|
border:none;
|
|||
|
|
text-align:center;
|
|||
|
|
padding:5px 0;
|
|||
|
|
color:red;
|
|||
|
|
}
|
|||
|
|
.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 stepOne packagebox" id="@("box"+item.Product.Id)">
|
|||
|
|
<div class="container bg_taocan">
|
|||
|
|
<div class="row">
|
|||
|
|
<div class="col-lg-3 text-center photo">
|
|||
|
|
<div class="photoK">
|
|||
|
|
@*<img src="/@item.Product.Image">*@
|
|||
|
|
<p>@item.Product.Name</p>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<div class="col-lg-6 intro">
|
|||
|
|
<p>@item.Product.Name</p>
|
|||
|
|
@foreach (var str in item.Product.ContentLine)
|
|||
|
|
{
|
|||
|
|
<p>·@str</p>
|
|||
|
|
}
|
|||
|
|
</div>
|
|||
|
|
<div class="col-lg-3 text-center twoButton">
|
|||
|
|
@if (user == null)
|
|||
|
|
{
|
|||
|
|
<p><button type="button" class="btn btn-warning testLogin" a-productId="@item.Product.Id">免费试用</button></p>
|
|||
|
|
<p><button type="button" class="btn btn-warning reBuy">续费通道</button></p>
|
|||
|
|
}
|
|||
|
|
else
|
|||
|
|
{
|
|||
|
|
<p>
|
|||
|
|
<a asp-action="test" asp-controller="product" asp-route-id="@item.Product.Id"><button type="button" class="btn btn-warning">免费试用</button></a>
|
|||
|
|
</p>
|
|||
|
|
<p>
|
|||
|
|
<a asp-action="myaccounts" asp-controller="user"><button type="button" class="btn btn-warning">续费通道</button></a>
|
|||
|
|
</p>
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
</div>
|
|||
|
|
<p class="text-center nameSmall">—<span>@item.Product.Name</span>—</p>
|
|||
|
|
<div class="card">
|
|||
|
|
@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 class="tianka">@package.Name</p>
|
|||
|
|
<p><span class="price">@package.Price</span>元</p>
|
|||
|
|
<p class="yuanjia">原价:<span>@package.LinePrice</span>元</p>
|
|||
|
|
<p>@(package.DayPrice)元/天</p>
|
|||
|
|
<p class="qixian">@package.Profile</p>
|
|||
|
|
<img src="~/img/check.png" class="cardCheck">
|
|||
|
|
</div>
|
|||
|
|
}
|
|||
|
|
</div>
|
|||
|
|
<p class="youhuiNew mtop">需求5个以上,可以联系客服设置优惠价</p>
|
|||
|
|
<p class="youhuiNew">温馨提示:若您之前享优惠价,请联系客服帮你改价哦</p>
|
|||
|
|
|
|||
|
|
@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>*@
|
|||
|
|
}
|