Advertisement
Guest User

Untitled

a guest
May 15th, 2018
129
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.18 KB | None | 0 0
  1. const mongoose = require('mongoose');
  2. const config = require('../config/mongodb');
  3. const log = require('../libs/log')(module);
  4. mongoose.connect(config.database);
  5.  
  6. var Schema = mongoose.Schema;
  7.  
  8. var RefSchema = new Schema({
  9. _id: {type: String, default: 'refs'},
  10. ref: {type: Number, default: 776}
  11. });
  12.  
  13. RefSchema.statics.increment = function (callback) {
  14. var query = {_id: 'refs'};
  15. var update = {$inc: {ref: 1}};
  16. var options = {upsert: true, 'new': true, setDefaultsOnInsert: true};
  17.  
  18. this.findOneAndUpdate(query, update, options, callback);
  19. };
  20.  
  21.  
  22. var RefModel = mongoose.model('Ref', RefSchema);
  23.  
  24. var OrderSchema = new Schema({
  25. total: Number,
  26. ref: Number
  27. });
  28.  
  29. OrderSchema.pre('save', function (next) {
  30. if (!this.isNew) {
  31. return next();
  32. }
  33.  
  34. var self = this;
  35. RefModel.increment(function (err, doc) {
  36. self.ref = doc.ref;
  37. next(err);
  38. });
  39. });
  40.  
  41. var OrderModel = mongoose.model('Order', OrderSchema);
  42.  
  43. var orders = [];
  44.  
  45. for (var i = 0; i < 100; i++) {
  46. orders.push({total: (i + 1) * 3.4});
  47. }
  48.  
  49. OrderModel.create(orders, function (err, orders) {
  50. console.log('orders', orders);
  51. });
  52.  
  53. var OrderModel = mongoose.model('Order', OrderModel)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement