const BaseUtil = require('./baseUtils'); const querySql = BaseUtil.querySql; const checkProject = async function(project) { const subProject = await querySql('SELECT * From zh_sub_project where project_id = ?', [project.id]); if (subProject.length === 0) return; const updateData = []; subProject.forEach(x => { if (!x.rela_tender) return; const relaTenderId = x.rela_tender.split(','); relaTenderId.forEach(r => { updateData.push({ id: r, spid: x.id }); }); }); if (updateData.length === 0) return; for (const ud of updateData) { await querySql('UPDATE zh_tender SET spid = ? WHERE id = ?', [ud.spid, ud.id]); } }; const doComplete = async function(project_id) { try { const project = project_id ? await querySql('Select * From zh_project where id = ?', [project_id]) : await querySql('Select * From zh_project'); for (const p of project) { console.log(`Update Project ${p.code}(${p.id}):`); await checkProject(p); } } catch (err) { console.log(err); } BaseUtil.closePool(); }; const projectId = process.argv[3]; if (projectId) { doComplete(projectId); } else { doComplete() }