Пример #1
0
void Sale_UI_ReturnTicket(int ticket_id)
{
	ticket_t buf,data;
	if(Ticket_Srv_FetchByID(ticket_id,&buf))
	{
			if(buf.status==1)
			{
				printf("此票未售出!回车继续");
				getchar();
			}
			else
			{
				data.id=buf.id;
				data.schedule_id=buf.schedule_id;
				data.seat_id=buf.seat_id;
				data.price=buf.price;
				data.status=1;
				if(Ticket_Srv_Modify(&data))
				{
					printf("退订成功!回车继续");
					getchar();
				}
				else
				{
					printf("退订失败!回车继续");
					getchar();
				}
			}
	}
	else
	{
		printf("找不到此票!回车继续");
		getchar();
	}
}
Пример #2
0
void Ticket_UI_Print(int ID){

	ticket_t buf;
	seat_t     sed;
	schedule_t scd;
	studio_t   std;
	play_t     pld;
	
   	Ticket_Srv_FetchByID(ID,&buf);
   	Seat_Srv_FetchByID(buf.seat_id, &sed);
   	
   	Schedule_Srv_FetchByID(buf.schedule_id, &scd);
   	
   	Studio_Srv_FetchByID(scd.studio_id, &std);
   	Play_Srv_FetchByID( scd.play_id,  &pld);
   	
   	char ptype[10];
   	switch(pld.type){
		case PLAY_TYPE_FILE: 	strcpy(ptype,"电影");   	break;
		case PLAY_TYPE_OPEAR: 	strcpy(ptype,"戏曲");	break;
		case PLAY_TYPE_CONCERT: strcpy(ptype,"音乐"); 	break;
	}

   	system("clear");
   	printf("\n\n\n\n");
   	
/*
	printf("\t\t\t╔================================================================================╗\n");
   	printf("\t\t\t‖"); printf("%80s‖\n"," ");
   	printf("\t\t\t‖%30s %20s %30s ‖\n"," ","X X 电影院"," ");
   	printf("\t\t\t‖"); printf("%80s‖\n"," ");
	printf("\t\t\t‖ \t%5s\t%-20s\t %5s\t%3d %3s %3d %3s","影厅:", std.name ,"座位:", sed.row ,"行", sed.column,"列");  printf("\t\t\t\t ‖\n");
	printf("\t\t\t‖"); printf("%80s‖\n"," ");
	printf("\t\t\t‖\t%5s\t%-20s\t%5s\t%5s\t%5s%3d","剧名:", pld.name,"类别:",ptype,"票价:",pld.price);  printf("\t\t ‖\n");
	printf("\t\t\t‖"); printf("%80s‖\n"," ");
	printf("\t\t\t‖\t%10s\t%5d-%02d-%02d\t%5s\t%02d:%02d","放映日期:",scd.date.year,scd.date.month,scd.date.day,"时间:" ,scd.time.hour,scd.time.minute);  printf("\t\t\t\t ‖\n");
	printf("\t\t\t‖"); printf("%80s‖\n"," ");
	printf("\t\t\t‖\t%25s:%5d ","本票ID(退票时使用)",ID); printf("\t\t\t\t\t\t ‖\n");
	printf("\t\t\t‖"); printf("%80s‖\n"," ");
	printf("\t\t\t‖"); printf("%80s‖\n"," ");
	printf("\t\t\t╚================================================================================╝\n\n");
*/
	printf("\t\t\t\t\033[34m☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ ☊ \033[0m\n");
	printf("\t\t\t\t\033[36m♫\033[0m                                                               \033[36m♫\033[0m\n");
	printf("\t\t\t\t\033[31m♫\033[0m\t\t\t\t\033[33m%-24s\033[0m\t\t\033[31m♫\033[0m\n",std.name);
	printf("\t\t\t\t\033[36m♫\033[0m                                                               \033[36m♫\033[0m\n");
	printf("\t\t\t\t\033[31m♫\033[0m\t剧目名称: %s\t\t剧目类型: %s\t\t\033[31m♫\033[0m\n",pld.name,ptype);
	printf("\t\t\t\t\033[36m♫\033[0m                                                               \033[36m♫\033[0m\n");
	printf("\t\t\t\t\033[31m♫\033[0m\t放映日期: %5d-%02d-%02d\t\t放映时间: %02d:%02d\t\t\033[31m♫\033[0m\n",scd.date.year,scd.date.month,scd.date.day,scd.time.hour,scd.time.minute);
	printf("\t\t\t\t\033[36m♫\033[0m                                                               \033[36m♫\033[0m\n");
	printf("\t\t\t\t\033[31m♫\033[0m\t座位: %d 行 %d 列\t\t\t票价: %d\t\t\033[31m♫\033[0m\n",sed.row,sed.column,pld.price);
	printf("\t\t\t\t\033[36m♫\033[0m                                                               \033[36m♫\033[0m\n");
	printf("\t\t\t\t\033[31m♫\033[0m\t本票ID (退票时使用) :	%d\t\t\t\t\033[31m♫\033[0m\n",ID);
	printf("\t\t\t\t\033[36m♫\033[0m                                                               \033[36m♫\033[0m\n");
	printf("\t\t\t\t\033[34m☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ ☋ \033[0m\n\n");
}
Пример #3
0
inline int Sale_UI_SellTicket(int ticket_id)
{
	ticket_t buf,data;
	if(Ticket_Srv_FetchByID(ticket_id,&buf))
	{
			if(buf.status==0)
			{
				printf("此票已售出!回车继续");
				getchar();
			}
			else
			{
				data.id=buf.id;
				data.schedule_id=buf.schedule_id;
				data.seat_id=buf.seat_id;
				data.price=buf.price;
				data.status=0;
				if(Ticket_Srv_Modify(&data))
				{
					Ticket_Info(&data);
					printf("订购成功!回车继续");
					getchar();
				}
				else
				{
					printf("订购失败!回车继续");
					getchar();
				}
			}
	}
	else
	{
		printf("找不到此票!回车继续");
		getchar();
	}
}
Пример #4
0
//退票
void Sale_UI_ReturnTicket(){
	char choice;
	int id,t=0;
     while(1){
		system("clear");
       		printf("\n		=================================================================");
        		printf("\n		**************************剧目%s的演出计划************************");
          		printf("\n		=================================================================");
            printf("\n		|     请输入演出计划ID:");
		
		while(1){
				if(scanf("%d",&id)==1){ cl_stdin(); break;}
				else{ cl_stdin();printf("\n		                    **您的输入有误!**");}
		}
		
		
		ticket_t buf;
		schedule_t scd;
			
	   	Schedule_Srv_FetchByID(buf.schedule_id, &scd);
		if( Ticket_Srv_FetchByID(id,&buf) ){
			if(buf.status==TICKET_SOLD){
       				Ticket_UI_Print(id);
       				user_time_t nowtime=TimeNow();
       				if(DateCmp(DateNow(), scd.date)==-1 || (DateCmp(DateNow(), scd.date)==0 && scd.time.hour<nowtime.hour && scd.time.minute<nowtime.minute ) ){
       				t=1;
       				Ticket_UI_Print(id);
       				}else{
       					printf("\n		                **您的输入有误!按任意键继续**");
					getchar();
					break;
					
       				}
       			}else{
       			
       				printf("\n		                    **信息不存在!按任意键返回**");
       				
				getchar();
				break;
       			}
       		}
		
		
		if(t){
			printf("\n		-----------------------------------------------------------------");
			printf("\n		|         [Q]uik    	       |             [R]eturn              |");
			printf("\n		******************************************************************");
			printf("\n		==================================================================");
			printf("\n		Iput Your choice:");
			choice=l_getc();
			if('r'==choice || 'R'==choice) break;	
			if('q'==choice || 'Q'==choice) {
			
				
	       			buf.status=TICKET_AVL;
	       			sale_t data;
	       					
	       			data.id=EntKey_Srv_CompNewKey("sale");
	       			data.user_id=gl_CurUser.id;
	       			data.ticket_id=id;
	       			data.date=DateNow();
	       			data.time=TimeNow();
	       			data.value=buf.price;
	       			data.type=SALE_RETURN;
	       					
	       			Sale_Srv_Add(&data);
	       					
	       			Ticket_Srv_Modify(&buf);
       				printf("\n		----------------------------**退票成功! **---------------------------------");
					printf("\n		==================================================================");
				cl_stdin();
				getchar();
											
				break;
       			}
       					
       		}
     			
		
	}
	
}