📄 functionlib.c
字号:
int i=0;
for(i=0;i<strlen(temp);i++)
{
if( ((temp[i]>='0'&& temp[i]<='9')|| temp[i]=='.') && k<=1 )
{ // 合法
if(temp[i]=='.')
{
k++;
}
}
else
{
flag=1;
}
}
if(1==flag)
{
MessageBox("请输入正确数值","按任意键返回",NOBTN);
continue;
}
else
{
earn=atof(temp);
if(earn<statmoney)
{
MessageBox("钱不够!!!","按任意键返回",NOBTN);
}else
{
//int IncomeWin(C_CLASS LINKLIST* link,float * money,float * change)
break; // 退出循环
}
}
}
}
while (1);
char tempstr[10];memset(tempstr,0,10);
sprintf(tempstr,"%.2f",earn-statmoney);
pIncomeWin->DrawWords(pIncomeWin,5,8,tempstr);
wrefresh(pIncomeWin->m_window);
int res=0;
res=pIncomeWin->RunMyWindow(pIncomeWin);
if (res==BUTTONID+1)
{
kindmoney->give_sum=costmoney;
kindmoney->real_sum=statmoney;
kindmoney->money=earn;
kindmoney->change=earn-statmoney;
scr_restore("SaveScr2.scr");
return 1; // 收银
}
scr_restore("SaveScr2.scr");
return 0; // 返回
}
/************************************************************
Function:连接数据模块函数
Param: 无
return :1 连接成功 0 连接失败
*************************************************************/
int ConnectDBInit()
{
//MessageBox(char * ptitle,char * pcontent,enum MSGMODE mode)
ConfigInfo config;
int x=0,y=0;
getmaxyx(stdscr,y,x);
werase(stdscr);
refresh();
mvprintw(y/2,(x-strlen("正在连接数据库请稍等..."))/2,"正在连接数据库请稍等...");
refresh();
sleep(2);
if(ReadConfig("pos.config",&config)==1)
{
// 读取成功
}
else
{
// 读取失败
MessageBox("读配置文件失败,检查pos.config","按任意键 [退出]系统!",NOBTN);
return 0;
}
werase(stdscr);
refresh();
if(ConnectDB(&config)==1)
{
MessageBox("连接数据库成功.","按任意键 [进入].",NOBTN);
return 1;
}
else
{
MessageBox("连接数据库失败.","按任意键 [退出].",NOBTN);
return 0;
}
return 0;
}
/**************************************
Function:去除右字符串右空格函数
Param: 字符串指针
返回值: pos
****************************************/
int MoveRightSpace(char * str)
{
int len=strlen(str);
int i=0;
if(0==len)
{
return 0;
}
for(i=len-1;i>0;i--)
{
if(str[i]==' ')
{
str[i]='\0';
continue;
}
break;
}
return 1;
}
/**************************************************************
Function: 验证登入
Param: userinfo 用户输入帐户信息 staffinfo 数据库读取信息
**************************************************************/
int LoginValidate(UserInfo * userinfo,StaffInfo * staffinfo)
{
int res;
res=ConnectAccout(staffinfo,userinfo);
if(1==res)
{
// 成功
//printw("成功找到");
return 1;
}
else if (0==res)
{
// 没有找到
MessageBox("帐户或者密码错误","任意键返回",NOBTN);
return 0;
}else
{
// 错误
MessageBox("读取数据库错误","任意键返回",NOBTN);
return 0;
}
}
/**************************************************************
Function: 后台管理 - 父亲模块
Param: 无
return; 无
**************************************************************/
void BackManager()
{
MyWindow * pBackMgrWin=NULL;
pBackMgrWin=MakeMyWindow(pBackMgrWin);
pBackMgrWin->m_color=WHITE_BLUE;
pBackMgrWin->m_sizex=78; // 30
pBackMgrWin->m_sizey=25; // 12
pBackMgrWin->m_px=1;
pBackMgrWin->m_py=1;
int sizex=pBackMgrWin->m_sizex;
int sizey=pBackMgrWin->m_sizey;
ChangeMyWindow(&pBackMgrWin);
DrawWords(pBackMgrWin,2,(sizex-strlen("后台管理"))/2,"后台管理");
Button * pItem1=NULL;
pItem1=MakeButton(pItem1);
strcpy(pItem1->m_name," 1. 商品管理 ");
pItem1->m_kind=YESBUTTON;
pItem1->m_isbox=FALSE;
pItem1->m_buttonid=BUTTONID+1;
pItem1->m_sizex=20;
pItem1->m_sizey=1;
pItem1->m_color_foot=WHITE_BLUE;
pItem1->ChangeButton(&pItem1);
Button * pItem2=NULL;
pItem2=MakeButton(pItem2);
strcpy(pItem2->m_name," 2. 帐户管理 ");
pItem2->m_kind=YESBUTTON;
pItem2->m_isbox=FALSE;
pItem2->m_buttonid=BUTTONID+2;
pItem2->m_sizex=20;
pItem2->m_sizey=1;
pItem2->m_color_foot=WHITE_BLUE;
pItem2->ChangeButton(&pItem2);
Button * pItem3=NULL;
pItem3=MakeButton(pItem3);
strcpy(pItem3->m_name," 3. 销售记录管理 ");
pItem3->m_kind=YESBUTTON;
pItem3->m_isbox=FALSE;
pItem3->m_buttonid=BUTTONID+3;
pItem3->m_sizex=20;
pItem3->m_sizey=1;
pItem3->m_color_foot=WHITE_BLUE;
pItem3->ChangeButton(&pItem3);
Button * pItem0=NULL;
pItem0=MakeButton(pItem0);
strcpy(pItem0->m_name," 0. 返回登入界面 ");
pItem0->m_kind=YESBUTTON;
pItem0->m_isbox=FALSE;
pItem0->m_buttonid=BUTTONID;
pItem0->m_sizex=20;
pItem0->m_sizey=1;
pItem0->m_color_foot=WHITE_BLUE;
pItem0->ChangeButton(&pItem0);
AddActiveElement(pBackMgrWin,pItem1,ISBUTTON,5,30);
AddActiveElement(pBackMgrWin,pItem2,ISBUTTON,8,30);
AddActiveElement(pBackMgrWin,pItem3,ISBUTTON,11,30);
AddActiveElement(pBackMgrWin,pItem0,ISBUTTON,14,30);
int res=0;
do
{
res=0;
ShowMyWindow(pBackMgrWin);
res=RunMyWindow(pBackMgrWin);
;
;
switch(res)
{
case BUTTONID+1:
{ // 商品管理
CommodityMgr();
}
break;
case BUTTONID+2:
{
// 帐户管理
AccountMgr();
}
break;
case BUTTONID+3:
{
// 销售记录管理
SellRecord();
}
break;
case BUTTONID:
{
// 返回登入界面
}
break;
}
if(BUTTONID==res)
{
break;
}
}
while (1);
DelMyWindow(pBackMgrWin);
}
/**************************************************************
Function: 商品管理
Param: 无
return; 无
**************************************************************/
void CommodityMgr()
{
scr_dump("SaveScr.scr");
MyWindow * pCommodityMgr=NULL;
pCommodityMgr=MakeMyWindow(pCommodityMgr);
pCommodityMgr->m_color=WHITE_BLUE;
pCommodityMgr->m_sizex=78; // 30
pCommodityMgr->m_sizey=25; // 12
pCommodityMgr->m_px=1;
pCommodityMgr->m_py=1;
int sizex=pCommodityMgr->m_sizex;
int sizey=pCommodityMgr->m_sizey;
ChangeMyWindow(&pCommodityMgr);
DrawWords(pCommodityMgr,2,(sizex-strlen("商品管理"))/2,"商品管理");
Button * pItem1=NULL;
pItem1=MakeButton(pItem1);
strcpy(pItem1->m_name,"1. 查询商品");
pItem1->m_kind=YESBUTTON;
pItem1->m_isbox=FALSE;
pItem1->m_buttonid=BUTTONID+1;
pItem1->m_sizex=20;
pItem1->m_sizey=1;
pItem1->m_color_foot=WHITE_BLUE;
pItem1->ChangeButton(&pItem1);
Button * pItem2=NULL;
pItem2=MakeButton(pItem2);
strcpy(pItem2->m_name,"2. 添加商品");
pItem2->m_kind=YESBUTTON;
pItem2->m_isbox=FALSE;
pItem2->m_buttonid=BUTTONID+2;
pItem2->m_sizex=20;
pItem2->m_sizey=1;
pItem2->m_color_foot=WHITE_BLUE;
pItem2->ChangeButton(&pItem2);
Button * pItem3=NULL;
pItem3=MakeButton(pItem3);
strcpy(pItem3->m_name,"3. 修改商品");
pItem3->m_kind=YESBUTTON;
pItem3->m_isbox=FALSE;
pItem3->m_buttonid=BUTTONID+3;
pItem3->m_sizex=20;
pItem3->m_sizey=1;
pItem3->m_color_foot=WHITE_BLUE;
pItem3->ChangeButton(&pItem3);
Button * pItem4=NULL;
pItem4=MakeButton(pItem4);
strcpy(pItem4->m_name,"4. 删除商品");
pItem4->m_kind=YESBUTTON;
pItem4->m_isbox=FALSE;
pItem4->m_buttonid=BUTTONID+4;
pItem4->m_sizex=20;
pItem4->m_sizey=1;
pItem4->m_color_foot=WHITE_BLUE;
pItem4->ChangeButton(&pItem4);
Button * pItem0=NULL;
pItem0=MakeButton(pItem0);
strcpy(pItem0->m_name,"0. 返回后台管理界面");
pItem0->m_kind=YESBUTTON;
pItem0->m_isbox=FALSE;
pItem0->m_buttonid=BUTTONID;
pItem0->m_sizex=20;
pItem0->m_sizey=1;
pItem0->m_color_foot=WHITE_BLUE;
pItem0->ChangeButton(&pItem0);
AddActiveElement(pCommodityMgr,pItem1,ISBUTTON,5,30);
AddActiveElement(pCommodityMgr,pItem2,ISBUTTON,8,30);
AddActiveElement(pCommodityMgr,pItem3,ISBUTTON,11,30);
AddActiveElement(pCommodityMgr,pItem4,ISBUTTON,14,30);
AddActiveElement(pCommodityMgr,pItem0,ISBUTTON,17,30);
int res=0;
do
{
res=0;
ShowMyWindow(pCommodityMgr);
res=RunMyWindow(pCommodityMgr);
switch(res)
{
case BUTTONID+1:
{
// 查询商品
SearchCommodity();
}
break;
case BUTTONID+2:
{
// 添加商品
AddCommodity();
}
break;
case BUTTONID+3:
{
// 修改商品
ModifyCommodity();
}
break;
case BUTTONID+4:
{
// 删除商品
DeleteCommodity();
}
break;
case BUTTONID:
{
// 0. 返回后台管理界面
}
break;
}
if(BUTTONID==res)
{
break;
}
}
while (1);
DelMyWindow(pCommodityMgr);
scr_restore("SaveScr.scr");
}
/***************************
Function:帐户管理模块
PARAM:无
返回值:无
***************************/
void AccountMgr() // 帐户管理模块
{
scr_dump("SaveScr.scr");
MyWindow * pAccountMgr=NULL;
pAccountMgr=MakeMyWindow(pAccountMgr);
pAccountMgr->m_color=WHITE_BLUE;
pAccountMgr->m_sizex=78; // 30
pAccountMgr->m_sizey=25; // 12
pAccountMgr->m_px=1;
pAccountMgr->m_py=1;
int sizex=pAccountMgr->m_sizex;
int sizey=pAccountMgr->m_sizey;
ChangeMyWindow(&pAccountMgr);
DrawWords(pAccountMgr,2,(sizex-strlen("帐户管理"))/2,"帐户管理");
Button * pItem1=NULL;
pItem1=MakeButton(pItem1);
strcpy(pItem1->m_name,"1. 查询帐户");
pItem1->m_kind=YESBUTTON;
pItem1->m_isbox=FALSE;
pItem1->m_buttonid=BUTTONID+1;
pItem1->m_sizex=20;
pItem1->m_sizey=1;
pItem1->m_color_foot=WHITE_BLUE;
pItem1->ChangeButton(&pItem1);
Button * pItem2=NULL;
pItem2=MakeButton(pItem2);
strcpy(pItem2->m_name,"2. 添加帐户");
pItem2->m_kind=YESBUTTON;
pItem2->m_isbox=FALSE;
pItem2->m_buttonid=BUTTONID+2;
pItem2->m_sizex=20;
pItem2->m_sizey=1;
pItem2->m_color_foot=WHITE_BLUE;
pItem2->ChangeButton(&pItem2);
Button * pItem3=NULL;
pItem3=MakeButton(pItem3);
strcpy(pItem3->m_name,"3. 修改帐户");
pItem3->m_kind=YESBUTTON;
pItem3->m_isbox=FALSE;
pItem3->m_buttonid=BUTTONID+3;
pItem3->m_sizex=20;
pItem3->m_sizey=1;
pItem3->m_color_foot=WHITE_BLUE;
pItem3->ChangeButton(&pItem3);
Button * pItem4=NULL;
pItem4=MakeButton(pItem4);
strcpy(pItem4->m_name,"4. 删除帐户");
pItem4->m_kind=YESBUTTON;
pItem4->m_isbox=FALSE;
pItem4->m_buttonid=BUTTONID+4;
pItem4->m_sizex=20;
pItem4->m_sizey=1;
pItem4->m_color_foot=WHITE_BLUE;
pItem4->ChangeButton(&pItem4);
Button * pItem0=NULL;
pItem0=MakeButton(pItem0);
strcpy(pItem0->m_name,"0. 返回后台管理界面");
pItem0->m_kind=YESBUTTON;
pItem0->m_isbox=FALSE;
pItem0->m_buttonid=BUTTONID;
pItem0->m_sizex=20;
pItem0->m_sizey=1;
pItem0->m_color_foot=WHITE_BLUE;
pItem0->ChangeButton(&pItem0);
AddActiveElement(pAccountMgr,pItem1,ISBUTTON,5,30);
AddActiveElement(pAccountMgr,pItem2,ISBUTTON,8,30);
AddActiveElement(pAccountMgr,pItem3,ISBUTTON,11,30);
AddActiveElement(pAccountMgr,pItem4,ISBUTTON,14,30);
AddActiveElement(pAccountMgr,pItem0,ISBUTTON,17,30);
int res=0;
do
{
ShowMyWindow(pAccountMgr);
res=RunMyWindow(pAccountMgr);
switch(res)
{
case BUTTONID+1:
{
// 查询帐户
SearchAccount();
}
break;
case BUTTONID+2:
{
// 添加帐户
AddAccount();
}
break;
case BUTTONID+3:
{
// 修改帐户
ModifyAccount();
}
break;
case BUTTONID+4:
{
// 删除帐户
DeleteAccount();
}
break;
case BUTTONID:
{
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -