| | |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.deepoove.poi.XWPFTemplate; |
| | | import com.deepoove.poi.config.Configure; |
| | | import com.deepoove.poi.data.TextRenderData; |
| | | import com.deepoove.poi.policy.TextRenderPolicy; |
| | | import com.deepoove.poi.template.run.RunTemplate; |
| | | import com.ruoyi.common.enums.StockInQualifiedRecordTypeEnum; |
| | | import com.ruoyi.common.exception.ServiceException; |
| | | import com.ruoyi.common.utils.DateUtils; |
| | |
| | | import com.ruoyi.stock.service.StockInventoryService; |
| | | import jakarta.servlet.http.HttpServletResponse; |
| | | import lombok.AllArgsConstructor; |
| | | import org.apache.poi.xwpf.usermodel.XWPFRun; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | |
| | | import java.time.LocalDate; |
| | | import java.time.LocalDateTime; |
| | | import java.util.Arrays; |
| | | import java.util.Date; |
| | | import java.util.HashMap; |
| | | import java.util.List; |
| | | import java.util.stream.Collectors; |
| | |
| | | index++; |
| | | } |
| | | InputStream inputStream = this.getClass().getResourceAsStream("/static/report-template.docx"); |
| | | //checkTime为Date类型,默认渲染的是toString(Fri Sep 18 00:00:00 CST 2026),这里单独指定按yyyy-MM-dd输出 |
| | | Configure configure = Configure.builder() |
| | | .bind("paramList", new HackLoopTableRenderPolicy()) |
| | | .bind("inspect.checkTime", (eleTemplate, data, xwpfTemplate) -> { |
| | | XWPFRun run = ((RunTemplate) eleTemplate).getRun(); |
| | | String text = data == null ? "" : DateUtils.parseDateToStr(DateUtils.YYYY_MM_DD, (Date) data); |
| | | TextRenderPolicy.Helper.renderTextRun(run, new TextRenderData(text)); |
| | | }) |
| | | .build(); |
| | | String finalInspectType = inspectType; |
| | | XWPFTemplate template = XWPFTemplate.compile(inputStream, configure).render( |