private void UpdateApplicationRoles(contactPerson contactPerson, DALPortalDataContext dc)
        {
            if (!contactPerson.isWebContact)
            {
                // Delete all roles
                var userRoles = dc.userRoles.Where(c => c.userId.Equals(contactPerson.userId));
                dc.userRoles.DeleteAllOnSubmit(userRoles);

                dc.SubmitChanges();
                return;
            }

            // Add CERT_USER role
            if (contactPerson.TMP_PortalAccess == "01" || contactPerson.TMP_PortalAccess == "04")
            {
                if (!dc.userRoles.Any(c => c.userId.Equals(contactPerson.userId) && c.roleCode.Equals("CERT_USER")))
                {
                    dc.userRoles.InsertOnSubmit(new userRole()
                    {
                        userId = contactPerson.userId.Value, roleCode = "CERT_USER"
                    });
                }
            }

            // Add DOP_USER role
            if (contactPerson.TMP_PortalAccess == "03" || contactPerson.TMP_PortalAccess == "04")
            {
                if (!dc.userRoles.Any(c => c.userId.Equals(contactPerson.userId) && c.roleCode.Equals("DOP_USER")))
                {
                    dc.userRoles.InsertOnSubmit(new userRole()
                    {
                        userId = contactPerson.userId.Value, roleCode = "DOP_USER"
                    });
                }
            }

            if (contactPerson.TMP_PortalAccess == "01")
            {
                // Delete DOP_USER role
                var userRoles = dc.userRoles.Where(c => c.userId.Equals(contactPerson.userId) && c.roleCode.Equals("DOP_USER"));
                dc.userRoles.DeleteAllOnSubmit(userRoles);
            }

            if (contactPerson.TMP_PortalAccess == "03")
            {
                // Delete CERT_USER role
                var userRoles = dc.userRoles.Where(c => c.userId.Equals(contactPerson.userId) && c.roleCode.Equals("CERT_USER"));
                dc.userRoles.DeleteAllOnSubmit(userRoles);
            }

            if (contactPerson.TMP_PortalAccess == null)
            {
                // Delete all roles
                var userRoles = dc.userRoles.Where(c => c.userId.Equals(contactPerson.userId));
                dc.userRoles.DeleteAllOnSubmit(userRoles);
            }

            dc.SubmitChanges();
        }
Beispiel #2
0
        private void DeleteContactPerson_Click(object sender, RoutedEventArgs e)
        {
            var selectRow        = (System.Data.DataRowView)contactPersonDataGrid.SelectedItem;
            int icontactPersonID = (int)selectRow["contacnPersonID"];
            //to identify slected row data in contact datagrid, and find it's person id.
            contactPerson deleteContactPerson = db.contactPerson.First(c => c.contacnPersonID == icontactPersonID);

            //delete contact person linq
            db.contactPerson.Remove(deleteContactPerson);
            db.SaveChanges();
            reload_EditDataGrid();
            //reload datagrid.
        }
        private void contactPersonInCustomer_Filter(object sender, FilterEventArgs e)
        {
            contactPerson t = e.Item as contactPerson;

            if (t != null)
            // If filter is turned on, filter completed items.
            {
                if (t.companyCode != selectedCustomerCode)
                {
                    e.Accepted = false;
                }
                else
                {
                    e.Accepted = true;
                }
            }
        }
Beispiel #4
0
        private void SaveButton_Click(object sender, RoutedEventArgs e)
        {
            contactPerson addContactPerson = new contactPerson()
            {
                companyCode     = getCompanyCode,
                department      = DepartmentTextBox.Text,
                gender          = GenderTextBox.Text,
                name            = NameTextBox.Text,
                contacnPersonID = int.Parse(ContactPersonIDTextBox.Text)
            };

            //add a new contact person to db.
            db.contactPerson.Add(addContactPerson);
            db.SaveChanges();
            closeDialogEvent();
            //after save in db,use this func to call reload_datagrid func to refresh the data.
            this.Close();
        }
Beispiel #5
0
        public static Boolean ProcessCustomer(string fileContent, out businessPartner businessPartner, out String outCompanyCode)
        {
            businessPartner = new businessPartner();

            DALPortalDataContext dc = new DALPortalDataContext();
            Boolean update;
            String  companyCode = String.Empty;

            outCompanyCode = String.Empty;

            try
            {
                XDocument xmldoc                = XDocument.Parse(fileContent);
                XElement  docTypeElement        = xmldoc.Element("DEBMAS03");
                XElement  iDocElement           = docTypeElement.Element("IDOC");
                var       customerHeaderElement = iDocElement.Element("E1KNA1M");
                //Int32 CardCode;

                // Remove unused elements
                iDocElement.Element("EDI_DC40").Remove();

                // BpCode, remove leading zero's from Cardcode
                String bpCode      = Convert.ToInt32(customerHeaderElement.Element("KUNNR").Value).ToString();
                String sectionCode = customerHeaderElement.Element("E1KNVVM").Element("VKORG").Value;

                companyCode    = CompanyClass.GetCompanyBasedOnSection(sectionCode, dc);
                outCompanyCode = companyCode;

                // Check if bp Already exists
                businessPartner = BusinessPartnerClass.GetBusinessPartner(bpCode, companyCode, dc);
                if (businessPartner == null)
                {
                    businessPartner = new businessPartner();
                    update          = false;
                }
                else
                {
                    update = true;
                }

                if (!update)
                {
                    String companyGroupCode = dc.companyGroupForBps.Where(c => c.companyCode.Equals(companyCode)).Select(c => c.companyGroupCode).FirstOrDefault();

                    if (String.IsNullOrEmpty(companyGroupCode))
                    {
                        businessPartner.companyCode = companyCode;
                    }
                    else
                    {
                        businessPartner.companyGroupCode = companyGroupCode;
                    }
                }

                // Mapp customer header data
                businessPartner.bpCode  = bpCode;
                businessPartner.bpType  = 'C';
                businessPartner.bpName  = customerHeaderElement.Elements().Where(c => c.Name.ToString().Equals("NAME1")).FirstOrDefault().Value;
                businessPartner.address = customerHeaderElement.Elements().Where(c => c.Name.ToString().Equals("STRAS")).FirstOrDefault().Value;

                if (customerHeaderElement.Elements().Any(c => c.Name.ToString().Equals("TELF1")))
                {
                    businessPartner.telephone = customerHeaderElement.Elements().Where(c => c.Name.ToString().Equals("TELF1")).FirstOrDefault().Value;
                }

                if (customerHeaderElement.Elements().Any(c => c.Name.ToString().Equals("TELFX")))
                {
                    businessPartner.fax = customerHeaderElement.Elements().Where(c => c.Name.ToString().Equals("TELFX")).FirstOrDefault().Value;
                }

                businessPartner.countryCode  = customerHeaderElement.Elements().Where(c => c.Name.ToString().Equals("LAND1")).FirstOrDefault().Value;
                businessPartner.languageCode = customerHeaderElement.Elements().Where(c => c.Name.ToString().Equals("SPRAS_ISO")).FirstOrDefault().Value;


                // Mapp contactperson data
                foreach (var contactpersonElement in customerHeaderElement.Elements("E1KNVKM").ToList())
                {
                    contactPerson contact;

                    // Contact Id
                    String  contactPersonCode = Convert.ToInt32(contactpersonElement.Elements().Where(c => c.Name.ToString().Equals("PARNR")).FirstOrDefault().Value).ToString();
                    Boolean newContact        = false;

                    if (update && businessPartner.contactPersons.Any(c => c.contactPersonCode.Equals(contactPersonCode)))
                    {
                        contact = businessPartner.contactPersons.Where(c => c.contactPersonCode.Equals(contactPersonCode)).FirstOrDefault();
                    }
                    else
                    {
                        contact = new contactPerson();
                        contact.contactPersonCode = contactPersonCode;
                        newContact = true;
                    }

                    // Email
                    var emailAddress = contactpersonElement.Elements().Where(c => c.Name.ToString().Equals("PARAU")).FirstOrDefault();
                    if (emailAddress != null)
                    {
                        contact.eMail = emailAddress.Value.ToLower();
                    }

                    // Title
                    var title = contactpersonElement.Elements().Where(c => c.Name.ToString().Equals("ANRED")).FirstOrDefault();
                    if (title != null)
                    {
                        contact.title = title.Value;
                    }

                    // FirstName
                    var firstName = contactpersonElement.Elements().Where(c => c.Name.ToString().Equals("NAMEV")).FirstOrDefault();
                    if (firstName != null)
                    {
                        contact.firstName = firstName.Value;
                    }

                    // LastName
                    var lastName = contactpersonElement.Elements().Where(c => c.Name.ToString().Equals("NAME1")).FirstOrDefault();
                    if (lastName != null)
                    {
                        contact.lastName = lastName.Value;
                    }

                    // WebUser
                    var webUserType = contactpersonElement.Elements().Where(c => c.Name.ToString().Equals("AKVER")).FirstOrDefault();
                    if (webUserType != null)
                    {
                        contact.isWebContact     = (webUserType.Value == "02") ? false : true;
                        contact.TMP_PortalAccess = webUserType.Value;
                    }

                    // Add CardCode to contactperson
                    if (newContact)
                    {
                        businessPartner.contactPersons.Add(contact);
                    }
                }
            }
            catch (Exception ex)
            {
                Trace.WriteLine(String.Format("Error converting customer {0} for company {1} from SAP ECC6 XML format. Error: {2}", businessPartner.bpCode, companyCode, ex.Message), "MapCustomerFromECC6");
                return(false);
            }

            if (update)
            {
                try
                {
                    dc.SubmitChanges();
                    Trace.WriteLine(String.Format("Updating Customer {0} for company {1} Successfull.", businessPartner.bpCode, companyCode), "MapCustomerFromECC6");
                }
                catch (Exception ex)
                {
                    Trace.WriteLine(String.Format("Error Updating Customer {0} for company {1}. Error: {2}", businessPartner.bpCode, companyCode, ex.Message), "MapCustomerFromECC6");
                    return(false);
                }
            }
            else
            {
                try
                {
                    dc.businessPartners.InsertOnSubmit(businessPartner);
                    dc.SubmitChanges();
                    Trace.WriteLine(String.Format("Creating Customer {0} for company {1} Successfull.", businessPartner.bpCode, companyCode), "MapCustomerFromECC6");
                }
                catch (Exception ex)
                {
                    Trace.WriteLine(String.Format("Error Creating Customer {0} for company {1}. Error: {2}", businessPartner.bpCode, companyCode, ex.Message), "MapCustomerFromECC6");
                    return(false);
                }
            }

            return(true);
        }
Beispiel #6
0
        /// <summary>
        /// læser dataset indhold og tilføjer dem
        /// til en class til data
        /// </summary>
        private fileInput GetFilesValues(DataSet readxml, string filename)
        {
            fileInput fileData = new fileInput();

            fileData.filename = filename;

            if (readxml.Tables.Contains("kontaktPerson"))
            {
                for (int i = 0; i < readxml.Tables["kontaktPerson"].Rows.Count; i++)
                {
                    contactPerson contactPer = new contactPerson();

                    contactPer.name   = readxml.Tables["kontaktPerson"].Rows[i]["navn"].ToString();
                    contactPer.mobile = readxml.Tables["kontaktPerson"].Rows[i]["mobil"].ToString();
                    contactPer.mail   = readxml.Tables["kontaktPerson"].Rows[i]["email"].ToString();
                    contactPer.post   = readxml.Tables["kontaktPerson"].Rows[i]["stilling"].ToString();
                    contactPer.print  = bool.Parse(readxml.Tables["kontaktPerson"].Rows[i]["print"].ToString());

                    fileData.contactPerson.Add(contactPer);
                }
            }

            if (readxml.Tables.Contains("kandidater"))
            {
                for (int i = 0; i < readxml.Tables["kandidater"].Rows.Count; i++)
                {
                    fileData.candidates.Add(readxml.Tables["kandidater"].Rows[i]["navn"].ToString());
                }
            }

            if (readxml.Tables.Contains("uddannelsesaftale1"))
            {
                for (int i = 0; i < readxml.Tables["uddannelsesaftale1"].Rows.Count; i++)
                {
                    fileData.uddannelsesCheckBoxs.Add(readxml.Tables["uddannelsesaftale1"].Rows[i]["checkbox"].ToString());
                }
            }

            if (readxml.Tables.Contains("uddannelsesaftale2"))
            {
                for (int i = 0; i < readxml.Tables["uddannelsesaftale2"].Rows.Count; i++)
                {
                    fileData.agreementType.Add(readxml.Tables["uddannelsesaftale2"].Rows[i]["checkbox"].ToString());
                }
            }

            if (readxml.Tables.Contains("files"))
            {
                for (int i = 0; i < readxml.Tables["files"].Rows.Count; i++)
                {
                    files newFile = new files();

                    newFile.name = readxml.Tables["files"].Rows[i]["name"].ToString();
                    newFile.path = readxml.Tables["files"].Rows[i]["path"].ToString();
                    newFile.link = bool.Parse(readxml.Tables["files"].Rows[i]["link"].ToString());

                    fileData.files.Add(newFile);
                }
            }

            if (readxml.Tables.Contains("sproglige"))
            {
                for (int i = 0; i < readxml.Tables["sproglige"].Rows.Count; i++)
                {
                    string value = readxml.Tables["sproglige"].Rows[i]["value"].ToString();
                    fileData.language.Add(value);
                }
            }

            if (readxml.Tables.Contains("record"))
            {
                for (int i = 0; i < readxml.Tables["record"].Rows.Count; i++)
                {
                    string value = readxml.Tables["record"].Rows[i]["value"].ToString();
                    fileData.record.Add(value);
                }
            }

            if (readxml.Tables.Contains("FirmaØnsker"))
            {
                for (int i = 0; i < readxml.Tables["FirmaØnsker"].Rows.Count; i++)
                {
                    string value = readxml.Tables["FirmaØnsker"].Rows[i]["checkbox"].ToString();
                    fileData.firmReceive.Checkbox.Add(value);
                }
            }

            if (readxml.Tables.Contains("andet"))
            {
                fileData.name                      = readxml.Tables["andet"].Rows[0]["virsomhed"].ToString();
                fileData.cvr                       = readxml.Tables["andet"].Rows[0]["CVR"].ToString();
                fileData.adresse                   = readxml.Tables["andet"].Rows[0]["adresse"].ToString();
                fileData.tjenestested              = readxml.Tables["andet"].Rows[0]["andetTjenestested"].ToString();
                fileData.profil                    = readxml.Tables["andet"].Rows[0]["virsomhedProfil"].ToString();
                fileData.uddannelses_lager         = readxml.Tables["andet"].Rows[0]["uddannelses_lager"].ToString();
                fileData.uddannelses_chauffor      = readxml.Tables["andet"].Rows[0]["uddannelses_chauffor"].ToString();
                fileData.uddannelses_lufthavn      = readxml.Tables["andet"].Rows[0]["uddannelses_lufthavn"].ToString();
                fileData.firmReceive.andet         = readxml.Tables["andet"].Rows[0]["other"].ToString();
                fileData.firmReceive.antalAftaler  = readxml.Tables["andet"].Rows[0]["antalAftaler"].ToString();
                fileData.firmReceive.lastDay       = readxml.Tables["andet"].Rows[0]["datoFrist"].ToString();
                fileData.firmReceive.antalPersoner = readxml.Tables["andet"].Rows[0]["antalKandidater"].ToString();
                fileData.firmReceive.StartDate     = readxml.Tables["andet"].Rows[0]["startDato"].ToString();
                fileData.jobDescription            = readxml.Tables["andet"].Rows[0]["jobBeskrivelse"].ToString();
                fileData.age                       = readxml.Tables["andet"].Rows[0]["alder"].ToString();
                fileData.driverLicense             = readxml.Tables["andet"].Rows[0]["koerekort"].ToString();
                fileData.physical                  = readxml.Tables["andet"].Rows[0]["fysiske"].ToString();
                fileData.math                      = readxml.Tables["andet"].Rows[0]["matematiske"].ToString();
                fileData.other                     = readxml.Tables["andet"].Rows[0]["bemaerkninger"].ToString();
                fileData.VUF                       = readxml.Tables["andet"].Rows[0]["VUF"].ToString();
                fileData.signedBy                  = readxml.Tables["andet"].Rows[0]["aftaleHvem"].ToString();
            }
            return(fileData);
        }