预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共15页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

编号:时间:2021年x月x日书山有路勤为径,学海无涯苦作舟页码:第页共NUMPAGES15页第PAGE\*MERGEFORMAT15页共NUMPAGES\*MERGEFORMAT15页酒店客房餐饮管理系统实现酒店客房餐饮管理系统功能完善,能管理普通酒店的客房住宿和餐饮等服务。本系统采用DELPHI和SQLSERVER工具开发,分为前台和后台管理。前台与后台管理程序相对独立,均共用一个数据库。下面对该系统的部份功能和模块以及代码进行分析。一.前台管理数据模块该模块是整个程序数据的提供者,以及包括大部分的处理函数和实现功能。单元文件名:u_data.pas,数据模块名:DM_main。部分代码分析:返回指表中某字段的最大值,返回值为整型。因此该函数只能应用字段为整型的表。functionTDM_main.GetMaxId(aTable,aField:string):integer;varsSql:string;beginResult:=0;sSql:='selectmax(%s)from%s';withQ_getmaxdobeginSQL.Text:=Format(sSql,[aField,aTable]);Open;ifnotIsEmptythenResult:=Fields[0].AsInteger+1;Close;end;end;接下来这个函数也是返回最大值,但是其为一个订单的最大编号为字符型。functionTDM_main.GetMaxOrderId:string;varid:String;count:Integer;beginwithQ_count_orderdobeginOpen;count:=Fields[0].Value;Close;end;id:='000'+IntToStr(count);id:=Copy(id,length(id)-3,4);id:='F'+FormatDateTime('yymmdd',now)+id;Result:=id;end;系统登陆函数:在进行系统的操作处理时,必须登陆。该函数对用户输入的用户名和密码数据库验证。其密码是进行加密的(加密模块稍后分析)functionTDM_main.Login(user,passwd:String):String;varFlag:Boolean;beginifDatabase.Connected=falsethenDatabase.Connected:=True;passwd:=Copy(passwd+passwd,1,10);//加密处理passwd:=Encrypt(passwd,111);withQ_logindobeginClose;Params.ParamValues['ID']:=user;Params.ParamValues['PASSWD']:=passwd;Open;//在用户请中查询该用户和密码是否存在Flag:=(notIsEmpty);ifFlagthenbeginLogin:=FieldValues['NAME'];IsPass:=Flag;endelsebeginLogin:='';Application.MessageBox('请重新输入!','登录失败',MB_OK);end;Close;end;end;系统登出:procedureTDM_main.Logout;beginDatabase.Connected:=False;//断开数据库的连接end;加密模块:单元文件名:crypt.pas。简单的加密算法。constC1=52845;C2=22719;functionEncrypt(S:String;Key:Word):String;//S:加密的字符串;Key:密钥varI:Integer;j:Integer;beginResult:=S;forI:=1toLength(S)