资源描述
.
#include "stdafx.h"
#include <fstream>
#include <iostream>
#include <string>
#include "time.h"
using namespace std;
void getinfo(); //获取文件信息
void shenfen(); //第二个页面:选择身份
void kehu01(); //客户第一个页面
void kehu02(); //客户第二个页面:服务页面
void yewu01(); //业务员第一个页面
void yewu_fw(); //业务员第二个页面:服务页面
void yewu_xs(); //业务员第三个页面:销售车辆
void yewu_xx(); //业务员第四个页面:客户信息页面
void baoyang(); //业务员第五个页面:此次保养页面
void fen(); //评分函数
void getinfo(); //获取文件信息
void saveinfo(); //保存信息
class Car{
public:
int carnumber;
string type;
int buyyear;
int buymonth;
int buyday;
int salenumber;
}car[100];
class Customer{
public:
string name;
int phonenumber;
string sex;
int salenumber;
}customer[100];
class CarService{
public:
int waxes;//表面打蜡
int lub;//换润滑油
int water;//电瓶加水
int locate;//四轮定位
int estimate;//评价
int serviceyear;
int servivemonth;
int serviceday;
int salenumber;
}carService[100];
class SaleMan{
public:
int salenumber;
int num;
}saleMan[100];
void getinfo(){ //获取文件信息
ifstream customertxt("customer.txt",ios::in);
ifstream cartxt("car.txt",ios::in);
ifstream carservicetxt("carservice.txt",ios::in);
ifstream salemantxt("saleman.txt",ios::in);
while(!customertxt)
{
cout<<"无法打开customer.txt文件"<<endl;
exit(1);
}
while(!cartxt)
{
cout<<"无法打开car.txt文件"<<endl;
exit(1);
}
while(!carservicetxt)
{
cout<<"无法打开carservice.txt文件"<<endl;
exit(1);
}
while(!salemantxt)
{
cout<<"无法打开saleman.txt文件"<<endl;
exit(1);
}
int i=0;
while(customertxt>>customer[i].salenumber>>customer[i].name>>customer[i].phonenumber>>customer[i].sex)
{
i++;
}
i=0;
while(cartxt>>car[i].salenumber>>car[i].carnumber>>car[i].type>>car[i].buyyear>>car[i].buymonth>>car[i].buyday)
{
i++;
}
i=0;
while(carservicetxt>>carService[i].salenumber>>carService[i].waxes>>carService[i].lub>>carService[i].water>>
carService[i].locate>>carService[i].estimate>>carService[i].serviceyear>>carService[i].servivemonth>>
carService[i].serviceday)
{
i++;
}
i=0;
while(salemantxt>>saleMan[i].salenumber>>saleMan[i].num)
{
i++;
}
customertxt.close();
cartxt.close();
carservicetxt.close();
salemantxt.close();
}
void shenfen(){ //第二个页面:选择身份
cout<<"==================================================="<<endl;
cout<<"|| 欢迎您进入本4S店管理系统 ||"<<endl;
cout<<"|| 请选择您的身份: ||"<<endl;
cout<<"|| 1.本店客户 ||"<<endl;
cout<<"|| 2.业务员 ||"<<endl;
cout<<"|| 3.退出管理系统 ||"<<endl;
cout<<"==================================================="<<endl;
int a;
cout<<"您的选择是:";
for(int i=0;;i++){
cin>>a;
if(a==1){kehu01();break;}
else if(a==2){yewu01();break;}
else if(a==3){cout<<"欢迎使用本系统,谢谢您的光临!"<<endl;exit(1);}
else cout<<"输入错误!请从新输入!"<<"\n"<<"您的选择是:"<<endl;
}
}
void kehu01(){ //客户第一个页面
cout<<"==================================================="<<endl;
cout<<"|| 尊敬的客户,请选择服务项目: ||"<<endl;
cout<<"|| 1.输入车牌号码 ||"<<endl;
cout<<"|| 2.返回上一级 ||"<<endl;
cout<<"|| 3.退出管理系统 ||"<<endl;
cout<<"==================================================="<<endl;
int a;
cout<<"您的选择是:";
for(int i=0;;i++){
cin>>a;
if(a==1){kehu02();break;}
else if(a==2){shenfen();break;}
else if(a==3){cout<<"欢迎使用本系统,谢谢您的光临!"<<endl;exit(1);}
else cout<<"输入错误!请从新输入!"<<"\n"<<"您的选择是:"<<endl;
}
}
void kehu02(){ //客户第二个页面:服务页面
int a,b,c,i,j,k=0;
cout<<"请输入您的车牌号码:";
AB:cin>>a;
for(i=0;i<100;i++){
if(a==car[i].carnumber) break;
else k++;
}
if(k==100){cout<<"您输入的车牌号码有误,请重新输入:"; goto AB;}
cout<<"==================================================="<<endl;
cout<<"|| 尊敬的客户,请选择服务项目: ||"<<endl;
cout<<"|| 1.查询车辆信息 ||"<<endl;
cout<<"|| 2.查询上次保养信息 ||"<<endl;
cout<<"|| 3.此次保养评价 ||"<<endl;
cout<<"|| 4.返回上一级 ||"<<endl;
cout<<"|| 5.退出管理系统 ||"<<endl;
cout<<"==================================================="<<endl;
cout<<"您的选择是:";
for(j=0;;j++){
BB:cin>>b;
if(b==1){
cout<<endl;
cout<<"您购买汽车的型号为:"<<car[i].type<<endl;
cout<<"您购买的日期为:"<<car[i].buyyear<<"年"<<car[i].buymonth<<"月"<<car[i].buyday<<"日"<<endl;
cout<<"继续查询请输入1,退出请输入0:";
QQ2:cin>>c;
if(c==1) kehu02();
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ2;}
}
else if(b==2){
cout<<endl;
cout<<"上次保养时间为:"<<carService[i].serviceyear<<"年"<<carService[i].servivemonth<<"月"<<carService[i].serviceday<<"日"<<endl;
cout<<"上次保养的项目有:";
if(carService[i].waxes==1)
cout<<"表面打蜡"<<"\t";
if(carService[i].lub==1)
cout<<"换润滑油"<<"\t";
if(carService[i].water==1)
cout<<"电瓶加水"<<"\t";
if(carService[i].locate==1)
cout<<"四轮定位"<<"\t";
cout<<endl;
cout<<"您上次对业务员的评价为:"<<carService[i].estimate<<"分"<<endl;
cout<<"继续查询请输入1,退出请输入0:";
QQ1:cin>>c;
if(c==1) kehu02();
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ1;}
}
else if(b==3){
int d;
cout<<"请选择您对业务员的评分"<<endl;
cout<<"1分:很不满意"<<endl;
cout<<"2分:不满意"<<endl;
cout<<"3分:一般"<<endl;
cout<<"4分:满意"<<endl;
cout<<"5分:很满意"<<endl;
cout<<"您对此次保养的评价为:";
DD:cin>>d;
if(d==1||d==2||d==3||d==4||d==5){
cout<<"谢谢您的评价!"<<endl;
carService[i].estimate=d;
}
else{
cout<<"输入错误!请从新输入:";
goto DD;
}
cout<<"继续查询请输入1,退出请输入0:";
QQ:cin>>c;
if(c==1) kehu02();
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ;}
}
else if(b==4){kehu01();break;}
else if(b==5){
cout<<endl;
cout<<"欢迎使用本系统,谢谢您的光临!"<<endl;exit(1);
}
else{ cout<<"输入错误!请从新输入:"; goto BB;}
}
}
void yewu01(){ //业务员第一个页面
cout<<"==================================================="<<endl;
cout<<"|| 业务员,您好,请选择服务项目: ||"<<endl;
cout<<"|| 1.输入业务员编号 ||"<<endl;
cout<<"|| 2.返回上一级 ||"<<endl;
cout<<"|| 3.退出管理系统 ||"<<endl;
cout<<"==================================================="<<endl;
int a;
cout<<"您的选择是:";
for(int i=0;;i++){
cin>>a;
if(a==1){yewu_fw();break;}
else if(a==2){shenfen();break;}
else if(a==3){cout<<"欢迎使用本系统,谢谢您的光临!"<<endl;exit(1);}
else cout<<"输入错误!请从新输入!"<<"\n"<<"您的选择是:"<<endl;
}
}
void yewu_fw(){ //业务员第二个页面:服务页面
int a,b,c,i,j,l,k=0;
cout<<"请输入您的工作编号:";
AB:cin>>a;
for(i=0;i<5;i++){
if(a==saleMan[i].salenumber) break;
else k++;
}
if(k==5){cout<<"您输入的工作编号有误,请重新输入:"; goto AB;}
cout<<"==================================================="<<endl;
cout<<"|| 业务员,您好,请选择服务项目: ||"<<endl;
cout<<"|| 1.查询所销售的所有车辆 ||"<<endl;
cout<<"|| 2.输入车牌号,查询信息 ||"<<endl;
cout<<"|| 3.输入车牌号,更新保养信息 ||"<<endl;
cout<<"|| 4.出售车辆 ||"<<endl;
cout<<"|| 5.销售额查询 ||"<<endl;
cout<<"|| 6.返回上一级 ||"<<endl;
cout<<"|| 7.退出管理系统 ||"<<endl;
cout<<"==================================================="<<endl;
cout<<"您的选择是:";
for(j=0;;j++){
cin>>b;
if(b==1){
cout<<endl;
cout<<"车牌号码"<<"\t"<<"型号"<<"\t"<<"销售日期"<<endl;
for(l=0;l<100;l++){
if(saleMan[i].salenumber==car[l].salenumber){
cout<<car[l].carnumber<<"\t\t"<<car[l].type<<"\t"<<car[l].buyyear<<"."<<car[l].buymonth<<"."<<car[l].buyday<<endl;
}
}
cout<<"继续查询请输入1,退出请输入0:";
QQ1:cin>>c;
if(c==1){yewu_fw();}
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ1;}
}
else if(b==2){yewu_xx();break;}
else if(b==4){yewu_xs();break;}
else if(b==3){baoyang();break;}
else if(b==5){
cout<<"业务员编号"<<"\t"<<"销售总量"<<"\t"<<endl;
for(int m=0;m<5;m++){
if(saleMan[m].salenumber)
cout<<saleMan[m].salenumber<<"\t\t"<<saleMan[m].num<<endl;
}
cout<<"继续查询请输入1,退出请输入0:";
QQ2:cin>>c;
if(c==1){yewu_fw();}
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ2;}
}
else if(b==6){yewu01();break;}
else if(b==7){cout<<"欢迎使用本系统,谢谢您的光临!"<<endl;exit(1);}
else cout<<"输入错误!请从新输入!"<<"\n"<<"您的选择是:"<<endl;
}
}
void yewu_xs(){ //业务员第三个页面:销售车辆
cout<<"==================================================="<<endl;
cout<<"|| 业务员,您好,此为销售车辆页面: ||"<<endl;
cout<<"|| 1.输入客户信息 ||"<<endl;
cout<<"|| 2.返回上一级 ||"<<endl;
cout<<"|| 3.退出管理系统 ||"<<endl;
cout<<"==================================================="<<endl;
int a,b;
time_t timep;
struct tm *p;
time(&timep);
p=localtime(&timep); //取得当地时间
cout<<"您的选择是:"<<endl;
for(int i=0;;i++){
AB:cin>>a;
if(a==1){
int carnumber;
string cartype;
string name;
string sex;
int phonenumber;
int salenumber;
int j;
cout<<"请依次输入客户信息:"<<endl;
cout<<"车牌号码:";
cin>>carnumber;
cout<<endl;
cout<<"车辆型号:";
cin>>cartype;
cout<<endl;
cout<<"客户姓名:";
cin>>name;
cout<<endl;
cout<<"客户性别:";
cin>>sex;
cout<<endl;
cout<<"客户电话:";
cin>>phonenumber;
cout<<endl;
cout<<"业务员编号:";
cin>>salenumber;
for(j=0;j<100;j++){
if(!car[j].carnumber) break;
}
car[j].carnumber=carnumber;
car[j].salenumber=salenumber;
car[j].type=cartype;
customer[j].name=name;
customer[j].sex=sex;
customer[j].phonenumber=phonenumber;
customer[j].salenumber=salenumber;
car[j].salenumber=salenumber;
car[j].buyyear=1900+p->tm_year;
car[j].buymonth=1+p->tm_mon;
car[j].buyday=p->tm_mday;
carService[j].salenumber=salenumber;
carService[j].waxes=0;
carService[j].water=0;
carService[j].locate=0;
carService[j].lub=0;
carService[j].estimate=0;
carService[j].serviceyear=1900+p->tm_year;
carService[j].servivemonth=1+p->tm_mon;
carService[j].serviceday=p->tm_mday;
for(int k=0;k<5;k++){
if(saleMan[k].num){
if(saleMan[k].salenumber=salenumber){
saleMan[k].num++;}}
}
saveinfo();
cout<<"信息输入完毕"<<endl;
cout<<"返回上一级请输入1,退出请输入0:";
QQ:cin>>b;
if(b==1){yewu_fw();}
else if(b==0) exit(1);
else {cout<<"输入错误,请重新输入:";goto QQ;}
}
else if(a==2){yewu_fw();break;}
else if(a==3){cout<<"欢迎使用本系统,谢谢您的光临!"<<endl;exit(1);}
else{
cout<<"输入错误!请从新输入!"<<"\n"<<"您的选择是:";
goto AB;
}
}
}
void yewu_xx(){ //业务员第四个页面:客户信息页面
int a,b,c,i,j,k=0;
cout<<"请输入车牌号码:";
AB:cin>>a;
for(i=0;i<100;i++){
if(a==car[i].carnumber) break;
else k++;
}
if(k==100){cout<<"您输入的车牌号码有误,请重新输入:"; goto AB;}
cout<<"==================================================="<<endl;
cout<<"|| 业务员,您好,请选择你要查询的资料: ||"<<endl;
cout<<"|| 1.客户信息 ||"<<endl;
cout<<"|| 2.车辆信息 ||"<<endl;
cout<<"|| 3.上次保养服务 ||"<<endl;
cout<<"|| 4.返回上一级 ||"<<endl;
cout<<"|| 5.退出管理系统 ||"<<endl;
cout<<"==================================================="<<endl;
cout<<"您的选择是:";
for(j=0;;j++){
cin>>b;
if(b==1){
cout<<endl;
cout<<"客户姓名"<<"\t"<<"客户性别"<<"\t"<<"客户电话"<<endl;
cout<<customer[i].name<<"\t\t"<<customer[i].sex<<"\t\t"<<customer[i].phonenumber<<endl;
cout<<"继续查询请输入1,退出请输入0:";
QQ1:cin>>c;
if(c==1) yewu_xx();
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ1;}
}
else if(b==2){
cout<<endl;
cout<<"车辆型号"<<"\t"<<"购买日期"<<endl;
cout<<car[i].type<<"\t\t"<<car[i].buyyear<<"."<<car[i].buymonth<<"."<<car[i].buyday<<endl;
cout<<"继续查询请输入1,退出请输入0:";
QQ2:cin>>c;
if(c==1) yewu_xx();
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ2;}
}
else if(b==3){
cout<<endl;
cout<<"上次保养时间为:"<<carService[i].serviceyear<<"."<<carService[i].servivemonth<<"."<<carService[i].serviceday<<endl;
cout<<"上次保养的项目有:";
if(carService[i].waxes==1)
cout<<"表面打蜡"<<"\t";
if(carService[i].lub==1)
cout<<"换润滑油"<<"\t";
if(carService[i].water==1)
cout<<"电瓶加水"<<"\t";
if(carService[i].locate==1)
cout<<"四轮定位"<<"\t";
cout<<endl;
cout<<"客服评分为:";
cout<<carService[i].estimate<<"分"<<endl;
//当汽车离下次保养剩下一个月的时候提醒业务员
time_t timep;
struct tm *p;
time(&timep);
p=localtime(&timep); //取得当地时间
int w,bm;
w=1+p->tm_mon;
if(car[j].buymonth>0&&car[j].buymonth<10)
{
if(car[j].buymonth+3-w==1)
cout<<"项目:"<<" "<<"离下一次保养只剩一个月了"<<endl;
}
else if(car[j].buymonth<13&&car[j].buymonth>9)
{
bm=car[j].buymonth-9;
if(bm<w)
{
if(w-bm==1)
{
cout<<"项目:"<<" "<<"离下一次保养只剩一个月了"<<endl;
}
}
else
{
if(bm-w==1)
{
cout<<"项目:"<<" "<<"离下一次保养只剩一个月了"<<endl;
}
}
}
cout<<"继续查询请输入1,退出请输入0:";
QQ3:cin>>c;
if(c==1) yewu_xx();
else if(c==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ3;}
}
else if(b==4){yewu_fw();break;}
else if(b==5){cout<<"欢迎使用本系统,谢谢您的光临!"<<endl;exit(1);}
else cout<<"输入错误!请从新输入!"<<"\n"<<"您的选择是:"<<endl;
}
}
void baoyang(){ //业务员第五个页面:此次保养页面
int a,b,i,k=0;
int d1,d2,d3,d4;
cout<<"请输入车牌号码:";
AB:cin>>a;
for(i=0;i<100;i++){
if(a==car[i].carnumber) break;
else k++;
}
if(k==100){cout<<"您输入的车牌号码有误,请重新输入:"; goto AB;}
cout<<"业务员,您好,保养服务如下,如需保养此项目,请在后面输入1,否则输入0"<<endl;
cout<<"1.表面打蜡:";
D1:cin>>d1;
if(d1!=1&&d1!=0){
cout<<"输入错误,请重新输入:";
goto D1;
}
carService[i].waxes=d1;
D2:cout<<"2.换润滑油:";
cin>>d2;
if(d2!=1&&d2!=0){
cout<<"输入错误,请重新输入:"<<endl;
goto D2;
}
carService[i].lub=d2;
D3:cout<<"3.电瓶加水:";
cin>>d3;
if(d3!=1&&d3!=0){
cout<<"输入错误,请重新输入:"<<endl;
goto D3;
}
carService[i].water=d3;
D4:cout<<"4.四轮定位:";
cin>>d4;
if(d4!=1&&d4!=0){
cout<<"输入错误,请重新输入:"<<endl;
goto D4;
}
carService[i].locate=d4;
cout<<endl;
saveinfo();
cout<<"信息输入完毕,返回上一级请输入1,退出请输入0:";
QQ:cin>>b;
if(b==1) yewu_fw();
else if(b==0) exit(1);
else { cout<<"输入错误,请重新输入:"; goto QQ;}
}
void saveinfo(){
ofstream customertxt("customer.txt",ios::out);
ofstream cartxt("car.txt",ios::out);
ofstream carservicetxt("carservice.txt",ios::out);
ofstream salemantxt("saleman.txt",ios::out);
for(int i=0;i<100;i++){
if(customer[i].salenumber){
custo
展开阅读全文