『壹』 电影院管理系统的系统需求分析
(一)电影院线电子年票管理系统需求说明
1.定义:基于公网及影院局域网络建立的以IC卡为载体,且能够实现准实时数据交互及统计管理的电子年票管理软件。
2.产品描述
(1)系统属性
是一个在Windows98以上的操作系统平台下运行的院线电子年票管理系统,且1.0版本是C/S(客户端/服务器)架构设计,该网络版要求10M以上局域网及宽带广域网络。
(2)开发背景
解决各院线电子年票管理工作,方便各电影院线对电子年票进行快速有效的操作。
(3)拓扑结构
中心服务器——(公网连接准实时)——影院服务器——(局域网连接实时)——售票终端
(4)软件特点
系统操作人员要求具备普通Windows系统操作水平即可。系统维护人员必须具有数据库管理知识。
3.具体用途
1、解决电影院线电子年票管理上的工作。方便电影院线对电子年票进行快速有效的操作。
2、通过插入‘员工卡’或‘管理卡’并输入用户名和相应密码才能进入系统进行管理。根据用户选择售票员名称,时间段信息对相关信息进行统计,生成售票员汇总统计报表 IC卡操作管理可对系统中的卡进行初始话操作。
3、电子年票消费管理客队电子年票消费进行结帐处理,并改变卡内余额及本次消费记录信息,若打印复选框选择则打印小票。在插入卡后显示以前的消费记录,消费确认后则添加本次消费记录。如消费记录满则自动删除最先的一条消费记录,消费记录以时间作为排序条件。
4、影院营业信息管理可对人员信息、商品信息以及系统中应用性信息等进行设置。
『贰』 电影院管理系统的系统特点
1.有效的提高利润手段
用卡管理售票主要作用就是吸引新顾客,留住老顾客。长期有效地聚集大批客户,最大程度上挖掘出潜在的客户资源,使企业的销售额和利润额得以讯速提升,同时通过团票卡的优惠政策,也使消费者得到了的实实在在的回报,成为一种时尚消费。
2.使用方便
针对于连锁经营,顾客只需持有一张用户卡,即可在连锁的任何一家影院消费,极大方便广大电影爱好者,提高企业的知名度。
3.预先储值,方便消费
用户卡功能之一,可作为电子钱包,预先收取顾客的存款,在每次消费时从卡上扣除本次消费金额或次数,无须使用现金支付,免去找零的烦恼;
4.高效管理
数据处理速度快。数据处理后,软件可提供各种报表。通过本系统对顾客刷卡消费进行统一管理、汇总、统计,通过对某一时间段的经营数据进行统计分析,供经营者分析经营状况,以便采取相应的经营、促销策略。
5.客户资源充分利用
通过分析顾客的消费信息,制定出有针对性的促销措施,为顾客提供更为得体的服务。与顾客形成互动,加深印象,促进消费;
6.边际效应
实现顾客服务的全面信息化,有效控制所有顾客资源,通过现有顾客群,影响带动更多的消费群,发挥其边际效应;
7.安全性
软件经过严格加密,硬件读取设备与软件同步加密,卡片与读写设备有安全的通讯模式,所有的智能卡片都经过严格加密和初始化,无法被复制,保证了您在使用中的安全性。
8.扩充性
本系统属于自主研发产品 ,因此可根据客户的需求,单独定制用户所需的特定功能模块,在控制界面上添加用户的各种相关信息,如:企业名称、地址、在用户卡上印刷企业标志或者图案,为影院形象作宣传等。
『叁』 求c语言,电影院售票管理系统的设计与实现的代码
#include<stdio.h>
#include<stdlib.h>
structcell
{
char*name;
inttime;
intseat;
intsaled;
}a,b,c,d;
intsel=0;
voidtitle();
voidsaleproc();
intsaleThread(structcell*ce,intdd);
voidtiupiaoproc();
inttiupiaoThread(structcell*ce);
voidcount();
intinit(structcell*ce,char*name,inttime,intseat)
{
ce->name=name;
ce->time=time;
ce->seat=seat;
ce->saled=0;
return1;
}
intsaleThread(structcell*ce,intdd)
{
if((ce->seat-ce->saled)>=dd)
{
ce->saled+=dd;
printf("售票成功!按ESC键返回主菜单 ");
fflush(stdin);
intcc=_getche();
return1;
}
else
{
printf("售票失败---余票不足!按ESC键返回主菜单 ");
fflush(stdin);
intcc=_getche();
return0;
}
}
voidsaleproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*厅影片时间余票* ");
printf("** ");
printf("*A%s%d:%d%3d* ",a.name,a.time/60,a.time%60,a.seat-a.saled);
printf("** ");
printf("*B%s%d:%d%3d* ",b.name,b.time/60,b.time%60,b.seat-b.saled);
printf("** ");
printf("*C%s%d:%d%3d* ",c.name,c.time/60,c.time%60,c.seat-c.saled);
printf("** ");
printf("*D%s%d:%d%3d* ",d.name,d.time/60,d.time%60,d.seat-d.saled);
printf("** ");
printf("*********************************** ");
printf("请选择放映厅(a,b,c,d)和要购的票数(按ESC键返回主菜单)(格式:a5): ");
fflush(stdin);
charcc;
intdd;
dd=_getche();
if(dd==27)
{
f=0;
break;
}
else
{
cc=(char)dd;
}
scanf("%d",&dd);
switch(cc)
{
case'a':
saleThread(&a,dd);
f=0;
break;
case'b':
saleThread(&b,dd);
f=0;
break;
case'c':
saleThread(&c,dd);
f=0;
break;
case'd':
saleThread(&d,dd);
f=0;
break;
default:
break;
}
}
title();
}
inttiupiaoThread(structcell*ce)
{
if(ce->saled==0)
{
printf("撞尼玛鬼了老子一张票都没卖,哪来的退票??? ");
fflush(stdin);
intcc=_getche();
return0;
}
ce->saled--;
printf("退票成功!按任意键返回主菜单 ");
fflush(stdin);
intcc=_getche();
return1;
}
voidtiupiaoproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*退票* ");
printf("** ");
printf("*A%-20s* ",a.name);
printf("** ");
printf("*B%-20s* ",b.name);
printf("** ");
printf("*C%-20s* ",c.name);
printf("** ");
printf("*D%-20s* ",d.name);
printf("** ");
printf("*********************************** ");
printf("请输入要退的厅(a,b,c,d): ");
charcc;
fflush(stdin);
scanf("%c",&cc);
if(cc=='')
{
f=0;
break;
}
switch(cc)
{
case'a':
tiupiaoThread(&a);
f=0;
break;
case'b':
tiupiaoThread(&b);
f=0;
break;
case'c':
tiupiaoThread(&c);
f=0;
break;
case'd':
tiupiaoThread(&d);
f=0;
break;
default:
break;
}
}
title();
}
voidcountproc()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*统计* ");
printf("** ");
printf("*A厅:余票%3d上座率%5.2f%%* ",a.seat-a.saled,(((float)a.saled/(float)a.seat)*100));
printf("** ");
printf("*B厅:余票%3d上座率%5.2f%%* ",b.seat-b.saled,(((float)b.saled/(float)b.seat)*100));
printf("** ");
printf("*C厅:余票%3d上座率%5.2f%%* ",c.seat-c.saled,(((float)c.saled/(float)c.seat)*100));
printf("** ");
printf("*D厅:余票%3d上座率%5.2f%%* ",d.seat-d.saled,(((float)d.saled/(float)d.seat)*100));
printf("** ");
printf("*********************************** ");
printf("按ESC键返回主菜单! ");
fflush(stdin);
intcc=_getche();
if(cc==27)
{
f=0;
break;
}
}
title();
}
voidtitle()
{
intf=1;
while(f)
{
system("cls");
printf("*********************************** ");
printf("** ");
printf("*欢迎光临牛B电影院* ");
printf("** ");
printf("*1.售票* ");
printf("** ");
printf("*2.退票* ");
printf("** ");
printf("*3.统计* ");
printf("** ");
printf("*4.退出* ");
printf("** ");
printf("*********************************** ");
printf("请选择:(1,2,3,4) ");
fflush(stdin);
scanf("%d",&sel);
getchar();
switch(sel)
{
case1:
saleproc();
f=0;
break;
case2:
tiupiaoproc();
f=0;
break;
case3:
countproc();
f=0;
break;
case4:
system("exit");
f=0;
break;
default:
break;
}
}
}
intmain(intargc,char*argv[])
{
init(&a,"钢铁侠3",18*60+30,150);
init(&b,"致青春",19*60+30,150);
init(&c,"姜戈",20*60+30,150);
init(&d,"生化危机4",20*60+20,100);
title();
return0;
}
『肆』 建一份数据库设计,要求进行数据库的分析与设计,画出系统的E---R图,设计数据库的物
建一份数据库设计,要求进行数据库的分析与设计,画出系统的E---R图,设计数据库的物理模型,并利用SQL-SERVER2000为数据库管理系统进行数据库的建立与实现
『伍』 Power Designer设计影院售票系统
地址: http://web.52im.net/article.php?articleid=6747
Power Designer是Sybase公司的CASE工具集,使用它可以方便地对管理信息系统进行分析设计,它几乎包括了数据库模型设计的全过程。利用Power Designer可以制作数据流程图、概念数据模型、物理数据模型,可以生成多种客户端开发工具的应用程序,还可为数据仓库制作结构模型,也能对团队设计模型进行控制。Power Designer的4种模型:概念数据模型 (CDM)物理数据模型 (PDM) 面向对象模型 (OOM) 业务程序模型 (BPM) 我主要介绍一下PDM:PDM 叙述数据库的物理实现,帮助你考虑真实的物理实现的细节。你能通过修正PDM来适合你的表现或物理约束。主要目的是把CDM中建立的现实世界模型生成特定的DBMS脚本,产生数据库中保存信息的储存结构,保证数据在数据库中的完整性和一致性。PDM是适合于系统设计阶段的工具。简单说:就是PDM可以自动生成诸如'create table'之类的sql脚本.在数据建模过程中,我们建立概念数据模型,通过正向工程生成物理数据模型,生成数据库建库脚本,最后将物理数据模型生成关系数据库。系统数据库设计人员希望能够将数据库设计和关系数据库生成无缝地集成起来,如何保证物理数据模型与其对应数据库之间的双向同步成为数据建模非常关键的一点。Powerdesigner作为强大的Case工具,为我们提供了方便的逆向工程特性。可以将目前所有流行的后端数据库(包括Sybase、DB2、Oracle等)的结构信息通过逆向工程加入到PowerDesigner的物理数据模型和概念数据模型中,包括表、索引、触发器、视图等。下面说一下如何用PowerDesigner进行逆向工程.1.我用的数据库是oracle9i,我为了访问oracle数据库,在我的机器上安装了oracle客户端(提供了oracle客户端的驱动程序,而精简客户端则不可以),配置一个名称为mylcl的服务:MYLCL = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.3.106)(PORT = 1521)) ) (CONNECT_DATA = (SID = pwsc) ) )用户名为:testuser,密码为test. 2.在pd中,新建一个pdm,选择数据库为oracle9i3.选择Database->configure connections,转到system dsn标签,点击"添加",选择驱动程序,由于我的数据库是oracle,所以我选择"oracle in oraclient10g_home1"(安装了oracle客户端才有这个驱动,而精简客户端没有此驱动)4.在data source name 中,可以随便命名一个"ora-test",在tns-server name中选择第一步中的服务名称:mylcl.点击"test connection",输入用户名密码,connection ok!5.点击database->reverse engineer database ,选择odbc datasource:ora-test.然后点击确定哈哈,看见什么了.我就不说了吧pdm的图表如何?其实pd还可以通过sql来进行反向工程,我就不说了特此存档.同时也希望对大家有帮助.
『陆』 电影院管理系统的系统功能概述
根据年票系统和团票系统的共同点,充分考虑成本、开发周期、功能扩展等要求,公司依据客户要求,开发出同时适用于团票、年票的管理系统。系统基于公网搭建的中心数据服务器与各影城销售终端间可实现安全的信息上载与下载,在各终端上可实现对电子团票载体的读写和顾客消费明细查询及兑换明细查询,在中心服务器上可实现总体分类统计查询。各种子功能模块程序应能够在微软公司Windows 98及更高版本操作系统环境下运行。
(一)后台管理:
1. 用户管理:
(1) 服务器端用户权限设置
服务器端设置系统管理员(全局最高权限,可对全局用户权限进行设置及调整)、统计人员(全局统计、查询、生成报表等权限)、操作员权限(对服务器数据进行备份、管理权限、制卡权限)
(2)客户端用户权限设置
客户端设置影院经理(本地最高权限,可对本地用户权限设置及调整、黑名单管理),本地统计(本地兑换统计、生成报表等权限)、顾客查询(插入IC卡后可对该顾客全局兑换明细进行查询)、销售员(本地兑换、续期)
2.卡管理
(1) 发卡(售卡)
a) 新制卡片:内置卡号编码,并以此作为卡片唯一身份识别标识。经影院终端售卡操作激活该卡,并自动将卡片编码信息录入数据库。
b) 旧卡片:旧卡收回后重新发给新客户使用,充值界面中设置此选项,用以标记该卡重新发卡时间,顾客再次查询消费明细时以该次发卡时间为起始时间进行查询。在中心数据服务器上仍保留此卡自第一次发卡后的所有数据记录。此卡自始至终卡号始终不发生改变。卡内最后一次兑换完成后,系统应自动记录其卡号,并标注其已被回收,查询时可以以此查看各家影城当日应回收的卡数量及对应卡号。
(2) 有效期
充值操作界面中设置卡有效期选项,系统自动默认有效期为充值当日起一年有效(可调整)。
(3)续期
卡片有效期到后通过续期界面可以对其有效期限重新进行调整(或在充值界面中进行调整)
(4) 黑名单
根据卡号可将指定卡片列入黑名单中,则该卡再次使用时售票界面将显示该卡已被列入黑名单无法进行消费,直至在黑名单管理中将该卡号去除后方可恢复正常使用。
3.统计查询
(1) 客户端统计查询
a) 顾客消费明细查询
顾客将卡插入读卡器后可以在该选项对其发卡后(使用二次发放的旧卡顾客从第二次发卡后进行统计)的所有消费明细进行列表查询(包括消费时间、消费地点、兑换次数、消费类型(影票、卖品)、所剩余额等项目)。
b) 本地统计查询
影城内具有相应权限的人员可以对本地所有用户的充值及消费明细进行列表查询(查询范围仅限本地消费或充值记录),查询条件可以按时间段、单日、卡号、号段、销售员、消费类型等进行明细列表查询,并自动进行数据统计,各种查询结果均可导出为Excel表格形式文件进行保存。
(2) 服务器端统计查询
服务器端具有相应权限的统计人员可以运行查询功能模块通过局域网对服务器数据进行调用实现统计查询功能,统计查询范围可以针对全局的消费及充值记录,查询条件可以按影城、单日、卡号、号段、销售员、消费类型等进行明细列表查询,并自动进行数据统计,各种查询结果均可导出为Excel表格形式文件进行保存。
4.前台销售管理
(1)登录
销售员开机运行前台客户端模块后,通过用户名、密码认证登录后将其最小化或隐藏,程序继续在后台运行,对相应读卡器端口进行数据监测。
(2) 兑换
兑换操作窗口界面简洁、易切换。顾客将卡片靠近读卡器后,后台程序自动监测到并读取卡内相应信息,同时自动弹出小型操作界面,显示当前卡号、剩余次数并可手工输入扣减次数,点击确认后通过读卡器对卡内数据进行读写,同时界面显示数据相应变化并将操作记录存储到本地数据库中。卡片从读卡器中取出后该兑换操作界面自动关闭或隐藏。
(3) 卡片管理
客户卡片靠近读卡器后弹出兑换界面,单击取消,则兑换界面不再出现;激活后台运行的客户端程序,选择卡管理菜单各选项进行相应操作。(详见1.2各项描述)
(4) 顾客查询
客户卡片靠近读卡器后弹出兑换界面,单击取消,则兑换界面不再出现;激活后台运行的客户端程序,选择统计查询菜单各选项进行相应操作。(详见1.3.1项描述)
5. 卡类型
(1)卡类型设置
服务器端可进行卡类型添加设置,制定单次金额,制卡时需选定卡类型,该卡在影城终端使用时可以识别出不同的卡类型。
(3) 卡类型管理
回收卡可以再次通过制卡更改其卡类型
(二)、数据
1. 数据通讯
(1) 局域网络通讯
中心数据服务器通过局域网与操作机之间通过局域网络进行数据调用及业务操作。
(3) 公共网络通讯
各影城客户终端通过公共互联网络与中心数据服务器实现数据上载与下载。
2. 数据存储
中心数据库将所有影城终端上载的操作记录、管理信息均存储到硬盘保存;各个影城终端设备仅存储本地操作记录、管理信息(以便本地数据查询的快捷),并不断自动从中心数据服务器上下载、更新本地客户信息库,同时不断上载自身新的操作记录、管理信息到中心服务器,实现所有影城终端与中心服务器随时可以同步更新数据。影院终端进行顾客信息查询操作时需要通过互联网对服务器数据进行访问方可实现。
(三)、安全性
1. 数据安全
(1) 中心数据库需具备本地自动备份功能和网络异地备份功能,定时对数据库进行备份,一旦发生服务器崩溃或病毒感染,可以立即通过恢复备份数据方式重新建立数据库。
(2)影城终端数据库如果发生崩溃现象,可以通过互联网从中心数据库下载加以恢复。
(3)如果发生中心数据库与终端数据库同时崩溃现象,可以通过读取卡片内的最后一次消费记录(包括:卡号、剩余次数、最后消费时间、地点)来重建本地数据库,并上载重建中心数据库,可将风险和损失降到最低。
2. 网络安全
(1) 中心数据服务器在保证通讯端口畅通的前提下,须安装防火墙、杀毒软件,避免被病毒感染或恶意攻击。
(2)互联网络传输、通讯数据加密,防止盗取。
(3) 影院终端机安装杀毒软件,防止病毒感染传播。
(四)硬件
1.影院终端
能与影院售票终端共用一台计算机,以减少建设成本同时方便售票人员操作。
2.中心服务器
中心数据服务器需要长期稳定运行,选择稳定服务器品牌及操作系统。
3.卡片、读卡器
卡片作为电子团体票的载体,在整个系统中扮演十分重要的角色,因此必须选择安全性、不易损坏、存储容量大、存储数据稳定、读写稳定的卡片。
4.网络搭建
影院终端尽可能沿用其现有局域网络,不另行增设网络设备。服务器端规划搭建新的局域网络,以保证服务器的安全和操作的方便性。也可以根据实际重新搭建网络。
(五)、电子团体票销售使用流程
1. 销售
电子团体票需以团购形式销售,单张充值次数不低于10次(也可以定义)。由公司与各影院之间约定各种不同卡类型单次结算价,此单价在卡类型设置时写入系统,并在统计报表中作为结算金额的依据。
制卡、充值功能在于公司服务器端,制卡时选择卡类型并写入相应次数,各影城销售人员购买时结算相应款项。待发卡(售卡)环节时卡片方可正式激活。
2. 影票兑换
各影城根据自身经营情况针对不同影片制定不用电子团体票兑换办法,并将办法在影城售票处公示,且通过影城咨询电话可供观众查询,小卖部消费时同样根据不同卡类型单次金额进行消费。
『柒』 一个电影信息管理系统,做数据库可以有哪些表,具体有哪些以及字段
1 、
2、关系模式:
a、 电影表(电影编号、电影名(title)、制片年份(year)、电影长度(length)、影片类型(type)、制片人编号、制片公司编号)
主键:电影编号
外键:制片人编号,制片公司编号
b、制片公司表(Studio)(制片公司编号、制片公司的名称(name)、地址(address))
主键:制片公司编号
c、制片人表(Procer):(制片人编号、制片人姓名(name)、性别(gender)、净资产(net)、电话(phone))
主键:制片人编号
d、影星表(MovieStar):(影星编号、影星的姓名(name)、性别(gender)、出生日期(birthday)、电话号码(phone))
主键:影星编号
e、电影影星表:(电影编号、影星编号)
主键:电影编号,影星编号
外键:电影编号,影星编号
根据数据库系统概论(第四版)制作,以上内容仅供参考。
『捌』 关于电影院售票系统数据库
跟据你这种情况是多个表和字段,有相连关系,说实话一时半会也讲不清.
『玖』 大学C语言(c++)课程设计电影院售票管理系统
#include<iostream>
#include<iomanip>
#defineLEN20
#defineROW20
usingnamespacestd;
voidinitseat(chars[LEN][ROW])
{
inti,j;
for(i=0;i<LEN;i++)
{
for(j=0;j<ROW;j++)
{
s[i][j]='';
}
}
}
voidprintmenu()
{
cout<<" 1.查询座位 "<<"2.预定座位"<<endl;
cout<<" 3.打印电影票 "<<"4.显示所有位置"<<endl;
cout<<" 0.退出"<<endl;
}
voidprintseat(chars[LEN][ROW])
{
inti,j;
cout<<"";
for(i=0;i<ROW;i++)
cout<<setw(3)<<i+1;
cout<<endl;
for(i=0;i<LEN;i++)
{
cout<<setw(3)<<i+1<<".";
for(j=0;j<ROW;j++)
cout<<setw(3)<<s[i][j];
cout<<endl;
}
}
boolsearchfull(chars[LEN][ROW])
{
intl,r;
cout<<"您要查找的行数为:";
cin>>l;
cout<<"您要查找的列数为:";
cin>>r;
if(s[l-1][r-1]!='')
{
cout<<"您查找的座位已有人!!!"<<endl;
returnfalse;
}
else
{
cout<<"您查找的座位没有人!!!"<<endl;
returntrue;
}
}
boolprintticket(chars[LEN][ROW],intl,intr)
{
cout<<"电影名称:"<<"星际穿越"<<endl;
cout<<"座位:"<<l<<"排"<<r<<"列"<<endl;
cout<<"放映时间:"<<"2014年12月20日14:00"<<endl;
returntrue;
}
boolreservation(chars[LEN][ROW])
{
intl,r;
cout<<"您要预定的行数为:";
cin>>l;
cout<<"您要预定的列数为:";
cin>>r;
if(!(l<=LEN&&l>=0&&r<=ROW&&r>=0))
{
cout<<"您的输入不合法!!!"<<endl<<"预定失败!!!"<<endl;
returnfalse;
}
boolflag;
if(s[l-1][r-1]=='#')
flag=false;
else
flag=true;
if(flag==false)
{
cout<<"此座位已有人!!!"<<endl;
returnfalse;
}
s[l-1][r-1]='#';
printticket(s,l,r);
returntrue;
}
intmain()
{
charseat[LEN][ROW];
intflag,l,r;
initseat(seat);
printseat(seat);
printmenu();
while(cin>>flag,flag!=0)
{
switch(flag)
{
case1:searchfull(seat);break;
case2:reservation(seat);break;
case3:cout<<"请输入您要打印的行数:";cin>>l;
cout<<"请输入您要打印的行数:";cin>>r;
if(!(l<=LEN&&l>=0&&r<=ROW&&r>=0))
{
cout<<"您的输入不合法!!!"<<endl<<"预定失败!!!"<<endl;
break;
}
printticket(seat,l,r);
break;
case4:printseat(seat);
default:break;
}
printmenu();
}
return0;
}
『拾』 求数据库设计实例Access做的电影管理系统,要求是原创,急!!!多谢了
Access做的电影管理系统
俺这里有呢。。