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>

相关推荐
用户5508492902561 分钟前
CSS布局实战:从Flex到Grid的完整避坑指南
前端
用户5508492902562 分钟前
前端接口请求层怎么封装?一个可落地的请求方案
前端
沫璃染墨8 分钟前
《从零入门Linux系统篇(五十七):线程篇·十——生产者消费者模型进阶:从环形缓冲区到POSIX信号量》
linux·运维·服务器·开发语言·c++·系统架构·信号处理
MetWeave15 分钟前
跟着一条 SPECI 走流水线:从电报到界面
前端
专业程序开发源16 分钟前
SSM校园拍摄交流服务平台36936-计算机课程设计、毕业设计
java·spring boot·后端·python·elasticsearch·php·课程设计
用户0942485680318 分钟前
第23章:OpenJDK逃逸分析、标量替换与锁优化
java·jvm
wuminyu20 分钟前
LockStack在虚拟线程Mount和Unmount拷贝过程剖析
java·linux·c语言·jvm·c++
樱花落木兰30 分钟前
分布式登录实战:Session 会话共享改造,Redis 存储用户登录状态
java·javascript·数据库·redis·分布式·缓存
Helix25033 分钟前
Chrome 开发者工具进阶:长截图、网络调试与性能分析
前端·chrome·chrome devtools·使用技巧·性能分析·开发者工具·长截图
HAHAXX837 分钟前
电商RPA批量上架通用方案:一套流程如何同时跑通拼多多、抖店、淘宝和跨境平台
java·运维·rpa