By GokiSoft.com|
08:52 13/10/2021|
C Sharp
[Video] Bài tập - Viết chương trình quản lý tiêm chủng Vacxin COVID-19 - Lập trình C Sharp nâng cao - C2010G
#Utility.cs
using System;
namespace BT2466
{
public class Utility
{
public static DateTime ConvertStringToDateTime(string str)
{
DateTime myDate = DateTime.ParseExact(str, "yyyy-MM-dd",
System.Globalization.CultureInfo.InvariantCulture);
return myDate;
}
public static string ConvertDateTimeToString(DateTime myDate)
{
return myDate.ToString("yyyy-MM-dd");
}
public static int ReadInt()
{
int value;
while (true)
{
try
{
value = int.Parse(Console.ReadLine());
return value;
}
catch (Exception e)
{
Console.WriteLine("Nhap lai!!!");
}
}
}
}
}
#Record.cs
using System;
namespace BT2466
{
public class Record
{
public string Fullname { get; set; }
public string Cmtnd { get; set; }
public string PhoneNumber { get; set; }
public string Address { get; set; }
public DateTime VacxinDate { get; set; }
public string VacxinAddress { get; set; }
public string VacxinNam { get; set; }
public Record()
{
}
public Record(string fullname, string cmtnd, string phoneNumber, string address, DateTime vacxinDate, string vacxinAddress, string vacxinNam)
{
Fullname = fullname;
Cmtnd = cmtnd;
PhoneNumber = phoneNumber;
Address = address;
VacxinDate = vacxinDate;
VacxinAddress = vacxinAddress;
VacxinNam = vacxinNam;
}
public void Input()
{
Console.WriteLine("===== Nhap thong tin tiem chung");
Console.WriteLine("Nhap ten: ");
Fullname = Console.ReadLine();
Console.WriteLine("Nhap CMTND: ");
Cmtnd = Console.ReadLine();
Console.WriteLine("Nhap SDT: ");
PhoneNumber = Console.ReadLine();
Console.WriteLine("Nhap dia chi: ");
Address = Console.ReadLine();
Console.WriteLine("Nhap ngay tiem (yyyy-MM-dd): ");
string VacxinDateStr = Console.ReadLine();
VacxinDate = Utility.ConvertStringToDateTime(VacxinDateStr);
Console.WriteLine("Nhap dia chi tiem: ");
VacxinAddress = Console.ReadLine();
Console.WriteLine("Nhap ten vacxin: ");
VacxinNam = Console.ReadLine();
}
public void Display()
{
Console.WriteLine("Ten: {0}, cmntd: {1}, sdt: {2}, dia chi: {3}, " +
"ngay tiem: {4}, dia chi tiem: {5}, ten vacxin: {6}", Fullname,
Cmtnd, PhoneNumber, Address, Utility.ConvertDateTimeToString(VacxinDate),
VacxinAddress, VacxinNam);
}
}
}
#Program.cs
using System;
using System.Collections.Generic;
namespace BT2466
{
class Program
{
static List<Record> recordList;
static void Main(string[] args)
{
recordList = new List<Record>();
int choose;
do
{
ShowMenu();
choose = Utility.ReadInt();
switch(choose)
{
case 1:
Input();
break;
case 2:
Display();
break;
case 3:
FindByCmntd();
break;
case 4:
SaveFile();
break;
case 5:
ReadFile();
break;
case 6:
Console.WriteLine("Thoat!!!");
break;
default:
Console.WriteLine("Nhap sai!!!");
break;
}
} while (choose != 6);
}
static void ReadFile()
{
//Doc noi dung file -> json
string json = System.IO.File.ReadAllText(@"db.json");
//Chuyen json string sang List
recordList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Record>>(json);
Console.WriteLine("Doc thanh cong!!!");
}
static void SaveFile()
{
//Chuyen List -> json string
string json = Newtonsoft.Json.JsonConvert.SerializeObject(recordList);
//Save File
System.IO.File.WriteAllText(@"db.json", json);
Console.WriteLine("Luu thanh cong!!!");
}
/**
* TH: con dan -> tiem 2 mui (khoang cach 2 mui tiem > 14)
*/
static void FindByCmntd()
{
Console.WriteLine("Nhap CMTND can kiem tra: ");
string cmtnd = Console.ReadLine();
DateTime lastDateTime = DateTime.Now;
int count = 0;
foreach(Record record in recordList)
{
if(record.Cmtnd == cmtnd)
{
if(count == 0)
{
lastDateTime = record.VacxinDate;
} else
{
if(record.VacxinDate > lastDateTime)
{
lastDateTime = record.VacxinDate;
}
}
count++;
}
}
DateTime dateTime = DateTime.Now.AddDays(-14);
if(count >= 2 && lastDateTime <= dateTime)
{
Console.WriteLine("Cmtnd: {0}, so mui tiem: {1}, The Xanh", cmtnd, count);
} else if(count == 2 && lastDateTime > dateTime)
{
Console.WriteLine("Cmtnd: {0}, so mui tiem: {1}, The Vang", cmtnd, count);
} else if(count == 1 && lastDateTime <= dateTime)
{
Console.WriteLine("Cmtnd: {0}, so mui tiem: {1}, The Vang", cmtnd, count);
} else if(count == 1 && lastDateTime > dateTime)
{
Console.WriteLine("Cmtnd: {0}, so mui tiem: {1}, Normal", cmtnd, count);
} else
{
Console.WriteLine("Cmtnd: {0}, Chua dc tiem chung", cmtnd);
}
}
static void Display()
{
Console.WriteLine("=== Hien thi danh sach ban ghi");
foreach(Record record in recordList)
{
record.Display();
}
}
static void Input()
{
Console.WriteLine("Nhap so ban ghi can them N = ");
int N = Utility.ReadInt();
for(int i=0;i<N;i++)
{
Record record = new Record();
record.Input();
recordList.Add(record);
}
}
static void ShowMenu()
{
Console.WriteLine("1. Nhap n ban ghi");
Console.WriteLine("2. Hien thi");
Console.WriteLine("3. Tim theo cmtnd");
Console.WriteLine("4. Save db.json");
Console.WriteLine("5. Read db.json");
Console.WriteLine("6. Thoat");
Console.WriteLine("Chon: ");
}
}
}
Tags:
Phản hồi từ học viên
5
(Dựa trên đánh giá ngày hôm nay)