public CreateCifAndAccountResponseModel CreateCifAndAccount(CreateCifAndAccountRequestModel requestModel, DateTime processDateTime) { Logging.WriteLog(requestModel); CreateCifAndAccountResponseModel responseModel = new CreateCifAndAccountResponseModel(); requestModel.ThaiName = SetFirstnameWithMiddlename(requestModel.ThaiName, requestModel.ThaiMiddleName); requestModel.EngName = SetFirstnameWithMiddlename(requestModel.EngName, requestModel.EngMiddleName); responseModel.ReferenceNo = requestModel.ReferenceNo; try { MBaseMessageModel mBaseMessageModel = CreateCifAccountMessage(requestModel, processDateTime); var mBaseMessage = MBaseMessageMatchObject(mBaseMessageModel); // MBase CIFCreate var mBaseResponse = MBaseSingleton.Instance.CIFCreation(mBaseMessage); // Output Matching Object PropertyMatcher <CIFAccountResponse, CreateCifAndAccountResponseModel> .GenerateMatchedObject(mBaseResponse, responseModel); } catch (Exception ex) { responseModel.ErrorCode = ResponseCode.EXC0001; responseModel.ErrorDescription = ex.Message; } finally { Logging.WriteLog(responseModel); } return(responseModel); }
public CreateCifAndAccountResponseModel CreateCifAndAccount([FromBody] CreateCifAndAccountRequestModel model) { var processDatetime = DateTime.Now; return(mBaseService.CreateCifAndAccount(model, processDatetime)); }
private MBaseMessageModel CreateCifAccountMessage(CreateCifAndAccountRequestModel requestModel, DateTime processDateTime) { // Header var headerTransaction = sQLService.GetHeaderTransaction(requestModel.TranCode); HeaderMessageModel header = InitializeHeader(headerTransaction, requestModel.BranchNumber, requestModel.ReferenceNo, requestModel.TerminalId, processDateTime); IEnumerable <MessageTypeModel> headerMessages = GetHeaderMessage(header); // Input var inputMessages = sQLService.GetInputMessages(requestModel.TranCode); inputMessages.ToList().ForEach(s => { switch (s.FieldName.Trim()) { case nameof(CIFAccount.TCFTTIT): s.DefaultValue = requestModel.TitleThaiName; break; case nameof(CIFAccount.TCFNA1): s.DefaultValue = requestModel.ThaiName; break; case nameof(CIFAccount.TCFNA1A): s.DefaultValue = requestModel.ThaiSurename; break; case nameof(CIFAccount.TCFETIT): s.DefaultValue = requestModel.TitleEngName; break; case nameof(CIFAccount.TCFASN1): s.DefaultValue = requestModel.EngName; break; case nameof(CIFAccount.TCFASN2): s.DefaultValue = requestModel.EngSurename; break; case nameof(CIFAccount.CFSSNO): s.DefaultValue = requestModel.IDNumber; break; case nameof(CIFAccount.CFSSCD): s.DefaultValue = requestModel.IDTypeCode; break; case nameof(CIFAccount.CFCIDT): s.DefaultValue = requestModel.IDIssueCountryCode; break; case nameof(CIFAccount.BTCTYP): s.DefaultValue = requestModel.CustomerType; break; case nameof(CIFAccount.BTMBTY): s.DefaultValue = requestModel.MajorBusinessType; break; case nameof(CIFAccount.CFBRNN): s.DefaultValue = requestModel.BranchNumber; break; case nameof(CIFAccount.CFCOST): s.DefaultValue = requestModel.CostCenter; break; case nameof(CIFAccount.CFOFFR): s.DefaultValue = requestModel.OfficerCode; break; case nameof(CIFAccount.CFBIR8): s.DefaultValue = requestModel.BirthDate; break; case nameof(CIFAccount.CFRESD): s.DefaultValue = requestModel.ResidentCode; break; case nameof(CIFAccount.CFCNTY): s.DefaultValue = requestModel.Country; break; case nameof(CIFAccount.CFCITZ): s.DefaultValue = requestModel.CountryOfCitizenship; break; case nameof(CIFAccount.CFRACE): s.DefaultValue = requestModel.CountryOfHeritage; break; case nameof(CIFAccount.CFINQC): s.DefaultValue = requestModel.InquiryCode; break; case nameof(CIFAccount.CFEMPL): s.DefaultValue = requestModel.EmployerName; break; case nameof(CIFAccount.CFHPHO): s.DefaultValue = requestModel.HomePhone; break; case nameof(CIFAccount.CFBPHO): s.DefaultValue = requestModel.OfficePhone; break; case nameof(CIFAccount.CFBFHO): s.DefaultValue = requestModel.OtherPhone; break; case nameof(CIFAccount.CFSEX): s.DefaultValue = requestModel.Gender; break; case nameof(CIFAccount.CFSMSA): s.DefaultValue = requestModel.SMSACode; break; case nameof(CIFAccount.CFBUST): s.DefaultValue = requestModel.Occupation; break; case nameof(CIFAccount.CFSCLA): s.DefaultValue = requestModel.SubClass; break; case nameof(CIFAccount.CFCRAT): s.DefaultValue = requestModel.CustomerRating; break; case nameof(CIFAccount.CFGRUP): s.DefaultValue = requestModel.CIFGroupCode; break; case nameof(CIFAccount.CFCCYC): s.DefaultValue = requestModel.CIFCombinedCycle; break; case nameof(CIFAccount.CFTINS): s.DefaultValue = requestModel.TINStatus; break; case nameof(CIFAccount.CFWHCD): s.DefaultValue = requestModel.FedWHCode; break; case nameof(CIFAccount.CFWHPR): s.DefaultValue = requestModel.StateWHCode; break; case nameof(CIFAccount.CFINSC): s.DefaultValue = requestModel.InsiderCode; break; case nameof(CIFAccount.CFVIPC): s.DefaultValue = requestModel.VIPCustomer; break; case nameof(CIFAccount.CFDEAD): s.DefaultValue = requestModel.DeceasedCutomerFlag; break; case nameof(CIFAccount.CFBADA): s.DefaultValue = requestModel.InsufficientAddress; break; case nameof(CIFAccount.CFHLDM): s.DefaultValue = requestModel.HoldMailCode; break; case nameof(CIFAccount.CFFSD6): s.DefaultValue = requestModel.CustomerReviewDate; break; case nameof(CIFAccount.CFSIC1): s.DefaultValue = requestModel.SICN1UserDefined; break; case nameof(CIFAccount.CFSIC2): s.DefaultValue = requestModel.SICN2UserDefined; break; case nameof(CIFAccount.CFSIC3): s.DefaultValue = requestModel.SICN3UserDefined; break; case nameof(CIFAccount.CFSIC4): s.DefaultValue = requestModel.SICN4UserDefined; break; case nameof(CIFAccount.CFSIC5): s.DefaultValue = requestModel.SICN5UserDefined; break; case nameof(CIFAccount.CFSIC6): s.DefaultValue = requestModel.SICN6UserDefined; break; case nameof(CIFAccount.CFSIC7): s.DefaultValue = requestModel.SICN7UserDefined; break; case nameof(CIFAccount.CFSIC8): s.DefaultValue = requestModel.SICN8UserDefined; break; case nameof(CIFAccount.CFUIC1): s.DefaultValue = requestModel.UICN1UserDefined; break; case nameof(CIFAccount.CFUIC2): s.DefaultValue = requestModel.UICN2UserDefined; break; case nameof(CIFAccount.CFUIC3): s.DefaultValue = requestModel.UICN3UserDefined; break; case nameof(CIFAccount.CFUIC4): s.DefaultValue = requestModel.UICN4UserDefined; break; case nameof(CIFAccount.CFUIC5): s.DefaultValue = requestModel.UICN5UserDefined; break; case nameof(CIFAccount.CFUIC6): s.DefaultValue = requestModel.UICN6UserDefined; break; case nameof(CIFAccount.CFUIC7): s.DefaultValue = requestModel.UICN7UserDefined; break; case nameof(CIFAccount.CFUIC8): s.DefaultValue = requestModel.UICN8UserDefined; break; case nameof(CIFAccount.CFLGID): s.DefaultValue = requestModel.LanguageIdentifier; break; case nameof(CIFAccount.CFRETN): s.DefaultValue = requestModel.Retention; break; case nameof(CIFAccount.SSCODE): s.DefaultValue = requestModel.DepositTypeCode; break; case nameof(CIFAccount.ACTYPE): s.DefaultValue = requestModel.AccountType; break; case nameof(CIFAccount.TLBSRC): s.DefaultValue = requestModel.TransactionSource; break; case nameof(CIFAccount.CRTAC): s.DefaultValue = requestModel.CreateAccountFlag; break; case nameof(CIFAccount.CFENA1): s.DefaultValue = requestModel.EmployerName01; break; case nameof(CIFAccount.CBINCC): s.DefaultValue = requestModel.IncomeCapitalAmount; break; case nameof(CIFAccount.CFZTYP): s.DefaultValue = requestModel.CompanyBusinessType; break; case nameof(CIFAccount.CFEDLV): s.DefaultValue = requestModel.EducationLevel; break; case nameof(CIFAccount.CFEADD): s.DefaultValue = requestModel.ElectronicAddress; break; } }); // Response var responseMessages = sQLService.GetResponseMessages(requestModel.TranCode); return(new MBaseMessageModel { HeaderTransaction = headerTransaction, HeaderMessages = headerMessages, InputMessages = inputMessages, ResponseMessages = responseMessages }); }