kindlebox/Kindlebox/AddRabbitForm.cs

335 lines
11 KiB
C#

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace Kindlebox
{
public partial class AddRabbitForm : Form
{
public string rabbitR;
public int listIndex;
public string nextRel;
public Guid rabbitID = Guid.Empty;
public int status;
public DateTime dateOfBirth;
public AddRabbitForm(string rabbit)
{
InitializeComponent();
rabbitR = rabbit;
string[] relationships = { "root", "sire", "dam", "ssire", "sdam", "dsire", "ddam", "sssire", "ssdam", "sdsire", "sddam", "dssire", "dsdam", "ddsire", "dddam" };
List<string> rabbitRel = new List<string>(relationships);
}
private void AddRabbitForm_Load(object sender, EventArgs e)
{
string[] relationships = { "root", "sire", "dam", "ssire", "sdam", "dsire", "ddam", "sssire", "ssdam", "sdsire", "sddam", "dssire", "dsdam", "ddsire", "dddam" };
List<string> rabbitRel = new List<string>(relationships);
if (rabbitR == "root")
{
cbRabbitOwned.Checked = true;
}
else
{
munWeight.Value = 4;
}
if (rabbitR == "sire" || rabbitR == "ssire" || rabbitR == "sssire" || rabbitR == "sdsire" || rabbitR == "dsire" || rabbitR == "dssire" || rabbitR == "ddsire")
{
cbSex.Text = "Buck";
}
else if (rabbitR == "dam" || rabbitR == "sdam" || rabbitR == "ssdam" || rabbitR == "sddam" || rabbitR == "ddam" || rabbitR == "dsdam" || rabbitR == "dddam")
{
cbSex.Text = "Doe";
}
listIndex = rabbitRel.FindIndex(a => a.Contains(rabbitR));
}
private void SaveRabbit(Guid _rabbitID)
{
if (_rabbitID == Guid.Empty)
{
rabbitID = Guid.NewGuid();
if (rabbitR == "root")
{
AddRabbitPedigree.rootID = rabbitID;
if (cbRabbitOwned.Checked)
{
status = 0;
}
else
{
status = 4;
}
}
else if (rabbitR == "sire")
{
AddRabbitPedigree.sireID = rabbitID;
status = 4;
}
else if (rabbitR == "dam")
{
AddRabbitPedigree.damID = rabbitID;
status = 4;
}
else if (rabbitR == "ssire")
{
AddRabbitPedigree.ssireID = rabbitID;
status = 4;
}
else if (rabbitR == "sssire")
{
AddRabbitPedigree.sssireID = rabbitID;
status = 4;
}
else if (rabbitR == "ssdam")
{
AddRabbitPedigree.ssdamID = rabbitID;
status = 4;
}
else if (rabbitR == "sdam")
{
AddRabbitPedigree.sdamID = rabbitID;
status = 4;
}
else if (rabbitR == "sdsire")
{
AddRabbitPedigree.sdsireID = rabbitID;
status = 4;
}
else if (rabbitR == "sddam")
{
AddRabbitPedigree.sddamID = rabbitID;
status = 4;
}
else if (rabbitR == "dsire")
{
AddRabbitPedigree.dsireID = rabbitID;
status = 4;
}
else if (rabbitR == "ddam")
{
AddRabbitPedigree.ddamID = rabbitID;
status = 4;
}
else if (rabbitR == "dssire")
{
AddRabbitPedigree.dssireID = rabbitID;
status = 4;
}
else if (rabbitR == "dsdam")
{
AddRabbitPedigree.dsdamID = rabbitID;
status = 4;
}
else if (rabbitR == "ddsire")
{
AddRabbitPedigree.ddsireID = rabbitID;
status = 4;
}
else if (rabbitR == "dddam")
{
AddRabbitPedigree.dddamID = rabbitID;
status = 4;
}
if (cbDOBUnknwon.Checked == true)
{
dateOfBirth = DateTime.Parse("01/01/2000");
}
else
{
dateOfBirth = dateTimePicker1.Value;
}
var rabbitName = tbRabbitName.Text;
if (rabbitName.EndsWith("'s")) {
string[] rabbitNameA = rabbitName.Split('\'');
rabbitName = rabbitNameA[0];
}
Rabbit rabbit = new Rabbit(rabbitID, tbFarmName.Text, rabbitName, tbEarNum.Text, tbColor.Text, tbRegNum.Text, tbGCNum.Text, munWeight.Value, dateOfBirth, cbSex.Text, status);
RabbitList.rabbits.Add(rabbit);
}
else
{
rabbitID = _rabbitID;
if (rabbitR == "root")
{
AddRabbitPedigree.rootID = rabbitID;
if (cbRabbitOwned.Checked)
{
status = 0;
}
else
{
status = 4;
}
}
else if (rabbitR == "sire")
{
AddRabbitPedigree.sireID = rabbitID;
status = 4;
}
else if (rabbitR == "dam")
{
AddRabbitPedigree.damID = rabbitID;
status = 4;
}
else if (rabbitR == "ssire")
{
AddRabbitPedigree.ssireID = rabbitID;
status = 4;
}
else if (rabbitR == "sssire")
{
AddRabbitPedigree.sssireID = rabbitID;
status = 4;
}
else if (rabbitR == "ssdam")
{
AddRabbitPedigree.ssdamID = rabbitID;
status = 4;
}
else if (rabbitR == "sdam")
{
AddRabbitPedigree.sdamID = rabbitID;
status = 4;
}
else if (rabbitR == "sdsire")
{
AddRabbitPedigree.sdsireID = rabbitID;
status = 4;
}
else if (rabbitR == "sddam")
{
AddRabbitPedigree.sddamID = rabbitID;
status = 4;
}
else if (rabbitR == "dsire")
{
AddRabbitPedigree.dsireID = rabbitID;
status = 4;
}
else if (rabbitR == "ddam")
{
AddRabbitPedigree.ddamID = rabbitID;
status = 4;
}
else if (rabbitR == "dssire")
{
AddRabbitPedigree.dssireID = rabbitID;
status = 4;
}
else if (rabbitR == "dsdam")
{
AddRabbitPedigree.dsdamID = rabbitID;
status = 4;
}
else if (rabbitR == "ddsire")
{
AddRabbitPedigree.ddsireID = rabbitID;
status = 4;
}
else if (rabbitR == "dddam")
{
AddRabbitPedigree.dddamID = rabbitID;
status = 4;
}
}
}
private void bSave_Click(object sender, EventArgs e)
{
SaveRabbit(rabbitID);
this.Close();
}
private void bVerifyRabbit_Click(object sender, EventArgs e)
{
if (tbFarmName.Text == "" || tbRabbitName.Text == "")
{
MessageBox.Show("You must input both a Farm Name and Rabbit Name to check if the rabbit already exists in your rabbitry file.");
}
List<Rabbit> r = new List<Rabbit>(RabbitList.rabbits.FindAll(rabbit => rabbit.FarmName == tbFarmName.Text && rabbit.RabbitName == tbRabbitName.Text));
foreach(Rabbit i in r)
{
Console.WriteLine(i.ToString());
}
if (r.Count > 0)
{
rabbitID = r[0].RabbitID;
tbFarmName.Text = r[0].FarmName;
tbRabbitName.Text = r[0].RabbitName;
tbEarNum.Text = r[0].EarNumber;
tbColor.Text = r[0].Color;
tbRegNum.Text = r[0].RegNumber;
tbGCNum.Text = r[0].GCNumber;
munWeight.Value = r[0].Weight;
dateTimePicker1.Value = r[0].Birthday;
cbSex.Text = r[0].Sex;
tbEarNum.Enabled = false;
cbSex.Enabled = false;
tbColor.Enabled = false;
tbRegNum.Enabled = false;
tbGCNum.Enabled = false;
munWeight.Enabled = false;
dateTimePicker1.Enabled = false;
//AddRabbitPedigree.rabbitExists = true;
MessageBox.Show(r[0].FarmName + "'s " + r[0].RabbitName + " is already in your rabbitry file.");
}
else
{
MessageBox.Show(tbFarmName.Text + "'s " + tbRabbitName.Text + " does not exist in your rabbitry file. Continue filling out the form to add them.");
}
}
private void bVerifyRabbit_MouseHover(object sender, EventArgs e)
{
ToolTip toolTip = new ToolTip();
toolTip.SetToolTip(this.bVerifyRabbit, "Click to verify if the rabbit already exists.");
}
private void tbFarmName_MouseHover(object sender, EventArgs e)
{
ToolTip toolTip = new ToolTip();
toolTip.SetToolTip(this.tbFarmName, "Don't add the 's to the end, it will be added for you.");
}
private void cbDOBUnknwon_CheckedChanged(object sender, EventArgs e)
{
dateTimePicker1.Enabled = false;
}
}
}