@@ -137,20 +137,23 @@ async function getActiveStockTakingByCabang(company, cabangId) { | |||||
async function getDataUnit(conn, company, cabangId) { | async function getDataUnit(conn, company, cabangId) { | ||||
var query = `SELECT | var query = `SELECT | ||||
company, | |||||
cabang_id, | |||||
mesin, | |||||
kode, | |||||
rangka, | |||||
tipe, | |||||
warna, | |||||
tahun, | |||||
state | |||||
FROM ${owner}.unit_baru | |||||
WHERE company = :COMPANY | |||||
AND cabang_id = :CABANG_ID | |||||
AND state IN ('Ready','OnChannel') | |||||
ORDER BY tipe | |||||
u.company, | |||||
u.cabang_id, | |||||
u.mesin, | |||||
u.kode, | |||||
u.rangka, | |||||
u.tipe, | |||||
u.warna, | |||||
u.tahun, | |||||
u.state, | |||||
c.channel_name channel | |||||
FROM ${owner}.unit_baru u | |||||
left join ${owner}.CHANNEL c on | |||||
u.channel_id = c.channel_id | |||||
WHERE u.company = :COMPANY | |||||
AND u.cabang_id = :CABANG_ID | |||||
AND u.state IN ('OnTheWay','Ready','OnChannel','InRepair') | |||||
ORDER BY u.tipe | |||||
`; | `; | ||||
var params = { COMPANY: company, CABANG_ID: cabangId }; | var params = { COMPANY: company, CABANG_ID: cabangId }; | ||||
@@ -312,11 +315,14 @@ async function getActiveStockCollection( | |||||
b.tipe, | b.tipe, | ||||
b.warna, | b.warna, | ||||
b.tahun, | b.tahun, | ||||
b.state | |||||
b.state, | |||||
c.channel_name channel | |||||
from ${owner}.stock_taking_unit_det a LEFT JOIN ${owner}.unit_baru b | from ${owner}.stock_taking_unit_det a LEFT JOIN ${owner}.unit_baru b | ||||
ON a.company = b.company | ON a.company = b.company | ||||
and a.mesin = b.mesin | and a.mesin = b.mesin | ||||
and b.cabang_id = :CABANG_ID | and b.cabang_id = :CABANG_ID | ||||
left join ${owner}.CHANNEL c on | |||||
b.channel_id = c.channel_id | |||||
where a.company = :COMPANY | where a.company = :COMPANY | ||||
and a.stock_taking_unit_id = :STOCK_TAKING_UNIT_ID | and a.stock_taking_unit_id = :STOCK_TAKING_UNIT_ID | ||||
and a.mesin NOT IN (select mesin from ${owner}.stock_taking_unit_det_pic c | and a.mesin NOT IN (select mesin from ${owner}.stock_taking_unit_det_pic c | ||||
@@ -385,7 +391,7 @@ async function getActiveStockCollection( | |||||
} | } | ||||
} | } | ||||
async function insertStockUnitData(stockTakingData, dataUnit, dataFoto) { | |||||
async function insertStockUnitData(stockTakingData, dataUnit, dataFoto,userId) { | |||||
let conn; | let conn; | ||||
try { | try { | ||||
conn = await oracleFunc.getConnection(); | conn = await oracleFunc.getConnection(); | ||||
@@ -425,7 +431,7 @@ async function insertStockUnitData(stockTakingData, dataUnit, dataFoto) { | |||||
COMPANY: stockTakingData["company"], | COMPANY: stockTakingData["company"], | ||||
STOCK_TAKING_UNIT_ID: stockTakingData["stockTakingUnitId"], | STOCK_TAKING_UNIT_ID: stockTakingData["stockTakingUnitId"], | ||||
MESIN: dataUnit[i]["MESIN"], | MESIN: dataUnit[i]["MESIN"], | ||||
KETERANGAN: dataUnit[i]["TIMESTAMP"], | |||||
KETERANGAN: `${dataUnit[i]["TIMESTAMP"]}${(userId!= null || userId=='')?' by '+ userId:''}`, | |||||
}; | }; | ||||
paramsUpdateKeteranganDet.push(temp); | paramsUpdateKeteranganDet.push(temp); | ||||
} | } | ||||
@@ -8,14 +8,14 @@ const fs = require("fs"); | |||||
async function insertRefTable(db, dataUnitCabang) { | async function insertRefTable(db, dataUnitCabang) { | ||||
try { | try { | ||||
var runQuery = | var runQuery = | ||||
"insert into refTable(mesin,tipe,rangka,warna,kode,tahun,state) VALUES "; | |||||
"insert into refTable(mesin,tipe,rangka,warna,kode,tahun,state,channel) VALUES "; | |||||
for (var i = 0; i < dataUnitCabang.length; i++) { | for (var i = 0; i < dataUnitCabang.length; i++) { | ||||
if (i == dataUnitCabang.length - 1) { | if (i == dataUnitCabang.length - 1) { | ||||
runQuery = runQuery.concat(`('${dataUnitCabang[i]["MESIN"]}','${dataUnitCabang[i]["TIPE"]}','${dataUnitCabang[i]["RANGKA"]}','${dataUnitCabang[i]["WARNA"]}', | runQuery = runQuery.concat(`('${dataUnitCabang[i]["MESIN"]}','${dataUnitCabang[i]["TIPE"]}','${dataUnitCabang[i]["RANGKA"]}','${dataUnitCabang[i]["WARNA"]}', | ||||
'${dataUnitCabang[i]["KODE"]}','${dataUnitCabang[i]["TAHUN"]}','${dataUnitCabang[i]["STATE"]}')`); | |||||
'${dataUnitCabang[i]["KODE"]}','${dataUnitCabang[i]["TAHUN"]}','${dataUnitCabang[i]["STATE"]}','${dataUnitCabang[i]["CHANNEL"]}')`); | |||||
} else { | } else { | ||||
runQuery = runQuery.concat(`('${dataUnitCabang[i]["MESIN"]}','${dataUnitCabang[i]["TIPE"]}','${dataUnitCabang[i]["RANGKA"]}','${dataUnitCabang[i]["WARNA"]}', | runQuery = runQuery.concat(`('${dataUnitCabang[i]["MESIN"]}','${dataUnitCabang[i]["TIPE"]}','${dataUnitCabang[i]["RANGKA"]}','${dataUnitCabang[i]["WARNA"]}', | ||||
'${dataUnitCabang[i]["KODE"]}','${dataUnitCabang[i]["TAHUN"]}','${dataUnitCabang[i]["STATE"]}'), `); | |||||
'${dataUnitCabang[i]["KODE"]}','${dataUnitCabang[i]["TAHUN"]}','${dataUnitCabang[i]["STATE"]}','${dataUnitCabang[i]["CHANNEL"]}'), `); | |||||
} | } | ||||
} | } | ||||
var insertTable = await sqliteFunc.runQuery(db, runQuery); | var insertTable = await sqliteFunc.runQuery(db, runQuery); | ||||
@@ -136,7 +136,7 @@ async function getInsertedPic(db) { | |||||
} | } | ||||
} | } | ||||
async function unpackAndInsert(dbPath = null, company, cabangId) { | |||||
async function unpackAndInsert(dbPath = null, company, cabangId,userId=null) { | |||||
let db; | let db; | ||||
try { | try { | ||||
//var dbPath = path.join(__dirname , `../public/sqlite/upload/uploadDB.db`); | //var dbPath = path.join(__dirname , `../public/sqlite/upload/uploadDB.db`); | ||||
@@ -160,7 +160,8 @@ async function unpackAndInsert(dbPath = null, company, cabangId) { | |||||
var result = await oracleModel.insertStockUnitData( | var result = await oracleModel.insertStockUnitData( | ||||
stockTakingData, | stockTakingData, | ||||
insertedData, | insertedData, | ||||
insertedPic | |||||
insertedPic, | |||||
userId | |||||
); | ); | ||||
if (db.open) { | if (db.open) { | ||||
return new Promise(function (resolve, reject) { | return new Promise(function (resolve, reject) { | ||||
@@ -250,6 +251,7 @@ async function CreateDataCollection(company = "", cabangId = "") { | |||||
KODE TEXT, | KODE TEXT, | ||||
TAHUN TEXT, | TAHUN TEXT, | ||||
STATE TEXT, | STATE TEXT, | ||||
CHANNEL TEXT, | |||||
TIMESTAMP TEXT DEFAULT NULL, | TIMESTAMP TEXT DEFAULT NULL, | ||||
FLAG_INSERT TEXT DEFAULT 'FALSE' | FLAG_INSERT TEXT DEFAULT 'FALSE' | ||||
)`; | )`; | ||||
@@ -133,13 +133,17 @@ router.post("/uploadSqlitedb", async function (req, res, next) { | |||||
}); | }); | ||||
router.post("/unpackDb", async function (req, res, next) { | router.post("/unpackDb", async function (req, res, next) { | ||||
console.log(req.body); | |||||
// console.log(req.body); | |||||
var userId = req.body.userId; | |||||
var dbPath = req.body.dbPath; | var dbPath = req.body.dbPath; | ||||
var company = req.body.company; | var company = req.body.company; | ||||
var cabangId = req.body.cabangId; | var cabangId = req.body.cabangId; | ||||
var data = await sqliteModel.unpackAndInsert(dbPath, company, cabangId); | |||||
return res.json(data); | |||||
if(dbPath && company && cabangId){ | |||||
var data = await sqliteModel.unpackAndInsert(dbPath, company, cabangId,userId); | |||||
return res.json(data); | |||||
} | |||||
else return res.json({"STATUS":0,"DATA":"Input parameter tidak lengkap!!"}); | |||||
}); | }); | ||||
router.post("/login", async function (req, res, next) { | router.post("/login", async function (req, res, next) { | ||||