Blue Bridge Cup エントリー プロジェクト (vue + springBoot)

サーバー nginx 構成

写真の説明を追加してください

バックエンド ポート 83

スクリーン -S lanqiao

アクセスリンク

ドメイン名

公衆網

#databaseEduDb

テーブルを作成

CREATE TABLE 試験 (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '主キーの自動インクリメント',
ExamName VARCHAR(255) NOT NULL COMMENT '試験名',
startTime DATETIME NOT NULL COMMENT '開始時刻',
endTime DATETIME NOT NULL COMMENT '終了時刻 '、
examStatus INT(11) NOT NULL COMMENT '試験状況'、
testPaper INT(11) NOT NULL COMMENT '試験用紙'、
examExplain VARCHAR(255) NOT NULL COMMENT '試験の説明'、
isOpen INT(11) NOT NULL DEFAULT 0 COMMENT '開くかどうか 0|1',
questionOutOfOrder INT(11) NOT NULL DEFAULT 0 COMMENT '順序が正しくない質問 0|1',
PRIMARY KEY (id)
) COMMENT='試験用紙';

CREATE TABLE Examstudent (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
試験 INT(11) NOT NULL COMMENT 'exam table association id',
student INT(11) NOT NULL COMMENT 'user table association id' ,
result INT(11) COMMENT 'Grade',
isUpload INT(11) NOT NULL DEFAULT 0 COMMENT '提出するかどうか 0|1',
uploadTime DATETIME COMMENT '提出時間',
PRIMARY KEY (id),
CONSTRAINT fk_exam FOREIGN KEY (試験) REFERENCES 試験 (id),
CONSTRAINT fk_student FOREIGN KEY (学生) REFERENCES user(id)
) COMMENT='受験生関連付けテーブル';

試験教師フォーム

CREATE TABLE 試験教師 (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '主キーの自動インクリメント',
試験 INT(11) NOT NULL COMMENT '試験テーブルの関連付け id',
教師 INT(11) NOT NULL COMMENT 'ユーザー テーブルの関連付け id' ,
PRIMARY KEY (id),
CONSTRAINT fk_exam_2 FOREIGN KEY (試験) REFERENCES Exam(id),
CONSTRAINT fk_teacher_2 FOREIGN KEY (教師) REFERENCES user(id)
) COMMENT='試験教師関連テーブル';

なぜ外部キー名の重複の問題を考慮しなかったのか

グループ ペーパー テンプレート テーブル

CREATE TABLE grouptemplate (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
subject INT(11) NOT NULL COMMENT 'subject',
name VARCHAR(255) NOT NULL COMMENT 'name',
isOpen INT(11) NOT NULL COMMENT '0|1 を有効にするかどうか',
userId INT(11) NOT NULL COMMENT 'ユーザー テーブルの関連付け ID',
createTime DATETIME NOT NULL COMMENT '作成時間',
テンプレート INT(11) NOT NULL COMMENT 'テンプレート スコア',
templateNote VARCHAR (255) COMMENT 'Template Remarks',
PRIMARY KEY (id),
CONSTRAINT fk_user FOREIGN KEY (userId) REFERENCES user(id)
) COMMENT='volume template table';

以下はオプション テーブルの optionstable です。フィールドは id、test、sort、question、isTrue、isOpen、answer、optionType です。最初の 3 つのデータ型は int (11)、次に 4 つの varchar (255)、最後の int ( 11)。id が必要であり、主キーです。備考は、主キーの自動インクリメント、テスト問題テーブルに関連付けられた ID、並べ替え、問題の語幹、正解かどうか|はい、有効かどうか|はい、参照回答です。 、オプションタイプ。id 外部リンク testpaper テーブル id

CREATE TABLE optionstable (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
test INT(11) NOT NULL COMMENT 'test question table association id',
sort INT(11) NOT NULL COMMENT 'sort',
question VARCHAR(255 ) NOT NULL COMMENT '疑問文',
isTrue VARCHAR(255) NOT NULL COMMENT '正しいかどうか|はい',
isOpen VARCHAR(255) NOT NULL COMMENT '開いているかどうか|はい',
answer VARCHAR(255) NOT NULL COMMENT ' Reference answer',
optionType INT(11) NOT NULL COMMENT 'option type',
PRIMARY KEY (id),
CONSTRAINT fk_testpaper FOREIGN KEY (test) REFERENCES testpaper(id)
) COMMENT='option table ';

以下は質問タイプのテーブル、questiontypetable、フィールド名はid、name、isUseParentTitle、isOpen、topic、データ型はvarchar(255)のみ、他はint(11)、idは主キー、必要とされている。備考は、主キーの自動インクリメント、名前、親質問を使用するかどうかNo|Yes、有効にするかどうかNo|Yes、質問タイプの選択|空欄に記入|記述問題です。

CREATE TABLE questiontypetable (
id int(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
name varchar(255) NOT NULL COMMENT 'name',
isUseParentTitle int(11) NOT NULL COMMENT '親タイトルを使用するかどうか 0|1 ',
isOpen int(11) NOT NULL COMMENT '開くかどうか 0|1',
topic varchar(255) NOT NULL COMMENT '質問タイプの選択|空欄に記入|短い回答',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT= 'タイトルタイプテーブル';

以下は学生の回答テーブルの学生の回答です。フィールド名は、id、exam、testPaperTestQuestion、testPaperOption、student、studentAnswer、answerTime、evaluationTeacherId、evaluationNumber、evaluationTime です。データ型はそれぞれ、最初の 5 つは int (11)、次に varchar (255)、次に datetime、int (11)、int (11)、datetime です。

CREATE TABLE studentanswer (
id int(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
試験 int(11) DEFAULT NULL COMMENT 'exam id',
testPaperTestQuestion int(11) DEFAULT NULL COMMENT 'test paper-question id',
testPaperOption varchar( 255) DEFAULT NULL COMMENT 'test paper option',
student int(11) DEFAULT NULL COMMENT 'student id',
studentAnswer varchar(255) DEFAULT NULL COMMENT 'student answer',
answerTime datetime DEFAULT NULL COMMENT 'answer time',
EvaluationTeacherId int(11 ) DEFAULT NULL COMMENT 'grading teacher id',
EvaluationNumber int(11) DEFAULT NULL COMMENT 'grading score',
EvaluationTime datetime DEFAULT NULL COMMENT 'grading time',
PRIMARY KEY (id)
) COMMENT='student answer table' ;

サブジェクト テーブル subjecttable は次のとおりです。フィールド名は id、subjectName、isOpen、データ型は int(11)、varchar(255)、int(11)、id は主キー、コメントは主キーです。自動インクリメント、名前、開いているかどうか no | yes

CREATE TABLE subjecttable (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT '主キーの自動インクリメント',
subjectName VARCHAR(255) COMMENT '名前',
isOpen INT(11) COMMENT '開くかどうか|はい',
PRIMARY KEY ( id)
) ENGINE =InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='件名の表';

以下はテスト テーブル test です。フィールド名は id、question、subject、questionTypeTable、parent、topic、isShare で、データ型は question のみ varchar (255)、その他はすべて int (11) で、id は主キー。注釈は、主キー自己インクリメント、質問語幹、件名、質問タイプ表、質問タイプ、共有の有無|はい

CREATE TABLE test (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
question VARCHAR(255) NOT NULL COMMENT 'question stem',
subject INT(11) NOT NULL COMMENT 'subject',
questionTypeTable INT(11 ) NOT NULL COMMENT 'トピック タイプ テーブル',
親 INT(11) DEFAULT NULL COMMENT '親トピック',
トピック INT(11) NOT NULL COMMENT 'トピック タイプ',
isShare INT(11) NOT NULL COMMENT '共有するかどうか 0| 1' ,
PRIMARY KEY (id)
) COMMENT '試験問題表';

以下はテスト用紙の表で、フィールド名は id、name、subject、isOpen、creator、createTime、testScore、testExplain で、データ型は int(11)、varchar(255)、varchar(255)、int( 11)、varchar(255)、datetime、int(11)、varchar(255)、id が主キーで、コメントは、主キーの自己インクリメント、名前、件名、開くかどうか、作成者、作成時間、テスト用紙の点数、テスト用紙の説明

CREATE TABLE testpaper (
id int(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
name varchar(255) DEFAULT NULL COMMENT 'name',
subject varchar(255) DEFAULT NULL COMMENT 'subject',
isOpen int(11) DEFAULT NULL COMMENT '0|1 を開くかどうか'、
作成者 varchar(255) DEFAULT NULL COMMENT '作成者、外部キーに関連付けられたユーザー テーブル ID'、
createTime datetime DEFAULT NULL COMMENT '作成時間'、
testScore int(11) DEFAULT NULL COMMENT ' test paper score Value',
testExplain varchar(255) DEFAULT NULL COMMENT 'Explanation of test paper',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='Table of test paper';

以下はテスト用紙オプション テーブル testpaperoption で、フィールド名は id、testQuestionTableId、sort、question、isTrue、isOpen、answer、optionType、データ型は int (11)、int (11)、int (11) です。 、varchar (255)、int(11)、int(11)、varchar(255)、int(11)、主キーとしての id。アノテーションは、主キーの自己インクリメント、テストペーパーのテスト問題テーブル ID、ソート、問題幹、正否|はい、有効かどうか|はい、参考回答、選択肢の種類です。

CREATE TABLE testpaperoption (
id int(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
testQuestionTableId int(11) NOT NULL COMMENT 'test paper question table id',
sort int(11) NOT NULL COMMENT 'sort',
question varchar(255 ) NOT NULL COMMENT 'Question Stem',
isTrue int(11) NOT NULL COMMENT '正しいかどうか|はい',
isOpen int(11) NOT NULL COMMENT '開いているかどうか|はい',
answer varchar(255) DEFAULT NULL COMMENT ' Reference answer',
optionType int(11) NOT NULL COMMENT 'option type',
PRIMARY KEY (id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='試験紙オプション表';

以下はテスト用紙とテストの質問のテーブルです。フィールドは id、testPaper、question、questionParsing、subject、questionType、parent、topic、データ型は int (11)、int (11)、次に 2 つの varchar (255) です。最後に Four int(11)、id が主キーです。備考は、主キー自己インクリメント、テスト用紙、問題幹、問題分析、件名、問題タイプ、親レベル、問題タイプ

CREATE TABLE testquestions(
idint(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
testPaperint(11) NOT NULL COMMENT 'examination paper',
questionvarchar(255) NOT NULL COMMENT 'question stem',
questionParsingvarchar(255) DEFAULT NULL COMMENT 'トピック分析',
subjectint(11) NOT NULL COMMENT 'subject',
questionTypeint(11) NOT NULL COMMENT 'subject type',
parentint(11) DEFAULT NULL COMMENT 'parent',
topicint(11) NOT NULL COMMENT 'question type' ,
PRIMARY KEY ( id)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='審査用紙-審査表';

最後のユーザー テーブル user。フィールドは id、account、password、isOpen、role、registrationTime で、データ型は int (11)、varchar (255)、varchar (255)、int (11)、int (11) です。 、datetime、id を主キー、comments を主キー auto-increment、アカウント番号、パスワード、有効にするかどうか、役割、登録時刻

CREATE TABLE user (
id INT(11) NOT NULL AUTO_INCREMENT COMMENT 'primary key auto-increment',
account VARCHAR(255) NOT NULL COMMENT 'account',
password VARCHAR(255) NOT NULL COMMENT 'password',
isOpen INT(11) NOT NULL COMMENT '0|1',
role INT(11) NOT NULL COMMENT 'role',
registrationTime DATETIME NOT NULL COMMENT 'registration time',
PRIMARY KEY (id)
) COMMENT='user table';

フロントエンドビュー

これは vue scaffolding のフロントエンド コンポーネントで、2 つの div に分割されています. まず、最初の div は上部にあり、画面の高さの 1/20 を占め、幅は自己適応型です. 全体div には顕著な影の効果があり、背景は変更されていません。白 デフォルトでは、左端の部分は「審査銀行管理システム」の目立つ黄色のラベルであり、右端の部分には「候補者」アバター、「候補者」があります。ラベル、および「ログアウト」赤いボタン。次に、2 番目の div が 2 つの div に分割され、最初の div の下に表示されます. div の幅は画面の 80% を占め、中央に配置されます. 最初の div はオプションのナビゲーションであり、高さは同じです最初の div. 、左と右の 2 つのラベル タグ タイプ」、オプション タグ、すべて、試験の準備、試験の完了、まだ試験時間ではない、入力、並べ替えの準備、開始時間、試験時間、 2 番目の div にはいくつかの div-box が含まれ、各行に 4 つ、3 つの行がデザインでいっぱいです。これらの div ボックスは 2 つのレイヤーに分かれています。上部は「*** 中間試験」で、特定の色で塗りつぶされ、下部は開始時間や試験時間情報を含むいくつかの試験情報ラベルです。最後に、各小さな div の右下にボタンがあります。これらのボタンは状況に応じて変更されます。たとえば、デフォルトは「開始」です。試験」ですが、学生がこの問題用紙を完了している場合は、問題用紙の表示が表示されます

3ページ目

もう一度レイアウトを整理するのを手伝ってください. タブが画面の下半分全体を占めるようになりました. 実際には, タブは左側にあり, 画面全体の 60% を占めるはずです. 右側には, 選択式の質問があるはずです,多肢選択問題と判定問題の問題のタブは縦一列に配置され、画面全体の 30% を占めます

選択式問題、選択式問題、判断問題のモードは、縦に並べて区切って配置し、タブ自体ではなく、空白のボックスにする必要があります。

意味がわかったらコードを教えてください

#バックエンド SpringBoot

ユーザーテーブルはユーザーテーブルです

yml ファイルの開発環境とテスト環境を完成させる

vuex グローバル変数

おすすめ

転載: blog.csdn.net/qq_39123467/article/details/129782754