Project:Cainiao_Estation

This commit is contained in:
e2hang
2025-08-11 00:20:16 +08:00
parent 5e70ee5bb3
commit 240cf86644
15 changed files with 841 additions and 0 deletions

217
Cai_Niao_E_Station/main.cpp Normal file
View File

@@ -0,0 +1,217 @@
/*
Developed By
...:::^^^^^^^^^:::..
.::^^~~~~~~~~~~~~~~~~~^::..
.:~?JYY?~^~^^^^^^^~~~~~~~~?YYJ?!:.
.:!7!!!7J5!^^^^^^^^^^^^~^!5Y7!!!7!^:.
.:^~~~~^^^^~7^^^^^^^^^^^^^^7!^~~~~~~~~:.
.:~!!^::::::::^^::::::::^^^!!^::::^^^~~~^:.
.:::5GGY. ..::::::^::YGG5. .^^:.
.^:.7YY7:::::::....::..::^..!YY?^:^^:::....^~:.
:~~~^^^^~~^^^:::::......:::^:^^^~~~~~~~~~~~!~^.
.:~~~~~~~~~~^^:::........:::::^^^~~~~~~~~~~~!~^:
.^~~~~~~^^^^^^:::::::::::::::^^^^^~~~~~~~~~~!~^:
.^~~~~~~^^^^^^^::::::::::::^^^^^^^~~~~~~~~~~!~^:
.:~~~~~7!^^^^^^^^^^^:::^^^^^^^^^~~~~~~~7!~~!!~^.
.^~~~~!J!^^^^^^^^^^^^^^^^^^^^~~~~~~~~?J~~!!!~:.
.:^~~~~!Y?~^^~~^^^^^^^^^^^~~~~~~~~~7YJ!~!!!~^.
.:^~~~~~J5J7~~^^^^~~~~~~~~~~~~~!?YY?~~!!!~^.
.:^~~~~~!?Y55J?7!!~~~~~~!77JY55Y7~~!!!~~:.
.:^~~~~~~!7JY555P5555P555Y?7!~~!!!!~^:.
.:^~~!~~~~~~~!!!!!!!!~~~~~!!!!~~^:.
.::^~~!!!!!~~~~~~!!!!!!!!~~^:..
..:^^~~~~~~!!!~~~~~^^::..
....:::::::::...
*/
#include <iostream>
#include <cstring>
#include <stdexcept>
#include "package.h"
#include "user.h"
#include "stock.h"
#include "delivery_method.h"
#include "exception.h"
#define Endl std::endl
//Exception E;
Package* k;
User* p;
std::string Crypt(std::string x, std::string y);
using std::cin;
using std::cout;
using std::endl;
using std::string;
extern Stock cainiao[10];
extern User temp;
extern void PRINT_LIU_YING();
int main() {
//<2F><>printһ<74>£<EFBFBD><C2A3><EFBFBD><EFBFBD><EFBFBD>
//PRINT_LIU_YING();
//<2F><>ʼ<EFBFBD><CABC><EFBFBD><EFBFBD>Ա<EFBFBD>б<EFBFBD>
p = new User[20];
p[1].reg("Zhang", "111111198301", "000011");
p[2].reg("Wang", "12211198301", "000012");
p[3].reg("Li", "13311198301", "000013");
p[4].reg("Zhao", "14411198301", "000014");
p[5].reg("Sun", "15511198301", "000015");
p[6].reg("Zhou", "16611198301", "000016");
p[7].reg("Xu", "17711198301", "000017");
p[8].reg("Wan", "18811198301", "000018");
p[9].reg("Liu", "19911198301", "000019");
p[10].reg("Su", "10011198301", "000020");
p[11].reg("Green", "10111198301", "000021");
//<2F><><EFBFBD>ԣ<EFBFBD><D4A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֻ<EFBFBD><D6BB><EFBFBD><EFBFBD>Ƿ<EFBFBD>Ϊ11λ<31><CEBB><EFBFBD><EFBFBD>
/*<2A>ɰ<EFBFBD>
try {
std::string test01, test02, test03;
test01 = "ERROR";
test02 = "98301";
test03 = "000022";
p[12].reg(test01, test02, test03);
if (test02.size() != 11) {
throw E.User_Phone_Number_Error();
delete &p[12];
}
}
catch (const std::string& x) {
cout << x << endl;
}*/
//<2F>°<EFBFBD>
try {
std::string test01, test02, test03;
test01 = "ERROR";
test02 = "98301";
test03 = "000022";
p[12].reg(test01, test02, test03);
if (test02.size() != 11) {
throw Etest::User_Phone_Number_Error();
delete& p[12];
}
}
catch (const std::runtime_error& x) {
cout << x.what() << endl;
}
k = new Package[TOTAL0];
k[1] = Package("Dildo", "pid1919810", "2025-05-08-00-00-00", "2025-05-09-10-00-00", &temp, 5.4, 10.0, 10.3, false);
k[2] = Package("Clothes", "10002", "2025-05-06-14-15-00", "2025-05-08-11-30-00", &p[2], 1.5, 8.0, 5.6, false);
k[3] = Package("Laptop", "10003", "2025-05-05-10-00-00", "2025-05-06-09-20-00", &p[3], 3.0, 15.0, 20.2, false);
k[4] = Package("Shoes", "10004", "2025-05-07-16-00-00", "2025-05-09-08-00-00", &p[4], 2.8, 9.5, 6.1, false);
k[5] = Package("Snacks", "10005", "2025-05-08-09-45-00", "2025-05-09-14-00-00", &p[5], 1.2, 5.0, 3.7, false);
k[6] = Package("Monitor", "10006", "2025-05-06-11-20-00", "2025-05-07-10-10-00", &p[6], 6.5, 20.0, 18.9, false);
k[7] = Package("Tablet", "10007", "2025-05-07-13-50-00", "2025-05-08-17-00-00", &p[3], 1.8, 14.0, 10.5, false);
k[8] = Package("Camera", "10008", "2025-05-05-07-30-00", "2025-05-06-08-00-00", &p[3], 2.6, 11.0, 9.2, false);
k[9] = Package("Glasses", "10009", "2025-05-06-12-00-00", "2025-05-07-15-30-00", &p[9], 0.8, 4.0, 2.0, false);
k[10] = Package("Headphones", "10010", "2025-05-08-10-00-00", "2025-05-09-13-00-00", &p[10], 1.1, 6.0, 4.4, false);
k[11] = Package("Books", "10011", "2025-05-07-08-30-00", "2025-05-08-10-00-00", &p[1], 2.3, 12.5, 8.0, false);
//<2F><><EFBFBD><EFBFBD><EFBFBD>û<EFBFBD>ϵͳ
cout << "Display User :" << endl;
temp.display();
p[2].display();
cout << "Alter p2" << Endl;
p[2].alt_name("W..");
p[2].alt_pn("110");
p[2].display();
cout << "<EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD>" << endl;
cout << endl;
//<2F><><EFBFBD>԰<EFBFBD><D4B0><EFBFBD><EFBFBD><EFBFBD><E6B4A2>վ<EFBFBD><D5BE><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EEBEAF>
cout << "<EFBFBD><EFBFBD><EFBFBD>⣺ Stock k1 ~ k11 to Stock0, Stock1" << Endl;
cainiao[0].inStock(k[1]);
cainiao[0].inStock(k[2]);
cainiao[0].inStock(k[3]);
cainiao[0].inStock(k[4]);
cainiao[0].inStock(k[5]);
cainiao[0].inStock(k[6]);
cainiao[0].inStock(k[7]);
cainiao[0].inStock(k[8]);
cainiao[0].inStock(k[9]);
cainiao[1].inStock(k[10]);
cainiao[1].inStock(k[11]);
cout << "<EFBFBD>Ѵ<EFBFBD><EFBFBD><EFBFBD>" << Endl;
cout << "չʾ<EFBFBD><EFBFBD><EFBFBD>棺DisPlay Stock" << Endl;
for (int i = 0;i < 10;i++) {
cout << *(cainiao[0].Check_ProductAll() + i) << " ";
}
cout << Endl;
for (int i = 0;i < 10;i++) {
cout << *(cainiao[1].Check_ProductAll() + i) << " ";
}
cout << endl;
cout << "<EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD>" << endl;
//<2F><><EFBFBD><EFBFBD>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD>Ӧ
//k1.display();
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ķ<EFBFBD>Ӧ" << Endl;
k[1].create_vc();
string Code = Crypt(temp.Check_uid(), k[1].Check_pid());
k[1].verifing(Code, "2025-05-10-10-00-00");
k[1].display();
cout << endl;
cout << "չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << Endl;
for (int i = 0;i < 10;i++) {
cout << *(cainiao[0].Check_ProductAll() + i) << " ";
}
cout << Endl;
for (int i = 0;i < 10;i++) {
cout << *(cainiao[1].Check_ProductAll() + i) << " ";
}
cout << Endl;
//<2F><><EFBFBD><EFBFBD>Stock<63><6B><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><D0A1><EFBFBD>ϼӣ<CFBC>
cout << "<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Stock<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>С<EFBFBD><EFBFBD><EFBFBD>ϼӣ<EFBFBD>" << endl;
cainiao[0].inStock(k[1]);
for (int i = 0;i < 10;i++) {
cout << *(cainiao[0].Check_ProductAll() + i) << " ";
}
cout << Endl;
for (int i = 0;i < 10;i++) {
cout << *(cainiao[1].Check_ProductAll() + i) << " ";
}
cout << "<EFBFBD><EFBFBD><EFBFBD>Խ<EFBFBD><EFBFBD><EFBFBD>" << endl;
cout << Endl;
//<2F><>ѯ<EFBFBD>û<EFBFBD><C3BB>İ<EFBFBD><C4B0><EFBFBD>
cout << "<EFBFBD><EFBFBD><EFBFBD>Բ<EFBFBD>ѯ<EFBFBD>û<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>" << Endl;
int dw = 3;
cout << " <09><>չʾ<D5B9>û<EFBFBD><C3BB><EFBFBD>Ϣ" << endl;
p[dw].display();
cout << "<EFBFBD><EFBFBD>չʾ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϣ" << Endl;
k[3].display();
cout << "<EFBFBD><EFBFBD><EFBFBD>ʼ<EFBFBD><EFBFBD>ѯ" << Endl;
Package* pkgs = p[dw].Check_Package();
for (int i = 0;i < TOTAL0 - 1;i++){
if(pkgs[i].Check_pid() != "#UNDEFINED_P:P" )
cout << pkgs[i].Check_pid() << " ";
}
cout << Endl;
//<2F><>ѯ<EFBFBD><D1AF><EFBFBD><EFBFBD>״̬<D7B4><CCAC>ӵ<EFBFBD><D3B5><EFBFBD><EFBFBD>
k[2].display();
//<2F><><EFBFBD>Ը<EFBFBD><D4B8><EFBFBD>ϵͳ
cout << "Test Over" << endl;
return 0;
}