售后服务管理系统-合院何浩.doc_第1页
售后服务管理系统-合院何浩.doc_第2页
售后服务管理系统-合院何浩.doc_第3页
售后服务管理系统-合院何浩.doc_第4页
售后服务管理系统-合院何浩.doc_第5页
免费预览已结束,剩余6页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

#include #include #include #include /输入/输出文件流类using namespace std;const int Maxr=100;/最多的被服务人员(有公司的服务人员数决定)const int Maxb=100;/最多的项目const int Maxbor=5;/每位被服务人员每次进行的最多服务项目/被服务人员类,实现对被服务人员的信息的描述class Service private:int tag; /删除标记 1:已删 0:未删int no; /被服务人员编号char name10; /被服务人员姓名int borProjectMaxbor;/所服务项目 public:Service() char *getname() return name; /获取姓名int gettag() return tag; /获取删除标记 int getno() return no; /获取被服务人员编号 void setname(char na) /设置姓名 strcpy(name,na);void delProject() tag=1; /设置删除标记 1:已删 0:未删void addService(int n,char *na)/增加被服务人员 tag=0;no=n;strcpy(name,na);for(int i=0;iMaxbor;i+)borProjecti=0;void borrowProject(int Projectid)/服务操作for(int i=0;iMaxbor;i+) if (borProjecti=0)borProjecti=Projectid;return;int retProject(int Projectid)/已经服务对象 for(int i=0;iMaxbor;i+) if(borProjecti=Projectid)borProjecti=0;return 1;return 0;void disp()/读出被服务人员信息 cout setw(5) no setw(10) name服务编号:;for(int i=0;iMaxbor;i+)if(borProjecti!=0)cout borProjecti |;cout endl;/被服务人员类库,实现建立被服务人员的个人资料 class RDatabase private: int top; /被服务人员记录指针 Service readMaxr;/被服务人员记录public:RDatabase() /构造函数,将Service.txt读到read中Service s;top=-1;fstream file(Service.txt,ios:in);/打开一个输入文件while (1)file.read(char *)&s,sizeof(s);if (!file)break;top+;readtop=s;file.close(); /关闭 Service.txt void clear()/删除所有被服务人员信息top=-1;int addService(int n,char *na)/添加被服务人员时先查找是否存在Service *p=query(n);if (p=NULL) top+; readtop.addService(n,na); return 1;return 0;Service *query(int Serviceid)/按编号查找for (int i=0;i=top;i+)if (readi.getno()=Serviceid & readi.gettag()=0)return &readi;return NULL;void disp() /输出所有被服务人员信息 for (int i=0;i=top;i+) readi.disp();void Servicedata();/被服务人员库维护RDatabase() /析构函数,将read写到Service.txt文件中fstream file(Service.txt,ios:out); for (int i=0;i=top;i+)if (readi.gettag()=0)file.write(char *)&readi,sizeof(readi);file.close();void RDatabase:Servicedata() char choice;char rname20;int Serviceid;Service *r;while (choice!=0) cout nnttt服 务 维 护nnntt 1 新 增nntt 2 更 改nntt 3 删 除nntt 4 查 找nntt 5 显 示nntt 6 全 删nntt 0 退 出 choice;switch (choice) case 1:cout Serviceid;cout rname;addService (Serviceid,rname);break; case 2:cout Serviceid;r=query(Serviceid);if (r=NULL)cout 该人员不存在 endl; break;cout rname;r-setname(rname); break; case 3: cout Serviceid;r=query(Serviceid);if (r=NULL) cout 该被服务人员不存在 delProject();break;case 4:cout Serviceid;r=query(Serviceid);if (r=NULL)cout 该人员不存在disp();break;case 5:disp();break;case 6:clear();break;default:cout输入错误,请从新输入:;break;/项目类,实现对项目的描述,项目的编号,项目名称等class Projectprivate: int tag;/删除标记 1:已删 0:未删int no;/项目编号char name20;/项目名称int onshelf;/是否再架 1:未服务 2:已服务public:Project()char *getname() return name; /获取姓名int getno() return no; /获取项目编号int gettag() return tag; /获取删除标记void setname(char na)/设置项目名称strcpy(name,na);void delProject() tag=1;/删除项目void addProject(int n,char *na)/增加项目tag=0;no=n;strcpy(name,na);onshelf=1;int borrowProject()/服务操作if (onshelf=1)onshelf=0;return 1;return 0;void retProject()/已服务操作onshelf=1;void disp()/输出项目cout setw(6) no setw(18) name setw(10)(onshelf=1? 欢迎使用本程序:请服务下一位) endl;/项目库类,实现对项目的维护,查找,删除等class BDatabaseprivate: int top; /项目记录指针Project ProjectMaxb; /项目记录public:BDatabase()/构造函数,将Project.txt读到Project中 Project b;top=-1;fstream file(Project.txt,ios:in);while (1)file.read(char *)&b,sizeof(b);if (!file) break;top+;Projecttop=b;file.close(); void clear()/全删top=-1; int addProject(int n,char *na)/增加项目Project *p=query(n);if (NULL=p)top+;Projecttop.addProject(n,na);return 1;return 0;Project *query(int Projectid)/查找项目for (int i=0;i=top;i+)if (Projecti.getno()=Projectid &Projecti.gettag()=0)return &Projecti;return NULL;void Projectdata();/项目库维护void disp() for (int i=0;i=top;i+) if (Projecti.gettag()=0) Projecti.disp();BDatabase()/析构函数,将Project写到Project.txt文件中fstream file(Project.txt,ios:out); for (int i=0;i=top;i+)if (Projecti.gettag()=0)file.write(char *)&Projecti,sizeof(Projecti);file.close();void BDatabase:Projectdata() char choice;char bname40;int Projectid;Project *b;while (choice!=0)cout nnnttt项 目 维 护 endlendl;couttt1 新 增 服 务 项 目n tt2 更 改 服 务 项 目ntt3 删 除 服 务 项 目ntt4 查 找 服 务 项 目ntt5 显 示 服 务 项 目ntt6 全 删ntt0 退 出 choice;switch (choice) case 1:cout 输入项目编号: Projectid; cout 输入项目名称: bname;addProject(Projectid,bname);break; case 2:cout 输入项目编号: Projectid;b=query(Projectid);if (b=NULL)cout 该项目不存在 endl; break;cout 输入新的项目: bname;b-setname(bname); break; case 3: cout 读入项目编号: Projectid;b=query(Projectid);if (b=NULL) cout 该项目不存在 delProject();break;case 4:cout 读入项目编号: Projectid;b=query(Projectid);if (b=NULL)cout 该项目不存在disp();break;case 5:disp();break;case 6:clear();break;default:cout输入错误,请从新输入:;/main() 函数的实现,程序的主界面的引导void main() char choice;int Projectid,Serviceid;RDatabase ServiceDB;Service *r;BDatabase ProjectDB;Project *b;while(choice!=0) cout endlendltt 欢 迎 使 用 售 后 服 务 管 理 系 统nnn; cout ttt1 服 务 nnttt2 维 修 nnttt3 项 目 维 护nnttt4 消 费 者 维 护nnttt0 离 开 choice;switch (choice)case 1:cout Serviceid;cout Projectid;r=ServiceDB.query(Serviceid);/按编号查找if (NULL=r)cout 不存在该被服务人员,不能进行服务 endl;break;b=ProjectDB.query(Projectid);if (b=NULL)cout 不存在该服务项目,请进行下一项服务borrowProject()=0)cout 该项目正在服务,请进行下一项服务borrowProject(b-getno();break;case 2:coutServiceid;cout Projectid;r=S

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论