Exemplo n.º 1
0
        public int DataInsert()
        {
            int    requestID;
            string emailBody;

            List <string> To           = new List <string>();
            List <string> Bcc          = new List <string>();
            List <string> Cc           = new List <string>();
            FieldInfo     fieldInfo    = new FieldInfo();
            List <string> attatchments = new List <string>();

            using (ProjectRequestEntities projectRequest = new ProjectRequestEntities())
            {
                ProjectRequestEntities newCase = new ProjectRequestEntities();
                Models.Request         request = new Models.Request();

                var DOAs = newCase.DOAs.Select(d => d.doaID).ToList();

                var staffList = newCase.Staffs.Select(s => s.staffID).ToList();

                var approverList = newCase.Approvers.Select(a => a.sullivanID).ToList();

                request.name          = tbFName.Text + " " + tbLName.Text;
                request.location      = ddlLocation.SelectedItem.Text;
                request.contactInfo   = tbContact.Text;
                request.dateRequested = DateTime.Now;
                request.completed     = false;
                request.subProjects   = 1;
                request.projectName   = tbProjectName.Text;
                request.categoryID    = "multi";
                request.department    = ddlDepartment.SelectedItem.Text;

                request.email          = tbEmail.Text;
                request.additionalInfo = tbAdditionalInfo.Text;

                if (DOAs.Contains((string)ViewState["name"]) || staffList.Contains((string)ViewState["name"]) || approverList.Contains((string)ViewState["name"]))
                {
                    request.status = "Approved";
                }
                else
                {
                    request.status = "Pending";

                    var approvers = newCase.Approvers.Where(d => d.department == ddlDepartment.SelectedItem.Text);

                    string approverName = "";

                    foreach (var name in approvers)
                    {
                        approverName += name.name + ", ";
                    }

                    approverName = approverName.Trim();
                    approverName = approverName.TrimEnd(',');

                    request.doaName = approverName;
                }


                projectRequest.AddToRequests(request);
                projectRequest.SaveChanges();

                requestID = request.reuqestID;

                ViewState["RequestID"] = requestID.ToString();

                projectRequest.Dispose();

                LoadAttachments(requestID);

                //}
                //catch (Exception ex)
                //{
                //    To.Clear();
                //    Cc.Clear();
                //    To.Add("*****@*****.**");

                //    fieldInfo.SendEmail("PR Database Error for " + category, ex.ToString(), To, Bcc, Cc, "*****@*****.**", attatchments);
                //}
            }

            return(requestID);
        }