namespace YLErp.Modules.DicForTranslationModule { public class DicForTranslationService : YLBaseService { public DicForTranslationService(OptUserInfo userInfo) : base(userInfo) { } public void SetWordDictionary(Variety variety) { var dicKey = "Variety_" + variety.id; if (!string.IsNullOrWhiteSpace(variety.VarietyEnName)) { var record = DbContext.dicForTranslation.Where(o => o.Key == dicKey && o.From == variety.VarietyName).FirstOrDefault(); if (record != null) { record.To = variety.VarietyEnName; } else { DbContext.dicForTranslation.Add(new dicForTranslation() { From = variety.VarietyName, Key = dicKey, To = variety.VarietyEnName }); } } if (!string.IsNullOrWhiteSpace(variety.EnUnit)) { var unit = DBModels.Helpers.VarietyHelper.GetTradeUnitSingle(variety.TradeUnit); var record = DbContext.dicForTranslation.Where(o => o.Key == dicKey && o.From == unit).FirstOrDefault(); if (record != null) { record.To = variety.EnUnit = variety.EnUnit; } else { DbContext.dicForTranslation.Add(new dicForTranslation() { From = unit, Key = dicKey, To = variety.EnUnit }); } } DbContext.SaveChanges(); } public void SetWordDictionary(Market market) { var dicKey = "Market_" + market.id; if (!string.IsNullOrWhiteSpace(market.MarketEnName)) { var record = DbContext.dicForTranslation.Where(o => o.Key == dicKey && o.From == market.MarketName).FirstOrDefault(); if (record != null) { record.To = market.MarketEnName; } else { DbContext.dicForTranslation.Add(new dicForTranslation() { From = market.MarketName, Key = dicKey, To = market.MarketEnName }); } } DbContext.SaveChanges(); } public void SetWordDictionary(underlying_manager um) { var dicKey = "Underlying_" + um.id; if (!string.IsNullOrWhiteSpace(um.UnderlyingEnName)) { var record = DbContext.dicForTranslation.Where(o => o.Key == dicKey && o.From == um.UnderlyingName).FirstOrDefault(); if (record != null) { record.To = um.UnderlyingEnName; } else { DbContext.dicForTranslation.Add(new dicForTranslation() { From = um.UnderlyingName, Key = dicKey, To = um.UnderlyingEnName }); } } DbContext.SaveChanges(); } public void GetTransWord(Variety variety) { if (variety == null) { return; } var dicKey = "Variety_" + variety.id; if (!string.IsNullOrWhiteSpace(variety.TradeUnit)) { var unit = DBModels.Helpers.VarietyHelper.GetTradeUnitSingle(variety.TradeUnit); variety.EnUnit = TransWordFromDic(unit, dicKey); } if (!string.IsNullOrWhiteSpace(variety.VarietyName)) { variety.VarietyEnName = TransWordFromDic(variety.VarietyName, dicKey); } } public void GetTransWord(Market market) { if (market == null) { return; } var dicKey = "Market_" + market.id; if (!string.IsNullOrWhiteSpace(market.MarketName)) { market.MarketEnName = TransWordFromDic(market.MarketName, dicKey); } } public void GetTransWord(underlying_manager um) { if (um == null) { return; } var dicKey = "Underlying_" + um.id; if (!string.IsNullOrWhiteSpace(um.UnderlyingName)) { um.UnderlyingEnName = TransWordFromDic(um.UnderlyingName, dicKey); } } private string TransWordFromDic(string CnWord, string Key) { var result = DbContextFactory.GetYLDbContext().dicForTranslation.Where(o => o.From == CnWord && o.Key == Key).FirstOrDefault(); if (result != null) { return result.To; } return ""; } } }