【delphi开源代码栏目提醒】:网学会员在delphi开源代码频道为大家收集整理了EduAdminClass.pas提供大家参考,希望对大家有所帮助!
unit EduAdminClass;
interface
uses EduAdminDBModuleMain,Variants,SysUtils,Dialogs,Graphics;
Var
UserName :String;
UserPassword :String;
UserRight :integer;
databaseName :string;
TitleFont : TFont;
ContentFont :TFont;
programDir :string;//程序所在目录
type
ClassesInfo = class;
ClassDBM = class;
CourseDBM = class;
CourseInfo = class;
AccountDBM = class;
AccountInfo = class;
CourseSearch = class;
C_SDBM = class;
S_CSearch =Class;
// 用于保存输入信息的数据类
ClassesInfo = class
public
Year : String;
Department : String;
ClassName : String;
ClassLeader : String;
procedure SetClassInfo;
function ValidCheck():boolean;
end;
// 实现数据库操作的控制类
ClassDBM = class
public
procedure AddClasses (Classes : ClassesInfo);
function IsExist(Classes :ClassesInfo) : boolean;
procedure DelAClass;
procedure ModifyClass (Classes : ClassesInfo);
// procedure ReturnAllClasses;
end;
CourseSearch = class
public
KeyWords :String;
CourseCode :String;
CreditOp :String;
Credit :integer;
PeriodOp :String;
Period :integer;
function SetInputCondition() :boolean;
end;
C_SDBM = class
public
function SearchSC(searchCondition :S_CSearch) :String;
end;
CourseDBM = class
public
procedure AddNewCourse (Course : CourseInfo);
procedure DelTheCourse;
procedure ModifyTheCourse (Course : CourseInfo);
function IsExist(Course :CourseInfo) : Boolean;
function SearchTheCourse(SearchCondition :CourseSearch) :String;
end;
CourseInfo = class
public
CourseCode : String;
CourseName : String;
Credit : Integer;
Period : Integer;
Note : String;
teacher : String;
CourseType :String;
Department :String;
public
function SetCourseInfo() :boolean;
function InputValidCheck() : boolean;
end;
AccountInfo = class
public
AccountName : string;
Password : String;
AccountRight : String;
procedure SetAccountInfo();
Procedure ValidCheck();
procedure SetUserRight(Account :AccountInfo);
end;
AccountDBM = class
public
function IsExist(Account :AccountInfo) :boolean;
procedure NewAccount (Account : AccountInfo);
function LocateAccount(Account :AccountInfo) :integer;
procedure DeleteTheAccount;
procedure ModifyAccount (AccountPassword :string);
end;
S_CSearch =class
public
CourseCode :String;
StudentNo :String;
procedure SetConidtionTo ;
end;
implementation
uses EduAdminUnit;
procedure ClassDBM.AddClasses (Classes : ClassesInfo);
begin
EduAdminDBDataModule.ClassTable.Insert;
EduAdminDBDataModule.ClassTable.FieldByName('StudyYear').AsString :=EduAdminMainForm.edYear.Text;
EduAdminDBDataModule.ClassTable.FieldByName('Department').AsString :=EduAdminMainForm.edDepname.Text;
EduAdminDBDataModule.ClassTable.FieldByName('ClassName').AsString :=EduADminMainForm.edClassName.Text;
EduAdminDBDataModule.ClassTable.FieldByName('ClassLeader').AsString :=EduAdminMainForm.edLeader.Text;
EduAdminDBDataModule.ClassTable.Post;
end;
function ClassDBM.IsExist(Classes :ClassesInfo) : boolean;
var
searchResult :Variant ;
begin
searchResult :=EduAdminDBDataModule.ClassTable.Lookup('StudyYear;Department;ClassName',VarArrayOf([Classes.Year,Classes.Department,Classes.ClassName]),'ClassName');
if (VarType(searchResult) in [varNull]) then
IsExist :=false
else
IsExist :=true;
end;
procedure ClassDBM.DelAClass;
begin
EduAdminDBDataModule.ClassTable.Delete;
end;
procedure ClassDBM.ModifyClass (Classes : ClassesInfo);
begin
EduAdminDBDataModule.ClassTable.Edit;
EduAdminDBDataModule.ClassTable.FieldByName('StudyYear').AsString :=Classes.Year;
EduAdminDBDataModule.ClassTable.FieldByName('Department').AsString :=Classes.Department;
EduAdminDBDataModule.ClassTable.FieldByName('ClassName').AsString :=Classes.ClassName;
EduAdminDBDataModule.ClassTable.FieldByName('ClassLeader').AsString :=classes.ClassLeader;
end;
function ClassesInfo.ValidCheck() :boolean;
begin
ValidCheck :=true;
if Year = '' then
begin
showmessage('请正确输入信息');
EduAdminMainForm.edYear.SetFocus;
ValidCheck :=false;
exit;
end;
if Department = '' then
begin
showmessage('请正确输入信息');
EduAdminMainForm.edDepname.SetFocus;
ValidCheck :=false;
exit;
end;
if ClassName = '' then
begin
showmessage('请正确输入信息');
EduAdminMainForm.edClassName.SetFocus;
ValidCheck :=false;
exit;
end;
end;
//procedure ClassDBM.ReturnAllClasses;
//begin
//end;
procedure ClassesInfo.SetClassInfo;
begin
ClassLeader :=EduAdminMainForm.edLeader.Text;
ClassName :=EduAdminMainForm.edClassName.Text;
Department :=EduAdminMainForm.edDepname.Text;
Year :=EduAdminMainForm.edYear.Text;
end;
function C_SDBM.SearchSC(searchCondition :S_CSearch) :string;
var
SqlStr :String;
strLength :integer;
begin
if SearchCondition.CourseCode <> '' then
SqlStr :=SqlStr+'CourseCode ='+quotedStr(SearchCondition.CourseCode)+' And ';
if SearchCondition.StudentNo <> '' then
SqlStr :=SqlStr+'StudentNo =' + QuotedStr(SearchCondition.StudentNo) +' And ';
strLength :=Length(SqlStr);
strLength :=StrLength-5;
SqlStr :=Copy(SqlStr,1,strLength);
SearchSC :=SqlStr;
end;
procedure S_CSearch.SetConidtionTo;
begin
CourseCode :=trim(EDUAdminMainForm.edSCourseCode.Text);
StudentNo :=trim(EduAdminMainForm.edSStudyNo.Text);
end;
procedure CourseDBM.AddNewCourse (Course : CourseInfo);
begin
EduAdminDBDataModule.CourseTable.Insert;
EduAdminDBDataModule.CourseTable.FieldByName('CourseCode').AsString :=Course.CourseCode;
EduAdminDBDataModule.CourseTable.FieldByName('CourseName').AsString :=Course.CourseName;
EduAdminDBDataModule.CourseTable.FieldByName('Credit').AsInteger :=Course.Credit;
EduAdminDBDataModule.CourseTable.FieldByName('Period').AsInteger :=Course.Period;
EduAdminDBDataModule.CourseTable.FieldByName('Note').AsString :=Course.Note;
EduAdminDBDataModule.CourseTable.FieldByName('Teacher').AsString :=Course.teacher;
EduAdminDBDataModule.CourseTable.FieldByName('State').AsString :='未批准';
EduAdminDBDataModule.CourseTable.FieldByName('CourseType').AsString :=Course.CourseType;
EduAdminDBDataModule.CourseTable.FieldByName('Department').AsString :=Course.Department;
EduAdminDBDataModule.CourseTable.Post;
end;
procedure CourseDBM.DelTheCourse;
begin
EduAdminDBDataModule.CourseTable.Delete;
end;
procedure CourseDBM.ModifyTheCourse (Course : CourseInfo);
begin
EduAdminDBDataModule.CourseTable.Edit;
EduAdminDBDataModule.CourseTable.FieldByName('CourseCode').AsString :=Course.CourseCode;
EduAdminDBDataModule.CourseTable.FieldByName('CourseName').AsString :=Course.CourseName;
EduAdminDBDat
上一篇:
EditUserUnit.pas
下一篇:
大学生汉语写作水平与英语水平相关性研究