Giter Club home page Giter Club logo

tcet-opensource / erp-backend Goto Github PK

View Code? Open in Web Editor NEW
34.0 34.0 38.0 1.11 MB

The TCET ERP System automates operations at TCET (Thakur College of Engineering and Technology). This streamlined Enterprise Resource Planning (ERP) system manages admissions, student records, financial aid, course scheduling, and fees. Built with Node.js, Express, and MongoDB, it offers a robust and scalable solution for all college activites.

License: GNU General Public License v2.0

JavaScript 99.88% CSS 0.03% Dockerfile 0.03% Shell 0.07%
enterprise-resource-planning erp express hacktoberfest mongodb nodejs open-source

erp-backend's People

Contributors

aastha-s-rai avatar abhishekgoyal007 avatar alifanza259 avatar anipr2002 avatar ankit638-ux avatar aryanzs avatar asthasingh182004 avatar bhxshxn avatar deepti-50 avatar demonkillerr avatar dhruvrg avatar dz-ai avatar gauravpadam avatar harshau007 avatar hitansh159 avatar hricha11 avatar kskarthik5 avatar mouryasujit avatar parikshit-007 avatar rahulsingh2312 avatar ranjeet25 avatar sanika-wani avatar shreyam462 avatar skyline-r34v avatar sumitshinde-84 avatar sumitst05 avatar swathiharish-gh avatar tejasnair9977 avatar vikrantsingh22 avatar vinitchawda06 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

erp-backend's Issues

Create student education history model

Create a student education history model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of std_edu_history

Also make object of values that share same parent
for eg:

GRADUATION BRANCH    
GRADUATION DEGREE    
GRADUATION MARK PCT    
GRADUATION PASSING YEAR 

can be put as:

{
graduation: { 
    institute: Value, 
    branch: Value, 
    ...}
}

Setup

Setup backend for ERP system

  • used Express generator to laydown structure for the backend of the project
  • setup database connection with moongose

Create Infra model

Create an infra model file in models folder

added model with appropriate key values and conditions.
Models should be added in the model folder.
file name should be infra.js

create accreditation model

Create an Accreditation model

This model will refer to Accreditation received by a department or college.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be accreditation.js

Create employee bank model

Create an employee bank model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of emp_bank

Incorrect response on "/" route

When we hit for eg: localhost:3000/ it should respond with an error as there is no render used.
but instead, it replies with index.html
This is unexpected behavior.
remove index.html and update the index controller accordingly.

refactor and add CURD to organization model

new Schema:

parent: Organization

name: str

startDate: date

accreditation: Accreditation

create the following function for the organization model:

  • create
  • update
  • read
  • remove

use user.js for reference

setup a logger

setup Winston logger with the following config

  • log based on the environment
  • daily log in different file ie setup file rotary

create subject model

Create an subject model

This model will refer to the subjects taught by teachers, under a department.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be subject.js

create organization model

Create a organization model

This model will refer to the organization.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be organization.js

Create Module model

Create a Module model

This model will refer to modules under each course.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be module.js

create faculty metadata model

Create a faculty metadata model

This model will refer to the faculty metadata.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be fac_metadata.js

create faculty model

Create a faculty model

This model will refer to faculty working in college.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be faculty.js

Login endpoints

Create endpoint for

  • creating user
  • login
  • verifying user

Also make a middleware to authenticate the request

Create Endpoint for forget password

Flow for process

  • POST request for password reset
    • body contains uid and emailId
  • verify the details and send otp to user on emailId
  • POST request for new password
    • body contains OTP and new password

Create student college model

Create a student current college details model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of std_college

Create employee work history model

Create an employee work history model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of emp_work_history

Create student personal model

Create a student personal model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of std_personal

refactor course and add CURD

Change file name form subject.js to course.js

update schema

Name: str

Code: str  

theoryHours: int

tutorialHours: int

practicalHours: int

totalHours: virtual  (should return sum of theoryHours, tutorialHours, practicalHours)

totalCredit: int

ISAMarks: int

ESEMarks: int

theoryMarks: virtual (should return sum of ISAMarks, ESEMarks)

tutorialMarks: int

practicalMarks: int

totalMarks: virtual  (should return sum of theoryMarks, tutorialMarks, practicalMarks) 

semester: Semester

subType: str  ENUM: [open, professional, core]                 

prerequisites: str[]

objective: str

outcomes : [{outcome: str, RBTLevel: str[]}]        # this is the modules from syllabus

modules: Module[]

practicals: Practical[]

tutorials: Tutorial[]

assignments: Assignment[]

reccTextbooks: str[]

refBooks: str[]

evalScheme: str[int]

create the following function for the course model:

  • create
  • update
  • read
  • remove

use user.js for reference

Create employee current employment details model

Create an employee personal model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of emp_curr_details

Create employee personal model

Create an employee personal model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of emp_personal

create department model

Create a department model

This model will refer to the department.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be department.js

create attendance model

Create an attendance model

This model will refer to the attendance of employees and students.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be attendance.js

Create employee education history model

Create an employee education history model

attributes to include can be referred in the docs link:

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of emp_edu_history

Also, make object of values that share the same parent
for eg:

GRADUATION BRANCH    
GRADUATION DEGREE    
GRADUATION MARK PCT    
GRADUATION PASSING YEAR 

can be put as:

{
graduation: { 
    institute: Value, 
    branch: Value, 
    ...}
}```

create event model

Create a event model

This model will refer to information on events occuring in college in college.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be event.js

Save password in secure way

Save password after hashing
currently password is saved without hashing this creates violability.

User hash and salt. Look into the Bcrypt package and implement the hashing.
This should be provided in Util.js
Function should be called before saving and comparing.

Create student bank model

Create a student bank details model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of std_bank

Change OTP store

Currently otp store is just js object. On server reset all the otp will be lost.
If server is not restarted OTP Store will become a big object that will consume a lot of memory.

Requirement:

  1. create OTPStore model
  2. use It in appropriate manner

Create group model

Create a group model

This model will refer multiple students together as a group, in cases such as batch.

create a schema with key and value pairs with appropriate conditions.
Models should be added to the model folder.
the file name should be group.js

Update module schema and CURD operation

Module schema changes, change ( moduleNo ,moduleName ,moduleOutcome ,moduleContents ) to ( moduleNo ,moduleName , moduleOutcome, moduleContents )and update in CURD operation parameters

JWT binding with machine

currently JWT token can be achieved by third party and pretend to be the user.
bind JWT with machine by using IP or some other provision.

Create student medical model

Create a student medical history details model

attributes to include can be referred in the docs link: <ink to be added>

added model with appropriate key values and conditions.
Models should be added in the model folder under the file and model name of std_med_history

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.