tpl_tree_node.js 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. /**
  2. * Created by Tony on 2017/5/31.
  3. */
  4. var mongoose = require('mongoose');
  5. var dbm = require("../../../config/db/db_manager");
  6. var db = dbm.getCfgConnection("Reports");
  7. var Schema = mongoose.Schema;
  8. var TreeNodeSchema = new Schema({
  9. ID:Number,
  10. ParentID:Number,
  11. NextSiblingID:Number,
  12. grpType: Number, //建筑(const : 1)/公路(const 2)/其他 etc...
  13. nodeType: Number,//节点类型:树节点(枝) 或 模板节点(叶)
  14. tplType: Number, //概算、预算、招投标 etc...
  15. userId: String, //用户自定义模板用
  16. refId: Number, //
  17. name: String,
  18. isDeleted: Boolean
  19. });
  20. var TreeNodeModel = db.model("rpt_tpl_tree", TreeNodeSchema, "rpt_tpl_tree");
  21. var counter = require('../../../public/counter/counter');
  22. var RplTplTreeDAO = function(){};
  23. RplTplTreeDAO.prototype.getTplTreeNodes = function(grp_type, userId, tpl_Type, callback) {
  24. //
  25. };
  26. RplTplTreeDAO.prototype.createTplTreeNode = function(nodeData, lastNodeId, callback) {
  27. counter.counterDAO.getIDAfterCount(counter.moduleName.report, 1, function(err, result){
  28. nodeData.ID = result.value.sequence_value;
  29. var node = new TreeNodeModel(nodeData);
  30. node.save(function (err, result) {
  31. if (err) {
  32. callback("树节点错误!", false);
  33. } else {
  34. if (lastNodeId > 0) {
  35. TreeNodeModel.update({ID: lastNodeId}, {"NextSiblingID": nodeData.ID}, function(err, rst){
  36. if (err) {
  37. callback("树节点错误!", false);
  38. } else {
  39. callback(false, result);
  40. }
  41. });
  42. } else callback(false, result);
  43. }
  44. });
  45. });
  46. };
  47. module.exports = new RplTplTreeDAO();