project_feature_facade.js 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. /**
  2. * Created by zhang on 2018/9/3.
  3. */
  4. import mongoose from "mongoose";
  5. const uuidV1 = require('uuid/v1');
  6. let moment = require("moment");
  7. let projectFeatureModel = mongoose.model('std_project_feature_lib');
  8. let compilationModel = mongoose.model('compilation');
  9. let projectFeatureLib = {
  10. findByCondition:async function(conditions,options,single=true){
  11. if(single == true){
  12. return await projectFeatureModel.findOne(conditions,options);
  13. }else {
  14. return await projectFeatureModel.find(conditions,options);
  15. }
  16. },
  17. addLib : async function (data){
  18. let now = new Date().getTime();
  19. let dateStr = moment(now).format('YYYY-MM-DD HH:mm:ss');
  20. //取编办信息
  21. let compilation = await compilationModel.findOne({_id:data.compilationId});
  22. if(compilation){
  23. let newLib = {
  24. creator: data.userAccount,
  25. createDate: now,
  26. recentOpr: [{operator: data.userAccount, operateDate: dateStr}],
  27. name: data.name,
  28. compilationId: data.compilationId,
  29. compilationName: compilation.name,
  30. };
  31. newLib.ID = uuidV1();
  32. return await projectFeatureModel.create(newLib);
  33. }else {
  34. throw new Error("没有找到该编办!");
  35. }
  36. },
  37. saveLib:async function(param) {
  38. return await projectFeatureModel.findOneAndUpdate(param.query,param.data,{new:true});
  39. },
  40. deleteLibByID:async function(ID){
  41. return await projectFeatureModel.deleteOne({ID:ID});
  42. },
  43. };
  44. export default projectFeatureLib