⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 backmanager.c

📁 在LINUX下实现的一个超市的收银系统
💻 C
📖 第 1 页 / 共 3 页
字号:
#include "extern.h"/*=========后台管理==========*/void BackManager(){	char str[10];	    WINDOW *backman_win = newwin(14,40,4,20);	WINDOW *choice_win = subwin(backman_win,1,10,15,40);   		wbkgd(backman_win,COLOR_PAIR(9));	wbkgd(choice_win,COLOR_PAIR(10));	keypad(choice_win,TRUE);    do    {				box(backman_win,0,0);		mvwprintw(backman_win,1,15,"后台管理");		mvwprintw(backman_win,3,12,"1: 商品管理");		mvwprintw(backman_win,5,12,"2: 帐户管理");		mvwprintw(backman_win,7,12,"3: 销售记录查询");		mvwprintw(backman_win,9,12,"0: 返回登陆界面");		mvwprintw(backman_win,11,12,"请选择:");		wrefresh(backman_win);				echo();		mvwgetnstr(choice_win,0,0,str,10);		noecho();		if(strlen(str)>1)		{			ShowMessage("          输入错误,请重新输入");			memset(str,0,sizeof(str));			wclrtoeol(choice_win);			refresh();			continue;		}		if(!strncmp("1",str,1))		{			delwin(backman_win);			clear();			refresh();			Manager_Mer();		}		else if(!strncmp("2",str,1))		{			delwin(backman_win);			clear();			refresh();			AccountManager();		}		else if(!strncmp("3",str,1))		{			delwin(backman_win);			clear();			refresh();			SellRecordSearch();		}		else if(!strncmp("0",str,1))		{			ShowMessage("       正在返回登录界面......");			clear();			refresh();			break;		}		else 		{			ShowMessage("          输入错误,请重新输入");			memset(str,0,sizeof(str));			wclrtoeol(choice_win);			refresh();			continue;			}	 }while (1);	delwin(choice_win);	refresh();	UserLogin();}/*===========商品管理,包括添加,删除商品==================*/void Manager_Mer(){	char str[10];	WINDOW *manager_mer_win = newwin(15,40,6,20);	WINDOW *choice_win = subwin(manager_mer_win,1,10,17,40);   		wbkgd(manager_mer_win,COLOR_PAIR(9));	wbkgd(choice_win,COLOR_PAIR(10));	keypad(choice_win,TRUE);    do    {				box(manager_mer_win,0,0);		mvwprintw(manager_mer_win,1,15,"商品管理");		mvwprintw(manager_mer_win,3,12,"1.新增商品");		mvwprintw(manager_mer_win,5,12,"2.添加商品");		mvwprintw(manager_mer_win,7,12,"3.删除商品");		mvwprintw(manager_mer_win,9,12,"0.返回后台管理界面");		mvwprintw(manager_mer_win,11,12,"请选择:");		wrefresh(manager_mer_win);				echo();		mvwgetnstr(choice_win,0,0,str,10);		noecho();		if(strlen(str)>1)		{			ShowMessage("          输入错误,请重新输入");			memset(str,0,sizeof(str));			wclrtoeol(choice_win);			refresh();			continue;		}		if(!strncmp("1",str,1))		{			delwin(manager_mer_win);			clear();			refresh();			New_Mer();		}		else if(!strncmp("2",str,1))		{			delwin(manager_mer_win);			clear();			refresh();			//调用添加商品数量函数			Append_Mer();		}		else if(!strncmp("3",str,1))		{			delwin(manager_mer_win);			clear();			refresh();			Del_Mer();		}		else if(!strncmp("0",str,1))		{			ShowMessage("     正在返回后台管理菜单......");			delwin(manager_mer_win);			clear();			refresh();						BackManager();		}		else 		{			ShowMessage("          输入错误,请重新输入");			memset(str,0,sizeof(str));			wclrtoeol(choice_win);			refresh();			continue;			}	}while(1);}/*===========新增一种商品=============*/void New_Mer(){	char add_bar_code[20];//条形码	char add_mer_name[20];//名称	char add_unit[20];//单位	char add_spec[20];//规格	char add_sell_price[20];//售价	char add_stock_price[20];//进货价格	char add_mer_amount[20];//数量	char add_mer_agio[20];//折扣		float sell_price;	float stock_price;	int mer_amount;		float mer_agio;	char ch;	int i,j,temp;	j=0;	temp=0;	WINDOW *addmer  = newwin(20,60,5,10);	wbkgd(addmer,COLOR_PAIR(9));	box(addmer,0,0);	wrefresh(addmer);		mvwprintw(addmer,1,25,"添加商品");		mvwprintw(addmer,3,13,"条形码:");	mvwprintw(addmer,5,15,"名称:");	mvwprintw(addmer,7,15,"单位:");	mvwprintw(addmer,9,15,"规格:");	mvwprintw(addmer,11,15,"售价:");	mvwprintw(addmer,13,11,"进货价格:");	mvwprintw(addmer,15,15,"数量:");	mvwprintw(addmer,17,15,"折扣:");		wrefresh(addmer);	//条形码	WINDOW *bar_code_win = subwin(addmer,1,20,8,33);	wbkgd(bar_code_win,COLOR_PAIR(10));	touchwin(addmer);	wrefresh(bar_code_win);	//名称	WINDOW *mer_name_win = subwin(addmer,1,20,10,33);	wbkgd(mer_name_win,COLOR_PAIR(10));	touchwin(addmer);	wrefresh(mer_name_win);		//单位	WINDOW *mer_unit_win = subwin(addmer,1,20,12,33);    wbkgd(mer_unit_win,COLOR_PAIR(10));    touchwin(addmer);    wrefresh(mer_unit_win);	//规格	WINDOW *mer_spec_win = subwin(addmer,1,20,14,33);    wbkgd(mer_spec_win,COLOR_PAIR(10));    touchwin(addmer);    wrefresh(mer_spec_win);	//售价	WINDOW *sell_price_win = subwin(addmer,1,20,16,33);    wbkgd(sell_price_win,COLOR_PAIR(10));    touchwin(addmer);    wrefresh(sell_price_win);	//进货价格	WINDOW *stock_price_win = subwin(addmer,1,20,18,33);    wbkgd(stock_price_win,COLOR_PAIR(10));    touchwin(addmer);    wrefresh(stock_price_win);	//数量	WINDOW *mer_amount_win = subwin(addmer,1,20,20,33);    wbkgd(mer_amount_win,COLOR_PAIR(10));    touchwin(addmer);    wrefresh(mer_amount_win);	//折扣	WINDOW *mer_agio_win = subwin(addmer,1,20,22,33);    wbkgd(mer_agio_win,COLOR_PAIR(10));    touchwin(addmer);	wrefresh(mer_agio_win);	echo();	//判断输入的条形码是否正确	do	{		memset(add_bar_code,0,sizeof(add_bar_code));		mvwgetnstr(bar_code_win,0,0,add_bar_code,20);				if(add_bar_code[0]!= 'C')		{			ShowMessage("	输入错误第一个必须为“C”");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(bar_code_win);			continue;		}		if(add_bar_code[1] != 'N')		{			ShowMessage("    输入错误,第2个必须为“N”");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(bar_code_win);			continue;		}		if(strlen(add_bar_code) > 8)		{			ShowMessage("    输入的字符太长了,必须为8位");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(bar_code_win);			continue;		}		for(i=2;i<=7;i++)		{			if(isdigit(add_bar_code[i]))			{				continue;			}			temp=1;			ShowMessage("     输入错误,后面6位必须为数字");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(bar_code_win);			break;		}		if(1 == temp)		{			temp = 0;			continue;		}		if(SearchBarCode(add_bar_code,MER_NAME,MER_UNIT,MER_SPEC,&MER_PRICE,&MER_STOCK))		{			ShowMessage(" 你输入的条形码已经存在了,请重新输入");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(bar_code_win);			continue;		}				break;	}while (1);	//输入商品名称,这里允许用户输入中文的商品名称	do	{		memset(add_mer_name,0,sizeof(add_mer_name));		mvwgetnstr(mer_name_win,0,0,add_mer_name,20);				if(strlen(add_mer_name) == 0)		{			ShowMessage("    输入错误,商品名称不可以为空");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(mer_name_win);			continue;		}		break;	}while(1);		//输入商品单位	mvwgetnstr(mer_unit_win,0,0,add_unit,20);	//输入商品规格	mvwgetnstr(mer_spec_win,0,0,add_spec,20);	j=0;	temp=0;	//输入商品售价	do	{		memset(add_sell_price,0,sizeof(add_sell_price));			mvwgetnstr(sell_price_win,0,0,add_sell_price,20);		for(i=0;i<strlen(add_sell_price);i++)		{			if(add_sell_price[i] == '.')			{				j++;				continue;			}			if(!isdigit(add_sell_price[i]))			{				temp = 1;				break;			}		}		if(1 == temp)		{						ShowMessage("        输入错误,输入的必须为数字");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(sell_price_win);			wrefresh(sell_price_win);			temp = 0;			continue;		}		if(j>=2)		{			ShowMessage("      您输入了多个小数点,请重新输入");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(sell_price_win);			wrefresh(sell_price_win);			j = 0;			continue;		}				break;	}while (1);	sell_price = atof(add_sell_price);//把用销售价格换成FLOAT型	j=0;	temp=0;	//输入进货价格	do	{		memset(add_stock_price,0,sizeof(add_stock_price));			mvwgetnstr(stock_price_win,0,0,add_stock_price,20);		for(i=0;i<strlen(add_stock_price);i++)		{			if(add_stock_price[i] == '.')			{				j++;				continue;			}			if(!isdigit(add_stock_price[i]))			{				temp = 1;				break;			}		}		if(1 == temp)		{						ShowMessage("        输入错误,输入的必须为数字");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(stock_price_win);			wrefresh(stock_price_win);			temp = 0;			continue;		}		if(j>=2)		{			ShowMessage("      您输入了多个小数点,请重新输入");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(stock_price_win);			wrefresh(stock_price_win);			j = 0;			continue;		}				break;	}while (1);	stock_price = atof(add_stock_price);//装换才float		j=0;	temp=0;	//输入数量	do	{		memset(add_mer_amount,0,sizeof(add_mer_amount));			mvwgetnstr(mer_amount_win,0,0,add_mer_amount,20);		for(i=0;i<strlen(add_mer_amount);i++)		{			if(add_mer_amount[i] == '.')			{				j++;				continue;			}			if(!isdigit(add_mer_amount[i]))			{				temp = 1;				break;			}		}		if(1 == j)		{					ShowMessage("        输入错误,必须输入整数");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(mer_amount_win);			wrefresh(mer_amount_win);			j = 0;			continue;		}		if(j >= 2)		{			ShowMessage("        输入错误,你输入了多个小数点");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(mer_amount_win);			wrefresh(mer_amount_win);			j = 0;			continue;		}		if(1 == temp)		{						ShowMessage("        输入错误,输入的必须为数字");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(mer_amount_win);			wrefresh(mer_amount_win);			temp =0;			continue;		}		break;		}while (1);	mer_amount = atoi(add_mer_amount);	//要求输入折扣		j=0;	temp=0;	do	{		memset(add_mer_agio,0,sizeof(add_mer_agio));					mvwgetnstr(mer_agio_win,0,0,add_mer_agio,20);				for(i=0;i<strlen(add_mer_agio);i++)		{			if(add_mer_agio[i] == '.')			{				j++;				continue;			}			if(!isdigit(add_mer_agio[i]))			{				temp = 1;				break;			}		}		if(1 == temp)		{						ShowMessage("        输入错误,输入的必须为数字");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(mer_agio_win);			wrefresh(mer_agio_win);			temp = 0;			continue;		}		if( j >= 2)		{			ShowMessage("      您输入了多个小数点,请重新输入");			touchwin(addmer);			wrefresh(addmer);			wclrtoeol(mer_agio_win);			wrefresh(mer_agio_win);			j = 0;			continue;		}				break;			}while (1);	mer_agio = atof(add_mer_agio);//把折扣保存到FLOAT	//把正确的数据保存到数据库,保存到商品表		if(Save_New_Mer(add_bar_code,add_mer_name,add_unit,add_spec,sell_price,stock_price,mer_amount,mer_agio))	{		ShowMessage("        新增商品成功,按任意键返回");		touchwin(addmer);		wrefresh(addmer);	}	else	{		ShowMessage("        新增商品失败,按任意键返回");		touchwin(addmer);		wrefresh(addmer);	}		noecho();	ch = mvwgetch(addmer,19,30);	echo();	delwin(addmer);	clear();	refresh();	Manager_Mer();}/*===============增加已有商品数量=============*/void Append_Mer(){	char append_bar_code[20];	char append_mer_amount[20];	int mer_amount;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -