#include<iostream>
#include<string>
#include<fstream>
using namespace std;
const int maxsize=100;
const int max=20;
struct device //设备
{
int code; //设备号
char name[20]; //设备名
int now_num; //现有库存
float buy_price; //价格
int state; //设备状态
char buy_date[8];//购买时间
int low_num;//最少库存
int high_num;//最大库存
char buyer[12]; //采购员
char btel[12];
char provider[12];//供应商
char p_tel[13];//供应商电话
char return_date[11]; //归还时间
char out_date[11];//出库时间
};
struct person
{
char out_person[12]; //经手人
char taker[12]; //领取人
};
template<class T>
class ku
{
public:
void xianyou(); //进入现有设备模块
void chakan(); //进入查看模块
void ruku(); //进入库模块
void chuku(); //进入还库模块
void huanku(); //进入还库模块
void xuqiu(); //进入需求模块
void bangzhu(); //进入帮助模块
private:
device dev[max];
person per[max];
int kind;
};
void zhuye();
void rukumekuai();
void chakanmekuai();
void chukumekuai();
void huankumekuai();
int main()
{
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;
cout<<endl;
cout<<" 欢迎使用仓库管理系统 "<<endl;
cout<<endl;
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *"<<endl;
cout<<" "<<endl;
cout<<" 进入现有设备模块-------------请按数字键1"<<endl;
cout<<" "<<endl;
cout<<" 进入入库模块-----------------请按数字键2"<<endl;
cout<<" "<<endl;
cout<<" 进入查看模块-----------------请按数字键3"<<endl;
cout<<" "<<endl;
cout<<" 进入出库模块-----------------请按数字键4"<<endl;
cout<<" "<<endl;
cout<<" 进入还库模块-----------------请按数字键5"<<endl;
cout<<" "<<endl;
cout<<" 进入需求模块-----------------请按数字键6"<<endl;
cout<<" "<<endl;
cout<<" 退出系统---------------------请按数字键0"<<endl;
cout<<endl;
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * "<<endl;
ku<device> C;
int p;
cin>>p;
int choose=1;
while(choose==1)
{
switch(p)
{
case 1:C.xianyou();break; //进入现有设备模块
case 2:C.ruku();break; //进入库模块
case 3:C.chakan();break; //进入查看模块
case 4:C.chuku();break; //进入还库模块
case 5:C.huanku();break; //进入还库模块
case 6:C.xuqiu();break; //进入需求模块
case 0: exit(1);choose=0;break;
default:break;
}
}
return 0;
}
template<class T>
void ku<T>::xianyou()
{
cout<<endl;
cout<<" 您正在使用的是设备现有库存模块 "<<endl;
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * "<<endl;
cout<<" "<<endl;
ifstream ina("zhonglei.txt",ios::in);
ina>>kind;
ifstream inb("cangku.txt",ios::in);
for(int m=0;m<kind;m++)
{
inb>>dev[m].code;inb>>dev[m].name;
inb>>dev[m].now_num;inb>>dev[m].buy_price;inb>>dev[m].state;
inb>>dev[m].buy_date;inb>>dev[m].low_num;inb>>dev[m].high_num;
inb>>dev[m].buyer;inb>>dev[m].btel;inb>>dev[m].provider;
inb>>dev[m].p_tel;inb>>dev[m].return_date;inb>>dev[m].out_date;
}
int choose=1;
while(choose==1)
{
cout<<"若查看设备的现有库存请按数字键1"<<endl;
cout<<endl;
cout<<"退出该模块请按数字键2"<<endl;
cout<<"========================================="<<endl;
cout<<endl;
int n;
cin>>n;
switch(n)
{
case 1:
{
for(int m=0;m<kind;m++)
{
cout<<"设备号"<<' '<<dev[m].code<<endl;
cout<<"设备名称"<<" "<<dev[m].name<<endl;
cout<<"现存数量"<<" "<<dev[m].now_num<<endl;
cout<<"价格"<<" "<<dev[m].buy_price<<endl;
cout<<"设备状态"<<" "<<dev[m].state<<endl;
cout<<"购买时间"<<' '<<dev[m].buy_date<<endl;
cout<<"最少库存"<<" "<<dev[m].low_num<<endl;
cout<<"最大库存"<<" "<<dev[m].high_num<<endl;
cout<<"采购员"<<" "<<dev[m].buyer<<endl;
cout<<"采购员联系方式"<<" "<<dev[m].btel<<endl;
cout<<"设备供应商"<<" "<<dev[m].provider<<endl;
cout<<"供应商联系方式"<<' '<<dev[m].p_tel<<endl;
cout<<endl;
}
}
break;
case 2:zhuye();break;
default:break;
}
}
}
template<class T>
void ku<T>::ruku() //入库模块主要有两个方面的来源。一是购买新的设备、二是旧设备还库
{
cout<<endl;
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * "<<endl;
cout<<" 您正在使用的是设备入库模块 "<<endl;
cout<<"* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * "<<endl;
cout<<" "<<endl;
cout<<endl;
ifstream ina("zhonglei.txt",ios::in);
ina>>kind;
ifstream inb("cangku.txt",ios::in);
for(int m=0;m<kind;m++)
{
inb>>dev[m].code;inb>>dev[m].name;
inb>>dev[m].now_num;inb>>dev[m].buy_price;inb>>dev[m].state;
inb>>dev[m].buy_date;inb>>dev[m].low_num;inb>>dev[m].high_num;
inb>>dev[m].buyer;inb>>dev[m].btel;inb>>dev[m].provider;
inb>>dev[m].p_tel;inb>>dev[m].return_date;inb>>dev[m].out_date;
}
ifstream in0("person.txt",ios::in);
for(int i=0;i<kind;i++)
{
in0>>per[i].out_person;in0>>per[i].taker;
}
char name[12],buyer[12],provider[12],buy_date[11],return_date[11],btel[12],p_tel[12],out_person[12],taker[12];
int code,num,state;
float buy_price;
int choose=1;
while(choose==1)
{
cout<<"若入库的是新设备请按数字键1"<<endl;
cout<<endl;
cout<<"若入库的是归还设备请按数字键2"<<endl;
cout<<endl;
cout<<"退出该模块请按数字键3"<<endl;
cout<<"========================================="<<endl;
cout<<endl;
int n,i,flage;
cin>>n;
if(n!=1&&n!=2&&n!=3)
{
cout<<"对不起您输入的信息有误,请重新输入!"<<endl;
cout<<"% % % % % % % % % % % % % % % % % % % % % % % % % % % % %"<<endl;
rukumekuai();
}
switch(n)
{
case 1: //新设备入库
{
cout<<"请输入购买新设备的名称"<<endl;
cin>>name;
for( i=0;i<kind;i++) //循环太多了,怎样解决?
{
if(strcmp(dev[i].name,name)==0)
{
cout<<"请输入该设备的数量"<<endl; //购买的是原设备,因此只需在
cin>>num; //原设备的数量上增加数量
dev[i].now_num=dev[i].now_num+num;
if(dev[i].now_num>dev[i].high_num)
{
cout<<endl;
cout<<"仓库中该设备库存量过多,请停止采购该设备或减少采购数量,以免造成资源浪费"<<endl;
cout<<" "<<endl;
}
}
}
flage=1;
if(flage!=1)
{
cout<<"请输入入库设备的新种类数"<<endl; //够买原来没有的新设备
int kind1,kind;
cin>>kind1;
for(int j=kind;j<kind+kind1;j++)
{
cout<<"请输入新设备的名称"<<endl;
cin>>name;
strcpy(dev[j].name,name);
cout<<"请输入需要入库新设备的数量"<<endl;
cin>>num;
dev[j].now_num=num;
dev[j].code=dev[j-1].code+1;
cout<<"请输入设备入库时间"<<endl;
cin>>buy_date;
strcpy(dev[j].buy_date,buy_date);
cout<<"请输入采购员"<<endl;
cin>>buyer;
strcpy(dev[j].buyer,buyer);
cout<<"请输入采购员联系
没有合适的资源?快使用搜索试试~ 我知道了~
高级程序设计仓库管理系统
共13个文件
pdb:2个
exe:1个
dsp:1个
需积分: 15 9 下载量 183 浏览量
2009-01-02
23:02:13
上传
评论
收藏 963KB RAR 举报
温馨提示
关于一个仓库管理系统的完整程序设计#include<iostream> #include<string> #include<fstream> using namespace std; const int maxsize=100; const int max=20; struct device //设备 { int code; //设备号 char name[20]; //设备名 int now_num; //现有库存 float buy_price; //价格 int state; //设备状态 char buy_date[8];//购买时间 int low_num;//最少库存 int high_num;//最大库存 char buyer[12]; //采购员 char btel[12]; char provider[12];//供应商 char p_tel[13];//供应商电话 char return_date[11]; //归还时间 char out_date[11];//出库时间 };
资源推荐
资源详情
资源评论
收起资源包目录
.rar (13个子文件)
仓库管理系统
gf.dsw 529B
gf.plg 868B
ty.cpp 27KB
gf.ncb 33KB
gf.dsp 4KB
gf.opt 48KB
Debug
gf.exe 588KB
ty.obj 433KB
gf.ilk 818KB
gf.pdb 1.09MB
vc60.idb 73KB
gf.pch 2.06MB
vc60.pdb 116KB
共 13 条
- 1
资源评论
WQL2010
- 粉丝: 1
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功