WebpagePrinterTool 2.0
Print a web page skip the browser's print preview
载入中...
搜索中...
未找到
PageRender.h
浏览该文件的文档.
1#pragma once
2#include "../db/SqliteDb.h"
7#include "DataPack.h"
8#include "WebRender.h"
9template <typename T>
13
14 static constexpr STEP step = STEP::PAGE_RENDER;
15
16 public:
17 void work(PrinterDataPack& data_pack) {
18 qDebug()<<step_str[step];
19 CanExceptionCallback callback(
20 [this, &data_pack]() {
21 try {
22 data_pack.page.status = step_str[step];
24 next.work(data_pack);
25 } catch (const SqliteOpError& e) {
26 data_pack.setRespValue(RespError::toJsonObject(data_pack.uid, e.what()));
27 }
28 },
29 [this, &data_pack](const PrintWorkFlowError&) {
31 data_pack.setRespValue(
32 RespError::toJsonObject(data_pack.uid, data_pack.page.error_message));
33 });
34 render.work(&data_pack, callback);
35 }
36};
constexpr std::array< char const *, 5 > step_str
定义 DataPack.h:15
STEP
定义 DataPack.h:14
@ PAGE_RENDER
定义 DataPack.h:14
request response 接口数据格式
定义 CanExceptionCallback.h:4
定义 PageRender.h:10
WebRender render
定义 PageRender.h:12
void work(PrinterDataPack &data_pack)
定义 PageRender.h:17
static constexpr STEP step
定义 PageRender.h:14
T next
定义 PageRender.h:11
定义 PrintWorkFlowError.h:3
static SqliteDb & instance()
定义 SqliteDb.cpp:33
void updatePage(const PrintedPage &) const
update Page
定义 SqliteDb.cpp:317
定义 SqliteOpError.h:6
const char * what() const noexcept override
定义 SqliteOpError.h:18
定义 WebRender.h:13
QString error_message
错误信息
定义 PrintedPage.h:66
QString status
状态 STEP
定义 PrintedPage.h:36
定义 DataPack.h:18
void setRespValue(QJsonObject obj)
定义 DataPack.h:41
PrintedPage page
定义 DataPack.h:20
std::optional< int > uid
定义 DataPack.h:22
static QJsonObject toJsonObject(std::optional< int > uid, const QString &msg)
定义 WebInterface.h:49