Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- use strict';
- var mongoose = require('mongoose');
- var fs = require('fs');
- var parse = require('csv-parse');
- var Schema = mongoose.Schema;
- mongoose.connect('mongodb://127.0.0.1:27017/zoomerauth');
- var userSchema = new mongoose.Schema({
- username: { type: String, unique: true },
- password: String,
- email: { type: String, unique: true },
- isActive: String,
- user: {
- id: { type: mongoose.Schema.Types.ObjectId, ref: 'Account' },
- name: { type: String, default: '' }
- },
- timeCreated: { type: Date, default: Date.now },
- search: [String]
- });
- var accountSchema = new mongoose.Schema({
- user: {
- id: { type: mongoose.Schema.Types.ObjectId, ref: 'User' },
- name: { type: String, default: '' }
- },
- isVerified: { type: String, default: '' },
- verificationToken: { type: String, default: '' },
- name: {
- first: { type: String, default: '' },
- middle: { type: String, default: '' },
- last: { type: String, default: '' },
- full: { type: String, default: '' }
- },
- company: { type: String, default: '' },
- phone: { type: String, default: '' },
- zip: { type: String, default: '' },
- memberid: { type: String, default: '' },
- status: {
- id: { type: String, ref: 'Status' },
- name: { type: String, default: '' },
- userCreated: {
- id: { type: mongoose.Schema.Types.ObjectId, ref: 'User' },
- name: { type: String, default: '' },
- time: { type: Date, default: Date.now }
- }
- },
- userCreated: {
- id: { type: mongoose.Schema.Types.ObjectId, ref: 'User' },
- name: { type: String, default: '' },
- time: { type: Date, default: Date.now }
- },
- search: [String]
- });
- var User = mongoose.model('User', userSchema);
- var Account = mongoose.model('Account', accountSchema);
- fs.createReadStream('./salesforce.csv')
- .pipe(parse({delimiter: ','}))
- .on("data-invalid", function(data){
- console.log(csvrow);
- })
- .on('data', function(csvrow) {
- var u = {
- isActive: 'yes',
- username: csvrow[0],
- email: csvrow[0],
- search: [
- csvrow[1] + ' ' + csvrow[2],
- csvrow[0],
- ]
- };
- console.log (u);
- User.create(u, function (err, createdUser) {
- var user = createdUser;
- var displayName = csvrow[1] + ' ' + csvrow[2] || '';
- var nameParts = displayName.split(' ');
- var acct = {
- isVerified: 'no',
- 'name.first': nameParts[0],
- 'name.last': nameParts[1] || '',
- 'name.full': displayName,
- user: {
- id: user._id,
- name: user.username
- },
- search: [
- nameParts[0],
- nameParts[1] || ''
- ]
- };
- Account.create(acct, function(err, account) {
- if (err) {
- return workflow.emit('exception', err);
- }
- var fieldstoset = {$set: { user: { id: account._id, name: account.email } }};
- User.findByIdAndUpdate(account._id, fieldstoset, function(err) {
- if (err) {
- return workflow.emit('exception', err);
- }
- });
- });
- });
- })
- .on('end',function() {
- console.log('complete');
- });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement