Answered step by step
Verified Expert Solution
Link Copied!

Question

1 Approved Answer

Write a Java program for a Customer Relationship Management(CRM) system with the following features: Customer: Name, Surname, ID (incremental ID by 1 for each new

Write a Java program for a Customer Relationship Management(CRM) system with the following features: Customer: Name, Surname, ID (incremental ID by 1 for each new customer), Email, Phone, Address. Service: ID (incremental ID by1 for each group), Priority (High, Medium, Low, Other), ResolutionTimeFrame (Measured in Man hours), AssignedUser, Status(resolved or not), Fee. User (simple user of system): ID, Name, Surname, Username and Password (insert from code five fixed users), Address , PhoneNumber Manager: Name, Surname, Username and Password (insert from code one fixed manager). The program must: Present a Menu for the simple user after he has logged in with username and password. Menu: New Service New customer

Assign a service request to a specific user; Remove Service. Resolve Service Print information for customer with a certain ID Apply offers to the different type of customers.(Apply offer to the Loyal Customer with 10% discount on the fee) Overall number of Services requested by customers assigned to a user with a certain username. (requires manager password) Total amount of all fees of resolved Services processed by the user with a certain username (requires manager password). Total amount of all fees of resolved Services on the current day (requires manager password).

Change user from one to another (Each user should manage its own portfolio of customers) Change from User to Manager Change from Manager to User Exit

After implementation of the first phase start to include the following specifications: For the classes Customer and Services make sure you use a static integer field for the incremental ID of the objects of these classes. Introduce inheritance in the project design with the following: a. Add a new class Person class: with the following attributes; Name Surname ID Username Password Address PhoneNumber Classes inheriting from Person: i. Manager: has two additional features more than the Person called InternalPhoneNumber and PIN to start the software at the beginning of the day. ii. User: has these fields more than Person: InternalPhoneNumber, baseSalary.

b) Classes inheriting from Customer class The following types of Customer exists. i. SimpleCustomer ii. Class LoyalCustomer which has additional features: IndividualID and Discount. The manager inserts the discount amount periodically. (It may be also 0 ) iii. Class BusinessCustomer, which has additional features more than Customer, called Business ID(NIPT) and has an additional feature more than LoyalCustomer called BusinessDiscount. The manager will define the amount of BusinessDiscount. The overall discount is calculated as Discount + BusinessDiscount.

Define the following methods in all classes: calculateTotalFee( ) : Calculate the Total fee with the discount for each of these classes PrintInfo( ): Print all the information of the Service Complete the following extensions to the current project: 1. Start the program with a login window where you request username and password for the user. 2. Once the user is logged in show the following window with this menu: File Help (show a simple window with few instructions on how to use the program) Exit (close the program) Suggestion: Use JDesktopPane within JFrame Put in the File menu the following voices: New Customer (suggestion: open a new JInternalFrame for a new customer) Overall number of customers for some user (show a pop-up with the number of customers served or on hold) Total amount of all Customer services for the User (show a pop-up with the amount of Services served ) Within the internal frame implement the following: New Service for a specific customer o Choose Service type o Choose Service to be added. o Print Customer services info o Remove A service

Suggestion: use JMenu for first level (New Service), JMenu for second level (Example: Choose Service Type)

Step by Step Solution

There are 3 Steps involved in it

Step: 1

blur-text-image

Get Instant Access to Expert-Tailored Solutions

See step-by-step solutions with expert insights and AI powered tools for academic success

Step: 2

blur-text-image

Step: 3

blur-text-image

Ace Your Homework with AI

Get the answers you need in no time with our AI-driven, step-by-step assistance

Get Started

Recommended Textbook for

More Books

Students also viewed these Databases questions

Question

Enhance the basic quality of your voice.

Answered: 1 week ago

Question

Describe the features of and process used by a writing team.

Answered: 1 week ago