Giter Club home page Giter Club logo

worklance's Introduction

WorkLance

Worklance - work and employee search service.

Table of contents

  1. General info
  2. Features
  3. Showcase
  4. Deployment
  5. Database structure
  6. Technologies

General info

Worklance is a web-service that allows you to easily find orders, create orders, search for employees, contact with them and create teams.

Roles

  • Guest
    • Can view start page
    • Can change localization
    • Can browse catalogs
    • Can search for orders, teams and employees in catalogs
    • Can sign in and sign up
    • Can view profiles, orders and team pages
  • User
    • Can do all the stuff, that guest can
    • Can edit his profile
    • Can view, accept or decline notifications
    • Can create, delete and edit orders and find his orders in catalog
    • Can log out
    • Can create team
  • Manager
    • Can operate only one team at a time
    • Can view team profile
    • Can edit team info
    • Can delete team
    • Can invite users to team by sending them notifications
    • Can only decline notifications from other managers
    • Can remove members from team

Features

Full service localization

All text content that is on pages can be translated by one click from English to Russian and vice versa.

Simple entities representation

Orders, teams and employees can be found in catalogs with page pagination and search forms.

Contact info management

There is an abbility to show or hide your contact info from other users by one checkbox, that can be changed during profile edit or order creation.

Cookie tokens

Service store cookie tokens in database in order to to allow users to log in easily.

Notifications system

Users can view their notifications with invitations from team managers and operate them

Presence of links

Presence of links ease the way users can view profiles and pages of other users


Showcase

small_catalogs.png small_manager_profile.png small_notifications.png small_order_creation.png small_orders_catalog.png small_team_members_editing.png


Deployment order

  • Clone repository
  • Edit configuration(Intellij) -> Deployment -> Application context(remove any value) -> Apply
  • File(Intellij)->Project Settings->Modules->Web Resource Directories->Choose corresponding webapp(src/main/webapp) directory path->Apply

Database structure

DataBase.PNG


Technologies

  • JDK 8 - Java Development kit 8
  • Maven - Project build tool
  • Tomcat - Servlet container
  • Java EE - Java Servlet, JSP(Java server pages)
  • MySQL - Open source SQL database
  • JDBC - Java Database Connectivity API
  • JSTL - Library for JSP
  • Log4j - Logging library
  • TestNG - Testing framework

worklance's People

Contributors

krealll avatar

Watchers

 avatar  avatar

worklance's Issues

Система оценивания разработчиков

Заказчикам важно для своего проекта найти квалифицированного разработчика. Ему в этом должна помочь система рейтингов. Чем выше рейтинг разработчика, тем выше гарантия качественного выполнения заказа.

Новички

Зачастую в аналогах высокий порог вхождения для новых разработчиков. Могу предложить создать систему, которая будет помогать молодым разработчикам искать заказы. Это сделает ваш сервис более привлекательным.

CodeReview

В файлах UserDao.java TeamDao.java OrderDao.java не реализованы методы общего интерфейса BaseDao: либо уберите их их интерфейса, либо реализуйте дополнительный функционал.

В файле Command.java - интерфейс реализует дефолтный метод addUsersLogin. Такие методы лучше убрать из Command interface так как они нарушают паттерн Command, и перенести добавление аттрибутов в JSP файлы.

В файле ProjectServlet.java - метод processRequest убрать и реализовать отдельную обработку для POST и GET запросов.

Во всем проекте отсутвует обработка ошибок try-catch, хотя классы-исключения реализованы. Необходимо добавить обработку ошибок.

В файле Order.java поле approximateBudget лучше сделать с классом BigDecimal, вместо Double. Первый класс имеет повышенную точность для денежных величин, в отличие от Double.

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.