public ActionResult Upsert(int?id) { StoreUpModel model = null; try { using (var repository = new StoreRepository()) { if (id.HasValue) { model = repository.FindModelById(id.Value); } else { model = new StoreUpModel { FranchiseStoreId = EntityConstants.NULL_VALUE }; } ViewBag.LstFranchises = JsonConvert.SerializeObject(repository.GetFranchises()); ViewBag.LastRegion = FactoryAddress.GetRegionChildByZipCode(); ViewBag.RegionsEnabled = JsonConvert.SerializeObject(FactoryAddress.GetAddressHierarchyOrderById()); ViewBag.RegionLang = JsonConvert.SerializeObject(SettingsData.Constants.AddressUpsertSetting); ViewBag.ManagerStoreUsers = JsonConvert.SerializeObject(new AccountRepository(repository.Db).GetManagerStoreUsers()); ViewBag.Address = JsonConvert.SerializeObject(model.Address); model.Address = null; ViewBag.Model = JsonConvert.SerializeObject(model); } } catch (Exception ex) { SharedLogger.LogError(ex, id); } return(View(model)); }
private void SaveAddress(StoreUpModel model) { if (model.AddressId <= EntityConstants.NO_VALUE) { model.AddressId = _repositoryAddress.Add(model.AddressRes); } else { _repositoryAddress.Update(model.AddressId, model.AddressRes); } }
public void Update(StoreUpModel model) { var franchiseStore = DbEntities.FranchiseStore.Single(e => e.FranchiseStoreId == model.FranchiseStoreId); franchiseStore.AddressId = model.AddressId; franchiseStore.FranchiseId = model.FranchiseId; franchiseStore.Name = model.Name; franchiseStore.UserIdUpd = model.UserInsUpId; franchiseStore.DatetimeUpd = DateTime.Today; franchiseStore.IsObsolete = false; franchiseStore.WsAddress = model.WsAddress; franchiseStore.ManageUserId = model.ManUserId; franchiseStore.StoreEmail = model.StoreEmail; franchiseStore.HasSendEmailWhenNewOrder = model.HasSendEmailWhenNewOrder; DbEntities.SaveChanges(); }
public ResponseMessageModel Save(StoreUpModel model) { var response = new ResponseMessageModel(); if (model.FranchiseStoreId <= EntityConstants.NO_VALUE) { SaveAddress(model); _repositoryStore.Add(model); } else { SaveAddress(model); _repositoryStore.Update(model); } return(response); }
public ActionResult DoUpsert(StoreUpModel model) { try { if (ModelState.IsValid == false) { return(Json(new ResponseMessageModel { HasError = true, Title = ResShared.TITLE_REGISTER_FAILED, Message = ResShared.ERROR_INVALID_MODEL })); } using (var service = new StoreSettingService()) { var response = service.ValidateModel(model); if (response.HasError) { response.Title = ResShared.TITLE_REGISTER_FAILED; return(Json(response)); } model.UserInsUpId = User.Identity.GetUserId(); response = service.Save(model); if (response.HasError) { response.Title = ResShared.TITLE_REGISTER_FAILED; } return(Json(response)); } } catch (Exception ex) { SharedLogger.LogError(ex); return(Json(new ResponseMessageModel { HasError = true, Title = ResShared.TITLE_REGISTER_FAILED, Message = ResShared.ERROR_UNKOWN })); } }
public void Add(StoreUpModel model) { var franchiseStore = new FranchiseStore { AddressId = model.AddressId, FranchiseId = model.FranchiseId, Name = model.Name, UserIdIns = model.UserInsUpId, DatetimeIns = DateTime.Today, IsObsolete = false, WsAddress = model.WsAddress, ManageUserId = model.ManUserId, StoreEmail = model.StoreEmail, HasSendEmailWhenNewOrder = model.HasSendEmailWhenNewOrder }; DbEntities.FranchiseStore.Add(franchiseStore); DbEntities.SaveChanges(); }
public ResponseMessageModel ValidateModel(StoreUpModel model) { var response = new ResponseMessageModel { HasError = true }; if (_repositoryStore.IsFranchiseValidById(model.FranchiseId) == false) { response.Message = "La franquicia no es válida"; return(response); } if (_repositoryStore.IsValidManagerStoreUserId(model.ManUserId) == false) { response.Message = "El usuario no tiene el perfil necesario, no es válido o no existe"; return(response); } var address = model.Address; if (address == null) { response.Message = "No se ha definido la dirección"; return(response); } var regionChild = FactoryAddress.GetRegionChildByZipCode(); AddressModel addressRes = null; switch (regionChild) { case AddressConstants.REGION_A: { addressRes = _repositoryStore.IsValidRegionA(address.RegionArId); break; } case AddressConstants.REGION_B: { addressRes = _repositoryStore.IsValidRegionB(address.RegionBrId); break; } case AddressConstants.REGION_C: { addressRes = _repositoryStore.IsValidRegionC(address.RegionCrId); break; } case AddressConstants.REGION_D: { addressRes = _repositoryStore.IsValidRegionD(address.RegionDrId); break; } } if (addressRes == null) { response.Message = "La dirección no es correcta debido a la configuración"; return(response); } addressRes.MainAddress = address.MainAddress; addressRes.NumExt = address.NumExt; addressRes.Reference = address.Reference; model.AddressRes = addressRes; response.HasError = false; return(response); }