|
@@ -41,42 +41,34 @@ function serializeWhere(params) {
|
|
|
};
|
|
|
}
|
|
|
|
|
|
-function serializeUpdate(params) {
|
|
|
- const template = Object.keys(params)
|
|
|
- .map(key => {
|
|
|
- return `${key}=$${key}`;
|
|
|
- })
|
|
|
- .join(",");
|
|
|
- const templateData = {};
|
|
|
- Object.entries(params).map(([key, val]) => {
|
|
|
- templateData[`$${key}`] = val;
|
|
|
- });
|
|
|
-
|
|
|
- return {
|
|
|
- template,
|
|
|
- templateData
|
|
|
- };
|
|
|
-}
|
|
|
+// function serializeUpdate(params) {
|
|
|
+// const template = Object.keys(params)
|
|
|
+// .map(key => {
|
|
|
+// return `${key}=$${key}`;
|
|
|
+// })
|
|
|
+// .join(",");
|
|
|
+// const templateData = {};
|
|
|
+// Object.entries(params).map(([key, val]) => {
|
|
|
+// templateData[`$${key}`] = val;
|
|
|
+// });
|
|
|
+
|
|
|
+// return {
|
|
|
+// template,
|
|
|
+// templateData
|
|
|
+// };
|
|
|
+// }
|
|
|
|
|
|
// scan
|
|
|
function saveUploadInfo(params) {
|
|
|
- const sql = `INSERT INTO scan (examId, examName, subjectId, subjectName, examNumber, studentName, siteCode, roomCode, originImgPath,formalImgPath, sliceImgPath,compressRate,isManual,imageEncrypt,level,clientUserId, clientUsername, clientUserLoginTime, isUpload,createdTime, finishTime) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)`;
|
|
|
+ const sql = `INSERT INTO scan (taskId, taskName, courseCode, courseName, teachingClassName, frontOriginImgPath, versoOriginImgPath, clientUserId, clientUsername, clientUserLoginTime, isUpload,createdTime, finishTime) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)`;
|
|
|
const datas = [
|
|
|
- params.examId,
|
|
|
- params.examName,
|
|
|
- params.subjectId,
|
|
|
- params.subjectName,
|
|
|
- params.examNumber,
|
|
|
- params.studentName,
|
|
|
- params.siteCode,
|
|
|
- params.roomCode,
|
|
|
- params.originImgPath || "",
|
|
|
- params.formalImgPath,
|
|
|
- params.sliceImgPath,
|
|
|
- params.compressRate || 100,
|
|
|
- params.isManual ? 1 : 0,
|
|
|
- params.imageEncrypt,
|
|
|
- params.level,
|
|
|
+ params.taskId,
|
|
|
+ params.taskName,
|
|
|
+ params.courseCode,
|
|
|
+ params.courseName,
|
|
|
+ params.teachingClassName,
|
|
|
+ params.frontOriginImgPath,
|
|
|
+ params.versoOriginImgPath,
|
|
|
params.clientUserId,
|
|
|
params.clientUsername,
|
|
|
params.clientUserLoginTime,
|
|
@@ -132,30 +124,6 @@ function getUploadCount(limitTime) {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
-function getScanCount(limitTime, subjectId) {
|
|
|
- const sql = `SELECT COUNT(DISTINCT examNumber) AS count FROM scan WHERE strftime('%s',createdTime, 'utc') >= '${limitTime}' AND subjectId = '${subjectId}'`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("count list fail!");
|
|
|
-
|
|
|
- resolve(rows[0].count);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function getHistory(limitTime, subjectId) {
|
|
|
- const sql = `SELECT max(id) id, examNumber,studentName name,formalImgPath FROM scan WHERE strftime('%s',createdTime, 'utc') >= '${limitTime}' AND subjectId = '${subjectId}' GROUP BY examNumber ORDER BY id DESC LIMIT 30`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("get list fail!");
|
|
|
-
|
|
|
- resolve(rows);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
function updateUploadState(id) {
|
|
|
const sql = `UPDATE scan SET isUpload=$isUpload,finishTime=$finishTime WHERE id=$id`;
|
|
|
const datas = {
|
|
@@ -172,21 +140,6 @@ function updateUploadState(id) {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
-function updateLocalPaperId(id, paperId) {
|
|
|
- const sql = `UPDATE scan SET paperId=$paperId WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $paperId: paperId,
|
|
|
- $id: id
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("update paperId info fail!");
|
|
|
-
|
|
|
- resolve();
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
function deleteScanById(id) {
|
|
|
const sql = `DELETE FROM scan WHERE id=$id`;
|
|
|
const datas = {
|
|
@@ -252,534 +205,6 @@ function setDict(key, val) {
|
|
|
});
|
|
|
}
|
|
|
|
|
|
-// paper-manage
|
|
|
-function getAreas(subjectId) {
|
|
|
- const sql = `SELECT DISTINCT siteCode from scan WHERE subjectId = '${subjectId}'`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("get list fail!");
|
|
|
- resolve(rows.map(item => item.siteCode));
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function getPaperList({
|
|
|
- examId,
|
|
|
- subjectId,
|
|
|
- areaCode,
|
|
|
- isManual,
|
|
|
- missing,
|
|
|
- sortBy,
|
|
|
- pageNumber,
|
|
|
- pageSize
|
|
|
-}) {
|
|
|
- const orderBy = sortBy === "1" ? "id DESC" : "examNumber ASC";
|
|
|
-
|
|
|
- let options = [];
|
|
|
- if (examId) {
|
|
|
- options.push(`examId = '${examId}'`);
|
|
|
- }
|
|
|
- if (subjectId) {
|
|
|
- options.push(`subjectId = '${subjectId}'`);
|
|
|
- }
|
|
|
- if (areaCode) {
|
|
|
- options.push(`siteCode = '${areaCode}'`);
|
|
|
- }
|
|
|
- if (isManual !== null) {
|
|
|
- options.push(`isManual = ${isManual}`);
|
|
|
- }
|
|
|
- if (missing !== null) {
|
|
|
- options.push(`missing = ${missing}`);
|
|
|
- }
|
|
|
- const optionStr = options.length ? "WHERE " + options.join(" and ") : "";
|
|
|
-
|
|
|
- const condition = `${optionStr} GROUP BY examNumber ORDER BY ${orderBy}`;
|
|
|
- const countSql = `SELECT count(id) count FROM ( SELECT max(id) id FROM scan ${condition})`;
|
|
|
-
|
|
|
- // console.log(countSql);
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(countSql, (err, rows) => {
|
|
|
- if (err) reject("count list fail!");
|
|
|
-
|
|
|
- // console.log(rows);
|
|
|
-
|
|
|
- const total = rows[0].count;
|
|
|
- const offset = (pageNumber - 1) * pageSize;
|
|
|
- const sql = `SELECT max(id) pid, * FROM scan ${condition} LIMIT ${pageSize} OFFSET ${offset}`;
|
|
|
-
|
|
|
- // console.log(sql);
|
|
|
-
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("get list fail!");
|
|
|
- resolve({
|
|
|
- datas: rows,
|
|
|
- pageNumber,
|
|
|
- pageSize,
|
|
|
- total
|
|
|
- });
|
|
|
- });
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function absentLocalPaper(id, missing) {
|
|
|
- const sql = `UPDATE scan SET missing=$missing WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $missing: missing,
|
|
|
- $id: id
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("update absent info fail!");
|
|
|
-
|
|
|
- resolve();
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function saveRotateHistory(params) {
|
|
|
- const sql = `INSERT INTO rotate_history (examId,subjectId,paperId, studentName, examNumber,imageEncrypt,filePath, isUpload,createdTime, finishTime) VALUES (?,?,?,?,?,?,?,?,?,?)`;
|
|
|
- const datas = [
|
|
|
- params.examId,
|
|
|
- params.subjectId,
|
|
|
- params.paperId,
|
|
|
- params.studentName,
|
|
|
- params.examNumber,
|
|
|
- params.imageEncrypt,
|
|
|
- params.filePath,
|
|
|
- 0, // isUpload
|
|
|
- formatDate(), // createdTime
|
|
|
- null
|
|
|
- ];
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.serialize(() => {
|
|
|
- db.run(sql, datas, function(err) {
|
|
|
- if (err) reject(err);
|
|
|
- resolve(this.lastID);
|
|
|
- });
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function getUnfinishRotateHistoryList() {
|
|
|
- const sql = `SELECT * FROM rotate_history WHERE isUpload = 0`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("get history list fail!");
|
|
|
-
|
|
|
- resolve(rows);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function getUnfinishRotateHistoryCount() {
|
|
|
- const sql = `SELECT COUNT(1) AS count FROM rotate_history WHERE isUpload = 0`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("count history list fail!");
|
|
|
-
|
|
|
- resolve(rows[0].count);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function finishRotateHistory(id) {
|
|
|
- const sql = `UPDATE rotate_history SET isUpload=$isUpload,finishTime=$finishTime WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $id: id,
|
|
|
- $isUpload: 1,
|
|
|
- $finishTime: formatDate()
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("update download task info fail!");
|
|
|
-
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-// export data
|
|
|
-function addExportTask(params) {
|
|
|
- const sql = `INSERT INTO export_task (examId, examName,imageType,isWatermark,isResume,nameRule,startScore,endScore,outputDir,savePathRule,isFinish,createdTime,finishTime) VALUES (?,?,?,?,?,?,?,?,?,?,?,?,?)`;
|
|
|
- const datas = [
|
|
|
- params.examId,
|
|
|
- params.examName,
|
|
|
- params.imageType,
|
|
|
- params.isWatermark,
|
|
|
- params.isResume,
|
|
|
- params.nameRule,
|
|
|
- params.startScore,
|
|
|
- params.endScore,
|
|
|
- params.outputDir,
|
|
|
- params.savePathRule,
|
|
|
- 0, // isFinish
|
|
|
- formatDate(), // createdTime
|
|
|
- null
|
|
|
- ];
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, function(err) {
|
|
|
- console.log(err);
|
|
|
- if (err) reject(err);
|
|
|
- resolve(this.lastID);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-/**
|
|
|
- *
|
|
|
- * @param {Array} paramList 参数列表
|
|
|
- */
|
|
|
-function addExportTaskDetail(paramList) {
|
|
|
- const listVals = paramList.map(params => {
|
|
|
- const datas = [
|
|
|
- params.serialNo,
|
|
|
- params.taskId,
|
|
|
- params.examId,
|
|
|
- params.examName,
|
|
|
- params.school,
|
|
|
- params.studentId,
|
|
|
- params.studentName,
|
|
|
- params.subject,
|
|
|
- params.subjectName,
|
|
|
- params.areaCode,
|
|
|
- params.areaName,
|
|
|
- params.examNumber,
|
|
|
- params.score,
|
|
|
- params.url,
|
|
|
- params.filename,
|
|
|
- 0, // isDownload
|
|
|
- formatDate(), // createdTime
|
|
|
- ""
|
|
|
- ];
|
|
|
- const nitem = datas.map(val =>
|
|
|
- typeof val === "string" ? `'${val}'` : val
|
|
|
- );
|
|
|
- return `(${nitem.join(",")})`;
|
|
|
- });
|
|
|
- const vals = listVals.join(",");
|
|
|
-
|
|
|
- const sql = `INSERT INTO export_task_detail (serialNo,taskId, examId, examName,school,studentId,studentName,subject,subjectName,areaCode,areaName,examNumber,score,url,filename,isDownload,createdTime,finishTime) VALUES ${vals}`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, function(err) {
|
|
|
- console.log(err);
|
|
|
- if (err) reject(err);
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function getUnfinishTask() {
|
|
|
- const sql = `SELECT * FROM export_task WHERE isFinish = 0 LIMIT 1;`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("get task fail!");
|
|
|
- resolve(rows[0]);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function getDownloadTaskList(taskId) {
|
|
|
- const sql = `SELECT * FROM export_task_detail WHERE taskId = '${taskId}' and isDownload = 0`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, (err, rows) => {
|
|
|
- if (err) reject("get task list fail!");
|
|
|
-
|
|
|
- resolve(rows);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function getDownloadTaskCount(params) {
|
|
|
- const { where, whereData } = serializeWhere(params);
|
|
|
- const sql = `SELECT COUNT(1) AS count FROM export_task_detail WHERE ${where}`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, whereData, (err, rows) => {
|
|
|
- if (err) reject("count task list fail!");
|
|
|
-
|
|
|
- resolve(rows[0].count);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function updateDownloadTaskDownload(id) {
|
|
|
- const sql = `UPDATE export_task_detail SET isDownload=$isDownload,finishTime=$finishTime WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $id: id,
|
|
|
- $isDownload: 1,
|
|
|
- $finishTime: formatDate()
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("update download task info fail!");
|
|
|
-
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-function updateTaskFinish(id) {
|
|
|
- const sql = `UPDATE export_task SET isFinish=$isFinish,finishTime=$finishTime WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $id: id,
|
|
|
- $isFinish: 1,
|
|
|
- $finishTime: formatDate()
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("update export task info fail!");
|
|
|
-
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-// cropper-task
|
|
|
-export function getCropperTaskList(params) {
|
|
|
- const { where, whereData } = serializeWhere(params);
|
|
|
- let sql = `SELECT * FROM cropper_task`;
|
|
|
- if (where) {
|
|
|
- sql += ` WHERE ${where}`;
|
|
|
- }
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, whereData, (err, rows) => {
|
|
|
- if (err) reject("search task fail!");
|
|
|
- resolve(rows);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function deleteCropperTaskById(id) {
|
|
|
- const sql = `DELETE FROM cropper_task WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $id: id
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("delete cropper-task fail!");
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function deleteCropperTaskDetail(cropperTaskId) {
|
|
|
- const sql = `DELETE FROM cropper_task_detail WHERE cropperTaskId=$cropperTaskId`;
|
|
|
- const datas = {
|
|
|
- $cropperTaskId: cropperTaskId
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("delete cropper-task-detail fail!");
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function addCropperTask(params) {
|
|
|
- const sql = `INSERT INTO cropper_task (name,inputFile,taskCount,finishedCount,createTime,updateTime) VALUES (?,?,?,?,?,?)`;
|
|
|
- const datas = [
|
|
|
- params.name,
|
|
|
- params.inputFile,
|
|
|
- params.taskCount,
|
|
|
- 0,
|
|
|
- formatDate(), // createTime
|
|
|
- ""
|
|
|
- ];
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, function(err) {
|
|
|
- if (err) reject(err);
|
|
|
- resolve(this.lastID);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function updateCropperTask(params) {
|
|
|
- const sql = `UPDATE cropper_task SET name=$name,inputFile=$inputFile,taskCount=$taskCount,finishedCount=$finishedCount,updateTime=$updateTime WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $id: params.id,
|
|
|
- $name: params.name,
|
|
|
- $inputFile: params.inputFile,
|
|
|
- $taskCount: params.taskCount,
|
|
|
- $finishedCount: 0,
|
|
|
- $updateTime: formatDate()
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("update cropper task fail!");
|
|
|
-
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function updateCropperTaskFinishedCount(params) {
|
|
|
- const sql = `UPDATE cropper_task SET finishedCount=$finishedCount,updateTime=$updateTime WHERE id=$id`;
|
|
|
- const datas = {
|
|
|
- $id: params.id,
|
|
|
- $finishedCount: params.finishedCount,
|
|
|
- $updateTime: formatDate()
|
|
|
- };
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, datas, err => {
|
|
|
- if (err) reject("update cropper task count fail!");
|
|
|
-
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function getCropperTaskFinishCount(cropperTaskId) {
|
|
|
- const { where, whereData } = serializeWhere({
|
|
|
- cropperTaskId: cropperTaskId,
|
|
|
- isFinished: 1
|
|
|
- });
|
|
|
- const sql = `SELECT COUNT(1) AS count FROM cropper_task_detail WHERE ${where}`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, whereData, (err, rows) => {
|
|
|
- if (err) reject("count task list fail!");
|
|
|
-
|
|
|
- resolve(rows[0].count);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-/**
|
|
|
- *
|
|
|
-CREATE TABLE "cropper_task" (
|
|
|
- "id" INTEGER NOT NULL,
|
|
|
- "name" TEXT NOT NULL,
|
|
|
- "inputFile" TEXT NOT NULL,
|
|
|
- "taskCount" integer NOT NULL,
|
|
|
- "finishedCount" integer NOT NULL DEFAULT 0,
|
|
|
- "createTime" TEXT NOT NULL,
|
|
|
- "updateTime" TEXT NOT NULL DEFAULT '',
|
|
|
- PRIMARY KEY ("id")
|
|
|
-);
|
|
|
- *
|
|
|
-CREATE TABLE "cropper_task_detail" (
|
|
|
- "id" INTEGER NOT NULL,
|
|
|
- "cropperTaskId" INTEGER NOT NULL,
|
|
|
- "examId" text NOT NULL,
|
|
|
- "paperId" text,
|
|
|
- "subjectId" text NOT NULL,
|
|
|
- "subject" text NOT NULL,
|
|
|
- "subjectName" TEXT,
|
|
|
- "examNumber" text NOT NULL,
|
|
|
- "studentName" TEXT NOT NULL,
|
|
|
- "originImgPath" TEXT,
|
|
|
- "formalImgPath" TEXT,
|
|
|
- "sliceImgPath" TEXT,
|
|
|
- "compressRate" integer NOT NULL DEFAULT 100,
|
|
|
- "imageEncrypt" integer NOT NULL DEFAULT 1,
|
|
|
- "isUpload" integer NOT NULL DEFAULT 0,
|
|
|
- "cropperSet" TEXT,
|
|
|
- "isFinished" integer NOT NULL DEFAULT 0,
|
|
|
- "createTime" TEXT NOT NULL DEFAULT '',
|
|
|
- "updateTime" TEXT NOT NULL DEFAULT '',
|
|
|
- PRIMARY KEY ("id")
|
|
|
-);
|
|
|
- */
|
|
|
-
|
|
|
-export function getCropperTaskDetailList(params, fields = []) {
|
|
|
- const { where, whereData } = serializeWhere(params);
|
|
|
- const fieldCont = fields.length ? fields.join(",") : "*";
|
|
|
- const sql = `SELECT ${fieldCont} FROM cropper_task_detail WHERE ${where}`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, whereData, (err, rows) => {
|
|
|
- if (err) reject("search task detail list fail!");
|
|
|
- resolve(rows);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-/**
|
|
|
- *
|
|
|
- * @param {Array} paramList 参数列表
|
|
|
- */
|
|
|
-export function addCropperTaskDetail(paramList) {
|
|
|
- const listVals = paramList.map(params => {
|
|
|
- const datas = [
|
|
|
- params.cropperTaskId,
|
|
|
- params.examId,
|
|
|
- params.paperId || "",
|
|
|
- params.subjectId,
|
|
|
- params.subject,
|
|
|
- params.subjectName,
|
|
|
- params.examNumber,
|
|
|
- params.studentName,
|
|
|
- params.originImgPath,
|
|
|
- params.formalImgPath,
|
|
|
- params.sliceImgPath,
|
|
|
- params.imageEncrypt,
|
|
|
- 0, // isUpload
|
|
|
- params.cropperSet,
|
|
|
- 0, // isFinished
|
|
|
- formatDate(), // createTime
|
|
|
- ""
|
|
|
- ];
|
|
|
- const nitem = datas.map(val =>
|
|
|
- typeof val === "string" ? `'${val}'` : val
|
|
|
- );
|
|
|
- return `(${nitem.join(",")})`;
|
|
|
- });
|
|
|
- const vals = listVals.join(",");
|
|
|
-
|
|
|
- const sql = `INSERT INTO cropper_task_detail (cropperTaskId,examId,paperId, subjectId,subject,subjectName,examNumber,studentName,originImgPath, formalImgPath,sliceImgPath,imageEncrypt,isUpload,cropperSet,isFinished,createTime,updateTime) VALUES ${vals}`;
|
|
|
- // console.log(sql);
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, function(err) {
|
|
|
- if (err) reject(err);
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function updateCropperTaskDetail(params) {
|
|
|
- if (!params.id) return Promise.reject("id is required");
|
|
|
-
|
|
|
- const id = params.id;
|
|
|
- let paramData = { ...params };
|
|
|
- delete paramData.id;
|
|
|
- const { template, templateData } = serializeUpdate(paramData);
|
|
|
- const sql = `UPDATE cropper_task_detail SET ${template} WHERE id=${id}`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.run(sql, templateData, err => {
|
|
|
- if (err) reject("update cropper task detail fail!");
|
|
|
-
|
|
|
- resolve(true);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
-export function getCropperTaskDetail(cropperTaskDetailId) {
|
|
|
- const { where, whereData } = serializeWhere({
|
|
|
- id: cropperTaskDetailId
|
|
|
- });
|
|
|
- const sql = `SELECT * FROM cropper_task_detail WHERE ${where}`;
|
|
|
-
|
|
|
- return new Promise((resolve, reject) => {
|
|
|
- db.all(sql, whereData, (err, rows) => {
|
|
|
- if (err) reject("search task detail fail!");
|
|
|
- resolve(rows[0]);
|
|
|
- });
|
|
|
- });
|
|
|
-}
|
|
|
-
|
|
|
export default {
|
|
|
init,
|
|
|
// scan
|
|
@@ -787,30 +212,11 @@ export default {
|
|
|
searchUploadList,
|
|
|
countScanList,
|
|
|
getUploadCount,
|
|
|
- getScanCount,
|
|
|
- getHistory,
|
|
|
updateUploadState,
|
|
|
- updateLocalPaperId,
|
|
|
deleteScanById,
|
|
|
// dict
|
|
|
getDict,
|
|
|
setDict,
|
|
|
getAllDict,
|
|
|
- initDict,
|
|
|
- // paper-manage
|
|
|
- getAreas,
|
|
|
- getPaperList,
|
|
|
- absentLocalPaper,
|
|
|
- saveRotateHistory,
|
|
|
- getUnfinishRotateHistoryList,
|
|
|
- finishRotateHistory,
|
|
|
- getUnfinishRotateHistoryCount,
|
|
|
- // export data
|
|
|
- addExportTask,
|
|
|
- addExportTaskDetail,
|
|
|
- getUnfinishTask,
|
|
|
- getDownloadTaskList,
|
|
|
- getDownloadTaskCount,
|
|
|
- updateDownloadTaskDownload,
|
|
|
- updateTaskFinish
|
|
|
+ initDict
|
|
|
};
|