Exemple #1
0
        public ActionResult GetContractsList()
        {
            using (LICPEntities context = new LICPEntities())
            {
                List <Contract> lstContracts = context.Contract.ToList();

                DataTable dtContracts = new DataTable();
                dtContracts.Columns.Add("Id", typeof(int));
                dtContracts.Columns.Add("Advisor", typeof(string));
                dtContracts.Columns.Add("Carrier", typeof(string));
                dtContracts.Columns.Add("MGA", typeof(string));
                dtContracts.Columns.Add("ContractDate", typeof(DateTime));


                foreach (Contract c in lstContracts)
                {
                    DataRow row = dtContracts.NewRow();
                    row["Id"] = c.Id;
                    if (c.AdvisorId == null)
                    {
                        row["Advisor"] = "";
                    }
                    else
                    {
                        row["Advisor"] = c.Advisor.FirstName + " " + c.Advisor.LastName;
                    }
                    if (c.CarrierId == null)
                    {
                        row["Carrier"] = "";
                    }
                    else
                    {
                        row["Carrier"] = c.Carrier.BusinessName;
                    }
                    if (c.MGAId == null)
                    {
                        row["MGA"] = "";
                    }
                    else
                    {
                        row["MGA"] = c.MGA.BusinessName;
                    }

                    if (c.ContractDate == null)
                    {
                        row["ContractDate"] = "";
                    }
                    else
                    {
                        row["ContractDate"] = c.ContractDate;
                    }

                    dtContracts.Rows.Add(row);
                }

                ViewBag.Contracts = dtContracts;
            }

            return(PartialView("DisplayContractsList"));
        }
Exemple #2
0
        public ActionResult GetContractorList(string name)
        {
            using (LICPEntities context = new LICPEntities())
            {
                switch (name)
                {
                case "carrier":

                    List <Carrier> lstCarriers = context.Carriers.ToList();
                    ViewBag.Carriers = new SelectList(lstCarriers, "Id", "BusinessName");
                    return(PartialView("DisplayCarriers"));

                case "advisor":
                    var lstAdvisors = (from a in context.Advisors
                                       select new
                    {
                        a.Id,
                        Name = a.FirstName + " " + a.LastName
                    }).ToList();
                    ViewBag.Advisor = new SelectList(lstAdvisors, "Id", "Name");
                    return(PartialView("DisplayAdvisors"));

                case "mga":
                    List <MGA> lstMgas = context.MGAs.ToList();
                    ViewBag.Mgas = new SelectList(lstMgas, "Id", "BusinessName");
                    return(PartialView("DisplayMgas"));

                default:

                    return(Content(""));
                }
            }
        }
Exemple #3
0
        public List <Carrier> getCarriersList()
        {
            List <Carrier> lstCarriers = new List <Carrier>();

            using (LICPEntities context = new LICPEntities())
            {
                lstCarriers = context.Carriers.ToList();
            }
            return(lstCarriers);
        }
Exemple #4
0
        public List <MGA> getMGAsList()
        {
            List <MGA> lstMGAs = new List <MGA>();

            using (LICPEntities context = new LICPEntities())
            {
                lstMGAs = context.MGAs.ToList();
            }
            return(lstMGAs);
        }
Exemple #5
0
        public List <Advisor> getAdvisorsList()
        {
            List <Advisor> lstAdvisors = new List <Advisor>();

            using (LICPEntities context = new LICPEntities())
            {
                lstAdvisors = context.Advisors.ToList();
            }
            return(lstAdvisors);
        }
Exemple #6
0
 // GET: Advisors/Delete/5
 public ActionResult DeleteContract(int?id)
 {
     using (LICPEntities context = new LICPEntities())
     {
         Contract contract = context.Contract.Find(id);
         context.Contract.Remove(contract);
         context.SaveChanges();
         return(RedirectToAction("Index"));
     }
 }
Exemple #7
0
        public ContentResult GetContractingChain(string strC1, int c1, string strC2, int c2)
        {
            using (LICPEntities context = new LICPEntities())
            {
                List <Contract> lstlstAllContracts = context.Contract.ToList();

                DataTable dtCt = new DataTable();
                dtCt.Columns.Add("Advisor", typeof(string));
                dtCt.Columns.Add("Carrier", typeof(string));
                dtCt.Columns.Add("MGA", typeof(string));


                foreach (Contract ct in lstlstAllContracts)
                {
                    DataRow row = dtCt.NewRow();
                    if (ct.AdvisorId == null)
                    {
                        row["Advisor"] = "";
                    }
                    else
                    {
                        row["Advisor"] = ct.Advisor.FirstName.ToString().Trim() + " " + ct.Advisor.LastName.ToString().Trim();
                    }
                    if (ct.CarrierId == null)
                    {
                        row["Carrier"] = "";
                    }
                    else
                    {
                        row["Carrier"] = ct.Carrier.BusinessName.ToString().Trim();
                    }
                    if (ct.MGAId == null)
                    {
                        row["MGA"] = "";
                    }
                    else
                    {
                        row["MGA"] = ct.MGA.BusinessName.ToString().Trim();
                    }
                    dtCt.Rows.Add(row);
                }

                string entity1;
                string entity2;
                switch (strC1)
                {
                case "carrier":

                    entity1 = context.Carriers.FirstOrDefault(a => a.Id == c1).BusinessName;
                    break;

                case "advisor":
                    entity1 = context.Advisors.FirstOrDefault(a => a.Id == c1).FirstName + " " + context.Advisors.FirstOrDefault(a => a.Id == c1).LastName;
                    break;

                case "mga":
                    entity1 = context.MGAs.FirstOrDefault(a => a.Id == c1).BusinessName;
                    break;

                default:
                    return(Content("<div class='alert alert-warning' role='alert'>No entity1 information is given.</div >", "text/html"));
                }
                switch (strC2)
                {
                case "carrier":
                    entity2 = context.Carriers.FirstOrDefault(a => a.Id == c2).BusinessName;
                    break;

                case "advisor":
                    entity2 = context.Advisors.FirstOrDefault(a => a.Id == c2).FirstName + " " + context.Advisors.FirstOrDefault(a => a.Id == c2).LastName;
                    break;

                case "mga":
                    entity2 = context.MGAs.FirstOrDefault(a => a.Id == c2).BusinessName;
                    break;

                default:
                    return(Content("<div class='alert alert-warning' role='alert'>No entity2 information is given.</div >", "text/html"));
                }

                string contractChain = entity1 + " <--> " + entity2;

                /*
                 *
                 * To find the contract chain between two entities, it is necessary to review the Contracts and find the shortest way to find it.
                 * This becomes an algorithm that recursively compares the possible paths between entities, and finds out how many contracts
                 * the original entity has, and compare the entities with which it has a contract one by one. After that, look in each of these entities,
                 * until you find the paths that reach the destination entity.
                 * The algorithm stops when finding the other entity.  The goal is to output the number of steps between entities to get the other entity.
                 *
                 */



                return(Content("<div class='alert alert-success' role='alert'><strong>" + contractChain + "</strong></div>", "text/html"));
            }
        }
Exemple #8
0
        public bool EstablishContract(string strC1, int c1, string strC2, int c2)
        {
            using (LICPEntities context = new LICPEntities())
            {
                if (strC1 == strC2)
                {
                    ViewBag.Message = "It is not possible to contract with self";
                    return(false);
                }


                string entity1;
                string entity2;
                switch (strC1)
                {
                case "carrier":
                    entity1 = "CarrierId=";
                    break;

                case "advisor":

                    entity1 = "AdvisorId=";

                    break;

                case "mga":
                    entity1 = "MGAId=";
                    break;

                default:
                    ViewBag.Message = "No entity1 information is given.";
                    return(false);
                }
                switch (strC2)
                {
                case "carrier":
                    entity2 = "CarrierId=";
                    break;

                case "advisor":
                    entity2 = "AdvisorId=";
                    break;

                case "mga":
                    entity2 = "MGAId=";
                    break;

                default:
                    ViewBag.Message = "No entity2 information is given.";
                    return(false);
                }

                string query = "SELECT Id FROM Contracts WHERE " + entity1 + c1.ToString() + " AND " + entity2 + c2.ToString();

                int ctrId = context.Database.SqlQuery <int>(query).FirstOrDefault();

                if (ctrId == 0)
                {
                    int contractId   = 0;
                    var lstContracts = context.Contract.ToList();
                    if (lstContracts.Any())
                    {
                        contractId = (from ct in context.Contract
                                      orderby ct.Id
                                      descending
                                      select ct.Id).First();
                    }
                    contractId++;

                    Contract c = new Contract();
                    c.Id = contractId;
                    switch (strC1)
                    {
                    case "carrier":
                        c.CarrierId = c1;
                        break;

                    case "advisor":

                        c.AdvisorId = c1;

                        break;

                    case "mga":

                        c.MGAId = c1;
                        break;

                    default:
                        ViewBag.Message = "No entity1 information is given.";
                        return(false);
                    }
                    switch (strC2)
                    {
                    case "carrier":
                        c.CarrierId = c2;

                        break;

                    case "advisor":

                        c.AdvisorId = c2;

                        break;

                    case "mga":

                        c.MGAId = c2;
                        break;

                    default:
                        ViewBag.Message = "No entity2 information is given.";
                        return(false);
                    }
                    c.ContractDate = DateTime.Now;
                    context.Contract.Add(c);
                    context.SaveChanges();
                    return(true);
                }
                else
                {
                    ViewBag.Message = "This contract already exists!";
                    return(false);
                }
            }
        }