package jnpf.base.model.language; import jnpf.model.ExcelColumnAttr; import org.apache.poi.ss.usermodel.IndexedColors; import java.util.*; /** * 多语言导入模型 * * @author JNPF开发平台组 * @version v5.0.0 * @copyright 引迈信息技术有限公司 * @date 2024/6/25 15:31:23 */ public class BaseLangColumn { String excelName = "翻译管理"; Map keyMap = new LinkedHashMap() {{ put("enCode", "翻译标记"); put("type", "翻译分类"); }}; public BaseLangColumn(Map keyMap) { this.keyMap.putAll(keyMap); } /** * 表格名称 * * @return */ public String getExcelName() { return excelName; } /** * 根据类型获取excel表头字段 * * @param type * @return */ public Map getColumnByType(Integer type) { return keyMap; } /** * 获取字段列表 * * @param isError * @return */ public List getFieldsModel(boolean isError) { List models = new ArrayList<>(); //异常原因 if (isError) { ExcelColumnAttr attr = ExcelColumnAttr.builder().key("errorsInfo").name("异常原因").build(); models.add(attr); } List requireFields = Arrays.asList("enCode"); for (String key : keyMap.keySet()) { ExcelColumnAttr attr = ExcelColumnAttr.builder().key(key).name(keyMap.get(key)).build(); if (requireFields.contains(key)) { attr.setRequire(true); attr.setFontColor(IndexedColors.RED.getIndex()); } models.add(attr); } return models; } /** * 获取默认值 */ public List> getDefaultList() { List> list = new ArrayList<>(); Map map = new HashMap<>(); list.add(map); return list; } }