copy_proj_controller.js 929 B

12345678910111213141516171819202122232425262728
  1. /**
  2. * Created by Mai on 2017/4/24.
  3. */
  4. let billsData = require('../../main/models/bills');
  5. let rationData = require('../../main/models/ration');
  6. let async = require('async');
  7. module.exports = {
  8. copyProjectData: function (srcProjID, newProjID, callback) {
  9. var fun = [];
  10. var copyData = function (model) {
  11. return () => {
  12. model.getProjectData(srcProjID).then(function (results) {
  13. let datas = [];
  14. results.forEach(function (result) {
  15. result._doc.projectID = newProjID;
  16. datas.push(result._doc);
  17. });
  18. return model.insertData(datas, callback);
  19. }).catch((err) => callback(err));
  20. };
  21. };
  22. fun.push(copyData(billsData));
  23. fun.push(copyData(rationData));
  24. async.parallel(fun, (err) => callback(err));
  25. }
  26. };