123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081 |
- //重置推广连接状态
- 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 CMD = {}
- const XLSX = require('xlsx');
- var productIds = []
- var total_num = 0
- function getProductIds(filePath) {
- try {
- // 读取 xlsx 文件
- const workbook = XLSX.readFile(filePath);
-
- // 获取第一个工作表
- const firstSheetName = workbook.SheetNames[0];
- const worksheet = workbook.Sheets[firstSheetName];
-
- // 将工作表转换为 JSON 数组
- const data = XLSX.utils.sheet_to_json(worksheet);
-
- // 提取 product_id 列的所有值
- const productIds = data.map(row => row.product_id);
-
- return productIds;
- } catch (error) {
- console.error('读取文件出错:', error);
- return [];
- }
- }
- async function processTask(){
- if(productIds.length<=0){
- return console.log("完成任务")
- }
- let product_id = productIds.pop()
- let connection = null
- try{
- product_id = product_id.replace(/'/g, '');
- product_id = `"${product_id}"`;
-
- connection = await mysql.createConnection({
- ...taskdbConfig,
- multipleStatements: true
- });
- let sql = ` update video_applet_product set create_at = FROM_UNIXTIME(?/1000) , status = 0 , wait_status = 0 where product_id = ${product_id} AND status = 1 `
- console.log("sql:",sql)
- await connection.execute(
- sql,[Date.now()]
- );
- }catch(e){
- console.error("processTask error:",e)
- } finally{
- if(connection!=null){
- connection.end()
- }
- console.log(`完成任务书籍:${product_id} ,剩余任务共计:${productIds.length}条,一共有任务:${total_num}条`)
- global.setTimeout(processTask, 1000);
- }
- }
- CMD.init = async function(){
- redis_help.connect((results)=>{
- if(results){
- const filePath = './reset_link.xlsx';
- productIds = getProductIds(filePath);
- console.log("productIds:",productIds)
- total_num = productIds.length
- processTask();
- }
- })
- }
- CMD.init()
|