Skip to content

🇪🇺 Maintenance / Repair Application. The object to be repaired or maintained can be white goods or a vehicle. It has a flexible product structure. 🇹🇷 Arıza / Bakım Uygulaması. Arıza veya bakımı yapılacak nesne bir araçta olabilir bir beyaz eşyada olabilir. Esnek bir ürün yapısı bulunmaktadır.

Notifications You must be signed in to change notification settings

oguzhancevik/technicalservice

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

79 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Codacy Badge Known Vulnerabilities

Technical Service 🔧 🔨

📄Turkish README

Used Technologies 🚀

  • JSF
  • PrimeFaces
  • WildFly 10
  • Hibernate
  • PostgreSQL
  • Maven

System Features ⚡

1- There is security in the system. There are features such as Register, Login and Forgot Password.

2- If the password forgotten feature is used, a password reset link will be sent to the user's mail and a new password will be set.

3- There are two roles in the system, Admin and Customer.

4- Users registered to the system can enter the system after the approval of admin.

5- Blocked customers cannot access the site.

6- The admin dashboard displays information about the system. For example; number of active customers, number of active devices, number of maintenance / repairs, number of admin.

7- The admin dashboard displays information about the system. For example; number of active customers, number of active devices, number of maintenance / repairs, number of admin.

8- Admin is responsible for repair or maintenance of customer device's.

9- If a customer wants to open a repair or maintenance on his/her device, firstly he/she must be member of system. Then the device should be registered and on which device to repair or maintenance an issue should open an issue.

10- Only one admin can work on an issue.

11- Automatic mail is sent to the user for the date of maintenance. Or, if there is any part change on a device, it goes to the user as an e-mail.

12- Admin can add to-do list. Each admin can have more than one to-do list.

13- Each to-do list can have a name, description, deadline, status, and sub to-do lists.

14- The status of the to-do list can be marked as continues , completed.

15- Admin can view, update and delete to-do lists. They can add to-do list to existing to-do list.

16- There may be dependencies between to-do lists. There may be sub-to-do lists that are dependent on a to-do list. If any of these dependent sub-to-do lists are not marked complete, the master list cannot be marked as complete.

Installation 🔐

  • The jar files under WEB-INF/lib/ directory are not included in the maven and must be included in the project.

  • You must create a database named TechnicalService into PostgreSql.

  • Because security is used in the application, you must add the following information into standalone/configuration/standalone.xml under WildFly directory (JBOSS_HOME).

Copy the following code between the <datasources> </datasources> tags.

<datasource jta="true" jndi-name="java:/TechnicalService" pool-name="TechnicalService" enabled="true" use-ccm="false">
  <connection-url>jdbc:postgresql://localhost:5432/TechnicalService</connection-url>
  <driver-class>org.postgresql.Driver</driver-class>
  <driver>postgresql-42.2.2.jar</driver>
  <security>
    <user-name>admin</user-name>
    <password>1234</password>
  </security>
  <validation>
    <check-valid-connection-sql>select 1</check-valid-connection-sql>
    <validate-on-match>true</validate-on-match>
    <background-validation>true</background-validation>
  </validation>
  <statement>
    <share-prepared-statements>false</share-prepared-statements>
  </statement>    
</datasource>

Copy the following code between the <security-domains> </security-domains> tags.

<security-domain name="TechnicalServiceSD" cache-type="default">
 <authentication>
   <login-module code="Database" flag="required">
     <module-option name="dsJndiName" value="java:/TechnicalService"/>
     <module-option name="principalsQuery" value="SELECT password FROM users WHERE email=?"/>
     <module-option name="rolesQuery" value="SELECT role, 'Roles' FROM users WHERE email=?"/>
   </login-module>
 </authentication>
</security-domain>
  • You must set the smtp and user information in the com/technicalservice/resource/mail.properties file for sending an email. You may need to grant permission from your email account (For example: trusted apps section must be open on Gmail)

  • Add image_seq sequence manually because we've uploaded the device image to the system.

  • You can set the path of the uploaded images from the com/technicalservice/resource/Prefix.java class. Then you must add a folder named image into the path you specified. You must also have the authority to write and read the address you specify.

Usage ✔️

1- Admin Dashboard
Admin Dashboard

2- Forgot Password
Forgot Password

3- Customer Registration
Customer Registration

4- Customer Login
Customer Login

5- Device CRUD
Device CRUD

6- Maintenance / Repair CRUD
Maintenance / Repair CRUD

7- Admin Maintenance / Repair
Admin Maintenance / Repair

8- To-Do CRUD
To-Do CRUD

Sources ℹ️

JavaDoc
Uml Class Diagram
Rest Services Screenshots
YouTube Playlist

About

🇪🇺 Maintenance / Repair Application. The object to be repaired or maintained can be white goods or a vehicle. It has a flexible product structure. 🇹🇷 Arıza / Bakım Uygulaması. Arıza veya bakımı yapılacak nesne bir araçta olabilir bir beyaz eşyada olabilir. Esnek bir ürün yapısı bulunmaktadır.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •