/// <summary> /// 加载三级类通用关键字 /// </summary> /// <returns></returns> //public virtual CommonKeyWords LoadCommonKeyWords(int sysNo) //{ // return keywordDA.LoadCommonKeyWords(sysNo); //} #endregion #region 级类属性关键字(PropertyKeywords) /// <summary> /// 获取三级类别下的属性列表 /// </summary> /// <returns></returns> public virtual List <ECCentral.BizEntity.IM.CategoryProperty> GetPropertyByCategory(int sysNo) { //调用 IM的接口获取属性列表 //IList<ECCentral.BizEntity.IM.CategoryProperty> list = ExternalDomainBroker.GetCategoryPropertyByCategorySysNo(sysNo);//ObjectFactory<ECCentral.Service.IBizInteract.IIMBizInteract>.Instance ECCentral.BizEntity.IM.CategorySetting list = ExternalDomainBroker.GetCategorySetting(sysNo); return(list.CategoryProperties.ToList()); }
public virtual decimal GetCategoryMinGrossMarginRate(ProductInfo product) { CategorySetting setting = ExternalDomainBroker.GetCategorySetting(product.ProductBasicInfo.ProductCategoryInfo.SysNo.Value); return(setting.PrimaryMargin); }
/// <summary> /// /// </summary> /// <param name="product"></param> /// <param name="isPrimary">是否为初级毛利,否的话就是高级毛利</param> /// <returns></returns> public virtual decimal GetStockGrossMarginRate(ProductInfo product, bool isPrimary) { int inStockDays = ExternalDomainBroker.GetInStockDaysByProductSysNo(product.SysNo); CategorySetting cateSetting = ExternalDomainBroker.GetCategorySetting(product.ProductBasicInfo.ProductCategoryInfo.SysNo.Value); MinMarginKPI kpi = new MinMarginKPI(); if (cateSetting.CategoryMinMarginInfo != null && cateSetting.CategoryMinMarginInfo.Margin != null && cateSetting.CategoryMinMarginInfo.Margin.Count() > 0) { if (inStockDays >= 0 && inStockDays <= 30) { kpi = cateSetting.CategoryMinMarginInfo.Margin[MinMarginDays.Thirty]; } if (inStockDays >= 31 && inStockDays <= 60) { kpi = cateSetting.CategoryMinMarginInfo.Margin[MinMarginDays.Sixty]; } if (inStockDays >= 61 && inStockDays <= 90) { kpi = cateSetting.CategoryMinMarginInfo.Margin[MinMarginDays.Ninety]; } if (inStockDays >= 91 && inStockDays <= 120) { kpi = cateSetting.CategoryMinMarginInfo.Margin[MinMarginDays.OneHundredAndTwenty]; } if (inStockDays >= 120 && inStockDays <= 180) { kpi = cateSetting.CategoryMinMarginInfo.Margin[MinMarginDays.OneHundredAndEighty]; } if (inStockDays > 180) { kpi = cateSetting.CategoryMinMarginInfo.Margin[MinMarginDays.Other]; } } else { if (inStockDays >= 0 && inStockDays <= 30) { kpi.MinMargin = 0.05m; kpi.MaxMargin = 0.05m; } if (inStockDays >= 31 && inStockDays <= 180) { kpi.MinMargin = 0.01m; kpi.MaxMargin = 0.01m; } if (inStockDays > 180) { kpi.MinMargin = -0.03m; kpi.MaxMargin = -0.03m; } } if (isPrimary) { return(kpi.MinMargin);//初级毛利率下限 } else { return(kpi.MaxMargin);//高级毛利率下限 } }