/// <summary>
 /// 更新类别2的毛利率信息
 /// </summary>
 /// <param name="categoryBasicInfo"></param>
 public virtual void UpdateCategory2MinMargin(CategoryMinMargin categoryBasicInfo)
 {
     if (categoryBasicInfo != null)
     {
         CheckCategorySettingProcessor.CheckCategory2MinMargin(categoryBasicInfo);
         _categoryDA.UpdateCategory2MinMargin(categoryBasicInfo);
     }
 }
 /// <summary>
 /// 保存毛利率信息
 /// </summary>
 /// <param name="categoryBasicInfo"></param>
 /// <returns></returns>
 public virtual CategoryMinMargin UpdateCategoryMinMargin(CategoryMinMargin categoryBasicInfo)
 {
     if (categoryBasicInfo != null)
     {
         CheckCategorySettingProcessor.CheckCategorySettingSysNo(categoryBasicInfo.CategorySysNo);
     }
     CheckCategorySettingProcessor.CheckCategorySettingInfo(categoryBasicInfo);
     return(_categoryDA.UpdateCategoryMinMargin(categoryBasicInfo));
 }
            /// <summary>
            /// 检查三级分类毛利率指标
            /// </summary>
            /// <param name="entity"></param>
            private static void CategoryMinMargin(CategoryMinMargin entity)
            {
                if (entity.Margin == null || entity.Margin.Count == 0)
                {
                    return;
                }
                var minMarginValue =
                    (from p in entity.Margin
                     orderby p.Value.MinMargin descending
                     select(int) p.Key).ToList();

                var minMarginKey =
                    (from p in entity.Margin
                     orderby p.Key ascending
                     select(int) p.Key).ToList();

                var result = ListEquals(minMarginValue, minMarginKey);

                if (!result)
                {
                    throw new BizException(ResouceManager.GetMessageString("IM.CategorySetting", "minMarginIsNull"));
                }

                var maxMarginValue =
                    (from p in entity.Margin
                     orderby p.Value.MaxMargin descending
                     select(int) p.Key).ToList();


                var maxMarginKey =
                    (from p in entity.Margin
                     orderby p.Key ascending
                     select(int) p.Key).ToList();

                //bool result = ListEquals(maxMarginValue, maxMarginKey);


                result = ListEquals(maxMarginValue, maxMarginKey);

                if (!result)
                {
                    throw new BizException(ResouceManager.GetMessageString("IM.CategorySetting", "MaxMarginIsNull"));
                }

                var source = (from p in entity.Margin
                              where p.Value.MinMargin < p.Value.MaxMargin
                              select p.Key).ToList();

                if (source.Count > 0)
                {
                    var desc = source[0].ToEnumDesc();
                    throw new BizException(desc + ResouceManager.GetMessageString("IM.CategorySetting", "MarginIsNull"));
                }
            }
 /// <summary>
 /// 检查类别2的毛利率
 /// </summary>
 /// <param name="minMargin"></param>
 public static void CheckCategory2MinMargin(CategoryMinMargin minMargin)
 {
     CategoryMinMargin(minMargin);
 }
示例#5
0
        /// <summary>
        /// 保存毛利率指标信息
        /// </summary>
        /// <param name="categoryBasicInfo"></param>
        /// <returns></returns>
        public CategoryMinMargin UpdateCategoryMinMargin(CategoryMinMargin categoryBasicInfo)
        {
            DataCommand cmd = DataCommandManager.GetDataCommand("UpdateCategoryMinMargin");

            cmd.SetParameterValue("SysNo", categoryBasicInfo.CategorySysNo);
            cmd.SetParameterValue("@CompanyCode", "8601");
            if (categoryBasicInfo.Margin.ContainsKey(MinMarginDays.Thirty))
            {
                cmd.SetParameterValue("@M1", categoryBasicInfo.Margin[MinMarginDays.Thirty].MinMargin / 100);
                cmd.SetParameterValue("@M1H", categoryBasicInfo.Margin[MinMarginDays.Thirty].MaxMargin / 100);
            }
            else
            {
                cmd.SetParameterValue("@M1", 0);
                cmd.SetParameterValue("@M1H", 0);
            }
            if (categoryBasicInfo.Margin.ContainsKey(MinMarginDays.Sixty))
            {
                cmd.SetParameterValue("@M2", categoryBasicInfo.Margin[MinMarginDays.Sixty].MinMargin / 100);
                cmd.SetParameterValue("@M2H", categoryBasicInfo.Margin[MinMarginDays.Sixty].MaxMargin / 100);
            }
            else
            {
                cmd.SetParameterValue("@M2", 0);
                cmd.SetParameterValue("@M2H", 0);
            }
            if (categoryBasicInfo.Margin.ContainsKey(MinMarginDays.Ninety))
            {
                cmd.SetParameterValue("@M3", categoryBasicInfo.Margin[MinMarginDays.Ninety].MinMargin / 100);
                cmd.SetParameterValue("@M3H", categoryBasicInfo.Margin[MinMarginDays.Ninety].MaxMargin / 100);
            }
            else
            {
                cmd.SetParameterValue("@M3", 0);
                cmd.SetParameterValue("@M3H", 0);
            }
            if (categoryBasicInfo.Margin.ContainsKey(MinMarginDays.OneHundredAndTwenty))
            {
                cmd.SetParameterValue("@M4", categoryBasicInfo.Margin[MinMarginDays.OneHundredAndTwenty].MinMargin / 100);
                cmd.SetParameterValue("@M4H", categoryBasicInfo.Margin[MinMarginDays.OneHundredAndTwenty].MaxMargin / 100);
            }
            else
            {
                cmd.SetParameterValue("@M4", 0);
                cmd.SetParameterValue("@M4H", 0);
            }
            if (categoryBasicInfo.Margin.ContainsKey(MinMarginDays.OneHundredAndEighty))
            {
                cmd.SetParameterValue("@M5", categoryBasicInfo.Margin[MinMarginDays.OneHundredAndEighty].MinMargin / 100);
                cmd.SetParameterValue("@M5H", categoryBasicInfo.Margin[MinMarginDays.OneHundredAndEighty].MaxMargin / 100);
            }
            else
            {
                cmd.SetParameterValue("@M5", 0);
                cmd.SetParameterValue("@M5H", 0);
            }
            if (categoryBasicInfo.Margin.ContainsKey(MinMarginDays.Other))
            {
                cmd.SetParameterValue("@M6", categoryBasicInfo.Margin[MinMarginDays.Other].MinMargin / 100);
                cmd.SetParameterValue("@M6H", categoryBasicInfo.Margin[MinMarginDays.Other].MaxMargin / 100);
            }
            else
            {
                cmd.SetParameterValue("@6", 0);
                cmd.SetParameterValue("@M6H", 0);
            }
            cmd.ExecuteNonQuery();
            return(categoryBasicInfo);
        }
示例#6
0
 /// <summary>
 /// 类别2更新毛利率
 /// </summary>
 /// <param name="categoryBasicInfo"></param>
 public void UpdateCategory2MinMargin(CategoryMinMargin categoryBasicInfo)
 {
     ObjectFactory <CategorySettingProcessor> .Instance.UpdateCategory2MinMargin(categoryBasicInfo);
 }
示例#7
0
        /// <summary>
        /// 保存毛利率信息
        /// </summary>
        /// <param name="categoryBasicInfo"></param>
        /// <returns></returns>
        public CategoryMinMargin UpdateCategoryMinMargin(CategoryMinMargin categoryBasicInfo)
        {
            var result = ObjectFactory <CategorySettingProcessor> .Instance.UpdateCategoryMinMargin(categoryBasicInfo);

            return(result);
        }
示例#8
0
 public void UpdateCategory2MinMargin(CategoryMinMargin categoryBasicInfo)
 {
     ObjectFactory <CategorySettingAppService> .Instance.UpdateCategory2MinMargin(categoryBasicInfo);
 }