Advertisement
Guest User

Untitled

a guest
Feb 15th, 2018
90
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 8.69 KB | None | 0 0
  1. /**
  2. * Em uso
  3. */
  4. 'use strict'
  5. var AppSettings = require("./config/server.js");
  6. var express = require('express');
  7. var app = express(); // create our app w/ express
  8. var mongoose = require('mongoose'); // mongoose for mongodb
  9. var port = process.env.PORT || 8080; // set the port
  10. var cors = require('cors')
  11. var morgan = require('morgan'); // log requests to the console (express4)
  12. var bodyParser = require('body-parser'); // pull information from HTML POST (express4)
  13. var methodOverride = require('method-override'); // simulate DELETE and PUT (express4)
  14.  
  15. app.use('/', express.static('app'));
  16.  
  17. // mongoose.connect("mongodb://[usr]:[pwd]@localhost:[port]/[db]");
  18. mongoose.connect(AppSettings.DATA_BASE);
  19.  
  20. var db = mongoose.connection;
  21. var dbCollection = db.collections;
  22.  
  23. // define model =================
  24. var User = mongoose.model('User', {
  25. senderID : String,
  26. messages: []
  27. });
  28.  
  29. app.use(cors())
  30. app.use(express.static(__dirname + '/app')); // set the static files location /public/img will be /img for users
  31. //pp.use(morgan('dev')); // log every request to the console
  32. app.use(bodyParser.urlencoded({'extended':'true'})); // parse application/x-www-form-urlencoded
  33. app.use(bodyParser.json()); // parse application/json
  34. app.use(bodyParser.json({ type: 'application/vnd.api+json' })); // parse application/vnd.api+json as json
  35. app.use(methodOverride());
  36.  
  37. // listen (start app with node server.js) ======================================
  38. app.listen(8080);
  39. console.log("App listening on port 8080");
  40.  
  41. app.get('/teste', function(req, res) {
  42. console.log("teste");
  43. res.send({"messages":[{"text": "enviando msg facebook"}]})
  44. });
  45.  
  46. // ROUTES
  47.  
  48. // Rota de login
  49. app.post('/login_admin', (req, res) => {
  50. res.setHeader('Access-Control-Allow-Origin', '*');
  51.  
  52. var USER_DEFAULT = "admin";
  53. var PASS_WORD_DEFAULT = "admin1020";
  54.  
  55. var user_login = req.body.login;
  56. var user_password = req.body.password;
  57.  
  58. // Verificação de usuário
  59. if (USER_DEFAULT == user_login) {
  60. // Verificação de senha
  61. if (PASS_WORD_DEFAULT == user_password) {
  62. res.send({"res": "OK"});
  63. } else {
  64. res.send({"res": "Senha incorreta"});
  65. }
  66. } else {
  67. res.send({"res": "Usuário incorreto"});
  68. }
  69. });
  70.  
  71.  
  72. var Schema = mongoose.Schema;
  73. var adminusersDataSchema = new Schema({
  74. input: String,
  75. output: String,
  76. messages: Array,
  77. context: {}, // para poder aceitar um array com informacoes dentro dele
  78. infoimage: Array
  79. }, {collection: 'users'});
  80.  
  81. // Pega todos os usuarios
  82. app.post('/get_users', (req, res) =>{
  83. res.setHeader('Access-Control-Allow-Origin','*');
  84.  
  85. var adminUsersDb = mongoose.model('adminUsersDb', adminusersDataSchema);
  86. var adminUsersConsultaObj = {} // || consulta
  87. adminUsersDb.find().then(function(adminUsersConsultaObj) {
  88. if(adminUsersConsultaObj == 0){
  89. console.log("get_users: Não encontrei usuários")
  90. res.send(adminUsersConsultaObj)
  91. }
  92.  
  93. if(adminUsersConsultaObj.length > 0){
  94. console.log("get_users: Encontrei usuários")
  95. res.send(adminUsersConsultaObj)
  96. }
  97. });
  98. });
  99.  
  100. // Pega um usuário por id
  101. app.post('/get_user', (req, res) => {
  102.  
  103. var consulta = {
  104. context: req.body
  105. }
  106.  
  107. var adminUsersDb = mongoose.model('adminUsersDb', adminusersDataSchema);
  108. var adminUsersConsultaObj = {};//consulta; // || consulta
  109. adminUsersDb.find({ "senderID": consulta.context.id }).then(function(adminUsersConsultaObj) {
  110. if(adminUsersConsultaObj == 0) {
  111. res.send(adminUsersConsultaObj); // se nao existe devolve ele mesmo sem o Conversation id
  112. console.log('get_user: Nenhum usuário');
  113. }
  114.  
  115. if(adminUsersConsultaObj.length > 0) {
  116. console.log("get_user: Encontrei usuários");
  117. res.send(adminUsersConsultaObj); // Se existe devolve a ultima atualizacao
  118. }
  119. });
  120. });
  121.  
  122. // Nova missão
  123.  
  124. var missionSchema = mongoose.Schema({
  125. "pergunta": { type:String },
  126. "title": { type:String },
  127. "type": { type:Number },
  128. "tag": { type:String },
  129. "pontos": { type:Number },
  130. "status": { type:Number },
  131. "resposta": [{}],
  132. "observacao": { type:{} },
  133. "observacaoMissao": { type:{} },
  134. "date_inicio": { type:Number },
  135. "date_final": { type:Number }
  136. });
  137.  
  138. app.post('/new-mission', (req, res) => {
  139.  
  140. let response = req.body.mission
  141.  
  142. var data = {
  143. "pergunta": response.pergunta,
  144. "title": response.title,
  145. "type": parseInt(response.type),
  146. "tag": response.tag,
  147. "pontos": parseInt(response.pontos),
  148. "status": response.status,
  149. "resposta": response.resposta.res,
  150. "observacao": "{'pesquisa':0, 'quiz':1, 'leitura':2, 'indicacao':3, 'watson':4, 'imagemAleatoria':5}",
  151. "observacaoMissao" : "{'ativa':0, 'inativa':1 }",
  152. "date_inicio": response.date_inicio,
  153. "date_final": response.date_final
  154. }
  155.  
  156. //console.log(data);
  157.  
  158. var Missao = mongoose.model('missoes', missionSchema); // aqui onde defino a colecao que vou inserir
  159.  
  160. var notification = new Missao(data); // aqui eu to chamando essa colecao e inserindo data dentro dela
  161. notification.save(function (err) { // aqui depois de criada ela salva
  162. //if (err) return handleError(err);
  163. // saved!
  164. })
  165. res.send({"res":"OK"});
  166. });
  167.  
  168. // Fim nova missão
  169.  
  170. // Lista de missões
  171.  
  172. app.post('/get_missions', (req, res) =>{
  173. res.setHeader('Access-Control-Allow-Origin','*');
  174.  
  175. var missionsDB = mongoose.model('missoes', missionSchema);
  176. var missionsConsultObj = {} // || consulta
  177. missionsDB.find().then(function(missionsConsultObj) {
  178. if(missionsConsultObj == 0){
  179. console.log(missionsConsultObj)
  180. // console.log(consulta)
  181. res.send(missionsConsultObj) // se nao existe devolve ele mesmo sem o Conversation id
  182. console.log('get_missions: Nenhuma missão')
  183. }
  184.  
  185. if(missionsConsultObj.length > 0) {
  186. console.log("get_missions: Encontrei missões")
  187. res.send(missionsConsultObj) // Se existe devolve a ultima atualizacao
  188. }
  189. });
  190. });
  191. // Fim lista de missões
  192.  
  193.  
  194. var missoesConsultaDataSchema = new Schema({
  195. input: String,
  196. title:String,
  197. pergunta: {},
  198. type:{},
  199. tag:{},
  200. status:{},
  201. pontos:{},
  202. date_inicio:{},
  203. date_final:{},
  204. resposta:{},
  205. observacao:{}
  206.  
  207. }, {collection: 'missoes'});
  208.  
  209. app.post('/missaoid', (req, res) =>{
  210.  
  211. console.log("req.body")
  212. console.log(req.body)
  213. console.log("req.body")
  214. console.log("Consultando missão")
  215. var busca = req.body._id
  216. var ObjectId = require('mongodb').ObjectId;
  217. var missaoDb = mongoose.model('missaoDb', missoesConsultaDataSchema);
  218. var missaoConsulta ={}
  219. missaoDb.findOne({"_id": ObjectId(busca)})
  220. .then((missaoConsulta)=> {
  221. // console.log(missaoConsulta)
  222. res.send(missaoConsulta)
  223. });
  224. });// post
  225.  
  226. app.post('/missaoedit', (req, res) =>{
  227. console.log("Editando missão")
  228.  
  229. var ObjectId = require('mongodb').ObjectId;
  230. var missaoObj = {};
  231. console.log(req.body.mission)
  232. var missaoProcess = req.body.mission
  233. console.log(missaoProcess)
  234.  
  235. var busca = missaoProcess._id
  236. var missaoDb = mongoose.model('missaoDb', missoesConsultaDataSchema);
  237.  
  238. missaoDb.findOneAndUpdate({"_id": ObjectId(busca)}, { $set: {
  239. "title" : missaoProcess.title,
  240. "pergunta" : missaoProcess.pergunta,
  241. "type" : parseInt(missaoProcess.type),
  242. "tag" : missaoProcess.tag,
  243. "status" : missaoProcess.status,
  244. "pontos" : parseInt(missaoProcess.pontos),
  245. "date_inicio" : missaoProcess.date_inicio,
  246. "date_final" : missaoProcess.date_final,
  247. "resposta" : [
  248. {
  249. "text" : missaoProcess.resposta[0].text || "",
  250. "payload" : missaoProcess.resposta[0].payload || ""
  251. },
  252. {
  253. "text" : missaoProcess.resposta[1].text || "",
  254. "payload" : missaoProcess.resposta[1].payload || ""
  255. },
  256. {
  257. "text" : missaoProcess.resposta[2].text || "",
  258. "payload" : missaoProcess.resposta[2].payload || ""
  259. }
  260. ],
  261. "observacao" : "{'pesquisa':0, 'quiz':1, 'leitura':2, 'indicacao':3, 'watson':4, 'imagemAleatoria':5}",
  262. "observacaoMissao" : "{'ativa':0, 'inativa':1 }"
  263. }
  264. }, {
  265. returnNewDocument: true
  266. }).then(function(err, missaoObj) {
  267. if (err) {
  268. console.log(err)
  269. res.send(err)
  270.  
  271. } else {
  272. console.log("Missao editada")
  273. res.send(missaoObj)
  274. }
  275. })
  276. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement