Advertisement
Guest User

Callback async

a guest
Jun 15th, 2019
177
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. exports.validateImport = async (req, res) => {
  2.     let mysql = require('mysql');
  3.  
  4.     let con = mysql.createConnection({
  5.         host: "localhost",
  6.         user: "root",
  7.         password: "root",
  8.         database: "db_dev_indoacc"
  9.     });
  10.  
  11.     con.connect(function (err) {
  12.         if (err) throw err;
  13.     });
  14.  
  15.     let importData = req.body.excel;
  16.  
  17.     let validated = [];
  18.  
  19.     let validate = (callback) => {
  20.         for (let i = 0; i < importData.length; i++) {
  21.             let goodsNotExists = (callback) => {
  22.                 con.query("SELECT mgoodscode, mgoodsname FROM mgoods WHERE mgoodscode = ? AND mgoodsname= ? AND void = 0",
  23.                     [importData[i]['Kode Barang'], importData[i]['Nama Barang']], (error, rows, fields) => {
  24.                         if (error) {
  25.                             return callback(error);
  26.                         } else {
  27.                             if (rows.length === 0) {
  28.                                 callback(null, importData[i]);
  29.                             }
  30.                         }
  31.                     }
  32.                 )
  33.             };
  34.  
  35.             goodsNotExists((err, data) => {
  36.                 if (err) {
  37.                     return callback(err)
  38.                 } else {
  39.                     callback(null, data)
  40.                 }
  41.             })
  42.         }
  43.     };
  44.  
  45.     validate((err, data) => {
  46.         if(err){
  47.             console.log('Err');
  48.         } else {
  49.             validated.push(data);
  50.         }
  51.     });
  52.  
  53.     setTimeout(() => {
  54.         res.json(validated);
  55.     }, 50)
  56. };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement