Project:Cainiao_Estation
This commit is contained in:
135
Cai_Niao_E_Station/user.cpp
Normal file
135
Cai_Niao_E_Station/user.cpp
Normal file
@@ -0,0 +1,135 @@
|
||||
#include <iostream>
|
||||
#include <cstring>
|
||||
#include "package.h"
|
||||
#include "user.h"
|
||||
#include "stock.h"
|
||||
|
||||
class Package;
|
||||
class Stock;
|
||||
|
||||
extern Stock cainiao[STOCK_NUM];
|
||||
extern Package* k;
|
||||
|
||||
//Package package_num();//<2F><>Package<67><65>
|
||||
|
||||
User::User() {
|
||||
name = "#UNDEFINED_N";
|
||||
phone_num = "#UNDEFINED_P";
|
||||
uid = "#UNDEFINED_U";
|
||||
jingyan = -1;
|
||||
}
|
||||
User::User(std::string n, std::string p, std::string u) {
|
||||
name = n;
|
||||
phone_num = p;
|
||||
uid = u;
|
||||
jingyan = 0;
|
||||
}
|
||||
|
||||
|
||||
User& User::reg(std::string n, std::string p, std::string u) {
|
||||
name = n;
|
||||
phone_num = p;
|
||||
uid = u;
|
||||
jingyan = 0;
|
||||
if (p.size() == 11) cout << n + ", Your are registered!" << endl;
|
||||
else
|
||||
{
|
||||
cout << "Hello " + n + " ";
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
User& User::alt_name(string n) {
|
||||
name = n;
|
||||
cout << "Name altered to " + n << endl;
|
||||
return *this;
|
||||
}
|
||||
User& User::alt_pn(string p) {
|
||||
phone_num = p;
|
||||
cout << "Phone Number altered to " + p << endl;
|
||||
return *this;
|
||||
}
|
||||
void User::del() {
|
||||
name = "#DELETED_" + name;
|
||||
phone_num = "#DELETED_" + phone_num;
|
||||
uid = "#DELETED_" + uid;
|
||||
cout << "User Deleted" << endl;
|
||||
}
|
||||
void User::display() {
|
||||
cout << " Name :" + name << endl;
|
||||
cout << " Phone Number: " + phone_num << endl;
|
||||
cout << " uid :" + uid << endl;
|
||||
}
|
||||
std::string User::Check_uid() {
|
||||
return uid;
|
||||
}
|
||||
std::string User::Check_name() {
|
||||
return name;
|
||||
}
|
||||
|
||||
std::string User::Check_phone() {
|
||||
return phone_num;
|
||||
}
|
||||
User& User::operator=(const User& x) {
|
||||
name = x.name;
|
||||
phone_num = x.phone_num;
|
||||
uid = x.uid;
|
||||
jingyan = x.jingyan;
|
||||
return *this;
|
||||
}
|
||||
bool User::operator==(const User& x) {
|
||||
if (name == x.name &&
|
||||
phone_num == x.phone_num &&
|
||||
uid == x.uid &&
|
||||
jingyan == x.jingyan
|
||||
)
|
||||
return true;
|
||||
else
|
||||
return false;
|
||||
}
|
||||
Package* User::Check_Package() {
|
||||
Package *tp = new Package [TOTAL0];
|
||||
int cnt = 0;
|
||||
cout << "Chekcing Packages" << endl;
|
||||
for (int i = 0;i < TOTAL0; i++) {
|
||||
//extern k[i]<5D><><EFBFBD><EFBFBD><EFBFBD>⣬<EFBFBD><E2A3AC>ѯϵͳ<CFB5><CDB3><EFBFBD><EFBFBD>ȷ<EFBFBD><C8B7>
|
||||
if (*(k[i].Check_User()) == *this) {
|
||||
tp[cnt] = k[i];
|
||||
//cout << "YES" << endl;
|
||||
cnt++;
|
||||
}
|
||||
}
|
||||
if (cnt == 0) {
|
||||
cout << "û<EFBFBD>в<EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << endl;
|
||||
}
|
||||
return tp;
|
||||
}
|
||||
|
||||
User& User::add_exp(int s) {
|
||||
jingyan += s;
|
||||
return *this;
|
||||
}
|
||||
User& User::refresh() {
|
||||
if (jingyan >= 100) {
|
||||
VIP* temp = new VIP;
|
||||
temp->reg(*this);
|
||||
return *temp;
|
||||
}
|
||||
return *this;
|
||||
}
|
||||
|
||||
|
||||
VIP::VIP() {
|
||||
flag = true;
|
||||
}
|
||||
|
||||
VIP::VIP(User& x,bool f) : User(x.Check_name(), x.Check_phone(),x.Check_uid()) {
|
||||
flag = f;
|
||||
}
|
||||
|
||||
VIP& VIP::reg(User& x){
|
||||
flag = true;
|
||||
return *this;
|
||||
}
|
||||
User::~User() {
|
||||
//delete[] temp;
|
||||
}
|
Reference in New Issue
Block a user