Ejemplo n.º 1
0
        public CreateCifAddressResponseModel CreateCifAddress(CreateCifAddresRequestModel requestModel, DateTime processDateTime)
        {
            Logging.WriteLog(requestModel);
            CreateCifAddressResponseModel responseModel = new CreateCifAddressResponseModel();

            responseModel.ReferenceNo = requestModel.ReferenceNo;
            try
            {
                string   houseNo     = requestModel.HouseNo.Trim();
                string   villageNo   = requestModel.VillageNo.Trim();
                string   building    = requestModel.Building.Trim();
                string   floor       = requestModel.Floor.Trim();
                string   room        = requestModel.Room.Trim();
                string   alley       = requestModel.Alley.Trim();
                string   lane        = requestModel.Lane.Trim();
                string   road        = requestModel.Road.Trim();
                string   subDistrict = requestModel.SubDistrict.Trim();
                string   district    = requestModel.District.Trim();
                string   province    = requestModel.Province.Trim();
                string   zipCode     = requestModel.ZipCode.Trim();
                string[] addressLine =
                {
                    houseNo, villageNo, building, floor, room, alley, lane, road, subDistrict
                };
                var dictAddressLine = GetAddressLine(addressLine);
                foreach (var address in dictAddressLine)
                {
                    switch (address.Key)
                    {
                    case nameof(requestModel.AddressLine1):
                        requestModel.AddressLine1 = address.Value;
                        break;

                    case nameof(requestModel.AddressLine2):
                        requestModel.AddressLine2 = address.Value;
                        break;

                    case nameof(requestModel.AddressLine3):
                        requestModel.AddressLine3 = address.Value;
                        break;

                    case nameof(requestModel.AddressLine4):
                        requestModel.AddressLine4 = address.Value;
                        break;

                    case nameof(requestModel.AddressLine5):
                        requestModel.AddressLine5 = address.Value;
                        break;
                    }
                }

                requestModel.CityStateZip = $"{requestModel.District} {requestModel.Province} {requestModel.ZipCode}";

                MBaseMessageModel mBaseMessageModel = CreateCifAddressMessage(requestModel, processDateTime);

                var mBaseMessage = MBaseMessageMatchObject(mBaseMessageModel);
                // MBase CIFCreate
                var mBaseResponse = MBaseSingleton.Instance.CIFAddressCreation(mBaseMessage);

                // Output Matching Object
                PropertyMatcher <CIFAddressResponse, CreateCifAddressResponseModel> .GenerateMatchedObject(mBaseResponse, responseModel);
            }
            catch (Exception ex)
            {
                responseModel.ErrorCode        = ResponseCode.EXC0001;
                responseModel.ErrorDescription = ex.Message;
            }
            finally
            {
                Logging.WriteLog(responseModel);
            }
            return(responseModel);
        }
Ejemplo n.º 2
0
        public CreateCifAddressResponseModel CreateCifAddress([FromBody] CreateCifAddresRequestModel model)
        {
            var processDatetime = DateTime.Now;

            return(mBaseService.CreateCifAddress(model, processDatetime));
        }
Ejemplo n.º 3
0
        private MBaseMessageModel CreateCifAddressMessage(CreateCifAddresRequestModel requestModel, DateTime processDateTime)
        {
            var headerTransaction = sQLService.GetHeaderTransaction(requestModel.TranCode);
            HeaderMessageModel             header         = InitializeHeader(headerTransaction, requestModel.BranchNumber, requestModel.ReferenceNo, requestModel.TerminalId, processDateTime);
            IEnumerable <MessageTypeModel> headerMessages = GetHeaderMessage(header);

            var inputMessages = sQLService.GetInputMessages(requestModel.TranCode);

            inputMessages.ToList().ForEach(s =>
            {
                switch (s.FieldName.Trim())
                {
                case nameof(CIFAddress.CFCIFN):
                    s.DefaultValue = requestModel.CustomerNumber.Trim();
                    break;

                case nameof(CIFAddress.CFNA2):
                    s.DefaultValue = requestModel.AddressLine1.Trim();
                    break;

                case nameof(CIFAddress.CFNA3):
                    s.DefaultValue = requestModel.AddressLine2.Trim();
                    break;

                case nameof(CIFAddress.CFNA4):
                    s.DefaultValue = requestModel.AddressLine3.Trim();
                    break;

                case nameof(CIFAddress.CFNA5):
                    s.DefaultValue = requestModel.AddressLine4.Trim();
                    break;

                case nameof(CIFAddress.CFNA6):
                    s.DefaultValue = requestModel.AddressLine5.Trim();
                    break;

                case nameof(CIFAddress.CFNA7):
                    s.DefaultValue = requestModel.CityStateZip.Trim();
                    break;

                case nameof(CIFAddress.CFSTAT):
                    s.DefaultValue = requestModel.State.Trim();
                    break;

                case nameof(CIFAddress.WKZIP):
                    s.DefaultValue = requestModel.ZipCode.Trim();
                    break;

                case nameof(CIFAddress.CFCOUN):
                    s.DefaultValue = requestModel.Country.Trim();
                    break;

                case nameof(CIFAddress.CFADRT):
                    s.DefaultValue = requestModel.AddressType.Trim();
                    break;

                case nameof(CIFAddress.CFARMK):
                    s.DefaultValue = requestModel.AddressRemark.Trim();
                    break;

                case nameof(CIFAddress.CFADFM):
                    s.DefaultValue = requestModel.AddressFormat.Trim();
                    break;

                case nameof(CIFAddress.CFFHNO):
                    s.DefaultValue = requestModel.HouseNo.Trim();
                    break;

                case nameof(CIFAddress.CFFVNO):
                    s.DefaultValue = requestModel.VillageNo.Trim();
                    break;

                case nameof(CIFAddress.CFFBLD):
                    s.DefaultValue = requestModel.Building.Trim();
                    break;

                case nameof(CIFAddress.CFFALY):
                    s.DefaultValue = requestModel.Alley.Trim();
                    break;

                case nameof(CIFAddress.CFFLAN):
                    s.DefaultValue = requestModel.Lane.Trim();
                    break;

                case nameof(CIFAddress.CFFRD):
                    s.DefaultValue = requestModel.Road.Trim();
                    break;

                case nameof(CIFAddress.CFFDIS):
                    s.DefaultValue = requestModel.SubDistrict.Trim();
                    break;

                case nameof(CIFAddress.CFFCIT):
                    s.DefaultValue = requestModel.District.Trim();
                    break;

                case nameof(CIFAddress.CFFST):
                    s.DefaultValue = requestModel.Province.Trim();
                    break;
                }
            });
            var responseMessages = sQLService.GetResponseMessages(requestModel.TranCode);

            return(new MBaseMessageModel
            {
                HeaderTransaction = headerTransaction,
                HeaderMessages = headerMessages,
                InputMessages = inputMessages,
                ResponseMessages = responseMessages
            });
        }