public void InsertIniSettingData() { CategorySetting categorySettingState = new CategorySetting { Name = "State" }; _commonBl.InsertCategorySetting(categorySettingState); _commonBl.InsertSetting(new Setting { IdCategorySetting = categorySettingState.Id, Name = "Active" }); _commonBl.InsertSetting(new Setting { IdCategorySetting = categorySettingState.Id, Name = "Inactive" }); CategorySetting categorySettingIdFolder = new CategorySetting { Name = "IdFolder" }; _commonBl.InsertCategorySetting(categorySettingIdFolder); _commonBl.InsertSetting(new Setting { IdCategorySetting = categorySettingIdFolder.Id, Name = "IdProfileFolder", ParamValue = "0ByH61UfQn23nbUdmODZqb2g0WE0" }); _commonBl.InsertSetting(new Setting { IdCategorySetting = categorySettingIdFolder.Id, Name = "IdProfileFolder", ParamValue = "0ByH61UfQn23nTEF1Um1wZFU0QWs" }); _commonBl.InsertSetting(new Setting { IdCategorySetting = categorySettingIdFolder.Id, Name = "ImagesFolder", ParamValue = "0ByH61UfQn23nSUxoaV9UX2tNTWs" }); }
private CategorySetting ParseCategorySetting(string settingString) { settingString = GetValidSettingString(settingString, "CATEGORY"); var split = settingString.Split(','); var categorySetting = new CategorySetting { IsActive = bool.Parse(split[1]), IsCritical = bool.Parse(split[2]), Unlimited = bool.Parse(split[3]), Amount = long.Parse(split[4]), Duration = (Duration)Enum.Parse(typeof(Duration), split[5]) }; return(categorySetting); }
public void InsertCategorySetting(CategorySetting categorySetting) { _repository.InsertCategorySetting(categorySetting); }
public Category(CategorySetting setting = CategorySetting.Default) { Setting = setting; }
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);//高级毛利率下限 } }
public void InsertCategorySetting(CategorySetting categorySetting) { Session.Save(categorySetting); }
public override void ExposeData() { //Verse.Log.Message("Settings. ExposeData()"); if (Scribe.mode == LoadSaveMode.Saving) { // in save mode, it looks like it deletes any // existing keys in the save data // so each 'save' is starting from a blank slate //Verse.Log.Message("Scribe.mode(Saving)"); foreach (KeyValuePair <Category, CategorySetting> kvp in this.Values) { Category cat = kvp.Key; CategorySetting setting = kvp.Value; if (OgreStackMod._DEFAULTS[cat].Mode != setting.Mode || OgreStackMod._DEFAULTS[cat].Value != setting.Value) { string label = cat + "_"; Scribe_Values.Look <MultiplierMode>(ref setting.Mode, label + "Mode"); Scribe_Values.Look <string>(ref setting.Buffer, label + "Value"); //Verse.Log.Message(string.Format("[Save Write] {0}:{1}:{2}", // cat.ToString(), // setting.Mode.ToString(), // setting.Value.ToString() //)); } else { //Verse.Log.Message(string.Format("[Save Skip] {0}:{1}:{2}", // cat.ToString(), // setting.Mode.ToString(), // setting.Value.ToString() //)); } } if (this.IsDebug) { Scribe_Values.Look <bool>(ref this.IsDebug, "IsDebugCSV"); } if (this.DetermineIfModifyStacksIsNeeded()) { this.ReModify(); } this.HashCurrentSettings(); } else { if (!isLoaded) { isLoaded = true; //Verse.Log.Message("Scribe.mode(Loading)"); foreach (Category c in OgreStackMod._DEFAULTS.Keys) { string label = c.ToString() + "_"; MultiplierMode mode = MultiplierMode.Fixed; string value = "0"; // OgreStackMod._DEFAULTS[c].Value; Scribe_Values.Look <MultiplierMode>(ref mode, label + "Mode", MultiplierMode.Fixed); Scribe_Values.Look <string>(ref value, label + "Value"); //if (string.Compare("0", value, true) != 0) if (!string.IsNullOrEmpty(value)) { this.Values[c] = new CategorySetting( mode: mode, buffer: value ); this.Values[c].ParseBuffer(); } else { this.Values[c] = new CategorySetting( mode: OgreStackMod._DEFAULTS[c].Mode, buffer: OgreStackMod._DEFAULTS[c].Value.ToString() ); } } Scribe_Values.Look <bool>(ref this.IsDebug, "IsDebugCSV", false); this.HashCurrentSettings(); } else { //Verse.Log.Message("Scribe.mode(Loading) [SKIP: Already Loaded]"); } } }