You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
164 lines
5.3 KiB
JavaScript
164 lines
5.3 KiB
JavaScript
export function crons() {
|
|
var f = Array.from(document.querySelectorAll('.form-s'));
|
|
if (f.length > 0) {
|
|
var v = [];
|
|
var s = 0;
|
|
var c = 5;
|
|
var n = [];
|
|
f = f.forEach(function (r) {
|
|
if ((s + 1) == c) {
|
|
if (r.getAttribute('num') != undefined) {
|
|
n.push({
|
|
name: r.name,
|
|
val: r.value.number()
|
|
});
|
|
v.push(n);
|
|
n = [];
|
|
s = 0;
|
|
} else {
|
|
n.push({
|
|
name: r.name,
|
|
val: r.value
|
|
});
|
|
v.push(n);
|
|
n = [];
|
|
s = 0;
|
|
};
|
|
} else {
|
|
if (r.getAttribute('num') != undefined) {
|
|
n.push({
|
|
name: r.name,
|
|
val: r.value.number()
|
|
});
|
|
s++;
|
|
} else {
|
|
n.push({
|
|
name: r.name,
|
|
val: r.value
|
|
});
|
|
s++;
|
|
};
|
|
};
|
|
});
|
|
|
|
// counterNum
|
|
var b1 = 0;
|
|
var b2 = 0;
|
|
v.forEach(function (ss) {
|
|
ss.forEach(function (j) {
|
|
if (j.name == 'debit') {
|
|
b1 += j.val;
|
|
};
|
|
if (j.name == 'kredit') {
|
|
b2 += j.val;
|
|
};
|
|
});
|
|
});
|
|
|
|
globalThis['debit'].parent.value = b1.currency(2);
|
|
globalThis['kredit'].parent.value = b2.currency(2);
|
|
var fv = v;
|
|
v = v.map(function (ss) {
|
|
var f = ss;
|
|
f.push({
|
|
name: 'kode',
|
|
val: globalThis['kode'].parent.value,
|
|
});
|
|
f.push({
|
|
name: 'keterangan',
|
|
val: globalThis['keterangan'].parent.value,
|
|
});
|
|
f.push({
|
|
name: 'tgl',
|
|
val: _getval('tgl'),
|
|
});
|
|
f.push({
|
|
name: 'username',
|
|
val: globalThis['username'].parent.value,
|
|
});
|
|
f.push({
|
|
name: 'app',
|
|
val: _getval('app'),
|
|
});
|
|
f.push({
|
|
name: 'userlog',
|
|
val: globalThis['userlog'].parent.value,
|
|
});
|
|
return f;
|
|
});
|
|
|
|
|
|
if (v.length > 0) {
|
|
var sn = v[0].map(function (e) {
|
|
return 'a.' + e.name;
|
|
}).join(',');
|
|
var mn = 'INSERT INTO bb (' + v[0].map(function (e) {
|
|
return e.name;
|
|
}).join(',') + ') \n';
|
|
var mu = 'SET ' + v[0].map(function (e) {
|
|
return 'a.' + e.name + ' = ' + 'b.' + e.name;
|
|
}).join(',') + ' \n';
|
|
var g = 'SELECT ' + sn + ' FROM (' + v.map(function (c) {
|
|
return ' \n SELECT ' + c.map(function (e) {
|
|
if (typeof e.val === 'string') {
|
|
return '"' + e.val.replace(/\"/g, "\\\"") + '" ' + e.name;
|
|
} else {
|
|
return '"' + e.val + '" ' + e.name;
|
|
}
|
|
}).join(', ') + '\n';
|
|
}).join("\n UNION ALL \n") + '\n )';
|
|
globalThis.insertS = mn + g + " a LEFT JOIN bb ON a.kode = bb.kode AND a.tr = bb.tr WHERE bb.kode IS NULL";
|
|
var upd = 'UPDATE bb a, (\n' + g + '\n a ) b ' + mu + " WHERE a.kode = b.kode AND a.tr = b.tr";
|
|
globalThis.updateS = upd;
|
|
} else {
|
|
globalThis.insertS = null;
|
|
globalThis.updateS = null;
|
|
}
|
|
|
|
var qw = fv.map(function (ss) {
|
|
var f = ss;
|
|
f.push({
|
|
name: 'table_name',
|
|
val: 'bb',
|
|
});
|
|
return f;
|
|
});
|
|
|
|
if (qw.length > 0) {
|
|
var sn = qw[0].map(function (e) {
|
|
return 'a.' + e.name;
|
|
}).join(',');
|
|
|
|
var mn = 'INSERT INTO lap_bb (' + qw[0].map(function (e) {
|
|
return e.name;
|
|
}).join(',') + ') \n';
|
|
|
|
var mu = 'SET ' + qw[0].map(function (e) {
|
|
return 'a.' + e.name + ' = ' + 'b.' + e.name;
|
|
}).join(',') + ' \n';
|
|
|
|
var g = 'SELECT ' + sn + ' FROM (' + qw.map(function (c) {
|
|
return ' \n SELECT ' + c.map(function (e) {
|
|
if (typeof e.val === 'string') {
|
|
return '"' + e.val.replace(/\"/g, "\\\"") + '" ' + e.name;
|
|
} else {
|
|
return '"' + e.val + '" ' + e.name;
|
|
};
|
|
}).join(', ') + '\n';
|
|
}).join("\n UNION ALL \n") + '\n )';
|
|
globalThis.insertSq = mn + g + " a LEFT JOIN lap_bb ON a.kode = lap_bb.kode AND a.tr = lap_bb.tr WHERE lap_bb.kode IS NULL";
|
|
var upd = 'UPDATE lap_bb a, (\n' + g + '\n a ) b ' + mu + " WHERE a.kode = b.kode AND a.tr = b.tr";
|
|
globalThis.updateSq = upd;
|
|
} else {
|
|
globalThis.insertSq = null;
|
|
globalThis.updateSq = null;
|
|
}
|
|
setTimeout(() => {
|
|
crons();
|
|
}, 100);
|
|
} else {
|
|
setTimeout(() => {
|
|
crons();
|
|
}, 100);
|
|
}
|
|
} |