123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293 |
- const config = require("../etc/config.json");
- const helper = require("../src/helper");
- const HttpClient = require("../src/HttpClient");
- const redis_help = require('../src/use_redis');
- const mysql = require('mysql2/promise');
- const tools = require("../tools");
- const get_fq_book_tab_controllers = require("../src/data_manager/Controllers/get_fq_book_tab_controllers");
- const dbConfig = config.isDebug?config.debug_mysql:config.release_mysql
- const CMD = {}
- function getCodeFromUrl(url) {
- const codeMatch = url.match(/code=([^&]+)/);
- if (codeMatch && codeMatch[1]) {
- return codeMatch[1];
- }
- return null;
- }
- async function processTask(){
- let connection = null
- let status = 0
- try{
- const today = helper.getLocalDate();
- let date = today.replace(/-/g, '');
- let table_name = `qm_iap_lib`;
- // 创建数据库连接
- connection = await mysql.createConnection({
- ...dbConfig,
- multipleStatements: true
- });
- // 检查表是否存在
- const [tableCheck] = await connection.execute(
- `SELECT TABLE_NAME
- FROM information_schema.tables
- WHERE TABLE_SCHEMA = ? AND TABLE_NAME = ?`,
- [dbConfig.database, table_name]
- );
- if (tableCheck.length === 0) {
- // 表不存在
- console.error(`表 ${table_name} 不存在`);
- throw new Error(`表 ${table_name} 不存在`);
- } else {
- const [rows] = await connection.execute(
- `SELECT * FROM ${table_name} WHERE is_have_iaa = -1 LIMIT 100`
- );
-
- if(rows.length<=0){
- throw -1
- }
- for (let index = 0; index < rows.length; index++) {
- const element = rows[index];
- let iaa_book_info = await require('./src/api/qm_mf/qm_mf_search_book').search_name(element.book_author,element.book_origin_name)
- if(iaa_book_info!=null){
- await connection.execute(
- `UPDATE ${table_name} SET is_have_iaa = 1 , iaa_book_id = ${iaa_book_info.book_id} WHERE book_id = ${element.book_id}`
- );
- }else{
- await connection.execute(
- `UPDATE ${table_name} SET is_have_iaa = 0 WHERE book_id = ${element.book_id}`
- );
- }
- }
- }
-
- }catch(e){
- if(e==-1){
- status = -1
- }
- console.error("processTask error:",e)
- } finally{
- if(status!=-1){
- global.setTimeout(processTask, 1000);
- }else{
- console.log("完成所有定义!")
- }
- if(connection!=null){
- await connection.end();
- }
- }
- }
- CMD.init = async function(){
- redis_help.connect((results)=>{
- if(results){
- processTask();
- }
- })
- }
- CMD.init()
|