Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- %dw 1.0
- %output application/json
- skipNullOn = "everywhere"
- ---
- {
- EmployeeEvent: {
- EventHeader: {
- ID: payload.EmployeeEvent.EventHeader.ID,
- Timestamp: payload.EmployeeEvent.EventHeader.Timestamp,
- Name: payload.EmployeeEvent.EventHeader.Name,
- Cause: payload.EmployeeEvent.EventHeader.Cause,
- Source: {
- System: payload.EmployeeEvent.EventHeader.Source.System,
- User: payload.EmployeeEvent.EventHeader.Source.User
- },
- State: payload.EmployeeEvent.EventHeader.State,
- TrackingID: payload.EmployeeEvent.EventHeader.TrackingID
- },
- Body: {
- Employee: {
- Name: {
- FirstName: payload.EmployeeEvent.Body.Employee.Name.FirstName,
- LastName: payload.EmployeeEvent.Body.Employee.Name.LastName,
- MiddleInitial: payload.EmployeeEvent.Body.Employee.Name.MiddleInitial,
- Salutation: payload.EmployeeEvent.Body.Employee.Name.Salutation,
- Suffix: payload.EmployeeEvent.Body.Employee.Name.Suffix
- },
- BirthDate: payload.EmployeeEvent.Body.Employee.*BirthDate default [] map ((birthDate , indexOfBirthDate) -> {
- DateOfBirth: birthDate.DateOfBirth,
- YearOfBirth: birthDate.YearOfBirth,
- MonthOfBirth: birthDate.MonthOfBirth,
- DayOfBirth: birthDate.DayOfBirth
- }),
- Gender: payload.EmployeeEvent.Body.Employee.Gender,
- ContactInformation: {
- Addresses: {
- Address: payload.EmployeeEvent.Body.Employee.ContactInformation.Addresses.*Address default [] map ((data , indexOfdata) -> {
- isPreferred: data.@isPreferred,
- AddressKind: data.AddressKind,
- Line1: data.Line1,
- Line2: data.Line2,
- Line3: data.Line3,
- CityName: data.CityName,
- StateProvinceCode: data.StateProvinceCode,
- CountyName: data.CountyName,
- CountryCode: data.CountryCode,
- PostalCode: data.PostalCode
- })
- },
- Emails: {
- Email: payload.EmployeeEvent.Body.Employee.ContactInformation.Emails.*Email default [] map ((emailData , indexOfemailData) -> {
- IsPrimary: emailData.@IsPrimary ,
- EmailAddress: emailData.EmailAddress,
- EmailKind: emailData.EmailKind
- })
- },
- Phones: {
- Phone:payload.EmployeeEvent.Body.Employee.ContactInformation.Phones.*Phone default [] map ((phoneData , indexOfphoneData) -> {
- IsPrimary: phoneData.@IsPrimary ,
- PhoneUseType: phoneData.PhoneUseType,
- PhoneNumber: phoneData.PhoneNumber,
- Extension: phoneData.Extension,
- DialingCountryCode: phoneData.DialingCountryCode
- })
- }
- },
- EmployeeIDs: {
- EmployeeID: payload.EmployeeEvent.Body.Employee.EmployeeIDs.*EmployeeID default [] map ((empIdData , indexOfempIdData) -> {
- IsPrimary: empIdData.@IsPrimary ,
- ID: empIdData.ID ,
- Source: empIdData.Source
- })
- },
- Status: payload.EmployeeEvent.Body.Employee.Status,
- HireDate: payload.EmployeeEvent.Body.Employee.HireDate,
- TerminationDate: payload.EmployeeEvent.Body.Employee.TerminationDate,
- PromotionDate: payload.EmployeeEvent.Body.Employee.PromotionDate,
- AnniversaryDate: payload.EmployeeEvent.Body.Employee.AnniversaryDate.Date,
- ServiceDate: payload.EmployeeEvent.Body.Employee.ServiceDate,
- Corporation: {
- CorporationID: payload.EmployeeEvent.Body.Employee.Corporation.CorporationID ,
- Description: payload.EmployeeEvent.Body.Employee.Corporation.Description,
- CountryCode: payload.EmployeeEvent.Body.Employee.Corporation.CountryCode,
- FutureOrderDays: payload.EmployeeEvent.Body.Employee.Corporation.FutureOrderDays ,
- MaximumOnlineOrderQuantity: payload.EmployeeEvent.Body.Employee.Corporation.MaximumOnlineOrderQuantity ,
- GiftCardThresholdAmount: payload.EmployeeEvent.Body.Employee.Corporation.GiftCardThresholdAmount,
- ToGoOrderThresholdAmount: payload.EmployeeEvent.Body.Employee.Corporation.ToGoOrderThresholdAmount ,
- ToGoLeadTimeMinutes: payload.EmployeeEvent.Body.Employee.Corporation.ToGoLeadTimeMinutes ,
- Concept: {
- ConceptID: payload.EmployeeEvent.Body.Employee.Corporation.Concept.ConceptID,
- Description: payload.EmployeeEvent.Body.Employee.Corporation.Concept.Description
- }
- },
- Department: {
- Code: payload.EmployeeEvent.Body.Employee.Department.Code ,
- ConceptID: payload.EmployeeEvent.Body.Employee.Department.ConceptID,
- Description: payload.EmployeeEvent.Body.Employee.Department.Description
- },
- HighestEducationLevel: payload.EmployeeEvent.Body.Employee.HighestEducationLevel,
- EthnicGroup: payload.EmployeeEvent.Body.Employee.EthnicGroup,
- EmployeeLocations: {
- EmployeeLocation: payload.EmployeeEvent.Body.Employee.EmployeeLocations.*EmployeeLocation default [] map ((employeeLocation , indexOfEmployeeLocation) -> {
- ChangeIndicator: employeeLocation.@ChangeIndicator,
- LocationNumber: employeeLocation.Location.LocationID.Number ,
- AreaID: employeeLocation.Location.Region.Area.AreaID,
- AreaDescription: employeeLocation.Location.Region.Area.Description,
- ConceptID: employeeLocation.Location.Region.Corporation.Concept.ConceptID,
- ConceptDescription: employeeLocation.Location.Region.Corporation.Concept.Description,
- DivisionID: employeeLocation.Location.Region.Division.DivisionID ,
- DivisionDescription: employeeLocation.Location.Region.Division.Description,
- RegionID: employeeLocation.Location.Region.RegionID ,
- RegionDescription: employeeLocation.Location.Region.Description,
- Corporation: {
- CorporationID: employeeLocation.Location.LocationID.CorporationID ,
- Description: employeeLocation.Location.Region.Corporation.Description,
- CountryCode: employeeLocation.Location.Region.Corporation.CountryCode,
- FutureOrderDays: employeeLocation.Location.Region.Corporation.FutureOrderDays ,
- MaximumOnlineOrderQuantity: employeeLocation.Location.Region.Corporation.MaximumOnlineOrderQuantity ,
- GiftCardThresholdAmount: employeeLocation.Location.Region.Corporation.GiftCardThresholdAmount ,
- ToGoOrderThresholdAmount: employeeLocation.Location.Region.Corporation.ToGoOrderThresholdAmount ,
- ToGoLeadTimeMinutes: employeeLocation.Location.Region.Corporation.ToGoLeadTimeMinutes
- },
- JobCodes: {
- JobCode: employeeLocation.JobCodes.*JobCode default [] map ((jobCode , indexOfJobCode) -> {
- IsPrimary: jobCode.@IsPrimary ,
- ConceptID: jobCode.ConceptID,
- Code: jobCode.Code ,
- Priority: jobCode.Priority ,
- Title: jobCode.Title,
- WageRegular: jobCode.Wage.RegularWage ,
- WageOvertime: jobCode.Wage.OvertimeWage
- })
- }
- })
- },
- NickName: payload.EmployeeEvent.Body.Employee.NickName
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement