收藏 分销(赏)

电影销售管理系统.doc

上传人:丰**** 文档编号:3558704 上传时间:2024-07-09 格式:DOC 页数:23 大小:505.50KB
下载 相关 举报
电影销售管理系统.doc_第1页
第1页 / 共23页
电影销售管理系统.doc_第2页
第2页 / 共23页
电影销售管理系统.doc_第3页
第3页 / 共23页
电影销售管理系统.doc_第4页
第4页 / 共23页
电影销售管理系统.doc_第5页
第5页 / 共23页
点击查看更多>>
资源描述

1、电影售票预定系统档案一摘要 随着人们生活水平的不断提高,人们生活的消费和需求也越来越旺盛。电影院售票系统可以实现影片的登记和电影票的购买, 可以方便 的进行电影以及实时影票信息的查询等,从而做到方便的售票操作, 方便了工作人员的同时也让顾客能够轻轻松松地买票, 我们的宗旨是 一个字:快! ;两个字:便捷。因此,该系统主要根据实际需求,划分了电影信息管理,每场电影的坐位信息管理,每个电影的预定情况,并选用VisualStudio.NET2008开发工具和SQLServer2005数据库,采用B/S模式实现了从客户来访、报价、订购等多个环节数据的跟踪管理服务,基本上满足了电影销售管理流程。 关键词

2、:销售管理;B/S模式;数据库;.NET 1.2 定义: 查询:对数据库的操作的一种,用于搜索数据信息。 插入:对数据库的操作的一种,用于将数据存入数据库中。 更新:对数据库的操作的一种,用于更改数据库中的数据信息。 软件结构图:反映软件系统的功能模块之间的关系的数据图。二电影售票预定系统的需求分析2.1系统需求 本电影售票预定系统是一个协助影院进行全面管理的一个信息管理系统。本管理系统在实现上应满足以下需求: 1.能达到网站和影院间的无缝链接和数据的共享。 2.为系统提供数据支持。 3.不同级别的用户拥有相应的权限使用该系统,从而大大提高了系统的安全性和管理效率。首先将电影信息入库,然后影院

3、通过与客户的交易活动,将相关信息存入库,然后影院通过销售信息的查询获得电影票销售的情况,通过库存查询获得影院目前的剩票情况。由此可分析系统需要达到以下目标:1. 能很好地完成电影票售前管理。售前管理包括影院信息,电影场次,电影片名信息的入库作业。2. 能详细地记录影院和客户的交易过程,即订票或退票的情况。3. 能详细地记录电影场次跟票数量的关系,即某场的电影和剩余票的关系。4. 能及时准确地获得影院和市场的需求。即通过对电影场次,片名及票务销售的情况信息查询获得相应的结果,以备公司作为参考,从而安排更好的电影场次。5. 能够对各场电影票销售的情况进行相应的记录。包括对订票,退票,修改等。6.

4、能够对不同权限的用户进行合理的管理。包括添加用户,删除用户,用户账号和密码管理等。2.2数据字典描述数据字典是各累数据描述的集合。对数据库设计来讲,数据字典是进行详细的数据收集和数据分析所获得的主要结果。数据字典通常包括数据项、数据结构、数据流、数据存储和处理过程5个部分。其中数据项是最小的组成单位,若干个数据项可以组成一个数据结构,数据字典对数据项和数据结构的定义来描述数据流、数据存储的逻辑内容。数据字典是关于数据库中数据的描述,即元数据,而不是数据本身。数据本身将存在物理数据库中,由数据库系统管理。数据字典有助于这些数据的进一步管理和控制,为设计人员和数据库管理员在数据库设计、实现和运行阶

5、段控制有关数据提供依据。2.3 程序描述 各功能详细描述:本系统主要用于电影票预订,所以提供了以下几个子功能:用户注册,用户登陆,电影详细内容,生成订单,退订订单,付款,以及后台方面的电影的添加,以及电影的查询等后台功能。1、用户注册:新用户可以通过注册会员来登陆。2、用户登陆:登陆后的会员才能进行购票,查询订单。3、电影详细内容:点击进入后可以查看电影的详细信息。包括:时长,价格,上映的时间等。4、生成订单:该项功能提供用户选择购买电影票的数量,及取消订单等操作。5、退订功能:会员可以选择是否取消已经生成的电影订单。6、付款:此页面用户可以选择付款方式,并最终确定订单的生成。7、后台电影的添

6、加:该功能只有机场管理员有权力操作,管理员可以通过影院电影场次的安排来增加电影的内容,信息等操作。三概念结构设计3.1软件结构:电影售票预定系统数据输入数据输出数据输入页面信息录入用户登陆登陆信息 数据录入 数据信息 数据信息 数据信息 数据处理、查询数据判断数据信息 准备SQL判断查询数据库操作数据信息 判断信息 判断结果 数据信息 返回订单等确定错误原因返回影片信息生产订单显示错误原因确定订单数据信息 3.2 E-R图向关系模型转换:电影售票预定系统的基本ER图下面分别介绍表的结构:1 电影表结构编号字段名称结构类型大小说明1电影编号Int主键2电影名char20主键3价格Money不允许

7、为空4时长Char10不允许为空5上映时间Datetime允许为空6电影简介Char200不允许为空7票数Int不允许为空8图片Char60不允许为空2 订单表结构编号字段名称结构类型大小说明1订单编号Int主键2会员名char20不允许为空3订单日期Datetime20不允许为空4发货方式Char20不允许为空5付款方式Char20不允许为空6总金额Float不允许为空7是否发货Bit不允许为空8备注Next允许为空3 购物车表结构编号字段名称结构类型大小说明1购物车编号Int不允许为空2会员名Char12外键3电影编号Int不允许为空4数量Int不允许为空4 管理员表结构编号字段名称结构类

8、型大小说明1用户名Char20不允许为空2密码Char32不允许为空3权限Int不允许为空5 会员表结构编号字段名称结构类型大小说明1会员名Char12不允许为空2名字Char20不允许为空3密码Char32不允许为空4性别Char2允许为空5出生日期Datetime 允许为空6联系地址nchar60不允许为空7联系电话Char13不允许为空8邮政编码Char6不允许为空6 详细订单表结构编号字段名称结构类型大小说明1订单编号Int外键2会员名Char12不允许为空3电影编号Int不允许为空4数量Int不允许为空3.3 源程序代码创建数据库 电影售票创建6个表,两个视图创建电影表USE 电影售

9、票GO/* 对象: Table dbo.电影表 脚本日期: 12/23/2011 15:57:34 */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE dbo.电影表(电影编号 int NOT NULL,电影名 char(20) NULL,价格 money NULL,时长 char(10) NULL,上映时间 datetime NULL,电影简介 char(200) NULL,票数 int NULL,图片 char(60) NULL) ON PRIMARY创建订单表CREATE TAB

10、LE dbo.订单表(订单编号 int NOT NULL,会员名 char(20) NULL,订单日期 datetime NULL,发货方式 char(20) NULL,付款方式 char(20) NULL,总金额 float NULL,是否发货 bit NULL,备注 ntext NULL, CONSTRAINT PK_订单表 PRIMARY KEY CLUSTERED (订单编号 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW

11、_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY TEXTIMAGE_ON PRIMARY创建购物车表CREATE TABLE dbo.购物车表(购物车编号 int NOT NULL,会员名 char(12) NULL,电影编号 int NULL,数量 int NULL, CONSTRAINT PK_购物车表 PRIMARY KEY CLUSTERED (购物车编号 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON

12、, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY创建管理员表CREATE TABLE dbo.管理员表(用户名 char(20) NOT NULL,密码 char(32) NULL,权限 int NULL) ON PRIMARY创建会员表CREATE TABLE dbo.会员表(会员名 char(12) NOT NULL,名字 char(20) NULL,密码 char(32) NULL,性别 char(2) NULL,出生日期 datetime NULL,联系地址 nchar(60) NULL,联系电话 char(13) NULL,邮政编码 ch

13、ar(6) NULL, CONSTRAINT PK_会员表 PRIMARY KEY CLUSTERED (会员名 ASC)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON PRIMARY) ON PRIMARY创建详细订单表CREATE TABLE dbo.详细订单表(订单编号 int NULL,会员名 char(12) NULL,电影编号 int NULL,数量 int NULL) ON PRIMA

14、RY创建购物车视图SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER VIEW dbo.购物车视图ASSELECT dbo.购物车表.购物车编号, dbo.购物车表.会员名, dbo.购物车表.电影编号, dbo.购物车表.数量, dbo.电影表.电影名, dbo.电影表.价格FROM dbo.购物车表INNER JOIN dbo.电影表ON dbo.购物车表.电影编号= dbo.电影表.电影编号创建详细订单视图ALTER VIEW dbo.详细订单视图ASSELECT dbo.订单表.订单编号, dbo.订单表.会员名, dbo.订单表.发货

15、方式, dbo.订单表.订单日期, dbo.订单表.付款方式, dbo.订单表.是否发货, dbo.订单表.备注, dbo.详细订单表.数量, dbo.详细订单表.电影编号, dbo.电影表.电影名, dbo.电影表.价格, dbo.订单表.总金额FROM dbo.订单表INNER JOIN dbo.详细订单表ON dbo.订单表.订单编号= dbo.详细订单表.订单编号INNER JOIN dbo.电影表ON dbo.详细订单表.电影编号= dbo.电影表.电影编号存储过程ALTER procedure dbo.添加电影计划电影编号int,电影名char(20),价格money,时长char

16、(10),上映时间datetime,电影简介char(200),票数int,图片char(60),返回值char(50)outputas beginif (select COUNT(*) from 电影表where 电影编号=电影编号)0set 返回值=库中已有,请先重新信息return -1endinsert into 电影表values(电影编号,电影名,价格,时长,上映时间,电影简介,票数,图片);set 返回值=添加成功return 1网页界面定义一个DB类using System;using System.Data;using System.Configuration;using S

17、ystem.Web;using System.Web.Security;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.WebControls.WebParts;using System.Web.UI.HtmlControls;using System.Data.SqlClient;/ / DB 的摘要说明/ public class DB public SqlConnection Con = new SqlConnection(); public SqlCommand Com = new SqlC

18、ommand(); public SqlDataAdapter Da = new SqlDataAdapter(); public DataSet Ds = new DataSet();public DB()/ TODO: 在此处添加构造函数逻辑/ /定义一个用于返回数据库连接字符串的方法 public String GetConnectionString() String ConStr; ConStr = Data Source=.SQL2005;Initial Catalog=电影售票;Persist Security Info=True;User ID=sa;Password=sql20

19、05; return ConStr; /定义一个用于返回数据集的公共查询方法 public DataSet GetDataTableBySql(String SqlStr) Con.ConnectionString = GetConnectionString(); Com.Connection = Con; Com.CommandText = SqlStr; Da.SelectCommand = Com; try Ds.Clear(); Con.Open(); Da.Fill(Ds); Con.Close(); catch (SqlException) Con.Close(); return

20、Ds; public bool GetBoolBySql(String SqlStr) Con.ConnectionString = GetConnectionString(); Com.Connection = Con; Com.CommandText = SqlStr; Da.SelectCommand = Com; try Ds.Clear(); Con.Open(); Da.Fill(Ds); Con.Close(); catch (SqlException) Con.Close(); if (Ds.Tables 0.Rows.Count !=0) return true ; else

21、 return false ; /定义一个用于返回执行数据更新操作是否成功标志的方法 public Boolean UpdateDataBySql(String SqlStr) Con.ConnectionString = GetConnectionString(); Com.Connection = Con; Com.CommandText =SqlStr; try Con.Open(); Com.ExecuteNonQuery(); Con.Close(); return true; catch (SqlException) Con.Close(); return false; 主界面有购

22、物车,订单查询,账号登陆,电影信息显示,管理员登陆账号登陆protected void Button1_Click(object sender, EventArgs e) SqlStr = select * from 会员表 where 会员名= + this.TextBox1.Text + and 密码= + this.TextBox2.Text + ; Ds = db.GetDataTableBySql(SqlStr); try if (Ds.Tables0.Rows.Count = 0) this.Label1.Text = 用户名或密码错误,请重试!; this.TextBox1.Fo

23、cus(); else this.Label1.Text =用户 +this.TextBox1.Text + 恭喜您登录成功!; SessionUserName = this.TextBox1.Text; catch (Exception) this.Label1.Text = 没有得到任何数据,请重试!; 注册用户protected void btn_Register_Click(object sender, EventArgs e) String Md5_User_Pwd = FormsAuthentication.HashPasswordForStoringInConfigFile(th

24、is.txt_User_Pwd.Text, MD5); DB db = new DB(); SqlConnection conn = new SqlConnection(Data Source=.SQL2005;Initial Catalog=电影售票;Persist Security Info=True;User ID=sa;Password=sql2005); conn.Open(); String SqlStr = insert into 会员表(会员名,密码,名字,性别,出生日期,联系地址,邮政编码,联系电话) + values( + this.txt_User_Name.Text +

25、 , + Md5_User_Pwd + , + this.txt_Rel_Name.Text + , + + this.DDL_Sex.SelectedItem.Text + , + this.DDL_Year.SelectedItem.Text + - + this.DDl_Month.SelectedItem.Text + - + this.DDL_Day.SelectedItem.Text + , + + this.txt_Address.Text + , + this.txt_Postalcode.Text + , + this.txt_Tel.Text + ); Boolean In

26、sertResult; SqlCommand cmd = new SqlCommand(SqlStr, conn); int i = Convert.ToInt32(cmd.ExecuteNonQuery(); if (i=1) this.Labinfo.Text = 恭喜您注册成功!; else this.Labinfo.Text = 对不起,注册失败,请重试!; this.txt_User_Name.Focus (); 显示电影register.aspx; a href =ticketdetails.aspx?ticketid=img width =80 height =110 src =

27、a href =ticketdetalis.aspx?ticketid= 数据库调用cs代码SqlStr = select * from 电影表; Ds = db.GetDataTableBySql(SqlStr); try if (Ds.Tables0.Rows.Count != 0) this.DataList1.DataSource = Ds.Tables0.DefaultView; this.DataList1.DataBind(); catch (Exception) Response.Write(alert(没有获得任何数据,请检查!); 电影详细介绍ticketdetalis.a

28、spxif (Page.IsPostBack = false) Ticket_ID = Request.QueryString.Get(0).ToString().Trim(); SqlStr = select * from 电影表 where 电影编号= + Ticket_ID; Ds = db.GetDataTableBySql(SqlStr); try if (Ds.Tables0.Rows.Count != 0) this.Repeater1.DataSource = Ds.Tables0.DefaultView; this.Repeater1.DataBind(); Sessiont

29、icket_id = Ticket_ID; catch (Exception) Response.Write(alert(没有获得任何数据,请检查!); 购物车调用。Net的数据库控件 电影编号 电影名称 价格 数量 修改数量 删除 asp:TextBox ID=count runat=server Text = Width=30 使用.NET数据库控件if (Page.IsPostBack = false) Ticket_ID = Request.QueryString.Get(0).ToString().Trim(); SqlStr = select * from 电影表 where 电影

30、编号= + Ticket_ID; Ds = db.GetDataTableBySql(SqlStr); try if (Ds.Tables0.Rows.Count != 0) this.Repeater1.DataSource = Ds.Tables0.DefaultView; this.Repeater1.DataBind(); Sessionticket_id = Ticket_ID; catch (Exception) Response.Write(alert(没有获得任何数据,请检查!); 价格结算public partial class order : System.Web.UI.Page String SqlStr; DB db = new DB();

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服