private void buttonPrincipalSet_Click(object sender, EventArgs e) { string errorMsg = ""; PrincipalAndVice viceP = new PrincipalAndVice(); viceP.AgentID = Connection.Instance.GetAgentID(comboBoxVicePrincipalName.Text); viceP.BranchID = Connection.Instance.GetBranchIDFromName(comboBoxVicePrincipalBranchName.Text); viceP.DateSelected = dateTimePickerPrincipalDateJoinend.Value; int counter = 0; if (!Connection.Instance.IsBranchExist(viceP.BranchID)) { counter++; errorMsg += "\n" + counter.ToString() + ". Branch name does not exist"; } if (!Connection.Instance.IsAgentExists(viceP.AgentID)) { counter++; errorMsg += "\n" + counter.ToString() + ". Agent name does not exist"; } if (new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(viceP.BranchID, PrincipalOrVice.Principal)).AgentID == viceP.AgentID) { counter++; errorMsg += "\n" + counter.ToString() + ". Agent is a principal, please choose another agent"; } if (comboBoxPrincipalName.Text == "") { counter++; errorMsg += "\n" + counter.ToString() + ". Please fill Agent name"; } if (comboBoxPrincipalBranchName.Text == "") { counter++; errorMsg += "\n" + counter.ToString() + ". Please fill Branch name"; } if (counter > 0) { MessageBox.Show(errorMsg); tabControlPrincipalAndVice_SelectedIndexChanged(sender, e); return; } Connection.Instance.UpdatePrincipalOrVice(viceP.GetPrincipalOrViceData(), PrincipalOrVice.VicePrincipal); tabControlPrincipalAndVice_SelectedIndexChanged(sender, e); }
/// <summary> /// fill the principal or vice data /// </summary> /// <param name="tabPage"></param> /// <param name="branchName"></param> /// <param name="type"></param> void FillPrincipalOrViceData(ref MetroTabPage tabPage, string branchName, PrincipalOrVice type) { PrincipalAndVice tempData; tempData = new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(Connection.Instance.GetBranchIDFromName(branchName), type)); if (type == PrincipalOrVice.Principal) { comboBoxPrincipalName.GetComboBoxAutoFillData(Connection.Instance.GetAgentNamesInBranch(Connection.Instance.GetBranchIDFromName(comboBoxPrincipalBranchName.Text))); } else { comboBoxVicePrincipalName.GetComboBoxAutoFillData(Connection.Instance.GetAgentNamesInBranch(Connection.Instance.GetBranchIDFromName(comboBoxVicePrincipalBranchName.Text))); } AutoFillPrincipalOrViceData(ref tabPage, tempData); }
/// <summary> /// auto fill principal and vice data /// </summary> /// <param name="tabPage"></param> /// <param name="data"></param> void AutoFillPrincipalOrViceData(ref MetroTabPage tabPage, PrincipalAndVice data) { foreach (var i in tabPage.Controls) { if (i is TextBox) { } else if (i is ComboBox) { ComboBox temp = (ComboBox)i; if (temp.Name == "comboBoxPrincipalName" || temp.Name == "comboBoxVicePrincipalName") { temp.SelectedItem = Connection.Instance.GetAgentName(data.AgentID); } else if (temp.Name == "comboBoxPrincipalBranchName" || temp.Name == "comboBoxVicePrincipalBranchName") { temp.SelectedItem = Connection.Instance.GetBranchNameFromID(data.BranchID); } } else if (i is MyTextBox) { MyTextBox temp = (MyTextBox)i; temp.Text = ""; } else if (i is Label) { Label temp = (Label)i; if (temp.Name == "labelPrincipalDateJoined" || temp.Name == "labelVicePrincipalDateJoined") { temp.Text = data.DateSelected.ToString("dddd, dd - MMM - yyyy"); } } else if (i is BunifuDatepicker) { BunifuDatepicker temp = (BunifuDatepicker)i; if (temp.Name == "dateTimePickerPrincipalDateJoinend" || temp.Name == "dateTimePickerVicePrincipalDateJoined") { temp.Value = data.DateSelected; } } } }
/// <summary> /// inserting the closing, agent closing, and commission /// </summary> /// <param name="sender"></param> /// <param name="e"></param> private void buttonInsertComissionSave_Click(object sender, EventArgs e) { double temp = 0; double temp2 = 0; for (int i = 0; i < ParticipatedAgents.Count; i++) { temp += ParticipatedAgents[i].nominal.GetValue(); temp2 += double.Parse(ParticipatedAgents[i].unit.Text); } if (temp > myTextBoxTotalNominal.GetValue()) { MessageBox.Show("Nominal in agents closing is higher than total nominal. Please check again"); return; } if (temp2 > 1) { MessageBox.Show("Total unit cannot be more than 1"); return; } ClosingProperty closing = new ClosingProperty(); closing.DateClosed = dateTimePickerInsertCommission.Value; closing.ClosingType = radioButtonClosingProperty.Checked ? TypeOfClosing.Property.ToString() : TypeOfClosing.Loan.ToString(); closing.TotalNominal = myTextBoxTotalNominal.GetValue(); Connection.Instance.InsertNewClosing(closing.GetClosingData()); for (int i = 0; i < ParticipatedAgents.Count; i++) { AgentClosing agentClosing = new AgentClosing(); if (radioButtonClosingProperty.Checked) { agentClosing.Unit = double.Parse(ParticipatedAgents[i].unit.Text); } else { agentClosing.Unit = 0; } agentClosing.Nominal = ParticipatedAgents[i].nominal.GetValue(); agentClosing.AgentID = ParticipatedAgents[i].agent.ID; agentClosing.ClosingID = nextClosingID; string currentAgentID = ""; Connection.Instance.InsertNewAgentClosing(agentClosing.GetAgentClosingData()); bool principalFirst = false; bool viceFirst = false; if (ParticipatedAgents[i].agent.ID == new Agent(Connection.Instance.GetAgentData(new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(ParticipatedAgents[i].agent.BranchID, PrincipalOrVice.Principal)).AgentID, TempData.ID)).ID) { principalFirst = true; } else if (ParticipatedAgents[i].agent.ID == new Agent(Connection.Instance.GetAgentData(new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(ParticipatedAgents[i].agent.BranchID, PrincipalOrVice.VicePrincipal)).AgentID, TempData.ID)).ID) { viceFirst = true; } bool principalTaken = false; bool viceTaken = false; for (int j = 0; j < 5; j++) { Commission commission = new Commission(); PrincipalAndVice princi = new PrincipalAndVice(); PrincipalAndVice vicePrinci = new PrincipalAndVice(); commission.AgentClosingID = ParticipatedAgents[i].agent.ID; if (j == 0) { currentAgentID = Connection.Instance.GetUplineIDFromAgentID(ParticipatedAgents[i].agent.ID); commission.CommissionLevel = Helper.Upline1; if (currentAgentID != Connection.Instance.GetEmptyAgent()) { princi = new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(Connection.Instance.GetBranchIDFromAgentID(currentAgentID), PrincipalOrVice.Principal)); vicePrinci = new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(Connection.Instance.GetBranchIDFromAgentID(currentAgentID), PrincipalOrVice.VicePrincipal)); } if (currentAgentID == princi.AgentID) { if (!principalFirst && !viceFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } principalTaken = true; } else if (currentAgentID == vicePrinci.AgentID) { if (!principalFirst && !viceFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } viceTaken = true; } else { commission.AgentID = currentAgentID; } } else if (j == 1) { currentAgentID = Connection.Instance.GetUplineIDFromAgentID(currentAgentID); commission.CommissionLevel = Helper.Upline2; if (currentAgentID != Connection.Instance.GetEmptyAgent()) { princi = new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(Connection.Instance.GetBranchIDFromAgentID(currentAgentID), PrincipalOrVice.Principal)); vicePrinci = new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(Connection.Instance.GetBranchIDFromAgentID(currentAgentID), PrincipalOrVice.VicePrincipal)); } if (currentAgentID == princi.AgentID) { if (!principalFirst && !viceFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } principalTaken = true; } else if (currentAgentID == vicePrinci.AgentID) { if (!principalFirst && !viceFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } viceTaken = true; } else { commission.AgentID = currentAgentID; } } else if (j == 2) { currentAgentID = Connection.Instance.GetUplineIDFromAgentID(currentAgentID); commission.CommissionLevel = Helper.Upline3; if (currentAgentID != Connection.Instance.GetEmptyAgent()) { princi = new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(Connection.Instance.GetBranchIDFromAgentID(currentAgentID), PrincipalOrVice.Principal)); vicePrinci = new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(Connection.Instance.GetBranchIDFromAgentID(currentAgentID), PrincipalOrVice.VicePrincipal)); } if (currentAgentID == princi.AgentID) { if (!principalFirst && !viceFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } principalTaken = true; } else if (currentAgentID == vicePrinci.AgentID) { if (!principalFirst && !viceFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } viceTaken = true; } else { commission.AgentID = currentAgentID; } } else if (j == 3) { currentAgentID = new Agent(Connection.Instance.GetAgentData(new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(ParticipatedAgents[i].agent.BranchID, PrincipalOrVice.Principal)).AgentID, TempData.ID)).ID; commission.CommissionLevel = Helper.Principal; if (principalTaken || principalFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } } else if (j == 4) { currentAgentID = new Agent(Connection.Instance.GetAgentData(new PrincipalAndVice(Connection.Instance.GetPrincipalOrViceDataFromBranchID(ParticipatedAgents[i].agent.BranchID, PrincipalOrVice.VicePrincipal)).AgentID, TempData.ID)).ID; commission.CommissionLevel = Helper.VicePrincipal; // MessageBox.Show("Vice taken : " + viceTaken.ToString() + ", viceFirst : " + viceFirst.ToString()); if (viceTaken || viceFirst) { commission.AgentID = Connection.Instance.GetEmptyAgent(); } else { commission.AgentID = currentAgentID; } } commission.CommissionLevelValue = Connection.Instance.GetCommissionLevelValue(commission.CommissionLevel); if (Connection.Instance.CheckActiveAgent(commission.AgentID, TempData.ID)) { commission.CommissionNominal = ParticipatedAgents[i].nominal.GetValue() * commission.CommissionLevelValue / 100; } else { commission.CommissionNominal = 0; } commission.ClosingID = nextClosingID; Connection.Instance.InsertNewCommission(commission.GetCommissionData()); } } }