Himall商城- web私有方法

目录

[1 Himall商城- web私有方法](#1 Himall商城- web私有方法)

[1.1 /// 订单提交页面,需要展示的数据](#1.1 /// 订单提交页面,需要展示的数据)

[1.1.1 //默认SKU销售价](#1.1.1 //默认SKU销售价)

[1.1.2 //商品批量销售价](#1.1.2 //商品批量销售价)

  1. Himall商城- web私有方法

#region web私有方法

/// <summary>

    1. /// 订单提交页面,需要展示的数据

/// </summary>

static List<CartItemModel> GenerateCartItem(IEnumerable<string> skuIds, IEnumerable<int> counts)

{

int i = 0;

var products = skuIds.Select(item =>

{

var sku = _iProductService.GetSku(item);

var count = counts.ElementAt(i++);

var product = _iProductService.GetProduct(sku.ProductInfo.Id);

var ltmbuy = _iLimitTimeBuyService.GetLimitTimeMarketItemByProductId(sku.ProductInfo.Id);

      1. //默认SKU销售价

var price = sku.SalePrice;

if (ltmbuy != null)

{

if (count > ltmbuy.LimitCountOfThePeople)

throw new HimallException("超过最大限购数量:" + ltmbuy.LimitCountOfThePeople.ToString() + "");

}

else

{

#region 阶梯价--张宇枫

if (product.IsOpenLadder)

{

      1. //商品批量销售价

price = ProductManagerApplication.GetProductLadderPrice(product.Id, count);

}

#endregion

}

if (sku.Stock < count)

{

//throw new HimallException("库存不足");

}

ProductTypeInfo typeInfo = ServiceProvider.Instance<ITypeService>.Create.GetTypeByProductId(sku.ProductInfo.Id);

string colorAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.ColorAlias)) ? SpecificationType.Color.ToDescription() : typeInfo.ColorAlias;

string sizeAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.SizeAlias)) ? SpecificationType.Size.ToDescription() : typeInfo.SizeAlias;

string versionAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.VersionAlias)) ? SpecificationType.Version.ToDescription() : typeInfo.VersionAlias;

string skuDetails = "";

if (!string.IsNullOrWhiteSpace(sku.Size))

{

if (!string.IsNullOrWhiteSpace(skuDetails))

{

skuDetails += "、";

}

skuDetails += sku.Size;

}

if (!string.IsNullOrWhiteSpace(sku.Color))

{

if (!string.IsNullOrWhiteSpace(skuDetails))

{

skuDetails += "、";

}

skuDetails += sku.Color;

}

if (!string.IsNullOrWhiteSpace(sku.Version))

{

if (!string.IsNullOrWhiteSpace(skuDetails))

{

skuDetails += "、";

}

skuDetails += sku.Version;

}

return new CartItemModel()

{

skuId = item,

id = sku.ProductInfo.Id,

imgUrl = Core.HimallIO.GetRomoteProductSizeImage(sku.ProductInfo.RelativePath, 1, (int)(ImageSize.Size_100)),

name = sku.ProductInfo.ProductName,

shopId = sku.ProductInfo.ShopId,

price = ltmbuy == null ? price : (decimal)_iLimitTimeBuyService.GetDetail(item).Price,

count = count,

productCode = sku.ProductInfo.ProductCode,

unit = sku.ProductInfo.MeasureUnit,

size = sku.Size,

color = sku.Color,

version = sku.Version,

skuDetails = skuDetails,

IsSelf = sku.ProductInfo.Himall_Shops.IsSelf,

ColorAlias = colorAlias,

SizeAlias = sizeAlias,

VersionAlias = versionAlias,

IsLimit = ltmbuy != null,

FreightTemplateId = sku.ProductInfo.FreightTemplateId,

IsOpenLadder = sku.ProductInfo.IsOpenLadder

};

}).ToList();

return products;

}

/// <summary>

相关推荐
李剑一4 小时前
前端必看 | Vue 刷新页面,生命周期钩子直接 "罢工",原来问题在这?90% 开发者都栽过!
前端·vue.js
阿丘Akiu4 小时前
Linux部署我的世界服务器
java
无限进步_4 小时前
Linux权限模型:从rwx到粘滞位
linux·运维·服务器
閞杺哋笨小孩4 小时前
域名驱动多租户入驻:后台配置 + 前端解析
前端·vue.js
折哥的程序人生 · 物流技术专研4 小时前
《Java面试85题图解版(二)》进阶深化中篇:Spring核心 + 数据库进阶
java·后端·spring·面试
TeamDev4 小时前
在 Excel 加载项中嵌入 Web 视图
前端·后端·.net
似是燕归来4 小时前
WiFi 模块自动联网自带MQTT协议栈和云服务器串口透传免AT开发
服务器·esp32·wifi模块·mqtt协议
悠哉摸鱼大王4 小时前
cesium学习(一)-基本概念
前端·cesium
LinDaiDai_霖呆呆4 小时前
大白话介绍大模型的一些底层原理,看完终于能跟人聊两句了
前端·人工智能·面试
悠哉摸鱼大王4 小时前
cesium学习(二)-地图地形
前端·cesium