import_controller.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. /**
  2. * Created by zhang on 2019/12/3.
  3. */
  4. /**
  5. * Created by jimiz on 2017/4/9.
  6. */
  7. let logger = require("../../../logs/log_helper").logger;
  8. let pm_facade = require('../../pm/facade/pm_facade');
  9. let controller = {
  10. importProject:async function (req){
  11. let data = req.body;
  12. return await pm_facade.downLoadProjectFile(data);
  13. },
  14. prepareInitialData: async function(req) {
  15. const data = req.body;
  16. return await pm_facade.prepareInitialData(data.userID, data.compilationID, data.example);
  17. },
  18. exportProject:async function(req){
  19. let result={
  20. error:0
  21. };
  22. let data = JSON.parse(req.body.dataString);
  23. result.data = await pm_facade.exportProject(req.body.userID, data);
  24. return result
  25. },
  26. copyProject:async function(req){
  27. let result={
  28. error:0
  29. };
  30. let data = JSON.parse(req.body.dataString);
  31. result.data = await pm_facade.accessToCopyProject(req.body.userID,req.body.compilationID,data);
  32. return result
  33. }
  34. };
  35. module.exports = {
  36. action:async function(req,res){//自动跳转到URL对应的controller方法
  37. let result={
  38. error:0
  39. };
  40. try {
  41. let functionName = req.url.replace(/\//g,"");
  42. result = controller[functionName]?await controller[functionName](req):"";
  43. }catch (err){
  44. logger.err(err);
  45. if(typeof err == "string"){
  46. result.error=2;
  47. result.msg = err;
  48. }else {
  49. result.error=1;
  50. result.msg = "导入失败请检查文件!"
  51. }
  52. }
  53. res.json(result);
  54. }
  55. };