public void CreateAlternateNameAndAddressTest()
        {
            string user = "******";
            string pass = "******";
            string bankId = "81";
            string ObligorNumber = "0011036821";
            string itemNumber = "";
            string luw = Constants.CREATE_ALT_NAME_ADD_LUW_ID;//"L002";
            string batchId = "L03";

            var altNameAddressCommand = new CreateAlternateNameAndAddressCommand(user, pass, bankId, ObligorNumber, batchId, "", "", "", "", itemNumber, luw, "");

            //input fields
            REQUEST_1091_FIELD_DESC altNameAddress = new REQUEST_1091_FIELD_DESC
            {
                x1091_ADDRESS1 = "3500 W ANDREW JOHNSON HWY",
                x1091_ADDRESS2 = "",
                x1091_ADDRESS3 = "",
                x1091_ADDRESS4 = "",
                x1091_ADDRESS5 = "",
                x1091_ADDRESS6 = "",
                x1091_CITY = "GREENVILLE",
                x1091_NAAD_RECORD_CODE = "",
                x1091_NAME = "*ROBERT CARL SHELTON LLC",
                x1091_NAME_CONTINUED = "",
                x1091_NAME_TITLE = "",
                x1091_SSN = "",
                x1091_STATE = "TN",
                x1091_TELEPHONE1 = "",
                x1091_TELEPHONE2 = "",
                x1091_TIN = "",
                x1091_ZIP_CODE = "377430000"
            };
            var altNameAddressFields = new List<REQUEST_1091_FIELD_DESC>(23);
            altNameAddressFields.Add(altNameAddress);
            altNameAddressFields.AddRepeatDefaultValues<REQUEST_1091_FIELD_DESC>(22);
            altNameAddressCommand.AlternateNameAndAddressFields = altNameAddressFields;
            var altNameAddressFieldsExtra = new List<REQUEST_1091_FIELD_DESC_EXTRA>(23);
            altNameAddressFieldsExtra.AddRepeatDefaultValues<REQUEST_1091_FIELD_DESC_EXTRA>(23);
            altNameAddressCommand.AlternateNameAndAddressExtraFields = altNameAddressFieldsExtra;

            var task = commandBus.ExecuteAsync(altNameAddressCommand);
            task.GetAwaiter().GetResult();
            Thread.Sleep(50000);
            if (altNameAddressCommand.Errors.Length < 1)
                Assert.IsTrue(altNameAddressCommand.Errors.Length < 1, altNameAddressCommand.Errors);

        }
예제 #2
0
        /// <summary>
        /// Creates the alternate name and address.
        /// </summary>
        /// <param name="request"></param>
        public void CreateAlternateNameAndAddress(CreateAlternateNameAndAddressCommand request)
        {
            ClientContext ctx = GetClientContext(request.User, request.Password);

            //check for specific counts
            if (!request.AlternateNameAndAddressFields.IsNullOrEmpty<REQUEST_1091_FIELD_DESC>())
            {
                request.AlternateNameAndAddressFields.AddOrTrimExcess<REQUEST_1091_FIELD_DESC>(Constants.CREATE_ALT_NAME_ADDRESS_COUNT);
            }
            if (!request.AlternateNameAndAddressExtraFields.IsNullOrEmpty<REQUEST_1091_FIELD_DESC_EXTRA>())
            {
                request.AlternateNameAndAddressExtraFields.AddOrTrimExcess<REQUEST_1091_FIELD_DESC_EXTRA>(Constants.CREATE_ALT_NAME_ADDRESS_COUNT);
            }

            var get1091Fields = Array.ConvertAll<REQUEST_1091_FIELD_DESC, ObligorServicesContext.REQUEST_1091_FIELDS>(request.AlternateNameAndAddressFields.ToArray(), delegate(REQUEST_1091_FIELD_DESC output)
            {
                var get1091Field = new REQUEST_1091_FIELDS()
                {
                    x1091_ADDRESS1 = output.x1091_ADDRESS1,
                    x1091_ADDRESS2 = output.x1091_ADDRESS2,
                    x1091_ADDRESS3 = output.x1091_ADDRESS3,
                    x1091_ADDRESS4 = output.x1091_ADDRESS4,
                    x1091_ADDRESS5 = output.x1091_ADDRESS5,
                    x1091_ADDRESS6 = output.x1091_ADDRESS6,
                    x1091_CITY = output.x1091_CITY,
                    x1091_STATE = output.x1091_STATE,
                    x1091_ZIP_CODE = output.x1091_ZIP_CODE,
                    x1091_NAME_TITLE = output.x1091_NAME_TITLE,
                    x1091_NAME = output.x1091_NAME,
                    x1091_NAME_CONTINUED = output.x1091_NAME_CONTINUED,
                    x1091_SSN = output.x1091_SSN,
                    x1091_TIN = output.x1091_TIN,
                    x1091_TELEPHONE1 = output.x1091_TELEPHONE1,
                    x1091_TELEPHONE2 = output.x1091_TELEPHONE2,
                    x1091_NAAD_RECORD_CODE = output.x1091_NAAD_RECORD_CODE
                };

                return get1091Field;
            });

            var get1091AddFields = Array.ConvertAll<REQUEST_1091_FIELD_DESC_EXTRA, ObligorServicesContext.REQUEST_1091_FIELDS_EXTRA>(request.AlternateNameAndAddressExtraFields.ToArray(), delegate(REQUEST_1091_FIELD_DESC_EXTRA output)
            {
                var get1091AddField = new REQUEST_1091_FIELDS_EXTRA()
                {
                    x1091_BYTE_TO_MATCH_1001 = output.x1091_BYTE_TO_MATCH_1001,
                    x1091_EMAIL_ADDR_ESS = output.x1091_BUSINESS_EXTENSION,
                    x1091_WEBSITE = output.x1091_WEBSITE,
                    x1091_TIME_ZONE = output.x1091_TIME_ZONE,
                    x1091_FAX_AREA_CODE = output.x1091_FAX_AREA_CODE,
                    x1091_FAX_PHONE_NUMBER = output.x1091_FAX_PHONE_NUMBER,
                    x1091_TELEX_PHONE_NUMBER = output.x1091_TELEX_PHONE_NUMBER,
                    x1091_RESIDENT_EXTENSION = output.x1091_RESIDENT_EXTENSION,
                    x1091_BUSINESS_EXTENSION = output.x1091_BUSINESS_EXTENSION
                };

                return get1091AddField;
            });

            CreateAlternateNameAndAddressInDocument doc = new CreateAlternateNameAndAddressInDocument
            {
                LUW_BANK = request.BankId,
                LUW_BATCH_ID = request.BatchID,
                LUW_ERROR_MESSAGES = request.Errors,
                LUW_HEADER_FILLER = string.Empty,
                LUW_CALLING_APPL = Constants.LUW_HEADER_CALLING_APPL,
                LUW_ID = request.Luw,
                LUW_ITEM_NBR = request.ItemNumber,
                LUW_LENGTH = request.DataLength,
                LUW_OBLIGATION = request.ObligationNumber,
                LUW_OBLIGOR = request.ObligorNumber,
                LUW_REQUEST_CODE = request.RestartRequestCode,
                SEG_COUNTER = request.Segment,
                REQUEST_1091_FIELDS = get1091Fields,
                REQUEST_1091_FIELDS_EXTRA = get1091AddFields

            };

            try
            {
                srv.CreateAlternateNameAndAddress(ref doc.LUW_ID,
                                    ref doc.LUW_REQUEST_CODE,
                                    ref doc.LUW_BATCH_ID,
                                    ref doc.LUW_BANK,
                                    ref doc.LUW_OBLIGOR,
                                    ref doc.LUW_OBLIGATION,
                                    ref doc.LUW_ITEM_NBR,
                                    ref doc.SEG_COUNTER,
                                    ref doc.LUW_HEADER_FILLER,
                                    ref doc.LUW_CALLING_APPL,
                                    ref doc.LUW_LENGTH,
                                    ref doc.LUW_ERROR_MESSAGES,
                                    ref doc.REQUEST_1091_FIELDS,
                                    ref doc.REQUEST_1091_FIELDS_EXTRA,
                                    ref ctx);

                request.Errors = doc.LUW_ERROR_MESSAGES;
                //Note: Need to check if there are any other fields that need to be mapped back to the request
                //object for further operation

            }
            catch (CustomTIException Ex)
            {
                HandleHISException<CreateAlternateNameAndAddressCommand>(request, Ex, "CreateAlternateNameAndAddress");
            }
            catch (Exception ee)
            {
                string msg = ee.Message;
                request.Errors = msg;
                throw;
            }
        }