doctor.repo.js 2.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172
  1. /**
  2. * 医生模型。医生真实数据存在于家庭医生平台数据库,即医生的ID,姓名,年龄等详细内容。而IM平台的user表只包含用户当前的在线状态,
  3. * 即用户的准实时状态,token等内容,不包含用户具体的详细信息。
  4. */
  5. "use strict";
  6. var log = require('../util/log');
  7. var imRepo = require("./database/im.db.js");
  8. var wlyyRepo = require("./database/wlyy.db.js");
  9. /**
  10. * 判断用户是否存在。数据从家庭医生平台获取,而不是IM库的user表。
  11. *
  12. * @param user
  13. * @param handler
  14. */
  15. exports.isExist = function(user, handler) {
  16. wlyyRepo.execQuery({
  17. "sql": "SELECT count(*) from wlyy_doctor WHERE code=?",
  18. "args": [user],
  19. "handler": handler
  20. });
  21. };
  22. exports.getUserStatus = function(userId, handler) {
  23. imRepo.execQuery({
  24. "sql": "SELECT platform,token,client_id,is_online,status from user WHERE user_id = ?",
  25. "args": [userId],
  26. "handler": handler
  27. });
  28. };
  29. exports.login = function(userId, token, client_id, platform, handler) {
  30. imRepo.execQuery({
  31. "sql": "INSERT INTO user (user_id,token,client_id,platform,is_online,status) VALUES (?,?,?,?,1,1) ON" +
  32. " DUPLICATE KEY UPDATE token=?,client_id=?,platform=?,is_online=1,status=1",
  33. "args": [userId, token, client_id, platform, token, client_id, platform],
  34. "handler": handler
  35. });
  36. };
  37. exports.logout = function(userId, handler) {
  38. imRepo.execQuery({
  39. "sql": "UPDATE user SET is_online='0',status='0' WHERE user_id=?",
  40. "args": [userId],
  41. "handler": handler
  42. });
  43. };
  44. exports.deleteToken = function(token, handler) {
  45. imRepo.execQuery({
  46. "sql": "DELETE FROM user WHERE token=?",
  47. "args": [token],
  48. "handler": handler
  49. });
  50. };
  51. exports.updateStatus = function(userId, status, handler) {
  52. imRepo.execQuery({
  53. "sql": "UPDATE user SET status=? WHERE user_id=?",
  54. "args": [status, userId],
  55. "handler": handler
  56. });
  57. };
  58. exports.getDoctorInfo = function (code, handler) {
  59. wlyyRepo.execQuery({
  60. "sql":"select code,name from wlyy_doctor where code = ? ",
  61. "args":[code],
  62. "handler":handler
  63. });
  64. };