📄 train_booking_declare.h
字号:
// train_booking_declare.h -- 系统函数原型声明
//
/////////////////////////////////////////////////////////////////////////////
#ifndef TRAIN_BOOKING_DECLARE_H_
#define TRAIN_BOOKING_DECLARE_H_
#include <time.h>
#include "train_booking_const.h"
#include "train_booking_unit.h"
/////////////////////////////////////////////////////////////////////////////
typedef int status;
typedef char key;
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_attach.c
//
// 源程序文件说明: 包含辅助函数
//
/////////////////////////////////////////////////////////////////////////////
// 列车内存清理函数,包含关系:上面的函数包含下面的
status free_train_sq_info_list(train_sq_info *train_sq_info_head);//
status free_train_info_list(train_info *train_info_head);//
status free_station_info_list(station_info *station_info_head);//
status free_train_item_info_list(train_item *train_item_head);//
// 用户内存清理函数:包含关系:上面函数包含下面的
status free_passenger_info_list(passenger_info *passenger_info_head);//
status free_msgbox_item_list(msgbox_item *msg_box_item_head);//
status free_booked_list(booked_info *booked_info_head);//
status free_user_item_info_list(user_item *user_item_head);//
// 系统调用函数
status notify_psngr(passenger_info *psngr_info_pt);
status create_i_dir(char *finalpath, char *dir_i, char *filename);//
status create_ii_dir(char *finalpath, char *dir_i, char *dir_ii, char *filename);//
status create_iii_dir(char *finalpath, char *dir_i, char *dir_ii,
char *dir_iii, char *filename);//
status build_i_dir(char *dir_i, char *filename);//
status build_ii_dir(char *dir_i, char *dir_ii, char *filename);//
status build_iii_dir(char *dir_i, char *dir_ii, char *dir_iii, char *filename);//
status check_data(char *data_dir, char notice);//
status check_system_data(void);//
status get_current_time(struct tm *tm_pt, time_t *std_tm);//
// 杂类辅助函数
status message(char *head, char *body, char *deal);//
status delay(int sec);//
key text_menu(char item[][MAX_MENU_LEN], char *warn, int start, int end);//
key get_choice(char *cases);//
status get_str(char *description, char *input_str, int min_len, int max_len);//
status get_float(char *description, float *input_float);//
status get_int(char *description, int *input_int);//
status actitle(char *body);//
status pay_bill(int price_per_km, int distance, int amount);//
status check_cal_time(struct tm *ck_tm_pt);//
status check_std_time(time_t *chk_std_tm);//
status check_string(char *main, char *sub);//
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_bookop.c
//
// 源程序文件说明: 包含用户票务操作函数
//
/////////////////////////////////////////////////////////////////////////////
status book_sb_ticket(passenger_info *op_psngr_pt, system_info *system_info_pt,
train_info *train_info_pt);//
status book_hb_ticket(passenger_info *op_psngr_pt, system_info *system_info_pt,
train_info *train_info_pt);
status book_hs_ticket(passenger_info *op_psngr_pt, system_info *system_info_pt,
train_info *train_info_pt);
status re_sb_ticket(passenger_info *op_psngr_pt, system_info *system_info_pt,
train_info *train_info_pt);//
status re_hb_ticket(passenger_info *op_psngr_pt, system_info *system_info_pt,
train_info *train_info_pt);
status re_hs_ticket(passenger_info *op_psngr_pt, system_info *system_info_pt,
train_info *train_info_pt);
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_fread.c
//
// 源程序文件说明: 包含文件读取操作函数
//
/////////////////////////////////////////////////////////////////////////////
// 列车数据文件读取函数部分
status create_default_system_settings(system_info *system_info_pt);//
status load_system_settings(system_info *system_info_pt);//
status load_train_sq_info_list(train_sq_info *train_sq_info_head,
char *station_name, int amount);//
status load_train_info_list(train_info *train_info_head, char *sq_id,
train_item *train_item_head, int amount);//
status load_single_train_info(train_info *train_info_pt, char *sq_id,
char *time_id, char check_expired);//
status load_train_item_list(train_item *train_item_head,
char *sq_id, int amount);//
status load_station_info_list(station_info *station_info_head,
char *sq_id, char *time_id, int amount);//
status load_sbed_info_list(sbed_info *sbed_arr, char *sq_id,
char *time_id, int amount);//
status load_hbed_info_list(hbed_info *hbed_arr, char *sq_id,
char *time_id, int amount);//
status load_hseat_info_list(hseat_info *hseat_arr, char *sq_id,
char *time_id, int amount);//
status load_dot_info_list(sbed_info *sbed_arr, hbed_info *hbed_arr,
hseat_info *hseat_arr, char *sq_id, char time_id,
int sbed, int hbed, int hseat);//
// 用户数据文件读取函数部分
status create_default_admin_info(passenger_info *psngr_info_pt,
system_info *system_info_pt);//
status load_psngr_item_list(user_item *user_item_head, char *station_id, int amount);//
status load_psngr_info_list(passenger_info *psngr_info_head, char *station_id,
user_item *user_item_head, int amount);//
status load_booked_info_list(booked_info *booked_info_head, char *psngr_id,
int amount);//
status load_sysmsg_list(msgbox_item *sysmsg_head, char *psngr_id, int amount);//
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_fwrite.c
//
// 源程序文件说明: 包含文件存储操作函数
//
/////////////////////////////////////////////////////////////////////////////
// 列车数据保存函数部分
status save_system_info(system_info *system_info_pt);//
status save_train_sq_info(train_sq_info *train_sq_info_pt);//
status save_train_info(train_info *train_info_pt, char *train_sq_id);//
status save_sbed_info_list(sbed_info *sbed_arr, char *train_sq_id,
char *time_id, int amount);//
status save_hbed_info_list(hbed_info *hbed_arr, char *train_sq_id,
char *time_id, int amount);//
status save_hseat_info_list(hseat_info *hseat_arr, char *train_sq_id,
char *time_id, int amount);//
status save_station_info(station_info *station_info_pt, char *train_sq_id,
char *time_id);//
status save_train_item_info(train_item *train_item_pt, char *sq_id);//
status save_user_item_info(user_item *user_item_pt, char *psngr_id);//
// 用户数据保存函数部分
status save_psngr_info(passenger_info *passenger_info_pt);//
status save_booked_info(booked_info *booked_info_pt, char *psngr_id);//
status save_sysmsg(msgbox_item *sysmsg_pt, char *psngr_id);//
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_interact.c
//
// 源程序文件说明: 包含查询、报表等交互操作函数
//
/////////////////////////////////////////////////////////////////////////////
status report_station_scr(system_info *system_info_pt);
status report_train_sq_scr(train_sq_info *train_sq_info_pt);
status report_train_scr(train_info *train_info_pt);
status report_seat_file(train_info *train_info_pt);
status search_train_sq_by_start_end(system_info *system_info_pt,
train_sq_info *ok_train_sq_head, char type);//
status search_train_by_sq_tm();
status search_train_for_same_des();
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_mgrop.c
//
// 源程序文件说明: 包含管理员管理系统操作函数
//
/////////////////////////////////////////////////////////////////////////////
// 站点配置部分
status prepare_system_dir(void);//
status open_station(system_info *system_info_pt);//
status close_station(system_info *system_info_pt);//
status lock_station(system_info *system_info_pt);//
status unlock_station(system_info *system_info_pt);//
status name_station(system_info *system_info_pt);//
status set_price_sbed_per_km(system_info *system_info_pt);//
status set_price_hbed_per_km(system_info *system_info_pt);//
status set_price_hseat_per_km(system_info *system_info_pt);//
status set_bounce_off_ratio(system_info *system_info_pt);//
status set_special_off_ratio(system_info *system_info_pt);//
// 列车管理部分
status train_sq_add(system_info *system_info_pt);//
status train_sq_remove(system_info *system_info_pt);
status prepare_train_dir(char *sq_id, char *time_id);//
status prepare_system_file(void);//
status register_train_info(train_sq_info *train_sq_info_pt,
char *sq_id, char *time_id);//
status register_psngr_info(system_info *system_info_pt,
char *psngr_id, char admin_in);//
status train_add_hand(train_sq_info *train_sq_pt);
status train_add_file(train_sq_info *train_sq_info_head);//
status train_edit(train_info *train_pt);
status train_remove(train_sq_info *train_sq_pt);
status set_train_sq_days_per_train(train_sq_info *train_sq_pt);//
// 用户管理部分
status remove_psngr(passenger_info *psngr_head);
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_psngrop.c
//
// 源程序文件说明: 包含用户数据操作函数
//
/////////////////////////////////////////////////////////////////////////////
status prepare_psngr_dir(char *psngr_id);//
status psngr_reg(passenger_info *psngr_info_head, system_info *system_info_pt,
char *station_id, char type);//
status psngr_login(passenger_info *psngr_info_head, passenger_info *psngr_info_buf,
char *station_id, char type);//
status psngr_logout(passenger_info *psngr_pt);//
status wait_train(train_info *train_pt);
status browse_sysmsg_list(passenger_info *psngr_pt);
status view_sysmsg(msgbox_item *this_msg_pt);
status view_booked(booked_info *booked_info_head);
status modify_psngr_pass(passenger_info *psngr_info_pt);//
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_trainop.c
//
// 源程序文件说明: 包含列车数据操作函数
//
/////////////////////////////////////////////////////////////////////////////
status check_sbed_remained(sbed_info *sbed_info_pt);//
status check_hbed_remained(hbed_info *hbed_info_pt);//
status check_hseat_remained(hseat_info *hseat_info_pt);//
status search_target_train(train_info *target_train_pt, system_info *system_info_pt);//
status deal_sb_seat(sbed_info *sbed_info_arr, int car_order,
int seat_order, int begin, int end, int optype);//
status deal_hb_seat(hbed_info *hbed_info_arr, int car_order,
int seat_order, int begin, int end, int optype);//
status deal_hs_seat(hseat_info *hseat_info_arr, int car_order,
int seat_order, int begin, int end, int optype);//
status get_distance(int *ok_distance, station_info *station_info_head,
int begin_order, int end_order);//
status station_to_order(int *begin_order, int *end_order, char *begin_station,
char *end_station, train_info *train_info_head);//
status check_sb_booked(passenger_info *op_psngr_pt, char *sq_id, char *time_id,
char *begin_station, char *end_station);//
status check_hb_booked(passenger_info *op_psngr_pt, char *sq_id, char *time_id,
char *begin_station, char *end_station);//
status check_hs_booked(passenger_info *op_psngr_pt, char *sq_id, char *time_id,
char *begin_station, char *end_station);//
status check_hs_booked_ii(passenger_info *op_psngr_pt, char *sq_id, char *time_id,
int car_order, int seat_order);//
/////////////////////////////////////////////////////////////////////////////
// 源程序文件名称: train_booking_debug.c
//
// 源程序文件说明: 包含调试程序使用的函数
//
/////////////////////////////////////////////////////////////////////////////
status show_sq_links(train_sq_info *train_sq_head, char type);//
status show_system_info(system_info *system_info_pt);//
status show_psngr_info_list(passenger_info *psngr_info_head);//
status show_single_psgnr_info(passenger_info *psngr_info_pt);//
/////////////////////////////////////////////////////////////////////////////
/////////////////////////////////////////////////////////////////////////////
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -