Giter Club home page Giter Club logo

latinode's Introduction

A Dance Training Manage System Based on MongoDB and Node

Summary:

This's a dance training manage system based on NodeJS、Express Web Framework、Jade、MongoDB、MongoSkin and Nodemailer, etc..The web application is built for dancers of Alibaba and the goal is mainly focused on dance course signing up management.

Features

System consists of dancer forground and admin background. When started in production mode dancers can visit the basic forground pages without login. And if started in development mode the application will give you the admin's rights. Detailed as follows:

Dancer Forground:

  • Online Course Signing Up:
    • The sign up page will show you the realtime infomation of current courses, such as dance type, course capacity, total applied dancers, total approved dancers, and some other notice.
    • For New Dancers: You should fill the basic information, such as: job number, name, email, wangwang, etc.; Choosing the course you want to take; Then Submit; And the information will be stored into mongodb database.
    • For the Signed Dancers: Just fill your job number and system will fetch and fill the information you have submitted before; Then choose the course you want to take; And Submit. BTW: You can also update your information as well.
    • The applied courses will be audited by admin manually or by system automatically acoording to certain rules, such as whether man should be approved first or not, the capacity of course, total approved dancers and so on.
    • You can cancell the applied course before being auditted, and apply for quitness if it's approved.
    • Quiting of course should be audited too: Namely, could be refused or approved by admin in background.
  • Dancers can view their personal information and the courses they have taken.
  • Dancers could be searched or filtered according to their job number, department, gender, courses, course status or payment status.
  • The filtered result will be paged, and could be sorted according to certain field by forground user.
  • Generate the mailing list of dancers which satisfy certain condition.
  • Get a mail notification for those who have applied successfully or quit successfully.

Admin Background:

  • Course Life Cycle Management:

    • Newly applied course status---------------------------(waiting);
    • Dancer cancelled course status--------------------(cancelled);
    • Admin refused course status---------------------------(refused);
    • Admin approved course status----------------------(approved);
    • Quit applied after approving-----------------------(quitApplied);
    • Quit refused by admin---------------------------------(approved);
    • Quit approved by admin--------------------------------------(quit);

    Notice:The life cycle status changing of courses should satisfy their pre-conditions, for example: Waiting courses can't change to Quit directly, but to cancelled is ok. And only the Waiting or QuitApplied courses could be changed to Approved, but approved ones can not change to waiting directly, only the quitApplied course could be changed to quit after refunding, and so on.

  • Course Payment Status Manage

    • Courses could be set to paid by admin if they are.
    • Quit applied courses could be refund and set to be unpaid(and then approve the quitness).
  • Dancer Information Management

    • Dancer basic and advanced property(such as:level(<=9), vip grade(<=5), forever status、lock status and so on) could be modified by admin .

Deploy Instruction:

  1. Install NodeJs;
  2. Install MongoDB and start the service;
  3. Clone the repository: git clone https://github.com/hustcer/latinode.git;
  4. cd latinode & npm install -d & node app.js;
  5. That's All! Visit http://localhost:3000 in your browser, You will have it!

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.