From 1c4a8cc5d44c7966a03345de5f99fa1a0927958a Mon Sep 17 00:00:00 2001 From: Deepak Date: Mon, 20 Mar 2017 13:19:55 +0530 Subject: [PATCH] added parents data insertion when new student is added --- .../views/org/admin/students/addStudentForm.js | 50 +++++++++++----------- imports/collections/students/index.js | 8 ++-- imports/collections/students/methods.js | 45 +++++++++++++------ 3 files changed, 60 insertions(+), 43 deletions(-) diff --git a/imports/client/views/org/admin/students/addStudentForm.js b/imports/client/views/org/admin/students/addStudentForm.js index 68e9291..914e06a 100644 --- a/imports/client/views/org/admin/students/addStudentForm.js +++ b/imports/client/views/org/admin/students/addStudentForm.js @@ -15,33 +15,33 @@ export class AddStudentForm extends Component { constructor(props) { super(props); this.state = { - admissionId: "", - firstName: "", - lastName: "", - middleName: "", - email: "", + admissionId: "123", + firstName: "first", + lastName: "last", + middleName: "middle", + email: "deepak125.dk+21@gmail.com", dob: "", formattedDob: "", - gender: "", - rollNo: "", - class: "", - section: "", - community: "", - bloodGroup: "", - phone: "", - address: "", - city: "", - state: "", - parentName: "", - parentEmail: "", - relation: "", - profession: "", - parentGender: "", - parentPhone: "", - parentAddress: "", - parentCity: "", - parentState: "", - parentZipcode: "", + gender: "male", + rollNo: "1", + class: "2", + section: "B", + community: "SC", + bloodGroup: "B+", + phone: "9876543321", + address: "address", + city: "chennai", + state: "tn", + parentName: "parentName", + parentEmail: "deepak125.dk+41@gmail.com", + relation: "father", + profession: "farmer", + parentGender: "male", + parentPhone: "987655412", + parentAddress: "parentAddress", + parentCity: "parentCity", + parentState: "parentState", + parentZipcode: "parentZipcode", }; this.onUpdate = this.onUpdate.bind(this); this.handleDob = this.handleDob.bind(this); diff --git a/imports/collections/students/index.js b/imports/collections/students/index.js index c4a8a15..03a026e 100644 --- a/imports/collections/students/index.js +++ b/imports/collections/students/index.js @@ -95,16 +95,16 @@ Students.schema = new SimpleSchema({ parent: { type: [new SimpleSchema({ id: { type: String, }, - relatinship: { type: Boolean, }, + relatinship: { type: String, }, })], optional: true }, prevInstitute: { type: [new SimpleSchema({ name: { type: String, }, - fromYear: { type: Boolean, }, - toYear: { type: Boolean, }, - ydId: { type: Boolean, }, + fromYear: { type: String, }, + toYear: { type: String, }, + ydId: { type: String, }, })], optional: true }, diff --git a/imports/collections/students/methods.js b/imports/collections/students/methods.js index 97b7928..8137e5d 100644 --- a/imports/collections/students/methods.js +++ b/imports/collections/students/methods.js @@ -7,6 +7,7 @@ import { DDPRateLimiter } from 'meteor/ddp-rate-limiter'; import { Bert } from 'meteor/themeteorchef:bert'; import { Users } from '/imports/collections/users/index'; import { Students } from '/imports/collections/students/index'; +import { Parents } from '/imports/collections/parents/index'; import { Orgs } from '/imports/collections/orgs/index'; export const studentMethods = new ValidatedMethod({ name: 'student.method', @@ -60,26 +61,42 @@ export const addStudentManually = new ValidatedMethod({ const user = Users.findOne({_id: this.userId}); orgId = user.orgId; newStudentId = Users.insert({ - emails: [data.email], - username: firstName, - firstName: firstName, - middleName: middleName, - lastName: lastName, + emails: [{address:data.email, verified: false}], + username: data.firstName, + firstName: data.firstName, + middleName: data.middleName, + lastName: data.lastName, orgId: orgId, role: 'STUDENT' }); - newParentId = Users.insert({ - emails: [data.parentEmail], - username: parentName, - firstName: parentName, + newParentUserId = Users.insert({ + emails: [{address:data.parentEmail, verified: false}], + username: data.parentName, + firstName: data.parentName, orgId: orgId, role: 'PARENT' }); + if(newParentUserId){ + newParentId = Parents.insert({ + userId: newParentUserId, + orgId: orgId, + address: data.address, + gender: data.gender, + dob: data.dob, + rollNo: data.rollNo, + class: data.studentclass, + section: data.section, + bloodGroup: data.bloodGroup, + community: data.community, + }); + console.log("newParentUserId"); + console.log(newParentUserId); + } console.log("newUserId"); - console.log(newUserId); - if(newUserId){ + console.log(newStudentId); + if(newStudentId){ Students.insert({ - userId: newUserId, + userId: newStudentId, orgId: orgId, admissionId: data.admissionId, address: data.address, @@ -90,10 +107,10 @@ export const addStudentManually = new ValidatedMethod({ section: data.section, bloodGroup: data.bloodGroup, community: data.community, - + parent: [{id: newParentUserId, relatinship: data.relation}] }); } - return {newUserId}; + return {newStudentId}; }, }); -- 2.0.0