public async Task <IActionResult> CreateApp([FromBody] CreateAppResource createAppResource) { try { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } //string branchId = await _authService.GetBranchIdFromUserProfile(HttpContext); //string userId = await _authService.GetUserIdFromUserProfile(HttpContext); Log.Information("From Body {@CreateAppResource}", createAppResource); UserProfile userProfile = await _authService.GetUserProfileFromToken(HttpContext); MktCustomer customer = new MktCustomer() { CardTypeId = createAppResource.CardType, IDCardNo = createAppResource.IDCardNo, NewOrOld = BusinessConstant.CustomerNewType, TitleId = createAppResource.TitleId, FirstNameThai = createAppResource.FirstNameThai, LastNameThai = createAppResource.LastNameThai }; MktApplicationExtend appExtend = new MktApplicationExtend() { CurrentBy = userProfile.UserId, CurrentLevel = userProfile.GroupLevelId }; MktApplication app = new MktApplication() { AppOwnerId = userProfile.UserId, ApplicationExtend = appExtend, Customer = customer }; var createdApp = await _appService.CreateApp(app, userProfile); string newURI = Url.Link("GetApp", new { appId = createdApp.AppId, toCheckNCB = true }); var resultApp = new { appId = createdApp.AppId, url = newURI }; return(Created(newURI, resultApp)); } catch (Exception ex) { Log.Error("This is {@Exception}", ex); } return(BadRequest()); }
private MktCustomer UpdateCustomerBeforeSubmitToCreditChecking(string appId, string userId, CheckNCBAppResource checkNCBApp, MktCustomer customer) { customer.NewOrOld = checkNCBApp.NewOrOldCustomer; customer.CardTypeId = checkNCBApp.CardType; customer.IDCardNo = checkNCBApp.IDCardNo; customer.TitleId = checkNCBApp.TitleId; customer.FirstNameThai = checkNCBApp.FirstNameThai; customer.LastNameThai = checkNCBApp.LastNameThai; customer.SexId = checkNCBApp.SexId; customer.BirthDate = checkNCBApp.BirthDate; if ((customer.Addresses == null) || customer.Addresses.Count == 0) { customer.Addresses = new MktAddress[] { new MktAddress { Id = 1, CustomerId = customer.Id, //app.Customer.Id, AddressType = BusinessConstant.AddressType.Address.ToString(), HouseNo = string.Empty, Floor = string.Empty, RoomNo = string.Empty, Moo = string.Empty, Soi = string.Empty, Road = string.Empty, DistrictId = 0, AmphurId = 0, ProvinceId = 0, Status = BusinessConstant.StatusActive }, new MktAddress { Id = 2, CustomerId = customer.Id, //app.Customer.Id, AddressType = BusinessConstant.AddressType.Current.ToString(), HouseNo = string.Empty, Floor = string.Empty, RoomNo = string.Empty, Moo = string.Empty, Soi = string.Empty, Road = string.Empty, DistrictId = 0, AmphurId = 0, ProvinceId = 0, Status = BusinessConstant.StatusActive }, new MktAddress { Id = 3, CustomerId = customer.Id, //app.Customer.Id, AddressType = BusinessConstant.AddressType.Debt.ToString(), HouseNo = string.Empty, Floor = string.Empty, RoomNo = string.Empty, Moo = string.Empty, Soi = string.Empty, Road = string.Empty, DistrictId = 0, AmphurId = 0, ProvinceId = 0, Status = BusinessConstant.StatusActive }, new MktAddress { Id = 4, CustomerId = customer.Id, //app.Customer.Id, AddressType = BusinessConstant.AddressType.Document.ToString(), AddressCode = checkNCBApp.MailingAddressCode ?? string.Empty, HouseNo = checkNCBApp.MailingHouseNo, Floor = checkNCBApp.MailingFloor ?? string.Empty, RoomNo = checkNCBApp.MailingRoomNo ?? string.Empty, Moo = checkNCBApp.MailingMoo ?? string.Empty, Soi = checkNCBApp.MailingSoi ?? string.Empty, Road = checkNCBApp.MailingRoad ?? string.Empty, DistrictId = checkNCBApp.MailingDistrictId, AmphurId = checkNCBApp.MailingAmphurId, ProvinceId = checkNCBApp.MailingProvinceId, ZipCode = checkNCBApp.MailingZipCode, Status = BusinessConstant.StatusActive }, new MktAddress { Id = 5, CustomerId = customer.Id, //app.Customer.Id, AddressType = BusinessConstant.AddressType.Office.ToString(), HouseNo = string.Empty, Floor = string.Empty, RoomNo = string.Empty, Moo = string.Empty, Soi = string.Empty, Road = string.Empty, DistrictId = 0, AmphurId = 0, ProvinceId = 0, Status = BusinessConstant.StatusActive }, new MktAddress { Id = 6, CustomerId = customer.Id, //app.Customer.Id, AddressType = BusinessConstant.AddressType.Other.ToString(), HouseNo = string.Empty, Floor = string.Empty, RoomNo = string.Empty, Moo = string.Empty, Soi = string.Empty, Road = string.Empty, DistrictId = 0, AmphurId = 0, ProvinceId = 0, Status = BusinessConstant.StatusActive }, new MktAddress { Id = 7, CustomerId = customer.Id, //app.Customer.Id, AddressType = BusinessConstant.AddressType.Person.ToString(), HouseNo = string.Empty, Floor = string.Empty, RoomNo = string.Empty, Moo = string.Empty, Soi = string.Empty, Road = string.Empty, DistrictId = 0, AmphurId = 0, ProvinceId = 0, Status = BusinessConstant.StatusActive } }; } else { MktAddress documentAddress = customer.Addresses .SingleOrDefault(a => a.AddressType == BusinessConstant.AddressType.Document.ToString()); if (documentAddress != null) { documentAddress.AddressCode = checkNCBApp.MailingAddressCode ?? string.Empty; documentAddress.HouseNo = checkNCBApp.MailingHouseNo; documentAddress.Floor = checkNCBApp.MailingFloor ?? string.Empty; documentAddress.RoomNo = checkNCBApp.MailingRoomNo ?? string.Empty; documentAddress.Moo = checkNCBApp.MailingMoo ?? string.Empty; documentAddress.Soi = checkNCBApp.MailingSoi ?? string.Empty; documentAddress.Road = checkNCBApp.MailingRoad ?? string.Empty; documentAddress.DistrictId = checkNCBApp.MailingDistrictId; documentAddress.AmphurId = checkNCBApp.MailingAmphurId; documentAddress.ProvinceId = checkNCBApp.MailingProvinceId; documentAddress.ZipCode = checkNCBApp.MailingZipCode; } } return(customer); }