app.js 5.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155
  1. var restify = require('restify');
  2. var Buffer = require('bufferhelper');
  3. global.config = require('./config');
  4. var db = require('./db'),
  5. usersProvider = db.usersProvider,
  6. branchsProvider = db.branchsProvider,
  7. addrGroupProvider = db.addrGroupProvider,
  8. addrGroupMemberProvider = db.addrGroupMemberProvider;
  9. var server = restify.createServer({
  10. name: 'target-data',
  11. version: '1.0.0'
  12. });
  13. server.use(restify.acceptParser(server.acceptable));
  14. server.use(restify.queryParser());
  15. server.use(restify.bodyParser());
  16. server.post('/api/branchs', function(req, res)
  17. {
  18. if (Array.isArray(req.body)){
  19. var promises = [];
  20. req.body.forEach(function(element) {
  21. promises.push(branchsProvider.insert(element))
  22. }, this);
  23. Promise.all(promises).then(function(){
  24. // res.send('{success:true}');
  25. }).catch(function(err){
  26. // res.send('{success:false}');
  27. console.log('error:'+err);
  28. });
  29. }else{
  30. branchsProvider.insert(req.body).then(function(){
  31. // res.send('{success:true}');
  32. }).catch(function(err){
  33. // res.send('{success:false}');
  34. console.log('error:'+err);
  35. });
  36. }
  37. res.send('ok');
  38. });
  39. server.del('/api/branchs/:serverId', function(req, res)
  40. {
  41. branchsProvider.delete(req.params.serverId).then(function(){
  42. res.send('{success:true}');
  43. }).catch(function(err){
  44. res.send('{success:false}');
  45. console.log('error:'+err);
  46. });
  47. });
  48. server.post('/api/users', function(req, res){
  49. if (Array.isArray(req.body)){
  50. var promises = [];
  51. req.body.forEach(function(element) {
  52. promises.push(usersProvider.insert(element))
  53. }, this);
  54. Promise.all(promises).then(function(){
  55. // res.send('{success:true}');
  56. }).catch(function(err){
  57. // res.send('{success:false}');
  58. console.log('error:'+err);
  59. });
  60. }else{
  61. usersProvider.insert(req.body).then(function(){
  62. // res.send('{success:true}');
  63. }).catch(function(err){
  64. // res.send('{success:false}');
  65. console.log('error:'+err);
  66. });
  67. }
  68. res.send('ok');
  69. });
  70. server.del('/api/users/:serverId', function(req, res)
  71. {
  72. usersProvider.delete(req.params.serverId).then(function(){
  73. res.send('{success:true}');
  74. }).catch(function(err){
  75. res.send('{success:false}');
  76. console.log('error:'+err);
  77. });
  78. });
  79. // add by thm 20170908 增加同步通讯录 start
  80. server.post('/api/addrGroup', function(req, res){
  81. if (Array.isArray(req.body)){
  82. var promises = [];
  83. req.body.forEach(function(element) {
  84. promises.push(addrGroupProvider.insert(element))
  85. }, this);
  86. Promise.all(promises).then(function(){
  87. // res.send('{success:true}');
  88. }).catch(function(err){
  89. // res.send('{success:false}');
  90. console.log('error:'+err);
  91. });
  92. }else{
  93. addrGroupProvider.insert(req.body).then(function(){
  94. // res.send('{success:true}');
  95. }).catch(function(err){
  96. // res.send('{success:false}');
  97. console.log('error:'+err);
  98. });
  99. }
  100. res.send('ok');
  101. });
  102. server.del('/api/addrGroup/:serverId', function(req, res)
  103. {
  104. addrGroupProvider.delete(req.params.serverId).then(function(){
  105. res.send('{success:true}');
  106. }).catch(function(err){
  107. res.send('{success:false}');
  108. console.log('error:'+err);
  109. });
  110. });
  111. server.post('/api/addrGroupMember/:serverId', function(req, res){
  112. if (Array.isArray(req.body)){
  113. var promises = [];
  114. req.body.forEach(function(element) {
  115. promises.push(addrGroupMemberProvider.insert(element, req.context.serverId))
  116. }, this);
  117. Promise.all(promises).then(function(){
  118. // res.send('{success:true}');
  119. }).catch(function(err){
  120. // res.send('{success:false}');
  121. console.log('error:'+err);
  122. });
  123. }else{
  124. addrGroupMemberProvider.insert(req.body, req.context.serverId).then(function(){
  125. // res.send('{success:true}');
  126. }).catch(function(err){
  127. // res.send('{success:false}');
  128. console.log('error:'+err);
  129. });
  130. }
  131. res.send('ok');
  132. });
  133. server.del('/api/addrGroupMember/:serverId', function(req, res)
  134. {
  135. addrGroupMemberProvider.delete(req.params.serverId).then(function(){
  136. res.send('{success:true}');
  137. }).catch(function(err){
  138. res.send('{success:false}');
  139. console.log('error:'+err);
  140. });
  141. });
  142. // add by thm 20170908 增加同步通讯录 end
  143. server.listen(8080, function () {
  144. console.log('%s listening at %s', server.name, server.url);
  145. });