java正则匹配文本txt章节字段提取

本文描述了一个服务实现,使用阿里云OSS访问并解析PDF文件中的员工持股绩效考核内容,包括公司和个人业绩考核、摊销成本以及激励对象和解锁计划等信息。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

// 获取近30天 员工持股业绩考核内容为空的数据
        List<OssMetaGqDto> ossMetaList = iOssMetaDataService.selectOssEmployeeStockPathList();
        if (CollectionUtils.isEmpty(ossMetaList)) {
            log.info("未加载到待解析的员工持股草案。");
            return;
        }

        List<EmployeeStockInfo> employeeStockInfoList = Lists.newArrayList();
        List<EmployeeStockUserInfo> employeeStockUserInfoList = Lists.newArrayList();
        List<EmployeeStockUnlockSchedule> employeeStockUnlockScheduleList = Lists.newArrayList();
        for (OssMetaGqDto ossMetaGqDto : ossMetaList) {
            if (ossMetaGqDto == null || StringUtils.isEmpty(ossMetaGqDto.getFilePath())) {
                continue;
            }
            // 读取员工持股草案PDF文件内容
            PdfFileDto pdfFileDto = iAliYunOssDataService.fetchPdfFileDto(ossMetaGqDto.getFilePath());
            if (pdfFileDto == null || CollectionUtils.isEmpty(pdfFileDto.getCatalogMap())
                    || CollectionUtils.isEmpty(pdfFileDto.getChapterContentMap())) {
                continue;
            }
            // 公司业绩考核内容
            String companyAppraisal = employeeStockAppraisalService.fetchCompanyAppraisal(pdfFileDto);
            // 个人业绩考核内容
            String personAppraisal = employeeStockAppraisalService.fetchPersonAppraisal(pdfFileDto);
            // 摊销成本
            BigDecimal amortizedCost = employeeStockAmortizedService.fetchAmortizedCost(pdfFileDto);
            // 解析激励对象
            List<EmployeeStockUserInfo> stockUserInfoList = employeeStockUserService.fetchStockUserList(ossMetaGqDto.getPlanId(), pdfFileDto);
            if (!CollectionUtils.isEmpty(stockUserInfoList)) {
                employeeStockUserInfoList.addAll(stockUserInfoList);
            }
            // 行权解锁
            List<EmployeeStockUnlockSchedule> unlockList = employeeStockUnlockService.fetchUnlockList(ossMetaGqDto.getPlanId(), pdfFileDto);
            if(StringUtils.isNotEmpty(companyAppraisal) || StringUtils.isNotEmpty(personAppraisal) || amortizedCost.intValue() > 0) {
                EmployeeStockInfo employeeStockInfo = EmployeeStockInfo.builder()
                        .id(ossMetaGqDto.getPlanId())
                        .companyAppraisalContent(companyAppraisal)
                        .personalAppraisalContent(personAppraisal)
                        .amortizedCost(amortizedCost)
                        .build();
                employeeStockInfoList.add(employeeStockInfo);
            }
            if (!CollectionUtils.isEmpty(unlockList)) {
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值