stats.js 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /**
  2. * 统计。
  3. */
  4. "use strict";
  5. var EventEmitter = require("events").EventEmitter;
  6. var util = require("util");
  7. var statsRepo = require("../repository/stats.msg.repo.js");
  8. var log = require("../util/log.js");
  9. var modelUtil = require('../util/modelUtil');
  10. var MODEL_EVENTS = require('../include/commons').MODEL_EVENTS;
  11. // This class inherits from EventEmitter and expose class
  12. util.inherits(StatsMessage, EventEmitter);
  13. module.exports = StatsMessage;
  14. function StatsMessage() {
  15. // call the super constructor to initialize `this`
  16. EventEmitter.call(this);
  17. log.info("Construct StatsMessage.");
  18. }
  19. /**
  20. * 获取应用角标数,基于消息数量。
  21. * @param userId
  22. */
  23. StatsMessage.prototype.getBadgeNumber = function(userId){
  24. var self = this;
  25. statsRepo.getBadgeNumber(userId, function (err, result) {
  26. if (err) {
  27. modelUtil.emitDbError(this, "Get badge number failed: ", err);
  28. return;
  29. }
  30. var data = {userId: userId, badge: result};
  31. self.emit(MODEL_EVENTS.OK, data);
  32. });
  33. };