系统本来设置了国际化,根据整体系统配置 选择 中英文 进行数据切换,但是客户希望一个单独的地方导出 采用可选语种;
需要临时改变导出的数据语种,所以结合了MDC 实现这个小功能;
//原始语种
Integer languageId = goodsAsk.getLanguageId();
//前端传递的可以配置的语种
Integer configLanguageId = ShiroUtil.getLanguageId();
//临时切换线程语种
MDC.put(PublicConstant.language_id, goodsAsk.getLanguageId().toString());
List<DownloadIngredient> downloadIngredient = ingredientServiceImpl.getDownloadIngredient(ingredientIds);
//恢复原始语种
MDC.put(PublicConstant.language_id, configLanguageId.toString());