calc_program_facade.js 1.9 KB

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