content: package com.alibaba.excel.converters.booleanconverter;
  
  import java.math.BigDecimal;
  
  import com.alibaba.excel.converters.Converter;
  import com.alibaba.excel.enums.CellDataTypeEnum;
  import com.alibaba.excel.metadata.GlobalConfiguration;
  import com.alibaba.excel.metadata.data.ReadCellData;
  import com.alibaba.excel.metadata.data.WriteCellData;
  import com.alibaba.excel.metadata.property.ExcelContentProperty;
  
  /**
   * Boolean and number converter
   *
   * @author Jiaju Zhuang
   */
  public class BooleanNumberConverter implements Converter<Boolean> {
      @Override
      public Class<?> supportJavaTypeKey() {
          return Boolean.class;
      }
  
      @Override
      public CellDataTypeEnum supportExcelTypeKey() {
          return CellDataTypeEnum.NUMBER;
      }
  
      @Override
      public Boolean convertToJavaData(ReadCellData<?> cellData, ExcelContentProperty contentProperty,
          GlobalConfiguration globalConfiguration) {
          if (BigDecimal.ONE.compareTo(cellData.getNumberValue()) == 0) {
              return Boolean.TRUE;
          }
          return Boolean.FALSE;
      }
  
      @Override
      public WriteCellData<?> convertToExcelData(Boolean value, ExcelContentProperty contentProperty,
          GlobalConfiguration globalConfiguration) {
          if (value) {
              return new WriteCellData<>(BigDecimal.ONE);
          }
          return new WriteCellData<>(BigDecimal.ZERO);
      }
  
  }
  