esoe
3 years ago
1 changed files with 0 additions and 139 deletions
@ -1,139 +0,0 @@ |
|||||||
@startuml anyreport |
|
||||||
!theme cerulean-outline |
|
||||||
package moodle-report{ |
|
||||||
' сборка приложения |
|
||||||
class App{ |
|
||||||
- accessPane : AccessPane |
|
||||||
- tagPane : TagPane |
|
||||||
- reportPane : ReportPane |
|
||||||
} |
|
||||||
'панель подключения к базе данных |
|
||||||
class AccessPane{} |
|
||||||
AccessPane --> App |
|
||||||
'панель управления тегами для формирования выборки пользователей |
|
||||||
class TagPane{} |
|
||||||
TagPane --> App |
|
||||||
'панель отображения отчета по выборке |
|
||||||
class ReportPane{} |
|
||||||
ReportPane -->App |
|
||||||
|
|
||||||
/'методы обработки действий пользователя |
|
||||||
клики мыши, нажатия клавишь, итд. |
|
||||||
'/ |
|
||||||
class TagControls{ |
|
||||||
+ enterPressed() : void |
|
||||||
+ addTag() : void |
|
||||||
+ removeTag() : void |
|
||||||
+ clearTags() : void |
|
||||||
} |
|
||||||
TagControls --> TagPane |
|
||||||
|
|
||||||
class AccessControls{ |
|
||||||
+ connect(Base base, JPanel pane) : void |
|
||||||
+ disconnect(Base base, JPanel pane) : void |
|
||||||
} |
|
||||||
AccessControls --> AccessPane |
|
||||||
'Пользователь попросил сохранить отчет в файл |
|
||||||
'Указывает путь куда сохранить |
|
||||||
class ReportControls{ |
|
||||||
- path : String |
|
||||||
+ getTableReport() : void |
|
||||||
+ getXLSXReport() : void |
|
||||||
+ getTextReport() : void |
|
||||||
} |
|
||||||
ReportControls --> ReportPane |
|
||||||
|
|
||||||
'модель данных для текстового отчета |
|
||||||
class ReportTextModel{ |
|
||||||
'количество пройденных тестов |
|
||||||
'список пройденных тестов |
|
||||||
'количество пользователей в выборке |
|
||||||
'количество уникальных пользователей |
|
||||||
} |
|
||||||
ReportTextModel --> ReportControls |
|
||||||
'модель данных для отчета xlsx |
|
||||||
class ReportXLSXModel{ |
|
||||||
- path : String |
|
||||||
+ ReportXLSXModel(Data data) : void |
|
||||||
+ setPath() : void |
|
||||||
+ getPath() : String |
|
||||||
+ CreateXLSXReport() : void |
|
||||||
} |
|
||||||
ReportXLSXModel --> ReportControls |
|
||||||
'модель данных для отображения в gui |
|
||||||
class ReportTableModel{} |
|
||||||
ReportTableModel --> ReportControls |
|
||||||
|
|
||||||
/' |
|
||||||
получение данных из базы данных |
|
||||||
доступ к базе данных |
|
||||||
'/ |
|
||||||
class Base{ |
|
||||||
- connection : Connection |
|
||||||
- login : String |
|
||||||
- password : Array<Char> |
|
||||||
- url : String |
|
||||||
+ setConnection(Connection connaction) : void |
|
||||||
+ getConnaction() : Connaction |
|
||||||
+ connect() : bolean |
|
||||||
+ disconnect() : void |
|
||||||
} |
|
||||||
Base --> Data |
|
||||||
Base --> AccessControls |
|
||||||
|
|
||||||
' хранение и представление данных |
|
||||||
class Data{ |
|
||||||
- userlist : UserListModel |
|
||||||
- results : ArrayList<Result> |
|
||||||
- quizes : ArrayList<Quiz> |
|
||||||
} |
|
||||||
Data --> ReportTextModel |
|
||||||
Data --> ReportXLSXModel |
|
||||||
Data --> ReportTableModel |
|
||||||
|
|
||||||
/'формирование перечня пользователей |
|
||||||
- на основании тегов |
|
||||||
- на основании исходных перечней (из файла) |
|
||||||
'/ |
|
||||||
class UserListModel{ |
|
||||||
- userlist : ArrayList<User> |
|
||||||
+ getUsers() : ArrayList<User> |
|
||||||
+ setUsersByTag(TagModel tags) : void |
|
||||||
+ setUsersFromFile(File file) : void |
|
||||||
} |
|
||||||
UserListModel --> Data |
|
||||||
|
|
||||||
class User{ |
|
||||||
- id : int |
|
||||||
- login : String |
|
||||||
- mail : String |
|
||||||
} |
|
||||||
User --> UserListModel |
|
||||||
|
|
||||||
class Result{ |
|
||||||
- id : int |
|
||||||
- quizid : int |
|
||||||
- userid : int |
|
||||||
- grade : double |
|
||||||
- time : Long |
|
||||||
} |
|
||||||
Result --> Data |
|
||||||
|
|
||||||
class Quiz{ |
|
||||||
- id : int |
|
||||||
- name : String |
|
||||||
} |
|
||||||
Quiz --> Data |
|
||||||
|
|
||||||
class TagModel{ |
|
||||||
- tags : ArrayList<String> |
|
||||||
+ setTags(ArrayList<String> tags) : void |
|
||||||
+ getTags() : ArrayList<String> |
|
||||||
+ addTag(String tag) : void |
|
||||||
+ removeTag(String tag) : void |
|
||||||
} |
|
||||||
TagModel --> TagControls |
|
||||||
TagModel --> UserListModel |
|
||||||
} |
|
||||||
|
|
||||||
@enduml |
|
Loading…
Reference in new issue