电影销售管理系统_第1页
电影销售管理系统_第2页
电影销售管理系统_第3页
电影销售管理系统_第4页
电影销售管理系统_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

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

2、:销售管理;B/S模式;数据库;.NET1.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软件结构:电影售票预定系统的基本E R图订单编号,佥员名卜、/详细订单 用户名/、7管理员价格电影游客性别脱生日期:邮政編回联系电话图片 电影笛、rwi Sf- 会员wA购物车表c购物车编筍订单联系地址F面分别介绍表的结构:1电影表结构编号字段名称结构类型大小说明1电影编号Int主键2电影名char20主键3价格Money不允许为空4时长Char10不允许为空5上映时间Datetime允许为空6电影简介Char200不允许为空7票数Int不允许为空8图片Char60不允许为

7、空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管理员表结构编号字段名称结构类型大小说明1用户名Char20不允许为空2密码Char32不允许为空3权限Int不允许为空5会员表结构编号字段名称结构类型大小说明1会员名Char12不允

8、许为空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个表,两个视图-电諮吕崇t 一i数据库关系圍 冋表+1 一i系统表+二此6电影表+ 口 dbo.订单表+ 此口购物车表 +二此6管理扇表 i H dbm会员表 dbm详細订单表十视團+ _j同义词*|

9、二可编程性+i _j Service Broker+ 一J,存储*安全性创建电影表USE 电影售票GO-_视 U+丄系飯视阴+ 吐6购物车视国十 dbo.i细订单视團电影表脚本日期:12/23/2011 15:57:34/* 对象:Table dbo. */SET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOSET ANSI_PADDING ONGOCREATE TABLE dbo.电影表(电影编号intNOT NULL,电影名char ( 20 ) NULL,价格mo ney NULL, 时长char (10) NULL,上映时间datetimeNULL

10、,电影简介char ( 200 ) NULL,票数intNULL,图片char(60) NULL订单日期datetimeNULL,发货方式char(20)NULL,付款方式char(20)NULL,总金额floatNULL,是否发货bitNULL,备注ntextNULL,CONSTRAINT PK_订单表PRIMARY KEY CLUSTERED)ON PRIMARY创建订单表CREATE TABLE dbo.订单表(订单编号intNOT NULL,会员名char ( 20 ) NULL,(订单编号ASC)WITH ( PAD_INDEX = OFF, STATISTICS_NORECOMPU

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

12、, ALLOW_ROW_LOCKSON, ALLOW_PAGE_LOCKS=OFF, IGNORE_DUP_KEY=ON) ON PRIMARY)ON PRIMARY创建管理员表CREATE TABLE dbo.管理员表(用户名char (20) NOT NULL, 密码char( 32 ) NULL,权限intNULL)ON PRIMARY创建会员表CREATE TABLE dbo.会员表(会员名char ( 12 ) NOT NULL,名字char(20)NULL,密码char( 32 )NULL,性别char(2)NULL,岀生日期datetimeNULL,联系地址nchar(60) N

13、ULL,联系电话char( 13) NULL,邮政编码char( 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会员名char电影编号int数量int)ON PRIMARY创建购物车视图.详细

14、订单表(NULL,(12 ) NULL,NULL,NULLSET ANSI_NULLS ONGOSET QUOTED_IDENTIFIER ONGOALTER VIEW dbo.购物车视图ASSELECT dbo .购物车表.购物车编号,dbo .购物车表.会员名,dbo .购物车表.电影编号, dbo .购物车表.数量,dbo .电影表.电影名,dbo .电影表.价格FROM dbo .购物车表 INNER JOINdbo.电影表ON dbo .购物车表.电影编号=dbo .电影表.电影编号创建详细订单视图ALTER VIEW dbo.详细订单视图ASSELECT dbo .订单表.订单编号

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

16、 ,电影名 char ( 20 ),介格 money ,寸长 char (10),上映时间datetime,电影简介char ( 200 ),票数int ,图片 char (60),返回值 char ( 50 ) outputasbeginif (select COUNT(*) from 电影表 where电影编号=fe影编号) 0set 返回值=库中已有,请先重新信息return- 1endinsertin to电影表values ( 电影编号,电影名,介格,寸长,上映时间,电影简介,薛数,图片); set 返回值=添加成功return 1网页界面匚!解决方案沁弧i (2)xi -1 -.J

17、 D:.Web5itel+ d App_Code +_ App_Data+,_jirrjms+ L.J Scripts田旺9国ffiffi-s-“ _J adhiinjndex.aspx 嘀adminnd曲.砂p; admin Joginaspx admin_order_cleal, as Default-aspx 岂DefaulMspsc 心 Oerajlt2.aspx Error.aspx ordefnaspx regisbar.aspx 也 register.aspx.es+31 shopcar.a5px+二| tickfitdetalis.dpx 弓 web.conFig定义一个DB类

18、using System;using System. Data;using System. Configuration using System. Web;using System. WetSecurity ;using System. Wet) UI;using System. WeltUI. WebControls ;using System. Web UI. WebControls . WebParts;using System. Web UI. HtmIControls ;using System. Data. SqlClient ;/ / DB的摘要说明/ public class

19、DBpublic SqlConnection Con = new SqlConnection ();public SqlCommandCom= new SqlComman();public SqlDataAdapter Da = new SqlDataAdapter ();public DataSet Ds = new DataSet ();public DE()/ TODO:在此处添加构造函数逻辑/定义一个用于返回数据库连接字符串的方法public String GetConnectionString ()String ConStr;ConStr = Data Source=.SQL2005

20、;lnitial Catalog= 电影售票;Persist SecurityInfo=True;User ID=sa;Password=sql2005 ;return ConStr;/定义一个用于返回数据集的公共查询方法public DataSet GetDataTableEySql (String SqlStr )Con. ConnectionString= GetConnectionString ();Com Connection = Con;ComCommandText= SqlStr ;Da SelectCommand = ComtryDs Clear ();Con Open();D

21、a Fill (Ds);Con. Close ();catch ( SqlException )Con. Close ();return Ds;public bool GetBoolBySql (String SqlStr )Con. ConnectionString= GetConnectionString ();Corm Connection = Con;CormCommandText= SqlStr ;Da SelectCommand = ComtryDs Clear ();Con. Open();Da Fill (Ds);Con. Close ();catch ( SqlExcepti

22、on )Con. Close ();if ( Ds Tables 0. Rows Count !=0)return true ;elsereturn false ;/定义一个用于返回执行数据更新操作是否成功标志的方法public Boolean UpdateDataBySql (String SqlStr )Con. ConnectionString= GetConnectionString ();Corm Connection = Con;Com CommandText= SqlStr ;tryCon. Open();Com ExecuteNonQuery ();Con. Close ();

23、return true ;catch ( SqlException )Con. Close (); return false主界面有购物车,订单查询,账号登陆,电影信息显示,管理员登陆 账号登陆落地孤渊网上影院www. guyua口 com至订单查询帐号;Labelprotected void Button1_Click (object sender, EventArgs e)SqlStr = select * from 会员表 where 会员名=+ this .TextBoxI . Text + and 密码= this . TextBox2 . Text + ;Ds = db. GetD

24、ataTableBySql (SqlStr );tryif ( Ds. Tables 0. Rows Count = 0)this . Labell . Text =用户名或密码错误,请重试! ;this .TextBoxI . Focus ();elsethis . Labell . Text =用户+this . TextBoxI . Text + 恭喜您登录成功!;Session UserName = this . TextBoxI . Text;catch ( Exception )this .Labell .Text =没有得到任何数据,请重试!;注册用户用户注册用户名;梵蒂冈*检测

25、用户名密码:确认密码:姓名性别; 岀生日期: 联系地址: 邮政编码| 联系电话画舸带半的为必埴项protected void btn_Register_Click (object sender, EventArgs e)String Md5_User_Pwd=FormsAuthentication . HashPasswordForStoringlnConfigFile (this . txt_User_Pwd . Text, MD5);DB db = new DB);SqlConnection conn = new SqlConnection (Data Source=.SQL2005;ln

26、itial Catalog= 电影售 票;Persist Security Info=True;User ID=sa;Password=sql2005);conn. Open();String SqlStr = insert into 会员表(会员名,密码,名字,性别,出生日期,联系地址,邮政编码, 联系电话)+values( + this . txt_User_Name. Text + ,+ Md5_User_Pwd+ ,+this . txt_Rel_Name . Text + ,+ + this . DDL_SexSelectedltem . Text + ,+ this . DDL_Y

27、ear Selectedltem . Text +-+ this . DDl_Month. SelectedItem . Text + - + this . DDL_DaySelectedItem . Text + ,+ + this . txt_Address . Text + ,+ this . txt_Postalcode . Text + ,+this . txt_Tel . Text + );Boolean InsertResult ;SqlCommandcmd= new SqlCommanQSqlStr , conn);int i = Convert . ToInt32 (cmd

28、ExecuteNonQuery();if ( i =1)this .Labinfo .Text =恭喜您注册成功!elsethis . Labinfo . Text =对不起,注册失败,请重试! this . txt_User_Name . Focus ();显示电影register.aspx ; vltemTemplate DataBinder.Eval(Container.Dataltem,DataBinder.Eval(Container.Dataltem,a href =ticketdetails.aspx?ticketid=img width =80 height =110 src

29、= DataBinder.Eval(Container.DataItem,a href =ticketdetalis.aspx?ticketid= v/table v/ ItemTemplate v/asp: DataList 数据库调用cs代码SqlStr = select * from 电影表”;Ds = db. GetDataTableBySql (SqlStr );tryif ( Ds Tables 0. Rows Count != 0)this . DataList1 . DataSource = Ds Tables 0. DefaultView this . DataList1 .

30、 DataBind ();catch ( Exception )Response. Write (alert(没有获得任何数据,请检查!) );电影详细介绍电影详细信息后退功夫能猫价格;31.0000时间;2009-1-1 0:00:00电影简介;饿ticketdetalis.aspxif ( Page. IsPostBack = false )Ticket_ID = Request. QueryString . Get(0). ToString (). Trim ();SqlStr = select * from 电影表 where 电影编号=+ Ticket_IDDs = db. GetD

31、ataTableBySql (SqlStr );tryif ( Ds Tables 0. Rows Count != 0)this . Repeated . DataSource = Ds Tables 0. DefaultViewthis . Repeated . DataBind ();Session ticket_id = Ticket_ID ;catch ( Exception )Response. Write (alert(没有获得任何数据,请检查!) );购物车调用。Net的数据库控件总金额:31继续购物清空贬物车结算中心电影编号电影名称价格数量修改数量剧除131功夫熊猫3LOOO

32、O1|修改数量 vHeaderTemplate 电影编号电影名称价格 数量 修改数量删除 vltemTemplate asp: TextBox ID=count runat=serverText = Width =30使用.NET数据库控件if ( Page. IsPostBack =false )Ticket_ID = Request. QueryString . Get(O). ToString (). Trim ();SqlStr = select * from 电影表 where 电影编号=+ Ticket_ID ;Ds = db. GetDataTableBySql (SqlStr

33、);tryif ( Ds Tables 0. Rows Count != 0)this . Repeaterl . DataSource = Ds Tables 0. Defaultview ;this . Repeaterl . DataBind ();Session ticket_id = Ticket_ID ;catch ( Exception )Response. Write (alert(没有获得任何数据,请检查!) );价格结算客户您好,您本次勉物清单如下电影编号电影名称价格数量131 功夫熊猫31.0000 1金额总计:色元平邮V请选择发贷方式; 请选择付款方式其他要求:生成订单

34、public partial class order : System. WebUl. Page String SqlStr ;DB db = new DE();DataSet Ds = new DataSet ();/绑定数据方法public void DataGridViewBind ()SqlStr = select * from购物车视图 where 会员名=+ Session Username +Ds = db. GetDataTableBySql (SqlStr );trythis . GridViewl . DataSource = Ds. Tables 0. Defaultvi

35、ew ;this . GridViewl . DataBind ();catch ( Exception )Response. Write (alert(没有得到数据,请重试! ) );/计算总金额public void total_money ()SqlStr = select * from购物车视图 where 会员名=+ Session Username + Ds = db. GetDataTableBySql (SqlStr );tryif ( Ds. Tables 0. Rows Count != 0)Double price , sum = 0;int count;for ( in

36、t i = 0; i Ds Tables 0. Rows Count; i+) 通过循环得到总金额price = Double. Parse(Ds Tables 0. Row$ i 价格.ToString ();count = int . Parse (Ds. Tables 0. Row$ i 数量.ToString ();sum += price * count;this . total_money_txt . Text = sum ToString ();catch ( Exception )Response. Write (alert(没有得到数据,请重试! ) );protected

37、void Page_Load( object sender, EventArgs e)if ( Page. IsPostBack = false )/SessionUsername = ning;if ( Session Username != null )DataGridViewBind ();total_money ();elseResponse. Redirect (Error.aspx );protected void orderbtn_Click (object sender, EventArgs e)int max_order;SqlStr = select max( 订单编号)f

38、rom 订单表;Ds = db. GetDataTableBySql (SqIStr );/判断订单表中是否已有记录,如果有,则直接获取胜订单编号;否则,将最大订单编号设为1if ( Ds Tables 0. Rows(00. ToString () !=)max_order = int . Parse (Ds. Tables 0. Row$00. ToString () + 1;elsemax_order = 1;/生成订单SqlStr = insert into 订单表(订单编号,会员名,发货方式,付款方式,总金额,是否发货,备注)+ values(+ max_order. ToStrin

39、g () +,+ Session Username + ,+this . ddlconsignment . SelectedItem . Text + ,+ + this . ddlpayment . SelectedItem . Text + ,+this . total_money_txt . Text. ToString (). Trim() +,0,+ this . remarktxtbox . Text + );if ( db. UpdateDataBySql (SqlStr )Boolean UpdateResult ;/生成详细订单SqlStr = insert into 详细订

40、单表(会员名,电影编号,数量)select 会员名,电影编号,数 量from 购物车表 where +会员名=+ Session Username + ”;UpdateResult = db. UpdateDataBySql (SqlStr );SqlStr = update 详细订单表 set 订单编号=+ max_order. ToString () + where 订单编号is null ;UpdateResult = db. UpdateDataBySql (SqlStr );/删除购物车中的数据SqlStr = delete from 购物车表 where 会员名=+ Session

41、 Username + ; UpdateResult = db. UpdateDataBySql (SqlStr );this . ordernolab . Visible = true ;this . ordernolab . Text += max_order. ToString ();管理员登陆落地孤渊网上影院后台入口落地孤渊工作室protected void btnLogin_Click (object sender, EventArgs e)String Md5_User_Pwd=FormsAuthentication . HashPasswordForStoringlnConfig

42、File (this . txt_User_Pwd . Text. ToString (), MD5); /作为密码方式加密SqlStr = select * from管理员表 where 用户名=+ this . txt_User_Name . Text + and码=+ this . txt_User_Pwd . Text + ;Ds = db. GetDataTableBySql (SqlStr );tryif ( Ds. Tables 0. Rows Count = 0)Response. Write (alert(用户名或密码错误,请重试!) );this . txt_User_Na

43、me . Focus();elseSession Admin_UserName = this . txt_User_Name . Text;);Response. Write (window.location.href=adminndex.aspx;v/scriptcatch ( Exception )Response. Write (alert(没有得到任何数据,请重试!) );添加电影(灰色为存储过程的调用)添加电裁查;石订单名称:狮干王价格,50图片=F:WebSite1imagejll子壬f.浏基二二增加电聂protected void Button1_Click (object se

44、nder, EventArgs e)if ( Session Admin_UserName != null )trystringpath_file= FileUpload_lmage . PostedFile . FileName. ToString ();stringfile_type= path_file . Substring (path_file . LastIndexOf (.);string file_name = DateTime. Now Year. ToString () + DateTime. Now Month. ToString ()+ DateTime. Now Day. ToString () + DateTime. Now Hour. ToString () + DateTime. Now Minute . ToString ()

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论