Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • A Adocoes
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 0
    • Issues 0
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • AGES-Adocoes
  • Adocoes
  • Wiki
  • framework

Last edited by Mateus Guzinski Haas Dec 01, 2017
Page history
This is an old version of this page. You can view the most recent version or browse the history.

framework

#Tutorial de como construir o framework do projeto

##Adapter.js

export default class Adapter {
	constructor() {
		self.mongoose = require('mongoose')
		self.MenorModel = mongoose.model('Menor')
	}

	save(data) {
			const menor = new self.MenorModel(data)

			return menor.save().then((data) => {
				return data
			})
		}
}

##Entity.js

import Joi from 'joi'

export default class Entity {
	constructor {
		self.Adapter = require('./Adapter').default
	}

	validateMenorData(data) {
		return new Promise((resolve, reject) => {
			const schema = Joi.object().keys({
    			username: Joi.string().optional(),
    			email: Joi.string().email()
			})
			
			const result = Joi.validate(data, schema);

			if (result) {
				resolve(data)
			} else {
				reject('')
			}
		})
	}

	createMenor(data) {
		const adapter = new self.Adapter
		
		return adapter.save(data)
	}
}
'''
##Interactor.js
--
```javascript
export default class Interactor {
    constructor() {
        self.Entity = require('./Entity').default
    }

    createUser(data) {
    	const entity = new self.Entity

    	return entity.validateMenorData(data)
    		.then(data => {
    		entity.createMenor(data)
    	})
    		.catch(error => {
    		console.log(error)
    	})
    }
}
'''
##translator.js
--
```javascript
export default class Translator {
    constructor() {
        self.Interactor = require('./Interactor').default
    }

    post(request, response) {
        const interactor = new self.Interactor()
        let data = request.body || {}

        interactor.createUser(data).then(data => console.log(data))
    }

    get()
}
Clone repository
  • Mongo DB
  • Node.js
  • comandos basicos de git
  • como proteger uma rota
  • configuracao do robomongo
  • convenio tjrs mprs pucrs fotos
  • framework
  • getting started
  • grupos
  • Home
  • integracao com slack
  • layouts
  • minha primeira api
  • mockups aplicativo
  • mockups web adm
View All Pages