多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
## 翻译字段 对应的需求描述 需求描述:有一些数据比如客户,机构,币种,账户册等数据同样希望能跟字典字段一样,在excel中填写显示值,然后程序中自动翻译成真实值。这些数据需要翻译却不能做成字典,对于这种情况,实施人员可以考虑配置翻译字段 配置例子 ![](https://box.kancloud.cn/535a87a8793f16477d8548692e660cb8_612x597.png) 该字段配置完成后要补充相应的代码完成翻译的逻辑,以下为补充代码范例: 在上面的例子中C_CALLBACK配置的为orgService则 ![](https://box.kancloud.cn/d9b4bb64bf5076947ec6dbc333031988_554x327.png) 实现ImportFieldCallBack接口需要实现三个方法,以下为范例: //该方法默认返回true即可 @Override public boolean isImplemented(int method) { return true; } //该方法查询并返回一个map用于excel中的下拉选择 @Override public Map<String, String> exportOptions(Map extraMap) { List<Org> list = baseMapper.selectList(null); Map<String, String> map = new HashMap<String, String>(); for (Org model : list) { map.put(model.getCorgno(), model.getCorgname()); } return map; } //该方法用于在导入的时候翻译excel中的显示值 @Override public String getValue(Map row, Map column, Map exinput, Map subvalues, Map keyvalues) throws BaseException { String value = row.get("机构").toString(); Org Org = new Org(); Org.setCorgname(value); Org model = baseMapper.selectOne(Org); if (model != null) { return model.getCorgno(); } return null; } ![](https://box.kancloud.cn/832eec932b94fa314963dbe11d0d0007_554x240.png) 配置效果 配置完字段,并且补充相应的代码后,excel模板中会出现下拉框,并且程序在导入的时候会根据补充代码的逻辑翻译导入的数据。 ![](https://box.kancloud.cn/b8a0148bd8134c8c6b2cbd12c8180f60_554x259.png) ![](https://box.kancloud.cn/0b1c8dcf426ced7c8fcf0d01bec58b63_554x275.png)