|
@@ -95,11 +95,37 @@ billsLibDao.prototype.createStdBillsLib = function(clibData, callback){
|
|
|
};
|
|
|
|
|
|
billsLibDao.prototype.deleteStdBillsLib = function(billsLibId, callback){
|
|
|
- StdBillsLib.update({billsLibId: billsLibId}, {$set: {deleted: true}}, function(err){
|
|
|
+ async.parallel([
|
|
|
+ function(cb){
|
|
|
+ StdBillsLib.update({billsLibId: billsLibId}, {$set: {deleted: true}}, function(err){
|
|
|
+ if(err){
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ },
|
|
|
+ function(cb){
|
|
|
+ Bills.update({billsLibId: billsLibId, deleted: false}, {$set: {deleted: true}}, {upsert: false, multi: true}, function(err){
|
|
|
+ cb(null);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ function(cb){
|
|
|
+ JobContent.update({billsLibId: billsLibId, deleted: false}, {$set: {deleted: true}}, {upsert: false, multi: true}, function(err, result){
|
|
|
+ cb(null);
|
|
|
+ });
|
|
|
+ },
|
|
|
+ function(cb){
|
|
|
+ ItemCharacter.update({billsLibId: billsLibId, deleted: false}, {$set: {deleted: true}}, {upsert: false, multi: true}, function(err){
|
|
|
+ cb(null);
|
|
|
+ })
|
|
|
+ }
|
|
|
+ ], function(err){
|
|
|
if(err){
|
|
|
callback(1, 'Error');
|
|
|
}
|
|
|
- else{
|
|
|
+ else {
|
|
|
callback(0, '');
|
|
|
}
|
|
|
});
|
|
@@ -229,17 +255,228 @@ billsLibDao.prototype.upMove = function(data, callback){
|
|
|
});
|
|
|
};
|
|
|
|
|
|
+billsLibDao.prototype.downMove = function (data, callbck) {
|
|
|
+ let billsLibId = data.billsLibId,
|
|
|
+ updateDatas = data.updateDatas,
|
|
|
+ functions = [];
|
|
|
+ let parallelFucs = {
|
|
|
+ nextSiblingNode: function (data) {
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ },
|
|
|
+ oprNode: function (data) {
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ preSiblingNode: function (data) {
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ }
|
|
|
+ };
|
|
|
+ for(let i =0; i< updateDatas.length; i++){
|
|
|
+ if(updateDatas[i].type === 'nextSiblingNode'){
|
|
|
+ functions.push(parallelFucs.nextSiblingNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ else if(updateDatas[i].type === 'oprNode'){
|
|
|
+ functions.push(parallelFucs.oprNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ functions.push(parallelFucs.preSiblingNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ async.parallel(functions, function (err) {
|
|
|
+ if(err){
|
|
|
+ callbck(1, 'Error');
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ callbck(0, '');
|
|
|
+ }
|
|
|
+ })
|
|
|
+}
|
|
|
+
|
|
|
+billsLibDao.prototype.upLevel = function(data, callback){
|
|
|
+ let billsLibId = data.billsLibId,
|
|
|
+ updateDatas = data.updateDatas, functions = [];
|
|
|
+ let parallelFucs = {
|
|
|
+ oprNode: function (data) {
|
|
|
+ return function (cb){
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {ParentID: data.ParentID, NextSiblingID: data.NextSiblingID}}, function(err){
|
|
|
+ if(err){
|
|
|
+ console.log(`err1`);
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ },
|
|
|
+ parentNode: function (data) {
|
|
|
+ return function(cb){
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ console.log(`err2`);
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ })
|
|
|
+ };
|
|
|
+ },
|
|
|
+ nextSiblingNode: function (data) {
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {ParentID: data.ParentID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ console.log(`err3`);
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ },
|
|
|
+ preSiblingNode: function(data){
|
|
|
+ console.log(`billsLIbId: ${billsLibId} ID: ${data.ID} NextS: ${data.NextSiblingID}`);
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ console.log(`err4`);
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for(let i=0; i< updateDatas.length; i++){
|
|
|
+ if(updateDatas[i].type === 'oprNode'){
|
|
|
+ functions.push(parallelFucs.oprNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ else if(updateDatas[i].type === 'parentNode'){
|
|
|
+ functions.push(parallelFucs.parentNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ else if(updateDatas[i].type === 'nextSiblingNode'){
|
|
|
+ updateDatas[i].ID.forEach(function (id) {
|
|
|
+ let obj = {ID: id, ParentID: updateDatas[i].ParentID};
|
|
|
+ functions.push(parallelFucs.nextSiblingNode(obj));
|
|
|
+ });
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ functions.push(parallelFucs.preSiblingNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ async.parallel(functions, function(err){
|
|
|
+ if(err){
|
|
|
+ console.log(`errfinal`);
|
|
|
+ callback(1, 'Error');
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ callback(0, '');
|
|
|
+ }
|
|
|
+ });
|
|
|
+};
|
|
|
+
|
|
|
+billsLibDao.prototype.downLevel = function (data, callback) {
|
|
|
+ let billsLibId = data.billsLibId,
|
|
|
+ updateDatas = data.updateDatas,
|
|
|
+ functions = [];
|
|
|
+ let parallelFucs = {
|
|
|
+ preSiblingNode: function (data) {
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ },
|
|
|
+ oprNode: function (data) {
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {ParentID: data.ParentID, NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ },
|
|
|
+ preChildren: function (data) {
|
|
|
+ return function (cb) {
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: data.ID, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function (err) {
|
|
|
+ if(err){
|
|
|
+ cb(err);
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ cb(null);
|
|
|
+ }
|
|
|
+ });
|
|
|
+ };
|
|
|
+ }
|
|
|
+ }
|
|
|
+ for(let i=0; i<updateDatas.length; i++){
|
|
|
+ if(updateDatas[i].type === 'preSiblingNode'){
|
|
|
+ functions.push(parallelFucs.preSiblingNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ else if(updateDatas[i].type === 'oprNode'){
|
|
|
+ functions.push(parallelFucs.oprNode(updateDatas[i]));
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ functions.push(parallelFucs.preChildren(updateDatas[i]));
|
|
|
+ }
|
|
|
+ }
|
|
|
+ async.parallel(functions, function (err) {
|
|
|
+ if(err){
|
|
|
+ callback(1, 'Error');
|
|
|
+ }
|
|
|
+ else{
|
|
|
+ callback(0, '');
|
|
|
+ }
|
|
|
+ })
|
|
|
+};
|
|
|
+
|
|
|
billsLibDao.prototype.updatePNId= function(upData, callback){
|
|
|
let billsLibId = upData.billsLibId;
|
|
|
let updateDatas = upData.updateData;
|
|
|
let eachDatas = [];
|
|
|
- if(updateDatas.length > 0){
|
|
|
for(let i=0; i< updateDatas.length; i++){
|
|
|
if(updateDatas[i].ID.length > 1){
|
|
|
let ids = updateDatas[i].ID;
|
|
|
for(let j=0; j<ids.length; j++){
|
|
|
let eachObj = {
|
|
|
- id: ids[j].ID,
|
|
|
+ id: ids[j],
|
|
|
data: updateDatas[i]
|
|
|
}
|
|
|
eachDatas.push(eachObj);
|
|
@@ -249,9 +486,13 @@ billsLibDao.prototype.updatePNId= function(upData, callback){
|
|
|
eachDatas.push({id: updateDatas[i].ID, data: updateDatas[i]});
|
|
|
}
|
|
|
}
|
|
|
+ console.log(eachDatas.length);
|
|
|
async.each(eachDatas, function(eachObj, cb){
|
|
|
let id = eachObj.id, data = eachObj.data;
|
|
|
+ console.log(id);
|
|
|
+ console.log(data);
|
|
|
if(data.ParentID && data.NextSiblingID){
|
|
|
+ console.log(`enter 1 ${id}`);
|
|
|
Bills.update({billsLibId: billsLibId, ID: id, deleted: false}, {$set: {ParentID: data.ParentID, NextSiblingID: data.NextSiblingID}}, function(err){
|
|
|
if(err){
|
|
|
cb(err);
|
|
@@ -261,6 +502,7 @@ billsLibDao.prototype.updatePNId= function(upData, callback){
|
|
|
});
|
|
|
}
|
|
|
else if(data.ParentID && !data.NextSiblingID){
|
|
|
+ console.log(`enter 2 ${id}`);
|
|
|
Bills.update({billsLibId: billsLibId, ID: id, deleted: false}, {$set: {ParentID: data.ParentID}}, function(err){
|
|
|
if(err){
|
|
|
if(err){
|
|
@@ -272,6 +514,7 @@ billsLibDao.prototype.updatePNId= function(upData, callback){
|
|
|
});
|
|
|
}
|
|
|
else if(!data.ParentID && data.NextSiblingID){
|
|
|
+ console.log(`enter 3 ${id}`);
|
|
|
Bills.update({billsLibId: billsLibId, ID: id, deleted: false}, {$set: {NextSiblingID: data.NextSiblingID}}, function(err){
|
|
|
if(err){
|
|
|
cb(err);
|
|
@@ -282,13 +525,14 @@ billsLibDao.prototype.updatePNId= function(upData, callback){
|
|
|
}
|
|
|
}, function(err){
|
|
|
if(err){
|
|
|
+ console.log(`err`);
|
|
|
callback(1, 'Error');
|
|
|
}
|
|
|
else {
|
|
|
+ console.log(`noerr`);
|
|
|
callback(0, '');
|
|
|
}
|
|
|
});
|
|
|
- }
|
|
|
}
|
|
|
|
|
|
billsLibDao.prototype.updateBills = function(ubillsData, callback){
|
|
@@ -379,7 +623,7 @@ billsLibDao.prototype.updateBillsArr = function(updateData, callback){
|
|
|
}
|
|
|
if(orgId && !newId && type === 'delete'){
|
|
|
async.each(orgId, function(oid, cb){
|
|
|
- Bills.update({billsLibId: billsLibId, ID: updateId, deleted: false}, {$pull: {'jobs.id': oid}}, function(err){
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: updateId, deleted: false}, {$pull: {jobs: {id: oid}}}, function(err){
|
|
|
if(err){
|
|
|
cb(err);
|
|
|
}else {
|
|
@@ -401,7 +645,7 @@ billsLibDao.prototype.updateBillsArr = function(updateData, callback){
|
|
|
});
|
|
|
});
|
|
|
async.each(delArr, function(delObj, cb){
|
|
|
- Bills.update({billsLibId: billsLibId, ID: delObj.updateId, deleted: false}, {$pull: {'jobs.id': delObj.delId}}, function(err){
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: delObj.updateId, deleted: false}, {$pull: {jobs: {id: delObj.delId}}}, function(err){
|
|
|
if(err){
|
|
|
cb(err);
|
|
|
}else {
|
|
@@ -431,7 +675,7 @@ billsLibDao.prototype.updateBillsArr = function(updateData, callback){
|
|
|
}
|
|
|
if(orgId && !newId && type === 'delete'){
|
|
|
async.each(orgId, function(oid, cb){
|
|
|
- Bills.update({billsLibId: billsLibId, ID: updateId, deleted: false}, {$pull: {items: oid}}, function(err){
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: updateId, deleted: false}, {$pull: {items: {id: oid}}}, function(err){
|
|
|
if(err){
|
|
|
cb(err);
|
|
|
}else {
|
|
@@ -454,7 +698,7 @@ billsLibDao.prototype.updateBillsArr = function(updateData, callback){
|
|
|
});
|
|
|
});
|
|
|
async.each(delArr, function(delObj, cb){
|
|
|
- Bills.update({billsLibId: billsLibId, ID: delObj.updateId, deleted: false}, {$pull: {items: delObj.delId}}, function(err){
|
|
|
+ Bills.update({billsLibId: billsLibId, ID: delObj.updateId, deleted: false}, {$pull: {items: {id: delObj.delId}}}, function(err){
|
|
|
if(err){
|
|
|
cb(err);
|
|
|
}else {
|