public WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderGetResponse RepairOrderGet(WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderGetRequest request) { WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderGetResponse response = new WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderGetResponse(); #region 1C.v8241.v2 - RTR.Standard.IF.WebService #region RepairOrderGet Request Set //Create proxy credential NetworkCredential proxycredential = new NetworkCredential(request.TransactionHeader.Username, request.TransactionHeader.Password); //Create proxy web service from dms web service with credential _1C.v8241.RepairOrder.RepairOrder proxyws = new _1C.v8241.RepairOrder.RepairOrder(); proxyws.Credentials = proxycredential; //Create proxy request with repairorderget and transaction _1C.v8241.RepairOrder.RepairOrderGetRequest proxyrequest = new _1C.v8241.RepairOrder.RepairOrderGetRequest(); //Create proxy transaction _1C.v8241.RepairOrder.TransactionHeader proxytransactionheader = new _1C.v8241.RepairOrder.TransactionHeader(); if (request.TransactionHeader != null) { #region//TransactionHeader Set proxytransactionheader.CountryID = request.TransactionHeader.CountryID; proxytransactionheader.DealerID = request.TransactionHeader.DealerID; proxytransactionheader.DistributorID = request.TransactionHeader.DistributorID; proxytransactionheader.DMSCode = request.TransactionHeader.DMSCode; proxytransactionheader.DMSServerUrl = request.TransactionHeader.DMSServerUrl; proxytransactionheader.DMSVersion = request.TransactionHeader.DMSVersion; proxytransactionheader.DocumentVersion = request.TransactionHeader.DocumentVersion; proxytransactionheader.GroupID = request.TransactionHeader.GroupID; proxytransactionheader.IneterfaceID = request.TransactionHeader.IneterfaceID; proxytransactionheader.Password = request.TransactionHeader.Password; proxytransactionheader.PollingToken = request.TransactionHeader.PollingToken; proxytransactionheader.RequestPollingToken = request.TransactionHeader.RequestPollingToken; proxytransactionheader.RequestType = request.TransactionHeader.RequestType; proxytransactionheader.TransactionId = request.TransactionHeader.TransactionId; proxytransactionheader.TransactionDateTimeLocal = request.TransactionHeader.TransactionDateTimeLocal; proxytransactionheader.TransactionDateTimeLocalSpecified = request.TransactionHeader.TransactionDateTimeLocal != null;//수정필요 proxytransactionheader.TransactionDateTimeUTC = request.TransactionHeader.TransactionDateTimeLocal; proxytransactionheader.TransactionDateTimeUTCSpecified = request.TransactionHeader.TransactionDateTimeLocal != null;//수정필요 proxytransactionheader.TransactionType = request.TransactionHeader.TransactionType; proxytransactionheader.Username = request.TransactionHeader.Username; proxytransactionheader.VenderTrackingCode = request.TransactionHeader.VenderTrackingCode; proxyrequest.TransactionHeader = proxytransactionheader; proxyws.Url = string.Format("{0}/rtr-atest/ws/RepairOrder.1cws", proxytransactionheader.DMSServerUrl); #endregion } //Create proxy repairorderget _1C.v8241.RepairOrder.RepairOrderGet proxyrepairorderget = new _1C.v8241.RepairOrder.RepairOrderGet(); if (request.RepairOrderGet != null) { #region//RepairOrderGet Set proxyrepairorderget.OpenDateTimeFromLocal = request.RepairOrderGet.OpenDateTimeFromLocal != null ? Convert.ToDateTime(request.RepairOrderGet.OpenDateTimeFromLocal) : DateTime.MinValue;//수정필요 proxyrepairorderget.OpenDateTimeFromLocalSpecified = request.RepairOrderGet.OpenDateTimeFromLocal != null;//수정필요 proxyrepairorderget.OpenDateTimeToLocal = request.RepairOrderGet.OpenDateTimeToLocal != null ? Convert.ToDateTime(request.RepairOrderGet.OpenDateTimeToLocal) : DateTime.MinValue;//수정필요 proxyrepairorderget.OpenDateTimeToLocalSpecified = request.RepairOrderGet.OpenDateTimeToLocal != null;//수정필요 proxyrepairorderget.DMSROID = request.RepairOrderGet.DMSROID; proxyrepairorderget.DMSRONo = request.RepairOrderGet.DMSRONo; proxyrepairorderget.DMSAppointmentID = request.RepairOrderGet.DMSAppointmentID; proxyrepairorderget.DMSAppointmentNo = request.RepairOrderGet.DMSAppointmentNo; proxyrepairorderget.DMSROStatus = Map.SetDMSCodeFromWACode(CodeType.DMSROStatus, request.RepairOrderGet.DMSROStatus); proxyrepairorderget.LastModifiedDateTimeFromUTC = request.RepairOrderGet.LastModifiedDateTimeFromUTC != null ? Convert.ToDateTime(request.RepairOrderGet.LastModifiedDateTimeFromUTC) : DateTime.MinValue;//수정필요 proxyrepairorderget.LastModifiedDateTimeFromUTCSpecified = request.RepairOrderGet.LastModifiedDateTimeFromUTC != null;//수정필요 proxyrepairorderget.LastModifiedDateTimeToUTC = request.RepairOrderGet.LastModifiedDateTimeToUTC != null ? Convert.ToDateTime(request.RepairOrderGet.LastModifiedDateTimeToUTC) : DateTime.MinValue;//수정필요 proxyrepairorderget.LastModifiedDateTimeToUTCSpecified = request.RepairOrderGet.LastModifiedDateTimeToUTC != null;//수정필요 proxyrepairorderget.SAEmployeeID = request.RepairOrderGet.SAEmployeeID; proxyrepairorderget.SAEmployeeName = request.RepairOrderGet.SAEmployeeName; proxyrepairorderget.TCEmployeeID = request.RepairOrderGet.TCEmployeeID; proxyrepairorderget.TCEmployeeName = request.RepairOrderGet.TCEmployeeName; if (request.RepairOrderGet.Customer != null) { _1C.v8241.RepairOrder.CustomerGet proxycustomer = new _1C.v8241.RepairOrder.CustomerGet(); proxycustomer.DMSCustomerNo = request.RepairOrderGet.Customer.DMSCustomerNo; proxycustomer.LastName = request.RepairOrderGet.Customer.LastName; if (request.RepairOrderGet.Customer.Contacts != null && request.RepairOrderGet.Customer.Contacts.Count > 0) { int cnt = 0; proxycustomer.Contacts = new _1C.v8241.RepairOrder.Contact[request.RepairOrderGet.Customer.Contacts.Count]; foreach (WA.Standard.IF.Data.v2.Common.RepairOrder.Contact contact in request.RepairOrderGet.Customer.Contacts) { _1C.v8241.RepairOrder.Contact proxycontact = new _1C.v8241.RepairOrder.Contact(); proxycontact.ContactType = Map.SetDMSCodeFromWACode(CodeType.ContactType, contact.ContactType); proxycontact.ContactValue = contact.ContactValue; proxycustomer.Contacts[cnt] = proxycontact; cnt++; } } proxyrepairorderget.CustomerGet = proxycustomer; } proxyrequest.RepairOrderGet = proxyrepairorderget; #endregion } #endregion //Run proxy web method with proxy request WA.Standard.IF.Logger.Log.Log.SaveXMLLog(0, request.TransactionHeader.DealerID, "DMS RepairOrderGetRequest XML", proxyrequest); _1C.v8241.RepairOrder.RepairOrderGetResponse proxyresponse = proxyws.RepairOrderGet(proxyrequest); WA.Standard.IF.Logger.Log.Log.SaveXMLLog(0, request.TransactionHeader.DealerID, "DMS RepairOrderGetResponse XML", proxyresponse); //Mapping with Standard Interface Specification Object if (proxyresponse != null) { if (proxyresponse.TransactionHeader != null) { #region//TransactionHeader Set WA.Standard.IF.Data.v2.Common.Common.TransactionHeader transactionheader = new WA.Standard.IF.Data.v2.Common.Common.TransactionHeader(); transactionheader.CountryID = proxyresponse.TransactionHeader.CountryID; transactionheader.DealerID = proxyresponse.TransactionHeader.DealerID; transactionheader.DistributorID = proxyresponse.TransactionHeader.DistributorID; transactionheader.DMSCode = proxyresponse.TransactionHeader.DMSCode; transactionheader.DMSServerUrl = proxyresponse.TransactionHeader.DMSServerUrl; transactionheader.DMSVersion = proxyresponse.TransactionHeader.DMSVersion; transactionheader.DocumentVersion = proxyresponse.TransactionHeader.DocumentVersion; transactionheader.GroupID = proxyresponse.TransactionHeader.GroupID; transactionheader.IneterfaceID = proxyresponse.TransactionHeader.IneterfaceID; transactionheader.Password = proxyresponse.TransactionHeader.Password; transactionheader.PollingToken = proxyresponse.TransactionHeader.PollingToken; transactionheader.RequestPollingToken = proxyresponse.TransactionHeader.RequestPollingToken; transactionheader.RequestType = proxyresponse.TransactionHeader.RequestType; transactionheader.TransactionId = proxyresponse.TransactionHeader.TransactionId; transactionheader.TransactionDateTimeLocal = proxyresponse.TransactionHeader.TransactionDateTimeLocal; transactionheader.TransactionDateTimeUTC = proxyresponse.TransactionHeader.TransactionDateTimeUTC; transactionheader.TransactionType = proxyresponse.TransactionHeader.TransactionType; transactionheader.Username = proxyresponse.TransactionHeader.Username; transactionheader.VenderTrackingCode = proxyresponse.TransactionHeader.VenderTrackingCode; response.TransactionHeader = transactionheader; #endregion } //ResultMessage Set if (proxyresponse.ResultMessage != null) { response.ResultMessage = GetResultMessageData(proxyresponse.ResultMessage.Code, proxyresponse.ResultMessage.Message); } if (proxyresponse.Errors != null) { //Error List Set foreach (_1C.v8241.RepairOrder.Error proxyerror in proxyresponse.Errors) { if (response.Errors != null) response.Errors.Add(GetErrorData(proxyerror.Code, proxyerror.Message)); else response.Errors = GetErrorDataList(proxyerror.Code, proxyerror.Message); } } else { #region//RepairOrderGetResponse Set if (proxyresponse.RepairOrderDocuments != null && proxyresponse.RepairOrderDocuments.Length > 0) { response.RepairOrderDocuments = new List<WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderDocument>(); foreach (_1C.v8241.RepairOrder.RepairOrderDocument proxyrepairorderdocument in proxyresponse.RepairOrderDocuments) { #region //RepairOrderDocuments Header WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderDocument repairorderdocument = new WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderDocument(); repairorderdocument.DMSRODocumentNo = proxyrepairorderdocument.DMSRODocumentNo; repairorderdocument.DMSRODocumentStatus = Map.GetWACodeFromDMSCode(CodeType.RODocumentStatus, proxyrepairorderdocument.DMSRODocumentStatus); #endregion if (proxyrepairorderdocument.RepairOrders != null && proxyrepairorderdocument.RepairOrders.Length > 0) { repairorderdocument.RepairOrders = new List<WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrder>(); foreach (_1C.v8241.RepairOrder.RepairOrder1 proxyrepairorder in proxyrepairorderdocument.RepairOrders) { #region //RepairOrder Header WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrder repairorder = new WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrder(); repairorder.CloseDateTimeLocal = proxyrepairorder.CloseDateTimeLocal; repairorder.DeliveryDateTimeLocal = proxyrepairorder.DeliveryDateTimeLocal; repairorder.Description = proxyrepairorder.Description; repairorder.DMSROID = proxyrepairorder.DMSROID; repairorder.DMSRONo = proxyrepairorder.DMSRONo; repairorder.DMSROStatus = Map.GetWACodeFromDMSCode(CodeType.DMSROStatus, proxyrepairorder.DMSROStatus); repairorder.HangTagColor = proxyrepairorder.HangTagColor; repairorder.HangTagNo = proxyrepairorder.HangTagNo; repairorder.InMileage = proxyrepairorder.InMileage; repairorder.OpenDateTimeLocal = proxyrepairorder.OpenDateTimeLocal; repairorder.OutMileage = proxyrepairorder.OutMileage; repairorder.PaymentMethod = Map.GetWACodeFromDMSCode(CodeType.PaymentMethod, proxyrepairorder.PaymentMethod); repairorder.ROChannel = Map.GetWACodeFromDMSCode(CodeType.ROChannel, proxyrepairorder.ROChannel); repairorder.SAEmployeeID = proxyrepairorder.SAEmployeeID; repairorder.SAEmployeeName = proxyrepairorder.SAEmployeeName; repairorder.ServiceType = Map.GetWACodeFromDMSCode(CodeType.ServiceType, proxyrepairorder.ServiceType); repairorder.TCEmployeeID = proxyrepairorder.TCEmployeeID; repairorder.TCEmployeeName = proxyrepairorder.TCEmployeeName; repairorder.WorkType = Map.GetWACodeFromDMSCode(CodeType.WorkType, proxyrepairorder.WorkType); #endregion #region//RepairOrder CustomerParts if (proxyrepairorder.CustomerParts != null && proxyrepairorder.CustomerParts.Length > 0) { repairorder.CustomerParts = new List<WA.Standard.IF.Data.v2.Common.RepairOrder.CustomerPart>(); foreach (_1C.v8241.RepairOrder.CustomerPart proxycustomerpart in proxyrepairorder.CustomerParts) { WA.Standard.IF.Data.v2.Common.RepairOrder.CustomerPart customerpart = new WA.Standard.IF.Data.v2.Common.RepairOrder.CustomerPart(); customerpart.Comment = proxycustomerpart.Comment; customerpart.PartDescription = proxycustomerpart.PartDescription; customerpart.PartNumber = proxycustomerpart.PartNumber; customerpart.Quantity = proxycustomerpart.Quantity; customerpart.UnitOfMeasure = proxycustomerpart.UnitOfMeasure; repairorder.CustomerParts.Add(customerpart); } } #endregion #region //RepairOrder AdditionalFields if (proxyrepairorder.AdditionalFields != null && proxyrepairorder.AdditionalFields.Length > 0) { repairorder.AdditionalFields = new List<WA.Standard.IF.Data.v2.Common.Common.AdditionalField>(); foreach (_1C.v8241.RepairOrder.AdditionalField proxyadditionalfield in proxyrepairorder.AdditionalFields) { WA.Standard.IF.Data.v2.Common.Common.AdditionalField additionalfield = new WA.Standard.IF.Data.v2.Common.Common.AdditionalField(); additionalfield.AdditionalFieldName = proxyadditionalfield.AdditionalFieldName; additionalfield.AdditionalFieldValue = proxyadditionalfield.AdditionalFieldValue; repairorder.AdditionalFields.Add(additionalfield); } } #endregion #region//RepairOrder JobRefs if (proxyrepairorder.JobRefs != null && proxyrepairorder.JobRefs.Length > 0) { repairorder.JobRefs = new List<WA.Standard.IF.Data.v2.Common.Common.JobRef>(); foreach (_1C.v8241.RepairOrder.JobRef proxyjobref in proxyrepairorder.JobRefs) { WA.Standard.IF.Data.v2.Common.Common.JobRef jobref = new WA.Standard.IF.Data.v2.Common.Common.JobRef(); jobref.DMSJobNo = proxyjobref.DMSJobNo; jobref.DMSJobStatus = Map.GetWACodeFromDMSCode(CodeType.DMSJobStatus, proxyjobref.DMSJobStatus); repairorder.JobRefs.Add(jobref); } } #endregion #region//RepairOrder ManagementFields if (proxyrepairorder.ManagementFields != null) { WA.Standard.IF.Data.v2.Common.Common.ManagementFields managementfields = new WA.Standard.IF.Data.v2.Common.Common.ManagementFields(); managementfields.CreateDateTimeUTC = proxyrepairorder.ManagementFields.CreateDateTimeUTC; managementfields.LastModifiedDateTimeUTC = proxyrepairorder.ManagementFields.LastModifiedDateTimeUTC; repairorder.ManagementFields = managementfields; } #endregion #region//RepairOrder Options if (proxyrepairorder.Options != null && proxyrepairorder.Options.Length > 0) { repairorder.Options = new List<WA.Standard.IF.Data.v2.Common.Common.Option>(); foreach (_1C.v8241.RepairOrder.Option proxyoption in proxyrepairorder.Options) { WA.Standard.IF.Data.v2.Common.Common.Option option = new WA.Standard.IF.Data.v2.Common.Common.Option(); option.OptionName = proxyoption.OptionName; option.OptionValue = proxyoption.OptionValue; repairorder.Options.Add(option); } } #endregion #region//RepairOrder PriceType if (proxyrepairorder.PriceType != null) { WA.Standard.IF.Data.v2.Common.Common.PriceType pricetype = new WA.Standard.IF.Data.v2.Common.Common.PriceType(); pricetype.DiscountPrice = proxyrepairorder.PriceType.DiscountPrice; pricetype.DiscountRate = proxyrepairorder.PriceType.DiscountRate; pricetype.TotalPrice = proxyrepairorder.PriceType.TotalPrice; pricetype.TotalPriceIncludeTax = proxyrepairorder.PriceType.TotalPriceIncludeTax; pricetype.UnitPrice = proxyrepairorder.PriceType.UnitPrice; repairorder.PriceType = pricetype; } #endregion #region//RepairOrder AppointmentRef if (proxyrepairorder.AppointmentRef != null) { WA.Standard.IF.Data.v2.Common.Common.AppointmentRef appointmentref = new WA.Standard.IF.Data.v2.Common.Common.AppointmentRef(); appointmentref.DMSAppointmentID = proxyrepairorder.AppointmentRef.DMSAppointmentID; appointmentref.DMSAppointmentNo = proxyrepairorder.AppointmentRef.DMSAppointmentNo; appointmentref.DMSAppointmentStatus = Map.GetWACodeFromDMSCode(CodeType.DMSAppointmentStatus, proxyrepairorder.AppointmentRef.DMSAppointmentStatus); repairorder.AppointmentRef = appointmentref; } #endregion #region//RepairOrder Customers if (proxyrepairorder.Customers != null && proxyrepairorder.Customers.Length > 0) { repairorder.Customers = new List<WA.Standard.IF.Data.v2.Common.Customer.Customer>(); foreach (_1C.v8241.RepairOrder.Customer proxycustomer in proxyrepairorder.Customers) { #region//RepairOrder Customer Header WA.Standard.IF.Data.v2.Common.Customer.Customer customer = new WA.Standard.IF.Data.v2.Common.Customer.Customer(); customer.CardNo = proxycustomer.CardNo; customer.CorporateInfos = customer.CorporateInfos; customer.CustomerInfoType = Map.GetWACodeFromDMSCode(CodeType.CustomerInfoType, proxycustomer.CustomerInfoType); customer.DMSCustomerNo = proxycustomer.DMSCustomerNo; customer.Email = proxycustomer.Email; customer.FirstName = proxycustomer.FirstName; customer.FullName = proxycustomer.FullName; customer.Gender = Map.GetWACodeFromDMSCode(CodeType.Gender, proxycustomer.Gender); customer.LastName = proxycustomer.LastName; customer.MiddleName = proxycustomer.MiddleName; customer.Salutation = proxycustomer.Salutation; #endregion #region//RepairOrder Customer Addresses if (proxycustomer.Addresses != null && proxycustomer.Addresses.Length > 0) { customer.Addresses = new List<WA.Standard.IF.Data.v2.Common.Customer.Address>(); foreach (_1C.v8241.RepairOrder.Address proxyaddress in proxycustomer.Addresses) { WA.Standard.IF.Data.v2.Common.Customer.Address address = new WA.Standard.IF.Data.v2.Common.Customer.Address(); address.AddressType = Map.GetWACodeFromDMSCode(CodeType.AddressType, proxyaddress.AddressType); address.City = proxyaddress.City; address.District = proxyaddress.District; address.Flat = proxyaddress.Flat; address.FullAddress = proxyaddress.FullAddress; address.House = proxyaddress.House; address.Housing = proxyaddress.Housing; address.Locality = proxyaddress.Locality; address.Region = proxyaddress.Region; address.Street = proxyaddress.Street; address.ZipCode = proxyaddress.ZipCode; customer.Addresses.Add(address); } } #endregion #region//RepairOrder Customer Contacts if (proxycustomer.Contacts != null && proxycustomer.Contacts.Length > 0) { customer.Contacts = new List<WA.Standard.IF.Data.v2.Common.Customer.Contact>(); foreach (_1C.v8241.RepairOrder.Contact proxycontact in proxycustomer.Contacts) { WA.Standard.IF.Data.v2.Common.Customer.Contact contact = new WA.Standard.IF.Data.v2.Common.Customer.Contact(); contact.ContactMethodYN = proxycontact.ContactMethodYN; contact.ContactType = Map.GetWACodeFromDMSCode(CodeType.ContactType, proxycontact.ContactType); contact.ContactValue = proxycontact.ContactValue; customer.Contacts.Add(contact); } } #endregion #region//RepairOrder Customer SpecialMessage if (proxycustomer.SpecialMessage != null) { WA.Standard.IF.Data.v2.Common.Customer.SpecialMessage specialmessage = new WA.Standard.IF.Data.v2.Common.Customer.SpecialMessage(); specialmessage.Message = proxycustomer.SpecialMessage.Message; customer.SpecialMessage = specialmessage; } #endregion #region//RepairOrder Customer CorporateInfos if (proxycustomer.CorporateInfos != null && proxycustomer.CorporateInfos.Length > 0) { customer.CorporateInfos = new List<WA.Standard.IF.Data.v2.Common.Customer.CorporateInfo>(); foreach (_1C.v8241.RepairOrder.CorporateInfo proxycorporateinfo in proxycustomer.CorporateInfos) { WA.Standard.IF.Data.v2.Common.Customer.CorporateInfo corporateinfo = new WA.Standard.IF.Data.v2.Common.Customer.CorporateInfo(); corporateinfo.CorporateInfoName = proxycorporateinfo.CorporateInfoName; corporateinfo.CorporateInfoValue = proxycorporateinfo.CorporateInfoValue; customer.CorporateInfos.Add(corporateinfo); } } #endregion repairorder.Customers.Add(customer); } } #endregion #region//RepairOrder Vehicle if (proxyrepairorder.Vehicle != null) { if (proxyrepairorder.Vehicle != null) { #region//RepairOrder Vehicle Header WA.Standard.IF.Data.v2.Common.Vehicle.Vehicle vehicle = new WA.Standard.IF.Data.v2.Common.Vehicle.Vehicle(); vehicle.Color = proxyrepairorder.Vehicle.Color; vehicle.Cylinders = proxyrepairorder.Vehicle.Cylinders; vehicle.DateDelivered = proxyrepairorder.Vehicle.DateDelivered; vehicle.DateInService = proxyrepairorder.Vehicle.DateInService; vehicle.DeclinedJob = proxyrepairorder.Vehicle.DeclinedJob; vehicle.DisplayDescription = proxyrepairorder.Vehicle.DisplayDescription; vehicle.DMSVehicleNo = proxyrepairorder.Vehicle.DMSVehicleNo; vehicle.EngineCode = proxyrepairorder.Vehicle.EngineCode; vehicle.EngineType = proxyrepairorder.Vehicle.EngineType; vehicle.ExtendedWarranty = proxyrepairorder.Vehicle.ExtendedWarranty; vehicle.FuelType = proxyrepairorder.Vehicle.FuelType; vehicle.FullModelName = proxyrepairorder.Vehicle.FullModelName; vehicle.InsuranceDate = proxyrepairorder.Vehicle.InsuranceDate; vehicle.LastMileage = proxyrepairorder.Vehicle.LastMileage; vehicle.LastServiceDate = proxyrepairorder.Vehicle.LastServiceDate; //vehicle.LastSixVIN = string.IsNullOrEmpty(proxyrepairorder.Vehicle.LastSixVIN); vehicle.LicenseNumber = proxyrepairorder.Vehicle.LicenseNumber; vehicle.LicensePlateNo = proxyrepairorder.Vehicle.LicensePlateNo; vehicle.Make = proxyrepairorder.Vehicle.Make; vehicle.ModelCode = proxyrepairorder.Vehicle.ModelCode; vehicle.ModelName = proxyrepairorder.Vehicle.ModelName; vehicle.ModelYear = proxyrepairorder.Vehicle.ModelYear; vehicle.PendingJob = proxyrepairorder.Vehicle.PendingJob; vehicle.StockNumber = proxyrepairorder.Vehicle.StockNumber; vehicle.Trim = proxyrepairorder.Vehicle.Trim; vehicle.VehicleType = Map.GetWACodeFromDMSCode(CodeType.VehicleType, proxyrepairorder.Vehicle.VehicleType); vehicle.VIN = proxyrepairorder.Vehicle.VIN; vehicle.WarrantyMiles = proxyrepairorder.Vehicle.WarrantyMiles; vehicle.WarrantyMonths = proxyrepairorder.Vehicle.WarrantyMonths; vehicle.WarrantyStartDate = proxyrepairorder.Vehicle.WarrantyStartDate; vehicle.EngineNo = proxyrepairorder.Vehicle.EngineNo; vehicle.ExtendedWarrantyExpireDate = proxyrepairorder.Vehicle.ExtendedWarrantyExpireDate; #endregion #region//RepairOrder Vehicle Campaigns if (proxyrepairorder.Vehicle.Campaigns != null && proxyrepairorder.Vehicle.Campaigns.Length > 0) { vehicle.Campaigns = new List<WA.Standard.IF.Data.v2.Common.Vehicle.Campaign>(); foreach (_1C.v8241.RepairOrder.Campaign proxycampaign in proxyrepairorder.Vehicle.Campaigns) { WA.Standard.IF.Data.v2.Common.Vehicle.Campaign campaign = new WA.Standard.IF.Data.v2.Common.Vehicle.Campaign(); campaign.CampaignDescription = proxycampaign.CampaignDescription; campaign.CampaignID = proxycampaign.CampaignID; campaign.CampaignPerformed = proxycampaign.CampaignPerformed; vehicle.Campaigns.Add(campaign); } } #endregion repairorder.Vehicle = vehicle; } } #endregion #region//RepairOrder RequestItems if (proxyrepairorder.RequestItems != null && proxyrepairorder.RequestItems.Length > 0) { repairorder.RequestItems = new List<WA.Standard.IF.Data.v2.Common.Common.RequestItem>(); foreach (_1C.v8241.RepairOrder.RequestItem proxyrequestitem in proxyrepairorder.RequestItems) { #region//RepairOrder RequestItem Header WA.Standard.IF.Data.v2.Common.Common.RequestItem requestitem = new WA.Standard.IF.Data.v2.Common.Common.RequestItem(); requestitem.CPSIND = proxyrequestitem.CPSIND; requestitem.RequestCode = proxyrequestitem.RequestCode; requestitem.RequestDescription = proxyrequestitem.RequestDescription; requestitem.ServiceLineNumber = proxyrequestitem.ServiceLineNumber; requestitem.ServiceLineStatus = Map.GetWACodeFromDMSCode(CodeType.ServiceLineStatus, proxyrequestitem.ServiceLineStatus); requestitem.ServiceType = Map.GetWACodeFromDMSCode(CodeType.ServiceType, proxyrequestitem.ServiceType); requestitem.TCEmployeeID = proxyrequestitem.TCEmployeeID; requestitem.TCEmployeeName = proxyrequestitem.TCEmployeeName; requestitem.WorkType = Map.GetWACodeFromDMSCode(CodeType.WorkType, proxyrequestitem.WorkType); #endregion #region//RepairOrder RequestItem Comments if (proxyrequestitem.Comments != null && proxyrequestitem.Comments.Length > 0) { requestitem.Comments = new List<WA.Standard.IF.Data.v2.Common.Common.Comment>(); foreach (_1C.v8241.RepairOrder.Comment proxycomment in proxyrequestitem.Comments) { WA.Standard.IF.Data.v2.Common.Common.Comment comment = new WA.Standard.IF.Data.v2.Common.Common.Comment(); comment.DescriptionComment = proxycomment.DescriptionComment; comment.SequenceNumber = proxycomment.SequenceNumber; requestitem.Comments.Add(comment); } } #endregion #region//RepairOrder RequestItem Descriptions if (proxyrequestitem.Descriptions != null && proxyrequestitem.Descriptions.Length > 0) { requestitem.Descriptions = new List<WA.Standard.IF.Data.v2.Common.Common.Description>(); foreach (_1C.v8241.RepairOrder.Description proxydescription in proxyrequestitem.Descriptions) { WA.Standard.IF.Data.v2.Common.Common.Description description = new WA.Standard.IF.Data.v2.Common.Common.Description(); description.DescriptionComment = proxydescription.DescriptionComment; description.SequenceNumber = proxydescription.SequenceNumber; requestitem.Descriptions.Add(description); } } #endregion #region//RepairOrder RequestItem OPCodes if (proxyrequestitem.OPCodes != null && proxyrequestitem.OPCodes.Length > 0) { requestitem.OPCodes = new List<WA.Standard.IF.Data.v2.Common.Common.OPCode>(); foreach (_1C.v8241.RepairOrder.OPCode proxyopcode in proxyrequestitem.OPCodes) { #region//RepairOrder RequestItem OPCode Header WA.Standard.IF.Data.v2.Common.Common.OPCode opcode = new WA.Standard.IF.Data.v2.Common.Common.OPCode(); opcode.ActualHours = proxyopcode.ActualHours; opcode.Code = proxyopcode.Code; opcode.Description = proxyopcode.Description; opcode.EstimatedHours = proxyopcode.EstimatedHours; opcode.OPCodeType = Map.GetWACodeFromDMSCode(CodeType.OPCodeType, proxyopcode.OPCodeType); opcode.Quantity = proxyopcode.Quantity; opcode.SequenceNumber = proxyopcode.SequenceNumber; opcode.ServiceType = Map.GetWACodeFromDMSCode(CodeType.ServiceType, proxyopcode.ServiceType); opcode.SkillLevel = proxyopcode.SkillLevel; #endregion #region//RepairOrder RequestItem OPCode Descriptions if (proxyopcode.Descriptions != null && proxyopcode.Descriptions.Length > 0) { opcode.Descriptions = new List<WA.Standard.IF.Data.v2.Common.Common.Description>(); foreach (_1C.v8241.RepairOrder.Description proxydescription in proxyopcode.Descriptions) { WA.Standard.IF.Data.v2.Common.Common.Description description = new WA.Standard.IF.Data.v2.Common.Common.Description(); description.DescriptionComment = proxydescription.DescriptionComment; description.SequenceNumber = proxydescription.SequenceNumber; opcode.Descriptions.Add(description); } } #endregion #region//RepairOrder RequestItem OPCode Causes if (proxyopcode.Causes != null && proxyopcode.Causes.Length > 0) { opcode.Causes = new List<WA.Standard.IF.Data.v2.Common.Common.Cause>(); foreach (_1C.v8241.RepairOrder.Cause proxycause in proxyopcode.Causes) { WA.Standard.IF.Data.v2.Common.Common.Cause cause = new WA.Standard.IF.Data.v2.Common.Common.Cause(); cause.CauseLaborOpCode = proxycause.CauseLaborOpCode; cause.Comment = proxycause.Comment; cause.SequenceNumber = proxycause.SequenceNumber; opcode.Causes.Add(cause); } } #endregion #region//RepairOrder RequestItem OPCode Corrections if (proxyopcode.Corrections != null && proxyopcode.Corrections.Length > 0) { opcode.Corrections = new List<WA.Standard.IF.Data.v2.Common.Common.Correction>(); foreach (_1C.v8241.RepairOrder.Correction proxycorrection in proxyopcode.Corrections) { WA.Standard.IF.Data.v2.Common.Common.Correction correction = new WA.Standard.IF.Data.v2.Common.Common.Correction(); correction.CorrectionLaborOpCode = proxycorrection.CorrectionLaborOpCode; correction.Comment = proxycorrection.Comment; correction.SequenceNumber = proxycorrection.SequenceNumber; opcode.Corrections.Add(correction); } } #endregion #region//RepairOrder RequestItem OPCode PriceType if (proxyopcode.PriceType != null) { WA.Standard.IF.Data.v2.Common.Common.PriceType pricetype = new WA.Standard.IF.Data.v2.Common.Common.PriceType(); pricetype.DiscountPrice = proxyopcode.PriceType.DiscountPrice; pricetype.DiscountRate = proxyopcode.PriceType.DiscountRate; pricetype.TotalPrice = proxyopcode.PriceType.TotalPrice; pricetype.TotalPriceIncludeTax = proxyopcode.PriceType.TotalPriceIncludeTax; pricetype.UnitPrice = proxyopcode.PriceType.UnitPrice; opcode.PriceType = pricetype; } #endregion #region//RepairOrder RequestItem OPCode Parts if (proxyopcode.Parts != null && proxyopcode.Parts.Length > 0) { opcode.Parts = new List<WA.Standard.IF.Data.v2.Common.Common.Part>(); foreach (_1C.v8241.RepairOrder.Part proxypart in proxyopcode.Parts) { #region//RepairOrder RequestItem OPCode Parts Header WA.Standard.IF.Data.v2.Common.Common.Part part = new WA.Standard.IF.Data.v2.Common.Common.Part(); part.DisplayPartNumber = proxypart.DisplayPartNumber; part.PartDescription = proxypart.PartDescription; part.PartNumber = proxypart.PartNumber; part.PartType = Map.GetWACodeFromDMSCode(CodeType.PartType, proxypart.PartType); part.Quantity = proxypart.Quantity; part.SequenceNumber = proxypart.SequenceNumber; part.ServiceType = Map.GetWACodeFromDMSCode(CodeType.ServiceType, proxypart.ServiceType); part.StockQuantity = proxypart.StockQuantity; part.StockStatus = proxypart.StockStatus; part.UnitOfMeasure = proxypart.UnitOfMeasure; #endregion #region//RepairOrder RequestItem OPCode Parts Descriptions if (proxypart.Descriptions != null && proxypart.Descriptions.Length > 0) { part.Descriptions = new List<WA.Standard.IF.Data.v2.Common.Common.Description>(); foreach (_1C.v8241.RepairOrder.Description proxydescription in proxypart.Descriptions) { WA.Standard.IF.Data.v2.Common.Common.Description description = new WA.Standard.IF.Data.v2.Common.Common.Description(); description.DescriptionComment = proxydescription.DescriptionComment; description.SequenceNumber = proxydescription.SequenceNumber; part.Descriptions.Add(description); } } #endregion #region//RepairOrder RequestItem OPCode Parts PriceType if (proxypart.PriceType != null) { WA.Standard.IF.Data.v2.Common.Common.PriceType pricetype = new WA.Standard.IF.Data.v2.Common.Common.PriceType(); pricetype.DiscountPrice = proxypart.PriceType.DiscountPrice; pricetype.DiscountRate = proxypart.PriceType.DiscountRate; pricetype.TotalPrice = proxypart.PriceType.TotalPrice; pricetype.TotalPriceIncludeTax = proxypart.PriceType.TotalPriceIncludeTax; pricetype.UnitPrice = proxypart.PriceType.UnitPrice; part.PriceType = pricetype; } #endregion opcode.Parts.Add(part); } } #endregion #region//RepairOrder RequestItem OPCode Sublets if (proxyopcode.Sublets != null && proxyopcode.Sublets.Length > 0) { opcode.Sublets = new List<WA.Standard.IF.Data.v2.Common.Common.Sublet>(); foreach (_1C.v8241.RepairOrder.Sublet proxysublet in proxyopcode.Sublets) { #region//RepairOrder RequestItem OPCode Sublet Header WA.Standard.IF.Data.v2.Common.Common.Sublet sublet = new WA.Standard.IF.Data.v2.Common.Common.Sublet(); sublet.SequenceNumber = proxysublet.SequenceNumber; sublet.ServiceType = Map.GetWACodeFromDMSCode(CodeType.ServiceType, proxysublet.ServiceType); #endregion #region//RepairOrder RequestItem OPCode Sublets Descriptions if (proxysublet.Descriptions != null && proxysublet.Descriptions.Length > 0) { sublet.Descriptions = new List<WA.Standard.IF.Data.v2.Common.Common.Description>(); foreach (_1C.v8241.RepairOrder.Description proxydescription in proxysublet.Descriptions) { WA.Standard.IF.Data.v2.Common.Common.Description description = new WA.Standard.IF.Data.v2.Common.Common.Description(); description.DescriptionComment = proxydescription.DescriptionComment; description.SequenceNumber = proxydescription.SequenceNumber; sublet.Descriptions.Add(description); } } #endregion #region//RepairOrder RequestItem OPCode Sublets PriceType if (proxysublet.PriceType != null) { WA.Standard.IF.Data.v2.Common.Common.PriceType pricetype = new WA.Standard.IF.Data.v2.Common.Common.PriceType(); pricetype.DiscountPrice = proxysublet.PriceType.DiscountPrice; pricetype.DiscountRate = proxysublet.PriceType.DiscountRate; pricetype.TotalPrice = proxysublet.PriceType.TotalPrice; pricetype.TotalPriceIncludeTax = proxysublet.PriceType.TotalPriceIncludeTax; pricetype.UnitPrice = proxysublet.PriceType.UnitPrice; sublet.PriceType = pricetype; } #endregion opcode.Sublets.Add(sublet); } } #endregion #region//RepairOrder RequestItem OPCode MISCs if (proxyopcode.MISCs != null && proxyopcode.MISCs.Length > 0) { opcode.MISCs = new List<WA.Standard.IF.Data.v2.Common.Common.MISC>(); foreach (_1C.v8241.RepairOrder.MISC proxymisc in proxyopcode.MISCs) { #region//RepairOrder RequestItem OPCode MISC Header WA.Standard.IF.Data.v2.Common.Common.MISC misc = new WA.Standard.IF.Data.v2.Common.Common.MISC(); misc.SequenceNumber = proxymisc.SequenceNumber; misc.ServiceType = Map.GetWACodeFromDMSCode(CodeType.ServiceType, proxymisc.ServiceType); #endregion #region//RepairOrder RequestItem OPCode MISCs Descriptions if (proxymisc.Descriptions != null && proxymisc.Descriptions.Length > 0) { misc.Descriptions = new List<WA.Standard.IF.Data.v2.Common.Common.Description>(); foreach (_1C.v8241.RepairOrder.Description proxydescription in proxymisc.Descriptions) { WA.Standard.IF.Data.v2.Common.Common.Description description = new WA.Standard.IF.Data.v2.Common.Common.Description(); description.DescriptionComment = proxydescription.DescriptionComment; description.SequenceNumber = proxydescription.SequenceNumber; misc.Descriptions.Add(description); } } #endregion #region//RepairOrder RequestItem OPCode MISCs PriceType if (proxymisc.PriceType != null) { WA.Standard.IF.Data.v2.Common.Common.PriceType pricetype = new WA.Standard.IF.Data.v2.Common.Common.PriceType(); //pricetype.DiscountPrice = proxymisc.PriceType.DiscountPrice; //수정필요 PriceType 데이터가 아님 단순 Object로 선언 됨 //pricetype.DiscountRate = proxymisc.PriceType.DiscountRate; //pricetype.TotalPrice = proxymisc.PriceType.TotalPrice; //pricetype.TotalPriceIncludeTax = proxymisc.PriceType.TotalPriceIncludeTax; //pricetype.UnitPrice = proxymisc.PriceType.UnitPrice; misc.PriceType = pricetype; } #endregion opcode.MISCs.Add(misc); } } #endregion requestitem.OPCodes.Add(opcode); } } #endregion repairorder.RequestItems.Add(requestitem); } } #endregion repairorderdocument.RepairOrders.Add(repairorder); } } response.RepairOrderDocuments.Add(repairorderdocument); } } else { response.ResultMessage = GetResultMessageData(WA.Standard.IF.Data.v2.Common.Common.ResponseCode.NoResult, WA.Standard.IF.Data.v2.Common.Common.ResponseMessage.NoResult); } #endregion } } #endregion return response; }
public WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderChangeResponse RepairOrderChange(WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderChangeRequest request) { WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderChangeResponse response = new WA.Standard.IF.Data.v2.Common.RepairOrder.RepairOrderChangeResponse(); #region 1C.v8241.v2 - RTR.Standard.IF.WebService #region RepairOrderChange Request Set //Create proxy credential NetworkCredential proxycredential = new NetworkCredential(request.TransactionHeader.Username, request.TransactionHeader.Password); //Create proxy web service from dms web service with credential _1C.v8241.RepairOrder.RepairOrder proxyws = new _1C.v8241.RepairOrder.RepairOrder(); proxyws.Credentials = proxycredential; //Create proxy request with repairorderchange and transaction _1C.v8241.RepairOrder.RepairOrderChangeRequest proxyrequest = new _1C.v8241.RepairOrder.RepairOrderChangeRequest(); //Create proxy transaction _1C.v8241.RepairOrder.TransactionHeader proxytransactionheader = new _1C.v8241.RepairOrder.TransactionHeader(); if (request.TransactionHeader != null) { #region//TransactionHeader Set proxytransactionheader.CountryID = request.TransactionHeader.CountryID; proxytransactionheader.DealerID = request.TransactionHeader.DealerID; proxytransactionheader.DistributorID = request.TransactionHeader.DistributorID; proxytransactionheader.DMSCode = request.TransactionHeader.DMSCode; proxytransactionheader.DMSServerUrl = request.TransactionHeader.DMSServerUrl; proxytransactionheader.DMSVersion = request.TransactionHeader.DMSVersion; proxytransactionheader.DocumentVersion = request.TransactionHeader.DocumentVersion; proxytransactionheader.GroupID = request.TransactionHeader.GroupID; proxytransactionheader.IneterfaceID = request.TransactionHeader.IneterfaceID; proxytransactionheader.Password = request.TransactionHeader.Password; proxytransactionheader.PollingToken = request.TransactionHeader.PollingToken; proxytransactionheader.RequestPollingToken = request.TransactionHeader.RequestPollingToken; proxytransactionheader.RequestType = request.TransactionHeader.RequestType; proxytransactionheader.TransactionId = request.TransactionHeader.TransactionId; proxytransactionheader.TransactionDateTimeLocal = request.TransactionHeader.TransactionDateTimeLocal; proxytransactionheader.TransactionDateTimeLocalSpecified = request.TransactionHeader.TransactionDateTimeLocal != null;//수정필요 proxytransactionheader.TransactionDateTimeUTC = request.TransactionHeader.TransactionDateTimeLocal; proxytransactionheader.TransactionDateTimeUTCSpecified = request.TransactionHeader.TransactionDateTimeLocal != null;//수정필요 proxytransactionheader.TransactionType = request.TransactionHeader.TransactionType; proxytransactionheader.Username = request.TransactionHeader.Username; proxytransactionheader.VenderTrackingCode = request.TransactionHeader.VenderTrackingCode; proxyrequest.TransactionHeader = proxytransactionheader; proxyws.Url = string.Format("{0}/rtr-atest/ws/RepairOrder.1cws", proxytransactionheader.DMSServerUrl); #endregion } //Create proxy repairorderchange _1C.v8241.RepairOrder.RepairOrderChange proxyrepairorderchange = new _1C.v8241.RepairOrder.RepairOrderChange(); if (request.RepairOrderChange != null) { #region//RepairOrder Header proxyrepairorderchange.CloseDateTimeLocal = request.RepairOrderChange.CloseDateTimeLocal != null ? Convert.ToDateTime(request.RepairOrderChange.CloseDateTimeLocal) : DateTime.MinValue;//수정필요 proxyrepairorderchange.CloseDateTimeLocalSpecified = request.RepairOrderChange.CloseDateTimeLocal != null;//수정필요 proxyrepairorderchange.DeliveryDateTimeLocal = request.RepairOrderChange.DeliveryDateTimeLocal != null ? Convert.ToDateTime(request.RepairOrderChange.DeliveryDateTimeLocal) : DateTime.MinValue;//수정필요 proxyrepairorderchange.DeliveryDateTimeLocalSpecified = request.RepairOrderChange.DeliveryDateTimeLocal != null;//수정필요 proxyrepairorderchange.DMSROID = request.RepairOrderChange.DMSROID; proxyrepairorderchange.DMSRONo = string.IsNullOrEmpty(request.RepairOrderChange.DMSRONo) ? string.Empty : request.RepairOrderChange.DMSRONo; proxyrepairorderchange.DMSROStatus = Map.SetDMSCodeFromWACode(CodeType.DMSROStatus, request.RepairOrderChange.DMSROStatus); proxyrepairorderchange.HangTagColor = request.RepairOrderChange.HangTagColor; proxyrepairorderchange.HangTagNo = request.RepairOrderChange.HangTagNo; proxyrepairorderchange.OpenDateTimeLocal = request.RepairOrderChange.OpenDateTimeLocal != null ? Convert.ToDateTime(request.RepairOrderChange.OpenDateTimeLocal) : DateTime.MinValue;//수정필요 proxyrepairorderchange.OpenDateTimeLocalSpecified = request.RepairOrderChange.OpenDateTimeLocal != null;//수정필요 proxyrepairorderchange.InMileage = request.RepairOrderChange.InMileage; proxyrepairorderchange.OutMileage = request.RepairOrderChange.OutMileage; proxyrepairorderchange.PaymentMethod = Map.SetDMSCodeFromWACode(CodeType.PaymentMethod, request.RepairOrderChange.PaymentMethod); proxyrepairorderchange.ROChannel = Map.SetDMSCodeFromWACode(CodeType.ROChannel, request.RepairOrderChange.ROChannel); proxyrepairorderchange.SAEmployeeID = request.RepairOrderChange.SAEmployeeID; proxyrepairorderchange.SAEmployeeName = request.RepairOrderChange.SAEmployeeName; proxyrepairorderchange.ServiceType = Map.SetDMSCodeFromWACode(CodeType.ServiceType, request.RepairOrderChange.ServiceType); proxyrepairorderchange.TCEmployeeID = request.RepairOrderChange.TCEmployeeID; proxyrepairorderchange.TCEmployeeName = request.RepairOrderChange.TCEmployeeName; proxyrepairorderchange.WorkType = Map.SetDMSCodeFromWACode(CodeType.WorkType, request.RepairOrderChange.WorkType); proxyrepairorderchange.Description = request.RepairOrderChange.Description; #endregion #region//RepairOrder AppointmentRef if (request.RepairOrderChange.AppointmentRef != null) { _1C.v8241.RepairOrder.AppointmentRef proxyappointmentref = new _1C.v8241.RepairOrder.AppointmentRef(); proxyappointmentref.DMSAppointmentNo = request.RepairOrderChange.AppointmentRef.DMSAppointmentNo; proxyappointmentref.DMSAppointmentStatus = Map.SetDMSCodeFromWACode(CodeType.DMSAppointmentStatus, request.RepairOrderChange.AppointmentRef.DMSAppointmentStatus); proxyrepairorderchange.AppointmentRef = proxyappointmentref; } #endregion #region//RepairOrder CustomerParts if (request.RepairOrderChange.CustomerParts != null && request.RepairOrderChange.CustomerParts.Count > 0) { int customerpartscnt = 0; _1C.v8241.RepairOrder.CustomerPart[] proxycustomerparts = new _1C.v8241.RepairOrder.CustomerPart[request.RepairOrderChange.CustomerParts.Count]; foreach (WA.Standard.IF.Data.v2.Common.RepairOrder.CustomerPart customerpart in request.RepairOrderChange.CustomerParts) { _1C.v8241.RepairOrder.CustomerPart proxycustomerpart = new _1C.v8241.RepairOrder.CustomerPart(); proxycustomerpart.Comment = customerpart.Comment; proxycustomerpart.PartDescription = customerpart.PartDescription; proxycustomerpart.PartNumber = customerpart.PartNumber; proxycustomerpart.Quantity = customerpart.Quantity; proxycustomerpart.UnitOfMeasure = customerpart.UnitOfMeasure; proxycustomerparts[customerpartscnt] = proxycustomerpart; customerpartscnt++; } } #endregion #region //RepairOrder AdditionalFields if (request.RepairOrderChange.AdditionalFields != null && request.RepairOrderChange.AdditionalFields.Count > 0) { int additionalfieldscnt = 0; _1C.v8241.RepairOrder.AdditionalField[] proxyadditionalfields = new _1C.v8241.RepairOrder.AdditionalField[request.RepairOrderChange.AdditionalFields.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.AdditionalField additionalfield in request.RepairOrderChange.AdditionalFields) { _1C.v8241.RepairOrder.AdditionalField proxyadditionalfield = new _1C.v8241.RepairOrder.AdditionalField(); proxyadditionalfield.AdditionalFieldName = additionalfield.AdditionalFieldName; proxyadditionalfield.AdditionalFieldValue = additionalfield.AdditionalFieldValue; proxyadditionalfields[additionalfieldscnt] = proxyadditionalfield; additionalfieldscnt++; } proxyrepairorderchange.AdditionalFields = proxyadditionalfields; } #endregion #region//RepairOrder Options if (request.RepairOrderChange.Options != null && request.RepairOrderChange.Options.Count > 0) { int optionscnt = 0; _1C.v8241.RepairOrder.Option[] proxyoptions = new _1C.v8241.RepairOrder.Option[request.RepairOrderChange.Options.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Option option in request.RepairOrderChange.Options) { _1C.v8241.RepairOrder.Option proxyoption = new _1C.v8241.RepairOrder.Option(); proxyoption.OptionName = option.OptionName; proxyoption.OptionValue = option.OptionValue; proxyoptions[optionscnt] = proxyoption; optionscnt++; } proxyrepairorderchange.Options = proxyoptions; } #endregion #region//RepairOrder PriceType if (request.RepairOrderChange.PriceType != null) { _1C.v8241.RepairOrder.PriceType proxypricetype = new _1C.v8241.RepairOrder.PriceType(); proxypricetype.DiscountPrice = request.RepairOrderChange.PriceType.DiscountPrice; proxypricetype.DiscountRate = request.RepairOrderChange.PriceType.DiscountRate; proxypricetype.TotalPrice = request.RepairOrderChange.PriceType.TotalPrice; proxypricetype.TotalPriceIncludeTax = request.RepairOrderChange.PriceType.TotalPriceIncludeTax; proxypricetype.UnitPrice = request.RepairOrderChange.PriceType.UnitPrice; proxyrepairorderchange.PriceType = proxypricetype; } #endregion #region//RepairOrder Customers if (request.RepairOrderChange.Customers != null && request.RepairOrderChange.Customers.Count > 0) { int customerscnt = 0; _1C.v8241.RepairOrder.Customer[] proxycustomers = new _1C.v8241.RepairOrder.Customer[request.RepairOrderChange.Customers.Count]; foreach (WA.Standard.IF.Data.v2.Common.Customer.Customer customer in request.RepairOrderChange.Customers) { #region//RepairOrder Customer Header _1C.v8241.RepairOrder.Customer proxycustomer = new _1C.v8241.RepairOrder.Customer(); //proxycustomer.CardNo = customer.CardNo; proxycustomer.CustomerInfoType = Map.SetDMSCodeFromWACode(CodeType.CustomerInfoType, customer.CustomerInfoType); proxycustomer.DMSCustomerNo = customer.DMSCustomerNo; proxycustomer.Email = customer.Email; //proxycustomer.FirstName = customer.FirstName; //proxycustomer.FullName = customer.FullName; //proxycustomer.Gender = Map.SetDMSCodeFromWACode(CodeType.Gender, customer.Gender); //proxycustomer.LastName = customer.LastName; //proxycustomer.MiddleName = customer.MiddleName; //proxycustomer.Salutation = customer.Salutation; #endregion #region//RepairOrder Customer Addresses if (customer.Addresses != null && customer.Addresses.Count > 0) { int addressescnt = 0; _1C.v8241.RepairOrder.Address[] proxyaddresses = new _1C.v8241.RepairOrder.Address[customer.Addresses.Count]; foreach (WA.Standard.IF.Data.v2.Common.Customer.Address address in customer.Addresses) { _1C.v8241.RepairOrder.Address proxyaddress = new _1C.v8241.RepairOrder.Address(); proxyaddress.AddressType = Map.SetDMSCodeFromWACode(CodeType.AddressType, address.AddressType); proxyaddress.City = address.City; proxyaddress.District = address.District; proxyaddress.Flat = address.Flat; //proxyaddress.FullAddress = "Need to fix. FullAddress is not a mandatory.";// proxyaddress.House = address.House; proxyaddress.Housing = address.Housing; proxyaddress.Locality = address.Locality; proxyaddress.Region = address.Region; proxyaddress.Street = address.Street; proxyaddress.ZipCode = address.ZipCode; proxyaddresses[addressescnt] = proxyaddress; addressescnt++; } proxycustomer.Addresses = proxyaddresses; } #endregion #region//RepairOrder Customer Contacts if (customer.Contacts != null && customer.Contacts.Count > 0) { int contactscnt = 0; _1C.v8241.RepairOrder.Contact[] proxycontacts = new _1C.v8241.RepairOrder.Contact[customer.Contacts.Count]; foreach (WA.Standard.IF.Data.v2.Common.Customer.Contact contact in customer.Contacts) { _1C.v8241.RepairOrder.Contact proxycontact = new _1C.v8241.RepairOrder.Contact(); proxycontact.ContactMethodYN = contact.ContactMethodYN; proxycontact.ContactType = Map.SetDMSCodeFromWACode(CodeType.ContactType, contact.ContactType); proxycontact.ContactValue = contact.ContactValue; proxycontacts[contactscnt] = proxycontact; contactscnt++; } proxycustomer.Contacts = proxycontacts; } #endregion #region//RepairOrder Customer SpecialMessage if (customer.SpecialMessage != null) { _1C.v8241.RepairOrder.SpecialMessage proxyspecialmessage = new _1C.v8241.RepairOrder.SpecialMessage(); proxyspecialmessage.Message = customer.SpecialMessage.Message; proxycustomer.SpecialMessage = proxyspecialmessage; } #endregion #region//RepairOrder Customer CorporateInfos if (customer.CorporateInfos != null && customer.CorporateInfos.Count > 0) { int corporateinfoscnt = 0; _1C.v8241.RepairOrder.CorporateInfo[] proxycorporateinfos = new _1C.v8241.RepairOrder.CorporateInfo[customer.CorporateInfos.Count]; foreach (WA.Standard.IF.Data.v2.Common.Customer.CorporateInfo corporateinfo in customer.CorporateInfos) { _1C.v8241.RepairOrder.CorporateInfo proxycorporateinfo = new _1C.v8241.RepairOrder.CorporateInfo(); proxycorporateinfo.CorporateInfoName = corporateinfo.CorporateInfoName; proxycorporateinfo.CorporateInfoValue = corporateinfo.CorporateInfoValue; proxycorporateinfos[corporateinfoscnt] = proxycorporateinfo; corporateinfoscnt++; } proxycustomer.CorporateInfos = proxycorporateinfos; } #endregion proxycustomers[customerscnt] = proxycustomer; } proxyrepairorderchange.Customers = proxycustomers; } #endregion #region//RepairOrder Vehicle if (request.RepairOrderChange.Vehicle != null) { #region//RepairOrder Vehicle Header _1C.v8241.RepairOrder.Vehicle proxyvehicle = new _1C.v8241.RepairOrder.Vehicle(); proxyvehicle.Color = request.RepairOrderChange.Vehicle.Color; proxyvehicle.Cylinders = request.RepairOrderChange.Vehicle.Cylinders; proxyvehicle.DateDelivered = request.RepairOrderChange.Vehicle.DateDelivered != null ? Convert.ToDateTime(request.RepairOrderChange.Vehicle.DateDelivered) : DateTime.MinValue;//수정필요 proxyvehicle.DateInService = request.RepairOrderChange.Vehicle.DateInService != null ? Convert.ToDateTime(request.RepairOrderChange.Vehicle.DateInService) : DateTime.MinValue;//수정필요 proxyvehicle.DeclinedJob = request.RepairOrderChange.Vehicle.DeclinedJob; proxyvehicle.DisplayDescription = request.RepairOrderChange.Vehicle.DisplayDescription; proxyvehicle.DMSVehicleNo = request.RepairOrderChange.Vehicle.DMSVehicleNo; proxyvehicle.EngineCode = request.RepairOrderChange.Vehicle.EngineCode; proxyvehicle.EngineType = request.RepairOrderChange.Vehicle.EngineType; proxyvehicle.ExtendedWarranty = request.RepairOrderChange.Vehicle.ExtendedWarranty != null ? Convert.ToDateTime(request.RepairOrderChange.Vehicle.ExtendedWarranty) : DateTime.MinValue;//수정필요 proxyvehicle.FuelType = request.RepairOrderChange.Vehicle.FuelType; proxyvehicle.FullModelName = request.RepairOrderChange.Vehicle.FullModelName; proxyvehicle.InsuranceDate = request.RepairOrderChange.Vehicle.InsuranceDate != null ? Convert.ToDateTime(request.RepairOrderChange.Vehicle.InsuranceDate) : DateTime.MinValue;//수정필요 proxyvehicle.LastMileage = request.RepairOrderChange.Vehicle.LastMileage; proxyvehicle.LastServiceDate = request.RepairOrderChange.Vehicle.LastServiceDate != null ? Convert.ToDateTime(request.RepairOrderChange.Vehicle.LastServiceDate) : DateTime.MinValue;//수정필요 //proxyvehicle.LastSixVIN = request.RepairOrderChange.Vehicle.LastSixVIN; proxyvehicle.LicenseNumber = request.RepairOrderChange.Vehicle.LicenseNumber; proxyvehicle.LicensePlateNo = request.RepairOrderChange.Vehicle.LicensePlateNo; proxyvehicle.Make = request.RepairOrderChange.Vehicle.Make; proxyvehicle.ModelCode = request.RepairOrderChange.Vehicle.ModelCode; proxyvehicle.ModelName = request.RepairOrderChange.Vehicle.ModelName; proxyvehicle.ModelYear = request.RepairOrderChange.Vehicle.ModelYear; proxyvehicle.PendingJob = request.RepairOrderChange.Vehicle.PendingJob; proxyvehicle.StockNumber = request.RepairOrderChange.Vehicle.StockNumber; proxyvehicle.Trim = request.RepairOrderChange.Vehicle.Trim; proxyvehicle.VehicleType = Map.SetDMSCodeFromWACode(CodeType.VehicleType, request.RepairOrderChange.Vehicle.VehicleType); proxyvehicle.VIN = request.RepairOrderChange.Vehicle.VIN; proxyvehicle.WarrantyMiles = request.RepairOrderChange.Vehicle.WarrantyMiles; proxyvehicle.WarrantyMonths = request.RepairOrderChange.Vehicle.WarrantyMonths; proxyvehicle.WarrantyStartDate = request.RepairOrderChange.Vehicle.WarrantyStartDate != null ? Convert.ToDateTime(request.RepairOrderChange.Vehicle.WarrantyStartDate) : DateTime.MinValue;//수정필요 proxyvehicle.EngineNo = request.RepairOrderChange.Vehicle.EngineNo; proxyvehicle.ExtendedWarrantyExpireDate = request.RepairOrderChange.Vehicle.ExtendedWarrantyExpireDate != null ? Convert.ToDateTime(request.RepairOrderChange.Vehicle.ExtendedWarrantyExpireDate) : DateTime.MinValue;//수정필요 #endregion #region//RepairOrder Vehicle Campaigns if (request.RepairOrderChange.Vehicle.Campaigns != null && request.RepairOrderChange.Vehicle.Campaigns.Count > 0) { int campaignscnt = 0; _1C.v8241.RepairOrder.Campaign[] proxycampaigns = new _1C.v8241.RepairOrder.Campaign[request.RepairOrderChange.Vehicle.Campaigns.Count]; foreach (WA.Standard.IF.Data.v2.Common.Vehicle.Campaign campaign in request.RepairOrderChange.Vehicle.Campaigns) { _1C.v8241.RepairOrder.Campaign proxycampaign = new _1C.v8241.RepairOrder.Campaign(); proxycampaign.CampaignDescription = campaign.CampaignDescription; proxycampaign.CampaignID = campaign.CampaignID; proxycampaign.CampaignPerformed = campaign.CampaignPerformed; proxycampaigns[campaignscnt] = proxycampaign; campaignscnt++; } proxyvehicle.Campaigns = proxycampaigns; } #endregion proxyrepairorderchange.Vehicle = proxyvehicle; } #endregion #region//RepairOrder RequestItems if (request.RepairOrderChange.RequestItems != null && request.RepairOrderChange.RequestItems.Count > 0) { int requestitemscnt = 0; _1C.v8241.RepairOrder.RequestItem[] proxyrequestitems = new _1C.v8241.RepairOrder.RequestItem[request.RepairOrderChange.RequestItems.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.RequestItem requestitem in request.RepairOrderChange.RequestItems) { #region//RepairOrder RequestItem Header _1C.v8241.RepairOrder.RequestItem proxyrequestitem = new _1C.v8241.RepairOrder.RequestItem(); proxyrequestitem.CPSIND = requestitem.CPSIND; proxyrequestitem.RequestCode = requestitem.RequestCode; proxyrequestitem.RequestDescription = requestitem.RequestDescription; proxyrequestitem.ServiceLineNumber = requestitem.ServiceLineNumber; proxyrequestitem.ServiceLineStatus = Map.SetDMSCodeFromWACode(CodeType.ServiceLineStatus, requestitem.ServiceLineStatus); proxyrequestitem.ServiceType = Map.SetDMSCodeFromWACode(CodeType.ServiceType, requestitem.ServiceType); proxyrequestitem.TCEmployeeID = requestitem.TCEmployeeID; proxyrequestitem.TCEmployeeName = requestitem.TCEmployeeName; proxyrequestitem.WorkType = Map.SetDMSCodeFromWACode(CodeType.WorkType, requestitem.WorkType); #endregion #region//RepairOrder RequestItem Comments if (requestitem.Comments != null && requestitem.Comments.Count > 0) { int commentscnt = 0; _1C.v8241.RepairOrder.Comment[] proxycomments = new _1C.v8241.RepairOrder.Comment[requestitem.Comments.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Comment Comment in requestitem.Comments) { _1C.v8241.RepairOrder.Comment proxycomment = new _1C.v8241.RepairOrder.Comment(); proxycomment.DescriptionComment = Comment.DescriptionComment; proxycomment.SequenceNumber = Comment.SequenceNumber; proxycomments[commentscnt] = proxycomment; commentscnt++; } proxyrequestitem.Comments = proxycomments; } #endregion #region//RepairOrder RequestItem Descriptions if (requestitem.Descriptions != null && requestitem.Descriptions.Count > 0) { int descriptionscnt = 0; _1C.v8241.RepairOrder.Description[] proxydescriptions = new _1C.v8241.RepairOrder.Description[requestitem.Descriptions.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Description description in requestitem.Descriptions) { _1C.v8241.RepairOrder.Description proxydescription = new _1C.v8241.RepairOrder.Description(); proxydescription.DescriptionComment = description.DescriptionComment; proxydescription.SequenceNumber = description.SequenceNumber; proxydescriptions[descriptionscnt] = proxydescription; descriptionscnt++; } proxyrequestitem.Descriptions = proxydescriptions; } #endregion #region//RepairOrder RequestItem OPCodes if (requestitem.OPCodes != null && requestitem.OPCodes.Count > 0) { int opcodescnt = 0; _1C.v8241.RepairOrder.OPCode[] proxyopcodes = new _1C.v8241.RepairOrder.OPCode[requestitem.OPCodes.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.OPCode opcode in requestitem.OPCodes) { #region//RepairOrder RequestItem OPCode Header _1C.v8241.RepairOrder.OPCode proxyopcode = new _1C.v8241.RepairOrder.OPCode(); proxyopcode.ActualHours = opcode.ActualHours; proxyopcode.Code = opcode.Code; proxyopcode.Description = opcode.Description; proxyopcode.EstimatedHours = opcode.EstimatedHours; proxyopcode.SequenceNumber = opcode.SequenceNumber; proxyopcode.ServiceType = Map.SetDMSCodeFromWACode(CodeType.ServiceType, opcode.ServiceType); proxyopcode.SkillLevel = opcode.SkillLevel; proxyopcode.Quantity = opcode.Quantity; #endregion #region//RepairOrder RequestItem OPCode Descriptions if (opcode.Descriptions != null && opcode.Descriptions.Count > 0) { int descriptionscnt = 0; _1C.v8241.RepairOrder.Description[] proxydescriptions = new _1C.v8241.RepairOrder.Description[opcode.Descriptions.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Description description in opcode.Descriptions) { _1C.v8241.RepairOrder.Description proxydescription = new _1C.v8241.RepairOrder.Description(); proxydescription.DescriptionComment = description.DescriptionComment; proxydescription.SequenceNumber = description.SequenceNumber; proxydescriptions[descriptionscnt] = proxydescription; descriptionscnt++; } proxyopcode.Descriptions = proxydescriptions; } #endregion #region//RepairOrder RequestItem OPCode Causes if (opcode.Causes != null && opcode.Causes.Count > 0) { int causescnt = 0; _1C.v8241.RepairOrder.Cause[] proxycauses = new _1C.v8241.RepairOrder.Cause[opcode.Causes.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Cause cause in opcode.Causes) { _1C.v8241.RepairOrder.Cause proxycause = new _1C.v8241.RepairOrder.Cause(); proxycause.CauseLaborOpCode = cause.CauseLaborOpCode; proxycause.Comment = cause.Comment; proxycause.SequenceNumber = cause.SequenceNumber; proxycauses[causescnt] = proxycause; causescnt++; } proxyopcode.Causes = proxycauses; } #endregion #region//RepairOrder RequestItem OPCode Corrections if (opcode.Corrections != null && opcode.Corrections.Count > 0) { int correctionscnt = 0; _1C.v8241.RepairOrder.Correction[] proxycorrections = new _1C.v8241.RepairOrder.Correction[opcode.Corrections.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Correction Correction in opcode.Corrections) { _1C.v8241.RepairOrder.Correction proxycorrection = new _1C.v8241.RepairOrder.Correction(); proxycorrection.CorrectionLaborOpCode = Correction.CorrectionLaborOpCode; proxycorrection.Comment = Correction.Comment; proxycorrection.SequenceNumber = Correction.SequenceNumber; proxycorrections[correctionscnt] = proxycorrection; correctionscnt++; } proxyopcode.Corrections = proxycorrections; } #endregion #region//RepairOrder RequestItem OPCode PriceType if (opcode.PriceType != null) { _1C.v8241.RepairOrder.PriceType proxypricetype = new _1C.v8241.RepairOrder.PriceType(); proxypricetype.DiscountPrice = opcode.PriceType.DiscountPrice; proxypricetype.DiscountRate = opcode.PriceType.DiscountRate; proxypricetype.TotalPrice = opcode.PriceType.TotalPrice; proxypricetype.TotalPriceIncludeTax = opcode.PriceType.TotalPriceIncludeTax; proxypricetype.UnitPrice = opcode.PriceType.UnitPrice; proxyopcode.PriceType = proxypricetype; } #endregion #region//RepairOrder RequestItem OPCode Parts if (opcode.Parts != null && opcode.Parts.Count > 0) { int partscnt = 0; _1C.v8241.RepairOrder.Part[] proxyparts = new _1C.v8241.RepairOrder.Part[opcode.Parts.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Part part in opcode.Parts) { #region//RepairOrder RequestItem OPCode Parts Header _1C.v8241.RepairOrder.Part proxypart = new _1C.v8241.RepairOrder.Part(); proxypart.DisplayPartNumber = part.DisplayPartNumber; proxypart.PartDescription = part.PartDescription; proxypart.PartNumber = part.PartNumber; proxypart.PartType = Map.SetDMSCodeFromWACode(CodeType.PartType, part.PartType); proxypart.Quantity = part.Quantity; proxypart.SequenceNumber = part.SequenceNumber; proxypart.ServiceType = Map.SetDMSCodeFromWACode(CodeType.ServiceType, part.ServiceType); proxypart.StockQuantity = part.StockQuantity; proxypart.StockStatus = part.StockStatus; proxypart.UnitOfMeasure = part.UnitOfMeasure; #endregion #region//RepairOrder RequestItem OPCode Parts Descriptions if (part.Descriptions != null && part.Descriptions.Count > 0) { int descriptionscnt = 0; _1C.v8241.RepairOrder.Description[] proxydescriptions = new _1C.v8241.RepairOrder.Description[part.Descriptions.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Description description in part.Descriptions) { _1C.v8241.RepairOrder.Description proxydescription = new _1C.v8241.RepairOrder.Description(); proxydescription.DescriptionComment = description.DescriptionComment; proxydescription.SequenceNumber = description.SequenceNumber; proxydescriptions[descriptionscnt] = proxydescription; descriptionscnt++; } proxypart.Descriptions = proxydescriptions; } #endregion #region//RepairOrder RequestItem OPCode Parts PriceType if (part.PriceType != null) { _1C.v8241.RepairOrder.PriceType proxypricetype = new _1C.v8241.RepairOrder.PriceType(); proxypricetype.DiscountPrice = part.PriceType.DiscountPrice; proxypricetype.DiscountRate = part.PriceType.DiscountRate; proxypricetype.TotalPrice = part.PriceType.TotalPrice; proxypricetype.TotalPriceIncludeTax = part.PriceType.TotalPriceIncludeTax; proxypricetype.UnitPrice = part.PriceType.UnitPrice; proxypart.PriceType = proxypricetype; } #endregion proxyparts[partscnt] = proxypart; partscnt++; } proxyopcode.Parts = proxyparts; } #endregion #region//RepairOrder RequestItem OPCode Sublets if (opcode.Sublets != null && opcode.Sublets.Count > 0) { int subletscnt = 0; _1C.v8241.RepairOrder.Sublet[] proxysublets = new _1C.v8241.RepairOrder.Sublet[opcode.Sublets.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Sublet sublet in opcode.Sublets) { #region//RepairOrder RequestItem OPCode Sublets Header _1C.v8241.RepairOrder.Sublet proxysublet = new _1C.v8241.RepairOrder.Sublet(); proxysublet.SequenceNumber = sublet.SequenceNumber; proxysublet.ServiceType = Map.SetDMSCodeFromWACode(CodeType.ServiceType, sublet.ServiceType); #endregion #region//RepairOrder RequestItem OPCode Sublets Descriptions if (sublet.Descriptions != null && sublet.Descriptions.Count > 0) { int descriptionscnt = 0; _1C.v8241.RepairOrder.Description[] proxydescriptions = new _1C.v8241.RepairOrder.Description[sublet.Descriptions.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Description description in sublet.Descriptions) { _1C.v8241.RepairOrder.Description proxydescription = new _1C.v8241.RepairOrder.Description(); proxydescription.DescriptionComment = description.DescriptionComment; proxydescription.SequenceNumber = description.SequenceNumber; proxydescriptions[descriptionscnt] = proxydescription; descriptionscnt++; } proxysublet.Descriptions = proxydescriptions; } #endregion #region//RepairOrder RequestItem OPCode Sublets PriceType if (sublet.PriceType != null) { _1C.v8241.RepairOrder.PriceType proxypricetype = new _1C.v8241.RepairOrder.PriceType(); proxypricetype.DiscountPrice = sublet.PriceType.DiscountPrice; proxypricetype.DiscountRate = sublet.PriceType.DiscountRate; proxypricetype.TotalPrice = sublet.PriceType.TotalPrice; proxypricetype.TotalPriceIncludeTax = sublet.PriceType.TotalPriceIncludeTax; proxypricetype.UnitPrice = sublet.PriceType.UnitPrice; proxysublet.PriceType = proxypricetype; } #endregion proxysublets[subletscnt] = proxysublet; subletscnt++; } proxyopcode.Sublets = proxysublets; } #endregion #region//RepairOrder RequestItem OPCode MISCs if (opcode.MISCs != null && opcode.MISCs.Count > 0) { int miscscnt = 0; _1C.v8241.RepairOrder.MISC[] proxymiscs = new _1C.v8241.RepairOrder.MISC[opcode.MISCs.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.MISC misc in opcode.MISCs) { #region//RepairOrder RequestItem OPCode MISCs Header _1C.v8241.RepairOrder.MISC proxymisc = new _1C.v8241.RepairOrder.MISC(); proxymisc.SequenceNumber = misc.SequenceNumber; proxymisc.ServiceType = Map.SetDMSCodeFromWACode(CodeType.ServiceType, misc.ServiceType); #endregion #region//RepairOrder RequestItem OPCode MISCs Descriptions if (misc.Descriptions != null && misc.Descriptions.Count > 0) { int descriptionscnt = 0; _1C.v8241.RepairOrder.Description[] proxydescriptions = new _1C.v8241.RepairOrder.Description[misc.Descriptions.Count]; foreach (WA.Standard.IF.Data.v2.Common.Common.Description description in misc.Descriptions) { _1C.v8241.RepairOrder.Description proxydescription = new _1C.v8241.RepairOrder.Description(); proxydescription.DescriptionComment = description.DescriptionComment; proxydescription.SequenceNumber = description.SequenceNumber; proxydescriptions[descriptionscnt] = proxydescription; descriptionscnt++; } proxymisc.Descriptions = proxydescriptions; } #endregion #region//RepairOrder RequestItem OPCode MISCs PriceType if (misc.PriceType != null) { _1C.v8241.RepairOrder.PriceType proxypricetype = new _1C.v8241.RepairOrder.PriceType(); proxypricetype.DiscountPrice = misc.PriceType.DiscountPrice; proxypricetype.DiscountRate = misc.PriceType.DiscountRate; proxypricetype.TotalPrice = misc.PriceType.TotalPrice; proxypricetype.TotalPriceIncludeTax = misc.PriceType.TotalPriceIncludeTax; proxypricetype.UnitPrice = misc.PriceType.UnitPrice; proxymisc.PriceType = proxypricetype; } #endregion proxymiscs[miscscnt] = proxymisc; miscscnt++; } proxyopcode.MISCs = proxymiscs; } #endregion proxyopcodes[opcodescnt] = proxyopcode; opcodescnt++; } proxyrequestitem.OPCodes = proxyopcodes; } #endregion proxyrequestitems[requestitemscnt] = proxyrequestitem; requestitemscnt++; } proxyrepairorderchange.RequestItems = proxyrequestitems; } #endregion proxyrequest.RepairOrderChange = proxyrepairorderchange; } #endregion //Run proxy web method with proxy request WA.Standard.IF.Logger.Log.Log.SaveXMLLog(0, request.TransactionHeader.DealerID, "DMS RepairOrderChangeRequest XML", proxyrequest); _1C.v8241.RepairOrder.RepairOrderChangeResponse proxyresponse = proxyws.RepairOrderChange(proxyrequest); WA.Standard.IF.Logger.Log.Log.SaveXMLLog(0, request.TransactionHeader.DealerID, "DMS RepairOrderChangeResponse XML", proxyresponse); //Mapping with Standard Interface Specification Object if (proxyresponse != null) { if (proxyresponse.TransactionHeader != null) { #region//TransactionHeader Set WA.Standard.IF.Data.v2.Common.Common.TransactionHeader transactionheader = new WA.Standard.IF.Data.v2.Common.Common.TransactionHeader(); transactionheader.CountryID = proxyresponse.TransactionHeader.CountryID; transactionheader.DealerID = proxyresponse.TransactionHeader.DealerID; transactionheader.DistributorID = proxyresponse.TransactionHeader.DistributorID; transactionheader.DMSCode = proxyresponse.TransactionHeader.DMSCode; transactionheader.DMSServerUrl = proxyresponse.TransactionHeader.DMSServerUrl; transactionheader.DMSVersion = proxyresponse.TransactionHeader.DMSVersion; transactionheader.DocumentVersion = proxyresponse.TransactionHeader.DocumentVersion; transactionheader.GroupID = proxyresponse.TransactionHeader.GroupID; transactionheader.IneterfaceID = proxyresponse.TransactionHeader.IneterfaceID; transactionheader.Password = proxyresponse.TransactionHeader.Password; transactionheader.PollingToken = proxyresponse.TransactionHeader.PollingToken; transactionheader.RequestPollingToken = proxyresponse.TransactionHeader.RequestPollingToken; transactionheader.RequestType = proxyresponse.TransactionHeader.RequestType; transactionheader.TransactionId = proxyresponse.TransactionHeader.TransactionId; transactionheader.TransactionDateTimeLocal = proxyresponse.TransactionHeader.TransactionDateTimeLocal; transactionheader.TransactionDateTimeUTC = proxyresponse.TransactionHeader.TransactionDateTimeUTC; transactionheader.TransactionType = proxyresponse.TransactionHeader.TransactionType; transactionheader.Username = proxyresponse.TransactionHeader.Username; transactionheader.VenderTrackingCode = proxyresponse.TransactionHeader.VenderTrackingCode; response.TransactionHeader = transactionheader; #endregion } //ResultMessage Set if (proxyresponse.ResultMessage != null) { response.ResultMessage = GetResultMessageData(proxyresponse.ResultMessage.Code, proxyresponse.ResultMessage.Message); } if (proxyresponse.Errors != null) { //Error List Set foreach (_1C.v8241.RepairOrder.Error proxyerror in proxyresponse.Errors) { if (response.Errors != null) response.Errors.Add(GetErrorData(proxyerror.Code, proxyerror.Message)); else response.Errors = GetErrorDataList(proxyerror.Code, proxyerror.Message); } } } #endregion return response; }