1、 1. 旅游管理系统E-R图图1 系统E-R图2、旅游管理系统数据库关系图图2 数据库关系图3、旅游管理系统数据字典序号数据表名称说明备注1area地域2line旅游线路3line_spot旅游线路与景点关联4member会员5operator员工6spot旅游景点7travelplan旅游计划8travelplanorder旅游计划预订表1 数字字典数据类型长度是否允许为空字段说明idsint否主键,自增列areaidnvarchar50地域编码name 名称表2 area表编号name200路线名称pricedecimal(18,2)路线价格daysisrecommended是否推荐spo
2、tnum景点数量updatetimedatatime最近修改时间isdeleted是否删除1:已删除,0:未删除表3 line表lineids路线编号参照line(ids)spotids景点编号参照spot(ids)表4 line_spot表memberid会员账号membername 会员名称passwords 密码realname真实sex性别男,2:女idnum号email9telephone 手机表5 member表userid管理员账号username管理员名称passwordsisadmin是否具有管理员权限表6 operator表景点名称价格所属地域参照area(ids)imgi
3、mage是景点图片desvarchar2000景点描述是否已删除表7 spot表planid计划编号旅游线路idsexpect_people_num 预订人数actual_people_num 实际预订人数expect_starttime datetime计划开始时间actual_starttime 实际开始时间最近修该时间planstatus计划状态发布,2:进行,3:结束10表8 traveplan表planids旅游计划ids参照traveplan(ids)memberids预订用户ids参照member(ids)ordertime预订时间ispay是否支付支付,2:未支付before_
4、discount_moneydecimal 折扣前金额charge_money(18,3)实收金额paytime支付时间表9 traveplanorder表(二)旅游管理系统视图 1、用户查看账户预订情况CREATE VIEW memberorderASSELECT member.membername AS 用户, member.sex AS 性别, line.name AS 路线, travelplanorder.ordertime AS 预订时间, travelplanorder.ispay AS 是否支付, travelplanorder.before_discount_money AS
5、 折扣前金额, member.telephone AS , member.email AS FROM line INNER JOIN member ON line.ids = member.ids INNER JOINtravelplanorder ON member.ids = travelplanorder.memberids2、管理员查看旅游计划的预订情况CREATE VIEW operatorCheckorderSELECT line.name AS 线路, member.membername AS 用户, travelplanorder.ordertime AS 预定时间, trav
6、elplanorder.ispay AS 是否支付, travelplanorder.paytime AS 支付时间, travelplanorder.before_discount_money AS 折扣前金额, travelplanorder.charge_money AS 实际支付金额FROM line INNER JOIN member ON line.ids = member.ids INNER JOIN travelplan ON line.ids = travelplan.lineids INNER JOINtravelplanorder ON member.ids = trav
7、elplanorder.memberids AND travelplan.ids = travelplanorder.planids3、查看旅游线路所包含的景点信息CREATE VIEW line_spot_viewSELECT line.name AS 线路名, spot.name AS 景点名, line.days AS 旅游时间, spot.area AS 所在地, spot.img, spot.des AS 景点介绍FROM line INNER JOIN line_spot ON line.ids = line_spot.lineids INNER JOIN spot ON line
8、_spot.spotids = spot.ids4、查看景点所在地区CREATE VIEW dbo.spot_areaSELECT dbo.spot.ids AS 编号, dbo.spot.name AS 景点名, dbo.spot.price AS 价格, dbo.area.name AS 地区, dbo.spot.des AS 介绍, dbo.spot.isdeletedFROM dbo.area INNER JOIN dbo.spot ON dbo.area.ids = dbo.spot.area(三)设计编程对象 1.触发器1)删除会员的同时,删除会员的旅游线路订单create tri
9、gger member_deleteon memberfor updateasDELETE FROM travelplanorderWHERE (travelplanorder. memberids= (select ids from deleted)2)删除旅游计划的同时,删除该旅游计划的订单create trigger traveplan_deleteon travelplanDELETE FROM travelplanorder WHERE (travelplanorder.planids = (select ids from deleted)3)删除旅游路线的同时,删除与该旅游路线相关
10、的旅游景点关联和旅游计划create trigger line_deleteon lineDELETE FROM travelplanWHERE (travelplan.lineids = (select ids from deleted)DELETE FROM line_spotWHERE (line_spot.lineids = (select ids from deleted)4)删除旅游景点的同时,删除该旅游景点与旅游线路的关联create trigger spot_deleteon spotWHERE (line_spot.spotids = (select ids from del
11、eted) 2.存储过程1)向member表中插入数据create proc memberinsertids int,membername nvarchar(50),passwords nvarchar(50),realname nvarchar(50),sex int,idnum nvarchar(50),email nvarchar(50),telephone nvarchar(50)as insert into member(ids,membername,passwords,realname,sex,idnum,email,telephone) values(ids,membername
12、,passwords,realname,sex,idnum,email,telephone)2)查询景点所属地区create proc areaSelectSELECT ids, areaid, nameFROM area3)查询路线信息create proc lineselectSELECT ids AS 编号, name AS 路线名, price AS 价格, days AS 旅游时间, isrecommended AS 是否推荐, spotnum AS 景点数, updatetime AS 更新时间, isdeleted AS 是否删除FROM line4)插入管理员信息create
13、proc operatorinsertuserid nvarchar(50),username nvarchar(50),passwords nvarchar(50),idnum nvarchar(50),isadmin intINSERT INTO operator (userid, username, passwords, idnum, isadmin)VALUES (userid,username,passwords,idnum,isadmin)5)查询用户信息create proc selecttextselect * from member6)查询景点信息create proc sp
14、otinsertSELECT name, price, area, des, isdeletedFROM spot 3.函数1)查询数据库中是否有此人create function membersex(name nvarchar(50)returns nvarchar(50)begin declare a nvarchar(50) if not exists(select sex from member where membername=name) set a=不存在此人 else存在此人 return aend四、系统设置(一)系统用例图1)管理员用例图2)用户用例图(二)系统运行结果1)登
15、陆:系统用户可选择用户类型(管理员、普通用户)登陆到不同页面2)注册:在登陆页面可选择进入用户注册、管理员注册页面,注册信息3)用户主页:用户登陆系统后,可查看旅游线路信息、预定旅游线路生成订单、查看订单状态和完成订单支付功能4)查看旅游线路:用户查看旅游信息,并可预定旅游线路5)订单管理:用户完成订单支付和取消该订单6)管理员主页:管理员登陆系统后,可在景点管理添加、修改和删除景点信息,在线路管理可添加、修改、删除旅游线路和生成旅游计划,在旅游计划管理可删除、查看旅游计划7)景点管理:在本模块,用户可添加和删除旅游景点8)线路管理:在本模块,用户可查看各条线路的详细情况,修改线路信息,删除旅游线路和发布旅游计划9)旅游计划管理:管理员在本模块下查看旅游线路预定情况
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1