Compare commits

..

9 Commits

Author SHA1 Message Date
esoe 6698e7c635 qq 2 years ago
esoe ff3bfba86a йй 2 years ago
esoe b2b9043359 qq 2 years ago
esoe a66649b466 qq 2 years ago
esoe 3948b8fef2 qq 2 years ago
esoe 2833ef44f5 11 2 years ago
esoe 39ddbdebb9 qq 2 years ago
esoe 6a4b179c49 qq 2 years ago
esoe 74b5449704 molokoin 2 years ago
  1. 2
      README.md
  2. 0
      docs/diagrams/src/egspt/anyreport.puml
  3. 0
      docs/diagrams/src/egspt/package.puml
  4. 0
      docs/diagrams/src/egspt/use-case.puml
  5. 8
      docs/diagrams/src/molokoin/class.puml
  6. 6
      docs/diagrams/src/molokoin/sequence.puml
  7. 20
      docs/diagrams/src/molokoin/sql.puml
  8. 13
      docs/diagrams/src/molokoin/usecase.puml
  9. 15
      dsk05-task.md
  10. 6
      pom.xml
  11. 5
      src/main/java/ru/egspt/Access.java
  12. 2
      src/main/java/ru/egspt/Base.java
  13. 1
      src/main/java/ru/egspt/implant/Runner.java
  14. 7
      src/main/java/ru/molokoin/Runner.java
  15. BIN
      src/main/puml/ERD-moodle.png
  16. 37
      src/main/puml/moodle-erd.puml
  17. 120
      src/main/sql/script.sql
  18. BIN
      target/classes/ru/egspt/Access.class
  19. BIN
      target/classes/ru/egspt/implant/Runner.class
  20. BIN
      target/classes/ru/molokoin/Runner.class
  21. 9
      target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst
  22. 44
      target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst
  23. BIN
      target/moodle-anyreport-0.1-jar-with-dependencies.jar
  24. BIN
      target/moodle-anyreport-0.1.jar

2
README.md

@ -1,4 +1,4 @@ @@ -1,4 +1,4 @@
#muudle-anyreport
# muudle-anyreport
скачать можно тут: http://molokoin.ru:3000/esoe/moodle-anyreport/src/branch/master/target/moodle-anyreport-0.1-jar-with-dependencies.jar

0
docs/diagrams/src/anyreport.puml → docs/diagrams/src/egspt/anyreport.puml

0
docs/diagrams/src/package.puml → docs/diagrams/src/egspt/package.puml

0
docs/diagrams/src/use-case.puml → docs/diagrams/src/egspt/use-case.puml

8
docs/diagrams/src/molokoin/class.puml

@ -0,0 +1,8 @@ @@ -0,0 +1,8 @@
@startuml class
title "moodle-anyreport: classes"
/'Программа реализует основной функционал обычного калькулятора'/
class Runner /'Запускает программу на выполнение'/
class SwingFace /'Реализация графического интерфейса'/
class ConsoleFace /'Реализация консольного интерфейса'/
class Calculator /'Хранит данные о запросах пользователя'/
@enduml

6
docs/diagrams/src/molokoin/sequence.puml

@ -0,0 +1,6 @@ @@ -0,0 +1,6 @@
@startuml sequence
title "moodle-anyreport: sequence (logic)"
participant "Пользователь" as user
participant "Программа" as app
participant "Хранилище" as storage
@enduml

20
docs/diagrams/src/molokoin/sql.puml

@ -0,0 +1,20 @@ @@ -0,0 +1,20 @@
@startuml sql
title "moodle-anyreport: database structure"
/' структура необходимых таблиц базы данных moodle '/
!define primary_key(x) <b><color:#b8861b><&key></color> x</b>
!define foreign_key(x) <color:#aaaaaa><&key></color> x
!define column(x) <color:#efefef><&media-record></color> x
!define table(x) entity x << (T, white) >>
table( user ) {
primary_key( id ): UUID
column( isActive ): BOOLEAN
foreign_key( cityId ): INTEGER <<FK>>
}
table( city ) {
primary_key( id ): UUID
column( name ): CHARACTER VARYING
column( country ): CHARACTER VARYING
column( postCode ): INTEGER
}
user }|--|| city
@enduml

13
docs/diagrams/src/molokoin/usecase.puml

@ -0,0 +1,13 @@ @@ -0,0 +1,13 @@
@startuml usecase
title "moodle-anyreport: usecases"
left to right direction
actor "Пользователь" as user
usecase "Калькулятор" as program
user -> program : "Целые числа"
user -> program : "Дробные числа" /'.'/
user -> program : "Сбрасывать значения" /'С'/
user -> program : "Указывать математические операции" /'+-*'/
user -> program : "Запрашивать расчет переданного выражения" /'='/
user <-down- program : "Показывать текущее поле" /''/
user <-down- program : "Показывать результат вычислений" /''/
@enduml

15
dsk05-task.md

@ -0,0 +1,15 @@ @@ -0,0 +1,15 @@
Прошу сделать выгрузку по следующим вопросам:
1. Сколько человек приняло участие в тестировании (всего).
<code>
-- участвовали в тестировании (имеют попытку сдачи) --> 345
SELECT count(DISTINCT mdl_user.id)
FROM mdl_quiz_attempts
LEFT JOIN mdl_user
on mdl_quiz_attempts.userid=mdl_user.id
WHERE username LIKE "dsk05-%";
</code>
2. Результат по каждой группе тестов, на каждого специалиста
3. Время прохождения тестов по каждому специалисту (на каждую группу в отдельности и общее время на весь этап тестирования).
4. Список лиц, которые вообще не начали похождение тестов.
(сделал в заявке)

6
pom.xml

@ -62,6 +62,12 @@ @@ -62,6 +62,12 @@
<artifactId>mysql-connector-java</artifactId>
<version>8.0.28</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mariadb.jdbc/mariadb-java-client -->
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<version>3.0.3</version>
</dependency>
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-api</artifactId>

5
src/main/java/ru/egspt/Access.java

@ -7,7 +7,8 @@ public class Access { @@ -7,7 +7,8 @@ public class Access {
* @param link the link to set
*/
public void setLink(String link) {
this.link = "jdbc:MySQL://" + link + ":3306/moodle";
//this.link = "jdbc:MySQL://" + link + ":3306/moodle";
this.link = "jdbc:mariadb://" + link + ":3306/moodle";
}
/**
* @return the link
@ -39,5 +40,5 @@ public class Access { @@ -39,5 +40,5 @@ public class Access {
public String getPassword() {
return password;
}
}

2
src/main/java/ru/egspt/Base.java

@ -43,7 +43,7 @@ public class Base { @@ -43,7 +43,7 @@ public class Base {
public Connection getConnection() {
return connection;
}
//подключение к базе
public void connect(){
System.out.println("Подключение к серверу баз данных ...");

1
src/main/java/ru/egspt/implant/Runner.java

@ -33,7 +33,6 @@ public class Runner { @@ -33,7 +33,6 @@ public class Runner {
ArrayList<Quiz> quizes = r.data.getQuizesFromBase(r.base);
ArrayList<Result> results = r.data.getResultsFromBase(r.base);
ArrayList<User> users = r.data.getUsersFromBase(r.base);
}
}

7
src/main/java/ru/molokoin/Runner.java

@ -0,0 +1,7 @@ @@ -0,0 +1,7 @@
package ru.molokoin;
public class Runner {
public static void main(String[] args) {
System.out.println("Запущен основной поток программы: " + Thread.currentThread().getName());
}
}

BIN
src/main/puml/ERD-moodle.png

Binary file not shown.

After

Width:  |  Height:  |  Size: 14 KiB

37
src/main/puml/moodle-erd.puml

@ -0,0 +1,37 @@ @@ -0,0 +1,37 @@
@startuml ERD-moodle
!define primary_key(x) <b><color:#b8861b><&key></color> x</b>
!define foreign_key(x) <b><color:#aaaaaa><&key></color> x</b>
!define column(x) <b><color:#efefef><&media-record></color> x</b>
!define table(x) entity x << (T, white) >>
title "Entity Relationship Diagram (ERD): moodle"
entity "mdl_user" as users
entity "mdl_quiz_attempt" as attempts
entity "mdl_quiz" as quizes
' Отношения
table(users){
primary_key(id):INTEGER
column(username):VARCHAR
column(email):VARCHAR
}
table(attempts){
primary_key(id):INTEGER
foreign_key(quiz):INTEGER
foreign_key(userid):INTEGER
column(attempt):INTEGER
column(timestart):DATE
column(timefinish):DATE
column(sumgrades):DECIMAL
}
table(quizes){
primary_key(id):INTEGER
column(name):VARCHAR
}
' Связи
users ||--|{ attempts
quizes ||--|{ attempts
@enduml

120
src/main/sql/script.sql

@ -0,0 +1,120 @@ @@ -0,0 +1,120 @@
-- назначенные аккаунты
SELECT id, username, email FROM mdl_user
where username LIKE "dsk05-%";
-- всего назначео аккаунтов --> 1121
SELECT count(*)
FROM mdl_user
WHERE username LIKE "dsk05-%";
-- участвовали в тестировании (имеют попытку сдачи) --> 345
SELECT count(DISTINCT mdl_user.id)
FROM mdl_quiz_attempts
LEFT JOIN mdl_user
on mdl_quiz_attempts.userid=mdl_user.id
WHERE username LIKE "dsk05-%";
-- перечень тестов, которые сдавали
SELECT mdl_quiz.name, mdl_quiz.id
FROM mdl_quiz_attempts
LEFT JOIN mdl_user on mdl_quiz_attempts.userid=mdl_user.id
LEFT JOIN mdl_quiz on mdl_quiz_attempts.quiz=mdl_quiz.id
WHERE username LIKE "dsk05-%"
GROUP BY mdl_quiz.id;
name id
Тестирование по п.32. Строительный контроль за общестроительными работами 19
40. Строительный контроль при строительстве, реконструкции и капитальном ремонте объектов нефтяной и газовой промышленности 27
1.2. Земляные работы 50
1.1. Подготовительные работы 51
1.4. Свайные работы 53
1.5. Искусственное закрепление грунтов 54
1.6. Монтаж и устройство бетонных, железобетонных, сборных бетонных, сборных железобетонных, и монолитных конструкций 55
1.8. Монтаж металлических конструкций 57
1.10. Защита строительных конструкций 59
46.3 Организация строительства (начальник ПТО, линейный работник) 104
49.1 Монтаж магистральных и промысловых трубопроводов 107
51. Контроль качества сварных соединений и изоляции 108
65. Особенности выполнения строительных работ в условиях вечной мерзлоты 111
-- Вывод результатов по одному тесту >> 19
-- пользователи имеющие результаты --> результаты без пустых строк
SELECT mdl_user.username,
quiz,
userid,
attempt,
FROM_UNIXTIME(timestart),
FROM_UNIXTIME(timefinish),
mdl_quiz_attempts.sumgrades,
DATE_FORMAT(FROM_UNIXTIME(timefinish - timestart), '%imin:%ssec') as "lost-time"
FROM mdl_quiz_attempts
LEFT JOIN mdl_user on mdl_quiz_attempts.userid=mdl_user.id
LEFT JOIN mdl_quiz on mdl_quiz_attempts.quiz=mdl_quiz.id
WHERE username LIKE "dsk05-%" and mdl_quiz.id in(19);
-- все пользователи --> результаты и пустые строки
SELECT mdl_user.username,
quiz,
userid,
attempt,
FROM_UNIXTIME(timestart),
FROM_UNIXTIME(timefinish),
mdl_quiz_attempts.sumgrades,
DATE_FORMAT(FROM_UNIXTIME(timefinish - timestart), '%imin:%ssec') as "lost-time"
FROM mdl_user
LEFT JOIN mdl_quiz_attempts on mdl_quiz_attempts.userid=mdl_user.id
LEFT JOIN mdl_quiz on mdl_quiz_attempts.quiz=mdl_quiz.id
WHERE username LIKE "dsk05-%" and mdl_quiz.id in(19);
-- Общее время потраченое на тестирование
--
SELECT mdl_user.username,
DATE_FORMAT(FROM_UNIXTIME(sum(timefinish - timestart)), '%hh:%imin:%ssec') as "Полное время тестирования",
count(*) as "Количество тестов"
FROM mdl_user
LEFT JOIN mdl_quiz_attempts on mdl_quiz_attempts.userid=mdl_user.id
LEFT JOIN mdl_quiz on mdl_quiz_attempts.quiz=mdl_quiz.id
WHERE username LIKE "dsk05-%"
GROUP BY mdl_user.username
HAVING DATE_FORMAT(FROM_UNIXTIME(sum(timefinish - timestart)), '%hh:%imin:%ssec') is not null;
-- все тесты
SELECT id, name FROM mdl_quiz;
-- все данные о попытках
SELECT id, quiz, userid, attempt, timestart, timefinish, sumgrades FROM mdl_quiz_attempts;
-- для отчета -->
WITH pure AS (
SELECT
mqa.id as pure_id,
mqa.userid as pure_userid,
mqa.attempt as pure_attempt,
FROM_UNIXTIME(mqa.timestart) AS pure_timestart_date,
FROM_UNIXTIME(mqa.timefinish) AS pure_timefinish_date,
mqa.sumgrades as pure_mqa_sumgrades,
mqa.quiz as pure_mqa_quiz,
mq.id as pure_mq_id,
mq.name as pure_mq_name,
mu.id as pure_mu_id,
mu.username as pure_mu_username,
mu.email as pure_mu_email
FROM mdl_quiz_attempts as mqa
LEFT JOIN mdl_quiz as mq on mqa.quiz=mq.id
LEFT JOIN mdl_user as mu on mqa.userid=mu.id
WHERE mqa.userid >= 4263
)
SELECT
pure_id,
pure_userid,
pure_mu_username,
pure_mu_email,
pure_timestart_date,
pure_timefinish_date,
pure_mqa_sumgrades,
pure_mq_name
FROM pure as report;

BIN
target/classes/ru/egspt/Access.class

Binary file not shown.

BIN
target/classes/ru/egspt/implant/Runner.class

Binary file not shown.

BIN
target/classes/ru/molokoin/Runner.class

Binary file not shown.

9
target/maven-status/maven-compiler-plugin/compile/default-compile/createdFiles.lst

@ -1,20 +1,21 @@ @@ -1,20 +1,21 @@
ru\egspt\TagControls.class
ru\egspt\ResultsTableModel.class
ru\egspt\User.class
ru\egspt\App.class
ru\egspt\QuizesTableModel.class
ru\egspt\TagModel.class
ru\egspt\implant\ExtendedUser$1.class
ru\egspt\BaseControls.class
ru\egspt\ReportTableModel.class
ru\egspt\Result.class
ru\egspt\AccessPane.class
ru\egspt\DataPane.class
ru\egspt\Quiz.class
ru\egspt\Access.class
ru\egspt\Base.class
ru\egspt\UsersTableModel.class
ru\egspt\ReportControls.class
ru\egspt\UserListModel.class
ru\egspt\TagPane.class
ru\egspt\Data.class
ru\egspt\User.class
ru\egspt\QuizesTableModel.class
ru\egspt\ReportTableModel.class
ru\egspt\UsersTableModel.class
ru\egspt\ReportPane.class

44
target/maven-status/maven-compiler-plugin/compile/default-compile/inputFiles.lst

@ -1,20 +1,24 @@ @@ -1,20 +1,24 @@
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\TagPane.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\QuizesTableModel.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\TagModel.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\AccessPane.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\BaseControls.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\DataPane.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\Data.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\ReportTableModel.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\ResultsTableModel.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\Access.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\App.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\Base.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\User.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\UsersTableModel.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\ReportControls.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\UserListModel.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\Result.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\TagControls.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\ReportPane.java
c:\Users\devuser\Documents\code\moodle\moodle-anyreport\src\main\java\ru\egspt\Quiz.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\BaseControls.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\implant\ExtendedUser.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\implant\Runner.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\ReportControls.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\TagControls.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\UsersTableModel.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\AccessPane.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\QuizesTableModel.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\ReportPane.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\ReportTableModel.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\implant\Implant.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\Quiz.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\ResultsTableModel.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\Access.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\molokoin\Runner.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\Data.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\Result.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\App.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\DataPane.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\TagModel.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\User.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\TagPane.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\Base.java
c:\Users\devuser\Documents\code\moodle-anyreport\src\main\java\ru\egspt\UserListModel.java

BIN
target/moodle-anyreport-0.1-jar-with-dependencies.jar

Binary file not shown.

BIN
target/moodle-anyreport-0.1.jar

Binary file not shown.
Loading…
Cancel
Save