12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- //同步黑岩的作者
- const config = require("../etc/config.json");
- const mysql = require('mysql2/promise');
- const taskdbConfig = config.isDebug?config.debug_task_mysql:config.release_task_mysql
- const redis_help = require('../src/use_redis');
- const video_product_controllers = require('../src/data_manager/Controllers/video_product_controllers');
- const helper = require("../src/helper");
- const hy_search_book = require('../src/api/hy/hy_search_book');
- const CMD = {}
- async function processTask(){
- let right_status = true
- let connection = null
- try{
- connection = await mysql.createConnection({
- ...taskdbConfig,
- multipleStatements: true
- });
- let sql = `SELECT * FROM video_product WHERE ( book_platform = ${config.platform_heiyan} or book_platform = ${config.platform_heiyanmf} ) AND author IS NULL LIMIT 5`
- console.log("sql:",sql)
- const [rows] = await connection.execute(
- sql
- );
- if(rows.length<=0){
- throw 0
- }
- for (let index = 0; index < rows.length; index++) {
- let video_product_info = rows[index]
- let data = await hy_search_book.search_id(video_product_info.product_id)
- if(data==undefined||data==null){
- data = null
- }
- if(data!=null){
- if(data.rows==null||data.rows==undefined){
- data = null
- }
- }
-
- if(data!=null){
- if(data.rows.length<=0){
- data = null
- }
- }
- if(data!=null&&data!=""){
- let author = data.rows[0].userName
- await connection.execute(
- ` UPDATE video_product SET author = '${author}' WHERE id = ${video_product_info.id} `
- );
- }else{
- await connection.execute(
- ` UPDATE video_product SET author = 'NONE' WHERE id = ${video_product_info.id} `
- );
- console.error("查无此书:",video_product_info)
- }
- }
- }catch(e){
- if(e==0){
- right_status = false
- }
- console.error("processTask error:",e)
- } finally{
- if(connection!=null){
- connection.end()
- }
- global.setTimeout(processTask, 1000);
- }
- }
- CMD.init = async function(){
- redis_help.connect((results)=>{
- if(results){
- processTask();
- }
- })
- }
- CMD.init()
|