diff --git a/.idea/.gitignore b/.idea/.gitignore new file mode 100644 index 0000000..73f69e0 --- /dev/null +++ b/.idea/.gitignore @@ -0,0 +1,8 @@ +# Default ignored files +/shelf/ +/workspace.xml +# Datasource local storage ignored files +/dataSources/ +/dataSources.local.xml +# Editor-based HTTP Client requests +/httpRequests/ diff --git a/.idea/ant.xml b/.idea/ant.xml new file mode 100644 index 0000000..a2a4769 --- /dev/null +++ b/.idea/ant.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/biblio-main.iml b/.idea/biblio-main.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/.idea/biblio-main.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/dataSources.xml b/.idea/dataSources.xml new file mode 100644 index 0000000..52ae40d --- /dev/null +++ b/.idea/dataSources.xml @@ -0,0 +1,12 @@ + + + + + mysql.8 + true + com.mysql.cj.jdbc.Driver + jdbc:mysql://localhost:3306/uno_bibliotheque + $ProjectFileDir$ + + + \ No newline at end of file diff --git a/.idea/libraries/Jar_files.xml b/.idea/libraries/Jar_files.xml new file mode 100644 index 0000000..9009d8d --- /dev/null +++ b/.idea/libraries/Jar_files.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/Uno_Bibliotheque.xml b/.idea/libraries/Uno_Bibliotheque.xml new file mode 100644 index 0000000..d3d6b32 --- /dev/null +++ b/.idea/libraries/Uno_Bibliotheque.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/lib.xml b/.idea/libraries/lib.xml new file mode 100644 index 0000000..fe05910 --- /dev/null +++ b/.idea/libraries/lib.xml @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/libraries/lib1.xml b/.idea/libraries/lib1.xml new file mode 100644 index 0000000..9d575d2 --- /dev/null +++ b/.idea/libraries/lib1.xml @@ -0,0 +1,12 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/.idea/misc.xml b/.idea/misc.xml new file mode 100644 index 0000000..abf7648 --- /dev/null +++ b/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.idea/modules.xml b/.idea/modules.xml new file mode 100644 index 0000000..dbb0b54 --- /dev/null +++ b/.idea/modules.xml @@ -0,0 +1,8 @@ + + + + + + + + \ No newline at end of file diff --git a/.metadata/.lock b/.metadata/.lock new file mode 100644 index 0000000..e69de29 diff --git a/.metadata/.log b/.metadata/.log new file mode 100644 index 0000000..a1b2479 --- /dev/null +++ b/.metadata/.log @@ -0,0 +1,75 @@ +!SESSION 2023-05-06 03:32:57.181 ----------------------------------------------- +eclipse.buildId=4.27.0.20230309-1200 +java.version=17.0.1 +java.vendor=Oracle Corporation +BootLoader constants: OS=win32, ARCH=x86_64, WS=win32, NL=en_GB +Framework arguments: -product org.eclipse.epp.package.java.product +Command-line arguments: -os win32 -ws win32 -arch x86_64 -product org.eclipse.epp.package.java.product + +!ENTRY ch.qos.logback.classic 1 0 2023-05-06 03:33:02.355 +!MESSAGE Activated before the state location was initialized. Retry after the state location is initialized. + +!ENTRY ch.qos.logback.classic 1 0 2023-05-06 03:33:24.656 +!MESSAGE Logback config file: C:\Users\GHILAS\Desktop\biblio-main\.metadata\.plugins\org.eclipse.m2e.logback\logback.2.1.100.20230106-1511.xml + +!ENTRY org.eclipse.jface 2 0 2023-05-06 03:33:46.158 +!MESSAGE Keybinding conflicts occurred. They may interfere with normal accelerator operation. +!SUBENTRY 1 org.eclipse.jface 2 0 2023-05-06 03:33:46.159 +!MESSAGE A conflict occurred for CTRL+SHIFT+T: +Binding(CTRL+SHIFT+T, + ParameterizedCommand(Command(org.eclipse.jdt.ui.navigate.open.type,Open Type, + Open a type in a Java editor, + Category(org.eclipse.ui.category.navigate,Navigate,null,true), + WorkbenchHandlerServiceHandler("org.eclipse.jdt.ui.navigate.open.type"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) +Binding(CTRL+SHIFT+T, + ParameterizedCommand(Command(org.eclipse.lsp4e.symbolinworkspace,Go to Symbol in Workspace, + , + Category(org.eclipse.lsp4e.category,Language Servers,null,true), + WorkbenchHandlerServiceHandler("org.eclipse.lsp4e.symbolinworkspace"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) +!SUBENTRY 1 org.eclipse.jface 2 0 2023-05-06 03:33:46.159 +!MESSAGE A conflict occurred for ALT+SHIFT+R: +Binding(ALT+SHIFT+R, + ParameterizedCommand(Command(org.eclipse.jdt.ui.edit.text.java.rename.element,Rename - Refactoring , + Rename the selected element, + Category(org.eclipse.jdt.ui.category.refactoring,Refactor - Java,Java Refactoring Actions,true), + WorkbenchHandlerServiceHandler("org.eclipse.jdt.ui.edit.text.java.rename.element"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) +Binding(ALT+SHIFT+R, + ParameterizedCommand(Command(org.eclipse.ui.edit.rename,Rename, + Rename the selected item, + Category(org.eclipse.ui.category.file,File,null,true), + WorkbenchHandlerServiceHandler("org.eclipse.ui.edit.rename"), + ,,true),null), + org.eclipse.ui.defaultAcceleratorConfiguration, + org.eclipse.ui.contexts.window,,,system) + +!ENTRY org.eclipse.egit.ui 2 0 2023-05-06 03:33:54.549 +!MESSAGE Warning: The environment variable HOME is not set. The following directory will be used to store the Git +user global configuration and to define the default location to store repositories: 'C:\Users\GHILAS'. If this is +not correct please set the HOME environment variable and restart Eclipse. Otherwise Git for Windows and +EGit might behave differently since they see different configuration options. +This warning can be switched off on the Team > Git > Confirmations and Warnings preference page. + +!ENTRY org.eclipse.ui.ide 4 0 2023-05-06 03:35:19.515 +!MESSAGE Could not import project located at C:\Users\GHILAS\Desktop\biblio-main +!STACK 0 +org.eclipse.ui.internal.wizards.datatransfer.CouldNotImportProjectException: Could not import project located at C:\Users\GHILAS\Desktop\biblio-main + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.toExistingOrNewProject(SmartImportJob.java:565) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.run(SmartImportJob.java:252) + at org.eclipse.core.internal.jobs.Worker.run(Worker.java:63) +Caused by: org.eclipse.core.internal.resources.ResourceException: Invalid project description. + at org.eclipse.core.internal.resources.Project.checkDescription(Project.java:178) + at org.eclipse.core.internal.resources.Project.assertCreateRequirements(Project.java:62) + at org.eclipse.core.internal.resources.Project.create(Project.java:272) + at org.eclipse.core.internal.resources.Project.create(Project.java:258) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.createOrImportProject(SmartImportJob.java:604) + at org.eclipse.ui.internal.wizards.datatransfer.SmartImportJob.toExistingOrNewProject(SmartImportJob.java:552) + ... 2 more diff --git a/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location b/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location new file mode 100644 index 0000000..f07a620 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.projects/.org.eclipse.egit.core.cmp/.location differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version new file mode 100644 index 0000000..25cb955 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/history.version @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index new file mode 100644 index 0000000..d237251 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.index differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version new file mode 100644 index 0000000..6b2aaa7 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.resources/.root/.indexes/properties.version @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree b/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree new file mode 100644 index 0000000..dec6ad4 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.root/1.tree differ diff --git a/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources new file mode 100644 index 0000000..ee2fd2d Binary files /dev/null and b/.metadata/.plugins/org.eclipse.core.resources/.safetable/org.eclipse.core.resources differ diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..91b5b01 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,4 @@ +description.autobuilding=false +eclipse.preferences.version=1 +encoding=UTF-8 +version=1 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs new file mode 100644 index 0000000..6709404 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jdt.ui.prefs @@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.ui.formatterprofiles.version=23 +spelling_locale=en_GB +spelling_locale_initialized=true +typefilter_migrated_2=true +useAnnotationsPrefPage=true +useQuickDiffPrefPage=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs new file mode 100644 index 0000000..d56c53f --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.jsch.core.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.jsch.core.hasChangedDefaultWin32SshHome=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs new file mode 100644 index 0000000..67b1d96 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.m2e.discovery.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +org.eclipse.m2e.discovery.pref.projects= diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs new file mode 100644 index 0000000..4f048f5 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.ide.prefs @@ -0,0 +1,4 @@ +eclipse.preferences.version=1 +platformState=1680659630264 +quickStart=false +tipsAndTricks=true diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs new file mode 100644 index 0000000..08076f2 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +showIntro=false diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs new file mode 100644 index 0000000..7e380fb --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.ui.workbench.prefs @@ -0,0 +1,12 @@ +//org.eclipse.ui.commands/state/org.eclipse.ui.navigator.resources.nested.changeProjectPresentation/org.eclipse.ui.commands.radioState=false +PLUGINS_NOT_ACTIVATED_ON_STARTUP=;org.eclipse.m2e.discovery; +eclipse.preferences.version=1 +org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_END=41,41,41 +org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_BG_START=43,44,45 +org.eclipse.ui.workbench.ACTIVE_NOFOCUS_TAB_TEXT_COLOR=204,204,204 +org.eclipse.ui.workbench.ACTIVE_TAB_BG_END=41,41,41 +org.eclipse.ui.workbench.ACTIVE_TAB_BG_START=43,44,45 +org.eclipse.ui.workbench.ACTIVE_TAB_TEXT_COLOR=221,221,221 +org.eclipse.ui.workbench.INACTIVE_TAB_BG_END=49,53,56 +org.eclipse.ui.workbench.INACTIVE_TAB_BG_START=59,64,66 +org.eclipse.ui.workbench.INACTIVE_TAB_TEXT_COLOR=187,187,187 diff --git a/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs new file mode 100644 index 0000000..855d634 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.core.runtime/.settings/org.eclipse.urischeme.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +processedSchemes=,eclipse+command,eclipse+mpc diff --git a/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi new file mode 100644 index 0000000..8e24fbb --- /dev/null +++ b/.metadata/.plugins/org.eclipse.e4.workbench/workbench.xmi @@ -0,0 +1,2177 @@ + + + + activeSchemeId:org.eclipse.ui.defaultAcceleratorConfiguration + + + + + + + + topLevel + shellMaximized + + + + + persp.actionSet:org.eclipse.ui.cheatsheets.actionSet + persp.actionSet:org.eclipse.search.searchActionSet + persp.actionSet:org.eclipse.text.quicksearch.actionSet + persp.actionSet:org.eclipse.ui.edit.text.actionSet.annotationNavigation + persp.actionSet:org.eclipse.ui.edit.text.actionSet.navigation + persp.actionSet:org.eclipse.ui.edit.text.actionSet.convertLineDelimitersTo + persp.actionSet:org.eclipse.ui.externaltools.ExternalToolsSet + persp.actionSet:org.eclipse.ui.actionSet.keyBindings + persp.actionSet:org.eclipse.ui.actionSet.openFiles + persp.actionSet:org.eclipse.debug.ui.launchActionSet + persp.actionSet:org.eclipse.jdt.ui.JavaActionSet + persp.actionSet:org.eclipse.jdt.ui.JavaElementCreationActionSet + persp.actionSet:org.eclipse.ui.NavigateActionSet + persp.viewSC:org.eclipse.jdt.ui.PackageExplorer + persp.viewSC:org.eclipse.jdt.ui.TypeHierarchy + persp.viewSC:org.eclipse.jdt.ui.SourceView + persp.viewSC:org.eclipse.jdt.ui.JavadocView + persp.viewSC:org.eclipse.search.ui.views.SearchView + persp.viewSC:org.eclipse.ui.console.ConsoleView + persp.viewSC:org.eclipse.ui.views.ContentOutline + persp.viewSC:org.eclipse.ui.views.ProblemView + persp.viewSC:org.eclipse.ui.views.TaskList + persp.viewSC:org.eclipse.ui.views.ProgressView + persp.viewSC:org.eclipse.ui.navigator.ProjectExplorer + persp.viewSC:org.eclipse.ui.texteditor.TemplatesView + persp.viewSC:org.eclipse.pde.runtime.LogView + persp.newWizSC:org.eclipse.jdt.ui.wizards.JavaProjectWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewPackageCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewClassCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewInterfaceCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewEnumCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewRecordCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewAnnotationCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSourceFolderCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewSnippetFileCreationWizard + persp.newWizSC:org.eclipse.jdt.ui.wizards.NewJavaWorkingSetWizard + persp.newWizSC:org.eclipse.ui.wizards.new.folder + persp.newWizSC:org.eclipse.ui.wizards.new.file + persp.newWizSC:org.eclipse.ui.editors.wizards.UntitledTextFileWizard + persp.perspSC:org.eclipse.jdt.ui.JavaBrowsingPerspective + persp.perspSC:org.eclipse.debug.ui.DebugPerspective + persp.showIn:org.eclipse.jdt.ui.PackageExplorer + persp.showIn:org.eclipse.team.ui.GenericHistoryView + persp.showIn:org.eclipse.ui.navigator.ProjectExplorer + persp.actionSet:org.eclipse.debug.ui.breakpointActionSet + persp.actionSet:org.eclipse.jdt.debug.ui.JDTDebugActionSet + persp.showIn:org.eclipse.egit.ui.RepositoriesView + persp.newWizSC:org.eclipse.m2e.core.wizards.Maven2ProjectWizard + persp.actionSet:org.eclipse.eclemma.ui.CoverageActionSet + persp.showIn:org.eclipse.eclemma.ui.CoverageView + persp.viewSC:org.eclipse.tm.terminal.view.ui.TerminalsView + persp.showIn:org.eclipse.tm.terminal.view.ui.TerminalsView + persp.viewSC:org.eclipse.jdt.bcoview.views.BytecodeOutlineView + persp.newWizSC:org.eclipse.jdt.junit.wizards.NewTestCaseCreationWizard + persp.actionSet:org.eclipse.jdt.junit.JUnitActionSet + persp.viewSC:org.eclipse.ant.ui.views.AntView + + + + org.eclipse.e4.primaryNavigationStack + active + + View + categoryTag:Java + + + View + categoryTag:Java + + + View + categoryTag:General + + + View + categoryTag:Java + + + + + View + categoryTag:Git + + + + + + + + org.eclipse.e4.secondaryNavigationStack + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:Java + + + View + categoryTag:Ant + + + + + org.eclipse.e4.secondaryDataStack + + View + categoryTag:General + + + View + categoryTag:Java + + + View + categoryTag:Java + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:General + + + View + categoryTag:Terminal + + + + + + + + + View + categoryTag:Help + + + View + categoryTag:General + + + View + categoryTag:Help + + + + + + + View + categoryTag:Help + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Help + + + + org.eclipse.e4.primaryDataStack + EditorStack + + + + + + + View + categoryTag:Java + active + activeOnClose + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Java + + + + + View + categoryTag:General + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + + View + categoryTag:General + + ViewMenu + menuContribution:menu + + + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:Git + + + + + View + categoryTag:Terminal + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Ant + + + + toolbarSeparator + + + + Draggable + + + + toolbarSeparator + + + + Draggable + + + toolbarSeparator + + + + Draggable + + + Draggable + + + Draggable + + + toolbarSeparator + + + + Draggable + + + + toolbarSeparator + + + + toolbarSeparator + + + + Draggable + + + stretch + SHOW_RESTORE_MENU + + + Draggable + HIDEABLE + SHOW_RESTORE_MENU + + + + + stretch + + + Draggable + + + Draggable + + + + + TrimStack + Draggable + + + + + + + + + + + + + + + + + + + + + + platform:win32 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + platform:win32 + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Editor + removeOnHide + + + + + View + categoryTag:Ant + + + + + View + categoryTag:Gradle + + + + + View + categoryTag:Gradle + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Debug + + + View + categoryTag:Debug + + + + + View + categoryTag:Java + + + + + View + categoryTag:Git + + + + + View + categoryTag:Git + + + + + View + categoryTag:Git + + + + + View + categoryTag:Git + NoRestore + + + + + View + categoryTag:Git + + + + + View + categoryTag:Help + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Debug + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java Browsing + + + + + View + categoryTag:Java + + + + + View + categoryTag:General + + + + + View + categoryTag:Java + + + + + View + categoryTag:Java + + + + + View + categoryTag:Maven + + + + + View + categoryTag:Maven + + + + + View + categoryTag:Maven + + + + + View + categoryTag:Oomph + + + + + View + categoryTag:General + + + + + View + categoryTag:Version Control (Team) + + + + + View + categoryTag:Version Control (Team) + + + View + categoryTag:Help + + + + + View + categoryTag:Terminal + + + + + View + categoryTag:Other + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:Help + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + + View + categoryTag:General + + + + glue + move_after:PerspectiveSpacer + SHOW_RESTORE_MENU + + + move_after:Spacer Glue + HIDEABLE + SHOW_RESTORE_MENU + + + glue + move_after:SearchField + SHOW_RESTORE_MENU + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project new file mode 100644 index 0000000..3c10856 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.project @@ -0,0 +1,11 @@ + + + .org.eclipse.egit.core.cmp + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 0000000..99f26c0 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.egit.core/.org.eclipse.egit.core.cmp/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache new file mode 100644 index 0000000..593f470 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/assumedExternalFilesCache differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache b/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache new file mode 100644 index 0000000..593f470 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/externalFilesCache differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt new file mode 100644 index 0000000..8586397 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.core/javaLikeNames.txt @@ -0,0 +1 @@ +java \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache b/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache new file mode 100644 index 0000000..593f470 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/nonChainingJarsCache differ diff --git a/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat new file mode 100644 index 0000000..0edae4b Binary files /dev/null and b/.metadata/.plugins/org.eclipse.jdt.core/variablesAndContainers.dat differ diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml new file mode 100644 index 0000000..a4ee3cb --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.ui/OpenTypeHistory.xml @@ -0,0 +1,2 @@ + + diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml b/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml new file mode 100644 index 0000000..9e390f5 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.ui/QualifiedTypeNameHistory.xml @@ -0,0 +1,2 @@ + + diff --git a/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml b/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml new file mode 100644 index 0000000..68174e7 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.jdt.ui/dialog_settings.xml @@ -0,0 +1,10 @@ + +
+
+ + + + + +
+
diff --git a/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser b/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser new file mode 100644 index 0000000..abbf8e5 Binary files /dev/null and b/.metadata/.plugins/org.eclipse.m2e.core/workspaceState.ser differ diff --git a/.metadata/.plugins/org.eclipse.m2e.logback/0.log b/.metadata/.plugins/org.eclipse.m2e.logback/0.log new file mode 100644 index 0000000..909d4e5 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.m2e.logback/0.log @@ -0,0 +1 @@ +2023-05-06 03:33:55,056 [Worker-3: Loading available Gradle versions] INFO o.e.b.c.i.u.g.PublishedGradleVersions - Gradle version information cache is out-of-date. Trying to update. diff --git a/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.1.100.20230106-1511.xml b/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.1.100.20230106-1511.xml new file mode 100644 index 0000000..abdf1c7 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.m2e.logback/logback.2.1.100.20230106-1511.xml @@ -0,0 +1,41 @@ + + + + %date [%thread] %-5level %logger{35} - %msg%n + + + OFF + + + + + ${org.eclipse.m2e.log.dir}/0.log + + ${org.eclipse.m2e.log.dir}/%i.log + 1 + 10 + + + 10MB + + + %date [%thread] %-5level %logger{35} - %msg%n + + + + + + WARN + + + + + + + + + + + + + diff --git a/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup new file mode 100644 index 0000000..1f73e14 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.oomph.setup/workspace.setup @@ -0,0 +1,6 @@ + + diff --git a/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml b/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml new file mode 100644 index 0000000..5ca0b77 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.tips.ide/dialog_settings.xml @@ -0,0 +1,3 @@ + +
+
diff --git a/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml new file mode 100644 index 0000000..8b996a8 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.ide/dialog_settings.xml @@ -0,0 +1,12 @@ + +
+
+ + + + + + + +
+
diff --git a/.metadata/.plugins/org.eclipse.ui.intro/introstate.xml b/.metadata/.plugins/org.eclipse.ui.intro/introstate.xml new file mode 100644 index 0000000..02f134f --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.intro/introstate.xml @@ -0,0 +1,2 @@ + + \ No newline at end of file diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml new file mode 100644 index 0000000..5b583c4 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.workbench/dialog_settings.xml @@ -0,0 +1,5 @@ + +
+
+
+
diff --git a/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml new file mode 100644 index 0000000..a0b5c46 --- /dev/null +++ b/.metadata/.plugins/org.eclipse.ui.workbench/workingsets.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/.metadata/version.ini b/.metadata/version.ini new file mode 100644 index 0000000..d256488 --- /dev/null +++ b/.metadata/version.ini @@ -0,0 +1,3 @@ +#Sat May 06 03:33:19 WAT 2023 +org.eclipse.core.runtime=2 +org.eclipse.platform=4.27.0.v20230302-0300 diff --git a/biblio-main.iml b/biblio-main.iml new file mode 100644 index 0000000..a1f5803 --- /dev/null +++ b/biblio-main.iml @@ -0,0 +1,14 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/build.xml b/build.xml new file mode 100644 index 0000000..4b0e63a --- /dev/null +++ b/build.xml @@ -0,0 +1,53 @@ + + Builds, tests, and runs the project Uno_Bibliotheque. + + + diff --git a/build/built-jar.properties b/build/built-jar.properties new file mode 100644 index 0000000..1ef8b2b --- /dev/null +++ b/build/built-jar.properties @@ -0,0 +1,4 @@ +#Tue, 16 May 2023 21:17:42 +0100 + + +C\:\\Users\\GHILAS\\Desktop\\biblio-main= diff --git a/build/classes/control/DBconnect.class b/build/classes/control/DBconnect.class new file mode 100644 index 0000000..550a93f Binary files /dev/null and b/build/classes/control/DBconnect.class differ diff --git a/build/classes/control/biblioController.class b/build/classes/control/biblioController.class new file mode 100644 index 0000000..813aae6 Binary files /dev/null and b/build/classes/control/biblioController.class differ diff --git a/build/classes/control/connexionController.class b/build/classes/control/connexionController.class new file mode 100644 index 0000000..4506ecf Binary files /dev/null and b/build/classes/control/connexionController.class differ diff --git a/build/classes/control/gerantController$1.class b/build/classes/control/gerantController$1.class new file mode 100644 index 0000000..4c5d091 Binary files /dev/null and b/build/classes/control/gerantController$1.class differ diff --git a/build/classes/control/gerantController$2.class b/build/classes/control/gerantController$2.class new file mode 100644 index 0000000..5837dc2 Binary files /dev/null and b/build/classes/control/gerantController$2.class differ diff --git a/build/classes/control/gerantController$3.class b/build/classes/control/gerantController$3.class new file mode 100644 index 0000000..4c840c2 Binary files /dev/null and b/build/classes/control/gerantController$3.class differ diff --git a/build/classes/control/gerantController$4.class b/build/classes/control/gerantController$4.class new file mode 100644 index 0000000..d7bc3f9 Binary files /dev/null and b/build/classes/control/gerantController$4.class differ diff --git a/build/classes/control/gerantController.class b/build/classes/control/gerantController.class new file mode 100644 index 0000000..cff4056 Binary files /dev/null and b/build/classes/control/gerantController.class differ diff --git a/build/classes/images/bgbook.jpg b/build/classes/images/bgbook.jpg new file mode 100644 index 0000000..1182ee5 Binary files /dev/null and b/build/classes/images/bgbook.jpg differ diff --git a/build/classes/images/book.gif b/build/classes/images/book.gif new file mode 100644 index 0000000..4b265a8 Binary files /dev/null and b/build/classes/images/book.gif differ diff --git a/build/classes/images/book0.gif b/build/classes/images/book0.gif new file mode 100644 index 0000000..d26193b Binary files /dev/null and b/build/classes/images/book0.gif differ diff --git a/build/classes/images/book1.gif b/build/classes/images/book1.gif new file mode 100644 index 0000000..3193b07 Binary files /dev/null and b/build/classes/images/book1.gif differ diff --git a/build/classes/images/book2.gif b/build/classes/images/book2.gif new file mode 100644 index 0000000..e2fbd86 Binary files /dev/null and b/build/classes/images/book2.gif differ diff --git a/build/classes/images/books.gif b/build/classes/images/books.gif new file mode 100644 index 0000000..ba14b65 Binary files /dev/null and b/build/classes/images/books.gif differ diff --git a/build/classes/images/books.png b/build/classes/images/books.png new file mode 100644 index 0000000..a34cb52 Binary files /dev/null and b/build/classes/images/books.png differ diff --git a/build/classes/images/cancel.png b/build/classes/images/cancel.png new file mode 100644 index 0000000..bdfbff8 Binary files /dev/null and b/build/classes/images/cancel.png differ diff --git a/build/classes/images/emprunt.png b/build/classes/images/emprunt.png new file mode 100644 index 0000000..7f6a8ad Binary files /dev/null and b/build/classes/images/emprunt.png differ diff --git a/build/classes/images/icon_bibliothecaire.png b/build/classes/images/icon_bibliothecaire.png new file mode 100644 index 0000000..c38cc1a Binary files /dev/null and b/build/classes/images/icon_bibliothecaire.png differ diff --git a/build/classes/images/img1.png b/build/classes/images/img1.png new file mode 100644 index 0000000..002dbb1 Binary files /dev/null and b/build/classes/images/img1.png differ diff --git a/build/classes/images/maximize_icon.png b/build/classes/images/maximize_icon.png new file mode 100644 index 0000000..ecb1a51 Binary files /dev/null and b/build/classes/images/maximize_icon.png differ diff --git a/build/classes/images/minimize.png b/build/classes/images/minimize.png new file mode 100644 index 0000000..5f8714b Binary files /dev/null and b/build/classes/images/minimize.png differ diff --git a/build/classes/images/penalisation.png b/build/classes/images/penalisation.png new file mode 100644 index 0000000..76c94ab Binary files /dev/null and b/build/classes/images/penalisation.png differ diff --git a/build/classes/images/snct_prev_ui.png b/build/classes/images/snct_prev_ui.png new file mode 100644 index 0000000..81432b0 Binary files /dev/null and b/build/classes/images/snct_prev_ui.png differ diff --git a/build/classes/model/Bibliothecaire.class b/build/classes/model/Bibliothecaire.class new file mode 100644 index 0000000..80b5a4a Binary files /dev/null and b/build/classes/model/Bibliothecaire.class differ diff --git a/build/classes/model/Emprunt.class b/build/classes/model/Emprunt.class new file mode 100644 index 0000000..5fd5a44 Binary files /dev/null and b/build/classes/model/Emprunt.class differ diff --git a/build/classes/model/Filiere.class b/build/classes/model/Filiere.class new file mode 100644 index 0000000..f60cace Binary files /dev/null and b/build/classes/model/Filiere.class differ diff --git a/build/classes/model/Gestionnaire.class b/build/classes/model/Gestionnaire.class new file mode 100644 index 0000000..86f0f0c Binary files /dev/null and b/build/classes/model/Gestionnaire.class differ diff --git a/build/classes/model/Lecteur.class b/build/classes/model/Lecteur.class new file mode 100644 index 0000000..0070715 Binary files /dev/null and b/build/classes/model/Lecteur.class differ diff --git a/build/classes/model/Ouvrage.class b/build/classes/model/Ouvrage.class new file mode 100644 index 0000000..f0d4f8a Binary files /dev/null and b/build/classes/model/Ouvrage.class differ diff --git a/build/classes/model/Penalisation.class b/build/classes/model/Penalisation.class new file mode 100644 index 0000000..67d3d5e Binary files /dev/null and b/build/classes/model/Penalisation.class differ diff --git a/build/classes/model/Restitution.class b/build/classes/model/Restitution.class new file mode 100644 index 0000000..de1cf91 Binary files /dev/null and b/build/classes/model/Restitution.class differ diff --git a/build/classes/model/Sanction.class b/build/classes/model/Sanction.class new file mode 100644 index 0000000..0afe951 Binary files /dev/null and b/build/classes/model/Sanction.class differ diff --git "a/build/classes/model/Specialit\303\251.class" "b/build/classes/model/Specialit\303\251.class" new file mode 100644 index 0000000..8ffeb08 Binary files /dev/null and "b/build/classes/model/Specialit\303\251.class" differ diff --git a/build/classes/model/Utilisateur.class b/build/classes/model/Utilisateur.class new file mode 100644 index 0000000..1870f41 Binary files /dev/null and b/build/classes/model/Utilisateur.class differ diff --git "a/build/classes/style/espace_abonn\303\251e.css" "b/build/classes/style/espace_abonn\303\251e.css" new file mode 100644 index 0000000..b7ee3ca --- /dev/null +++ "b/build/classes/style/espace_abonn\303\251e.css" @@ -0,0 +1,26 @@ +/* +To change this license header, choose License Headers in Project Properties. +To change this template file, choose Tools | Templates +and open the template in the editor. +*/ +/* + Created on : 29 mars 2023, 14:39:33 + Author : Farah +*/ +.p-pan { + -fx-app-background: cornsilk; + -fx-background-color: -fx-app-background; + -fx-padding: 20; +} + +.add_pan { + + -fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff); + -fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.4), 10, 0.5, 0.0, 0.0); + -fx-background-radius: 15px; +} + +.tab_pan { + -fx-background-color: whitesmoke; +} + diff --git a/build/classes/uno_bibliotheque/Uno_Bibliotheque.class b/build/classes/uno_bibliotheque/Uno_Bibliotheque.class new file mode 100644 index 0000000..04e3a7c Binary files /dev/null and b/build/classes/uno_bibliotheque/Uno_Bibliotheque.class differ diff --git a/build/classes/view/connexion.fxml b/build/classes/view/connexion.fxml new file mode 100644 index 0000000..797a69e --- /dev/null +++ b/build/classes/view/connexion.fxml @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
+
+
diff --git a/build/classes/view/espace_bibliothecaire.fxml b/build/classes/view/espace_bibliothecaire.fxml new file mode 100644 index 0000000..22486a1 --- /dev/null +++ b/build/classes/view/espace_bibliothecaire.fxml @@ -0,0 +1,740 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dist/Uno_Bibliotheque.html b/dist/Uno_Bibliotheque.html new file mode 100644 index 0000000..f445be1 --- /dev/null +++ b/dist/Uno_Bibliotheque.html @@ -0,0 +1,45 @@ + + + + + + + +

Test page for Uno_Bibliotheque

+ Webstart: click to launch this app as webstart


+ + +
+ diff --git a/dist/Uno_Bibliotheque.jar b/dist/Uno_Bibliotheque.jar new file mode 100644 index 0000000..4113fa9 Binary files /dev/null and b/dist/Uno_Bibliotheque.jar differ diff --git a/dist/Uno_Bibliotheque.jnlp b/dist/Uno_Bibliotheque.jnlp new file mode 100644 index 0000000..4d074b9 --- /dev/null +++ b/dist/Uno_Bibliotheque.jnlp @@ -0,0 +1,27 @@ + + + + Uno_Bibliotheque + Mes documants + null + + + + + + + + + + + + + + + + + + + + + diff --git a/dist/lib/AnimateFX-1.2.0.jar b/dist/lib/AnimateFX-1.2.0.jar new file mode 100644 index 0000000..f2deda2 Binary files /dev/null and b/dist/lib/AnimateFX-1.2.0.jar differ diff --git a/dist/lib/adapter-0.2.0.jar b/dist/lib/adapter-0.2.0.jar new file mode 100644 index 0000000..8a1e7dc Binary files /dev/null and b/dist/lib/adapter-0.2.0.jar differ diff --git a/dist/lib/controlsfx-8.40.11.jar b/dist/lib/controlsfx-8.40.11.jar new file mode 100644 index 0000000..3e40987 Binary files /dev/null and b/dist/lib/controlsfx-8.40.11.jar differ diff --git a/dist/lib/fontawesomefx-8.9.jar b/dist/lib/fontawesomefx-8.9.jar new file mode 100644 index 0000000..7af093d Binary files /dev/null and b/dist/lib/fontawesomefx-8.9.jar differ diff --git a/dist/lib/jfoenix-8.0.8.jar b/dist/lib/jfoenix-8.0.8.jar new file mode 100644 index 0000000..dd0d67c Binary files /dev/null and b/dist/lib/jfoenix-8.0.8.jar differ diff --git a/dist/lib/jrt-fs.jar b/dist/lib/jrt-fs.jar new file mode 100644 index 0000000..f86ca07 Binary files /dev/null and b/dist/lib/jrt-fs.jar differ diff --git a/dist/lib/materialfx-11.13.5.jar b/dist/lib/materialfx-11.13.5.jar new file mode 100644 index 0000000..1c39fa9 Binary files /dev/null and b/dist/lib/materialfx-11.13.5.jar differ diff --git a/dist/lib/mysql-connector-java-5.1.40-bin.jar b/dist/lib/mysql-connector-java-5.1.40-bin.jar new file mode 100644 index 0000000..60bef5c Binary files /dev/null and b/dist/lib/mysql-connector-java-5.1.40-bin.jar differ diff --git a/dist/lib/virtualizedfx-11.2.6.1.jar b/dist/lib/virtualizedfx-11.2.6.1.jar new file mode 100644 index 0000000..5937788 Binary files /dev/null and b/dist/lib/virtualizedfx-11.2.6.1.jar differ diff --git a/dist/web-files/dtjava.js b/dist/web-files/dtjava.js new file mode 100644 index 0000000..b77ecd7 --- /dev/null +++ b/dist/web-files/dtjava.js @@ -0,0 +1,3958 @@ +/* + * Copyright (c) 2006, 2017, Oracle and/or its affiliates. All rights reserved. + * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. + */ + +/** + The Java Deployment Toolkit is a utility to deploy Java content in + the browser as applets or applications using the right version of Java. + If needed it can initiate an upgrade of user's system to install required + components of Java platform. +

+ Note that some of the Deployment Toolkit methods may not be fully operational if + used before web page body is loaded (because DT native plugins could not be instantiated). + If you intend to use it before web page DOM tree is ready then dtjava.js + needs to be loaded inside the body element of the page and before use of other DT APIs. + + @module java/deployment_toolkit +*/ +var dtjava = function() { + function notNull(o) { + return (o != undefined && o != null); + } + + function isDef(fn) { + return (fn != null && typeof fn != "undefined"); + } + + //return true if any of patterns from query list is found in the given string + function containsAny(lst, str) { + for (var q = 0; q < lst.length; q++) { + if (str.indexOf(lst[q]) != -1) { + return true; + } + } + return false; + } + + /* Location of static web content - images, javascript files. */ + var jscodebase = (function () { + // + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/nbproject/jfx-impl_backup.xml b/nbproject/jfx-impl_backup.xml new file mode 100644 index 0000000..69e9f66 --- /dev/null +++ b/nbproject/jfx-impl_backup.xml @@ -0,0 +1,4008 @@ + + + + + JavaFX-specific Ant calls + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ${cssfileslist} + + + + + + + + + + + + + + + + + + + + + + + + self.addMappedName( + (source.indexOf("jfxrt.jar") >= 0) || + (source.indexOf("deploy.jar") >= 0) || + (source.indexOf("javaws.jar") >= 0) || + (source.indexOf("plugin.jar") >= 0) + ? "" : source + ); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/nbproject/jfx-impl_backup_1.xml b/nbproject/jfx-impl_backup_1.xml new file mode 100644 index 0000000..6aeb313 --- /dev/null +++ b/nbproject/jfx-impl_backup_1.xml @@ -0,0 +1,4197 @@ + + + + + JavaFX-specific Ant calls + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + ${cssfileslist} + + + + + + + + + + + + + + + + + + + + + + + + self.addMappedName( + (source.indexOf("jfxrt.jar") >= 0) || + (source.indexOf("deploy.jar") >= 0) || + (source.indexOf("javaws.jar") >= 0) || + (source.indexOf("plugin.jar") >= 0) + ? "" : source + ); + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/nbproject/private/configs/Run_as_WebStart.properties b/nbproject/private/configs/Run_as_WebStart.properties new file mode 100644 index 0000000..86ae865 --- /dev/null +++ b/nbproject/private/configs/Run_as_WebStart.properties @@ -0,0 +1,2 @@ +# Do not modify this property in this configuration. It can be re-generated. +javafx.run.as=webstart diff --git a/nbproject/private/configs/Run_in_Browser.properties b/nbproject/private/configs/Run_in_Browser.properties new file mode 100644 index 0000000..f4e8549 --- /dev/null +++ b/nbproject/private/configs/Run_in_Browser.properties @@ -0,0 +1,2 @@ +# Do not modify this property in this configuration. It can be re-generated. +javafx.run.as=embedded diff --git a/nbproject/private/private.properties b/nbproject/private/private.properties new file mode 100644 index 0000000..f61405e --- /dev/null +++ b/nbproject/private/private.properties @@ -0,0 +1,23 @@ +auxiliary.org-netbeans-modules-projectapi.issue214819_5f_fx_5f_enabled=true +compile.on.save=true +do.depend=false +do.jar=true +do.jlink=false +# No need to modify this property unless customizing JavaFX Ant task infrastructure +endorsed.javafx.ant.classpath=. +file.reference.adapter-0.2.0.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\adapter-0.2.0.jar +file.reference.AnimateFX-1.2.0.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\AnimateFX-1.2.0.jar +file.reference.controlsfx-8.40.11.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\controlsfx-8.40.11.jar +file.reference.fontawesomefx-8.9.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\fontawesomefx-8.9.jar +file.reference.jfoenix-8.0.8.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\jfoenix-8.0.8.jar +file.reference.materialfx-11.13.5.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\materialfx-11.13.5.jar +file.reference.materialfx-11.13.5.jar-1=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\materialfx-11.13.5.jar +file.reference.mysql-connector-java-5.1.40-bin.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\mysql-connector-java-5.1.40-bin.jar +file.reference.virtualizedfx-11.2.6.1.jar=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files\\virtualizedfx-11.2.6.1.jar +javac.debug=true +javadoc.preview=true +javafx.run.as=standalone +javafx.run.inbrowser= +javafx.run.inbrowser.path=C:\\Program Files\\Internet Explorer\\iexplore.exe +jlink.strip=false +user.properties.file=C:\\Users\\GHILAS\\AppData\\Roaming\\NetBeans\\8.1\\build.properties diff --git a/nbproject/private/private.xml b/nbproject/private/private.xml new file mode 100644 index 0000000..cbfa0b2 --- /dev/null +++ b/nbproject/private/private.xml @@ -0,0 +1,15 @@ + + + + + + file:/C:/Users/GHILAS/Desktop/biblio-main/src/uno_bibliotheque/Uno_Bibliotheque.java + file:/C:/Users/GHILAS/Desktop/biblio-main/src/model/Emprunt.java + file:/C:/Users/GHILAS/Desktop/biblio-main/src/model/Bibliothecaire.java + file:/C:/Users/GHILAS/Desktop/biblio-main/src/model/Lecteur.java + file:/C:/Users/GHILAS/Desktop/biblio-main/src/control/biblioController.java + file:/C:/Users/GHILAS/Desktop/biblio-main/src/model/Utilisateur.java + file:/C:/Users/GHILAS/Desktop/biblio-main/src/control/gerantController.java + + + diff --git a/nbproject/project.properties b/nbproject/project.properties new file mode 100644 index 0000000..ef72423 --- /dev/null +++ b/nbproject/project.properties @@ -0,0 +1,174 @@ +annotation.processing.enabled=true +annotation.processing.enabled.in.editor=false +annotation.processing.processors.list= +annotation.processing.run.all.processors=true +annotation.processing.source.output=${build.generated.sources.dir}/ap-source-output +application.title=Uno_Bibliotheque +application.vendor=Mes documants +auxiliary.org-netbeans-spi-editor-hints-projects.perProjectHintSettingsFile=nbproject/cfg_hints.xml +build.classes.dir=${build.dir}/classes +build.classes.excludes=**/*.java,**/*.form +# This directory is removed when the project is cleaned: +build.dir=build +build.generated.dir=${build.dir}/generated +build.generated.sources.dir=${build.dir}/generated-sources +# Only compile against the classpath explicitly listed here: +build.sysclasspath=ignore +build.test.classes.dir=${build.dir}/test/classes +build.test.results.dir=${build.dir}/test/results +compile.on.save=true +compile.on.save.unsupported.javafx=true +# Uncomment to specify the preferred debugger connection transport: +#debug.transport=dt_socket +debug.classpath=\ + ${run.classpath} +debug.modulepath=\ + ${run.modulepath} +debug.test.classpath=\ + ${run.test.classpath} +debug.test.modulepath=\ + ${run.test.modulepath} +# This directory is removed when the project is cleaned: +dist.dir=dist +dist.jar=${dist.dir}/Uno_Bibliotheque.jar +dist.javadoc.dir=${dist.dir}/javadoc +endorsed.classpath= +excludes= +file.reference.adapter-0.2.0.jar=E:\\softdevs_projects\\Projet\\ui-netbeans\\materialFX\\adapter-0.2.0.jar +file.reference.adapter-0.2.0.jar-1=lib/adapter-0.2.0.jar +file.reference.AnimateFX-1.2.0.jar=C:\\Users\\Mes documants\\Desktop\\Learning\\ui-netbeans\\AnimateFX-1.2.0.jar +file.reference.AnimateFX-1.2.0.jar-1=lib/AnimateFX-1.2.0.jar +file.reference.controlsfx-8.40.11.jar=C:\\Users\\Mes documants\\Desktop\\Learning\\ui-netbeans\\controlsfx-8.40.11.jar +file.reference.controlsfx-8.40.11.jar-1=lib/controlsfx-8.40.11.jar +file.reference.fontawesomefx-8.9.jar=C:\\Users\\Mes documants\\Desktop\\Learning\\ui-netbeans\\fontawesomefx-8.9.jar +file.reference.fontawesomefx-8.9.jar-1=lib/fontawesomefx-8.9.jar +file.reference.jfoenix-8.0.8.jar=C:\\Users\\Mes documants\\Desktop\\Learning\\ui-netbeans\\jfoenix-8.0.8.jar +file.reference.jfoenix-8.0.8.jar-1=lib/jfoenix-8.0.8.jar +file.reference.materialfx-11.13.5.jar=C:\\Users\\Mes documants\\Desktop\\Learning\\ui-netbeans\\materialFX\\materialfx-11.13.5.jar +file.reference.materialfx-11.13.5.jar-1=E:\\softdevs_projects\\Projet\\ui-netbeans\\materialFX\\materialfx-11.13.5.jar +file.reference.materialfx-11.13.5.jar-2=lib/materialfx-11.13.5.jar +file.reference.mysql-connector-java-5.1.40-bin.jar=C:\\Users\\Mes documants\\Desktop\\don't touche\\mysql-connector-java-5.1.40-bin.jar +file.reference.projetMC-master-Jar_files=C:\\Users\\GHILAS\\Desktop\\S2 M1\\MC\\TP\\UNO BIBLIOTHEQUE\\projetMC-master\\Jar_files +file.reference.virtualizedfx-11.2.6.1.jar=E:\\softdevs_projects\\Projet\\ui-netbeans\\materialFX\\virtualizedfx-11.2.6.1.jar +file.reference.virtualizedfx-11.2.6.1.jar-1=lib/virtualizedfx-11.2.6.1.jar +includes=** +# Non-JavaFX jar file creation is deactivated in JavaFX 2.0+ projects +jar.archive.disabled=true +jar.compress=false +javac.classpath=\ + ${file.reference.controlsfx-8.40.11.jar}:\ + ${file.reference.AnimateFX-1.2.0.jar}:\ + ${file.reference.AnimateFX-1.2.0.jar-1}:\ + ${file.reference.adapter-0.2.0.jar-1}:\ + ${file.reference.controlsfx-8.40.11.jar-1}:\ + ${file.reference.fontawesomefx-8.9.jar-1}:\ + ${file.reference.jfoenix-8.0.8.jar-1}:\ + ${file.reference.materialfx-11.13.5.jar-2}:\ + ${file.reference.virtualizedfx-11.2.6.1.jar-1}:\ + ${file.reference.fontawesomefx-8.9.jar}:\ + ${file.reference.jfoenix-8.0.8.jar}:\ + ${file.reference.materialfx-11.13.5.jar}:\ + ${file.reference.mysql-connector-java-5.1.40-bin.jar}:\ + ${file.reference.adapter-0.2.0.jar}:\ + ${file.reference.materialfx-11.13.5.jar-1}:\ + ${file.reference.virtualizedfx-11.2.6.1.jar}:\ + ${libs.JDK_20_2.classpath}:\ + ${javafx.classpath.extension} +# Space-separated list of extra javac options +javac.compilerargs= +javac.deprecation=false +javac.external.vm=false +javac.modulepath=\ + ${file.reference.projetMC-master-Jar_files} +javac.processormodulepath= +javac.processorpath=\ + ${javac.classpath} +javac.source=1.8 +javac.target=1.8 +javac.test.classpath=\ + ${javac.classpath}:\ + ${build.classes.dir} +javac.test.modulepath=\ + ${javac.modulepath} +javac.test.processorpath=\ + ${javac.test.classpath} +javadoc.additionalparam= +javadoc.author=false +javadoc.encoding=${source.encoding} +javadoc.html5=false +javadoc.noindex=false +javadoc.nonavbar=false +javadoc.notree=false +javadoc.private=false +javadoc.splitindex=true +javadoc.use=true +javadoc.version=false +javadoc.windowtitle= +javafx.application.implementation.version=1.0 +javafx.binarycss=false +javafx.classpath.extension=\ + ${java.home}/lib/javaws.jar:\ + ${java.home}/lib/deploy.jar:\ + ${java.home}/lib/plugin.jar +javafx.deploy.adddesktopshortcut=false +javafx.deploy.addstartmenushortcut=false +javafx.deploy.allowoffline=true +# If true, application update mode is set to 'background', if false, update mode is set to 'eager' +javafx.deploy.backgroundupdate=false +javafx.deploy.disable.proxy=false +javafx.deploy.embedJNLP=true +javafx.deploy.includeDT=true +javafx.deploy.installpermanently=false +javafx.deploy.permissionselevated=false +# Set true to prevent creation of temporary copy of deployment artifacts before each run (disables concurrent runs) +javafx.disable.concurrent.runs=false +# Set true to enable multiple concurrent runs of the same WebStart or Run-in-Browser project +javafx.enable.concurrent.external.runs=false +# This is a JavaFX project +javafx.enabled=true +javafx.fallback.class=com.javafx.main.NoJavaFXFallback +# Main class for JavaFX +javafx.main.class=uno_bibliotheque.Uno_Bibliotheque +javafx.preloader.class= +# This project does not use Preloader +javafx.preloader.enabled=false +javafx.preloader.jar.filename= +javafx.preloader.jar.path= +javafx.preloader.project.path= +javafx.preloader.type=none +# Set true for GlassFish only. Rebases manifest classpaths of JARs in lib dir. Not usable with signed JARs. +javafx.rebase.libs=false +javafx.run.height=600 +javafx.run.width=800 +javafx.signing.blob=false +javafx.signing.enabled=false +javafx.signing.type=notsigned +jlink.launcher=false +jlink.launcher.name=Uno_Bibliotheque +# Pre-JavaFX 2.0 WebStart is deactivated in JavaFX 2.0+ projects +jnlp.enabled=false +# Main class for Java launcher +main.class=com.javafx.main.Main +# For improved security specify narrower Codebase manifest attribute to prevent RIAs from being repurposed +manifest.custom.codebase=* +# Specify Permissions manifest attribute to override default (choices: sandbox, all-permissions) +manifest.custom.permissions= +manifest.file=manifest.mf +meta.inf.dir=${src.dir}/META-INF +mkdist.disabled=false +native.bundling.enabled=false +platform.active=default_platform +run.classpath=\ + ${dist.jar}:\ + ${javac.classpath}:\ + ${build.classes.dir} +run.modulepath=\ + ${javac.modulepath} +run.test.classpath=\ + ${javac.test.classpath}:\ + ${build.test.classes.dir} +run.test.modulepath=\ + ${javac.test.modulepath} +source.encoding=UTF-8 +src.dir=src +test.src.dir=test diff --git a/nbproject/project.xml b/nbproject/project.xml new file mode 100644 index 0000000..dd00fbf --- /dev/null +++ b/nbproject/project.xml @@ -0,0 +1,28 @@ + + + org.netbeans.modules.java.j2seproject + + + + + + + + + + + + + Uno_Bibliotheque + + + + + + + + + .\lib\nblibraries.properties + + + diff --git a/out/production/biblio-main/control/DBconnect.class b/out/production/biblio-main/control/DBconnect.class new file mode 100644 index 0000000..e9515d6 Binary files /dev/null and b/out/production/biblio-main/control/DBconnect.class differ diff --git a/out/production/biblio-main/control/biblioController.class b/out/production/biblio-main/control/biblioController.class new file mode 100644 index 0000000..c629f4b Binary files /dev/null and b/out/production/biblio-main/control/biblioController.class differ diff --git a/out/production/biblio-main/control/connexionController.class b/out/production/biblio-main/control/connexionController.class new file mode 100644 index 0000000..ad047e2 Binary files /dev/null and b/out/production/biblio-main/control/connexionController.class differ diff --git a/out/production/biblio-main/control/gerantController$1.class b/out/production/biblio-main/control/gerantController$1.class new file mode 100644 index 0000000..23a358c Binary files /dev/null and b/out/production/biblio-main/control/gerantController$1.class differ diff --git a/out/production/biblio-main/control/gerantController.class b/out/production/biblio-main/control/gerantController.class new file mode 100644 index 0000000..d0b9b09 Binary files /dev/null and b/out/production/biblio-main/control/gerantController.class differ diff --git a/out/production/biblio-main/images/bgbook.jpg b/out/production/biblio-main/images/bgbook.jpg new file mode 100644 index 0000000..1182ee5 Binary files /dev/null and b/out/production/biblio-main/images/bgbook.jpg differ diff --git a/out/production/biblio-main/images/book.gif b/out/production/biblio-main/images/book.gif new file mode 100644 index 0000000..4b265a8 Binary files /dev/null and b/out/production/biblio-main/images/book.gif differ diff --git a/out/production/biblio-main/images/book0.gif b/out/production/biblio-main/images/book0.gif new file mode 100644 index 0000000..d26193b Binary files /dev/null and b/out/production/biblio-main/images/book0.gif differ diff --git a/out/production/biblio-main/images/book1.gif b/out/production/biblio-main/images/book1.gif new file mode 100644 index 0000000..3193b07 Binary files /dev/null and b/out/production/biblio-main/images/book1.gif differ diff --git a/out/production/biblio-main/images/book2.gif b/out/production/biblio-main/images/book2.gif new file mode 100644 index 0000000..e2fbd86 Binary files /dev/null and b/out/production/biblio-main/images/book2.gif differ diff --git a/out/production/biblio-main/images/books.gif b/out/production/biblio-main/images/books.gif new file mode 100644 index 0000000..ba14b65 Binary files /dev/null and b/out/production/biblio-main/images/books.gif differ diff --git a/out/production/biblio-main/images/books.png b/out/production/biblio-main/images/books.png new file mode 100644 index 0000000..a34cb52 Binary files /dev/null and b/out/production/biblio-main/images/books.png differ diff --git a/out/production/biblio-main/images/cancel.png b/out/production/biblio-main/images/cancel.png new file mode 100644 index 0000000..bdfbff8 Binary files /dev/null and b/out/production/biblio-main/images/cancel.png differ diff --git a/out/production/biblio-main/images/emprunt.png b/out/production/biblio-main/images/emprunt.png new file mode 100644 index 0000000..7f6a8ad Binary files /dev/null and b/out/production/biblio-main/images/emprunt.png differ diff --git a/out/production/biblio-main/images/icon_bibliothecaire.png b/out/production/biblio-main/images/icon_bibliothecaire.png new file mode 100644 index 0000000..c38cc1a Binary files /dev/null and b/out/production/biblio-main/images/icon_bibliothecaire.png differ diff --git a/out/production/biblio-main/images/img1.png b/out/production/biblio-main/images/img1.png new file mode 100644 index 0000000..002dbb1 Binary files /dev/null and b/out/production/biblio-main/images/img1.png differ diff --git a/out/production/biblio-main/images/maximize_icon.png b/out/production/biblio-main/images/maximize_icon.png new file mode 100644 index 0000000..ecb1a51 Binary files /dev/null and b/out/production/biblio-main/images/maximize_icon.png differ diff --git a/out/production/biblio-main/images/minimize.png b/out/production/biblio-main/images/minimize.png new file mode 100644 index 0000000..5f8714b Binary files /dev/null and b/out/production/biblio-main/images/minimize.png differ diff --git a/out/production/biblio-main/images/penalisation.png b/out/production/biblio-main/images/penalisation.png new file mode 100644 index 0000000..76c94ab Binary files /dev/null and b/out/production/biblio-main/images/penalisation.png differ diff --git a/out/production/biblio-main/images/snct_prev_ui.png b/out/production/biblio-main/images/snct_prev_ui.png new file mode 100644 index 0000000..81432b0 Binary files /dev/null and b/out/production/biblio-main/images/snct_prev_ui.png differ diff --git a/out/production/biblio-main/model/Bibliothecaire.class b/out/production/biblio-main/model/Bibliothecaire.class new file mode 100644 index 0000000..1d95462 Binary files /dev/null and b/out/production/biblio-main/model/Bibliothecaire.class differ diff --git a/out/production/biblio-main/model/Emprunt.class b/out/production/biblio-main/model/Emprunt.class new file mode 100644 index 0000000..402ba57 Binary files /dev/null and b/out/production/biblio-main/model/Emprunt.class differ diff --git a/out/production/biblio-main/model/Filiere.class b/out/production/biblio-main/model/Filiere.class new file mode 100644 index 0000000..b6f8fd4 Binary files /dev/null and b/out/production/biblio-main/model/Filiere.class differ diff --git a/out/production/biblio-main/model/Gestionnaire.class b/out/production/biblio-main/model/Gestionnaire.class new file mode 100644 index 0000000..8a5582c Binary files /dev/null and b/out/production/biblio-main/model/Gestionnaire.class differ diff --git a/out/production/biblio-main/model/Lecteur.class b/out/production/biblio-main/model/Lecteur.class new file mode 100644 index 0000000..7a728f5 Binary files /dev/null and b/out/production/biblio-main/model/Lecteur.class differ diff --git a/out/production/biblio-main/model/Ouvrage.class b/out/production/biblio-main/model/Ouvrage.class new file mode 100644 index 0000000..1b227e3 Binary files /dev/null and b/out/production/biblio-main/model/Ouvrage.class differ diff --git a/out/production/biblio-main/model/Penalisation.class b/out/production/biblio-main/model/Penalisation.class new file mode 100644 index 0000000..77003f9 Binary files /dev/null and b/out/production/biblio-main/model/Penalisation.class differ diff --git a/out/production/biblio-main/model/Restitution.class b/out/production/biblio-main/model/Restitution.class new file mode 100644 index 0000000..ec4dfa5 Binary files /dev/null and b/out/production/biblio-main/model/Restitution.class differ diff --git a/out/production/biblio-main/model/Sanction.class b/out/production/biblio-main/model/Sanction.class new file mode 100644 index 0000000..240f36f Binary files /dev/null and b/out/production/biblio-main/model/Sanction.class differ diff --git "a/out/production/biblio-main/model/Specialit\303\251.class" "b/out/production/biblio-main/model/Specialit\303\251.class" new file mode 100644 index 0000000..7490895 Binary files /dev/null and "b/out/production/biblio-main/model/Specialit\303\251.class" differ diff --git a/out/production/biblio-main/model/Utilisateur.class b/out/production/biblio-main/model/Utilisateur.class new file mode 100644 index 0000000..0ce31b2 Binary files /dev/null and b/out/production/biblio-main/model/Utilisateur.class differ diff --git "a/out/production/biblio-main/style/espace_abonn\303\251e.css" "b/out/production/biblio-main/style/espace_abonn\303\251e.css" new file mode 100644 index 0000000..b7ee3ca --- /dev/null +++ "b/out/production/biblio-main/style/espace_abonn\303\251e.css" @@ -0,0 +1,26 @@ +/* +To change this license header, choose License Headers in Project Properties. +To change this template file, choose Tools | Templates +and open the template in the editor. +*/ +/* + Created on : 29 mars 2023, 14:39:33 + Author : Farah +*/ +.p-pan { + -fx-app-background: cornsilk; + -fx-background-color: -fx-app-background; + -fx-padding: 20; +} + +.add_pan { + + -fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff); + -fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.4), 10, 0.5, 0.0, 0.0); + -fx-background-radius: 15px; +} + +.tab_pan { + -fx-background-color: whitesmoke; +} + diff --git a/out/production/biblio-main/uno_bibliotheque/Uno_Bibliotheque.class b/out/production/biblio-main/uno_bibliotheque/Uno_Bibliotheque.class new file mode 100644 index 0000000..d4a31fc Binary files /dev/null and b/out/production/biblio-main/uno_bibliotheque/Uno_Bibliotheque.class differ diff --git a/out/production/biblio-main/view/connexion.fxml b/out/production/biblio-main/view/connexion.fxml new file mode 100644 index 0000000..797a69e --- /dev/null +++ b/out/production/biblio-main/view/connexion.fxml @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + +

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + diff --git a/out/production/biblio-main/view/espace_bibliothecaire.fxml b/out/production/biblio-main/view/espace_bibliothecaire.fxml new file mode 100644 index 0000000..22486a1 --- /dev/null +++ b/out/production/biblio-main/view/espace_bibliothecaire.fxml @@ -0,0 +1,740 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/control/DBconnect.java b/src/control/DBconnect.java new file mode 100644 index 0000000..e2fe58b --- /dev/null +++ b/src/control/DBconnect.java @@ -0,0 +1,40 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package control; + +import java.sql.Connection; +import java.sql.DriverManager; + +/** + * + * @author Mes documants + */ +public class DBconnect { + public Connection ConnectBd() { + try { + Class.forName("com.mysql.jdbc.Driver"); + System.out.println("Driver ok"); + + String url = "jdbc:mysql://localhost:3306/uno_bibliotheque"; + String user = "root"; + String password = ""; + + Connection connection = DriverManager.getConnection(url, user, password); + System.out.println("Connection Succed"); + return connection; + } catch (Exception e) { + System.out.println("Connection Failed"); + System.out.println(e); + return null; + } + + } + + + + + +} diff --git a/src/control/biblioController.java b/src/control/biblioController.java new file mode 100644 index 0000000..2a919a4 --- /dev/null +++ b/src/control/biblioController.java @@ -0,0 +1,623 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package control; + +import de.jensd.fx.glyphs.fontawesome.FontAwesomeIconView; +import java.io.IOException; +import java.net.URL; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.ResourceBundle; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import javafx.fxml.FXML; +import javafx.fxml.FXMLLoader; +import javafx.fxml.Initializable; +import javafx.scene.Node; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.scene.control.Button; +import javafx.scene.control.ComboBox; +import javafx.scene.control.DatePicker; +import javafx.scene.control.Label; +import javafx.scene.control.TextArea; +import javafx.scene.control.TextField; +import javafx.scene.image.Image; +import javafx.scene.image.ImageView; +import javafx.scene.input.MouseEvent; +import javafx.scene.layout.AnchorPane; +import javafx.stage.Stage; +import javafx.stage.StageStyle; +import control.DBconnect; +import io.github.palexdev.materialfx.controls.MFXButton; +import java.sql.SQLException; +import java.util.logging.Level; +import java.util.logging.Logger; +import javafx.event.ActionEvent; +import javafx.geometry.Insets; +import javafx.scene.control.TableCell; +import javafx.scene.control.TableColumn; +import javafx.scene.control.TableView; +import javafx.scene.control.cell.PropertyValueFactory; +import javafx.scene.layout.HBox; +import javafx.util.Callback; +import model.Lecteur; +import model.Ouvrage; +import model.Emprunt; + +/** + * + * @author Mes documants + */ +public class biblioController implements Initializable{ + //left side pane gestion d'affichage des panneaux + @FXML + private Label user_name_label; + @FXML + private Button acc_btn; + @FXML + private Button book_btn; + @FXML + private Button emprunt_btn; + @FXML + private Button penalité_btn; + @FXML + private Label log_out_btn; + @FXML + private AnchorPane Acc_pan; + @FXML + private AnchorPane book_pan; + @FXML + private AnchorPane emprunt_pan; + @FXML + private AnchorPane rest_pan; + + //top border buttons gestion des fenetre reduire fermer ... + @FXML + private FontAwesomeIconView minus_icon; + @FXML + private Button close_btn; + @FXML + private FontAwesomeIconView x_icon; + @FXML + private ImageView max_min_btn; + @FXML + private Button reduire_btn; + + //////////////////recherche emprunt////////////////////// + @FXML + private TextField rechercheEmprunt_txt; + @FXML + private FontAwesomeIconView rechercheEmprunt_btn; + + /////////////////// text de l'acceuil/////////////// + @FXML + private Label totalOuvrage_label; + @FXML + private Label totalEmprunt_label; + @FXML + private Label totalRest_lable; + @FXML + private Label totalRetard_lable; + @FXML + private Label totalPenalité_label; + //////////////////////////////recherche ouvrage///////////// + @FXML + private TextField rechercheOuvrage_txt; + @FXML + private FontAwesomeIconView rechercheOuvrage_btn; + + @FXML + private TextField titreOuvrage_txt; + @FXML + private TextField annéeOuvrage_txt; + @FXML + private TextField maisonEdit_txt; + @FXML + private TextField auteurOuvrage_txt; + @FXML + private TextField prixOuvrage_txt; + @FXML + private TextField nbExemplaire_txt; + @FXML + private TextArea discOuvrage_txt; + @FXML + private TextField isbnOuvrage_txt; + @FXML + private Button ajouterOuvrage_btn;//bouton ajouter ouvrage + ObservableList ouvrageListTableView; + + @FXML + private Button imprimerTotal_btn;// bouton imprission de rapport quotidien + + //les variable fonction ajouter emprunt + @FXML + private TextField emprunt_idLecteur_txt; + @FXML + private TextField emprun_ouvrage1; + @FXML + private TextField emprun_ouvrage2; + @FXML + private TextField emprun_ouvrage3; + @FXML + private DatePicker emprunt_date; + @FXML + private TextField rest_date; + @FXML + private Button ajouterEmprunt_btn; + @FXML + private Button imprimerEmprunt_btn;//rapport d'un emprunt a imprimer pour donnée au lecteur + @FXML + private ComboBox combobox_filiere; + @FXML + private ComboBox combobox_specialite; + ObservableList listfiliere; + + + @FXML + private TableView ouvrage_tab; + @FXML + private TableView emprunt_tab; + @FXML + private TableView penalite_tab; + + + + /*les column dela table des ouvrages*/ + @FXML + private TableColumn isbn_col; + @FXML + private TableColumn titre_col; + @FXML + private TableColumn nbExemplaire_col; + @FXML + private TableColumn prix_col; + @FXML + private TableColumn filiere_col; + @FXML + private TableColumn specialité_col; + /****************************************************/ + /*les column de la tables des emprunt*/ + @FXML + private TableColumn idEmprunt_col; + @FXML + private TableColumn dateEmprunt_col; + @FXML + private TableColumn idLecteurEmprunt_col; + @FXML + private TableColumn codeOuvrage_col; + @FXML + private TableColumn dateRestEmprunt_col; + @FXML + private TableColumn prolongationEmprunt_col; + @FXML + private TableColumn restEmprunt_col; + /******************************************************/ + /*les columns de la table des pénalités */ + @FXML + private TableColumn idLecteurPenalité_col; + @FXML + private TableColumn nomLecteurPenalité_col; + @FXML + private TableColumn prenomLecteurPenalité_col; + @FXML + private TableColumn debutPenalité_col; + @FXML + private TableColumn finPenalité_col; + /****************************************************/ + + DBconnect db= new DBconnect(); + Connection connection = (Connection) db.ConnectBd(); + + + public void FiliereData(){ + try{ + String query="SELECT * FROM filiere"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + listfiliere= FXCollections.observableArrayList(); + while (result.next()) { + String item= result.getString("Nom_filiere"); + listfiliere.add(item); + + } + combobox_filiere.setItems(listfiliere); + + + }catch(Exception e){ + System.out.println("Failed..."); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + + } + + + } + public int getID_filiere(){ + try { + String query="SELECT * FROM filiere WHERE Nom_filiere='"+combobox_filiere.getValue()+"'"; + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + while (result.next()) { + int id_fil=result.getInt("ID"); + return id_fil; + } + + } catch (Exception e) { + System.out.println("Failed..."); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } + return 0; + } + + public String getNom_filiere(int Idfiliere){ + try { + String query="SELECT * FROM filiere WHERE ID=idfiliere"; + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + while (result.next()) { + String nom_fil=result.getString("Nom_filiere"); + return nom_fil; + } + + } catch (Exception e) { + System.out.println("Failed..."); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } + return ""; + } + + + + public int SprcialitéId(){ + try{ + String query="SELECT ID FROM specialite WHERE Nom_specialite='"+combobox_specialite.getValue()+"'"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + while (result.next()) { + int id_fil=result.getInt("ID"); + return id_fil; + } + + + }catch(Exception e){ + System.out.println("Failed..."); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + + }return 0; + }; + + public void SprcialitéData(){ + try{ + String query="SELECT * FROM specialite WHERE FiliereID='"+getID_filiere()+"'"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + listfiliere= FXCollections.observableArrayList(); + while (result.next()) { + String item= result.getString("Nom_specialite"); + listfiliere.add(item); + + } + combobox_specialite.setItems(listfiliere); + + }catch(Exception e){ + System.out.println("Failed..."); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + + } + + + } + + public void initialize(URL url, ResourceBundle rb) { + Acc_pan.setVisible(true); + book_pan.setVisible(false); + emprunt_pan.setVisible(false); + rest_pan.setVisible(false); + FiliereData(); + listOuvrageTableView(); + } + @FXML + private void getSpecialité(ActionEvent event) { + SprcialitéData(); + } + + + @FXML + private void show_acc(MouseEvent event) { + Acc_pan.setVisible(true); + book_pan.setVisible(false); + emprunt_pan.setVisible(false); + rest_pan.setVisible(false); + acc_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + book_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + emprunt_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + penalité_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + } + + @FXML + private void show_book(MouseEvent event) { + Acc_pan.setVisible(false); + book_pan.setVisible(true); + emprunt_pan.setVisible(false); + rest_pan.setVisible(false); + book_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + acc_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + emprunt_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + penalité_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + + } + + @FXML + private void show_emprunt(MouseEvent event) { + Acc_pan.setVisible(false); + book_pan.setVisible(false); + emprunt_pan.setVisible(true); + rest_pan.setVisible(false); + emprunt_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + book_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + acc_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + penalité_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + + } + + @FXML + private void log_out(MouseEvent event) throws IOException { + Stage stage= new Stage(); + Parent root=FXMLLoader.load(getClass().getResource("/view/connexion.fxml")); + Scene scene =new Scene(root); + stage.setScene(scene); + stage.initStyle(StageStyle.UNDECORATED); + stage.show(); + ((Node)event.getSource()).getScene().getWindow().hide(); + } + + @FXML + private void show_sanc(MouseEvent event) { + } + + @FXML + private void initial_color(MouseEvent event) { + reduire_btn.setStyle("-fx-background-color:transparent"); + minus_icon.setStyle("-fx-fill:black"); + } + + @FXML + private void blue_color(MouseEvent event) { + reduire_btn.setStyle("-fx-background-color:#13d4ee"); + minus_icon.setStyle("-fx-fill:white"); + } + + @FXML + private void reduire(MouseEvent event) { + Stage stage=(Stage) reduire_btn.getScene().getWindow(); + stage.setIconified(true); + } + + @FXML + private void initialclose_color(MouseEvent event) { + close_btn.setStyle("-fx-background-color:transparent"); + x_icon.setStyle("-fx-fill:black"); + } + + @FXML + private void red_color(MouseEvent event) { + close_btn.setStyle("-fx-background-color:red"); + x_icon.setStyle("-fx-fill:white"); + } + + @FXML + private void close(MouseEvent event) { + javafx.application.Platform.exit(); + + } + + @FXML + private void max_min_screen(MouseEvent event) { + Stage stage=(Stage) max_min_btn.getScene().getWindow(); + Image imgmin= new Image("/images/minimize.png"); + Image imgmax= new Image("/images/maximize_icon.png"); + if(stage.isMaximized()==false){ + stage.setMaximized(true); + max_min_btn.setImage(imgmin); + }else{ + stage.setMaximized(false); + max_min_btn.setImage(imgmax); + } + } + + @FXML + private void show_penalité(MouseEvent event) { + rest_pan.setVisible(true); + book_pan.setVisible(false); + emprunt_pan.setVisible(false); + Acc_pan.setVisible(false); + penalité_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + book_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + emprunt_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + acc_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + + } + + + + private void ajouterOuv(MouseEvent event) { + // if(checkFieldsAbonne()){ + //DialogErreurChampsVide(event,"Veuillez Saisir Tout Les Champs"); + // }else{ + + System.out.println("tout les champs sont complet"); + int id_filiere =getID_filiere(); + int id_specialité=SprcialitéId(); + Ouvrage model = new Ouvrage(0,"","","","",0,0.0f,0,"",0,0); + model.setIsbn(isbnOuvrage_txt.getText()); + model.setTitre(titreOuvrage_txt.getText()); + model.setAuteur(auteurOuvrage_txt.getText()); + model.setMaisonEdition(maisonEdit_txt.getText()); + model.setAnnéeEdition(Integer.valueOf(annéeOuvrage_txt.getText())); + model.setDiscription(discOuvrage_txt.getText()); + model.setNbExemplaires(Integer.valueOf(nbExemplaire_txt.getText())); + model.setPrix(Float.valueOf(prixOuvrage_txt.getText())); + model.setFiliere(id_filiere); + model.setSpecialite(id_specialité); + model.ajouterOuvrage(model,id_filiere,id_specialité); + + + }; + + // clearchampsabbonne(); + + // clearchampsabbonne(); + // } + + + + private int nombreOuvrages(TextField emprun_ouvrage1 ,TextField emprun_ouvrage2 ,TextField emprun_ouvrage3){ + int totalOuvrages=0; + if (!emprun_ouvrage1.getText().isEmpty()) { + totalOuvrages++; + } + + if (!emprun_ouvrage2.getText().isEmpty()) { + totalOuvrages++; + } + + if (!emprun_ouvrage3.getText().isEmpty()) { + totalOuvrages++; + } + return totalOuvrages; + } + + + + private void ajouterEmpr(MouseEvent event) { + // if(checkFieldsAbonne()){ + //DialogErreurChampsVide(event,"Veuillez Saisir Tout Les Champs"); + // }else{ + + System.out.println("tout les champs sont complet"); + // if (!emprun_ouvrage1.getText().isEmpty()) { + Emprunt model1 = new Emprunt(0,"","f","",""); + model1.setId_emprunt(Integer.valueOf(emprunt_idLecteur_txt.getText())); + model1.setCode_ouvrage(emprun_ouvrage1.getText()); + // model1.setDate_emprunt(emprunt_date.getValue().toString()); + // model1.setDate_restitution(rest_date.getText()); + model1.ajouterEmprunt(model1); + // } + + /* if (!emprun_ouvrage2.getText().isEmpty()) { + Emprunt model = new Emprunt(0,"","f","",""); + model.setId_emprunt(Integer.valueOf(emprunt_idLecteur_txt.getText())); + model.setCode_ouvrage(emprun_ouvrage2.getText()); + model.setDate_emprunt(emprunt_date.getValue().toString()); + model.setDate_restitution(rest_date.getText()); + model.ajouterEmprunt(model); + } + + if (!emprun_ouvrage3.getText().isEmpty()) { + Emprunt model2 = new Emprunt(0,"","f","",""); + model2.setId_emprunt(Integer.valueOf(emprunt_idLecteur_txt.getText())); + model2.setCode_ouvrage(emprun_ouvrage3.getText()); + model2.setDate_emprunt(emprunt_date.getValue().toString()); + model2.setDate_restitution(rest_date.getText()); + model2.ajouterEmprunt(model2); + }*/ + + + + }; + + // clearchampsabbonne(); + + // clearchampsabbonne(); + // } + + + + + + public void listOuvrageTableView() { + try{ // Exécution de la requête et récupération des résultats dans un ResultSet + String query="SELECT * FROM ouvrage"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + ouvrageListTableView= FXCollections.observableArrayList(); + // Initialisation d'une liste observable pour stocker les résultats + + while (result.next()) { // Boucle sur les résultats du ResultSet + Ouvrage ouv = new Ouvrage(0,"","","","",0,0.0f,0,"",0,0); // Création d'un objet Lecteur pour chaque ligne + ouv.setIsbn(result.getString("isbn")); // Récupération des données dans le ResultSet et mise à jour de l'objet Lecteur + ouv.setTitre(result.getString("Titre")); + ouv.setNbExemplaires(result.getInt("Nb_exemplaire")); + ouv.setPrix(result.getInt("Prix")); + ouv.setFiliere(result.getInt("SpecialiteID")); + ouv.setSpecialite(result.getInt("idSpecialite")); + ouvrageListTableView.add(ouv); // Ajout de l'objet Lecteur à la liste observable + } + + // Mise en place des colonnes dans le TableView à partir des propriétés de l'objet Lecteur + isbn_col.setCellValueFactory(new PropertyValueFactory<>("isbn")); + titre_col.setCellValueFactory(new PropertyValueFactory<>("titre")); + nbExemplaire_col.setCellValueFactory(new PropertyValueFactory<>("nbExemplaires")); + prix_col.setCellValueFactory(new PropertyValueFactory<>("prix")); + filiere_col.setCellValueFactory(new PropertyValueFactory<>("filiere")); + specialité_col.setCellValueFactory(new PropertyValueFactory<>("specialite")); + + +ouvrage_tab.setItems(ouvrageListTableView); + } catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } +} + + + + + + + + @FXML + private void rechercheEmprunt(MouseEvent event) { + } + + @FXML + private void imprimerTotalEmprunt(MouseEvent event) { + } + + @FXML + private void ajouterEmprunt(MouseEvent event) { + ajouterEmpr(event); + } + + @FXML + private void imprimerEmprunt(MouseEvent event) { + } + + + @FXML + private void rechercheOuvrage(MouseEvent event) { + } + + @FXML + private void ajouterOuvrage(MouseEvent event) { + ajouterOuv(event); + listOuvrageTableView(); + } + + + + + +} diff --git a/src/control/connexionController.java b/src/control/connexionController.java new file mode 100644 index 0000000..58e4a87 --- /dev/null +++ b/src/control/connexionController.java @@ -0,0 +1,255 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package control; + +import com.jfoenix.controls.JFXButton; +import com.jfoenix.controls.JFXPasswordField; +import com.jfoenix.controls.JFXTextField; +import de.jensd.fx.glyphs.fontawesome.FontAwesomeIconView; +import java.awt.GraphicsEnvironment; +import java.io.IOException; +import java.net.URL; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.util.ResourceBundle; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import javafx.event.ActionEvent; +import javafx.fxml.FXML; +import javafx.fxml.FXMLLoader; +import javafx.fxml.Initializable; +import javafx.scene.Node; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.scene.control.Button; +import javafx.scene.input.KeyCombination; +import javafx.scene.input.MouseEvent; +import javafx.stage.Stage; +import javafx.stage.StageStyle; +import control.DBconnect; +import javafx.geometry.Pos; +import javafx.scene.image.ImageView; +import javafx.util.Duration; +import org.controlsfx.control.Notifications; +/** + * FXML Controller class + * + * @author Mes documants + */ +public class connexionController implements Initializable { + + @FXML + private JFXButton btnlogin; + @FXML + private Button reduire_btn; + @FXML + private Button close_btn; + @FXML + private FontAwesomeIconView minus_icon; + @FXML + private FontAwesomeIconView x_icon; + @FXML + private JFXTextField userName_txt; + @FXML + private JFXPasswordField passWord_txt; + + ObservableList listUtilisateur; + /** + * Initializes the controller class. + */ + @Override + public void initialize(URL url, ResourceBundle rb) { + + } + +public int getUser(){ + try { + String query="SELECT * FROM utilisateur WHERE Nom_utilisateur='"+userName_txt.getText()+ + "' AND Mot_de_pass='"+passWord_txt.getText()+"'" +; DBconnect db= new DBconnect(); + Connection connection = (Connection) db.ConnectBd(); + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + + while (result.next()) { + int id_user = result.getInt("ID"); + return id_user; + } + } catch (Exception e) { + System.out.println("Failed..."); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + + } + return 0; +} + + + @FXML + private void connecter(MouseEvent event) throws IOException { + System.out.println(getUser()); + if(!userName_txt.getText().matches("a-zA-Z0-9]{4,}") && passWord_txt.getText().isEmpty()){ + Notifications notification =Notifications.create(); + notification.title("Error"); + notification.text("wrong userName or passWord"); + notification.hideAfter(Duration.seconds(5)); + notification.position(Pos.BASELINE_CENTER); + notification.show(); + passWord_txt.setText(""); + userName_txt.setText(""); + }else{ + if(getUser()==1){ + Stage stage= new Stage(); + Parent root=FXMLLoader.load(getClass().getResource("/view/espace_gerant.fxml")); + Scene scene =new Scene(root); + stage.setScene(scene); + stage.initStyle(StageStyle.UNDECORATED); + stage.show(); + ((Node)event.getSource()).getScene().getWindow().hide(); + }else{ + if(getUser()==0){ + Notifications notification =Notifications.create(); + notification.title("Error"); + notification.text("wrong userName or passWord"); + notification.hideAfter(Duration.seconds(5)); + notification.position(Pos.BASELINE_CENTER); + notification.show(); + passWord_txt.setText(""); + userName_txt.setText(""); + }else{ + Stage stage= new Stage(); + Parent root=FXMLLoader.load(getClass().getResource("/view/espace_bibliothecaire.fxml")); + Scene scene =new Scene(root); + stage.setScene(scene); + stage.initStyle(StageStyle.UNDECORATED); + stage.show(); + ((Node)event.getSource()).getScene().getWindow().hide(); + } + }} + + + } + + @FXML + private void initial_color(MouseEvent event) { + reduire_btn.setStyle("-fx-background-color:transparent"); + minus_icon.setStyle("-fx-fill:black"); + } + + @FXML + private void blue_color(MouseEvent event) { + reduire_btn.setStyle("-fx-background-color:#13d4ee"); + minus_icon.setStyle("-fx-fill:white"); + + } + + @FXML + private void reduire(MouseEvent event) { + Stage stage=(Stage) reduire_btn.getScene().getWindow(); + stage.setIconified(true); + } + + @FXML + private void initialcolse_color(MouseEvent event) { + close_btn.setStyle("-fx-background-color:transparent"); + x_icon.setStyle("-fx-fill:black"); + + } + + @FXML + private void red_color(MouseEvent event) { + close_btn.setStyle("-fx-background-color:red"); + x_icon.setStyle("-fx-fill:white"); + } + + @FXML + private void close(MouseEvent event) { + javafx.application.Platform.exit(); + } +} + + + + +/* + public int dureRetard(){ + int dureeR=0; + if (retard_jour_RDbtn.isSelected()){ + dureeR=1; + }else { + if(retard_semaine_RDbtn.isSelected()){ + dureeR= 7 ; + }else if(retard_mois_RDbtn.isSelected()){ + dureeR= 30; + } + } + return dureeR; + } + + public int dureSanction(){ + int dureeS=0; + if (retard_jour_RDbtn.isSelected()){ + dureeS=1; + }else { + if(retard_semaine_RDbtn.isSelected()){ + dureeS= 7 ; + }else if(retard_mois_RDbtn.isSelected()){ + dureeS= 30; + } + } + return dureeS; + } + + + + + public int convertToInteger(TextField textField) { + String value = textField.getText(); + int intValue = 0; + + try { + intValue = Integer.parseInt(value); + } catch (NumberFormatException e) { + // Handle the case where the value cannot be converted to an integer + // You can display an error message or take appropriate action here + e.printStackTrace(); + } + + return intValue; + } + + private void ajouterSanction(MouseEvent event) { + // if(checkFieldsAbonne()){ + // DialogErreurChampsVide(event,"Veuillez Saisir Tout Les Champs"); + // }else{ + + System.out.println("tout les champs sont complet"); + Sanction sanction = new Sanction(0,0); + int sanc=convertToInteger(sanction_txt); + sanction.setDuréeRetard(dureRetard()*sanc); + int ret=convertToInteger(retard_txt); + sanction.setDuréeSanction(dureSanction()*ret); + try { + String query = "INSERT INTO sanction (Durée_retard, Durée_sanction) " + + "VALUES ('" + sanction.getDuréeRetard() + "', '" + sanction.getDuréeSanction() + "')"; + DBconnect db = new DBconnect(); + try (Connection connection = db.ConnectBd()) { + Statement state = connection.createStatement(); + state.executeUpdate(query); + System.out.println("Added Sanction"); + state.close(); + } + } catch (Exception e) { + System.out.println("Failed to add sanction"); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } + DialogMessage(event,"Article a été Ajouter Avec Succes"); + + } + + // }*/ \ No newline at end of file diff --git a/src/control/gerantController.java b/src/control/gerantController.java new file mode 100644 index 0000000..46d0f1c --- /dev/null +++ b/src/control/gerantController.java @@ -0,0 +1,1267 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package control; + + +import com.jfoenix.controls.JFXComboBox; +import com.jfoenix.controls.JFXPasswordField; +import de.jensd.fx.glyphs.fontawesome.FontAwesomeIconView; +import io.github.palexdev.materialfx.controls.MFXButton; +import io.github.palexdev.materialfx.controls.MFXTableColumn; +import io.github.palexdev.materialfx.controls.MFXTableView; +import io.github.palexdev.materialfx.controls.MFXTextField; +import io.github.palexdev.materialfx.controls.cell.MFXTableRowCell; +import io.github.palexdev.materialfx.dialogs.MFXGenericDialog; +import io.github.palexdev.materialfx.dialogs.MFXGenericDialogBuilder; +import io.github.palexdev.materialfx.dialogs.MFXStageDialog; +import io.github.palexdev.materialfx.enums.ScrimPriority; +import io.github.palexdev.materialfx.filter.StringFilter; +import io.github.palexdev.materialfx.font.MFXFontIcon; +import java.awt.Dimension; +import java.awt.Toolkit; +import java.io.IOException; +import java.net.URL; +import java.sql.Connection; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.sql.Statement; +import java.text.SimpleDateFormat; +import static java.util.Collections.list; +import java.util.Comparator; +import java.util.ResourceBundle; +import java.util.function.Function; +import java.util.logging.Level; +import java.util.logging.Logger; +import javafx.animation.TranslateTransition; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import javafx.collections.transformation.FilteredList; +import javafx.collections.transformation.SortedList; +import javafx.event.ActionEvent; +import javafx.fxml.FXML; +import javafx.fxml.FXMLLoader; +import javafx.fxml.Initializable; +import javafx.geometry.Insets; +import javafx.geometry.Pos; +import javafx.scene.Node; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.scene.control.Label; +import javafx.scene.control.TableCell; +import javafx.scene.control.TableColumn; +import javafx.scene.control.TableView; +import javafx.scene.control.cell.PropertyValueFactory; +import javafx.scene.image.Image; +import javafx.scene.image.ImageView; +import javafx.scene.input.MouseEvent; +import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.BorderPane; +import javafx.scene.layout.HBox; +import javafx.scene.paint.Paint; +import javafx.stage.Modality; +import javafx.stage.Stage; +import javafx.stage.StageStyle; +import javafx.util.Callback; +import javafx.util.Duration; +import com.jfoenix.controls.JFXRadioButton; +import de.jensd.fx.glyphs.fontawesome.FontAwesomeIconView; +import java.io.IOException; +import java.net.URL; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.SQLException; +import java.util.ResourceBundle; +import java.util.logging.Level; +import java.util.logging.Logger; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; +import javafx.event.ActionEvent; +import javafx.fxml.FXML; +import javafx.fxml.FXMLLoader; +import javafx.fxml.Initializable; +import javafx.scene.Node; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.scene.chart.LineChart; +import javafx.scene.control.Button; +import javafx.scene.control.CheckBox; +import javafx.scene.control.DatePicker; +import javafx.scene.control.Label; +import javafx.scene.control.PasswordField; +import javafx.scene.control.RadioButton; +import javafx.scene.control.TableColumn; +import javafx.scene.control.TableView; +import javafx.scene.control.TextField; +import javafx.scene.control.ToggleGroup; +import javafx.scene.control.cell.PropertyValueFactory; +import javafx.scene.image.Image; +import javafx.scene.image.ImageView; +import javafx.scene.input.MouseEvent; +import javafx.scene.layout.AnchorPane; +import javafx.stage.Stage; +import javafx.stage.StageStyle; +import model.Lecteur; +import model.Bibliothecaire; +import model.Sanction; + +/** + * FXML Controller class + * + * @author Mes documants + */ +public class gerantController implements Initializable { +//les variable des btn d'affichage + @FXML + private Button acc_btn; + @FXML + private Button biblio_btn; + @FXML + private Button abn_btn; + + @FXML + private Button sanc_btn; + @FXML + private AnchorPane biblio_pan; + @FXML + private AnchorPane Acc_pan; + @FXML + private AnchorPane abn_pan; + @FXML + private AnchorPane sanc_pan; + + @FXML + private Label log_out_btn;//btn deconnexion + @FXML + private FontAwesomeIconView btn_editprofil;//bouton visualiser le pan d'update profile de gerant + @FXML + private Label userName_label;//le nom d'utilisateur qui figure dans left side + //les champs a changer dans les carde de l'acceuil + @FXML + private Label totalBiblio_label; + @FXML + private Label totalSanction_label; + @FXML + private Label totalBokk_label; + @FXML + private Label totalAbonné_label; + //le deuxieme pan des bibliothecaires + + @FXML + private TextField rechercheBiblio_txt; + @FXML + private FontAwesomeIconView rechercheBiblio_btn; + @FXML + private TextField nomBiblio_txt; + @FXML + private TextField prenomBiblio_txt; + @FXML + private TextField adresseBiblio_txt; + @FXML + private TextField numeroTelBiblio_txt; + @FXML + private TextField emailBiblio_txt; + @FXML + private Button ajouterBiblio_btn; + @FXML + private TextField userNameBiblio_txt; + @FXML + private PasswordField passwordBiblio_txt; + @FXML + private PasswordField confirmePasswordBiblio_txt; + + + + //le troisieme pan des Abonnés + @FXML + private TextField recherchAbonnée_txt; + @FXML + private FontAwesomeIconView rechercheAbonnée_btn; + @FXML + private TextField nomAbonné_txt; + @FXML + private TextField prénomAbonné_txt; + @FXML + private TextField numeroTelAbonné_txt; + @FXML + private TextField adresseAbonné_txt; + @FXML + private TextField emailAbonné_txt; + @FXML + private DatePicker dateNaissAbonné_txt; + @FXML + private Button ajouterAbonné_btn; + @FXML + private RadioButton etudInterne_rdBtn; + @FXML + private RadioButton etudExterne_rdBtn; + @FXML + private RadioButton enseignant_rdBtn; + //le pan des sactions + @FXML + private TextField retard_txt; + @FXML + private Button ajouterSanction_btn; + @FXML + private TextField sanction_txt; + //les champs de update compte gestionnaire + @FXML + private AnchorPane edit_pan; + @FXML + private TextField userName_txt; + @FXML + private PasswordField prePassword_txt; + @FXML + private PasswordField newPassword_txt; + @FXML + private Button updateAccount_btn;//bouton enregistrer les modification + //les icones et les bouttons gestion de la fenetre reduire close ... + @FXML + private Button reduire_btn; + @FXML + private Button close_btn; + @FXML + private ImageView max_min_btn; + @FXML + private FontAwesomeIconView minus_icon; + @FXML + private FontAwesomeIconView x_icon; + @FXML + private ToggleGroup typeAbn; + @FXML + private ToggleGroup calender; + @FXML + private ToggleGroup calender2; + @FXML + private LineChart statistique_cart; + @FXML + private TableView biblio_tab;//tableau view des bibliotecaires + @FXML + private TableView abonné_tab;// table view des abonné(lecteurs) + @FXML + private AnchorPane paiment_interne_pan; + @FXML + private CheckBox paiement_interne_checkBox;//verification de paiement de la somme forfataire(etu_interne) + @FXML + private AnchorPane paiement_externe_pan; + @FXML + private CheckBox paiement_externe_checkBox;//verification de paiement des frais d'inscription(etu_externe) + @FXML + private TableView sanction_tab; + @FXML + private JFXRadioButton retard_jour_RDbtn; + @FXML + private JFXRadioButton retard_semaine_RDbtn; + @FXML + private JFXRadioButton retard_mois_RDbtn; + @FXML + private JFXRadioButton sanction_jour_RDbtn; + @FXML + private JFXRadioButton sanction_semain_RDbtn; + @FXML + private JFXRadioButton sanction_mois_RDbtn; + @FXML + private TableView penalite_tab; + + + + /*LES colums de la tables bibliotecaires*/ + @FXML + private TableColumn id_biblio_col; + @FXML + private TableColumn nom_biblio_col; + @FXML + private TableColumn prenom_biblio_col; + @FXML + private TableColumn adresse_biblio_col; + @FXML + private TableColumn numTel_biblio_col; + @FXML + private TableColumn email_biblio_col; + + @FXML + private TableColumn nomUtilisateur_biblio_col; + @FXML + private TableColumn passWord_biblio_col; + @FXML + private TableColumn modifier_biblio_col; + + ObservableList bibliothecaireListTableView; + /********************************************************/ + /*les colums de la table abonnés */ + @FXML + private TableColumn id_abonné_col; + @FXML + private TableColumn nom_abonné_col; + @FXML + private TableColumn prenom_abonné_col; + @FXML + private TableColumn adresse_abonné_col; + @FXML + private TableColumn dateNaiss_abonné_col; + @FXML + private TableColumn numTel_abonné_col; + @FXML + private TableColumn email_abonné_col; + @FXML + private TableColumn type_abonné_col; + @FXML + private TableColumn paiement_col; + @FXML + private TableColumn modifsupp_col; + ObservableList lecteurListTableView; + /******************************************************/ + /* les column de la table des sanctions*/ + + @FXML + private TableColumn duréeRetard_col; + @FXML + private TableColumn duréeSanction_col; + @FXML + private TableColumn modifierSanction_col; + @FXML + private TableColumn supprimerSanction_col; + + ObservableList sanctionListTableView; + /**************************************************/ + /*les colums de la table de penamités*/ + @FXML + private TableColumn pénalité_ID_emprunt_col; + @FXML + private TableColumn penalité_Date_emprunt_col; + @FXML + private TableColumn penalité_ID_Lecteur_col; + @FXML + private TableColumn penalité_nomLecteur_col; + @FXML + private TableColumn penalité_prenomLecteur_col; + @FXML + private TableColumn debuPenalité_col; + @FXML + private TableColumn finPenalité_col; + @FXML + private TableColumn supprimerPenalité_col; + + + DBconnect db= new DBconnect(); + Connection connection = (Connection) db.ConnectBd(); + /** + Initializes the controller class. + */ + @Override + public void initialize(URL url, ResourceBundle rb) { + Acc_pan.setVisible(true); + abn_pan.setVisible(false); + sanc_pan.setVisible(false); + biblio_pan.setVisible(false); + edit_pan.setVisible(false); + paiement_externe_pan.setVisible(false); + paiment_interne_pan.setVisible(false); + getTotalOUvrage(); + getTotalAbonnee(); + getTotalBiblio(); + getTotalSanction(); + listLecteurTableView(); + listBibliothecairesTableView(); + listSanctionsTableView(); + + } + @FXML + public void panneauType(){ + if (etudInterne_rdBtn.isSelected()){ + paiment_interne_pan.setVisible(true); + paiement_externe_pan.setVisible(false); + }else{ + if(etudExterne_rdBtn.isSelected()){ + paiment_interne_pan.setVisible(false); + paiement_externe_pan.setVisible(true); + }else{ + paiment_interne_pan.setVisible(false); + paiement_externe_pan.setVisible(false); + } + } + } + public void getTotalOUvrage(){ + try{ + String query="SELECT COUNT(*) AS total FROM ouvrage"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + if (result.next()) { + int total = result.getInt("total"); + totalBokk_label.setText(""); + totalBokk_label.setText(total+""); + } + }catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } + + } + public void getTotalAbonnee(){ + try{ + String query="SELECT COUNT(*) AS total FROM lecteur"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + if (result.next()) { + int total = result.getInt("total"); + totalAbonné_label.setText(""); + totalAbonné_label.setText(total+""); + } + }catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } + + } + public void getTotalSanction(){ + try{ + String query="SELECT COUNT(*) AS total FROM sanction"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + if (result.next()) { + int total = result.getInt("total"); + totalSanction_label.setText(""); + totalSanction_label.setText(total+""); + } + }catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } + + } + public void getTotalBiblio(){ + try{ + String query="SELECT COUNT(*) AS total FROM utilisateur WHERE Discriminator = 'biblio'"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + if (result.next()) { + int total = result.getInt("total"); + totalBiblio_label.setText(""); + totalBiblio_label.setText(total+""); + } + }catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } + + } + public void listLecteurTableView() { + try{ // Exécution de la requête et récupération des résultats dans un ResultSet + String query="SELECT * FROM lecteur"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + lecteurListTableView= FXCollections.observableArrayList(); + // Initialisation d'une liste observable pour stocker les résultats + + while (result.next()) { // Boucle sur les résultats du ResultSet + Lecteur lecteur = new Lecteur(); // Création d'un objet Lecteur pour chaque ligne + lecteur.setId_lecteur(result.getInt("ID")); // Récupération des données dans le ResultSet et mise à jour de l'objet Lecteur + lecteur.setNom_lecteur(result.getString("nom")); + lecteur.setPrenom_lecteur(result.getString("Prenom_lecteur")); + lecteur.setAdresse_lecteur(result.getString("Adresse")); + lecteur.setNumTel_lecteur(result.getString("Num_tel")); + lecteur.setType_lecteur(result.getString("type")); + lecteur.setEmail_lecteur(result.getString("Email")); + lecteur.setPaiment_lecteur(result.getString("paiement")); + lecteur.setDatenaiss_lecteur(result.getString("Date_naiss")); + lecteur.setDateA_lecteur(result.getString("dateA")); + lecteur.getlecteur(); + lecteurListTableView.add(lecteur); // Ajout de l'objet Lecteur à la liste observable + } + + // Mise en place des colonnes dans le TableView à partir des propriétés de l'objet Lecteur + id_abonné_col.setCellValueFactory(new PropertyValueFactory<>("id_lecteur")); + nom_abonné_col.setCellValueFactory(new PropertyValueFactory<>("nom_lecteur")); + prenom_abonné_col.setCellValueFactory(new PropertyValueFactory<>("prenom_lecteur")); + adresse_abonné_col.setCellValueFactory(new PropertyValueFactory<>("adresse_lecteur")); + email_abonné_col.setCellValueFactory(new PropertyValueFactory<>("email_lecteur")); + numTel_abonné_col.setCellValueFactory(new PropertyValueFactory<>("numTel_lecteur")); + dateNaiss_abonné_col.setCellValueFactory(new PropertyValueFactory<>("datenaiss_lecteur")); + type_abonné_col.setCellValueFactory(new PropertyValueFactory<>("type_lecteur")); + paiement_col.setCellValueFactory(new PropertyValueFactory<>("paiment_lecteur")); + //CREATE CELL FACTORY TO INSERT BUTTONS IN EVERY ROWS: + Callback, TableCell> cellFactory = (param) -> { + //make the tableCell containing button + final TableCell cell = new TableCell() { + + //override update method + @Override + public void updateItem(String item, boolean empty) { + super.updateItem(item, empty); + //Esure the cell is created only non-empty rows + if (empty) { + setGraphic(null); + setText(null); + } else { + final MFXButton modifierButton = new MFXButton("Modifier"); + final MFXButton supprimerButton = new MFXButton("Supprimer"); + modifierButton.setStyle( + "-fx-background-color: #02e477; " + + "-fx-text-fill: white;" + + " -fx-background-radius: 5;" + + " -fx-font-family: 'Comfortaa';" + + " -fx-font-weight: bold;" + ); + supprimerButton.setStyle( + "-fx-background-color: #ff1241;" + + " -fx-text-fill: white;" + + " -fx-background-radius: 5;" + + " -fx-font-family: 'Comfortaa';" + + "-fx-font-weight: bold;" + ); + //Attach listenner to the button to do the action + + + //remberer to set the created button to the cell + final HBox hbox = new HBox(modifierButton, supprimerButton); + HBox.setMargin(modifierButton, new Insets(0,2, 0, 0)); + HBox.setMargin(supprimerButton, new Insets(0, 0, 0, 2)); + setGraphic(hbox); + setText(null); + supprimerButton.setOnAction((ActionEvent event) -> { + Lecteur up = getTableView().getItems().get(getIndex()); + DialogSupprimerLecteur(event, up); + }); + } + } + }; + + return cell; + }; +modifsupp_col.setCellFactory(cellFactory); +abonné_tab.setItems(lecteurListTableView); + } catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } +} + + + public void listBibliothecairesTableView() { + try{ // Exécution de la requête et récupération des résultats dans un ResultSet + String query="SELECT * FROM utilisateur WHERE Discriminator='biblio'"; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + bibliothecaireListTableView= FXCollections.observableArrayList(); + // Initialisation d'une liste observable pour stocker les résultats + + while (result.next()) { // Boucle sur les résultats du ResultSet + Bibliothecaire Biblio = new Bibliothecaire(0,"","","","","","",0); + Biblio.setId_utilisateur(result.getInt("id")); + Biblio.setNom_biblio(result.getString("Nom_biblio")); + Biblio.setPrenom_biblio(result.getString("Prénom_biblio")); + Biblio.setAdresse_biblio(result.getString("Adresse_biblio")); + Biblio.setNumTel_biblio(result.getInt("num_tel_biblio")); + Biblio.setEmail_biblio(result.getString("Email_biblio")); + Biblio.setNom_utilisateur(result.getString("Nom_utilisateur")); + Biblio.setPassword("rien"); + Biblio.getbibliothecaire(); + bibliothecaireListTableView.add(Biblio); // Ajout de l'objet Lecteur à la liste observable + } + + // Mise en place des colonnes dans le TableView à partir des propriétés de l'objet Bibliothecaire + id_biblio_col.setCellValueFactory(new PropertyValueFactory<>("id_utilisateur")); + nom_biblio_col.setCellValueFactory(new PropertyValueFactory<>("nom_biblio")); + prenom_biblio_col.setCellValueFactory(new PropertyValueFactory<>("prenom_biblio")); + adresse_biblio_col.setCellValueFactory(new PropertyValueFactory<>("adresse_biblio")); + email_biblio_col.setCellValueFactory(new PropertyValueFactory<>("email_biblio")); + numTel_biblio_col.setCellValueFactory(new PropertyValueFactory<>("numTel_biblio")); + nomUtilisateur_biblio_col.setCellValueFactory(new PropertyValueFactory<>("Nom_utilisateur")); + // passWord_biblio_col.setCellValueFactory(new PropertyValueFactory<>("")); + + + //CREATE CELL FACTORY TO INSERT BUTTONS IN EVERY ROWS: + Callback, TableCell> cellFactory = (param) -> { + //make the tableCell containing button + + final TableCell cell = new TableCell() { + + //override update method + @Override + public void updateItem(String item, boolean empty) { + super.updateItem(item, empty); + //Esure the cell is created only non-empty rows + if (empty) { + setGraphic(null); + setText(null); + } else { + final MFXButton modifierButton = new MFXButton("Modifier"); + final MFXButton supprimerButton = new MFXButton("Supprimer"); + modifierButton.setStyle( + "-fx-background-color: #02e477; " + + "-fx-text-fill: white;" + + " -fx-background-radius: 5;" + + " -fx-font-family: 'Comfortaa';" + + " -fx-font-weight: bold;" + ); + supprimerButton.setStyle( + "-fx-background-color: #ff1241;" + + " -fx-text-fill: white;" + + " -fx-background-radius: 5;" + + " -fx-font-family: 'Comfortaa';" + + "-fx-font-weight: bold;" + ); + //Attach listenner to the button to do the action + + + //remberer to set the created button to the cell + final HBox hbox = new HBox(modifierButton, supprimerButton); + HBox.setMargin(modifierButton, new Insets(0,2, 0, 0)); + HBox.setMargin(supprimerButton, new Insets(0, 0, 0, 2)); + setGraphic(hbox); + setText(null); + supprimerButton.setOnAction((ActionEvent event) -> { + // Bibliothecaire up = getTableView().getItems().get(getIndex()); + //DialogSupprimerLecteur(event, up); + }); + } + } + }; + + return cell; + }; +modifier_biblio_col.setCellFactory(cellFactory); +biblio_tab.setItems(bibliothecaireListTableView); + + } catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } +} + + public void listSanctionsTableView() { + try{ // Exécution de la requête et récupération des résultats dans un ResultSet + String query="SELECT * FROM sanction "; + + PreparedStatement prepare = connection.prepareStatement(query); + ResultSet result = prepare.executeQuery(); + sanctionListTableView= FXCollections.observableArrayList(); + // Initialisation d'une liste observable pour stocker les résultats + + while (result.next()) { // Boucle sur les résultats du ResultSet + Sanction sanction = new Sanction(0,0); + sanction.setDuréeRetard(result.getInt("Durée_retard")); + sanction.setDuréeSanction(result.getInt("Durée_sanction")); + + sanctionListTableView.add(sanction); // Ajout de l'objet Lecteur à la liste observable + } + + // Mise en place des colonnes dans le TableView à partir des propriétés de l'objet Bibliothecaire + duréeRetard_col.setCellValueFactory(new PropertyValueFactory<>("duréeRetard")); + duréeSanction_col.setCellValueFactory(new PropertyValueFactory<>("duréeSanction")); + + + + //CREATE CELL FACTORY TO INSERT BUTTONS IN EVERY ROWS: + Callback, TableCell> cellFactory = (param) -> { + //make the tableCell containing button + + final TableCell cell = new TableCell() { + + //override update method + @Override + public void updateItem(String item, boolean empty) { + super.updateItem(item, empty); + //Esure the cell is created only non-empty rows + if (empty) { + setGraphic(null); + setText(null); + } else { + final MFXButton modifierButton = new MFXButton("Modifier"); + modifierButton.setStyle( + "-fx-background-color: #02e477; " + + "-fx-text-fill: white;" + + " -fx-background-radius: 5;" + + " -fx-font-family: 'Comfortaa';" + + " -fx-font-weight: bold;" + ); + + //Attach listenner to the button to do the action + + + //remberer to set the created button to the cell + final HBox hbox = new HBox(modifierButton); + HBox.setMargin(modifierButton, new Insets(0,2, 0, 0)); + setGraphic(hbox); + setText(null); + modifierButton.setOnAction((ActionEvent event) -> { + // Bibliothecaire up = getTableView().getItems().get(getIndex()); + //DialogSupprimerLecteur(event, up); + }); + } + } + }; + + return cell; + }; + Callback, TableCell> cellF = (param) -> { + //make the tableCell containing button + + final TableCell cell = new TableCell() { + + //override update method + @Override + public void updateItem(String item, boolean empty) { + super.updateItem(item, empty); + //Esure the cell is created only non-empty rows + if (empty) { + setGraphic(null); + setText(null); + } else { + final MFXButton supprimerButton = new MFXButton("Supprimer"); + supprimerButton.setStyle( + "-fx-background-color: #ff1241;" + + " -fx-text-fill: white;" + + " -fx-background-radius: 5;" + + " -fx-font-family: 'Comfortaa';" + + "-fx-font-weight: bold;" + ); + //Attach listenner to the button to do the action + + + //remberer to set the created button to the cell + final HBox hbox = new HBox(supprimerButton); + HBox.setMargin(supprimerButton, new Insets(0, 0, 0, 2)); + setGraphic(hbox); + setText(null); + supprimerButton.setOnAction((ActionEvent event) -> { + // Bibliothecaire up = getTableView().getItems().get(getIndex()); + //DialogSupprimerLecteur(event, up); + }); + } + } + }; + + return cell; + }; +modifierSanction_col.setCellFactory(cellFactory); +supprimerSanction_col.setCellFactory(cellF); +sanction_tab.setItems(sanctionListTableView); + + } catch (SQLException ex) { // Gestion d'erreur en cas de problème avec la base de données + Logger.getLogger(gerantController.class.getName()).log(Level.SEVERE, null, ex); + } +} + + private void DialogSupprimerLecteur(ActionEvent event, Lecteur lecteur){ + this.dialogContent = MFXGenericDialogBuilder.build() + .setContentText( + "VOUS LES VOUS VRAIMENT SUPPRIMER Lecteur: \nID: "+lecteur.getId_lecteur() + +"\nNOM: "+lecteur.getNom_lecteur() + +"\nPRENOM: "+lecteur.getPrenom_lecteur() + +"\nADRESSE: "+lecteur.getAdresse_lecteur() + +"\nTELEPHONE: "+lecteur.getNumTel_lecteur() + +"\nTYPE: "+lecteur.getType_lecteur() + +"\nEmail: "+lecteur.getEmail_lecteur() + +"\nPaiement: "+lecteur.getPaiment_lecteur() + ) + .makeScrollable(true) + .get(); + Stage window = (Stage)((Node)event.getSource()).getScene().getWindow(); + this.dialog = MFXGenericDialogBuilder.build(dialogContent) + .toStageDialogBuilder() + .initOwner(window) + .initModality(Modality.APPLICATION_MODAL) + .setDraggable(true) + .setTitle("Dialogs Preview") + .setOwnerNode(mainborderPane) + .setScrimPriority(ScrimPriority.WINDOW) + .setScrimOwner(true) + .get(); + + MFXButton cancel = new MFXButton("Cancel"); + MFXButton confirmer = new MFXButton("Confirmer"); + confirmer.setOnAction(e -> { + lecteur.supprimerLecteur(lecteur); + listLecteurTableView(); + + + dialog.close(); + }); + cancel.setOnAction(e -> { + dialog.close(); + }); + dialogContent.addActions( + confirmer, + cancel + ); + + + + dialogContent.setMaxSize(400, 200); + MFXFontIcon infoIcon = new MFXFontIcon("mfx-info-circle-filled", 18); + dialogContent.setHeaderIcon(infoIcon); + dialogContent.setHeaderText("MESSAGE INFORMATION"); + convertDialogTo("mfx-info-dialog"); + + // On récupère la taille de l'écran (la résolution) + Dimension screen = Toolkit.getDefaultToolkit().getScreenSize(); + // et on place notre fenêtre au milieu + dialog.showDialog(); + + } + + + @FXML + private void show_acc(MouseEvent event) { + Acc_pan.setVisible(true); + abn_pan.setVisible(false); + sanc_pan.setVisible(false); + biblio_pan.setVisible(false); + edit_pan.setVisible(false); + acc_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + sanc_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + abn_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + biblio_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + } + + @FXML + private void show_boblio(MouseEvent event) { + Acc_pan.setVisible(false); + abn_pan.setVisible(false); + sanc_pan.setVisible(false); + biblio_pan.setVisible(true); + edit_pan.setVisible(false); + biblio_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + sanc_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + abn_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + acc_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + + } + + @FXML + private void show_abn(MouseEvent event) { + Acc_pan.setVisible(false); + abn_pan.setVisible(true); + sanc_pan.setVisible(false); + biblio_pan.setVisible(false); + edit_pan.setVisible(false); + abn_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + sanc_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + acc_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + biblio_btn.setStyle("-fx-background-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + + } + + + + @FXML + private void show_sanc(MouseEvent event) { + Acc_pan.setVisible(false); + abn_pan.setVisible(false); + sanc_pan.setVisible(true); + biblio_pan.setVisible(false); + edit_pan.setVisible(false); + sanc_btn.setStyle("-fx-background-color:white;-fx-border-color:linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-width:3px"); + acc_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + abn_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + biblio_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + + } + + @FXML + private void log_out(MouseEvent event) throws IOException { + System.out.println("You clicked me!"); + Stage stage= new Stage(); + Parent root=FXMLLoader.load(getClass().getResource("/view/connexion.fxml")); + Scene scene =new Scene(root); + stage.setScene(scene); + stage.initStyle(StageStyle.UNDECORATED); + stage.show(); + ((Node)event.getSource()).getScene().getWindow().hide(); + } + + @FXML + private void show_editpan(MouseEvent event) { + Acc_pan.setVisible(false); + abn_pan.setVisible(false); + sanc_pan.setVisible(false); + biblio_pan.setVisible(false); + edit_pan.setVisible(true); + sanc_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + acc_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + abn_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + biblio_btn.setStyle("-fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff);-fx-border-color:transparent"); + + } + + + + @FXML + private void reduire(MouseEvent event) { + Stage stage=(Stage) reduire_btn.getScene().getWindow(); + stage.setIconified(true); + } + + @FXML + private void close(MouseEvent event) { + + javafx.application.Platform.exit(); + } + + @FXML + private void initial_color(MouseEvent event) { + reduire_btn.setStyle("-fx-background-color:transparent"); + minus_icon.setStyle("-fx-fill:black"); + } + + @FXML + private void blue_color(MouseEvent event) { + reduire_btn.setStyle("-fx-background-color:#13d4ee"); + minus_icon.setStyle("-fx-fill:white"); + } + + @FXML + private void red_color(MouseEvent event) { + close_btn.setStyle("-fx-background-color:red"); + x_icon.setStyle("-fx-fill:white"); + } + + @FXML + private void initialcolse_color(MouseEvent event) { + close_btn.setStyle("-fx-background-color:transparent"); + x_icon.setStyle("-fx-fill:black"); + } + + @FXML + private void max_min_screen(MouseEvent event) { + Stage stage=(Stage) max_min_btn.getScene().getWindow(); + Image imgmin= new Image("/images/minimize.png"); + Image imgmax= new Image("/images/maximize_icon.png"); + if(stage.isMaximized()==false){ + stage.setMaximized(true); + max_min_btn.setImage(imgmin); + }else{ + stage.setMaximized(false); + max_min_btn.setImage(imgmax); + } + } + + //les fonction du BackEnd// + public void clearchampsabbonne(){ + nomAbonné_txt.setText(""); + prénomAbonné_txt.setText(""); + + numeroTelAbonné_txt.setText(""); + adresseAbonné_txt.setText(""); + emailAbonné_txt.setText(""); + } + + public boolean checkFieldsAbonne() { + return nomAbonné_txt.getText().isEmpty() || + prénomAbonné_txt.getText().isEmpty() || + numeroTelAbonné_txt.getText().isEmpty() || + adresseAbonné_txt.getText().isEmpty() || + emailAbonné_txt.getText().isEmpty(); + +} + public String GetType(){ + if (etudInterne_rdBtn.isSelected()){ + return "etudiant interne"; + }else{ + if(etudExterne_rdBtn.isSelected()){ + return "etudiant externe"; + }else if(enseignant_rdBtn.isSelected()){ + return "enseignant"; + }else{ + return null; + } + } + } + + public String checkpayemnt() { +if (etudInterne_rdBtn.isSelected()==true) { + if(paiement_interne_checkBox.isSelected()==true){ + return "vrai"; + } + return "faux"; +} else if (etudExterne_rdBtn.isSelected()==true) { + if(paiement_externe_checkBox.isSelected()==true){ + return "vrai"; + } + return "faux"; +} else { +return "faux"; +} +} + public boolean checketudiantextern(){ + if(etudExterne_rdBtn.isSelected()){ + return paiement_interne_checkBox.isSelected(); + }else{ + return true; + } + } + + + + @FXML + private void ajouterBiblio(MouseEvent event) { + ajouterBibliothecaire(event); + listBibliothecairesTableView(); + + } + @FXML + private void rechercheBiblio(MouseEvent event) { + } + @FXML + private void rechercheAbonnée(MouseEvent event) { + } + + private MFXGenericDialog dialogContent; + private MFXStageDialog dialog; + @FXML + private BorderPane mainborderPane; + private void convertDialogTo(String styleClass) { + dialogContent.getStyleClass().removeIf( + s -> s.equals("mfx-info-dialog") || s.equals("mfx-warn-dialog") || s.equals("mfx-error-dialog") + ); + + if (styleClass != null) { + dialogContent.getStyleClass().add(styleClass); + } + } + private void DialogMessage(MouseEvent event, String text) { + this.dialogContent = MFXGenericDialogBuilder.build() + .setContentText(text) + .makeScrollable(true) + .get(); + Stage window = (Stage) ((Node) event.getSource()).getScene().getWindow(); + this.dialog = MFXGenericDialogBuilder.build(dialogContent) + .toStageDialogBuilder() + .initOwner(window) + .initModality(Modality.APPLICATION_MODAL) + .setDraggable(true) + .setTitle("Dialogs Preview") + .setOwnerNode(mainborderPane) + .setScrimPriority(ScrimPriority.WINDOW) + .setScrimOwner(true) + .get(); + + MFXButton cancel = new MFXButton("Cancel"); + cancel.setOnAction(e -> { + dialog.close(); + }); + dialogContent.addActions( + cancel + ); + + dialogContent.setMaxSize(400, 200); + MFXFontIcon infoIcon = new MFXFontIcon("mfx-info-circle-filled", 18); + dialogContent.setHeaderIcon(infoIcon); + dialogContent.setHeaderText("MESSAGE INFORMATION"); + convertDialogTo("mfx-info-dialog"); + + // On récupère la taille de l'écran (la résolution) + Dimension screen = Toolkit.getDefaultToolkit().getScreenSize(); + // et on place notre fenêtre au milieu + dialog.showDialog(); + + } + @FXML + private void ajouterAbonné(MouseEvent event) { + if(checkFieldsAbonne()){ + DialogErreurChampsVide(event,"Veuillez Saisir Tout Les Champs"); + }else{ + + System.out.println("tout les champs sont complet"); + Lecteur model = new Lecteur(); + model.setNom_lecteur(nomAbonné_txt.getText()); + model.setPrenom_lecteur(prénomAbonné_txt.getText()); + model.setNumTel_lecteur(numeroTelAbonné_txt.getText()); + model.setAdresse_lecteur(adresseAbonné_txt.getText()); + model.setEmail_lecteur(emailAbonné_txt.getText()); + model.setDateA_lecteur(java.time.LocalDate.now()+""); + model.setType_lecteur(GetType()); + model.setPaiment_lecteur(checkpayemnt()); + model.ajouterLecteur(model); + listLecteurTableView(); + clearchampsabbonne(); + DialogMessage(event,"Article a été Ajouter Avec Succes"); + clearchampsabbonne(); + + } + + } + + //ajouter bibliothecaire + private void ajouterBibliothecaire(MouseEvent event) { + // if(checkFieldsAbonne()){ + //DialogErreurChampsVide(event,"Veuillez Saisir Tout Les Champs"); + // }else{ + + System.out.println("tout les champs sont complet"); + Bibliothecaire model = new Bibliothecaire(0,"","","","","","",0); + model.setId_utilisateur(15); + model.setNom_biblio(nomBiblio_txt.getText()); + model.setPrenom_biblio(prenomBiblio_txt.getText()); + model.setAdresse_biblio(adresseBiblio_txt.getText()); + model.setNumTel_biblio(Integer.valueOf(numeroTelBiblio_txt.getText())); + model.setEmail_biblio(emailBiblio_txt.getText()); + model.setNom_utilisateur(userNameBiblio_txt.getText()); + model.setPassword(passwordBiblio_txt.getText()); + if(model.comparerMdp(passwordBiblio_txt.getText(), confirmePasswordBiblio_txt.getText())){ + model.ajouterBibliothecaire(model); + DialogMessage(event,"bibliothecaire a été Ajouté Avec Succes"); + }else{ + DialogMessage(event,"les mot de passes sont differents"); + + }; + + // clearchampsabbonne(); + + // clearchampsabbonne(); + // } + + } + + + + + public int dureRetard(){ + int dureeR=0; + if (retard_jour_RDbtn.isSelected()){ + retard_mois_RDbtn.setSelected(false); + retard_semaine_RDbtn.setSelected(false); + dureeR=1; + }else { + if(retard_semaine_RDbtn.isSelected()){ + retard_jour_RDbtn.setSelected(false); + retard_mois_RDbtn.setSelected(false); + dureeR= 7 ; + }else if(retard_mois_RDbtn.isSelected()){ + retard_jour_RDbtn.setSelected(false); + retard_semaine_RDbtn.setSelected(false); + dureeR= 30; + } + } + System.out.println(dureeR); + + return dureeR; + } + + public int dureSanction(){ + int dureeS=0; + if (sanction_jour_RDbtn.isSelected()){ + sanction_semain_RDbtn.setSelected(false); + sanction_mois_RDbtn.setSelected(false); + dureeS=1; + }else { + if(sanction_semain_RDbtn.isSelected()){ + sanction_mois_RDbtn.setSelected(false); + sanction_jour_RDbtn.setSelected(false); + dureeS= 7 ; + }else if(sanction_mois_RDbtn.isSelected()){ + sanction_semain_RDbtn.setSelected(false); + sanction_jour_RDbtn.setSelected(false); + dureeS= 30; + } + } + System.out.println(dureeS); + return dureeS; + } + + + + + public int convertToInteger(TextField textField) { + String value = textField.getText(); + int intValue = 0; + + try { + intValue = Integer.parseInt(value); + } catch (NumberFormatException e) { + // Handle the case where the value cannot be converted to an integer + // You can display an error message or take appropriate action here + e.printStackTrace(); + } + + return intValue; + } + + private void creerSanction(MouseEvent event) { + // if(checkFieldsAbonne()){ + // DialogErreurChampsVide(event,"Veuillez Saisir Tout Les Champs"); + // }else{ + + System.out.println("tout les champs sont complet"); + Sanction sanction = new Sanction(0,0); + int sanc=convertToInteger(retard_txt); + sanction.setDuréeRetard(dureRetard()*sanc); + int ret=convertToInteger(sanction_txt); + sanction.setDuréeSanction(dureSanction()*ret); + sanction.ajouterSanctionToDb(sanction); + sanc=0; + ret=0; + DialogMessage(event,"Article a été Ajouter Avec Succes"); + + } + + // } + + + + + + + + + + private void DialogErreurChampsVide(MouseEvent event, String text){ + this.dialogContent = MFXGenericDialogBuilder.build() + .setContentText(text) + .makeScrollable(true) + .get(); + Stage window = (Stage)((Node)event.getSource()).getScene().getWindow(); + this.dialog = MFXGenericDialogBuilder.build(dialogContent) + .toStageDialogBuilder() + .initOwner(window) + .initModality(Modality.APPLICATION_MODAL) + .setDraggable(true) + .setTitle("Dialogs Preview") + .setOwnerNode(mainborderPane) + .setScrimPriority(ScrimPriority.WINDOW) + .setScrimOwner(true) + .get(); + + MFXButton cancel = new MFXButton("Cancel"); + cancel.setOnAction(e -> { + dialog.close(); + }); + dialogContent.addActions( + cancel + ); + + + + dialogContent.setMaxSize(400, 200); + MFXFontIcon infoIcon = new MFXFontIcon("mfx-info-circle-filled", 18); + dialogContent.setHeaderIcon(infoIcon); + dialogContent.setHeaderText("MESSAGE INFORMATION"); + convertDialogTo("mfx-info-dialog"); + + // On récupère la taille de l'écran (la résolution) + Dimension screen = Toolkit.getDefaultToolkit().getScreenSize(); + // et on place notre fenêtre au milieu + dialog.showDialog(); + + } + + + @FXML + private void ajouterSanction(MouseEvent event) { + creerSanction(event); + listSanctionsTableView(); + } + + @FXML + private void updateAccount(MouseEvent event) { + } + + + +} + + diff --git a/src/images/bgbook.jpg b/src/images/bgbook.jpg new file mode 100644 index 0000000..1182ee5 Binary files /dev/null and b/src/images/bgbook.jpg differ diff --git a/src/images/book.gif b/src/images/book.gif new file mode 100644 index 0000000..4b265a8 Binary files /dev/null and b/src/images/book.gif differ diff --git a/src/images/book0.gif b/src/images/book0.gif new file mode 100644 index 0000000..d26193b Binary files /dev/null and b/src/images/book0.gif differ diff --git a/src/images/book1.gif b/src/images/book1.gif new file mode 100644 index 0000000..3193b07 Binary files /dev/null and b/src/images/book1.gif differ diff --git a/src/images/book2.gif b/src/images/book2.gif new file mode 100644 index 0000000..e2fbd86 Binary files /dev/null and b/src/images/book2.gif differ diff --git a/src/images/books.gif b/src/images/books.gif new file mode 100644 index 0000000..ba14b65 Binary files /dev/null and b/src/images/books.gif differ diff --git a/src/images/books.png b/src/images/books.png new file mode 100644 index 0000000..a34cb52 Binary files /dev/null and b/src/images/books.png differ diff --git a/src/images/cancel.png b/src/images/cancel.png new file mode 100644 index 0000000..bdfbff8 Binary files /dev/null and b/src/images/cancel.png differ diff --git a/src/images/emprunt.png b/src/images/emprunt.png new file mode 100644 index 0000000..7f6a8ad Binary files /dev/null and b/src/images/emprunt.png differ diff --git a/src/images/icon_bibliothecaire.png b/src/images/icon_bibliothecaire.png new file mode 100644 index 0000000..c38cc1a Binary files /dev/null and b/src/images/icon_bibliothecaire.png differ diff --git a/src/images/img1.png b/src/images/img1.png new file mode 100644 index 0000000..002dbb1 Binary files /dev/null and b/src/images/img1.png differ diff --git a/src/images/maximize_icon.png b/src/images/maximize_icon.png new file mode 100644 index 0000000..ecb1a51 Binary files /dev/null and b/src/images/maximize_icon.png differ diff --git a/src/images/minimize.png b/src/images/minimize.png new file mode 100644 index 0000000..5f8714b Binary files /dev/null and b/src/images/minimize.png differ diff --git a/src/images/penalisation.png b/src/images/penalisation.png new file mode 100644 index 0000000..76c94ab Binary files /dev/null and b/src/images/penalisation.png differ diff --git a/src/images/snct_prev_ui.png b/src/images/snct_prev_ui.png new file mode 100644 index 0000000..81432b0 Binary files /dev/null and b/src/images/snct_prev_ui.png differ diff --git a/src/model/Bibliothecaire.java b/src/model/Bibliothecaire.java new file mode 100644 index 0000000..ec55ec4 --- /dev/null +++ b/src/model/Bibliothecaire.java @@ -0,0 +1,127 @@ + +package model; + +import control.DBconnect; +import java.sql.Connection; +import java.sql.Statement; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; +import java.util.*; + +public class Bibliothecaire extends Utilisateur{ + private final StringProperty nom_biblio; + private final StringProperty prenom_biblio ; + private final StringProperty adresse_biblio ; + private final StringProperty email_biblio ; + private final IntegerProperty numTel_biblio; + public Bibliothecaire(int id, String nom_utilisateur, String password, + String nom,String prenom,String adresse,String email,int numTel) + { + super(id,nom_utilisateur, password); + this.nom_biblio=new SimpleStringProperty(nom); + this.prenom_biblio=new SimpleStringProperty(prenom); + this.adresse_biblio= new SimpleStringProperty(adresse); + this.email_biblio=new SimpleStringProperty(email); + this.numTel_biblio=new SimpleIntegerProperty(numTel); + } + + + public String getNom_biblio() { + return nom_biblio.get(); + } + + public void setNom_biblio(String value) { + nom_biblio.set(value); + } + + public StringProperty nom_biblioProperty() { + return nom_biblio; + } + + + public String getPrenom_biblio() { + return prenom_biblio.get(); + } + + public void setPrenom_biblio(String value) { + prenom_biblio.set(value); + } + + public StringProperty prenom_biblioProperty() { + return prenom_biblio; + } + + + public String getAdresse_biblio() { + return adresse_biblio.get(); + } + + public void setAdresse_biblio(String value) { + adresse_biblio.set(value); + } + + public StringProperty adresse_biblioProperty() { + return adresse_biblio; + } + + + public String getEmail_biblio() { + return email_biblio.get(); + } + + public void setEmail_biblio(String value) { + email_biblio.set(value); + } + + public StringProperty email_biblioProperty() { + return email_biblio; + } + + + public int getNumTel_biblio() { + return numTel_biblio.get(); + } + + public void setNumTel_biblio(int value) { + numTel_biblio.set(value); + } + + public IntegerProperty numTel_biblioProperty() { + return numTel_biblio; + } + + public boolean comparerMdp(Object a,Object b){ + return Objects.equals(a, b); + } + + public void getbibliothecaire(){ + System.out.println(nom_biblio+" "+prenom_biblio); + } +public void ajouterBibliothecaire(Bibliothecaire model) { + try { + String query = "INSERT INTO utilisateur (Nom_utilisateur, Mot_de_pass, Nom_biblio, Prénom_biblio, Adresse_biblio, Email_biblio, Num_tel_biblio, Discriminator) " + + "VALUES ('" + model.getNom_utilisateur() + "', " + + "'" + model.getPassword() + "', " + + "'" + model.getNom_biblio() + "', " + + "'" + model.getPrenom_biblio() + "', " + + "'" + model.getAdresse_biblio() + "', " + + "'" + model.getEmail_biblio() + "', " + + model.getNumTel_biblio() + ", " + + "'biblio')"; + DBconnect db = new DBconnect(); + try (Connection connection = db.ConnectBd()) { + Statement state = connection.createStatement(); + state.executeUpdate(query); + System.out.println("Added Bibliothecaire"); + state.close(); + } + } catch (Exception e) { + System.out.println("Failed to add biblio"); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } +} + +} diff --git a/src/model/Emprunt.java b/src/model/Emprunt.java new file mode 100644 index 0000000..3eb4eb0 --- /dev/null +++ b/src/model/Emprunt.java @@ -0,0 +1,123 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package model; + +import control.DBconnect; +import java.sql.Connection; +import java.sql.Date; +import java.sql.Statement; +import java.time.LocalDate; +import javafx.beans.property.BooleanProperty; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.ObjectProperty; +import javafx.beans.property.SimpleBooleanProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleObjectProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + + + +public class Emprunt { + private final IntegerProperty id_emprunt ; + private final StringProperty date_emprunt ; + private final StringProperty prolongation ; + private final StringProperty date_restitution; + private final StringProperty code_ouvrage; + + public Emprunt(int id,String date_emprunt,String prolongation,String date_restitution,String code_ouvrage) { + this.id_emprunt=new SimpleIntegerProperty(id); + this.date_emprunt=new SimpleStringProperty(date_emprunt); + this.prolongation=new SimpleStringProperty(prolongation); + this.date_restitution= new SimpleStringProperty(date_restitution); + this.code_ouvrage= new SimpleStringProperty(code_ouvrage); + + } + public int getId_emprunt() { + return id_emprunt.get(); + } + + public void setId_emprunt(int value) { + id_emprunt.set(value); + } + + public IntegerProperty id_empruntProperty() { + return id_emprunt; + } + + + public String getDate_emprunt() { + return date_emprunt.get(); + } + + public void setDate_emprunt(String value) { + date_emprunt.set(value); + } + + public StringProperty date_empruntProperty() { + return date_emprunt; + } + + public String getCode_ouvrage() { + return code_ouvrage.get(); + } + + public void setCode_ouvrage(String value) { + code_ouvrage.set(value); + } + + public StringProperty code_ouvrageProperty() { + return code_ouvrage; + } + + public String isProlongation() { + return prolongation.get(); + } + + public void setProlongation(String value) { + prolongation.set(value); + } + + public StringProperty prolongationProperty() { + return prolongation; + } + + + public String getDate_restitution() { + return date_restitution.get(); + } + + public void setDate_restitution(String value) { + date_restitution.set(value); + } + + public StringProperty date_restitutionProperty() { + return date_restitution; + } + + public void ajouterEmprunt(Emprunt model) { + try { + String query = "INSERT INTO Emprunt (Date_emprunt,Prolongation,Date_ristitution,LecteurID,OuvrageID) " + + "VALUES ('" +/* Date.valueOf(model.getDate_emprunt())*/"" + "', " + + "'" + "f" + "', " + + "'" + /*Date.valueOf(model.getDate_restitution())*/ ""+ "', " + + "'" + Integer.valueOf(model.getId_emprunt()) + "', " + + "'" + Integer.valueOf(model.getCode_ouvrage())+"' )"; + DBconnect db = new DBconnect(); + try (Connection connection = db.ConnectBd()) { + Statement state = connection.createStatement(); + state.executeUpdate(query); + System.out.println("Added Bibliothecaire"); + state.close(); + } + } catch (Exception e) { + System.out.println("Failed to add biblio"); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } +} + +} diff --git a/src/model/Filiere.java b/src/model/Filiere.java new file mode 100644 index 0000000..b8b8b07 --- /dev/null +++ b/src/model/Filiere.java @@ -0,0 +1,57 @@ + +package model; +import control.DBconnect; +import java.sql.Connection; +import java.sql.PreparedStatement; +import java.sql.ResultSet; +import java.sql.Statement; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; +import javafx.collections.FXCollections; +import javafx.collections.ObservableList; + +public class Filiere { + private Connection connection; + private PreparedStatement prepare; + private ResultSet result; + ObservableList list; + + private final IntegerProperty id_filiere ; + private final StringProperty nom_filiere; + public Filiere(int id,String nom) { + this.id_filiere=new SimpleIntegerProperty(id); + this.nom_filiere = new SimpleStringProperty(nom); + + } + + public int getId_filiere() { + return id_filiere.get(); + } + + public void setId_filiere(int value) { + id_filiere.set(value); + } + + public IntegerProperty id_filiereProperty() { + return id_filiere; + } + + + public String getNom_filiere() { + return nom_filiere.get(); + } + + public void setNom_filiere(String value) { + nom_filiere.set(value); + } + + public StringProperty nom_filiereProperty() { + return nom_filiere; + } + + + + +} diff --git a/src/model/Gestionnaire.java b/src/model/Gestionnaire.java new file mode 100644 index 0000000..909316a --- /dev/null +++ b/src/model/Gestionnaire.java @@ -0,0 +1,11 @@ + +package model; + +public class Gestionnaire extends Utilisateur{ + + public Gestionnaire(int id, String nom_utilisateur, String password) { + super(id, nom_utilisateur, password); + } + + +} diff --git a/src/model/Lecteur.java b/src/model/Lecteur.java new file mode 100644 index 0000000..fc026af --- /dev/null +++ b/src/model/Lecteur.java @@ -0,0 +1,198 @@ + +package model; + +import control.DBconnect; +import java.sql.Connection; +import java.sql.Statement; +import java.time.LocalDate; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.ObjectProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleObjectProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + +public class Lecteur { + + private final IntegerProperty id_lecteur = new SimpleIntegerProperty(); + private final StringProperty nom_lecteur = new SimpleStringProperty(); + private final StringProperty prenom_lecteur = new SimpleStringProperty(); + private final StringProperty adresse_lecteur = new SimpleStringProperty(); + private final StringProperty email_lecteur = new SimpleStringProperty(); + private final StringProperty numTel_lecteur = new SimpleStringProperty(); + private final StringProperty datenaiss_lecteur = new SimpleStringProperty(); + private final StringProperty type_lecteur = new SimpleStringProperty(); + private final StringProperty paiment_lecteur = new SimpleStringProperty(); + private final StringProperty dateA_lecteur = new SimpleStringProperty(); + + public String getDateA_lecteur() { + return dateA_lecteur.get(); + } + + public void setDateA_lecteur(String value) { + dateA_lecteur.set(value); + } + + public StringProperty dateA_lecteurProperty() { + return dateA_lecteur; + } + + public String getPaiment_lecteur() { + return paiment_lecteur.get(); + } + + public void setPaiment_lecteur(String value) { + paiment_lecteur.set(value); + } + + public StringProperty paiment_lecteurProperty() { + return paiment_lecteur; + } + + public String getType_lecteur() { + return type_lecteur.get(); + } + + public void setType_lecteur(String value) { + type_lecteur.set(value); + } + + public StringProperty type_lecteurProperty() { + return type_lecteur; + } + + public String getDatenaiss_lecteur() { + return datenaiss_lecteur.get(); + } + + public void setDatenaiss_lecteur(String value) { + datenaiss_lecteur.set(value); + } + + public StringProperty datenaiss_lecteurProperty() { + return datenaiss_lecteur; + } + + public String getNumTel_lecteur() { + return numTel_lecteur.get(); + } + + public void setNumTel_lecteur(String value) { + numTel_lecteur.set(value); + } + + public StringProperty numTel_lecteurProperty() { + return numTel_lecteur; + } + + public String getEmail_lecteur() { + return email_lecteur.get(); + } + + public void setEmail_lecteur(String value) { + email_lecteur.set(value); + } + + public StringProperty email_lecteurProperty() { + return email_lecteur; + } + + public String getAdresse_lecteur() { + return adresse_lecteur.get(); + } + + public void setAdresse_lecteur(String value) { + adresse_lecteur.set(value); + } + + public StringProperty adresse_lecteurProperty() { + return adresse_lecteur; + } + + public String getPrenom_lecteur() { + return prenom_lecteur.get(); + } + + public void setPrenom_lecteur(String value) { + prenom_lecteur.set(value); + } + + public StringProperty prenom_lecteurProperty() { + return prenom_lecteur; + } + + public String getNom_lecteur() { + return nom_lecteur.get(); + } + + public void setNom_lecteur(String value) { + nom_lecteur.set(value); + } + + public StringProperty nom_lecteurProperty() { + return nom_lecteur; + } + + public int getId_lecteur() { + return id_lecteur.get(); + } + + public void setId_lecteur(int value) { + id_lecteur.set(value); + } + + public IntegerProperty id_lecteurProperty() { + return id_lecteur; + } +public void getlecteur(){ +System.out.println(id_lecteur+" "+nom_lecteur); +} + public void ajouterLecteur(Lecteur model){ + try { + String query = "INSERT INTO lecteur (ID,nom, Prenom_lecteur, Adresse, Email, Num_tel, Date_naiss, type, paiement) " + + " VALUES('"+model.getId_lecteur()+ + "','"+model.getNom_lecteur()+ + "','"+model.getPrenom_lecteur()+ + "','"+model.getAdresse_lecteur()+ + "','"+model.getEmail_lecteur()+ + "','"+model.getNumTel_lecteur()+ + "','"+model.getDatenaiss_lecteur()+ + "','"+model.getType_lecteur()+ + "','"+model.getPaiment_lecteur()+"')"; + DBconnect db = new DBconnect(); + Connection connection = (Connection) db.ConnectBd(); + Statement state = connection.createStatement(); + state.executeUpdate(query); + System.out.println("added Lecteur"); + state.close(); + connection.close(); + } catch (Exception e) { + System.out.println("Failed to add Lecteur"); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } + } + + public void supprimerLecteur(Lecteur model){ + + try { + String query = "DELETE FROM lecteur WHERE id ="+model.getId_lecteur(); + DBconnect db = new DBconnect(); + Connection connection = (Connection) db.ConnectBd(); + Statement state = connection.createStatement(); + state.executeUpdate(query); + System.out.println("Succed to delete the Lecteur"); + state.close(); + connection.close(); + + } catch (Exception e) { + System.out.println("Failed to delete the Lecteur"); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + + + } + } + + +} diff --git a/src/model/Ouvrage.java b/src/model/Ouvrage.java new file mode 100644 index 0000000..e790e87 --- /dev/null +++ b/src/model/Ouvrage.java @@ -0,0 +1,227 @@ + +package model; + +import control.DBconnect; +import java.sql.Connection; +import java.sql.Statement; +import javafx.beans.property.FloatProperty; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleFloatProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + +public class Ouvrage { + private final IntegerProperty id_ouvrage ; + private final StringProperty isbn ; + private final StringProperty titre ; + private final StringProperty auteur ; + private final StringProperty maisonEdition; + private final IntegerProperty annéeEdition ; + private final FloatProperty prix ; + private final IntegerProperty nbExemplaires ; + private final StringProperty discription; + private final IntegerProperty filiere; + private final IntegerProperty specialite; + + + + + public Ouvrage(int id,String isbn,String titre,String auteur,String maisonEdition,int annéeEdition,float prix, int nbExemplaires,String disc, int filiere, int specialite) { + this.id_ouvrage= new SimpleIntegerProperty(id); + this.isbn= new SimpleStringProperty(isbn); + this.titre= new SimpleStringProperty(titre); + this.auteur=new SimpleStringProperty(auteur); + this.maisonEdition=new SimpleStringProperty(maisonEdition); + this.annéeEdition=new SimpleIntegerProperty(annéeEdition); + this.prix=new SimpleFloatProperty(prix); + this.nbExemplaires=new SimpleIntegerProperty(nbExemplaires); + this.discription= new SimpleStringProperty(disc); + this.filiere= new SimpleIntegerProperty(filiere); + this.specialite= new SimpleIntegerProperty(specialite); + } + + + public int getId_ouvrage() { + return id_ouvrage.get(); + } + + public void setId_ouvrage(int value) { + id_ouvrage.set(value); + } + + public IntegerProperty id_ouvrageProperty() { + return id_ouvrage; + } + + + public int filiere_ouvrage() { + return filiere.get(); + } + + public void filiere_ouvrage(int value) { + filiere.set(value); + } + + public IntegerProperty filiereProperty() { + return filiere; + } + + public int specialite_ouvrage() { + return specialite.get(); + } + + public void specialite_ouvrage(int value) { + specialite.set(value); + } + + public IntegerProperty specialiteProperty() { + return specialite; + } + + + public String getIsbn() { + return isbn.get(); + } + + public int getfiliere() { + return filiere.get(); + } + + public int getspecialite() { + return specialite.get(); + } + + public void setIsbn(String value) { + isbn.set(value); + } + + public void setFiliere(int value) { + filiere.set(value); + } + + public void setSpecialite(int value) { + specialite.set(value); + } + + + public StringProperty isbnProperty() { + return isbn; + } + + + public String getTitre() { + return titre.get(); + } + + public void setTitre(String value) { + titre.set(value); + } + + public StringProperty titreProperty() { + return titre; + } + + + public String getAuteur() { + return auteur.get(); + } + + public void setAuteur(String value) { + auteur.set(value); + } + + public StringProperty auteurProperty() { + return auteur; + } + + + public String getMaisonEdition() { + return maisonEdition.get(); + } + + public void setMaisonEdition(String value) { + maisonEdition.set(value); + } + + public StringProperty maisonEditionProperty() { + return maisonEdition; + } + + public int getAnnéeEdition() { + return annéeEdition.get(); + } + + public void setAnnéeEdition(int value) { + annéeEdition.set(value); + } + + public IntegerProperty annéeEditionProperty() { + return annéeEdition; + } + + public float getPrix() { + return prix.get(); + } + + public void setPrix(float value) { + prix.set(value); + } + + public FloatProperty prixProperty() { + return prix; + } + + public int getNbExemplaires() { + return nbExemplaires.get(); + } + + public void setNbExemplaires(int value) { + nbExemplaires.set(value); + } + + public IntegerProperty nbExemplairesProperty() { + return nbExemplaires; + } + + + public String getDiscription() { + return discription.get(); + } + + public void setDiscription(String value) { + discription.set(value); + } + + public StringProperty discriptionProperty() { + return discription; + } + + public void ajouterOuvrage(Ouvrage model, Integer id_filiere,Integer id_specialite) { + try { + String query = "INSERT INTO ouvrage (isbn, specialiteID , Titre, Auteur, Maison_edition, Date_edition, Prix, Nb_exemplaire,Discription,idSpecialite) " + + "VALUES ('" + model.getIsbn() + "', " + + "'" + model.getfiliere()+ "', " + + "'" + model.getTitre() + "', " + + "'" + model.getAuteur() + "', " + + "'" + model.getMaisonEdition() + "', " + + "'" + model.getAnnéeEdition() + "', " + + model.getPrix() + ", " + + "'" + model.getNbExemplaires() + "', " + + "'" + model.getDiscription()+"', "+ + "'" + model.getspecialite() +"')"; + DBconnect db = new DBconnect(); + try (Connection connection = db.ConnectBd()) { + Statement state = connection.createStatement(); + state.executeUpdate(query); + System.out.println("Added Ouvrage"); + state.close(); + } + } catch (Exception e) { + System.out.println("Failed to add biblio"); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } +} + +} diff --git a/src/model/Penalisation.java b/src/model/Penalisation.java new file mode 100644 index 0000000..4fcfc88 --- /dev/null +++ b/src/model/Penalisation.java @@ -0,0 +1,67 @@ + +package model; + +import java.time.LocalDate; +import javafx.beans.property.BooleanProperty; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.ObjectProperty; +import javafx.beans.property.SimpleBooleanProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleObjectProperty; + + +public class Penalisation { + + + + + private final IntegerProperty id_penalité ; + private final ObjectProperty date_debut ; + private final ObjectProperty date_fin ; + public Penalisation(int id,LocalDate date_debut,LocalDate date_fin) { + this.id_penalité=new SimpleIntegerProperty(id); + this.date_debut= new SimpleObjectProperty<>(date_debut); + this.date_fin=new SimpleObjectProperty<>(date_fin); + + } + + public int getId_penalité() { + return id_penalité.get(); + } + + public void setId_penalité(int value) { + id_penalité.set(value); + } + + public IntegerProperty id_penalitéProperty() { + return id_penalité; + } + + + public LocalDate getDate_debut() { + return date_debut.get(); + } + + public void setDate_debut(LocalDate value) { + date_debut.set(value); + } + + public ObjectProperty date_debutProperty() { + return date_debut; + } + + public LocalDate getDate_fin() { + return date_fin.get(); + } + + public void setDate_fin(LocalDate value) { + date_fin.set(value); + } + + public ObjectProperty date_finProperty() { + return date_fin; + } + + + +} diff --git a/src/model/Restitution.java b/src/model/Restitution.java new file mode 100644 index 0000000..6343d45 --- /dev/null +++ b/src/model/Restitution.java @@ -0,0 +1,63 @@ + +package model; + +import java.time.LocalDate; +import javafx.beans.property.BooleanProperty; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.ObjectProperty; +import javafx.beans.property.SimpleBooleanProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleObjectProperty; + +public class Restitution { + + private final IntegerProperty id_restitution ; + private final ObjectProperty date_restitution ; + private final BooleanProperty retard ; + + public Restitution(int id,LocalDate date_restitution,Boolean retard) { + this.id_restitution=new SimpleIntegerProperty(id); + this.date_restitution= new SimpleObjectProperty<>(date_restitution); + this.retard= new SimpleBooleanProperty(retard); + } + + public int getId_restitution() { + return id_restitution.get(); + } + + public void setId_restitution(int value) { + id_restitution.set(value); + } + + public IntegerProperty id_restitutionProperty() { + return id_restitution; + } + + + public LocalDate getDate_restitution() { + return date_restitution.get(); + } + + public void setDate_restitution(LocalDate value) { + date_restitution.set(value); + } + + public ObjectProperty date_restitutionProperty() { + return date_restitution; + } + + + public boolean isRetard() { + return retard.get(); + } + + public void setRetard(boolean value) { + retard.set(value); + } + + public BooleanProperty retardProperty() { + return retard; + } + + +} diff --git a/src/model/Sanction.java b/src/model/Sanction.java new file mode 100644 index 0000000..f8fa669 --- /dev/null +++ b/src/model/Sanction.java @@ -0,0 +1,84 @@ + +package model; + +import control.DBconnect; +import java.sql.Connection; +import java.sql.Statement; +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + + +public class Sanction { + + // private final IntegerProperty id_sanction ; + private final IntegerProperty duréeRetard ; + private final IntegerProperty duréeSanction ; + + public Sanction(int duréeRetard, int duréeSanction) { + this.duréeRetard = new SimpleIntegerProperty(duréeRetard); + this.duréeSanction = new SimpleIntegerProperty(duréeSanction); + } + + + + /* public int getId_sanction() { + return id_sanction.get(); + } + + public void setId_sanction(int value) { + id_sanction.set(value); + } + + public IntegerProperty id_sanctionProperty() { + return id_sanction; + } + */ + + public int getDuréeRetard() { + return duréeRetard.get(); + } + + public void setDuréeRetard(int value) { + duréeRetard.set(value); + } + + public IntegerProperty duréeRetardProperty() { + return duréeRetard; + } + + + public int getDuréeSanction() { + return duréeSanction.get(); + } + + public void setDuréeSanction(int value) { + duréeSanction.set(value); + } + + public IntegerProperty duréeSanctionProperty() { + return duréeSanction; + } + + + public void ajouterSanctionToDb(Sanction model) { + try { + String query = "INSERT INTO sanction (Durée_retard, Durée_sanction) " + + "VALUES ('" + model.getDuréeRetard() + "', '" + model.getDuréeSanction() + "')"; + DBconnect db = new DBconnect(); + try (Connection connection = db.ConnectBd()) { + Statement state = connection.createStatement(); + state.executeUpdate(query); + System.out.println("Added Sanction"); + state.close(); + } + } catch (Exception e) { + System.out.println("Failed to add sanction"); + System.out.println(e.getMessage()); + System.out.println(e.getCause()); + } +} + + +} diff --git "a/src/model/Specialit\303\251.java" "b/src/model/Specialit\303\251.java" new file mode 100644 index 0000000..bf94753 --- /dev/null +++ "b/src/model/Specialit\303\251.java" @@ -0,0 +1,44 @@ + +package model; + +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + +public class Specialité { + + private final IntegerProperty id_specialité; + private final StringProperty nom_specialité ; + public Specialité(int id,String nom) { + this.id_specialité=new SimpleIntegerProperty(id); + this.nom_specialité=new SimpleStringProperty(nom); + + } + + public int getId_specialité() { + return id_specialité.get(); + } + + public void setId_specialité(int value) { + id_specialité.set(value); + } + + public IntegerProperty id_specialitéProperty() { + return id_specialité; + } + + + public String getNom_specialité() { + return nom_specialité.get(); + } + + public void setNom_specialité(String value) { + nom_specialité.set(value); + } + + public StringProperty nom_specialitéProperty() { + return nom_specialité; + } + +} diff --git a/src/model/Utilisateur.java b/src/model/Utilisateur.java new file mode 100644 index 0000000..d6286a4 --- /dev/null +++ b/src/model/Utilisateur.java @@ -0,0 +1,59 @@ + +package model; + +import javafx.beans.property.IntegerProperty; +import javafx.beans.property.SimpleIntegerProperty; +import javafx.beans.property.SimpleStringProperty; +import javafx.beans.property.StringProperty; + +public class Utilisateur { + private final IntegerProperty id_utilisateur; + private final StringProperty nom_utilisateur; + private final StringProperty password ; + + public Utilisateur(int id,String nom_utilisateur,String password) { + this.id_utilisateur=new SimpleIntegerProperty(id); + this.nom_utilisateur = new SimpleStringProperty(nom_utilisateur); + this.password= new SimpleStringProperty(password); + } + + + public int getId_utilisateur() { + return id_utilisateur.get(); + } + + public void setId_utilisateur(int value) { + id_utilisateur.set(value); + } + + public IntegerProperty id_utilisateurProperty() { + return id_utilisateur; + } + + + public String getNom_utilisateur() { + return nom_utilisateur.get(); + } + + public void setNom_utilisateur(String value) { + nom_utilisateur.set(value); + } + + public StringProperty nom_utilisateurProperty() { + return nom_utilisateur; + } + + + public String getPassword() { + return password.get(); + } + + public void setPassword(String value) { + password.set(value); + } + + public StringProperty passwordProperty() { + return password; + } + +} diff --git "a/src/style/espace_abonn\303\251e.css" "b/src/style/espace_abonn\303\251e.css" new file mode 100644 index 0000000..b7ee3ca --- /dev/null +++ "b/src/style/espace_abonn\303\251e.css" @@ -0,0 +1,26 @@ +/* +To change this license header, choose License Headers in Project Properties. +To change this template file, choose Tools | Templates +and open the template in the editor. +*/ +/* + Created on : 29 mars 2023, 14:39:33 + Author : Farah +*/ +.p-pan { + -fx-app-background: cornsilk; + -fx-background-color: -fx-app-background; + -fx-padding: 20; +} + +.add_pan { + + -fx-background-color: linear-gradient(from 25% 25% to 100% 100%, #adf7f2, #15aaff); + -fx-effect: dropshadow(gaussian, rgba(0, 0, 0, 0.4), 10, 0.5, 0.0, 0.0); + -fx-background-radius: 15px; +} + +.tab_pan { + -fx-background-color: whitesmoke; +} + diff --git a/src/uno_bibliotheque/Uno_Bibliotheque.java b/src/uno_bibliotheque/Uno_Bibliotheque.java new file mode 100644 index 0000000..1d1406d --- /dev/null +++ b/src/uno_bibliotheque/Uno_Bibliotheque.java @@ -0,0 +1,38 @@ +/* + * To change this license header, choose License Headers in Project Properties. + * To change this template file, choose Tools | Templates + * and open the template in the editor. + */ +package uno_bibliotheque; + +import javafx.application.Application; +import javafx.fxml.FXMLLoader; +import javafx.scene.Parent; +import javafx.scene.Scene; +import javafx.stage.Stage; +import javafx.stage.StageStyle; + +/** + * + * @author Mes documants + */ +public class Uno_Bibliotheque extends Application { + + @Override + public void start(Stage stage) throws Exception { + Parent root = FXMLLoader.load(getClass().getResource("/view/connexion.fxml")); + Scene scene = new Scene(root); + stage.setScene(scene); + stage.initStyle(StageStyle.UNDECORATED); + stage.show(); + } + + /** + * @param args the command line arguments + */ + public static void main(String[] args) { + launch(args); + + } + +} diff --git a/src/view/connexion.fxml b/src/view/connexion.fxml new file mode 100644 index 0000000..797a69e --- /dev/null +++ b/src/view/connexion.fxml @@ -0,0 +1,114 @@ + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
+
+
diff --git a/src/view/espace_bibliothecaire.fxml b/src/view/espace_bibliothecaire.fxml new file mode 100644 index 0000000..22486a1 --- /dev/null +++ b/src/view/espace_bibliothecaire.fxml @@ -0,0 +1,740 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/uno_bibliotheque.sql b/uno_bibliotheque.sql new file mode 100644 index 0000000..1d517c8 --- /dev/null +++ b/uno_bibliotheque.sql @@ -0,0 +1,561 @@ +-- phpMyAdmin SQL Dump +-- version 5.2.0 +-- https://www.phpmyadmin.net/ +-- +-- Hôte : 127.0.0.1 +-- Généré le : mar. 16 mai 2023 à 22:23 +-- Version du serveur : 10.4.24-MariaDB +-- Version de PHP : 8.1.6 + +SET SQL_MODE = "NO_AUTO_VALUE_ON_ZERO"; +START TRANSACTION; +SET time_zone = "+00:00"; + + +/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */; +/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */; +/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */; +/*!40101 SET NAMES utf8mb4 */; + +-- +-- Base de données : `uno_bibliotheque` +-- + +-- -------------------------------------------------------- + +-- +-- Structure de la table `emprunt` +-- + +CREATE TABLE `emprunt` ( + `ID` int(10) NOT NULL, + `Date_emprunt` date DEFAULT NULL, + `Prolongation` bit(1) NOT NULL, + `Date_ristitution` date DEFAULT NULL, + `LecteurID` int(10) NOT NULL, + `OuvrageID` int(10) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- -------------------------------------------------------- + +-- +-- Structure de la table `filiere` +-- + +CREATE TABLE `filiere` ( + `ID` int(10) NOT NULL, + `Nom_filiere` varchar(255) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Déchargement des données de la table `filiere` +-- + +INSERT INTO `filiere` (`ID`, `Nom_filiere`) VALUES +(1, 'Arts'), +(2, 'Biologie'), +(3, 'Chimie'), +(4, 'Commerce et gestion'), +(5, 'Communication'), +(6, 'Droit'), +(7, 'Éducation'), +(8, 'Génie'), +(9, 'Informatique'), +(10, 'Langues et littératures'), +(11, 'Mathématiques'), +(12, 'Médecine'), +(16, 'phisique'), +(13, 'Sciences économiques'), +(14, 'Sciences politiques'), +(15, 'Sociologie'); + +-- -------------------------------------------------------- + +-- +-- Structure de la table `lecteur` +-- + +CREATE TABLE `lecteur` ( + `ID` int(10) NOT NULL, + `nom` varchar(255) NOT NULL, + `Prenom_lecteur` varchar(255) NOT NULL, + `Adresse` varchar(255) NOT NULL, + `Email` varchar(255) NOT NULL, + `Num_tel` int(10) DEFAULT NULL, + `Date_naiss` date NOT NULL, + `Discriminator` varchar(255) DEFAULT NULL, + `type` enum('etudiant interne','etudiant externe','enseignant') NOT NULL, + `paiement` enum('vrai','faux') NOT NULL DEFAULT 'faux', + `dateA` date DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Déchargement des données de la table `lecteur` +-- + +INSERT INTO `lecteur` (`ID`, `nom`, `Prenom_lecteur`, `Adresse`, `Email`, `Num_tel`, `Date_naiss`, `Discriminator`, `type`, `paiement`, `dateA`) VALUES +(23, 'asx', 'asx', 'asx', 'asx', 1213, '2023-04-06', NULL, 'enseignant', 'faux', NULL), +(33, 'dsa', 'das', 'fds', 'billal@gmail.com', 43, '2023-03-27', NULL, 'enseignant', 'faux', NULL); + +-- -------------------------------------------------------- + +-- +-- Structure de la table `ouvrage` +-- + +CREATE TABLE `ouvrage` ( + `ID` int(10) NOT NULL, + `isbn` varchar(255) NOT NULL, + `specialiteID` int(10) DEFAULT NULL, + `Titre` varchar(255) NOT NULL, + `Auteur` varchar(255) NOT NULL, + `Maison_edition` varchar(100) DEFAULT NULL, + `Date_edition` year(4) DEFAULT NULL, + `Prix` float NOT NULL, + `Nb_exemplaire` int(10) NOT NULL, + `Discription` varchar(255) DEFAULT NULL, + `idSpecialite` int(10) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Déchargement des données de la table `ouvrage` +-- + +INSERT INTO `ouvrage` (`ID`, `isbn`, `specialiteID`, `Titre`, `Auteur`, `Maison_edition`, `Date_edition`, `Prix`, `Nb_exemplaire`, `Discription`, `idSpecialite`) VALUES +(1, 'sdfsdf', 13, 'dsfsdf', 'sdfsdfsd', 'sdfdsf', 2023, 3, 3, 'sdfsdfsd', 0), +(2, '125sdf5sdfsdfsd', 9, 'chess', 'ghilas', 'olibris', 2022, 2000, 10, 'aersdfsdfsd', 0), +(4, '125sdf5sdfsdfsddfsf', 13, 'chess', 'ghilas', 'olibris', 2022, 2000, 10, 'aersdfsdfsd', 0), +(6, '125sdf5sdfsdfsddfsfsdf', 1, 'chess', 'ghilas', 'olibris', 2022, 2000, 10, 'aersdfsdfsd', 0), +(8, 'aaaaaaaaaaaaaaaaaaaaa', 9, 'chess', 'ghilas', 'olibris', 2022, 2000, 10, 'aersdfsdfsd', 0), +(9, 'bbbbbbbbbb', 13, 'aaaaaaaaaaaa', 'aaaaaaaaaaa', 'aaaaaaaaaaaa', 2002, 6000, 50, 'sdfsfs', 126), +(10, 'addddddddddddd', 16, 'ddddddddd', 'ddddddddddd', 'ddddddddddd', 1999, 2550, 30, 'sdfsdfsdf', 149), +(11, 'azeraz', NULL, 'azreaz', 'azereaz', 'azeraz', 1966, 2455, 20, 'dfgsg', 0), +(12, 'sdfdsd', NULL, 'sdfsdf', 'sdfsdf', 'sdfsdf', 1999, 8999, 89, 'sdfsdf', 0), +(13, 'dfssd', 1, 'dfssdf', 'sdfsd', 'dsfsf', 2000, 4545, 45445, 'sdfsdf', 0), +(14, 'azeraze', 1, 'azerazer', 'azerazer', 'fsdfsdf', 2020, 1234, 12, 'sdfsd', 0), +(16, 'informatique', 1, 'sdfsdf', 'sdfsdf', 'dsfsdf', 2002, 1254, 50, 'sdfsdf', 0), +(17, 'info', 1, 'sdfsdf', 'sdfsd', 'sdfsdf', 2022, 2045, 45, 'ssdf', 0), +(18, 'azer', 1, 'azre', 'azer', 'sdfq', 2013, 1234, 12, 'azre', 0), +(19, 'sdfsd', 1, 'sdfsdf', 'dsfsdf', 'sdfsd', 2022, 54, 12, 'sdfsddsf', 0), +(20, 'aaaaaddddddddd', 7, 'aaaaaaaadddddddd', 'aaaaaaddddddd', 'aaaaaadddddd', 2021, 3000, 50, 'aaaaaaadddddd', 61), +(22, 'sdfsdfdffff', 13, 'sdfsdf', 'sdfsdf', 'sdfsdf', 2023, 12212, 12, 'sdfsf', 120); + +-- -------------------------------------------------------- + +-- +-- Structure de la table `penalisation` +-- + +CREATE TABLE `penalisation` ( + `ID` int(10) NOT NULL, + `SanctionID` int(10) NOT NULL, + `LecteurID` int(10) NOT NULL, + `Date_debut` date DEFAULT NULL, + `Date_fin` date DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- -------------------------------------------------------- + +-- +-- Structure de la table `restitution` +-- + +CREATE TABLE `restitution` ( + `ID` int(10) NOT NULL, + `EmpruntID` int(10) NOT NULL, + `Date_restitution` date DEFAULT NULL, + `Retard` bit(1) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- -------------------------------------------------------- + +-- +-- Structure de la table `sanction` +-- + +CREATE TABLE `sanction` ( + `ID` int(10) NOT NULL, + `Durée_retard` int(255) DEFAULT NULL, + `Durée_sanction` int(255) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Déchargement des données de la table `sanction` +-- + +INSERT INTO `sanction` (`ID`, `Durée_retard`, `Durée_sanction`) VALUES +(18, 1, 1), +(19, 2, 1), +(20, 21, 1), +(21, 90, 1), +(22, 3, 7), +(23, 3, 30), +(24, 3, 60), +(25, 30, 14), +(26, 5, 14); + +-- -------------------------------------------------------- + +-- +-- Structure de la table `specialite` +-- + +CREATE TABLE `specialite` ( + `ID` int(10) NOT NULL, + `FiliereID` int(10) NOT NULL, + `Nom_specialite` varchar(255) DEFAULT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Déchargement des données de la table `specialite` +-- + +INSERT INTO `specialite` (`ID`, `FiliereID`, `Nom_specialite`) VALUES +(1, 1, 'Design graphique'), +(2, 1, 'Peinture'), +(3, 1, 'Sculpture'), +(4, 1, 'Photographie'), +(5, 1, 'Cinéma'), +(6, 1, 'Arts visuels'), +(7, 1, 'Arts numériques'), +(8, 1, 'Théâtre'), +(9, 1, 'Danse'), +(10, 1, 'Musique'), +(11, 1, 'Art-thérapie'), +(12, 1, 'Conservation et restauration d\'œuvres d\'art'), +(13, 1, 'Arts du spectacle'), +(14, 2, 'Génétique'), +(15, 2, 'Biologie moléculaire'), +(16, 2, 'Écologie'), +(17, 2, 'Zoologie'), +(18, 2, 'Botanique'), +(19, 2, 'Microbiologie'), +(20, 2, 'Biochimie'), +(21, 2, 'Biotechnologie'), +(22, 2, 'Sciences de la santé'), +(23, 2, 'Bioinformatique'), +(24, 3, 'Chimie organique'), +(25, 3, 'Chimie inorganique'), +(26, 3, 'Chimie analytique'), +(27, 3, 'Chimie physique'), +(28, 3, 'Chimie des polymères'), +(29, 3, 'Chimie environnementale'), +(30, 3, 'Chimie pharmaceutique'), +(31, 3, 'Chimie alimentaire'), +(32, 4, 'Marketing'), +(33, 4, 'Finance'), +(34, 4, 'Ressources humaines'), +(35, 4, 'Comptabilité'), +(36, 4, 'Management'), +(37, 4, 'Entrepreneuriat'), +(38, 4, 'Analyse de données'), +(39, 4, 'Gestion de projets'), +(40, 4, 'Logistique'), +(41, 5, 'Relations publiques'), +(42, 5, 'Journalisme'), +(43, 5, 'Médias sociaux'), +(44, 5, 'Publicité'), +(45, 5, 'Communication visuelle'), +(46, 5, 'Communication organisationnelle'), +(47, 5, 'Communication interculturelle'), +(48, 5, 'Communication politique'), +(49, 6, 'Droit civil'), +(50, 6, 'Droit pénal'), +(51, 6, 'Droit du travail'), +(52, 6, 'Droit international'), +(53, 6, 'Droit des affaires'), +(54, 6, 'Droit de la propriété intellectuelle'), +(55, 6, 'Droit fiscal'), +(56, 6, 'Droit de l\'environnement'), +(57, 7, 'Éducation de la petite enfance'), +(58, 7, 'Éducation primaire'), +(59, 7, 'Éducation secondaire'), +(60, 7, 'Éducation physique'), +(61, 7, 'Éducation à distance'), +(62, 7, 'Didactique'), +(63, 7, 'Psychologie de l\'éducation'), +(64, 8, 'Génie civil'), +(65, 8, 'Génie mécanique'), +(66, 8, 'Génie électrique'), +(67, 8, 'Génie industriel'), +(68, 8, 'Génie chimique'), +(69, 8, 'Génie informatique'), +(70, 8, 'Génie aérospatial'), +(71, 8, 'Génie biomédical'), +(72, 8, 'Génie des matériaux'), +(73, 8, 'Génie minier'), +(74, 8, 'Génie environnemental'), +(75, 8, 'Génie géologique'), +(76, 9, 'Développement web'), +(77, 9, 'Développement mobile'), +(78, 9, 'Intelligence artificielle'), +(79, 9, 'Sécurité informatique'), +(80, 9, 'Base de données'), +(81, 9, 'Réseaux informatiques'), +(82, 9, 'Analyse de données'), +(83, 9, 'Informatique décisionnelle'), +(84, 9, 'Ingénierie logicielle'), +(85, 9, 'Informatique embarquée'), +(86, 10, 'Anglais'), +(87, 10, 'Français'), +(88, 10, 'Espagnol'), +(89, 10, 'Allemand'), +(90, 10, 'Italien'), +(91, 10, 'Portugais'), +(92, 10, 'Arabe'), +(93, 10, 'Chinois'), +(94, 10, 'Japonais'), +(95, 10, 'Langues autochtones'), +(96, 10, 'Traduction'), +(97, 10, 'Interprétation'), +(98, 11, 'Algèbre'), +(99, 11, 'Analyse mathématique'), +(100, 11, 'Statistiques'), +(101, 11, 'Probabilités'), +(102, 11, 'Géométrie'), +(103, 11, 'Mathématiques appliquées'), +(104, 11, 'Mathématiques financières'), +(105, 11, 'Théorie des nombres'), +(106, 11, 'Cryptographie'), +(107, 12, 'Médecine générale'), +(108, 12, 'Chirurgie'), +(109, 12, 'Gynécologie-obstétrique'), +(110, 12, 'Pédiatrie'), +(111, 12, 'Psychiatrie'), +(112, 12, 'Médecine d\'urgence'), +(113, 12, 'Radiologie'), +(114, 12, 'Anesthésiologie'), +(115, 12, 'Ophtalmologie'), +(116, 12, 'Dermatologie'), +(117, 12, 'Médecine légale'), +(118, 12, 'Médecine du sport'), +(119, 13, 'Économie politique'), +(120, 13, 'Économie de la santé'), +(121, 13, 'Économie du développement'), +(122, 13, 'Économie industrielle'), +(123, 13, 'Économétrie'), +(126, 13, 'Gestion'), +(127, 14, 'Relations internationales'), +(128, 14, 'Politiques publiques'), +(129, 14, 'Science politique comparée'), +(130, 14, 'Théorie politique'), +(131, 14, 'Droit international'), +(132, 14, 'Études de sécurité'), +(133, 14, 'Études stratégiques'), +(134, 15, 'Anthropologie'), +(135, 15, 'Sociologie'), +(136, 15, 'Science de la communication'), +(137, 15, 'Travail social'), +(138, 15, 'Géographie'), +(139, 15, 'Archéologie'), +(140, 15, 'Histoire'), +(141, 15, 'Psychologie'), +(142, 16, 'Physique nucléaire'), +(143, 16, 'Physique atomique et moléculaire'), +(144, 16, 'Physique de la matière condensée'), +(145, 16, 'Physique théorique'), +(146, 16, 'Physique mathématique'), +(147, 16, 'Astrophysique'), +(148, 16, 'Physique des particules'), +(149, 16, 'Optique'), +(150, 16, 'Physique médicale'), +(151, 16, 'Acoustique'); + +-- -------------------------------------------------------- + +-- +-- Structure de la table `utilisateur` +-- + +CREATE TABLE `utilisateur` ( + `ID` int(10) NOT NULL, + `Nom_utilisateur` varchar(255) NOT NULL, + `Mot_de_pass` varchar(255) NOT NULL, + `Nom_biblio` varchar(255) DEFAULT NULL, + `Prénom_biblio` varchar(255) DEFAULT NULL, + `Adresse_biblio` varchar(255) DEFAULT NULL, + `Email_biblio` varchar(255) DEFAULT NULL, + `Num_tel_biblio` int(10) DEFAULT NULL, + `Discriminator` varchar(255) NOT NULL +) ENGINE=InnoDB DEFAULT CHARSET=latin1; + +-- +-- Déchargement des données de la table `utilisateur` +-- + +INSERT INTO `utilisateur` (`ID`, `Nom_utilisateur`, `Mot_de_pass`, `Nom_biblio`, `Prénom_biblio`, `Adresse_biblio`, `Email_biblio`, `Num_tel_biblio`, `Discriminator`) VALUES +(1, 'admin', 'admin', 'a', 'a', 'a', 'a', 558955552, 'gérant'), +(2, 'biblio1', '1234', 'Berkati', NULL, NULL, NULL, NULL, 'biblio'), +(3, 'ghilas', 'b', 'sdfsd', 'sdfsdf', 'sdfsdf', 'sdfsf', 56456, 'biblio'), +(4, 'sdfsdf', 'ab', 'sdfsd', 'sdfds', 'dsfsf', 'dsfdsf', 558695847, 'biblio'), +(5, 'abc', 'ab', 'gh', 'az', 'sdfsdf', 'sdfsd@gmail.com', 555898457, 'biblio'), +(6, 'ab', 'ab', 'aer', 'azer', 'aerzear', 'sdfsdf', 55589865, 'biblio'), +(9, 'azertyuiop', '123456789', 'ghilas', 'benyahia', 'sdfsdf', 'ghila.ben@gh.com', 55598658, 'biblio'), +(13, 'aqw', 'aqw', 'nnnnnnn', 'nnnnn', 'sdfsdf', 'sdfsd@gaimk.com', 555, 'biblio'); + +-- +-- Index pour les tables déchargées +-- + +-- +-- Index pour la table `emprunt` +-- +ALTER TABLE `emprunt` + ADD PRIMARY KEY (`ID`), + ADD KEY `FKEmprunt683818` (`OuvrageID`), + ADD KEY `FKEmprunt860752` (`LecteurID`); + +-- +-- Index pour la table `filiere` +-- +ALTER TABLE `filiere` + ADD PRIMARY KEY (`ID`), + ADD UNIQUE KEY `Nom_filiere` (`Nom_filiere`); + +-- +-- Index pour la table `lecteur` +-- +ALTER TABLE `lecteur` + ADD PRIMARY KEY (`ID`); + +-- +-- Index pour la table `ouvrage` +-- +ALTER TABLE `ouvrage` + ADD PRIMARY KEY (`ID`), + ADD UNIQUE KEY `isbn` (`isbn`), + ADD KEY `appartenir` (`specialiteID`); + +-- +-- Index pour la table `penalisation` +-- +ALTER TABLE `penalisation` + ADD PRIMARY KEY (`ID`), + ADD KEY `apartenir` (`SanctionID`), + ADD KEY `pénaliser` (`LecteurID`); + +-- +-- Index pour la table `restitution` +-- +ALTER TABLE `restitution` + ADD PRIMARY KEY (`ID`), + ADD KEY `FKrestitutio523900` (`EmpruntID`); + +-- +-- Index pour la table `sanction` +-- +ALTER TABLE `sanction` + ADD PRIMARY KEY (`ID`); + +-- +-- Index pour la table `specialite` +-- +ALTER TABLE `specialite` + ADD PRIMARY KEY (`ID`), + ADD KEY `FKspecialité614933` (`FiliereID`); + +-- +-- Index pour la table `utilisateur` +-- +ALTER TABLE `utilisateur` + ADD PRIMARY KEY (`ID`), + ADD UNIQUE KEY `Nom_utilisateur` (`Nom_utilisateur`); + +-- +-- AUTO_INCREMENT pour les tables déchargées +-- + +-- +-- AUTO_INCREMENT pour la table `emprunt` +-- +ALTER TABLE `emprunt` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT; + +-- +-- AUTO_INCREMENT pour la table `filiere` +-- +ALTER TABLE `filiere` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=17; + +-- +-- AUTO_INCREMENT pour la table `lecteur` +-- +ALTER TABLE `lecteur` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=35; + +-- +-- AUTO_INCREMENT pour la table `ouvrage` +-- +ALTER TABLE `ouvrage` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=23; + +-- +-- AUTO_INCREMENT pour la table `penalisation` +-- +ALTER TABLE `penalisation` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT; + +-- +-- AUTO_INCREMENT pour la table `restitution` +-- +ALTER TABLE `restitution` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT; + +-- +-- AUTO_INCREMENT pour la table `sanction` +-- +ALTER TABLE `sanction` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=27; + +-- +-- AUTO_INCREMENT pour la table `specialite` +-- +ALTER TABLE `specialite` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=152; + +-- +-- AUTO_INCREMENT pour la table `utilisateur` +-- +ALTER TABLE `utilisateur` + MODIFY `ID` int(10) NOT NULL AUTO_INCREMENT, AUTO_INCREMENT=14; + +-- +-- Contraintes pour les tables déchargées +-- + +-- +-- Contraintes pour la table `emprunt` +-- +ALTER TABLE `emprunt` + ADD CONSTRAINT `FKEmprunt683818` FOREIGN KEY (`OuvrageID`) REFERENCES `ouvrage` (`ID`), + ADD CONSTRAINT `FKEmprunt860752` FOREIGN KEY (`LecteurID`) REFERENCES `lecteur` (`ID`); + +-- +-- Contraintes pour la table `ouvrage` +-- +ALTER TABLE `ouvrage` + ADD CONSTRAINT `appartenir` FOREIGN KEY (`specialiteID`) REFERENCES `specialite` (`ID`); + +-- +-- Contraintes pour la table `penalisation` +-- +ALTER TABLE `penalisation` + ADD CONSTRAINT `apartenir` FOREIGN KEY (`SanctionID`) REFERENCES `sanction` (`ID`), + ADD CONSTRAINT `pénaliser` FOREIGN KEY (`LecteurID`) REFERENCES `lecteur` (`ID`); + +-- +-- Contraintes pour la table `restitution` +-- +ALTER TABLE `restitution` + ADD CONSTRAINT `FKrestitutio523900` FOREIGN KEY (`EmpruntID`) REFERENCES `emprunt` (`ID`); + +-- +-- Contraintes pour la table `specialite` +-- +ALTER TABLE `specialite` + ADD CONSTRAINT `FKspecialité614933` FOREIGN KEY (`FiliereID`) REFERENCES `filiere` (`ID`); +COMMIT; + +/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */; +/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */; +/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;