完成bi报表导入的controller。
This commit is contained in:
		@@ -2,7 +2,7 @@
 | 
			
		||||
 * @Author: Kane
 | 
			
		||||
 * @Date: 2023-10-08 15:02:15
 | 
			
		||||
 * @LastEditors: Kane
 | 
			
		||||
 * @FilePath: /desktop_archievement_backend/src/main/java/com/cpic/xim/utils/data/TelsalerArchievementData.java
 | 
			
		||||
 * @FilePath: /desktop_archievement_backend/src/main/java/com/cpic/xim/utils/data/ImportBIData.java
 | 
			
		||||
 * @Description: 坐席业绩相关的数据操作方法。
 | 
			
		||||
 * 
 | 
			
		||||
 * Copyright (c) ${2023} by Kane, All Rights Reserved. 
 | 
			
		||||
@@ -26,9 +26,9 @@ import com.cpic.xim.utils.poi.MyPOIUtils;
 | 
			
		||||
/**
 | 
			
		||||
 * 坐席业绩相关的数据操作方法。
 | 
			
		||||
 */
 | 
			
		||||
public class ImportBIData
 | 
			
		||||
public class ImportBIExcelData
 | 
			
		||||
{
 | 
			
		||||
    private static Logger logger = LoggerFactory.getLogger( ImportBIData.class );
 | 
			
		||||
    private static Logger logger = LoggerFactory.getLogger( ImportBIExcelData.class );
 | 
			
		||||
 | 
			
		||||
    /**
 | 
			
		||||
     * 从excel文件读取坐席的车非渗透率数据
 | 
			
		||||
@@ -39,7 +39,7 @@ public class ImportBIData
 | 
			
		||||
     * @throws InvalidFormatException excel单元格格式错误时抛出
 | 
			
		||||
     */
 | 
			
		||||
    public static ArrayList<BITelsalerAttachingRateRecord> importBITelsalerAttachingRateRecordFromXlsx(
 | 
			
		||||
            String filePath, LocalDate summaryDate, boolean hasCaptionRow )
 | 
			
		||||
            String filePath, int SheetIndex, boolean hasCaptionRow )
 | 
			
		||||
            throws IOException, InvalidFormatException
 | 
			
		||||
    {
 | 
			
		||||
        ArrayList<BITelsalerAttachingRateRecord> records = new ArrayList<>( 200 );
 | 
			
		||||
@@ -50,7 +50,7 @@ public class ImportBIData
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            wb = WorkbookFactory.create( new File( filePath ) );
 | 
			
		||||
            sheet = wb.getSheet( "经办" );
 | 
			
		||||
            sheet = wb.getSheetAt(SheetIndex);
 | 
			
		||||
 | 
			
		||||
            for ( Row row : sheet )
 | 
			
		||||
            {
 | 
			
		||||
@@ -95,7 +95,7 @@ public class ImportBIData
 | 
			
		||||
                            MyPOIUtils.getNumbericCellValue( row, 10 );
 | 
			
		||||
 | 
			
		||||
                    BITelsalerAttachingRateRecord record = new BITelsalerAttachingRateRecord(
 | 
			
		||||
                            summaryDate, name, motoPremium, nomotoPremium, motoPremiumProPortion,
 | 
			
		||||
                            LocalDate.now(), name, motoPremium, nomotoPremium, motoPremiumProPortion,
 | 
			
		||||
                            attachingRate, attachingRateChange, customerHandleRateCell,
 | 
			
		||||
                            customerHandleRateChangeCell, noMotoPremiumPerCustomerCell,
 | 
			
		||||
                            noMotoPremiumPerCustomerChangeCell );
 | 
			
		||||
@@ -143,7 +143,7 @@ public class ImportBIData
 | 
			
		||||
     * @return
 | 
			
		||||
     */
 | 
			
		||||
    public static ArrayList<BITelsalerRenewalRateRecord> importBITelsalerRenewalRateFromXlsx(
 | 
			
		||||
            String filePath, String sheetName, boolean hasCaptionRow, LocalDate summaryDate )
 | 
			
		||||
            String filePath, int sheetIndex, boolean hasCaptionRow, LocalDate summaryDate )
 | 
			
		||||
            throws IOException
 | 
			
		||||
    {
 | 
			
		||||
        ArrayList<BITelsalerRenewalRateRecord> records = new ArrayList<>( 200 );
 | 
			
		||||
@@ -154,7 +154,7 @@ public class ImportBIData
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            wb = WorkbookFactory.create( new File( filePath ) );
 | 
			
		||||
            sheet = wb.getSheet( sheetName );
 | 
			
		||||
            sheet = wb.getSheetAt( sheetIndex );
 | 
			
		||||
            int rowIndex = 0;
 | 
			
		||||
 | 
			
		||||
            for ( Row row : sheet )
 | 
			
		||||
@@ -215,7 +215,7 @@ public class ImportBIData
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public static ArrayList<BIDepartmentArchievementRecord> importBIDepartmentArchievementRecords(
 | 
			
		||||
            String filePath, String sheetName, boolean hasCaptionRow ) throws IOException
 | 
			
		||||
            String filePath, int sheetIndex, boolean hasCaptionRow ) throws IOException
 | 
			
		||||
    {
 | 
			
		||||
        ArrayList<BIDepartmentArchievementRecord> records = new ArrayList<>( 5 );
 | 
			
		||||
 | 
			
		||||
@@ -225,7 +225,7 @@ public class ImportBIData
 | 
			
		||||
        {
 | 
			
		||||
            wb = WorkbookFactory.create( new File( filePath ) );
 | 
			
		||||
 | 
			
		||||
            Sheet sheet = wb.getSheet( sheetName );
 | 
			
		||||
            Sheet sheet = wb.getSheetAt( sheetIndex );
 | 
			
		||||
            int rowIndex = 0;
 | 
			
		||||
 | 
			
		||||
            for ( Row row : sheet )
 | 
			
		||||
@@ -1,65 +0,0 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: Kane
 | 
			
		||||
 * @Date: 2023-10-12 00:34:39
 | 
			
		||||
 * @LastEditors: Kane
 | 
			
		||||
 * @FilePath: /desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/dataimport/TelsalerArchievement/ImportTelsalerArchievementController.java
 | 
			
		||||
 * @Description: 
 | 
			
		||||
 * 
 | 
			
		||||
 * Copyright (c) ${2023} by Kane, All Rights Reserved. 
 | 
			
		||||
 */
 | 
			
		||||
package com.cpic.xim.web.controllers.dataimport.TelsalerArchievement;
 | 
			
		||||
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import org.apache.ibatis.session.SqlSession;
 | 
			
		||||
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
 | 
			
		||||
import org.springframework.stereotype.Controller;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMapping;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMethod;
 | 
			
		||||
import com.cpic.xim.mybatis.mapper.ImportBIArchievementDataMapper;
 | 
			
		||||
import com.cpic.xim.mybatis.pojo.BITelsalerAttachingRateRecord;
 | 
			
		||||
import com.cpic.xim.mybatis.utils.MybatisUtils;
 | 
			
		||||
import com.cpic.xim.utils.data.ImportBIData;
 | 
			
		||||
 | 
			
		||||
@Controller
 | 
			
		||||
@RequestMapping(method=RequestMethod.POST, path="/import_telsaler_archievement")
 | 
			
		||||
public class ImportTelsalerArchievementController
 | 
			
		||||
{
 | 
			
		||||
    void importTelsalerAttachingRate()
 | 
			
		||||
    {
 | 
			
		||||
        String filePath = "D:\\develop\\cpicxim\\desktop_task_schedule\\数据\\测试用\\坐席车非渗透.xlsx";
 | 
			
		||||
        SqlSession session = null;
 | 
			
		||||
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            ArrayList<BITelsalerAttachingRateRecord> records = ImportBIData.importBITelsalerAttachingRateRecordFromXlsx( filePath, null,
 | 
			
		||||
                    true );
 | 
			
		||||
            session = MybatisUtils.getSqlSessionBatch();
 | 
			
		||||
            ImportBIArchievementDataMapper mapper =  session.getMapper( ImportBIArchievementDataMapper.class );
 | 
			
		||||
            
 | 
			
		||||
            for ( BITelsalerAttachingRateRecord record : records )
 | 
			
		||||
            {
 | 
			
		||||
                mapper.insertTelsalerAttachingRateDataToDB(record);
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            session.commit();
 | 
			
		||||
 | 
			
		||||
            assert( true );
 | 
			
		||||
        }
 | 
			
		||||
        catch ( IOException error )
 | 
			
		||||
        {
 | 
			
		||||
            assert (false);
 | 
			
		||||
        }
 | 
			
		||||
        catch ( InvalidFormatException error )
 | 
			
		||||
        {
 | 
			
		||||
            assert (false);
 | 
			
		||||
        }
 | 
			
		||||
        catch (Exception error)
 | 
			
		||||
        {
 | 
			
		||||
            if ( session != null)
 | 
			
		||||
            {
 | 
			
		||||
                session.rollback();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,188 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: Kane
 | 
			
		||||
 * @Date: 2023-10-12 00:34:39
 | 
			
		||||
 * @LastEditors: Kane
 | 
			
		||||
 * @FilePath: /desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/dataimport/bi/ImportBIDataController.java
 | 
			
		||||
 * @Description: 
 | 
			
		||||
 * 
 | 
			
		||||
 * Copyright (c) ${2023} by Kane, All Rights Reserved. 
 | 
			
		||||
 */
 | 
			
		||||
package com.cpic.xim.web.controllers.dataimport.bi;
 | 
			
		||||
 | 
			
		||||
import java.io.IOException;
 | 
			
		||||
import java.time.LocalDate;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
import org.apache.ibatis.exceptions.PersistenceException;
 | 
			
		||||
import org.apache.ibatis.session.SqlSession;
 | 
			
		||||
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
 | 
			
		||||
import org.slf4j.Logger;
 | 
			
		||||
import org.slf4j.LoggerFactory;
 | 
			
		||||
import org.springframework.stereotype.Controller;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMapping;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestMethod;
 | 
			
		||||
import org.springframework.web.bind.annotation.RequestParam;
 | 
			
		||||
import org.springframework.web.bind.annotation.ResponseBody;
 | 
			
		||||
import com.cpic.xim.mybatis.mapper.ImportBIArchievementDataMapper;
 | 
			
		||||
import com.cpic.xim.mybatis.pojo.BIDepartmentArchievementRecord;
 | 
			
		||||
import com.cpic.xim.mybatis.pojo.BITelsalerAttachingRateRecord;
 | 
			
		||||
import com.cpic.xim.mybatis.pojo.BITelsalerRenewalRateRecord;
 | 
			
		||||
import com.cpic.xim.mybatis.utils.MybatisUtils;
 | 
			
		||||
import com.cpic.xim.utils.data.ImportBIExcelData;
 | 
			
		||||
import com.cpic.xim.web.controllers.dataimport.bi.ImportBIDataRequest.ReportType;
 | 
			
		||||
 | 
			
		||||
@Controller
 | 
			
		||||
@RequestMapping( method = RequestMethod.POST, path = "/import_bi_data" )
 | 
			
		||||
public class ImportBIDataController
 | 
			
		||||
{
 | 
			
		||||
    private static Logger logger = LoggerFactory.getLogger( ImportBIDataRequest.class );
 | 
			
		||||
 | 
			
		||||
    @RequestMapping( method = RequestMethod.POST, path = "" )
 | 
			
		||||
    @ResponseBody
 | 
			
		||||
    public static ImportBIDataResponse importBIData( @RequestParam ImportBIDataRequest request )
 | 
			
		||||
    {
 | 
			
		||||
        ImportBIDataResponse response = new ImportBIDataResponse();
 | 
			
		||||
        String filePath = request.getFilePath();
 | 
			
		||||
        ReportType type = request.getReportType();
 | 
			
		||||
        boolean hasCaption = request.isHasCaption();
 | 
			
		||||
        int sheetIndex = request.getSheetIndex();
 | 
			
		||||
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            if ( type == ReportType.TelsalerAttachingRateReport )
 | 
			
		||||
            {
 | 
			
		||||
                importBITelsalerAttachingRate( filePath, sheetIndex, hasCaption );
 | 
			
		||||
            }
 | 
			
		||||
            else if ( type == ReportType.TelsalerRenewalRateReport )
 | 
			
		||||
            {
 | 
			
		||||
                importBITeslsalerRenewalRate( filePath, sheetIndex, hasCaption );
 | 
			
		||||
            }
 | 
			
		||||
            else if ( type == ReportType.DepartmentAttachingRenewalRateReport )
 | 
			
		||||
            {
 | 
			
		||||
                importBIDepartmentArchievement( filePath, sheetIndex, hasCaption );
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
        catch ( IOException error )
 | 
			
		||||
        {
 | 
			
		||||
            String message = "";
 | 
			
		||||
            response.setSuccess( false );
 | 
			
		||||
            response.setMessage( message );
 | 
			
		||||
        }
 | 
			
		||||
        catch ( InvalidFormatException error )
 | 
			
		||||
        {
 | 
			
		||||
            String message = "";
 | 
			
		||||
            response.setSuccess( false );
 | 
			
		||||
            response.setMessage( message );
 | 
			
		||||
        }
 | 
			
		||||
        catch ( PersistenceException error )
 | 
			
		||||
        {
 | 
			
		||||
            String message = "";
 | 
			
		||||
            response.setSuccess( false );
 | 
			
		||||
            response.setMessage( message );
 | 
			
		||||
        }
 | 
			
		||||
 | 
			
		||||
        return response;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void importBITelsalerAttachingRate( String filePath, int sheetIndex,
 | 
			
		||||
            boolean hasCaption ) throws PersistenceException, IOException, InvalidFormatException
 | 
			
		||||
    {
 | 
			
		||||
        SqlSession session = null;
 | 
			
		||||
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            ArrayList<BITelsalerAttachingRateRecord> records =
 | 
			
		||||
                    ImportBIExcelData.importBITelsalerAttachingRateRecordFromXlsx( filePath,
 | 
			
		||||
                            sheetIndex, hasCaption );
 | 
			
		||||
 | 
			
		||||
            session = MybatisUtils.getSqlSessionBatch();
 | 
			
		||||
            ImportBIArchievementDataMapper mapper =
 | 
			
		||||
                    session.getMapper( ImportBIArchievementDataMapper.class );
 | 
			
		||||
 | 
			
		||||
            mapper.cleanTelsalerAttachingRateData();
 | 
			
		||||
 | 
			
		||||
            for ( BITelsalerAttachingRateRecord record : records )
 | 
			
		||||
            {
 | 
			
		||||
                mapper.insertTelsalerAttachingRateDataToDB( record );
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            session.commit();
 | 
			
		||||
        }
 | 
			
		||||
        catch ( Exception error )
 | 
			
		||||
        {
 | 
			
		||||
            if ( session != null )
 | 
			
		||||
            {
 | 
			
		||||
                session.rollback();
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            throw error;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void importBITeslsalerRenewalRate( String filePath, int sheetIndex,
 | 
			
		||||
            boolean hasCaption ) throws PersistenceException, IOException, InvalidFormatException
 | 
			
		||||
    {
 | 
			
		||||
        ArrayList<BITelsalerRenewalRateRecord> records = null;
 | 
			
		||||
        SqlSession session = null;
 | 
			
		||||
        ImportBIArchievementDataMapper mapper = null;
 | 
			
		||||
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            records = ImportBIExcelData.importBITelsalerRenewalRateFromXlsx( filePath, sheetIndex,
 | 
			
		||||
                    hasCaption, LocalDate.now() );
 | 
			
		||||
 | 
			
		||||
            session = MybatisUtils.getSqlSessionBatch();
 | 
			
		||||
            mapper = session.getMapper( ImportBIArchievementDataMapper.class );
 | 
			
		||||
 | 
			
		||||
            // 清理数据
 | 
			
		||||
            mapper.cleanTelsalerRenewalRateData();
 | 
			
		||||
 | 
			
		||||
            for ( BITelsalerRenewalRateRecord record : records )
 | 
			
		||||
            {
 | 
			
		||||
                mapper.insertTelsalerRenewalRateDataToDB( record );
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            session.commit();
 | 
			
		||||
        }
 | 
			
		||||
        catch ( Exception error )
 | 
			
		||||
        {
 | 
			
		||||
            if ( session != null )
 | 
			
		||||
            {
 | 
			
		||||
                session.rollback();
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            throw error;
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    private static void importBIDepartmentArchievement( String filePath, int sheetIndex,
 | 
			
		||||
            boolean hasCaption ) throws PersistenceException, IOException, InvalidFormatException
 | 
			
		||||
    {
 | 
			
		||||
        ArrayList<BIDepartmentArchievementRecord> records = null;
 | 
			
		||||
        SqlSession session = null;
 | 
			
		||||
        ImportBIArchievementDataMapper mapper = null;
 | 
			
		||||
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            records = ImportBIExcelData.importBIDepartmentArchievementRecords( filePath, sheetIndex,
 | 
			
		||||
                    hasCaption );
 | 
			
		||||
            session = MybatisUtils.getSqlSessionBatch();
 | 
			
		||||
            mapper = session.getMapper( ImportBIArchievementDataMapper.class );
 | 
			
		||||
 | 
			
		||||
            mapper.cleanDepartmentAttachingRenewalRateData();
 | 
			
		||||
 | 
			
		||||
            for ( BIDepartmentArchievementRecord record : records )
 | 
			
		||||
            {
 | 
			
		||||
                mapper.insertDepartmentAttachingRenewalRateDataToDB( record );
 | 
			
		||||
            }
 | 
			
		||||
 | 
			
		||||
            session.commit();
 | 
			
		||||
        }
 | 
			
		||||
        catch ( Exception error )
 | 
			
		||||
        {
 | 
			
		||||
            if ( session != null )
 | 
			
		||||
            {
 | 
			
		||||
                session.rollback();
 | 
			
		||||
            }
 | 
			
		||||
        }
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,127 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: Kane
 | 
			
		||||
 * @Date: 2023-10-13 14:39:06
 | 
			
		||||
 * @LastEditors: Kane
 | 
			
		||||
 * @FilePath: /desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/dataimport/bi/ImportBIDataRequest.java
 | 
			
		||||
 * @Description: 
 | 
			
		||||
 * 
 | 
			
		||||
 * Copyright (c) ${2023} by Kane, All Rights Reserved. 
 | 
			
		||||
 */
 | 
			
		||||
package com.cpic.xim.web.controllers.dataimport.bi;
 | 
			
		||||
 | 
			
		||||
import org.springframework.stereotype.Controller;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonProperty;
 | 
			
		||||
 | 
			
		||||
@Controller
 | 
			
		||||
public class ImportBIDataRequest
 | 
			
		||||
{
 | 
			
		||||
    public enum ReportType {
 | 
			
		||||
        TelsalerAttachingRateReport, TelsalerRenewalRateReport, DepartmentAttachingRenewalRateReport
 | 
			
		||||
    };
 | 
			
		||||
 | 
			
		||||
    // 导入文件的路径
 | 
			
		||||
    @JsonProperty( "filePath" )
 | 
			
		||||
    private String filePath;
 | 
			
		||||
 | 
			
		||||
    // 报表名称
 | 
			
		||||
    @JsonProperty( "reportType" )
 | 
			
		||||
    private ReportType reportType;
 | 
			
		||||
 | 
			
		||||
    // 是否有标题行
 | 
			
		||||
    @JsonProperty( "hasCaption" )
 | 
			
		||||
    private boolean hasCaption;
 | 
			
		||||
 | 
			
		||||
    // sheet索引
 | 
			
		||||
    @JsonProperty( "sheetIndex" )
 | 
			
		||||
    private int sheetIndex;
 | 
			
		||||
 | 
			
		||||
    public ImportBIDataRequest()
 | 
			
		||||
    {}
 | 
			
		||||
 | 
			
		||||
    public boolean isHasCaption()
 | 
			
		||||
    {
 | 
			
		||||
        return hasCaption;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setHasCaption( boolean hasCaption )
 | 
			
		||||
    {
 | 
			
		||||
        this.hasCaption = hasCaption;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public int getSheetIndex()
 | 
			
		||||
    {
 | 
			
		||||
        return sheetIndex;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setSheetIndex( int sheetIndex )
 | 
			
		||||
    {
 | 
			
		||||
        this.sheetIndex = sheetIndex;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public String getFilePath()
 | 
			
		||||
    {
 | 
			
		||||
        return filePath;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setFilePath( String filePath )
 | 
			
		||||
    {
 | 
			
		||||
        this.filePath = filePath;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public ReportType getReportType()
 | 
			
		||||
    {
 | 
			
		||||
        return reportType;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setReportType( ReportType reportType )
 | 
			
		||||
    {
 | 
			
		||||
        this.reportType = reportType;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public int hashCode()
 | 
			
		||||
    {
 | 
			
		||||
        final int prime = 31;
 | 
			
		||||
        int result = 1;
 | 
			
		||||
        result = prime * result + ((filePath == null) ? 0 : filePath.hashCode());
 | 
			
		||||
        result = prime * result + ((reportType == null) ? 0 : reportType.hashCode());
 | 
			
		||||
        result = prime * result + (hasCaption ? 1231 : 1237);
 | 
			
		||||
        result = prime * result + sheetIndex;
 | 
			
		||||
        return result;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean equals( Object obj )
 | 
			
		||||
    {
 | 
			
		||||
        if ( this == obj )
 | 
			
		||||
            return true;
 | 
			
		||||
        if ( obj == null )
 | 
			
		||||
            return false;
 | 
			
		||||
        if ( getClass() != obj.getClass() )
 | 
			
		||||
            return false;
 | 
			
		||||
        ImportBIDataRequest other = (ImportBIDataRequest) obj;
 | 
			
		||||
        if ( filePath == null )
 | 
			
		||||
        {
 | 
			
		||||
            if ( other.filePath != null )
 | 
			
		||||
                return false;
 | 
			
		||||
        }
 | 
			
		||||
        else if ( !filePath.equals( other.filePath ) )
 | 
			
		||||
            return false;
 | 
			
		||||
        if ( reportType != other.reportType )
 | 
			
		||||
            return false;
 | 
			
		||||
        if ( hasCaption != other.hasCaption )
 | 
			
		||||
            return false;
 | 
			
		||||
        if ( sheetIndex != other.sheetIndex )
 | 
			
		||||
            return false;
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public String toString()
 | 
			
		||||
    {
 | 
			
		||||
        return "ImportBIDataRequest [filePath=" + filePath + ", reportType=" + reportType
 | 
			
		||||
                + ", hasCaption=" + hasCaption + ", sheetIndex=" + sheetIndex + "]";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
}
 | 
			
		||||
@@ -0,0 +1,78 @@
 | 
			
		||||
/*
 | 
			
		||||
 * @Author: Kane
 | 
			
		||||
 * @Date: 2023-10-13 14:39:58
 | 
			
		||||
 * @LastEditors: Kane
 | 
			
		||||
 * @FilePath: /desktop_archievement_backend/src/main/java/com/cpic/xim/web/controllers/dataimport/bi/ImportBIDataResponse.java
 | 
			
		||||
 * @Description: 
 | 
			
		||||
 * 
 | 
			
		||||
 * Copyright (c) ${2023} by Kane, All Rights Reserved. 
 | 
			
		||||
 */
 | 
			
		||||
package com.cpic.xim.web.controllers.dataimport.bi;
 | 
			
		||||
 | 
			
		||||
import com.cpic.xim.web.controllers.QueryResponse;
 | 
			
		||||
import com.fasterxml.jackson.annotation.JsonProperty;
 | 
			
		||||
 | 
			
		||||
public class ImportBIDataResponse extends QueryResponse
 | 
			
		||||
{
 | 
			
		||||
    // 导入数量
 | 
			
		||||
    @JsonProperty( "importedCount" )
 | 
			
		||||
    int importedCount;
 | 
			
		||||
 | 
			
		||||
    public ImportBIDataResponse()
 | 
			
		||||
    {
 | 
			
		||||
        super();
 | 
			
		||||
 | 
			
		||||
        importedCount = 0;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public ImportBIDataResponse( boolean success, String message, int importedCount )
 | 
			
		||||
    {
 | 
			
		||||
        super( success, message );
 | 
			
		||||
        this.importedCount = importedCount;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public ImportBIDataResponse( int importedCount )
 | 
			
		||||
    {
 | 
			
		||||
        this.importedCount = importedCount;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public String toString()
 | 
			
		||||
    {
 | 
			
		||||
        return "ImportBIDataResponse [importedCount=" + importedCount + "]";
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public int hashCode()
 | 
			
		||||
    {
 | 
			
		||||
        final int prime = 31;
 | 
			
		||||
        int result = super.hashCode();
 | 
			
		||||
        result = prime * result + importedCount;
 | 
			
		||||
        return result;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    @Override
 | 
			
		||||
    public boolean equals( Object obj )
 | 
			
		||||
    {
 | 
			
		||||
        if ( this == obj )
 | 
			
		||||
            return true;
 | 
			
		||||
        if ( !super.equals( obj ) )
 | 
			
		||||
            return false;
 | 
			
		||||
        if ( getClass() != obj.getClass() )
 | 
			
		||||
            return false;
 | 
			
		||||
        ImportBIDataResponse other = (ImportBIDataResponse) obj;
 | 
			
		||||
        if ( importedCount != other.importedCount )
 | 
			
		||||
            return false;
 | 
			
		||||
        return true;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public int getImportedCount()
 | 
			
		||||
    {
 | 
			
		||||
        return importedCount;
 | 
			
		||||
    }
 | 
			
		||||
 | 
			
		||||
    public void setImportedCount( int importedCount )
 | 
			
		||||
    {
 | 
			
		||||
        this.importedCount = importedCount;
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
@@ -15,7 +15,7 @@ import org.junit.Test;
 | 
			
		||||
import com.cpic.xim.mybatis.mapper.ImportBIArchievementDataMapper;
 | 
			
		||||
import com.cpic.xim.mybatis.pojo.*;
 | 
			
		||||
import com.cpic.xim.mybatis.utils.MybatisUtils;
 | 
			
		||||
import com.cpic.xim.utils.data.ImportBIData;
 | 
			
		||||
import com.cpic.xim.utils.data.ImportBIExcelData;
 | 
			
		||||
import java.util.ArrayList;
 | 
			
		||||
 | 
			
		||||
public class BatchInsertTest
 | 
			
		||||
@@ -30,7 +30,7 @@ public class BatchInsertTest
 | 
			
		||||
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            records = ImportBIData.importBITelsalerAttachingRateRecordFromXlsx( filePath, null,
 | 
			
		||||
            records = ImportBIExcelData.importBITelsalerAttachingRateRecordFromXlsx( filePath, 0,
 | 
			
		||||
                    true );
 | 
			
		||||
            session = MybatisUtils.getSqlSessionBatch();
 | 
			
		||||
            mapper = session.getMapper( ImportBIArchievementDataMapper.class );
 | 
			
		||||
@@ -73,7 +73,7 @@ public class BatchInsertTest
 | 
			
		||||
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            records = ImportBIData.importBITelsalerRenewalRateFromXlsx( filePath, sheetName, true,
 | 
			
		||||
            records = ImportBIExcelData.importBITelsalerRenewalRateFromXlsx( filePath, 0, true,
 | 
			
		||||
                    null );
 | 
			
		||||
 | 
			
		||||
            session = MybatisUtils.getSqlSessionBatch();
 | 
			
		||||
@@ -116,7 +116,7 @@ public class BatchInsertTest
 | 
			
		||||
        try
 | 
			
		||||
        {
 | 
			
		||||
            records =
 | 
			
		||||
                    ImportBIData.importBIDepartmentArchievementRecords( filePath, sheetName, true );
 | 
			
		||||
                    ImportBIExcelData.importBIDepartmentArchievementRecords( filePath, 0, true );
 | 
			
		||||
            session = MybatisUtils.getSqlSessionBatch();
 | 
			
		||||
            mapper = session.getMapper( ImportBIArchievementDataMapper.class );
 | 
			
		||||
            
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user