📄 apsmp.c
字号:
}
else if(sendfile(sendfile1)==E_OK)
{
cls();
Dsp_str("盘点清单文件上传成功!",3,0);
Dsp_str("按任意键返回",6,6);
del_file(sendfile1);
WAIT
}
break;
}
case '3':
{
cls();
if(Is_file(sendfile2)==1)
{
cls();
Dsp_str(" 进仓清单文件不存在,",3,0);
Dsp_str(" 请先创建文件!",6,0);
warning_sound();
WAIT
}
else if(sendfile(sendfile2)==E_OK)
{
cls();
Dsp_str("进仓清单文件上传成功!",3,0);
Dsp_str("按任意键返回",6,6);
del_file(sendfile2);
WAIT
}
break;
}
case '4':
{
cls();
if(Is_file(sendfile3)==1)
{
cls();
Dsp_str(" 出仓清单文件不存在,",3,0);
Dsp_str(" 请先创建文件!",6,0);
warning_sound();
WAIT
}
else if(sendfile(sendfile3)==E_OK)
{
cls();
Dsp_str("出仓清单文件上传成功!",3,0);
Dsp_str("按任意键返回",6,6);
del_file(sendfile3);
WAIT
}
break;
}
case '5':
{
return;
}
case 12:
{
return;
}
}/* end switch */
}/* end while(1) */
}/* end main_menu4*/
/*进仓模块*/
void main_menu2(void)
{
char kind;
while(1)
{
cls();
Dsp_str(" 1.自动累加数量",1,0);
Dsp_str(" 2.手动输入数量",3,0);
Dsp_str(" 3.进仓数据删除 ",5,0);
Dsp_str(" 4.查看进仓清单",7,0);
Dsp_str(" 5.返回上一层 ",9,0);
kind=getkey();
switch(kind)
{
case '1':
{
main_menu21();
break;
}
case '2':
{
main_menu22();
break;
}
case '3':
{
cls();
Dsp_str("确定要删除进仓数据吗?",2,0);
Dsp_str("ENT 删除",5,3);
Dsp_str("任意键 不删除",8,3);
kind=getkey();
if(kind==13) del_file(sendfile2);
break;
}
case '4':
{
main_menu23();
break;
}
case '5':
{
return;
}
case 12:
{
return;
}
}/* end switch */
}/* end while(1) */
}/* end main_menu2 */
/*自动增加进仓数量*/
void main_menu21(void)
{
UB buff[50],temp[80],reco[100],reco1[100],hd[80];
UB dd[20],hj[20],tm[30],pm[40],ddsl[20],hjtm[50],sl[20];
W fjlh,fjfj;
ER ret,ercd,kind;
if(Is_file(sendfile2)==1)
{
creat_file(sendfile2);
}
while(1)
{
cls();
memset(buff,0x00,sizeof(buff));
memset(dd,0x00,sizeof(dd));
Dsp_str("进仓单:",1,0);
lcd_csr_put(1,7);
lcd_csr_set((H)LCD_CSR_UNDER);
/*************读入进仓单号码*****************/
key_clear();
ret=read_str(1,7,0,buff,15);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) return; /*按CLS 返回*/
if(strlen(buff)==0) continue;
if(strlen(buff)<15)
{
space_str(buff,15);
memcpy(dd,buff,15);
}
else
{
strcpy(dd,buff);
}
dd[15]=0x00;
Dsp_str(dd,1,7);
while(2)
{
cls();
Dsp_str("进仓单:",1,0);
Dsp_str(dd,1,7);
Dsp_str("仓位:",3,0);
memset(buff,0x00,sizeof(buff));
memset(hj,0x00,sizeof(hj));
lcd_csr_put(3,5);
lcd_csr_set((H)LCD_CSR_UNDER);
/****** 读入货架或仓位 **************/
key_clear();
ret=read_str(3,5,0,buff,15);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) break;
if(strlen(buff)<15)
{
space_str(buff,15);
memcpy(hj,buff,15);
}
else
{
strcpy(hj,buff);
}
hj[15]=0x00;
Dsp_str(hj,3,5);
while(3)
{
cls();
Dsp_str("进仓单:",1,0);
Dsp_str(dd,1,7);
Dsp_str("仓位:",3,0);
Dsp_str(hj,3,5);
Dsp_str("条码:",5,0);
memset(buff,0x00,sizeof(buff));
memset(tm,0x00,sizeof(tm));
lcd_csr_put(5,5);
lcd_csr_set((H)LCD_CSR_UNDER);
/****** 读入条码 **************/
key_clear();
ret=read_str(5,5,0,buff,25);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) break;
if(strlen(buff)==0) continue;
if(strlen(buff)<25)
{
space_str(buff,25);
memcpy(tm,buff,25);
}
else
{
strcpy(tm,buff);
}
tm[25]=0x00;
Dsp_str(tm,5,5);
memset(hjtm,0x00,sizeof(hjtm));
strcat(hjtm,hj);
strcat(hjtm,tm);
hjtm[40]=0x00;
memset(reco1,0x00,sizeof(reco1));
ercd=search(receivefile1,0,80,0,40,hjtm,reco1,&fjfj);
/*如果找到该商品的条码,则应读出它的品名信息*/
if(ercd==E_OK)
{
memset(pm,0x00,sizeof(pm));
memcpy(pm,reco1+40,30); /*读入品名*/
pm[30]=0x00;
/*****************显示商品信息********************/
cls();
Dsp_str("进仓单:",1,0);
Dsp_str(dd,1,7);
Dsp_str("仓位:",3,0);
Dsp_str(hj,3,5);
Dsp_str("条码:",5,0);
Dsp_str(tm,5,5);
Dsp_str("名称:",7,0);
Dsp_str(pm,7,5);
/*************************************************/
Dsp_str("进仓数:",9,0);
memset(buff,0x00,sizeof(buff));
memset(ddsl,0x00,sizeof(ddsl));
lcd_csr_put(9,7);
lcd_csr_set((H)LCD_CSR_UNDER);
/****** 读入数量 **************/
key_clear();
ret=read_str(9,7,2,buff,9);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) continue;
if(strlen(buff)==0)
{
memcpy(buff,"1",9);
memcpy(sl,buff,9);
}
if(strlen(buff)<9)
{
space_str(buff,9);
memcpy(ddsl,buff,9);
}
else
{
strcpy(ddsl,buff);
}
ddsl[9]=0x00;
Dsp_str(ddsl,9,7);
memset(hd,0x00,sizeof(hd));
strcat(hd,dd);
strcat(hd,hj);
strcat(hd,tm);
hd[55]=0x00;
memset(reco,0x00,sizeof(reco));
ercd=search(sendfile2,0,65,0,55,hd,reco,&fjlh);
if(ercd==E_OK)
{
memset(sl,0x00,sizeof(sl));
memcpy(sl,reco+55,9);
sl[9]==0x00;
sprintf(sl,"%-9.0f",atof(sl)+atof(ddsl));
space_str(sl,10);
sl[9]=0x00;
dat_F_Write(sendfile2,0,fjlh+55,sl,9);
make_sound();
continue;
}
memset(temp,0x00,sizeof(temp));
strcat(temp,dd);
strcat(temp,hj);
strcat(temp,tm);
strcat(temp,ddsl);
strcat(temp,"\xd\xa");
temp[65]=0x00;
dat_F_Write(sendfile2,1,0,temp,65);
make_sound();
}
else
{
cls();
Dsp_str("该进仓单无此条码!",3,2);
Dsp_str("请重新扫描条码",7,2);
warning_sound();
WAIT
}
}
}
}
}
/*手动增加进仓数量*/
void main_menu22(void)
{
UB buff[50],temp[80],reco[100],reco1[100],hd[80];
UB dd[20],hj[20],tm[30],pm[40],ddsl[20],hjtm[50],sl[20];
W fjlh,fjfj;
ER ret,ercd,kind;
if(Is_file(sendfile2)==1)
{
creat_file(sendfile2);
}
while(1)
{
cls();
memset(buff,0x00,sizeof(buff));
memset(dd,0x00,sizeof(dd));
Dsp_str("进仓单:",1,0);
lcd_csr_put(1,7);
lcd_csr_set((H)LCD_CSR_UNDER);
/*************读入进仓单号码*****************/
key_clear();
ret=read_str(1,7,0,buff,15);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) return; /*按CLS 返回*/
if(strlen(buff)==0) continue;
if(strlen(buff)<15)
{
space_str(buff,15);
memcpy(dd,buff,15);
}
else
{
strcpy(dd,buff);
}
dd[15]=0x00;
Dsp_str(dd,1,7);
while(2)
{
cls();
Dsp_str("进仓单:",1,0);
Dsp_str(dd,1,7);
Dsp_str("仓位:",3,0);
memset(buff,0x00,sizeof(buff));
memset(hj,0x00,sizeof(hj));
lcd_csr_put(3,5);
lcd_csr_set((H)LCD_CSR_UNDER);
/****** 读入货架或仓位 **************/
key_clear();
ret=read_str(3,5,0,buff,15);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) break;
if(strlen(buff)<15)
{
space_str(buff,15);
memcpy(hj,buff,15);
}
else
{
strcpy(hj,buff);
}
hj[15]=0x00;
Dsp_str(hj,3,5);
while(3)
{
cls();
Dsp_str("进仓单:",1,0);
Dsp_str(dd,1,7);
Dsp_str("仓位:",3,0);
Dsp_str(hj,3,5);
Dsp_str("条码:",5,0);
memset(buff,0x00,sizeof(buff));
memset(tm,0x00,sizeof(tm));
lcd_csr_put(5,5);
lcd_csr_set((H)LCD_CSR_UNDER);
/****** 读入条码 **************/
key_clear();
ret=read_str(5,5,0,buff,25);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) break;
if(strlen(buff)==0) continue;
if(strlen(buff)<25)
{
space_str(buff,25);
memcpy(tm,buff,25);
}
else
{
strcpy(tm,buff);
}
tm[25]=0x00;
Dsp_str(tm,5,5);
memset(hjtm,0x00,sizeof(hjtm));
strcat(hjtm,hj);
strcat(hjtm,tm);
hjtm[40]=0x00;
memset(reco1,0x00,sizeof(reco1));
ercd=search(receivefile1,0,80,0,40,hjtm,reco1,&fjfj);
/*如果找到该商品的条码,则应读出它的品名信息*/
if(ercd==E_OK)
{
memset(pm,0x00,sizeof(pm));
memcpy(pm,reco1+40,30); /*读入品名*/
pm[30]=0x00;
/*****************显示商品信息********************/
cls();
Dsp_str("进仓单:",1,0);
Dsp_str(dd,1,7);
Dsp_str("仓位:",3,0);
Dsp_str(hj,3,5);
Dsp_str("条码:",5,0);
Dsp_str(tm,5,5);
Dsp_str("名称:",7,0);
Dsp_str(pm,7,5);
/*************************************************/
Dsp_str("进仓数:",9,0);
memset(buff,0x00,sizeof(buff));
memset(ddsl,0x00,sizeof(ddsl));
lcd_csr_put(9,7);
lcd_csr_set((H)LCD_CSR_UNDER);
/****** 读入数量 **************/
key_clear();
ret=read_str(9,7,2,buff,10);
lcd_csr_set((H)LCD_CSR_OFF);
if(ret==E_KEY_CLR) continue;
if(strlen(buff)==0)
{
memcpy(buff,"1",10);
memcpy(sl,buff,10);
}
if(strlen(buff)<10)
{
space_str(buff,10);
memcpy(ddsl,buff,10);
}
else
{
strcpy(ddsl,buff);
}
ddsl[10]=0x00;
Dsp_str(ddsl,9,7);
memset(hd,0x00,sizeof(hd));
strcat(hd,dd);
strcat(hd,hj);
strcat(hd,tm);
hd[55]=0x00;
memset(reco,0x00,sizeof(reco));
ercd=search(sendfile2,0,65,0,55,hd,reco,&fjlh);
if(ercd==E_OK)
{
memset(sl,0x00,sizeof(sl));
memcpy(sl,reco+55,10);
sl[10]==0x00;
cls();
Dsp_str(" 是否修改数量?",1,0);
Dsp_str(" 原数量:",3,0);
Dsp_str(sl,3,11);
Dsp_str(" 按 ENT 累加!",5,0);
Dsp_str(" 按 6 覆盖!",7,0);
Dsp_str(" 按 其它键 取消!",9,0);
warning_sound();
kind=getkey();
if(kind==13)
{
sprintf(sl,"%-10.0f",atof(sl)+atof(ddsl));
space_str(sl,10);
sl[10]=0x00;
dat_F_Write(sendfile2,0,fjlh+55,sl,10);
make_sound();
}
if(kind=='6')
{
dat_F_Write(sendfile2,0,fjlh+55,ddsl,10);
make_sound();
}
continue;
}
memset(temp,0x00,sizeof(temp));
strcat(temp,dd);
strcat(temp,hj);
strcat(temp,tm);
strcat(temp,ddsl);
strcat(temp,"\xd\xa");
temp[65]=0x00;
dat_F_Write(sendfile2,1,0,temp,65);
make_sound();
}
else
{
cls();
Dsp_str("该进仓单无此条码!",3,2);
Dsp_str("请重新扫描条码",7,2);
warning_sound();
WAIT
}
}
}
}
}
/*验收数据浏览*/
void main_menu23(void)
{
ER kind,ercd,ret;
W jls,zjs;
int i=0,f;
UB dd[20],tm[20],bzq[20],sl[20];
UB reco[50];
if(Is_file(sendfile2)==1)
{
cls();
Dsp_str(" 数据文件不存在",2,0);
Dsp_str(" 请先采集验收数据",5,0);
warning_sound();
WAIT
return;
}
cls();
/* Dsp_str(" 3.向 前 翻 页 ",1,0);
Dsp_str(" 9.删除单条记录",3,0);
Dsp_str(" ENT.向 后 翻 页 ",5,0);
Dsp_str(" CLS.返 回 ",7,0);*/
Dsp_str(" 3.向 前 翻 页 ",2,0);
Dsp_str(" ENT.向 后 翻 页 ",4,0);
Dsp_str(" CLS.返 回 ",6,0);
WAIT
while(1){
zjs=get_file_bit(sendfile2);
jls=(zjs/41);
if((f=open(sendfile2,O_RDONLY))==E_LOWERR)
{
cls();
Dsp_str("数据文件打开错误",5,1);
WAIT
return;
}
memset(reco,0x00,sizeof(reco));
if((ercd=lseek(f,i*41,0))!=E_LOWERR)
ercd=read(f,(char*)reco,41);
close(f);
memset(dd,0x00,sizeof(dd));
memset(tm,0x00,sizeof(tm));
memset(bzq,0x00,sizeof(bzq));
memset(sl,0x00,sizeof(sl));
memcpy(dd,reco,10);
memcpy(tm,reco+10,13);
memcpy(bzq,reco+23,6);
memcpy(sl,reco+30,9);
cls();
Dsp_str("订单号码:",1,0);
Dsp_str(dd,1,9);
Dsp_str("条码或货号:",3,0);
Dsp_str(tm,3,11);
Dsp_str("保质期:",7,0);
Dsp_str(bzq,7,7);
Dsp_str("数量:",9,0);
Dsp_str(sl,9,5);
kind=getkey();
switch(kind)
{
case'3':{
if(i<=0){
cls();
Dsp_str("此记录为第一条记录!!",2,0);
WAIT
}
else{
i--;
}
break;
}
case 13:{
if(i>=jls-1){
cls();
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -