Excel导入

需要的依赖:

<dependency>
   <groupId>cn.afterturn</groupId>
   <artifactId>easypoi-spring-boot-starter</artifactId>
   <version>4.1.1</version>
</dependency>

根据需要导入的Excel建接收的视图对象

model:

@Data
@ExcelTarget(value = "CompanyImportVo")
public class CompanyImportVo implements Serializable {
    /**
     * 行号
     */
    @Excel(name = "行号")
    private Integer lineNumber;

    /**
     * 公司名称
     */
    @Excel(name="客户名称(必填)")
    private String name;

    /**
     * 统一信用代码
     */
    @Excel(name="统一社会信用代码")
    private String creditCode;

    /**
     * 公司简称
     */
    @Excel(name="公司简称")
    private String shortName;

    /**
     * 英文名称
     */
    @Excel(name="客户名称(英文)")
    private String englishName;

    /**
     * 法人
     */
    @Excel(name = "法人")
    private String legalPerson;

    /**
     * 经营状态(字典)
     */
    private String statusId;

    /**
     * 经营状态编码
     */
    private String statusCode;

    /**
     * 经营状态
     */
    @Excel(name = "经营状态")
    private String statusName;

    /**
     * 成立日期
     */
    @Excel(name = "成立日期")
    private String establishTime;

    /**
     * 客户来源(字典)
     */
    private String sourceId;

    /**
     * 客户来源编码
     */
    private String sourceCode;

    /**
     * 客户来源
     */
    @Excel(name = "客户来源")
    private String sourceName;

    /**
     * 公司类型(字典)
     */
    private String companyTypeId;

    /**
     * 公司类型编码
     */
    private String companyTypeCode;

    /**
     * 公司类型
     */
    @Excel(name = "公司类型")
    private String companyTypeName;

    /**
     * 行业分类(字典)
     */
    private String industryId;

    /**
     * 行业分类编码
     */
    private String industryCode;

    /**
     * 行业分类
     */
    @Excel(name = "所属行业")
    private String industryName;

    /**
     * 注册资本(万元)
     */
    @Excel(name="注册资金(万元)")
    private String capital;

    /**
     * 实缴资本(万元)
     */
    @Excel(name = "实缴资金(万元)")
    private String realCapital;

    /**
     * 营业额范围(字典)
     */
    private String revenueId;

    /**
     * 营业额范围编码
     */
    private String revenueCode;

    /**
     * 营业额范围
     */
    @Excel(name = "营业额")
    private String revenueName;

    /**
     * 经营范围
     */
    @Excel(name="经营范围")
    private String businessRange;

    /**
     * 办公传真
     */
    @Excel(name="办公传真")
    private String fax;

    /**
     * 电子邮箱
     */
    @Excel(name="邮箱")
    private String email;

    /**
     * 公司网址
     */
    @Excel(name="网站")
    private String website;
}

service:

R importCompanyPublic(MultipartFile file) throws Exception;

serviceImpl:

@Override
public R importCompanyPublic(MultipartFile file) throws Exception {   
  List<CompanyImportVo> list = ExcelImportUtil.importExcel(file.getInputStream(), CompanyImportVo.class, params);
  Company company = new Company();
  BeanUtils.copyProperties(companyImportVo, company);
  for (CompanyImportVo companyImportVo: list ) {
       companyImportVo.setSubmitStatus(CompanyStatusEnum.SAVED.getValue());
       companyImportVo.setSubmitStatusName(CompanyStatusEnum.SAVED.getName());
       companyMapper.insert(company);
   }
return R.ok();
}

controller:

@PostMapping(value = "/import")
@ApiOperation(httpMethod = "POST", value = "客户公池导入")
public R importCompanyPublic(@ApiParam("excel文件") @RequestParam("file") MultipartFile file) {
    if (file.isEmpty()) {
        return R.fail("文件为空");
    }
    try {
        return companyService.importCompanyPublic(file);
    } catch (Exception e) {
        log.error(e.getMessage(), e);
        return R.fail(e.getMessage());
    }
}
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值